From 67503881056eea9cff6a29374f87a33747b70570 Mon Sep 17 00:00:00 2001 From: hickert Date: Mon, 13 Sep 2010 11:12:59 +0000 Subject: [PATCH] Readded ACL checks git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@19620 594d385d-05f5-0310-b6e9-bd551577e9d8 --- .../personal/groupware/class_groupware.inc | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/gosa-plugins/groupware/personal/groupware/class_groupware.inc b/gosa-plugins/groupware/personal/groupware/class_groupware.inc index 430e3a904..0249568f0 100644 --- a/gosa-plugins/groupware/personal/groupware/class_groupware.inc +++ b/gosa-plugins/groupware/personal/groupware/class_groupware.inc @@ -486,17 +486,32 @@ class groupware extends plugin } // Get ui modifications and store them in the class. - foreach($this->attributes as $attr){ + $testAttrs = array("mailAddress","mailLocation","quotaUsage","quotaSize", + "alternateAddresses","forwardingAddresses","vacationEnabled","vacationStart", + "vacationStop","vacationMessage"); + foreach($testAttrs as $attr){ if(isset($_POST[$attr]) && $this->acl_is_writeable($attr)){ $this->$attr = get_post($attr); } } - /* - * TODO: ACL check is missing - */ - echo 'ACL checks missing!'; - foreach($this->flagAttributes as $attr){ + // Detect checkbox states + $checkAttrs = array("mailBoxWarnLimit","mailBoxSendSizelimit", + "mailBoxHardSizelimit","mailBoxAutomaticRemoval"); + foreach($checkAttrs as $boxname){ + if($this->acl_is_writeable($boxname)){ + $v = $boxname."Value"; + $e = $boxname."Enabled"; + $this->$e = isset($_POST[$e]); + if($this->$e){ + $this->$v = get_post($v); + } + } + } + + // Get posted flag changes + $flagAttrs = array("localDeliveryOnly","dropOwnMails"); + foreach($flagAttrs as $attr){ $this->$attr = isset($_POST[$attr]); } } -- 2.30.2