summaryrefslogtreecommitdiffstats
path: root/application/modules/user/controllers/FilterController.php
diff options
context:
space:
mode:
authorSimon2011-03-30 16:14:22 +0200
committerSimon2011-03-30 16:14:22 +0200
commit6c6094d82c3d8a682c8c9a0c6cb157fadcd2eba7 (patch)
treef30e090eb73097ab76d0d755910b5211dd7b9a3e /application/modules/user/controllers/FilterController.php
parentMerge branch 'master' of openslx.org:lsfks/master-teamprojekt/pbs2 (diff)
downloadpbs2-6c6094d82c3d8a682c8c9a0c6cb157fadcd2eba7.tar.gz
pbs2-6c6094d82c3d8a682c8c9a0c6cb157fadcd2eba7.tar.xz
pbs2-6c6094d82c3d8a682c8c9a0c6cb157fadcd2eba7.zip
Filter können auf höher gelegene BootMenus verweisen
Diffstat (limited to 'application/modules/user/controllers/FilterController.php')
-rw-r--r--application/modules/user/controllers/FilterController.php34
1 files changed, 25 insertions, 9 deletions
diff --git a/application/modules/user/controllers/FilterController.php b/application/modules/user/controllers/FilterController.php
index 9c53bcd..c8cd2e5 100644
--- a/application/modules/user/controllers/FilterController.php
+++ b/application/modules/user/controllers/FilterController.php
@@ -53,6 +53,7 @@ class User_FilterController extends Zend_Controller_Action
$ff->setID($filter['filterID']);
$allFilter[] = $ff;
}
+
$this->view->filters = $allFilter;
}
@@ -62,14 +63,29 @@ class User_FilterController extends Zend_Controller_Action
if(!Pbs_Acl::checkRight('fa'))
$this->_redirect('/user');
- $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;
+ $rr = new Application_Model_GroupGroupsMapper();
+ $groupMapper = new Application_Model_GroupMapper();
+ $parentGroups = $rr->getParentGroups($this->membership->getGroupID());
+ $bootmenus = array();
+ foreach($parentGroups as $parentGroup){
+ foreach($parentGroup as $p){
+ $bmmapper = new Application_Model_BootMenuMapper();
+ $result = $bmmapper->findBy('groupID',$p);
+ foreach($result as $rr){
+ $bm = new Application_Model_BootMenu();
+ $bm->setOptions($rr);
+ $bm->setID($rr['bootmenuID']);
+ if($bm->getMembershipID() == null){
+ $group = new Application_Model_Group();
+ $groupMapper->find($bm->getGroupID(),$group);
+
+ $name = $group->getTitle();
+ $bootmenus[$name][$bm->getID()] = $bm->getTitle();
+ }
+ }
+ }
}
+
$this->view->bootmenus = $bootmenus;
if (!isset($_POST["add"])){
@@ -82,7 +98,7 @@ class User_FilterController extends Zend_Controller_Action
$newfilter = new Application_Model_Filter($_POST);
$newfilter->setCreated(time());
$newfilter->setGroupID($this->membership->getGroupID());
- $newfilter->setMembershipID($this->membership->getID());
+ $newfilter->setMembershipID(null);
$newfilter2 = new Application_Model_FilterMapper();
$id = $newfilter2->save($newfilter);
@@ -173,7 +189,7 @@ class User_FilterController extends Zend_Controller_Action
$newfilterentry = new Application_Model_Filter($_POST);
$newfilterentry->setID($this->_request->getParam('filterID'));
$newfilterentry->setGroupID($this->membership->getGroupID());
- $newfilterentry->setMembershipID($this->membership->getID());
+ $newfilterentry->setMembershipID(null);
// ACL: if he is only allowed to edit filterpriority
if(Pbs_Acl::checkRight('fefp')){