summaryrefslogtreecommitdiffstats
path: root/library
diff options
context:
space:
mode:
authorSimon2011-04-11 12:24:21 +0200
committerSimon2011-04-11 12:24:21 +0200
commit3d21864c5852b381ca0d39ee6d761b30c003ce96 (patch)
treefb865ade1d4288760c79d912e954309ead81fd83 /library
parentdebugmeldungen auskommentiert (diff)
downloadpbs2-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.php1
-rw-r--r--library/Pbs/NewMember.php63
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);
+
+
+ }
+}
+
+?>