diff options
| author | michael pereira | 2011-04-12 16:39:18 +0200 |
|---|---|---|
| committer | michael pereira | 2011-04-12 16:39:18 +0200 |
| commit | ef0d7eaca3b82c5abf2e06fd94ffcf3a9c749e2b (patch) | |
| tree | d802c27bbd572dab75cb49fe2307abfba24d70b2 /application/modules/user/controllers | |
| parent | Resource controller fix (diff) | |
| parent | Rechte können nun wieder bei Rollen hinzugefügt und gelöscht werden, alle ... (diff) | |
| download | pbs2-ef0d7eaca3b82c5abf2e06fd94ffcf3a9c749e2b.tar.gz pbs2-ef0d7eaca3b82c5abf2e06fd94ffcf3a9c749e2b.tar.xz pbs2-ef0d7eaca3b82c5abf2e06fd94ffcf3a9c749e2b.zip | |
Merge branch 'master' of openslx.org:lsfks/master-teamprojekt/pbs2
Diffstat (limited to 'application/modules/user/controllers')
| -rw-r--r-- | application/modules/user/controllers/PersonController.php | 103 | ||||
| -rw-r--r-- | application/modules/user/controllers/RoleController.php | 55 |
2 files changed, 120 insertions, 38 deletions
diff --git a/application/modules/user/controllers/PersonController.php b/application/modules/user/controllers/PersonController.php index 7511233..bbdf232 100644 --- a/application/modules/user/controllers/PersonController.php +++ b/application/modules/user/controllers/PersonController.php @@ -2,13 +2,21 @@ class user_PersonController extends Zend_Controller_Action { + protected $person = null; + protected $personmapper = null; + protected $membershipMapper = null; + protected $memberships = null; + protected $groupMapper = null; + protected $groups = null; + protected $groupRequestMapper = null; + protected $userIDsNamespace = null; public function init() @@ -31,10 +39,10 @@ class user_PersonController extends Zend_Controller_Action foreach($this->memberships as $membership) { $group = $this->groupMapper->find($membership['groupID']); $this->groups[] = array ( - 'groupID' => $group->getID(), - 'title' => $group->getTitle(), - 'description' => $group->getDescription(), - 'membershipID' => $membership['membershipID'] + 'groupID' => $group->getID(), + 'title' => $group->getTitle(), + 'description' => $group->getDescription(), + 'membershipID' => $membership['membershipID'] ); } } @@ -88,6 +96,19 @@ class user_PersonController extends Zend_Controller_Action # $this->_redirect('/user'); #} $this->view->person = $this->person; + $groupRequests = $this->groupRequestMapper->findBy(array('personID' => $this->person->getID()),true); + if(isset($groupRequests)) { + foreach($groupRequests as $groupRequest) { + $group = $this->groupMapper->find($groupRequest['groupID']); + $groupRequestList[] = array( + 'grouprequestID' => $groupRequest['grouprequestID'], + 'group' => $group + ); + } + if(is_array($groupRequestList)) { + $this->view->groupRequestList = $groupRequestList; + } + } // Pagination $pagination = new Pbs_Pagination(); $pagination->setPerPage(3); @@ -217,13 +238,21 @@ class user_PersonController extends Zend_Controller_Action $date = new DateTime(); $groupRequest->setTime($date->getTimestamp()); $groupRequest->setPersonID($this->person->getID()); - try { - $groupRequestMapper->save($groupRequest); - } catch(Zend_Exception $e) - { - echo "Caught exception: " . get_class($e) . "<br/>"; - echo "Message: " . $e->getMessage() . "<br/>"; - return; + foreach($groupRequests as $groupRequestDB) { + if($groupRequestDB['groupID'] == $groupRequest->getGroupID()) { + $requestFound = true; + break; + } + } + if(!$requestFound) { + try { + $groupRequestMapper->save($groupRequest); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "<br/>"; + echo "Message: " . $e->getMessage() . "<br/>"; + return; + } } $this->_helper->redirector('owndetails', 'person'); return; @@ -279,9 +308,9 @@ class user_PersonController extends Zend_Controller_Action $group = $groupMapper->find($membership['groupID']); $role = $roleMapper->find($membership['roleID']); $membershipList[] = array( - 'membershipID' => $membership['membershipID'], - 'group' => $group->getTitle(), - 'role' => $role->getTitle() + 'membershipID' => $membership['membershipID'], + 'group' => $group->getTitle(), + 'role' => $role->getTitle() ); } } @@ -302,7 +331,8 @@ class user_PersonController extends Zend_Controller_Action return; } - public function searchAction(){ + public function searchAction() + { if(!Pbs_Acl::checkRight('pso')) { $this->_redirect('/user'); } @@ -322,15 +352,27 @@ class user_PersonController extends Zend_Controller_Action foreach($memberships as $membership) { $group = $this->groupMapper->find($membership['groupID']); $groups[] = array ( - 'groupID' => $group->getID(), - 'title' => $group->getTitle(), - 'description' => $group->getDescription(), - 'membershipID' => $membership['membershipID'] + 'groupID' => $group->getID(), + 'title' => $group->getTitle(), + 'description' => $group->getDescription(), + 'membershipID' => $membership['membershipID'] ); } } $this->view->person = $person; - + $groupRequests = $this->groupRequestMapper->findBy(array('personID' => $person->getID()),true); + if(isset($groupRequests)) { + foreach($groupRequests as $groupRequest) { + $group = $this->groupMapper->find($groupRequest['groupID']); + $groupRequestList[] = array( + 'grouprequestID' => $groupRequest['grouprequestID'], + 'group' => $group + ); + } + if(is_array($groupRequestList)) { + $this->view->groupRequestList = $groupRequestList; + } + } // Pagination $pagination = new Pbs_Pagination(); $pagination->setPerPage(2); @@ -350,4 +392,23 @@ class user_PersonController extends Zend_Controller_Action return; } } -}
\ No newline at end of file + + public function deleterequestAction() + { + $grouprequestID = $this->_request->getParam('grouprequestID'); + $grouprequest = $this->groupRequestMapper->find($grouprequestID); + try { + $this->groupRequestMapper->delete($grouprequest); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "<br/>"; + echo "Message: " . $e->getMessage() . "<br/>"; + return; + } + $this->_helper->redirector('owndetails', 'person'); + return; + } + + +} + diff --git a/application/modules/user/controllers/RoleController.php b/application/modules/user/controllers/RoleController.php index 91357f0..1b2e54f 100644 --- a/application/modules/user/controllers/RoleController.php +++ b/application/modules/user/controllers/RoleController.php @@ -322,7 +322,11 @@ class User_RoleController extends Zend_Controller_Action } } } else { - $rightlist = $rights; + $rightCategoryMapper = new Application_Model_RightCategoryMapper(); + foreach($rights as $right) { + $rightCategory = $rightCategoryMapper->find($right->getRightcategoryID()); + $rightlist[$rightCategory->getTitle()][$right->getID()] = $right->getTitle(); + } } if(count($rightlist) > 0) { if (!isset($_POST["link"])){ @@ -377,15 +381,10 @@ class User_RoleController extends Zend_Controller_Action if(isset($rightRolesID)) { $rightRolesID = explode('-',$rightRolesID); $roleID = $rightRolesID[0]; - $rightID = $rightRolesID[1]; - if (isset($roleID) && isset($rightID)){ - $roleMapper = new Application_Model_RoleMapper(); - $role = $roleMapper->find($roleID); - $roleGroupID = $role->getGroupID(); - if($this->userIDsNamespace['groupID'] == $roleGroupID) { - $rightroles = new Application_Model_RightRoles(); - $rightroles->setRoleID($roleID); - $rightroles->setRightID($rightID); + if($rightRolesID[1] == 'all') { + $rightRolesMapper = new Application_Model_RightRolesMapper(); + $rightroleslist = $rightRolesMapper->findBy(array('roleID' => $roleID)); + foreach($rightroleslist as $rightroles) { try { $this->rightRolesMapper->delete($rightroles); } catch(Zend_Exception $e) @@ -393,15 +392,37 @@ class User_RoleController extends Zend_Controller_Action echo "Caught exception: " . get_class($e) . "<br/>"; echo "Message: " . $e->getMessage() . "<br/>"; return; + } + } + $this->_redirect('/user/role/show/roleID/' . $roleID); + return; + } else { + $rightID = $rightRolesID[1]; + if (isset($roleID) && isset($rightID)){ + $roleMapper = new Application_Model_RoleMapper(); + $role = $roleMapper->find($roleID); + $roleGroupID = $role->getGroupID(); + if($this->userIDsNamespace['groupID'] == $roleGroupID) { + $rightroles = new Application_Model_RightRoles(); + $rightroles->setRoleID($roleID); + $rightroles->setRightID($rightID); + try { + $this->rightRolesMapper->delete($rightroles); + } catch(Zend_Exception $e) + { + echo "Caught exception: " . get_class($e) . "<br/>"; + echo "Message: " . $e->getMessage() . "<br/>"; + return; + } + $this->_redirect('/user/role/show/roleID/' . $roleID); + return; + } else { + $pbsNotifier = new Pbs_Notifier(); + echo $pbsNotifier->notify('unlink','forbidden'); + $this->_helper-> viewRenderer-> setNoRender(); + return; } - $this->_redirect('/user/role/show/roleID/' . $roleID); - return; - } else { - $pbsNotifier = new Pbs_Notifier(); - echo $pbsNotifier->notify('unlink','forbidden'); - $this->_helper-> viewRenderer-> setNoRender(); - return; } } } else { |
