From d4a475caf3f9000b9b66f6839e64b6849abd7abc Mon Sep 17 00:00:00 2001
From: Sergio Cambra <sergio@programatica.es>
Date: Thu, 03 Jul 2014 10:23:24 -0400
Subject: [PATCH] delete spamfilter domain only if domain is changed, update spamfilter_users from mailboxes
---
interface/web/mail/mail_domain_edit.php | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/interface/web/mail/mail_domain_edit.php b/interface/web/mail/mail_domain_edit.php
index 25e20ec..6a04938 100644
--- a/interface/web/mail/mail_domain_edit.php
+++ b/interface/web/mail/mail_domain_edit.php
@@ -392,10 +392,13 @@
//* Update the mailget records
$app->db->query("UPDATE mail_get SET destination=REPLACE(destination, '".$app->db->quote($this->oldDataRecord['domain'])."', '".$app->db->quote($this->dataRecord['domain'])."'), sys_userid = $client_user_id, sys_groupid = $sys_groupid WHERE destination LIKE '%@".$app->db->quote($this->oldDataRecord['domain'])."'");
- //* Delete the old spamfilter record
- $tmp = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = '@".$app->db->quote($this->oldDataRecord["domain"])."'");
- $app->db->datalogDelete('spamfilter_users', 'id', $tmp["id"]);
- unset($tmp);
+ if ($this->oldDataRecord["domain"] != $this->dataRecord['domain']) {
+ //* Delete the old spamfilter record
+ $tmp = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = '@".$app->db->quote($this->oldDataRecord["domain"])."'");
+ $app->db->datalogDelete('spamfilter_users', 'id', $tmp["id"]);
+ unset($tmp);
+ }
+ $app->db->query("UPDATE spamfilter_users SET email=REPLACE(email, '".$app->db->quote($this->oldDataRecord['domain'])."', '".$app->db->quote($this->dataRecord['domain'])."'), sys_userid = $client_user_id, sys_groupid = $sys_groupid WHERE email LIKE '%@".$app->db->quote($this->oldDataRecord['domain'])."'");
} // end if domain name changed
--
Gitblit v1.9.1