summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon2011-03-18 19:28:17 +0100
committerSimon2011-03-18 19:28:17 +0100
commit45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce (patch)
treebbac126cf34c7ff311d001bf5dab049424a7fd2a
parentUser-Modul - löschen von Filtern möglich (diff)
downloadpbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.tar.gz
pbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.tar.xz
pbs2-45d8e06df63ac8b73f4d7bd8e2b3b3e62a5e95ce.zip
FilterController kann editieren
-rw-r--r--application/modules/user/controllers/FilterController.php60
-rw-r--r--application/modules/user/views/scripts/filter/editfilter.phtml3
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;