summaryrefslogblamecommitdiffstats
path: root/application/controllers/BootosController.php
blob: 3a7ab90b1026be7439ac9581d88d18933cc51bb6 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12











                                                         
        
                                                             





                                                                     
                                                            







                                                                                                                                                                                                        
        



                                        


                                                                        
                                            
                                                                                                                                                               

                        
                                                                                                                                                                      



                                                                       
                                                      


                                                                             
                                                    

                               







                                                                                                                    





                                                                                      
                        
                                                                    







                                                              
                                                          

                                                             


                                                                  
                                                                 



                                                                        
                                                            
                   
                                                                                                                                                              


                                                                  
                                                                                                                                                                  



                                                                       
                                                      


                                                                         
                                                
















                                                                                



                                        










                                                                        










     
<?php

class BootosController extends Zend_Controller_Action
{

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

    public function indexAction()
    {
    	
    	$bootosmapper = new Application_Model_BootOsMapper();
    	
        $groupmapper = new Application_Model_GroupMapper();
    	$membershipmapper = new Application_Model_MembershipMapper();
    	$personmapper = new Application_Model_PersonMapper();
    	$configmapper = new Application_Model_ConfigMapper();
    	
    	$this->view->bootoslist = $bootosmapper->fetchAll();
    	if(count($this->view->bootoslist)>0){
			foreach ($this->view->bootoslist as $bootos){
				  $bootos->setGroupID("[".$bootos->getGroupID()."] ".$groupmapper->find($bootos->getGroupID())->getTitle());
				  $bootos->setMembershipID("[".$bootos->getMembershipID()."] ".$personmapper->find($membershipmapper->find($bootos->getMembershipID())->getPersonID())->getFirstname());
				  $bootos->setConfigID("[".$bootos->getConfigID()."] ".$configmapper->find($bootos->getConfigID())->getTitle());
				  
			}
		}
    	
    }

    public function createbootosAction()
    {
    	$groupmapper = new Application_Model_GroupMapper();
    	$configmapper = new Application_Model_ConfigMapper();    	
    	
    	if (!isset($_POST["createbootos"])){
    	        $createbootosForm = new Application_Form_BootosCreate(array('grouplist' => $groupmapper->fetchAll() ,'configlist'=>$configmapper->fetchAll()));
    		} else {
    			
    	        $createbootosForm = new Application_Form_BootosCreate(array('grouplist' => $groupmapper->fetchAll() ,'configlist'=>$configmapper->fetchAll()),$_POST);
    			    			
    		    if ($createbootosForm->isValid($_POST)) {

    		    	$bootos = new Application_Model_BootOs($_POST);
    		    	$bootos->setMembershipID('1');
    		    	if($bootos->getConfigID() == '')
    		    		$bootos->setConfigID(NULL);
    		        $bootosmapper = new Application_Model_BootOsMapper();
    		        $bootos->setCreated(time());
    		        
    		    	try {  
    		            $bootosID = $bootosmapper->save($bootos);
						
    		            $initpath = "../resources/bootos/".$bootosID."/initramfs/";
    		            $kernelpath = "../resources/bootos/".$bootosID."/kernel/";
    		              
    		      		exec("wget -P  ".$kernelpath." ".$bootos->getPath_kernel());
    		      		exec("wget -P  ".$initpath." ".$bootos->getPath_init());    		            
    		            
    		        }catch(Zend_Exception $e)
    		        {
    		            echo "Caught exception: " . get_class($e) . "<br/>";
    					echo "Message: " . $e->getMessage() . "<br/>";
    					
    		        }
    		        
					$this->_redirect('/bootos');
    		     }
    		}
    
            $this->view->createbootosForm = $createbootosForm;
    }

    public function editbootosAction()
    {
    	$bootosID = $this->_request->getParam('bootosID');
    	$groupmapper = new Application_Model_GroupMapper();
    	$configmapper = new Application_Model_ConfigMapper();
    	
    	if (!isset($_POST["editbootos"])){
    		$bootosID = $this->_request->getParam('bootosID');
     		if (!isset($bootosID) || !is_numeric($bootosID)){
   				$this->_redirect('/bootos');
    		} else {
    		   $bootos = new Application_Model_BootOs();
    		   $bootosmapper = new Application_Model_BootOsMapper();
    		   $bootos = $bootosmapper->find($bootosID);
    		   
    		   $editbootosForm = new Application_Form_BootosEdit(array('grouplist' => $groupmapper->fetchAll() ,'configlist'=>$configmapper->fetchAll()));
    		   $editbootosForm->populate($bootos->toArray()); 
    		}
    	}else{
    		$editbootosForm = new Application_Form_BootosEdit(array('grouplist' => $groupmapper->fetchAll() ,'configlist'=>$configmapper->fetchAll()),$_POST);
    			    			
    		if ($editbootosForm->isValid($_POST)) {

    			$bootos = new Application_Model_BootOs($_POST);
    			$bootos->setMembershipID('1');
    		   	if($bootos->getConfigID() == '')
    		    	$bootos->setConfigID(NULL);
    		    $bootosmapper = new Application_Model_BootOsMapper();
    		    $bootos->setCreated(time());
    		    $bootos->setID($bootosID);
    		        
    		   	try {  
    		       	$bootosmapper->save($bootos);
    		    }catch(Zend_Exception $e)
    		    {
    		    	echo "Caught exception: " . get_class($e) . "<br/>";
    				echo "Message: " . $e->getMessage() . "<br/>";	
    		    }
    		    
				$this->_redirect('/bootos');
    		}
    			
    	}
    	
    	$this->view->editbootosForm = $editbootosForm;
    	
    }

    public function deletebootosAction()
    {
    	$bootosID = $this->_request->getParam('bootosID');
     	if (!isset($bootosID)){
   			$this->_redirect('/bootos');
    	} else {
    		   $bootos = new Application_Model_BootOs();
    		   $bootos->setID($bootosID);
    		   $bootosmapper = new Application_Model_BootOsMapper();
    		   $bootosmapper->delete($bootos);
    	}
    	$this->_redirect('/bootos');
    		
    }


}