first commit

This commit is contained in:
2025-01-06 20:47:25 +01:00
commit 3bdbd78c2f
25591 changed files with 3586440 additions and 0 deletions

61
cron-estella.php Normal file
View File

@@ -0,0 +1,61 @@
<?php
// Włącz PrestaShop
include(dirname(__FILE__).'/config/config.inc.php');
include(dirname(__FILE__).'/init.php');
// Ustawienie kontekstu na sklep o ID 1
$shopId = 1;
Context::getContext()->shop = new Shop($shopId);
Shop::setContext(Shop::CONTEXT_SHOP, $shopId);
// Funkcja do pobrania produktów z danej kategorii w kontekście sklepu
function getProductsFromCategory($categoryId, $shopId) {
$sql = new DbQuery();
$sql->select('p.id_product, pl.name');
$sql->from('category_product', 'cp');
$sql->innerJoin('product', 'p', 'p.id_product = cp.id_product');
$sql->innerJoin('product_lang', 'pl', 'pl.id_product = p.id_product AND pl.id_lang = '.(int)Context::getContext()->language->id);
$sql->where('cp.id_category = '.(int)$categoryId);
$sql->where('p.id_shop_default = '.(int)$shopId);
return Db::getInstance()->executeS($sql);
}
// Funkcja do aktualizacji kategorii produktu
function updateProductCategory($productId, $newCategoryIds, $shopId) {
$product = new Product($productId, false, (int)Context::getContext()->language->id, $shopId);
$currentCategories = $product->getCategories();
$newCategories = array_unique(array_merge($currentCategories, $newCategoryIds));
$product->updateCategories($newCategories);
if ($product->update()) {
echo "Produkt ID $productId został przypisany do kategorii: " . implode(", ", $newCategoryIds) . ".<br>";
} else {
echo "Błąd podczas aktualizacji produktu ID $productId.<br>";
}
}
// Pobranie produktów z kategorii o ID 128 dla sklepu o ID 1
$products = getProductsFromCategory(189, $shopId);
// Przypisanie produktów do odpowiednich kategorii, zachowując oryginalną kategorię 128
foreach ($products as $product) {
$productId = (int)$product['id_product'];
$productName = (string)$product['name'];
$newCategoryIds = [128]; // Zachowanie oryginalnej kategorii 128
if (strpos($productName, '155/200') !== false) {
$newCategoryIds[] = 187;
} elseif (strpos($productName, '135/200') !== false) {
$newCategoryIds[] = 188;
} elseif (strpos($productName, '200/220') !== false) {
$newCategoryIds[] = 189;
}
// Aktualizacja kategorii produktu
updateProductCategory($productId, $newCategoryIds, $shopId);
}
echo "Aktualizacja zakończona.";
?>