diff options
author | Simon | 2011-04-11 12:24:21 +0200 |
---|---|---|
committer | Simon | 2011-04-11 12:24:21 +0200 |
commit | 3d21864c5852b381ca0d39ee6d761b30c003ce96 (patch) | |
tree | fb865ade1d4288760c79d912e954309ead81fd83 /library | |
parent | debugmeldungen auskommentiert (diff) | |
download | pbs2-3d21864c5852b381ca0d39ee6d761b30c003ce96.tar.gz pbs2-3d21864c5852b381ca0d39ee6d761b30c003ce96.tar.xz pbs2-3d21864c5852b381ca0d39ee6d761b30c003ce96.zip |
Default Bootmenu wird kopiert und passender Filter angelegt
Diffstat (limited to 'library')
-rw-r--r-- | library/Pbs/Filter.php | 1 | ||||
-rw-r--r-- | library/Pbs/NewMember.php | 63 |
2 files changed, 63 insertions, 1 deletions
diff --git a/library/Pbs/Filter.php b/library/Pbs/Filter.php index 5a83a40..5231e59 100644 --- a/library/Pbs/Filter.php +++ b/library/Pbs/Filter.php @@ -420,7 +420,6 @@ class Pbs_Filter{ return $bootmenuID; } else{ - echo "<h1>No Result :-(</h1>"; return null; } diff --git a/library/Pbs/NewMember.php b/library/Pbs/NewMember.php new file mode 100644 index 0000000..2825834 --- /dev/null +++ b/library/Pbs/NewMember.php @@ -0,0 +1,63 @@ +<?php + +class Pbs_NewMember{ + + public function createDefaults(Application_Model_Membership $membership){ + $personMapper = new Application_Model_PersonMapper(); + $bootmenuMapper = new Application_Model_BootMenuMapper(); + $bootmenuentriesMapper = new Application_Model_BootMenuEntriesMapper(); + $filterMapper = new Application_Model_FilterMapper(); + $filterentriesMapper = new Application_Model_FilterEntriesMapper(); + + // First we copy the default bootmenu with all the entries + $groupID = $membership->getGroupID(); + $person = $personMapper->find($membership->getPersonID()); + $personname = $person->getFirstName(). " " . $person->getName(); + + $defaultBootmenu = $bootmenuMapper->findBy(array('groupID'=>$groupID, 'defaultbootmenu'=>'1')); + $defaultBootmenu = $defaultBootmenu[0]; + + $userBootmenu = new Application_Model_BootMenu(); + $userBootmenu->setID(null); + $userBootmenu->setGroupID(null); + $userBootmenu->setMembershipID($membership->getID()); + $userBootmenu->setTitle("Private BootMenu of ".$personname); + $userBootmenu->setCreated(time()); + $userBootmenu->setDefaultbootmenu(0); + $userBootmenuID = $bootmenuMapper->save($userBootmenu); + $userBootmenu->setID($userBootmenuID); + + # print_a('userbootmenu',$userBootmenu); + + $bootmenuentries = $bootmenuentriesMapper->findBy(array('bootmenuID'=>$defaultBootmenu->getID())); + foreach($bootmenuentries as $bme){ + $bme->setID(null); + $bme->setBootmenuID($userBootmenuID); + $bootmenuentriesMapper->save($bme); + #print_a('bootmenuentry',$bme); + } + + // Second we create a filter + $filter = new Application_Model_Filter(); + $filter->setTitle("Private Filter of ".$personname); + $filter->setDescription("This filter was automatically created to forward the user to his own bootmenu"); + $filter->setMembershipID($membership->getID()); + $filter->setGroupID($membership->getGroupID()); + $filter->setBootmenuID($userBootmenuID); + $filter->setCreated(time()); + $filter->setPriority(50); + $filterID = $filterMapper->save($filter); + # print_a('filter',$filter); + + $filterentry = new Application_Model_FilterEntries(); + $filterentry->setFilterID($filterID); + $filterentry->setFiltertypeID(5); + $filterentry->setFiltervalue($membership->getID()); + $filterentriesMapper->save($filterentry); + # print_a('filterentry',$filterentry); + + + } +} + +?> |