diff options
author | Simon | 2011-03-18 19:28:17 +0100 |
---|---|---|
committer | Simon | 2011-03-18 19:28:17 +0100 |
commit | 45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce (patch) | |
tree | bbac126cf34c7ff311d001bf5dab049424a7fd2a | |
parent | User-Modul - löschen von Filtern möglich (diff) | |
download | pbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.tar.gz pbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.tar.xz pbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.zip |
FilterController kann editieren
-rw-r--r-- | application/modules/user/controllers/FilterController.php | 60 | ||||
-rw-r--r-- | application/modules/user/views/scripts/filter/editfilter.phtml | 3 |
2 files changed, 61 insertions, 2 deletions
diff --git a/application/modules/user/controllers/FilterController.php b/application/modules/user/controllers/FilterController.php index 6ae7b05..6e510bb 100644 --- a/application/modules/user/controllers/FilterController.php +++ b/application/modules/user/controllers/FilterController.php @@ -33,6 +33,11 @@ class User_FilterController extends Zend_Controller_Action $pbsNotifier = new Pbs_Notifier(); $this->view->notification = $pbsNotifier->notify('delete',$result); } + $result = $this->_request->getParam('modifyresult'); + if($result != ""){ + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('modify',$result); + } $filters = $this->filterMapper->findBy('groupID',$this->membership->getGroupID()); foreach($filters as $filter){ @@ -106,7 +111,60 @@ class User_FilterController extends Zend_Controller_Action public function editfilterAction() { - // action body + $bmmapper = new Application_Model_BootMenuMapper(); + $result = $bmmapper->findBy('groupID',$this->membership->getGroupID()); + foreach($result as $rr){ + $bm = new Application_Model_BootMenu(); + $bm->setOptions($rr); + $bm->setID($rr['bootmenuID']); + $bootmenus[] = $bm; + } + + if (!isset($_POST["add"])){ + // TODO: ACL implementieren ob er editieren darf + $filterID = $this->_request->getParam('filterID'); + $filter = new Application_Model_Filter(); + + $filtermapper = new Application_Model_FilterMapper(); + $filtermapper->find($filterID,$filter); + if($filter->getGroupID() == $this->membership->getGroupID()){ + $filter2 = $filter->toArray(); + $editfilterform = new user_Form_Filter(array('buttontext' => 'Edit Filter','bootmenus'=>$bootmenus)); + $editfilterform->populate($filter2); + $this->view->editfilterform = $editfilterform; + } + else{ + $this->_redirect('/user/filter/index/modifyresult/forbidden'); + } + + } else{ + try{ + $filterID = $this->_request->getParam('filterID'); + $filter = new Application_Model_Filter(); + $filtermapper = new Application_Model_FilterMapper(); + $filtermapper->find($filterID,$filter); + if($filter->getGroupID() == $this->membership->getGroupID()){ + $editfilterform = new user_Form_Filter(array('buttontext' => 'Edit Filter','bootmenus'=>$bootmenus),$_POST); + if ($editfilterform->isValid($_POST)) { + $newfilterentry = new Application_Model_Filter($_POST); + $newfilterentry->setID($this->_request->getParam('filterID')); + $newfilterentry->setGroupID($this->membership->getGroupID()); + $newfilterentry->setMembershipID($this->membership->getID()); + $newfilterentry->setCreated($_POST['created']); + $newfilter2 = new Application_Model_FilterMapper(); + $newfilter2->save($newfilterentry); + $this->_redirect('/user/filter/index/modifyresult/ok'); + } + $this->view->editfilterform = $editfilterform; + } + else{ + $this->_redirect('/user/filter/index/modifyresult/forbidden'); + } + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + $this->_redirect('/user/filter/index/modifyresult/error'); + } + } } public function addfilterentryAction() diff --git a/application/modules/user/views/scripts/filter/editfilter.phtml b/application/modules/user/views/scripts/filter/editfilter.phtml index 452a096..038f16a 100644 --- a/application/modules/user/views/scripts/filter/editfilter.phtml +++ b/application/modules/user/views/scripts/filter/editfilter.phtml @@ -1 +1,2 @@ -<br /><br /><center>View script for controller <b>Filter</b> and script/action name <b>editfilter</b></center>
\ No newline at end of file +<?php +echo $this->editfilterform; |