diff options
Diffstat (limited to 'application/modules/dev/controllers/BootosController.php')
| -rw-r--r-- | application/modules/dev/controllers/BootosController.php | 215 |
1 files changed, 0 insertions, 215 deletions
diff --git a/application/modules/dev/controllers/BootosController.php b/application/modules/dev/controllers/BootosController.php deleted file mode 100644 index b177642..0000000 --- a/application/modules/dev/controllers/BootosController.php +++ /dev/null @@ -1,215 +0,0 @@ -<?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_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(); - $this->view->update = array(); - - if(count($this->view->bootoslist) > 0) { - foreach ($this->view->bootoslist as $bootos) { - $this->view->update[$bootos->getID()] = $this->checkupdateAction($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"])) { - try { - $createbootosForm = new dev_Form_BootosCreate(array('grouplist' => $groupmapper->fetchAll() , 'configlist' => $configmapper->fetchAll())); - } catch(Zend_Exception $e) { - print_a($e); - } - } else { - - $createbootosForm = new dev_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 { - exec("wget --spider ".$bootos->getPath_kernel()." 2>&1 | grep 'Remote file exists.'", $exists_kernel); - exec("wget --spider ".$bootos->getPath_init()." 2>&1 | grep 'Remote file exists.'" , $exists_init); - - if(!array_pop($exists_init) || !array_pop($exists_kernel)) { - $this->view->createbootosForm = $createbootosForm; - return; - } - - $bootosID = $bootosmapper->save($bootos); - - $initpath = "../resources/bootos/".$bootosID."/initramfs/"; - $kernelpath = "../resources/bootos/".$bootosID."/kernel/"; - - mkdir($initpath , 0777, true); - mkdir($kernelpath , 0777, true); - - exec("wget -O '".$kernelpath."kernel' ".$bootos->getPath_kernel()); - exec("wget -O '".$initpath."initramfs' ".$bootos->getPath_init()); - - - - } catch(Zend_Exception $e) { - echo "Caught exception: " . get_class($e) . "<br/>"; - echo "Message: " . $e->getMessage() . "<br/>"; - - } - - $this->_redirect('/dev/bootos'); - } - } - - $this->view->createbootosForm = $createbootosForm; - } - - public function checkupdateAction($bootos) { - exec("wget --server-response --spider '".escapeshellcmd($bootos->getPath_kernel())."' 2>&1 | grep 'Last-Modified:'", $kerneldate); - exec("wget --server-response --spider '".escapeshellcmd($bootos->getPath_init())."' 2>&1 | grep 'Last-Modified:'", $initdate); - - $kerneldate = strtotime(trim(str_replace('Last-Modified:', '', array_pop($kerneldate)))); - $kernelname = array_pop(scandir("../resources/bootos/".$bootos->getID()."/kernel/")); - - if($kernelname != "." && $kernelname != "..") - { $kernelolddate = filemtime("../resources/bootos/".$bootos->getID()."/kernel/".$kernelname); } - else - { $kernelolddate = false; } - - $initdate = strtotime(trim(str_replace('Last-Modified:', '', array_pop($initdate)))); - $initname = array_pop(scandir("../resources/bootos/".$bootos->getID()."/initramfs/")); - - if($initname != "." && $initname != "..") - { $initolddate = filemtime("../resources/bootos/".$bootos->getID()."/initramfs/".$initname); } - else - { $initolddate = false; } - - //print_a($kernelname,$kerneldate,$kernelolddate,$initname,$initdate,$initolddate); - - - if($kerneldate > $kernelolddate || $initdate > $initolddate) - { return true; } - else - { return false; } - - } - - public function updatebootosAction() { - $bootosID = $this->_request->getParam('bootosID'); - $bootosmapper = new Application_Model_BootOsMapper(); - $bootos = $bootosmapper->find($bootosID); - - $initpath = "../resources/bootos/".$bootosID."/initramfs/"; - $kernelpath = "../resources/bootos/".$bootosID."/kernel/"; - - exec("wget -P ".$kernelpath." -N ".$bootos->getPath_kernel()); - exec("wget -P ".$initpath." -N ".$bootos->getPath_init()); - - $this->_redirect('/dev/bootos'); - } - - 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('/dev/bootos'); - } else { - $bootos = new Application_Model_BootOs(); - $bootosmapper = new Application_Model_BootOsMapper(); - $bootos = $bootosmapper->find($bootosID); - - $editbootosForm = new dev_Form_BootosEdit(array('grouplist' => $groupmapper->fetchAll() , 'configlist' => $configmapper->fetchAll())); - $editbootosForm->populate($bootos->toArray()); - } - } else { - $editbootosForm = new dev_Form_BootosEdit(array('grouplist' => $groupmapper->fetchAll() , 'configlist' => $configmapper->fetchAll()), $_POST); - - if ($editbootosForm->isValid($_POST)) { - - //TODO: Check for new URL and download new files. - $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('/dev/bootos'); - } - - } - - $this->view->editbootosForm = $editbootosForm; - - } - - public function deletebootosAction() { - $bootosID = $this->_request->getParam('bootosID'); - if (!isset($bootosID)) { - $this->_redirect('/dev/bootos'); - } else { - $bootos = new Application_Model_BootOs(); - $bootos->setID($bootosID); - $bootosmapper = new Application_Model_BootOsMapper(); - $bootosmapper->delete($bootos); - } - $this->_redirect('/dev/bootos'); - - } - - -} - - - - - - - |
