summaryrefslogblamecommitdiffstats
path: root/application/modules/user/forms/RoleAdd.php
blob: d165701ee0eae49caaa821e2ee6882452842ed9c (plain) (tree)























                                                           
                                                         

                                                         
                                                           

                                            
                                            

                   
                                                                             














                                                                                         













                                                                                                                              
                

                                                    



                                                                   









                                                            
                                                                                    





                   
<?php

class user_Form_RoleAdd extends Zend_Form
{
	private $rightlist;

	public function setRightlist($rightlist){
		$this->rightlist = $rightlist;
	}

	public function init()
	{
		$this->setName("RoleAdd");
		$this->setMethod('post');

		$this->addElement('text', 'title', array(
			'filters' => array('StringTrim'),
			'validators' => array(
		array('StringLength', false, array(0, 50)),
		),
			'required' => true,
			'label' => 'Title:',
		));

		$this->addElement('text', 'title', array(
			'filters' => array('StringTrim'),
			'validators' => array(
		array('StringLength', false, array(0, 50)),
		),
			'required' => false,
			'label' => 'Title:',
		));

		$sform = new Zend_Form_SubForm(array('legend' => 'Rights:'));
		
		$sform->addElement('button', 'checkAll', array(
            'required' => false,
            'ignore'   => true,
            'label'    => 'Check All',
			'class'		=> 'leftbutton',
			'onclick'   => "checkAllCheckBoxes(new Array('inheritance'));",
		));
		
		$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(
            			'label'    => $rightTitle . ':',
						'belongsTo' => 'rights',
					));
					$elements[] = $rightID;
					$sform->addElement($element);
				}
				$sform->addDisplayGroup($elements, "$rightcategory", array("legend" => $rightcategory . ":"));
				unset($elements);
			}
		}
		
		$this->addSubForm($sform, 'rights');

		$this->addElement('checkbox', 'inheritance', array(
            'label'    => 'Inheritance:',
		));

		$this->addElement('submit', 'add', array(
            'required' => false,
            'ignore'   => true,
            'label'    => 'Add',
		));

		$this->addElement('button', 'cancel', array(
            'required' => false,
            'ignore'   => true,
            'label'    => 'Cancel',
			'onclick'   => 'location.href="javascript:history.back();"',
		));
	}


}