diff --git a/admin/controleurs/admin_right.php b/admin/controleurs/admin_right.php index 176157be4..868fb1bf8 100644 --- a/admin/controleurs/admin_right.php +++ b/admin/controleurs/admin_right.php @@ -15,22 +15,17 @@ * (at your option) any later version. */ -include "../include/admin.inc.php"; $grr_script_name = "admin_right.php"; -$back = ''; -if (isset($_SERVER['HTTP_REFERER'])) - $back = htmlspecialchars($_SERVER['HTTP_REFERER']); + $id_area = isset($_POST["id_area"]) ? $_POST["id_area"] : (isset($_GET["id_area"]) ? $_GET["id_area"] : NULL); $room = isset($_POST["room"]) ? $_POST["room"] : (isset($_GET["room"]) ? $_GET["room"] : NULL); if (isset($room)) settype($room,"integer"); if (!isset($id_area)) settype($id_area,"integer"); + check_access(4, $back); -//print the page header -print_header("", "", "", $type="with_session"); -// Affichage de la colonne de gauche -include "admin_col_gauche.php"; + // tableau des ressources auxquelles l'utilisateur n'a pas accès $tab_rooms_noaccess = verif_acces_ressource(getUserName(), 'all'); $reg_admin_login = isset($_POST["reg_admin_login"]) ? $_POST["reg_admin_login"] : NULL; @@ -270,56 +265,50 @@ } if (empty($room)) $room = -1; -echo "

".get_vocab('admin_right.php')."

\n"; -echo "

".get_vocab("admin_right_explain")."

\n"; + +get_vocab_admin('admin_right'); +get_vocab_admin('admin_right_explain'); + +get_vocab_admin('areas'); +get_vocab_admin('select'); +get_vocab_admin('rooms'); +get_vocab_admin('select_all'); +get_vocab_admin('user_list'); +get_vocab_admin('add_user_to_list'); +get_vocab_admin('add_multiple_user_to_list'); +get_vocab_admin('add'); + +$trad['dIdDomaine'] = $id_area; +$trad['dIdRessource'] = $room; + + // Affichage d'un pop-up affiche_pop_up($msg,"admin"); -//Table with areas, rooms. -echo "\n"; + $this_area_name = ""; $this_room_name = ""; +$utilisateursAdmin = array (); +$utilisateursAjoutable = array (); +$ressources = array (); + //Show all areas -echo "\n"; + //Show all rooms in the current area -echo "\n"; -echo "

".get_vocab("areas")."

\n"; -$out_html = "
\n
\n - - -
"; -echo $out_html; + $this_area_name = grr_sql_query1("SELECT area_name FROM ".TABLE_PREFIX."_area WHERE id=$id_area"); $this_room_name = grr_sql_query1("SELECT room_name FROM ".TABLE_PREFIX."_room WHERE id=$room"); $this_room_name_des = grr_sql_query1("SELECT description FROM ".TABLE_PREFIX."_room WHERE id=$room"); -echo "

".get_vocab('rooms')."

"; -//should we show a drop-down for the room list, or not? -$out_html = "
\n
\n - - -
"; -echo $out_html; -echo "
\n"; -//Don't continue if this area has no rooms: -if ($id_area <= 0) -{ - echo "

".get_vocab("no_area")."

"; - // fin de l'affichage de la colonne de droite - echo ""; - exit; } + //Show area and room: if ($this_room_name_des != '-1') $this_room_name_des = " (".$this_room_name_des.")"; else $this_room_name_des = ''; -echo " - - 0) -{ - ?> - "; + + if($ExisteDeja == false) + $utilisateursAjoutable[] = array('login' => $row3[0], 'nom' => $row3[1], 'prenom' => $row3[2]); + } } - echo "
"; -if ($room != -1) + +if ($room != -1) // Sur une ressource { - $sql = "SELECT u.login, u.nom, u.prenom FROM ".TABLE_PREFIX."_utilisateurs u, ".TABLE_PREFIX."_j_user_room j WHERE (j.id_room='$room' and u.login=j.login) order by u.nom, u.prenom"; + $sql = "SELECT u.login, u.nom, u.prenom FROM ".TABLE_PREFIX."_utilisateurs u, ".TABLE_PREFIX."_j_user_room j WHERE (j.id_room='$room' and u.login=j.login) order by u.nom, u.prenom"; $res = grr_sql_query($sql); $nombre = grr_sql_count($res); - if ($nombre != 0) - echo "

".get_vocab("user_list")."

"; if ($res) { - for ($i = 0; ($row = grr_sql_row($res, $i)); $i++) - { - $login_admin = $row[0]; - $nom_admin = htmlspecialchars($row[1]); - $prenom_admin = htmlspecialchars($row[2]); - echo ""; - echo "$nom_admin $prenom_admin | ".get_vocab("delete")."
"; - } + for ($i = 0; ($row2 = grr_sql_row($res, $i)); $i++) + $utilisateursAdmin[] = array('login' => $row2[0], 'nom' => $row2[1], 'prenom' => $row2[2]); } - if ($nombre == 0) - echo "

".get_vocab("no_admin")."

"; } -else +else // Sur toute les ressources du domaine { $exist_admin='no'; $sql = "SELECT login, nom, prenom FROM ".TABLE_PREFIX."_utilisateurs WHERE (statut='utilisateur' or statut='gestionnaire_utilisateur')"; $res = grr_sql_query($sql); if ($res) { - for ($i = 0; ($row = grr_sql_row($res, $i)); $i++) + for ($i = 0; ($row2 = grr_sql_row($res, $i)); $i++) { $is_admin = 'yes'; $sql2 = "SELECT id, room_name, description FROM ".TABLE_PREFIX."_room WHERE area_id=$id_area "; @@ -406,14 +358,15 @@ function room_go() $sql2 .= " and id != $key "; $sql2 .= " order by order_display,room_name"; $res2 = grr_sql_query($sql2); + if ($res2) { $test = grr_sql_count($res2); if ($test != 0) { - for ($j = 0; ($row2 = grr_sql_row($res2, $j)); $j++) + for ($j = 0; ($row4 = grr_sql_row($res2, $j)); $j++) { - $sql3 = "SELECT login FROM ".TABLE_PREFIX."_j_user_room WHERE (id_room='".$row2[0]."' and login='".$row[0]."')"; + $sql3 = "SELECT login FROM ".TABLE_PREFIX."_j_user_room WHERE (id_room='".$row4[0]."' and login='".$row2[0]."')"; $res3 = grr_sql_query($sql3); $nombre = grr_sql_count($res3); if ($nombre == 0) @@ -425,82 +378,33 @@ function room_go() } if ($is_admin == 'yes') { - if ($exist_admin == 'no') - { - echo "

".get_vocab("user_list")."

"; - $exist_admin = 'yes'; - } - echo ""; - echo htmlspecialchars($row[1])." ".htmlspecialchars($row[2])." | ".get_vocab("delete")."
"; + $utilisateursAdmin[] = array('login' => $row2[0], 'nom' => $row2[1], 'prenom' => $row2[2]); } } } - if ($exist_admin=='no') - echo "

".get_vocab("no_admin_all")."

"; + } -?> -

-
-
- - - -
-
-

-
-
- - - - - -
-
-
"; -// fin de l'affichage de la colonne de droite - echo ""; - ?> - - \ No newline at end of file + } + + echo $twig->render('admin_right.twig', array('liensMenu' => $menuAdminT, 'liensMenuN2' => $menuAdminTN2, 'trad' => $trad, 'settings' => $AllSettings, 'domaines' => $domaines, 'ressources' => $ressources, 'utilisateursadmin' => $utilisateursAdmin, 'utilisateursajoutable' => $utilisateursAjoutable)); +?> \ No newline at end of file diff --git a/admin/templates/admin_right.twig b/admin/templates/admin_right.twig new file mode 100644 index 000000000..f5ab6b298 --- /dev/null +++ b/admin/templates/admin_right.twig @@ -0,0 +1,188 @@ +{% extends 'layout.twig' %} + +{% import 'messagesysteme.twig' as msgSyst %} + +{% block content %} +
+
+ + {% if trad.dMessage %} + {{ msgSyst.messageInfo(trad.admin_email_manager, trad.dMessage) }} + {% endif %} + +
+
+

{{ trad.admin_right }}

+
+ +
+

{{ trad.admin_right_explain }}

+ +
+ +
+ +
+ +
+ +
+
+ +
+ +
+ +
+ +
+ +
+
+ +
+ +
+ + {% if trad.dIdDomaine > 0 %} + +
+ + + + +
+ +
+ +
+
+ +
+ +
+
+ + {% if trad.dNbUserAjoutable > 0 %} + +
+ + + +
+ +
+ + + + +
+
+ +
+ +
+
+ + {% endif %} + +

{{ trad.user_list }}

+ + + + + + + + + {% for useradmin in utilisateursadmin %} + + + + + {% if trad.dIdRessource != -1 %} + + {% else %} + + {% endif %} + + {% endfor %} +
{{ trad.login }}{{ trad.last_name }}{{ trad.first_name }}{{ trad.action }}
{{ useradmin.login }}{{ useradmin.nom }}{{ useradmin.prenom }}
+ + {% endif %} +
+
+
+
+{% endblock %} + +{% block javascript %} + +{% endblock %} \ No newline at end of file