first commit

This commit is contained in:
2025-08-02 16:30:27 +02:00
commit 23646bfcee
14851 changed files with 1750626 additions and 0 deletions

View File

@@ -0,0 +1,68 @@
<?php
class Upgrade8 extends UpgradeNew
{
// overi, jestli je opravnene provest upgrade
public function checkRightfulness_1()
{
$change = true;
$SQL = sqlQuery('SHOW FIELDS FROM '.getTableName('products_variations'));
while ($row = sqlFetchArray($SQL)) {
if ($row['Field'] == 'price') {
$change = false;
break;
}
}
return $change;
}
// provest samotny upgrade
public function makeChanges_1()
{
sqlQuery('ALTER TABLE '.getTableName('products_variations').' ADD price INT NULL AFTER delivery_time;');
$this->upgradeOK();
}
// overi, jestli je opravnene provest upgrade
public function checkRightfulness_2()
{
$change = false;
$SQL = sqlQuery('SHOW FIELDS FROM '.getTableName('products_variations_choices_values'));
while ($row = sqlFetchArray($SQL)) {
if ($row['Field'] == 'id_product') {
$change = true;
break;
}
}
return $change;
}
// provest samotny upgrade
public function makeChanges_2()
{
sqlQuery('UPDATE '.getTableName('products_variations_combination').' pvc
JOIN '.getTableName('products_variations_choices_values').' pvcv2 ON pvc.id_value=pvcv2.id
SET pvc.id_value = (
SELECT MIN(pvcv.id)
FROM '.getTableName('products_variations_choices_values').' pvcv
WHERE pvcv.value = pvcv2.value AND pvc.id_label = pvcv.id_label
);', '@');
sqlQuery('CREATE TEMPORARY TABLE tmp_variation AS SELECT MIN(id) AS id,id_label,value,code FROM '.getTableName('products_variations_choices_values').' pvcv GROUP BY value,id_label', '@');
sqlQuery('DELETE pvcv FROM '.getTableName('products_variations_choices_values').' pvcv LEFT JOIN tmp_variation USING(id) WHERE tmp_variation.id IS NULL;', '@');
sqlQuery('ALTER TABLE '.getTableName('products_variations_choices_values').' DROP FOREIGN KEY `products_variations_choices_values_ibfk_2`;', '@');
sqlQuery('ALTER TABLE '.getTableName('products_variations_choices_values').' DROP id_product;', '@');
sqlQuery('DROP TABLE tmp_variation;', '@');
$this->upgradeOK();
}
}