diff options
| author | Björn Geiger | 2011-04-12 16:37:05 +0200 |
|---|---|---|
| committer | Björn Geiger | 2011-04-12 16:37:05 +0200 |
| commit | 4cbe29cb27b1963cabdeaa83b780b6705cd0ece9 (patch) | |
| tree | 43ecb8fbcb1b1685d734a2dd578bc9fc07cc847a /application/modules/user | |
| parent | quickfix für fbgui (diff) | |
| download | pbs2-4cbe29cb27b1963cabdeaa83b780b6705cd0ece9.tar.gz pbs2-4cbe29cb27b1963cabdeaa83b780b6705cd0ece9.tar.xz pbs2-4cbe29cb27b1963cabdeaa83b780b6705cd0ece9.zip | |
Rechte können nun wieder bei Rollen hinzugefügt und gelöscht werden, alle Rechte gleichzeitig von einer Rolle löschen
Diffstat (limited to 'application/modules/user')
| -rw-r--r-- | application/modules/user/controllers/RoleController.php | 55 | ||||
| -rw-r--r-- | application/modules/user/views/scripts/role/show.phtml | 34 |
2 files changed, 59 insertions, 30 deletions
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 { diff --git a/application/modules/user/views/scripts/role/show.phtml b/application/modules/user/views/scripts/role/show.phtml index 8f4bb50..8c7503f 100644 --- a/application/modules/user/views/scripts/role/show.phtml +++ b/application/modules/user/views/scripts/role/show.phtml @@ -53,17 +53,22 @@ if($this->rightsAvailable === true) { echo $this->formButton('linkright', 'Add Rights', array( 'onclick' => 'self.location="/user/role/linkright/roleID/' . $this->role->getID() .'"', 'class' => 'addbutton'))?> -<br /> <?php } } -if(count($this->rightsList)==0) -echo "There are no Rights to display."; -if(isset($this->rightcategorieslist)) { - foreach($this->rightcategorieslist as $k => $v): - $rights = $this->rightsList[$k]; - if(count($rights) > 0) { - ?> +if(count($this->rightsList)==0) { + echo "There are no Rights to display."; +} else { + if($this->removeRightOfRoleRight) echo $this->formButton('deleteallrights', 'Delete All Rights', array( + 'onclick' => 'self.location="/user/role/unlinkright/rightrolesID/' . $this->roleID . '-all"', + 'class' => 'rightbutton'));?> +<br /> + <?php + if(isset($this->rightcategorieslist)) { + foreach($this->rightcategorieslist as $k => $v): + $rights = $this->rightsList[$k]; + if(count($rights) > 0) { + ?> <h3><?php echo $v; ?>:</h3> <div class='listelement'><?php foreach($rights as $right): @@ -96,12 +101,15 @@ if($right->getDescription()) { <div class='clear'></div> </div> <?php -endforeach; - } - ?></div> +endforeach +?></div> +<?php + } + ?> <br /> - <?php - endforeach; + <?php + endforeach; + } } } ?> |
