From 8159b6bb65b9b69a7a2ef737d4fa11a5232c10f1 Mon Sep 17 00:00:00 2001 From: Björn Geiger Date: Mon, 11 Apr 2011 10:59:36 +0200 Subject: ACL im RoleController --- application/modules/user/forms/RoleAdd.php | 47 ++++++++++++++++++----------- application/modules/user/forms/RoleEdit.php | 19 ++++++++---- 2 files changed, 43 insertions(+), 23 deletions(-) (limited to 'application/modules/user/forms') diff --git a/application/modules/user/forms/RoleAdd.php b/application/modules/user/forms/RoleAdd.php index d165701..89cd540 100644 --- a/application/modules/user/forms/RoleAdd.php +++ b/application/modules/user/forms/RoleAdd.php @@ -3,11 +3,21 @@ class user_Form_RoleAdd extends Zend_Form { private $rightlist; + private $inheritanceright; + private $addrighttoroleright; public function setRightlist($rightlist){ $this->rightlist = $rightlist; } + public function setAddrighttoroleright($addrighttoroleright){ + $this->addrighttoroleright = $addrighttoroleright; + } + + public function setInheritanceright($inheritanceright){ + $this->inheritanceright = $inheritanceright; + } + public function init() { $this->setName("RoleAdd"); @@ -32,7 +42,7 @@ class user_Form_RoleAdd extends Zend_Form )); $sform = new Zend_Form_SubForm(array('legend' => 'Rights:')); - + $sform->addElement('button', 'checkAll', array( 'required' => false, 'ignore' => true, @@ -40,33 +50,36 @@ class user_Form_RoleAdd extends Zend_Form 'class' => 'leftbutton', 'onclick' => "checkAllCheckBoxes(new Array('inheritance'));", )); - - $sform->addElement('button', 'uncheckAll', array( + + if($this->addrighttoroleright) { + $sform->addElement('button', 'uncheckAll', array( 'required' => false, 'ignore' => true, 'label' => 'Uncheck All', 'onclick' => "uncheckAllCheckBoxes(new Array('inheritance'));", - )); - if(count($this->rightlist) > 0) { - foreach($this->rightlist as $rightcategory => $rights) { - foreach($rights as $rightID => $rightTitle) { - $element = $this->createElement('checkbox', "$rightID", array( + )); + if(count($this->rightlist) > 0) { + foreach($this->rightlist as $rightcategory => $rights) { + foreach($rights as $rightID => $rightTitle) { + $element = $this->createElement('checkbox', "$rightID", array( 'label' => $rightTitle . ':', 'belongsTo' => 'rights', - )); - $elements[] = $rightID; - $sform->addElement($element); + )); + $elements[] = $rightID; + $sform->addElement($element); + } + $sform->addDisplayGroup($elements, "$rightcategory", array("legend" => $rightcategory . ":")); + unset($elements); } - $sform->addDisplayGroup($elements, "$rightcategory", array("legend" => $rightcategory . ":")); - unset($elements); } + $this->addSubForm($sform, 'rights'); } - - $this->addSubForm($sform, 'rights'); - $this->addElement('checkbox', 'inheritance', array( + if($this->inheritanceright) { + $this->addElement('checkbox', 'inheritance', array( 'label' => 'Inheritance:', - )); + )); + } $this->addElement('submit', 'add', array( 'required' => false, diff --git a/application/modules/user/forms/RoleEdit.php b/application/modules/user/forms/RoleEdit.php index 938ebce..66e9e62 100644 --- a/application/modules/user/forms/RoleEdit.php +++ b/application/modules/user/forms/RoleEdit.php @@ -3,11 +3,16 @@ class user_Form_RoleEdit extends Zend_Form { private $roleID; + private $inheritanceright; public function setRoleID($roleID){ $this->roleID = $roleID; } + public function setInheritanceright($inheritanceright){ + $this->inheritanceright = $inheritanceright; + } + public function init() { $this->setName("RoleEdit"); @@ -33,15 +38,17 @@ class user_Form_RoleEdit extends Zend_Form 'value' => $_POST['description'], )); - if($_POST['inheritance'] == 1) { - $this->addElement('checkbox', 'inheritance', array( + if($this->inheritanceright) { + if($_POST['inheritance'] == 1) { + $this->addElement('checkbox', 'inheritance', array( 'label' => 'Inheritance:', 'checked' => 'checked', - )); - } else { - $this->addElement('checkbox', 'inheritance', array( + )); + } else { + $this->addElement('checkbox', 'inheritance', array( 'label' => 'Inheritance:', - )); + )); + } } $this->addElement('hidden', 'groupID', array( -- cgit v1.2.3-55-g7522