Loading module/Application/config/others/droits.config.php +1 −1 Changes for module/Application/config/others/droits.config.php: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -90,7 +90,7 @@ return [ 'privileges' => [ 'label' => "Privilèges", 'title' => "Gestion des privilèges", 'route' => 'droits/privileges', 'route' => 'roles', 'resource' => PrivilegeController::getResourceId('UnicaenAuth\Controller\Droits', 'privileges'), 'withtarget' => true, ], Loading module/Application/src/Application/Controller/RoleController.php +8 −1 Changes for module/Application/src/Application/Controller/RoleController.php: 8 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -4,6 +4,8 @@ namespace Application\Controller; use Application\Entity\Db\Privilege; use Application\Entity\Db\Role; use Application\Service\Etablissement\EtablissementServiceAwareInterface; use Application\Service\Etablissement\EtablissementServiceAwareTrait; use Application\Service\Role\RoleServiceAwareInterface; use Application\Service\Role\RoleServiceAwareTrait; use Doctrine\ORM\QueryBuilder; Loading @@ -13,10 +15,11 @@ use UnicaenAuth\Entity\Db\CategoriePrivilege; use Zend\View\Model\ViewModel; class RoleController extends AbstractController implements EntityManagerAwareInterface, RoleServiceAwareInterface implements EntityManagerAwareInterface, RoleServiceAwareInterface, EtablissementServiceAwareInterface { use EntityManagerAwareTrait; use RoleServiceAwareTrait; use EtablissementServiceAwareTrait; public function indexAction() { Loading @@ -30,10 +33,14 @@ class RoleController extends AbstractController $qb_categorie = $this->decorateWithCategorie($qb_categorie, $categorie); $qb_categorie->orderBy("p.categorie, p.ordre","ASC"); $privileges = $qb_categorie->getQuery()->execute(); $etablissements = $this->etablissementService->getEtablissements(); return new ViewModel([ 'roles' => $roles, 'privileges' => $privileges, 'params' => $this->params()->fromQuery(), 'etablissements' => $etablissements, ]); } Loading module/Application/view/application/role/index.phtml +26 −13 Changes for module/Application/view/application/role/index.phtml: 26 added lines, 13 removed lines. Original line number Diff line number Diff line Loading @@ -26,12 +26,11 @@ <?php echo "<input type='submit' value='refresh' id='refresh'/>"; echo "<table id='mytable' class='table-bordered'>"; echo "<table id='mytable' class='mytable table-bordered'>"; echo "<tr><th></th>"; foreach($roles as $role) { echo generateTableHeaderRole($role); echo generateTableHeaderRole($role, $etablissements); } echo "</tr>"; Loading @@ -49,16 +48,12 @@ foreach($privileges as $privilege) { $id = "{$privilege->getId()}_{$role->getId()}"; echo "<td class='droit' id='$id' title='{$id}'>"; echo "<a href='".$this->url("modifier-privilege", ['role' => $role->getId(), 'privilege'=> $privilege->getId()], ["query" => $params], true)."' />"; // echo "[" . $role->getId() . "|" . $privilege->getId() . "|"; // echo (array_search($role, $privilege->getRole()->toArray()) === false); // echo "]"; if( array_search($role, $privilege->getRole()->toArray()) !== false) { echo "<span class='glyphicon glyphicon-ok text-success'></span>"; } else { echo "<span class='glyphicon glyphicon-remove text-danger'></span>"; } echo "</a>"; echo "</td>"; } Loading Loading @@ -107,18 +102,31 @@ echo "</table>"; return "KO"; } function getCode(Role $role, $etablissements) { /** @var \Application\Entity\Db\Etablissement $etablissement */ foreach($etablissements as $etablissement) { if ($etablissement->getId() == $role->getStructure()->getId()) { return $etablissement->getCode(); } } return "missing"; } /** * @param Role $role * @return string */ function generateTableHeaderRole($role) { function generateTableHeaderRole($role, $etablissements = null) { $premiere = $role->getLibelle(); $seconde = "missing"; $seconde = ""; $de = ""; switch(true) { case $role->isTheseDependant() : //$seconde = "ETAB"; $seconde = getCode($role, $etablissements); $de = "these"; break; case $role->isEcoleDoctoraleDependant() : Loading @@ -126,7 +134,7 @@ echo "</table>"; $de = "ed"; break; case $role->isEtablissementDependant() : //$seconde = $role->getStructure()->getCode(); $seconde = getCode($role, $etablissements); $de = "etab"; break; case $role->isUniteRechercheDependant() : Loading @@ -149,6 +157,11 @@ echo "</table>"; <style> table.mytable { background-color: white; } th.categorie { font-style: italic; font-size: 12pt; Loading @@ -157,7 +170,7 @@ echo "</table>"; } th.privilege { width:50px; height:50px; } th.role { Loading Loading
module/Application/config/others/droits.config.php +1 −1 Changes for module/Application/config/others/droits.config.php: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -90,7 +90,7 @@ return [ 'privileges' => [ 'label' => "Privilèges", 'title' => "Gestion des privilèges", 'route' => 'droits/privileges', 'route' => 'roles', 'resource' => PrivilegeController::getResourceId('UnicaenAuth\Controller\Droits', 'privileges'), 'withtarget' => true, ], Loading
module/Application/src/Application/Controller/RoleController.php +8 −1 Changes for module/Application/src/Application/Controller/RoleController.php: 8 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -4,6 +4,8 @@ namespace Application\Controller; use Application\Entity\Db\Privilege; use Application\Entity\Db\Role; use Application\Service\Etablissement\EtablissementServiceAwareInterface; use Application\Service\Etablissement\EtablissementServiceAwareTrait; use Application\Service\Role\RoleServiceAwareInterface; use Application\Service\Role\RoleServiceAwareTrait; use Doctrine\ORM\QueryBuilder; Loading @@ -13,10 +15,11 @@ use UnicaenAuth\Entity\Db\CategoriePrivilege; use Zend\View\Model\ViewModel; class RoleController extends AbstractController implements EntityManagerAwareInterface, RoleServiceAwareInterface implements EntityManagerAwareInterface, RoleServiceAwareInterface, EtablissementServiceAwareInterface { use EntityManagerAwareTrait; use RoleServiceAwareTrait; use EtablissementServiceAwareTrait; public function indexAction() { Loading @@ -30,10 +33,14 @@ class RoleController extends AbstractController $qb_categorie = $this->decorateWithCategorie($qb_categorie, $categorie); $qb_categorie->orderBy("p.categorie, p.ordre","ASC"); $privileges = $qb_categorie->getQuery()->execute(); $etablissements = $this->etablissementService->getEtablissements(); return new ViewModel([ 'roles' => $roles, 'privileges' => $privileges, 'params' => $this->params()->fromQuery(), 'etablissements' => $etablissements, ]); } Loading
module/Application/view/application/role/index.phtml +26 −13 Changes for module/Application/view/application/role/index.phtml: 26 added lines, 13 removed lines. Original line number Diff line number Diff line Loading @@ -26,12 +26,11 @@ <?php echo "<input type='submit' value='refresh' id='refresh'/>"; echo "<table id='mytable' class='table-bordered'>"; echo "<table id='mytable' class='mytable table-bordered'>"; echo "<tr><th></th>"; foreach($roles as $role) { echo generateTableHeaderRole($role); echo generateTableHeaderRole($role, $etablissements); } echo "</tr>"; Loading @@ -49,16 +48,12 @@ foreach($privileges as $privilege) { $id = "{$privilege->getId()}_{$role->getId()}"; echo "<td class='droit' id='$id' title='{$id}'>"; echo "<a href='".$this->url("modifier-privilege", ['role' => $role->getId(), 'privilege'=> $privilege->getId()], ["query" => $params], true)."' />"; // echo "[" . $role->getId() . "|" . $privilege->getId() . "|"; // echo (array_search($role, $privilege->getRole()->toArray()) === false); // echo "]"; if( array_search($role, $privilege->getRole()->toArray()) !== false) { echo "<span class='glyphicon glyphicon-ok text-success'></span>"; } else { echo "<span class='glyphicon glyphicon-remove text-danger'></span>"; } echo "</a>"; echo "</td>"; } Loading Loading @@ -107,18 +102,31 @@ echo "</table>"; return "KO"; } function getCode(Role $role, $etablissements) { /** @var \Application\Entity\Db\Etablissement $etablissement */ foreach($etablissements as $etablissement) { if ($etablissement->getId() == $role->getStructure()->getId()) { return $etablissement->getCode(); } } return "missing"; } /** * @param Role $role * @return string */ function generateTableHeaderRole($role) { function generateTableHeaderRole($role, $etablissements = null) { $premiere = $role->getLibelle(); $seconde = "missing"; $seconde = ""; $de = ""; switch(true) { case $role->isTheseDependant() : //$seconde = "ETAB"; $seconde = getCode($role, $etablissements); $de = "these"; break; case $role->isEcoleDoctoraleDependant() : Loading @@ -126,7 +134,7 @@ echo "</table>"; $de = "ed"; break; case $role->isEtablissementDependant() : //$seconde = $role->getStructure()->getCode(); $seconde = getCode($role, $etablissements); $de = "etab"; break; case $role->isUniteRechercheDependant() : Loading @@ -149,6 +157,11 @@ echo "</table>"; <style> table.mytable { background-color: white; } th.categorie { font-style: italic; font-size: 12pt; Loading @@ -157,7 +170,7 @@ echo "</table>"; } th.privilege { width:50px; height:50px; } th.role { Loading