Example #1
0
    fclose($f);
    print "success\n";
}
if ($simpla->request->get('type') == 'catalog' && $simpla->request->get('mode') == 'import') {
    $filename = basename($simpla->request->get('filename'));
    if ($filename === 'import.xml') {
        // Категории и свойства (только в первом запросе пакетной передачи)
        if (!isset($_SESSION['last_1c_imported_product_num'])) {
            $z = new XMLReader();
            $z->open($dir . $filename);
            while ($z->read() && $z->name !== 'Классификатор') {
            }
            $xml = new SimpleXMLElement($z->readOuterXML());
            $z->close();
            import_categories($xml);
            import_features($xml);
        }
        // Товары
        $z = new XMLReader();
        $z->open($dir . $filename);
        while ($z->read() && $z->name !== 'Товар') {
        }
        // Последний товар, на котором остановились
        $last_product_num = 0;
        if (isset($_SESSION['last_1c_imported_product_num'])) {
            $last_product_num = $_SESSION['last_1c_imported_product_num'];
        }
        // Номер текущего товара
        $current_product_num = 0;
        while ($z->name === 'Товар') {
            if ($current_product_num >= $last_product_num) {
Example #2
0
    print "file_limit=1000000\n";
}
if ($simpla->request->get('type') == 'catalog' && $simpla->request->get('mode') == 'file') {
    $filename = basename($simpla->request->get('filename'));
    $f = fopen($dir . $filename, 'ab');
    fwrite($f, file_get_contents('php://input'));
    fclose($f);
    print "success\n";
}
if ($simpla->request->get('type') == 'catalog' && $simpla->request->get('mode') == 'import') {
    $filename = basename($simpla->request->get('filename'));
    $xml = simplexml_load_file($dir . $filename);
    if (isset($xml->Классификатор)) {
        // Категории
        import_categories($xml->Классификатор);
        import_features($xml->Классификатор);
    }
    if (isset($xml->Каталог)) {
        import_products($xml->Каталог);
    }
    if (isset($xml->ПакетПредложений)) {
        import_variants($xml->ПакетПредложений);
    }
    //unlink($dir.$filename);
    print "success";
}
function import_categories($xml, $parent_id = 0)
{
    global $simpla;
    global $dir;
    if (isset($xml->Группы->Группа)) {