Ejemplo n.º 1
0
 public static function modif_admin()
 {
     if (isset($_POST['pays'])) {
         $pays_id = getPaysByName($_POST['pays']);
         var_dump($pays_id);
     }
     if (isset($_POST['supprimer']) && !empty($_POST['supprimer'])) {
         var_dump($_POST);
         deletProduit($_POST['produit_id']);
     } elseif (isset($_POST['modifier']) && !empty($_POST['modifier'])) {
         $_POST['pays_id'] = $pays_id['pays_id'];
         var_dump($_POST);
         $_POST['price'] = $_POST['price'] * 100;
         $datas = getUpdateSQL($_POST);
         var_dump($datas);
         modifProduit($datas, $_POST['produit_id']);
     }
     require BASE_DIR . '/views/modif_admin.phtml';
 }
Ejemplo n.º 2
0
function addItems($categoryData, $items)
{
    global $db;
    print "Add data... count = " . sizeof($items) . " ...\n";
    $itemNum = 0;
    foreach ($items as $item) {
        print "Add {$itemNum}\n";
        // Создать артикул - если его нет
        if (!isset($item["art"]) || strlen($item["art"]) == 0) {
            $item["art"] = "TMPART" . $categoryData->id . "_" . $itemNum;
        }
        $itemNum++;
        // Проверить наличие элемента с заданным артикулом категорией
        $res =& $db->getOne(CMD_SEL_ITEM_ID, array($item["art"], $categoryData->id));
        if (PEAR::isError($res)) {
            print $res->getMessage() . "\n";
            continue;
        }
        if (!isset($res)) {
            print "Insert new\n";
            // Добавить элемент
            $item["category_id"] = $categoryData->id;
            $item["existence"] = "new";
            $sql = getInsertSQL("items", $item);
            $res =& $db->query($sql, array_values($item));
            if (PEAR::isError($res)) {
                print $res->getMessage() . "\n";
                continue;
            }
            $res =& $db->getOne(CMD_SEL_ITEM_ID, array($item["art"], $categoryData->id));
            if (PEAR::isError($res)) {
                print $res->getMessage() . "\n";
                continue;
            }
            $id = $res;
        } else {
            $id = $res;
            print "Update {$id}\n";
            // Обновить элемент
            $art = $item["art"];
            $expr = "id = " . $id;
            // where (id = %d) <- $res
            unset($item["art"]);
            $item["existence"] = "new";
            $sql = getUpdateSQL("items", $item, $expr);
            $res =& $db->query($sql, array_values($item));
            if (PEAR::isError($res)) {
                print $res->getMessage() . "\n";
                continue;
            }
        }
        if (!isMovedItem($id)) {
            loadItemImages($item["image_large"], $item["image_small"], $id);
        } else {
            if (!getUploaded($id)) {
                loadItemImages($item["image_large"], $item["image_small"], $id);
            } else {
                print "Image for {$id} uploaded.\n";
            }
        }
    }
}
Ejemplo n.º 3
0
function HandleStoreItemChanges()
{
    // NOTE Поля для свойств товара переопределяются для других типов товаров
    define("CMD_COPY_ITEM", <<<SQL
\t\tINSERT INTO our_items (item_id, 
\t\t\t\tart,
\t\t\t\turl,
\t\t\t\tname,
\t\t\t\tprice,
\t\t\t\tdescr,
\t\t\t\timage_large,
\t\t\t\timage_small,
\t\t\t\tsizein,
\t\t\t\tsizeout,
\t\t\t\ttype,
\t\t\t\tpower,
\t\t\t\tweight,
\t\t\t\tvelocity,
\t\t\t\tnoiselevel,
\t\t\t\tdrainage,
\t\t\t\tarea,
\t\t\t\trefrigerating,
\t\t\t\tinnervatecontr,
\t\t\t\tvoltage,
\t\t\t\tcontrolconsole,
\t\t\t\tcooling,
\t\t\t\theating,
\t\t\t\tbrandname,
\t\t\t\tpowerconsum,
\t\t\t\tdescr_other,
\t\t\t\tpowercooling)
\t\tSELECT id AS item_id, 
\t\t\t\tart,
\t\t\t\turl,
\t\t\t\tname,
\t\t\t\tprice,
\t\t\t\tdescr,
\t\t\t\timage_large,
\t\t\t\timage_small,
\t\t\t\tsizein,
\t\t\t\tsizeout,
\t\t\t\ttype,
\t\t\t\tpower,
\t\t\t\tweight,
\t\t\t\tvelocity,
\t\t\t\tnoiselevel,
\t\t\t\tdrainage,
\t\t\t\tarea,
\t\t\t\trefrigerating,
\t\t\t\tinnervatecontr,
\t\t\t\tvoltage,
\t\t\t\tcontrolconsole,
\t\t\t\tcooling,
\t\t\t\theating,
\t\t\t\tbrandname,
\t\t\t\tpowerconsum,
\t\t\t\tdescr_other,
\t\t\t\tpowercooling
\t\t\tFROM items WHERE items.id = ?
SQL
);
    define("CMD_SET_STAT", <<<SQL
\t\tUPDATE items SET status = ? WHERE id = ?
SQL
);
    global $db;
    if (strcmp($_REQUEST["infoType"], "item") == 0) {
        require_once "../parsers/ContentGrabber.php";
        $parser =& new ContentGrabber();
        // Получить поля для обновления
        $fields = array();
        $fieldsNames = array_intersect(array_keys($parser->getAllFields()), array_keys($_REQUEST));
        foreach ($fieldsNames as $field) {
            $fields[$field] = $_REQUEST[$field];
        }
        $fields["viewmode"] = isset($_REQUEST["viewmode"]) ? 1 : 0;
        if (sizeof($fields) > 0) {
            if ($_REQUEST["newItem"]) {
                $sql = getUpdateSQL("our_items", $fields, "id = " . $_REQUEST["itemId"]);
                $res =& $db->query($sql, array_values($fields));
                if (PEAR::isError($res)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    header("Location: ItemInfo.php");
                    exit;
                }
            } else {
                // Получить id измененых данных
                $idChanged =& $db->getOne(CMD_SEL_CHANGED_ID, array($_REQUEST["itemId"]));
                if (PEAR::isError($idChanged)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    header("Location: ItemInfo.php");
                    exit;
                }
                // Есть изменения
                if (isset($idChanged)) {
                    // Обновить изменения
                    $sql = getUpdateSQL("our_items", $fields, "id = " . $idChanged);
                } else {
                    // Добавить изменения
                    // Cкопировать данные из items
                    $res =& $db->query(CMD_COPY_ITEM, $_REQUEST["itemId"]);
                    if (PEAR::isError($res)) {
                        $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                        header("Location: ItemInfo.php");
                        exit;
                    }
                    $idChanged =& $db->getOne(CMD_SEL_CHANGED_ID, array($_REQUEST["itemId"]));
                    if (PEAR::isError($idChanged) || !isset($idChanged)) {
                        $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                        header("Location: ItemInfo.php");
                        exit;
                    }
                    $sql = getUpdateSQL("our_items", $fields, "id = " . $idChanged);
                }
                $res =& $db->query($sql, array_values($fields));
                if (PEAR::isError($res)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    header("Location: ItemInfo.php");
                    exit;
                }
                // Установить флаг изменения записи
                $res =& $db->query("UPDATE items SET existence = 'changed' WHERE id = ?", array($_REQUEST["itemId"]));
            }
        }
    } else {
        if (strcmp($_REQUEST["infoType"], "ourcategory") == 0) {
            $fields = array();
            if (isset($_REQUEST["descr"])) {
                $fields["descr"] = $_REQUEST["descr"];
            }
            if (isset($_REQUEST["dirname"])) {
                $fields["dirname"] = $_REQUEST["dirname"];
            }
            $fields["viewmode"] = isset($_REQUEST["viewmode"]) ? 1 : 0;
            $sql = getUpdateSQL("our_categories", $fields, "id = " . $_REQUEST["itemId"]);
            $res =& $db->query($sql, array_values($fields));
            if (PEAR::isError($res)) {
                $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                header("Location: ItemInfo.php");
                exit;
            }
        }
    }
    $_SESSION["statusMsg"] = "Изменения сохранены";
    header("Location: ItemInfo.php");
}
function HandleStoreItemChanges()
{
    header("Location: ItemInfo.php");
    require_once "StrUtils.php";
    define("CMD_COPY_ITEM", <<<SQL
\t\tINSERT INTO our_items (
\t\t\titem_id, art, url, name, price, descr, image_large,
\t\t\timage_small, size, material, drawing, minnum,
\t\t\tcolors, brandname, country, descr_other)
\t\tSELECT id AS item_id, art, url, name, price, descr, image_large,
\t\t\timage_small, size, material, drawing, minnum,
\t\t\tcolors, brandname, country, descr_other
\t\t\tFROM items WHERE items.id = ?
SQL
);
    define("CMD_SET_STAT", <<<SQL
\t\tUPDATE items SET status = ? WHERE id = ?
SQL
);
    global $db;
    if (strcmp($_REQUEST["infoType"], "item") == 0) {
        require_once "../parsers/ContentGrabber.php";
        $parser =& new ContentGrabber();
        // Получить поля для обновления
        $fields = array();
        $fieldsNames = array_intersect(array_keys($parser->getAllFields()), array_keys($_REQUEST));
        foreach ($fieldsNames as $field) {
            $fields[$field] = StrUtils::removeMagicQuotes($_REQUEST[$field]);
        }
        $fields["viewmode"] = isset($_REQUEST["viewmode"]) ? 1 : 0;
        if (sizeof($fields) > 0) {
            if ($_REQUEST["newItem"]) {
                $sql = getUpdateSQL("our_items", $fields, "id = " . $_REQUEST["itemId"]);
                $res =& $db->query($sql, array_values($fields));
                if (PEAR::isError($res)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    exit;
                }
            } else {
                // Получить id измененых данных
                $idChanged =& $db->getOne(CMD_SEL_CHANGED_ID, array($_REQUEST["itemId"]));
                if (PEAR::isError($idChanged)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    exit;
                }
                // Есть изменения
                if (isset($idChanged)) {
                    // Обновить изменения
                    $sql = getUpdateSQL("our_items", $fields, "id = " . $idChanged);
                } else {
                    // Добавить изменения
                    // Cкопировать данные из items
                    $res =& $db->query(CMD_COPY_ITEM, $_REQUEST["itemId"]);
                    if (PEAR::isError($res)) {
                        $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                        exit;
                    }
                    $idChanged =& $db->getOne(CMD_SEL_CHANGED_ID, array($_REQUEST["itemId"]));
                    if (PEAR::isError($idChanged) || !isset($idChanged)) {
                        $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                        exit;
                    }
                    $sql = getUpdateSQL("our_items", $fields, "id = " . $idChanged);
                }
                $res =& $db->query($sql, array_values($fields));
                if (PEAR::isError($res)) {
                    $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                    exit;
                }
                // Установить флаг изменения записи
                $res =& $db->query("UPDATE items SET existence = 'changed' WHERE id = ?", array($_REQUEST["itemId"]));
            }
        }
    } else {
        if (strcmp($_REQUEST["infoType"], "ourcategory") == 0) {
            $fields = array();
            if (isset($_REQUEST["descr"])) {
                $fields["descr"] = $_REQUEST["descr"];
            }
            if (isset($_REQUEST["dirname"])) {
                $fields["dirname"] = $_REQUEST["dirname"];
            }
            $fields["viewmode"] = isset($_REQUEST["viewmode"]) ? 1 : 0;
            $fields["colorsheme"] = isset($_REQUEST["colorsheme"]) ? 1 : 0;
            $sql = getUpdateSQL("our_categories", $fields, "id = " . $_REQUEST["itemId"]);
            $res =& $db->query($sql, array_values($fields));
            if (PEAR::isError($res)) {
                $_SESSION["statusMsg"] = "Ошибка при сохранении данных";
                exit;
            }
        }
    }
    $_SESSION["statusMsg"] = "Изменения сохранены";
}