summaryrefslogblamecommitdiffstats
path: root/application/modules/dev/controllers/ConfigController.php
blob: d89b6e14d8ffebe19632acbe2816aeadd9b1fa6d (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 dev_ConfigController extends Zend_Controller_Action
{

    public function init()
    {
   		$db = Zend_Db_Table::getDefaultAdapter();
   	}

    public function indexAction()
    {
        $configmapper = new Application_Model_ConfigMapper();
    	
    	$groupmapper = new Application_Model_GroupMapper();
    	$membershipmapper = new Application_Model_MembershipMapper();
    	$personmapper = new Application_Model_PersonMapper();
    	
		$this->view->configlist = $configmapper->fetchAll();
    	    
    	foreach ($this->view->configlist as $config){
    		  $config->setGroupID("[".$config->getGroupID()."] ".$groupmapper->find($config->getGroupID())->getTitle());
    		  $config->setMembershipID("[".$config->getMembershipID()."] ".$personmapper->find($membershipmapper->find($config->getMembershipID())->getPersonID())->getFirstname());
    	}
    	
    }

    public function createconfigAction()
    {
    	$groupmapper = new Application_Model_GroupMapper();
        if (!isset($_POST["createconfig"])){
    	        $createconfigForm = new dev_Form_ConfigCreate(array('grouplist' => $groupmapper->fetchAll()));
    		} else {
    			
    	        $createconfigForm = new dev_Form_ConfigCreate(array('grouplist' => $groupmapper->fetchAll()),$_POST);
    			    			
    		    if ($createconfigForm->isValid($_POST)) {

    		    	$config = new Application_Model_Config($_POST);
    		    	$config->setCreated(time());
    		    	$config->setMembershipID('1');
    		    	
    		        $configmapper = new Application_Model_ConfigMapper();
    		        
    		    	try {  
    		            $configmapper->save($config);
    		        }catch(Zend_Exception $e)
    		        {
    		            echo "Caught exception: " . get_class($e) . "<br/>";
    					echo "Message: " . $e->getMessage() . "<br/>";
    					
    		        }
					$this->_redirect('/dev/config');
    		     }
    		}
    
            $this->view->createconfigForm = $createconfigForm;
    }

    public function editconfigAction()
    {
        $configID = $this->_request->getParam('configID');
    	$groupmapper = new Application_Model_GroupMapper();
        
    	if (!isset($_POST["editconfig"])){
    		$configID = $this->_request->getParam('configID');
     		if (!isset($configID) || !is_numeric($configID)){
   				$this->_redirect('/dev/config');
    		} else {
    		   $config = new Application_Model_Config();
    		   $configmapper = new Application_Model_ConfigMapper();
    		   $config = $configmapper->find($configID);
    		   
    		   $editconfigForm = new dev_Form_ConfigEdit(array('grouplist' => $groupmapper->fetchAll()));
    		   $editconfigForm->populate($config->toArray()); 
    		}
    	}else{
    		$editconfigForm = new dev_Form_ConfigEdit(array('grouplist' => $groupmapper->fetchAll()),$_POST);
    			    			
    		if ($editconfigForm->isValid($_POST)) {

    			$config = new Application_Model_Config($_POST); 	
    		    $configmapper = new Application_Model_ConfigMapper();
    		    $config->setCreated(time());
    		    $config->setMembershipID('1');
    		    $config->setID($configID);
    		        
    		   	try {  
    		       	$configmapper->save($config);
    		    }catch(Zend_Exception $e)
    		    {
    		    	echo "Caught exception: " . get_class($e) . "<br/>";
    				echo "Message: " . $e->getMessage() . "<br/>";	
    		    }
    		    
				$this->_redirect('/dev/config');
    		}
    			
    	}
    	
    	$this->view->editconfigForm = $editconfigForm;
    }

    public function deleteconfigAction()
    {
        $configID = $this->_request->getParam('configID');
     	if (!isset($configID)){
   			$this->_redirect('/dev/config');
    	} else {
    		   $config = new Application_Model_Config();
    		   $config->setID($configID);
    		   $configmapper = new Application_Model_ConfigMapper();
    		   $configmapper->delete($config);
    	}
    	$this->_redirect('/dev/config');
    }


}