[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/annu/ -> add_group_right.php (source)

   1  <?php
   2  
   3     /**
   4  
   5     * Ajoute des droits aux groupes dans l'annuaire
   6     * @Version $Id: add_group_right.php 4187 2009-06-19 09:22:12Z gnumdk $
   7  
   8     * @Projet LCS / SambaEdu
   9  
  10     * @auteurs jLCF jean-luc.chretien@tice.ac-caen.fr
  11     * @auteurs oluve olivier.le_monnier@crdp.ac-caen.fr
  12     * @auteurs wawa  olivier.lecluse@crdp.ac-caen.fr
  13     * @auteurs Equipe Tice academie de Caen
  14     * @auteurs Philippe Chadefaux
  15  
  16     * @Licence Distribue selon les termes de la licence GPL
  17  
  18     * @note
  19     */
  20  
  21     /**
  22  
  23     * @Repertoire: annu
  24     * file: add_group_right.php
  25  
  26    */
  27  
  28  
  29  
  30  include  "entete.inc.php";
  31  include  "ldap.inc.php";
  32  include  "ihm.inc.php";
  33  
  34  require_once  ("lang.inc.php");
  35  bindtextdomain('se3-annu',"/var/www/se3/locale");
  36  textdomain ('se3-annu');
  37  
  38  $_SESSION["pageaide"]="Annuaire";
  39  
  40  
  41  $uid=$_GET['cn'];
  42  if ($uid=="") { $uid=$_POST['cn']; }
  43  $action=$_POST['action'];
  44  $delrights=$_POST['delrights'];
  45  $newrights=$_POST['newrights'];
  46  
  47  echo "<h1>".gettext("Annuaire")."</h1>\n";
  48  
  49  $filtre = "8_".$uid;
  50  aff_trailer ("$filtre");
  51  
  52  if (ldap_get_right("se3_is_admin",$login)=="Y") {
  53  
  54      // Ajoute un droit
  55      if ($action == "AddRights") {
  56                // Inscription des droits dans l'annuaire
  57                echo "<H3>".gettext("Inscription des droits pour")." <U>$uid</U></H3>";
  58                echo "<P>".gettext("Vous avez s&#233;lectionn&#233; ") ."". count($newrights)."".gettext(" droit(s)")."<BR>\n";
  59                for ($loop=0; $loop < count($newrights); $loop++) {
  60                  $right=$newrights[$loop];
  61                  echo gettext("D&#233;l&#233;gation du droit")." <U>$right</U> ".gettext("&#224; l'utilisateur")." $uid<BR>";
  62                  $cDn = "cn=$uid,$groupsRdn,$ldap_base_dn";
  63                  $pDn = "cn=$right,$rightsRdn,$ldap_base_dn";
  64                  exec ("/usr/share/se3/sbin/groupAddEntry.pl \"$cDn\" \"$pDn\"");
  65                  echo "<BR>";
  66                }
  67          }
  68  
  69      // Supprime un droit
  70      if ( $action == "DelRights" ) {
  71                // Suppression des droits dans l'annuaire
  72                echo "<H3>".gettext("Suppression des droits pour")." <U>$uid</U></H3>";
  73                echo "<P>".gettext("Vous avez s&#233;lectionn&#233; ") ."". count($delrights)." droit(s)<BR>\n";
  74                for ($loop=0; $loop < count($delrights); $loop++) {
  75                  $right=$delrights[$loop];
  76                  echo gettext("Suppression du droit")." <U>$right</U> ".gettext("pour le groupe")." $uid<BR>";
  77                  $cDn = "cn=$uid,$groupsRdn,$ldap_base_dn";
  78                  $pDn = "cn=$right,$rightsRdn,$ldap_base_dn";
  79                  exec ("/usr/share/se3/sbin/groupDelEntry.pl \"$cDn\" \"$pDn\"");
  80                  echo "<BR>";
  81                }
  82          }
  83  
  84          list($user, $groups)=people_get_variables($uid, true);
  85          // Affichage du nom et de la description de l'utilisateur
  86          echo "<H3>".gettext("D&#233;l&#233;gation de droits &#224; ")."". $user["fullname"] ." (<U>$uid</U>)</H3>\n";
  87          echo gettext("S&#233;lectionnez les droits &#224; supprimer (liste de gauche) ou &#224; ajouter (liste de droite)");
  88          echo gettext("et validez &#224; l'aide du bouton correspondant.")."<BR><BR>\n";
  89          // Lecture des droits disponibles
  90          $userDn="cn=$uid,$groupsRdn,$ldap_base_dn";
  91          $list_possible_rights=search_machines("(!(member=$userDn))","rights");
  92          $list_current_rights=search_machines("(member=$userDn)","rights");
  93          ?>
  94  
  95      <FORM method="post" action="../annu/add_group_right.php">
  96        <INPUT TYPE="hidden" VALUE="<?php echo $uid;?>" NAME="cn">
  97        <INPUT TYPE="hidden" NAME="action">
  98        <TABLE BORDER=1 CELLPADDING=3 CELLSPACING=1 RULES=COLS><TR>
  99        <TH align=center><?php echo gettext("Droits actuels "); ?>
 100  
 101      <u onmouseover="this.T_SHADOWWIDTH=5;this.T_STICKY=1;return escape<?php echo gettext("('Les droits indiqu&#233;s dans cette liste sont les droits effectifs.<br>Tous les membres de ce groupe disposeront de ces droits.')"); ?>"><img name="action_image2"  src="../elements/images/system-help.png" alt="Help"></u>
 102        <TH align="center"><?php echo gettext("Droits disponibles"); ?>
 103      <u onmouseover="this.T_SHADOWWIDTH=5;this.T_STICKY=1;return escape<?php echo gettext("('<b>se3_is_admin</b> Donne le droit d\'administration sur tout le syst&#232;me. Ce droit l\'emporte sur tous les autres.<BR><b>Annu_is_admin</b> Donne tous les droits sur l\'annuaire (Ajouter, supprimer, modifier des utilisateurs ou des groupes).<BR><b>sovajon_is_admin</b> D&#233;l&#233;gue le droit de changer les mots de passe &#224; un professeur. Il faut que celui-ci soit professeur de la classe.<BR><b>system_is_admin</b> Donne le droit de visualiser les informations syst&#232;me du serveur.<BR><b>computers_is_admin</b> Permet de g&#233;rer les machines clientes (Cr&#233;er ou supprimer des machines des parcs, &#233;tat des machines clientes...)<BR><b>printers_is_admin</b> Gestion des files d\'impression des imprimantes.<BR><b>echange_can_administrate</b> Permet de g&#233;rer les r&#233;pertoires _echanges dans les r&#233;pertoires classes.<BR><b>inventaire_can_read</B> Permet de consulter l\'inventaire<BR><b>annu_can_read</b> Permet de consulter l\'annuaire. Par d&#233;faut les membres du groupe Profs ont ce droit.<BR><b>maintenance_can_write</b> Permet de d&#233;clarer une panne sur une machine dans l\'interface de maintenance.<BR><b>parc_can_view</b> Permet de voir les parcs.<BR><b>parc_can_manage</b> Permet de d&#233;l&#233;guer la gestion d\'un parc &#224; une personne.<BR><b>smbweb_is_open</b> Donne le droit d\'acc&#232;s depuis l\'interface smbwebclient du Slis ou du Lcs (optionnel).')"); ?>"><img name="action_image2"  src="../elements/images/system-help.png" alt="Help"></u>
 104  
 105        </TH></TR>
 106        <TR><TD VALIGN="TOP">
 107  
 108      <?php
 109  
 110        if   ( count($list_current_rights)>15) $size=15; else $size=count($list_current_rights);
 111          if ( $size>0) {
 112              echo "<SELECT NAME=\"delrights[]\" SIZE=\"$size\" multiple=\"multiple\">";
 113                for ($loop=0; $loop < count($list_current_rights); $loop++) {
 114                        echo "<option value=".$list_current_rights[$loop]["cn"].">".$list_current_rights[$loop]["cn"]."\n";
 115                }
 116          ?>
 117  
 118          </SELECT><BR><BR>
 119            <input type="submit" value="Retirer ces droits" onClick="this.form.action.value ='DelRights';return true;">
 120          <?php
 121          } else {
 122                echo "<U>$uid</U> ".gettext("n'a aucun droit propre");
 123          }
 124      ?>
 125        </TD><TD VALIGN="TOP">
 126      <?php
 127      if   ( count($list_possible_rights)>15) $size=15; else $size=count($list_possible_rights);
 128          if ( $size>0) {
 129                echo "<SELECT NAME=\"newrights[]\" SIZE=\"$size\" multiple=\"multiple\">";
 130                for ($loop=0; $loop < count($list_possible_rights); $loop++) {
 131                    echo "<option value=".$list_possible_rights[$loop]["cn"].">".$list_possible_rights[$loop]["cn"]."\n";
 132                }
 133          ?>
 134            </SELECT><BR><BR>
 135            <input type="submit" value="<?php echo gettext("Ajouter ces droits"); ?>" onClick="this.form.action.value ='AddRights';return true;">
 136          <?php
 137          } else {
 138                echo "<U>$uid</U>".gettext(" a tous les droits");
 139          }
 140      ?>
 141      </TD></TR></TABLE>
 142      </FORM>
 143      <?php
 144  
 145  } else {
 146          echo "<div class=error_msg>".gettext("Cette application, n&#233;cessite les droits d'administrateur du serveur SambaEdu !")."</div>";
 147  }
 148  
 149  include ("pdp.inc.php");
 150  ?>


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1