diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php index dad45690ebc23040044e4143c549de5784b20eb4..9d6b2d6e4224d295b0da09db62472712966784d9 100644 --- a/install/dist/lib/debian60.lib.php +++ b/install/dist/lib/debian60.lib.php @@ -134,6 +134,10 @@ class installer extends installer_base { $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); $content = str_replace('{server_id}', $conf['server_id'], $content); + # enable iterate_query for dovecot2 + if(version_compare($dovecot_version,2, '>=')) { + $content = str_replace('# iterate_query', 'iterate_query', $content); + } wf($config_dir.'/'.$configfile, $content); chmod($config_dir.'/'.$configfile, 0600); diff --git a/interface/web/mail/mail_user_edit.php b/interface/web/mail/mail_user_edit.php index 79d45bf05a8aafa46b845f0a4058de1ae130694a..87d3be66bbf2f4a21b0dbf12d7de76f5ab3cf34d 100644 --- a/interface/web/mail/mail_user_edit.php +++ b/interface/web/mail/mail_user_edit.php @@ -166,7 +166,8 @@ class page_action extends tform_actions { } // Check the quota and adjust - if(isset($_POST["quota"]) && $client["limit_mailquota"] >= 0 && (($app->functions->intval($this->dataRecord["quota"]) * 1024 * 1024 != $this->oldDataRecord['quota']) || ($_POST["quota"] <= 0))) { + $old_mail_values = @($this->id > 0)?$app->db->queryOneRecord("SELECT * FROM mail_user WHERE mailuser_id = ?", $this->id):array(); + if(isset($_POST["quota"]) && $client["limit_mailquota"] >= 0 && (($app->functions->intval($this->dataRecord["quota"]) * 1024 * 1024 != $old_mail_values['quota']) || ($_POST["quota"] <= 0))) { $tmp = $app->db->queryOneRecord("SELECT sum(quota) as mailquota FROM mail_user WHERE mailuser_id != ? AND ".$app->tform->getAuthSQL('u'), $this->id); $mailquota = $tmp["mailquota"] / 1024 / 1024; $new_mailbox_quota = $app->functions->intval($this->dataRecord["quota"]); @@ -185,7 +186,7 @@ class page_action extends tform_actions { $reseller = $app->db->queryOneRecord("SELECT limit_mailquota, limit_maildomain FROM client WHERE client_id = ?", $client['parent_client_id']); //* Check the website quota of the client - if(isset($_POST["quota"]) && $reseller["limit_mailquota"] >= 0 && $app->functions->intval($this->dataRecord["quota"]) * 1024 * 1024 != $this->oldDataRecord['quota']) { + if(isset($_POST["quota"]) && $reseller["limit_mailquota"] >= 0 && $app->functions->intval($this->dataRecord["quota"]) * 1024 * 1024 != $old_mail_values['quota']) { $tmp = $app->db->queryOneRecord("SELECT sum(quota) as mailquota FROM mail_user, sys_group, client WHERE mail_user.sys_groupid=sys_group.groupid AND sys_group.client_id=client.client_id AND ? IN (client.parent_client_id, client.client_id) AND mailuser_id != ?", $client['parent_client_id'], $this->id); $mailquota = $tmp["mailquota"] / 1024 / 1024;