From 73d75b8f6bd02134a9600d34ceb68a9ba2f0c5b3 Mon Sep 17 00:00:00 2001 From: Björn Geiger Date: Tue, 12 Apr 2011 17:57:18 +0200 Subject: beim Anlegen einer Gruppe wird der aktuelle Benutzer automatisch Admin, #187 --- .../modules/user/controllers/GroupController.php | 49 ++++++++++++++++++++-- 1 file changed, 45 insertions(+), 4 deletions(-) (limited to 'application/modules/user/controllers/GroupController.php') diff --git a/application/modules/user/controllers/GroupController.php b/application/modules/user/controllers/GroupController.php index 0a4b25d..098896f 100644 --- a/application/modules/user/controllers/GroupController.php +++ b/application/modules/user/controllers/GroupController.php @@ -77,11 +77,52 @@ class User_GroupController extends Zend_Controller_Action echo "Message: " . $e->getMessage() . "
"; return; } + $groupID = $this->groupMapper->getDbTable()->getDefaultAdapter()->lastInsertId(); + $membership = $this->membershipMapper->find($this->userIDsNamespace['membershipID']); + $role = $this->rolemapper->find($membership->getRoleID()); + $rightrolesMapper = new Application_Model_RightRolesMapper(); + $rightroleslist = $rightrolesMapper->findBy(array('roleID' => $membership->getRoleID())); + $role->setGroupID($groupID); + $role->setID(); + try { + $this->rolemapper->save($role); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "
"; + echo "Message: " . $e->getMessage() . "
"; + return; + } + $roleID = $this->rolemapper->getDbTable()->getDefaultAdapter()->lastInsertId(); + $membership->setID(); + $membership->setGroupID($groupID); + $membership->setRoleID($roleID); + try { + $this->membershipMapper->save($membership); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "
"; + echo "Message: " . $e->getMessage() . "
"; + return; + } + foreach($rightroleslist as $rightroles) { + $rightroles->setRoleID($roleID); + try { + $rightrolesMapper->save($rightroles); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "
"; + echo "Message: " . $e->getMessage() . "
"; + return; + } + } + + + + if($_POST['superordinatedGroupID'] != -1) { - $lastID = $this->groupMapper->getDbTable()->getDefaultAdapter()->lastInsertId(); $groupgroups = new Application_Model_GroupGroups(); $groupgroups->setParentID($_POST['superordinatedGroupID']); - $groupgroups->setGroupID($lastID); + $groupgroups->setGroupID($groupID); try { $this->groupGroupsMapper->save($groupgroups); } catch(Zend_Exception $e) @@ -92,8 +133,8 @@ class User_GroupController extends Zend_Controller_Action } } - $this->_helper->redirector('', 'group'); - return; + //$this->_helper->redirector('', 'group'); + //return; } } -- cgit v1.2.3-55-g7522