From 9f56bd96367f7f3cfa295f23b9129a7dfa1f21af Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Wed, 24 Nov 2010 08:16:10 -0500 Subject: [PATCH] Merged revisions 2095-2129 which contain bugfixes from stable branch. --- interface/web/mail/mail_user_filter_edit.php | 32 ++++++++++++++++++++++++++++++++ 1 files changed, 32 insertions(+), 0 deletions(-) diff --git a/interface/web/mail/mail_user_filter_edit.php b/interface/web/mail/mail_user_filter_edit.php index abad48a..c1873ac 100644 --- a/interface/web/mail/mail_user_filter_edit.php +++ b/interface/web/mail/mail_user_filter_edit.php @@ -50,6 +50,22 @@ class page_action extends tform_actions { + function onShowNew() { + global $app, $conf; + + // we will check only users, not admins + if($_SESSION["s"]["user"]["typ"] == 'user') { + if(!$app->tform->checkClientLimit('limit_mailfilter',"")) { + $app->error($app->tform->lng("limit_mailfilter_txt")); + } + if(!$app->tform->checkResellerLimit('limit_mailfilter',"")) { + $app->error('Reseller: '.$app->tform->lng("limit_mailfilter_txt")); + } + } + + parent::onShowNew(); + } + function onSubmit() { global $app, $conf; @@ -65,6 +81,22 @@ // Remove leading dots if(substr($this->dataRecord['target'],0,1) == '.') $this->dataRecord['target'] = substr($this->dataRecord['target'],1); + // Check the client limits, if user is not the admin + if($_SESSION["s"]["user"]["typ"] != 'admin') { // if user is not admin + // Get the limits of the client + $client_group_id = $_SESSION["s"]["user"]["default_group"]; + $client = $app->db->queryOneRecord("SELECT limit_mailfilter FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); + + // Check if the user may add another filter + if($this->id == 0 && $client["limit_mailfilter"] >= 0) { + $tmp = $app->db->queryOneRecord("SELECT count(filter_id) as number FROM mail_user_filter WHERE sys_groupid = $client_group_id"); + if($tmp["number"] >= $client["limit_mailfilter"]) { + $app->tform->errorMessage .= $app->tform->lng("limit_mailfilter_txt")."<br>"; + } + unset($tmp); + } + } // end if user is not admin + parent::onSubmit(); } -- Gitblit v1.9.1