From fb9e5f028899f8205541fe86d7eb9c5e12c4a5ad Mon Sep 17 00:00:00 2001 From: Björn Geiger Date: Fri, 8 Apr 2011 13:20:06 +0200 Subject: Auch beim hinzufügen von weiteren Rechten nun Checkboxliste --- application/modules/user/forms/LinkRight.php | 45 +++++++++++++++++++++------- 1 file changed, 35 insertions(+), 10 deletions(-) (limited to 'application/modules/user/forms/LinkRight.php') diff --git a/application/modules/user/forms/LinkRight.php b/application/modules/user/forms/LinkRight.php index 54aacd6..80cfb1d 100644 --- a/application/modules/user/forms/LinkRight.php +++ b/application/modules/user/forms/LinkRight.php @@ -3,29 +3,54 @@ class user_Form_LinkRight extends Zend_Form { private $rightlist; - private $roleID; public function setRightlist($rightlist){ $this->rightlist = $rightlist; } - public function setRoleID($roleID){ - $this->roleID = $roleID; - } - public function init() { - $this->setName("LinkRight"); + $this->setName("LinkRights"); $this->setMethod('post'); - $rightfield = $this->createElement('select','rightID',array('label'=> 'Right: ','required' => true,'multioptions'=> $this->rightlist)); - $rightfield->setRegisterInArrayValidator(false); - $this->addElement($rightfield); + $sform = new Zend_Form_SubForm(array('legend' => 'Rights:')); + + $sform->addElement('button', 'checkAll', array( + 'required' => false, + 'ignore' => true, + 'label' => 'Check All', + 'class' => 'leftbutton', + 'onclick' => "checkAllCheckBoxes();", + )); + + $sform->addElement('button', 'uncheckAll', array( + 'required' => false, + 'ignore' => true, + 'label' => 'Uncheck All', + 'onclick' => "uncheckAllCheckBoxes();", + )); + + 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); + } + $sform->addDisplayGroup($elements, "$rightcategory", array("legend" => $rightcategory . ":")); + unset($elements); + } + } + + $this->addSubForm($sform, 'rights'); $this->addElement('submit', 'link', array( 'required' => false, 'ignore' => true, - 'label' => 'Add', + 'label' => 'Add Rights', )); $this->addElement('button', 'cancel', array( -- cgit v1.2.3-55-g7522