diff options
Diffstat (limited to 'application/controllers/BootmenuController.php')
| -rw-r--r-- | application/controllers/BootmenuController.php | 112 |
1 files changed, 88 insertions, 24 deletions
diff --git a/application/controllers/BootmenuController.php b/application/controllers/BootmenuController.php index 93d541d..641b547 100644 --- a/application/controllers/BootmenuController.php +++ b/application/controllers/BootmenuController.php @@ -10,26 +10,82 @@ class BootmenuController extends Zend_Controller_Action public function indexAction() { - $bootmenumapper = new Application_Model_BootMenuMapper(); - $bootmenuentriesmapper = new Application_Model_BootMenuEntriesMapper(); - $bootosmapper = new Application_Model_BootOsMapper(); - $configmapper = new Application_Model_ConfigMapper(); - $membershipmapper = new Application_Model_MembershipMapper(); - $groupmapper = new Application_Model_GroupMapper(); - $personmapper = new Application_Model_PersonMapper(); - - $this->view->bootosmapper = $bootosmapper; - $this->view->configmapper = $configmapper; - $this->view->bootmenulist = $bootmenumapper->fetchAll(); - - $bootmenuentries = array(); - foreach ($this->view->bootmenulist as $bootmenu){ - $bootmenuentries[$bootmenu->getID()] = $bootmenuentriesmapper->findBy('bootmenuID',$bootmenu->getID()); - $bootmenu->setGroupID("[".$bootmenu->getGroupID()."] ".$groupmapper->find($bootmenu->getGroupID())->getTitle()); - $bootmenu->setMembershipID("[".$bootmenu->getMembershipID()."] ".$personmapper->find($membershipmapper->find($bootmenu->getMembershipID())->getPersonID())->getFirstname()); - } - - $this->view->bootmenuentrylist = $bootmenuentries; + $bootmenumapper = new Application_Model_BootMenuMapper(); + $bootmenuentriesmapper = new Application_Model_BootMenuEntriesMapper(); + $bootosmapper = new Application_Model_BootOsMapper(); + $configmapper = new Application_Model_ConfigMapper(); + $membershipmapper = new Application_Model_MembershipMapper(); + $groupmapper = new Application_Model_GroupMapper(); + $personmapper = new Application_Model_PersonMapper(); + + $this->view->bootosmapper = $bootosmapper; + $this->view->configmapper = $configmapper; + + $bootmenuID = $this->_request->getParam('bootmenuid'); + $preboot = $this->_request->getParam('preboot'); + + if($preboot=="") + { + if($bootmenuID == "") + { + $this->view->bootmenulist = $bootmenumapper->fetchAll(); + $bootmenuentries = array(); + foreach ($this->view->bootmenulist as $bootmenu){ + $bootmenuentries[$bootmenu->getID()] = $bootmenuentriesmapper->findBy('bootmenuID',$bootmenu->getID()); + $bootmenu->setGroupID("[".$bootmenu->getGroupID()."] ".$groupmapper->find($bootmenu->getGroupID())->getTitle()); + $bootmenu->setMembershipID("[".$bootmenu->getMembershipID()."] ".$personmapper->find($membershipmapper->find($bootmenu->getMembershipID())->getPersonID())->getFirstname()); + } + }else{ + $bootmenu = new Application_Model_BootMenu(); + $bootmenumapper->find($bootmenuID, $bootmenu); + + $bootmenuentries = array(); + $bootmenuentries[$bootmenuID] = $bootmenuentriesmapper->findBy('bootmenuID',$bootmenuID); + $bootmenu->setGroupID("[".$bootmenu->getGroupID()."] ".$groupmapper->find($bootmenu->getGroupID())->getTitle()); + $bootmenu->setMembershipID("[".$bootmenu->getMembershipID()."] ".$personmapper->find($membershipmapper->find($bootmenu->getMembershipID())->getPersonID())->getFirstname()); + + $this->view->bootmenulist = array($bootmenu); + + } + + $this->view->bootmenuentrylist = $bootmenuentries; + + }else{ + $this->_helper->layout->disableLayout(); + $this->_helper->viewRenderer->setNoRender(); + + if($bootmenuID == "") + { + $this->view->bootmenulist = $bootmenumapper->fetchAll(); + $bootmenuentries = array(); + foreach ($this->view->bootmenulist as $bootmenu){ + $bootmenuentries[$bootmenu->getID()] = $bootmenuentriesmapper->findBy('bootmenuID',$bootmenu->getID()); + $bootmenu->setGroupID("[".$bootmenu->getGroupID()."] ".$groupmapper->find($bootmenu->getGroupID())->getTitle()); + $bootmenu->setMembershipID("[".$bootmenu->getMembershipID()."] ".$personmapper->find($membershipmapper->find($bootmenu->getMembershipID())->getPersonID())->getFirstname()); + } + }else{ + $bootmenu = new Application_Model_BootMenu(); + $bootmenumapper->find($bootmenuID, $bootmenu); + + $cc['title'] = $bootmenu->getTitle(); + + $bootmenuentries = array(); + $bootmenuentries = $bootmenuentriesmapper->findBy('bootmenuID',$bootmenuID); + + foreach($bootmenuentries as $bootmenuentry){ + $ar = array(); + $ar['title'] = $bootmenuentry->getTitle(); + $ar['id'] = $bootmenuentry->getID(); + $cc['data'][] = $ar; + } + + echo json_encode($cc); + + //print_a($cc); + + } + + } } public function addbootmenuentryAction() @@ -37,13 +93,13 @@ class BootmenuController extends Zend_Controller_Action $bootmenuID = $this->_request->getParam('bootmenuID'); $bootosmapper = new Application_Model_BootOsMapper(); $configmapper = new Application_Model_ConfigMapper(); -// $bootmenuentriesmapper = new Application_Model_BootMenuEntriesMapper(); -// -// $bootoslist = $this->arrayDiff($bootosmapper->fetchAll(), $bootmenuentriesmapper->findBy('bootmenuID',$bootmenuID)); if (!isset($_POST["addbootmenuentry"])){ $addbootmenuentryForm = new Application_Form_BootmenuEntriesAdd(array('bootoslist'=>$bootosmapper->fetchAll(), 'maxorder'=> $this->_request->getParam('maxorder'), 'configlist'=>$configmapper->fetchAll())); $addbootmenuentryForm->populate(array('order' => $this->_request->getParam('maxorder'))); + unset($_POST['kcl']); + unset($_POST['configID']); + $addbootmenuentryForm->populate($_POST); } else { $addbootmenuentryForm = new Application_Form_BootmenuEntriesAdd(array('bootoslist'=>$bootosmapper->fetchAll(), 'maxorder'=> $this->_request->getParam('maxorder'), 'configlist'=>$configmapper->fetchAll()),$_POST); @@ -137,6 +193,7 @@ class BootmenuController extends Zend_Controller_Action $bootmenu->setID($bootmenuID); try { + $bootmenumapper->save($bootmenu); }catch(Zend_Exception $e) { @@ -170,7 +227,14 @@ class BootmenuController extends Zend_Controller_Action $bootmenuentrymapper->find($bootmenuentryID, $bootmenuentry); $editbootmenuentryForm = new Application_Form_BootmenuEntriesEdit(array('bootoslist'=>$bootosmapper->fetchAll(), 'maxorder' => $this->_request->getParam('maxorder'), 'configlist'=>$configmapper->fetchAll())); - $editbootmenuentryForm->populate($bootmenuentry->toArray()); + if(!isset($_POST['kcl'])){ + $editbootmenuentryForm->populate($bootmenuentry->toArray()); + } + else{ + unset($_POST['kcl']); + unset($_POST['configID']); + $editbootmenuentryForm->populate($_POST); + } } }else{ $editbootmenuentryForm = new Application_Form_BootmenuEntriesEdit(array('bootoslist'=>$bootosmapper->fetchAll(), 'maxorder'=> $this->_request->getParam('maxorder'), 'configlist'=>$configmapper->fetchAll()),$_POST); |
