// fix live_edit when not using multishop

This commit is contained in:
mMarinetti committed 2011-12-05 13:53:50 +00:00
1 parent 6fcf1462ac
commit f820b60c3d
1 file changed
+15 -8
+15 -8
View File
@@ -621,12 +621,13 @@ if (Tools::isSubmit('saveHook'))
/* PrestaShop demo mode */ /* PrestaShop demo mode */
if (_PS_MODE_DEMO_) if (_PS_MODE_DEMO_)
die('{"hasError" : true, "errors" : ["Live Edit : This functionnality has been disabled"]}'); die('{"hasError" : true, "errors" : ["Live Edit : This functionnality has been disabled"]}');
/* PrestaShop demo mode*/
$hooks_list = explode(',', Tools::getValue('hooks_list')); $hooks_list = explode(',', Tools::getValue('hooks_list'));
$id_shop = (int)Tools::getValue('id_shop'); $id_shop = (int)Tools::getValue('id_shop');
if ($id_shop) if (!$id_shop)
{ $id_shop = Context::getContext()->shop->getId(true);
$res = true;
$hookableList = array(); $hookableList = array();
foreach ($hooks_list as $hook) foreach ($hooks_list as $hook)
{ {
@@ -635,9 +636,12 @@ if (Tools::isSubmit('saveHook'))
continue; continue;
$sql = 'DELETE FROM '._DB_PREFIX_.'hook_module $sql = 'DELETE FROM '._DB_PREFIX_.'hook_module
WHERE id_hook = (SELECT id_hook FROM '._DB_PREFIX_.'hook WHERE `name` = \''.pSQL($hook).'\' LIMIT 1) WHERE id_hook = ( SELECT id_hook
FROM '._DB_PREFIX_.'hook
WHERE `name` = \''.pSQL($hook).'\' LIMIT 1
)
AND id_shop = '.$id_shop; AND id_shop = '.$id_shop;
Db::getInstance()->execute($sql); $res &= Db::getInstance()->execute($sql);
$hookedModules = explode(',', Tools::getValue($hook)); $hookedModules = explode(',', Tools::getValue($hook));
$i = 1; $i = 1;
$value = ''; $value = '';
@@ -648,15 +652,18 @@ if (Tools::isSubmit('saveHook'))
if (!in_array($id[1], $ids)) if (!in_array($id[1], $ids))
{ {
$ids[] = $id[1]; $ids[] = $id[1];
$value .= '('.(int)$id[1].', (SELECT id_hook FROM `'._DB_PREFIX_.'hook` WHERE `name` = \''.pSQL($hook).'\' LIMIT 0, 1), '.(int)$i.'),'; $value .= '('.(int)$id[1].', '.$id_shop.', (SELECT id_hook FROM `'._DB_PREFIX_.'hook` WHERE `name` = \''.pSQL($hook).'\' LIMIT 0, 1), '.$i.'),';
} }
$i++; $i++;
} }
$value = rtrim($value, ','); $value = rtrim($value, ',');
Db::getInstance()->execute('INSERT INTO '._DB_PREFIX_.'hook_module (id_module, id_shop, id_hook, position) VALUES '.$value); $res &= Db::getInstance()->execute('INSERT INTO '._DB_PREFIX_.'hook_module (id_module, id_shop, id_hook, position) VALUES '.$value);
} }
} if ($res)
$hasError = true;
else
$hasError = false;
die('{"hasError" : false, "errors" : ""}'); die('{"hasError" : false, "errors" : ""}');
} }