diff options
Diffstat (limited to 'application/modules/dev/controllers/PrebootController.php')
| -rw-r--r-- | application/modules/dev/controllers/PrebootController.php | 196 |
1 files changed, 0 insertions, 196 deletions
diff --git a/application/modules/dev/controllers/PrebootController.php b/application/modules/dev/controllers/PrebootController.php deleted file mode 100644 index 024bae3..0000000 --- a/application/modules/dev/controllers/PrebootController.php +++ /dev/null @@ -1,196 +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_PrebootController extends Zend_Controller_Action { - - public function init() { - $db = Zend_Db_Table::getDefaultAdapter(); - } - - public function indexAction() { - $prebootmapper = new Application_Model_PreBootMapper(); - $groupmapper = new Application_Model_GroupMapper(); - $membershipmapper = new Application_Model_MembershipMapper(); - $personmapper = new Application_Model_PersonMapper(); - - $this->view->prebootlist = $prebootmapper->fetchAll(); - $this->view->update = array(); - - foreach ($this->view->prebootlist as $preboot) { - $this->view->update[$preboot->getID()] = $this->checkupdateAction($preboot); - $preboot->setGroupID("[".$preboot->getGroupID()."] ".$groupmapper->find($preboot->getGroupID())->getTitle()); - $preboot->setMembershipID("[".$preboot->getMembershipID()."] ".$personmapper->find($membershipmapper->find($preboot->getMembershipID())->getPersonID())->getFirstname()); - } - } - - public function createprebootAction() { - $groupmapper = new Application_Model_GroupMapper(); - - if (!isset($_POST["createpreboot"])) { - $createprebootForm = new dev_Form_PrebootCreate(array('grouplist' => $groupmapper->fetchAll())); - } else { - - $createprebootForm = new dev_Form_PrebootCreate(array('grouplist' => $groupmapper->fetchAll()), $_POST); - - if ($createprebootForm->isValid($_POST)) { - - $preboot = new Application_Model_PreBoot($_POST); - $preboot->setMembershipID('1'); - $prebootmapper = new Application_Model_PreBootMapper(); - - try { - - exec("wget --spider ".$preboot->getPath_preboot()." 2>&1 | grep 'Remote file exists.'", $exists_preboot); - - if(!array_pop($exists_preboot)) { - $this->view->createprebootForm = $createprebootForm; - return; - } - - $prebootID = $prebootmapper->save($preboot); - - $path_preboot = "../resources/bootmedium/$prebootID/"; - mkdir($path_preboot , 0777, true); - - exec("wget -O '".$path_preboot."preboot.zip' ".$preboot->getPath_preboot()); - - - } catch(Zend_Exception $e) { - echo "Caught exception: " . get_class($e) . "<br/>"; - echo "Message: " . $e->getMessage() . "<br/>"; - - } - $this->_redirect('/dev/preboot'); - } - } - - $this->view->createprebootForm = $createprebootForm; - } - - public function checkupdateAction($preboot) { - $prebootID = $preboot->getID(); - exec("wget --server-response --spider ".escapeshellcmd($preboot->getPath_preboot())." 2>&1 | grep 'Last-Modified:'", $prebootdate); - - //print_a($prebootdate); - - $prebootdate = strtotime(trim(str_replace('Last-Modified:', '', array_pop($prebootdate)))); - - if(is_file("../resources/bootmedium/$prebootID/preboot.zip")) - { $prebootolddate = filemtime("../resources/bootmedium/".$prebootID."/preboot.zip"); } - else - { $prebootolddate = false; } - - //print_a($prebootname,$prebootdate,$prebootolddate); - - - if($prebootdate > $prebootolddate) - { return true; } - else - { return false; } - - } - - public function updateprebootAction() { - - $prebootID = $this->_request->getParam('prebootID'); - - $prebootmapper = new Application_Model_PreBootMapper(); - $preboot = new Application_Model_PreBoot(); - $prebootmapper->find($prebootID, $preboot); - - $path_preboot = "../resources/bootmedium/$prebootID/"; - - exec("wget -O '".$path_preboot."preboot.zip' ".$preboot->getPath_preboot()); - - $filelist = array(); - $filelist = scandir($path_preboot); - - $bootisoMapper = new Application_Model_BootIsoMapper(); - - foreach($filelist as $file) { - if($file == "." || $file == ".." || $file == "preboot.zip") { - //do nothing - } else { - $bootisoID = str_replace('.zip', '', $file); - $serialnumber = $bootisoMapper->find($bootisoID)->getSerialnumber(); - - copy("../resources/bootmedium/$prebootID/preboot.zip", "../resources/bootmedium/$prebootID/$bootisoID".".zip"); - $zip = new ZipArchive(); - $res = $zip->open("../resources/bootmedium/$prebootID/$bootisoID".".zip"); - if($res == = true) { - $rootdir = $zip->getNameIndex(0); - $zip->addFromString($rootdir."build/rootfs/serial", $serialnumber); - $zip->close(); - } - } - } - - $this->_redirect('/dev/preboot'); - } - - public function editprebootAction() { - $prebootID = $this->_request->getParam('prebootID'); - $groupmapper = new Application_Model_GroupMapper(); - - if (!isset($_POST["editpreboot"])) { - $prebootID = $this->_request->getParam('prebootID'); - if (!isset($prebootID) || !is_numeric($prebootID)) { - $this->_redirect('/dev/preboot'); - } else { - $preboot = new Application_Model_PreBoot(); - $prebootmapper = new Application_Model_PreBootMapper(); - $prebootmapper->find($prebootID, $preboot); - - $editprebootForm = new dev_Form_PrebootEdit(array('grouplist' => $groupmapper->fetchAll())); - $editprebootForm->populate($preboot->toArray()); - } - } else { - $editprebootForm = new dev_Form_PrebootEdit(array('grouplist' => $groupmapper->fetchAll()), $_POST); - - if ($editprebootForm->isValid($_POST)) { - - $preboot = new Application_Model_PreBoot($_POST); - $preboot->setMembershipID('1'); - $prebootmapper = new Application_Model_PreBootMapper(); - $preboot->setID($prebootID); - - try { - $prebootmapper->save($preboot); - } catch(Zend_Exception $e) { - echo "Caught exception: " . get_class($e) . "<br/>"; - echo "Message: " . $e->getMessage() . "<br/>"; - } - - $this->_redirect('/dev/preboot'); - } - - } - - $this->view->editprebootForm = $editprebootForm; - } - - public function deleteprebootAction() { - $prebootID = $this->_request->getParam('prebootID'); - if (!isset($prebootID)) { - $this->_redirect('/dev/preboot'); - } else { - $preboot = new Application_Model_PreBoot(); - $preboot->setID($prebootID); - $prebootmapper = new Application_Model_PreBootMapper(); - $prebootmapper->delete($preboot); - } - $this->_redirect('/dev/preboot'); - } - - -} - |
