From a5e5ebbbf8887d1b8b932fce8db0ab2ffecb9bb5 Mon Sep 17 00:00:00 2001 From: lLefevre Date: Mon, 27 Aug 2012 16:08:26 +0000 Subject: [PATCH] [-] MO : mailalert : #PSCFV-3763 : Fix error when i delete an mail alert --- modules/mailalerts/MailAlert.php | 3 +-- modules/mailalerts/controllers/front/actions.php | 5 +++-- .../views/templates/front/mailalerts-account.tpl | 10 +++++++--- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/modules/mailalerts/MailAlert.php b/modules/mailalerts/MailAlert.php index d620fc93a..56cc00404 100644 --- a/modules/mailalerts/MailAlert.php +++ b/modules/mailalerts/MailAlert.php @@ -75,8 +75,7 @@ class MailAlert extends ObjectModel { $sql = ' DELETE FROM `'._DB_PREFIX_.self::$definition['table'].'` - WHERE '.(($id_customer > 0) ? '(`customer_email` = \''.pSQL($customer_email).'\' - OR `id_customer` = '.(int)$id_customer.')' : + WHERE '.(($id_customer > 0) ? '(`customer_email` = \''.pSQL($customer_email).'\' OR `id_customer` = '.(int)$id_customer.')' : '`customer_email` = \''.pSQL($customer_email).'\''). ' AND `id_product` = '.(int)$id_product.' AND `id_product_attribute` = '.(int)$id_product_attribute; diff --git a/modules/mailalerts/controllers/front/actions.php b/modules/mailalerts/controllers/front/actions.php index 079399b61..fb0742106 100644 --- a/modules/mailalerts/controllers/front/actions.php +++ b/modules/mailalerts/controllers/front/actions.php @@ -34,6 +34,7 @@ class MailalertsActionsModuleFrontController extends ModuleFrontController * @var int */ public $id_product; + public $id_product_attribute; public function init() { @@ -41,6 +42,7 @@ class MailalertsActionsModuleFrontController extends ModuleFrontController require_once($this->module->getLocalPath().'MailAlert.php'); $this->id_product = (int)Tools::getValue('id_product'); + $this->id_product_attribute = (int)Tools::getValue('id_product_attribute'); } public function postProcess() @@ -63,8 +65,7 @@ class MailalertsActionsModuleFrontController extends ModuleFrontController if (!Validate::isLoadedObject($product)) die('0'); - $mailAlert = MailAlert::getMailAlert((int)Context::getContext()->customer->id, (int)$product->id); - if ($mailAlert && $mailAlert->delete()) + if (MailAlert::deleteAlert((int)Context::getContext()->customer->id, (int)Context::getContext()->customer->email, (int)$product->id, (int)$this->id_product_attribute)) die('0'); die(1); } diff --git a/modules/mailalerts/views/templates/front/mailalerts-account.tpl b/modules/mailalerts/views/templates/front/mailalerts-account.tpl index e1b316b36..6422725ec 100644 --- a/modules/mailalerts/views/templates/front/mailalerts-account.tpl +++ b/modules/mailalerts/views/templates/front/mailalerts-account.tpl @@ -29,14 +29,18 @@ $('document').ready(function() { $('img[rel^=ajax_id_mailalert_]').click(function() { - var idMailAlert = $(this).attr('rel').replace('ajax_id_mailalert_', ''); + var ids = $(this).attr('rel').replace('ajax_id_mailalert_', ''); + ids = ids.split('_'); + var id_product_mail_alert = ids[0]; + var id_product_attribute_mail_alert = ids[1]; var parent = $(this).parent().parent(); $.ajax({ url: "{$link->getModuleLink('mailalerts', 'actions', ['process' => 'remove'])}", type: "POST", data: { - 'id_product': idMailAlert + 'id_product': id_product_mail_alert, + 'id_product_attribute': id_product_attribute_mail_alert }, success: function(result) { @@ -67,7 +71,7 @@ $('document').ready(function()
{$mailAlert.attributes_small|escape:'htmlall':'UTF-8'}
- +
{/foreach}