summaryrefslogblamecommitdiffstats
path: root/application/modules/user/forms/Config.php
blob: 3b961b9064c156fb7cdebe0d96f884ab7d879458 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
       









                                                                           




                                        
                      
                      
        





                                       


                                       
        




                                         
                                                                                












                                                                           
                                                                   



                                                                           











                                                                              












                                                         
                                                                                                       






             
  <?php
/*
 * Copyright (c) 2011 - OpenSLX GmbH, RZ Uni Freiburg
 * This program is free software distributed under the GPL version 2.
 * See http://gpl.openslx.org/
 *
 * If you have any feedback please consult http://feedback.openslx.org/ and
 * send your suggestions, praise, or complaints to feedback@openslx.org
 *
 * General information about OpenSLX can be found at http://openslx.org/
 */

class user_Form_Config extends Zend_Form
{

	private $action;
	private $page;
	private $type;
	
    public function setAction($action){
    	$this->action = $action;
    }
	public function setPage($p){
    	$this->page = $p;	
    }    
	public function setType($type){
		$this->type = $type;
	}
	
    public function init()
    {
        $this->setName($this->action);
		$this->setMethod('post');
		
		if (!Pbs_Acl::checkRight('ce') && $this->action == 'editconfig')
			$meta = true;
		else 
			$meta = null;

        $this->addElement('text', 'title', array(
			'filters' => array('StringTrim'),
			'validators' => array(
				array('StringLength', false, array(0, 50)),
			),
			'required' => true,
			'label' => 'Title:',
		));
		
		$this->addElement('textarea', 'description', array(
			'filters' => array('StringTrim'),
			'validators' => array(
				array('StringLength', false, array(0, 50)),
			),
			'required' => false,
			'rows' => 5,
			'cols' => 50,
			'label' => 'Description:',
		));		
		
		if($this->type == 'group'){
			$visible = $this->createElement('checkbox','visible');
	        $visible->setLabel('Visible:');
	        $visible->setAttrib('readOnly', $meta);
			$this->addElement($visible);
		}
		
		if($this->action == "createconfig")
			$label = "Create Config";
		else 
			$label = "Edit Config"; 
		
        $this->addElement('submit', $this->action, array(
            'required' => false,
            'ignore'   => true,
            'label'    => $label
        ));  
        
        $this->addElement('button', 'Cancel', array(
            'onclick' => 'self.location="/user/config/index/type/'.$this->type.'/page/'.$this->page.'"'
        ));  

    }

}
?>