[-] BO : fixed Duplicate entry for key 'full_shop_url' when added new shop url

This commit is contained in:
vAugagneur
2012-02-28 14:19:31 +00:00
parent 52f44c4e1b
commit e90f628b1e
2 changed files with 20 additions and 1 deletions
+19
View File
@@ -168,6 +168,7 @@ class ShopUrlCore extends ObjectModel
*/
public static function virtualUriExists($virtual_uri, $id_shop_tested)
{
Tools::displayAsDeprecated();
$virtual_uri = trim($virtual_uri);
if (substr($virtual_uri, -1) != '/')
$virtual_uri .= '/';
@@ -177,4 +178,22 @@ class ShopUrlCore extends ObjectModel
WHERE `id_shop` != '.(int)$id_shop_tested.'
AND `virtual_uri` = "'.pSQL($virtual_uri).'"');
}
/**
* @static
* @param string $domain
* @param string $physical_uri
* @param string $virtual_uri
* @param int $id_shop_tested
* @return bool
*/
public static function urlExists($domain, $physical_uri, $virtual_uri, $id_shop_tested)
{
$url = $domain.$physical_uri.$virtual_uri;
return (bool)Db::getInstance()->getValue('
SELECT *
FROM `'._DB_PREFIX_.'shop_url`
WHERE `id_shop` != '.(int)$id_shop_tested.'
AND CONCAT(`domain`, `physical_uri`, `virtual_uri`) ="'.pSQL($url).'"');
}
}
+1 -1
View File
@@ -267,7 +267,7 @@ class AdminShopUrlControllerCore extends AdminController
}
else if (Tools::isSubmit('submitAdd'.$this->table) && $this->tabAccess['add'] === '1')
{
if (ShopUrl::virtualUriExists(Tools::getValue('virtual_uri'), Tools::getValue('id_shop')))
if (ShopUrl::urlExists(Tools::getValue('domain'), Tools::getValue('physical_uri'), Tools::getValue('virtual_uri'), Tools::getValue('id_shop')))
$this->errors[] = Tools::displayError('Virtual URI already used.');
else
return parent::postProcess();