[-] BO : fixed Duplicate entry for key 'full_shop_url' when added new shop url
This commit is contained in:
@@ -168,6 +168,7 @@ class ShopUrlCore extends ObjectModel
|
|||||||
*/
|
*/
|
||||||
public static function virtualUriExists($virtual_uri, $id_shop_tested)
|
public static function virtualUriExists($virtual_uri, $id_shop_tested)
|
||||||
{
|
{
|
||||||
|
Tools::displayAsDeprecated();
|
||||||
$virtual_uri = trim($virtual_uri);
|
$virtual_uri = trim($virtual_uri);
|
||||||
if (substr($virtual_uri, -1) != '/')
|
if (substr($virtual_uri, -1) != '/')
|
||||||
$virtual_uri .= '/';
|
$virtual_uri .= '/';
|
||||||
@@ -177,4 +178,22 @@ class ShopUrlCore extends ObjectModel
|
|||||||
WHERE `id_shop` != '.(int)$id_shop_tested.'
|
WHERE `id_shop` != '.(int)$id_shop_tested.'
|
||||||
AND `virtual_uri` = "'.pSQL($virtual_uri).'"');
|
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).'"');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -267,7 +267,7 @@ class AdminShopUrlControllerCore extends AdminController
|
|||||||
}
|
}
|
||||||
else if (Tools::isSubmit('submitAdd'.$this->table) && $this->tabAccess['add'] === '1')
|
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.');
|
$this->errors[] = Tools::displayError('Virtual URI already used.');
|
||||||
else
|
else
|
||||||
return parent::postProcess();
|
return parent::postProcess();
|
||||||
|
|||||||
Reference in New Issue
Block a user