[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

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

   1  <?php
   2  
   3  
   4     /**
   5     
   6     * Detruit les droits des utilisateurs dans l'annuaire
   7     * @Version $Id: delete_right.php 6176 2011-02-27 23:00:23Z dbo $ 
   8     
   9     * @Projet LCS / SambaEdu 
  10     
  11     * @auteurs jLCF jean-luc.chretien@tice.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: delete_right.php
  25     */
  26  
  27  
  28  
  29  include  "entete.inc.php";
  30  include  "ldap.inc.php";
  31  include  "ihm.inc.php";
  32  
  33  require_once  ("lang.inc.php");
  34  bindtextdomain('se3-annu',"/var/www/se3/locale");
  35  textdomain ('se3-annu');
  36  
  37  if (ldap_get_right("se3_is_admin",$login)=="Y") {
  38  
  39      $filtrecomp=$_POST['filtrecomp'];
  40      $old_rights=$_POST['old_rights'];
  41      $delete_right=$_POST['delete_right'];
  42      $right=$_POST['right'];
  43      $type=$_POST['type'];
  44  
  45      //Aide
  46      $_SESSION["pageaide"]="Annuaire";    
  47      echo "<h1>".gettext("Annuaire")."</h1>\n";
  48        aff_trailer ("1");
  49          // Affichage du formulaire de selection de parc
  50          if (!isset($right)) {
  51              echo "<TABLE><TR><TD>";
  52              echo "<H3>".gettext("S&#233;lection du droit &#224; retirer")."</H3>";
  53          echo "</TD><TD>";
  54          ?>
  55          <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"></u>
  56          <?php
  57          echo "</TD></TR></TABLE>";
  58          $list_rights=search_machines("objectclass=groupOfNames","rights");
  59              if ( count($list_rights)>0) {
  60                      echo "<FORM method=\"post\">\n";  
  61                      echo "<SELECT NAME=\"right\" SIZE=\"1\">";
  62                      for ($loop=0; $loop < count($list_rights); $loop++) {
  63                          echo "<option value=".$list_rights[$loop]["cn"].">".$list_rights[$loop]["cn"]."\n";
  64                      }
  65                      echo "</SELECT>&nbsp;&nbsp;\n";
  66                      echo "<input type=\"submit\" value=\"".gettext("Valider")."\">\n";
  67                      echo "</FORM>\n";
  68              }  
  69      } else {
  70              // Affichage du formulaire de remplissagge du parc
  71              if (!$delete_right ) {
  72                  // Filtrage des noms
  73                  echo "<FORM action=\"delete_right.php\" method=\"post\">\n";
  74                  echo "<P>".gettext("Lister les noms contenant :");
  75                  echo "<INPUT TYPE=\"text\" NAME=\"filtrecomp\"\n VALUE=\"$filtrecomp\" SIZE=\"8\">";
  76                  echo "<input type=\"hidden\" name=\"right\" value=\"$right\">\n";
  77                  echo "<input type=\"submit\" value=\"".gettext("Valider")."\">\n";
  78                  echo "</FORM>\n";
  79                  // Lecture des membres du droit
  80                  $mp_all=gof_members($right,"rights",0);
  81                  // Filtrage selon critere
  82                  if ("$filtrecomp"=="") $mp=$mp_all;
  83                  else {
  84                          $lmloop=0;
  85                          $mpcount=count($mp_all);
  86                          for ($loop=0; $loop < count($mp_all); $loop++) {
  87                              $mach=$mp_all[$loop];
  88                              if (preg_match("/$filtrecomp/",$mach)) $mp[$lmloop++]=$mach;
  89                          }
  90                  }
  91                  if ( count($mp)>15) $size=15; else $size=count($mp);
  92                  if ( count($mp)>0) {
  93                          $form = "<form action=\"delete_right.php\" method=\"post\">\n";
  94                          $form.="<p>".gettext("S&#233;lectionnez les personnes ou groupes &#224; priver du droit ")." <b>$right</b> :</p>\n";
  95                          $form.="<p><select size=\"".$size."\" name=\"old_rights[]\" multiple=\"multiple\">\n";
  96                          echo $form;
  97                          for ($loop=0; $loop < count($mp); $loop++) { 
  98                              $value=extract_login($mp[$loop]);
  99                              if (preg_match("/$groupsRdn/",$mp[$loop])) {
 100                          $type = "groupe";
 101                          $value="$value ($type)";
 102                      } else {
 103                          $type = "utilisateur";
 104                          $value="$value ($type)";
 105                      }
 106                              echo "<option value=".$mp[$loop].">".$value;
 107                          }
 108                          $form="</select></p>\n";
 109                          $form.="<input type=\"hidden\" name=\"delete_right\" value=\"true\">\n";
 110                          $form.="<input type=\"hidden\" name=\"right\" value=\"$right\">\n";
 111                      $form.="<input type=\"hidden\" name=\"type\" value=\"$type\">\n";
 112                          $form.="<input type=\"reset\" value=\"".gettext("R&#233;initialiser la s&#233;lection")."\">\n";
 113                          $form.="<input type=\"submit\" value=\"".gettext("Valider")."\">\n";
 114                          $form.="</form>\n";
 115                          echo $form;
 116                  } else {
 117                          $message =  gettext("Il n'y a rien &#224; supprimer !");
 118                          echo $message;
 119                  }
 120              } else {
 121              // Suppression des drois
 122                      echo "<H3>".gettext("Modification du droit ")." <U>$right</U></H3>";
 123                      echo "<P>".gettext("Vous avez s&#233;lectionn&#233; ") . count($old_rights) . gettext(" droit(s)")."<BR>\n";
 124                      for ($loop=0; $loop < count($old_rights); $loop++) {
 125                          $pers=$old_rights[$loop];
 126                  $pers=extract_login ($pers);
 127                          echo gettext("Suppression de")." $pers ".gettext("du droit ")." <U>$right</U><BR>";
 128                          $pDn = "cn=".$right.",".$rightsRdn.",".$ldap_base_dn;
 129                          if ($type=="utilisateur") $persDn = "uid=$pers".",".$peopleRdn.",".$ldap_base_dn;
 130                  else $persDn = "cn=$pers".",".$groupsRdn.",".$ldap_base_dn;
 131                  #echo "cn=$pers".",".$groupsRdn.",".$ldap_base_dn;
 132                          exec ("/usr/share/se3/sbin/groupDelEntry.pl \"$persDn\" \"$pDn\"");
 133                          echo "<BR>";
 134                      }
 135              }
 136      }
 137  }
 138  
 139  include ("pdp.inc.php");
 140  ?>


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