diff --git a/classes/Carrier.php b/classes/Carrier.php index 130aebd85..6de5899aa 100644 --- a/classes/Carrier.php +++ b/classes/Carrier.php @@ -775,11 +775,11 @@ class CarrierCore extends ObjectModel if ($delete) Db::getInstance()->execute(' DELETE FROM `'._DB_PREFIX_.'delivery` - WHERE id_shop = '.(int)$values['id_shop'].' - AND id_shop_group='.(int)$values['id_shop_group'].' + WHERE '.(is_null($values['id_shop']) ? 'ISNULL(`id_shop`) ' : 'id_shop = '.(int)$values['id_shop']).' + AND '.(is_null($values['id_shop_group']) ? 'ISNULL(`id_shop`) ' : 'id_shop_group='.(int)$values['id_shop_group']).' AND id_carrier='.(int)$values['id_carrier']. - ($values['id_range_price'] !== null ? ' AND id_range_price='.(int)$values['id_range_price'] : ''). - ($values['id_range_weight'] !== null ? ' AND id_range_weight='.(int)$values['id_range_weight'] : '').' + ($values['id_range_price'] !== null ? ' AND id_range_price='.(int)$values['id_range_price'] : ' AND (ISNULL(`id_range_price`) OR `id_range_price` = 0)'). + ($values['id_range_weight'] !== null ? ' AND id_range_weight='.(int)$values['id_range_weight'] : ' AND (ISNULL(`id_range_weight`) OR `id_range_weight` = 0)').' AND id_zone='.(int)$values['id_zone'] );