From d32217521dcd6485aa25beb95650312bd34fd3e9 Mon Sep 17 00:00:00 2001 From: tDidierjean Date: Mon, 21 May 2012 09:58:51 +0000 Subject: [PATCH] // fix customer groups upgrade --- install-dev/upgrade/php/add_new_groups.php | 20 ++++++++++++++------ install-dev/upgrade/sql/1.5.0.12.sql | 1 - 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/install-dev/upgrade/php/add_new_groups.php b/install-dev/upgrade/php/add_new_groups.php index 7459c2db5..3c4362812 100644 --- a/install-dev/upgrade/php/add_new_groups.php +++ b/install-dev/upgrade/php/add_new_groups.php @@ -27,7 +27,7 @@ function add_new_groups($french, $standard) { - Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'group` (`id_group`, `date_add`, `date_upd`) VALUES (NULL, NOW(), NOW())'); + $res = Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'group` (`id_group`, `date_add`, `date_upd`) VALUES (NULL, NOW(), NOW())'); $last_id = Db::getInstance()->Insert_ID(); $languages = Db::getInstance()->executeS('SELECT id_lang, iso_code FROM `'._DB_PREFIX_.'lang`'); @@ -39,12 +39,20 @@ function add_new_groups($french, $standard) else $sql .= '('.(int)$last_id.', '.(int)$lang['id_lang'].', "'.pSQL($standard).'"),'; $sql = substr($sql, 0, strlen($sql) - 1); - Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'group_lang` (`id_group`, `id_lang`, `name`) VALUES '.$sql); + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'group_lang` (`id_group`, `id_lang`, `name`) VALUES '.$sql); // we add the different id_group in the configuration - if (strtolower($standard) == 'unidentified') - Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_UNIDENTIFIED_GROUP", "'.(int)$last_id.'", NOW(), NOW())'); + if (strtolower($standard) == 'visitor') + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_UNIDENTIFIED_GROUP", "'.(int)$last_id.'", NOW(), NOW())'); else if (strtolower($standard) == 'guest') - Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_GUEST_GROUP", "'.(int)$last_id.'", NOW(), NOW())'); + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_GUEST_GROUP", "'.(int)$last_id.'", NOW(), NOW())'); else if (strtolower($standard) == 'test') - Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_TEST", "'.(int)$last_id.'", NOW(), NOW())'); + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, "PS_TEST", "'.(int)$last_id.'", NOW(), NOW())'); + + // Add shop association + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'group_shop` (`id_group`, `id_shop`) (SELECT '.(int)$last_id.', `value` FROM `'._DB_PREFIX_.'configuration` WHERE `name` = \'PS_SHOP_DEFAULT\')'); + + // Copy categories associations from the group of id 1 (default group for both visitors and customers in version 1.4) to the new group + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'category_group` (`id_category`, `id_group`) (SELECT `id_category`, '.(int)$last_id.' FROM `'._DB_PREFIX_.'category_group` WHERE `id_group` = 1)'); + + return $res; } diff --git a/install-dev/upgrade/sql/1.5.0.12.sql b/install-dev/upgrade/sql/1.5.0.12.sql index 223bc7be7..b2c73b5d5 100644 --- a/install-dev/upgrade/sql/1.5.0.12.sql +++ b/install-dev/upgrade/sql/1.5.0.12.sql @@ -28,7 +28,6 @@ SET total_amount = odt.unit_amount * od.product_quantity; /* PHP:add_missing_shop_column_pagenotfound(); */; -/* PHP:add_new_groups('Non identifié', 'Unidentified'); */; /* PHP:editorial_update_multishop(); */; /* PHP:update_module_product_comments(); */;