[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

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

   1  <?php
   2  
   3  
   4  /**
   5  
   6  * Modifie l'entree d'un utilisateur
   7  * @Version $Id: mod_user_entry.php 8600 2015-03-16 20:12:30Z plouf $
   8  
   9  * @Projet LCS / SambaEdu
  10  
  11  * @auteurs jLCF jean-luc.chretien@tice.ac-caen.fr
  12  * @auteurs oluve olivier.le_monnier@crdp.ac-caen.fr
  13  * @auteurs wawa  olivier.lecluse@crdp.ac-caen.fr
  14  * @auteurs Equipe Tice academie de Caen
  15  
  16  * @Licence Distribue selon les termes de la licence GPL
  17  
  18  * @note
  19  */
  20  
  21  /**
  22  
  23  * @Repertoire: annu
  24  * file: mod_user_entry.php
  25  */
  26  
  27  
  28  
  29  
  30  
  31  require "config.inc.php";
  32  require "functions.inc.php";
  33  
  34  
  35  // require "entete.inc.php";
  36  require  "ldap.inc.php";
  37  require  "ihm.inc.php";
  38  require "jlcipher.inc.php";
  39  
  40  require "crob_ldap_functions.php";
  41  
  42  // HTMLPurifier
  43  require_once  ("traitement_data.inc.php");
  44  
  45  $login=isauth();
  46  // if ($login != "") {
  47  
  48  require_once  ("lang.inc.php");
  49  bindtextdomain('se3-annu',"/var/www/se3/locale");
  50  textdomain ('se3-annu');
  51  
  52  header_crypto_html(gettext("Modification parametres utilisateur"),"../");
  53  
  54  // Aide
  55  @session_start();
  56  $_SESSION["pageaide"]="Annuaire#Modifier_mon_compte";
  57  
  58  echo "<h1>".gettext("Annuaire")."</h1>\n";
  59  
  60  
  61  aff_trailer ("4");
  62  
  63  $isadmin=is_admin("Annu_is_admin",$login);
  64  
  65  $uid=isset($_GET['uid']) ? $_GET['uid'] : (isset($_POST['uid']) ? $_POST['uid'] : NULL);
  66  
  67  if(!isset($uid)) {
  68      echo "<p style='color:red'>Erreur&nbsp;: Aucun utilisateur n'a &#233;t&#233; choisi.</p>\n",
  69      include ("pdp.inc.php");
  70      die();
  71  }
  72  
  73  //debug_var();
  74  
  75  $user_entry=isset($_POST['user_entry']) ? $_POST['user_entry'] : '';
  76  $telephone=isset($_POST['telephone']) ? $_POST['telephone'] : '';
  77  $nom=isset($_POST['nom']) ? $_POST['nom'] : '';
  78  $prenom=isset($_POST['prenom']) ? $_POST['prenom'] : '';
  79  $description=isset($_POST['description']) ? $_POST['description'] : '';
  80  $userpwd=isset($_POST['userpwd']) ? $_POST['userpwd'] : '';
  81  $mail=isset($_POST['mail']) ? $_POST['mail'] : '';
  82  $shell=isset($_POST['shell']) ? $_POST['shell'] : '';
  83  $password=isset($_POST['password']) ? $_POST['password'] : '';
  84  $string_auth=isset($_POST['string_auth']) ? $_POST['string_auth'] : '';
  85  
  86  $naissance=isset($_POST['naissance']) ? $_POST['naissance'] : '';
  87  $employeeNumber=isset($_POST['employeeNumber']) ? $_POST['employeeNumber'] : '';
  88  
  89  if (($isadmin=="Y") or ((tstclass($login,$uid)==1) and (ldap_get_right("sovajon_is_admin",$login)=="Y"))) {
  90      // Recuperation des entrees de l'utilisateur a modifier
  91      $user=people_get_variables ($uid, false);
  92  
  93      // decodage du mot de passe
  94      if ((isset($user_entry))&&($user_entry)&&($string_auth!='')) {
  95          // decryptage des mdp
  96          exec ("/usr/bin/python ".$path_to_wwwse3."/includes/decode.py '$string_auth'",$Res);
  97          $userpwd = $Res[0];
  98      }
  99      // Modification des entrees
 100      //if (!isset($user_entry) || !verifTel($telephone) || !verifEntree($nom) || !verifEntree($prenom) || !verifDescription($description) || ($userpwd && !verifPwd($userpwd)) ) {
 101      /*
 102      if (!verifTel($telephone)) {
 103          echo "ERREUR tel<br />";
 104      }
 105      if (!verifEntree($nom)) {
 106          echo "ERREUR nom<br />";
 107      }
 108      if (!verifEntree($prenom)) {
 109          echo "ERREUR prenom<br />";
 110      }
 111      if (!verifDescription($description)) {
 112          echo "ERREUR description<br />";
 113      }
 114      if (!verifDateNaissance($naissance)) {
 115          echo "ERREUR naissance<br />";
 116      }
 117      if (!verifPwd($userpwd)) {
 118          echo "ERREUR pwd<br />";
 119      }
 120      */
 121  
 122      $info_employeeNumber="";
 123      if($employeeNumber!='') {
 124          $tmp_tab=verif_employeeNumber($employeeNumber);
 125          if(($tmp_tab)&&(count($tmp_tab)>0)) {
 126              if($tmp_tab[0]!=$uid) {
 127                  $info_employeeNumber="Le num&#233;ro <b>$employeeNumber</b> est d&#233;j&#225; attribu&#233; &#225; <a href='".$_SERVER['PHP_SELF']."?uid=".$tmp_tab[0]."'>".$tmp_tab[0]."</a> dans la branche <b>".$tmp_tab[-1]."</b><br />";
 128              }
 129          }
 130      }
 131  
 132      $employeeNumber0=$employeeNumber;
 133      $employeeNumber=preg_replace("/[^0-9A-Za-z]/","",$employeeNumber);
 134      
 135      if($employeeNumber!=$employeeNumber0) {
 136          $info_employeeNumber.="Un ou des caract&#232;res non valides ont &#233;t&#233; saisis dans le num&#233;ro '<b>$employeeNumber0</b>'";
 137      }
 138  
 139      if (!isset($user_entry) || !verifTel($telephone) || !verifEntree($nom) || !verifEntree($prenom) || !verifDescription($description) || ($userpwd && !verifPwd($userpwd)) || (($naissance!='')&&(!verifDateNaissance($naissance))) || ($info_employeeNumber!="")) {
 140          // Quand la migration givenName<-Prenom et seeAlso<-pseudo sera effectuee, on pourra modifier ci-dessous:
 141          $user[0]["prenom"]=getprenom($user[0]["fullname"],$user[0]["nom"]);
 142          ?>
 143          <form name = "auth" action="mod_user_entry.php" method="post" onSubmit = "encrypt(document.auth)">
 144          <table align="center" border="0" width="90%">
 145          <tbody>
 146              <tr>
 147              <td width="27%">Login :&nbsp;</td>
 148                  <td width="73%" colspan="2"><tt><strong><?php echo $user[0]["uid"]?></strong></tt></td>
 149              </tr>
 150              <tr>
 151              <td width="27%"><?php echo gettext("Pr&#233;nom"); ?> :&nbsp;</td>
 152                  <td width="73%" colspan="2"><input type="text" name="prenom" value="<?php echo $user[0]["prenom"]?>" size="20"></td>
 153              </tr>
 154              <tr>
 155              <td><?php echo gettext("Nom"); ?>&nbsp;:&nbsp;</td>
 156              <td colspan="2"><input type="text" name="nom" value="<?php echo $user[0]["nom"]?>" size="20"></td>
 157              </tr>
 158  
 159              <?php
 160                  if ($isadmin=="Y") {
 161  
 162                      $tmp_tab=explode(",", $user[0]["gecos"]);
 163                      if(isset($tmp_tab[1])) {$naissance=$tmp_tab[1];} else {$naissance="";}
 164  
 165                      if(isset($user[0]["employeeNumber"])) {$employeeNumber=$user[0]["employeeNumber"];}
 166              ?>
 167  
 168              <tr>
 169              <td><?php echo gettext("Date de naissance"); ?>&nbsp;:&nbsp;</td>
 170              <td colspan="2"><input type="text" name="naissance" value="<?php echo $naissance?>" size="20"></td>
 171              </tr>
 172  
 173              <tr>
 174                  <td valign='top'><?php echo gettext("Numero"); ?>&nbsp;:&nbsp;</td>
 175                  <td valign='top'><input type="text" name="employeeNumber" value="<?php echo $employeeNumber?>" size="20"></td>
 176                  <td>
 177                      <font color="orange">
 178                      <u><?php echo gettext("Attention"); ?></u> :<?php echo gettext(" Le num&#233;ro correspond &#225; l'attribut 'employeeNumber' dans l'annuaire LDAP.<br />C'est ce num&#233;ro qui est utilis&#233; lors d'un import des comptes pour d&#233;terminer si le compte existe d&#233;j&#225; ou non.<br />Ne le changez pas sans bonne raison."); ?>
 179                      </font>
 180                  </td>
 181              </tr>
 182  
 183              <tr>
 184              <td><?php echo gettext("Adresse m&#232;l"); ?>&nbsp;:&nbsp;</td>
 185              <td colspan="2"><input type="text" name="mail" value="<?php echo $user[0]["email"]?>" size="20"></td>
 186              </tr>
 187  
 188              <tr>
 189              <td><em>Shell&nbsp;</em> :&nbsp;</td>
 190              <td>
 191                      <select name="shell">
 192                      <option <?php if ($user[0]["shell"] == "/bin/bash") echo "selected" ?>>/bin/bash</option>
 193                      <option <?php if ($user[0]["shell"] == "/bin/true") echo "selected" ?>>/bin/true</option>
 194                      </select>
 195              </td>
 196                  <td>
 197                      <font color="orange">
 198                      <u><?php echo gettext("Attention"); ?></u> :<?php echo gettext(" Si vous choisissez /bin/bash,&nbsp;cet utilisateur disposera d'un shell sur le serveur."); ?>
 199                      </font>
 200                  </td>
 201              </tr>
 202              <tr>
 203              <td valign="center"><?php echo gettext("Profil"); ?> :&nbsp;</td>
 204              <td valign="bottom" colspan="2"><textarea name="description" rows="2" cols="40"><?php echo $user[0]["description"]; ?></textarea></td>
 205              </tr>
 206              <tr>
 207              <td><?php echo gettext("T&#233;l&#233;phone"); ?> :&nbsp;</td>
 208              <td colspan="2"><input type="text" name="telephone" value="<?php echo $user[0]["tel"] ?>" size="10"></td>
 209              </tr>
 210                  <?php } ?>
 211              <tr>
 212              <td><?php echo gettext("Mot de passe"); ?>:&nbsp;</td>
 213              <td>
 214                          <input type= "password" value="" name="dummy" size='20'  maxlength='20'>
 215                          <input type="hidden" name="string_auth" value="">
 216              </td>
 217              <td>
 218                      <font color="orange">
 219                      <u><?php echo gettext("Attention"); ?></u> : <?php echo gettext("Si vous laissez ce champ vide,&nbsp;c'est l'ancien mot de passe qui sera conserv&#233;."); ?>
 220                      </font>
 221              </td>
 222              </tr>
 223              <tr>
 224              <td></td>
 225              <td align="left">
 226                      <input type="hidden" name="uid" value="<?php echo $uid ?>">
 227                      <input type="hidden" name="user_entry" value="true">
 228                      <input type="submit" value="<?php echo gettext("Lancer la requ&#234;te"); ?>">
 229                  </td>
 230              </tr>
 231          </tbody>
 232          </table>
 233      </form>
 234      <?php
 235          crypto_nav("../");
 236          if ((isset($user_entry))&&($user_entry)) {
 237              // verification des saisies
 238              // nom prenom
 239              if ( !verifEntree($nom) || !verifEntree($prenom) ) {
 240                  echo "<div class=\"error_msg\">".gettext("Les champs nom et prenom, doivent comporter au minimum 3 caract&#232;res alphab&#233;tiques.")."</div><br />\n";
 241              }
 242              // profil
 243              if ( $description && !verifDescription($description) ) {
 244                  echo "<div class=\"error_msg\">".gettext("Veuillez reformuler le champ description.")."</div><br />\n";
 245              }
 246              // tel
 247              if ( $telephone && !verifTel($telephone) ) {
 248                  echo "<div class=\"error_msg\">".gettext("Le num&#233;ro de t&#233;l&#233;phone que vous avez saisi, n'est pas conforme.")."</div><br />\n";
 249              }
 250  
 251              // Date de naissance
 252              if ($naissance!='' && !verifDateNaissance($naissance)) {
 253                  echo "<div class=\"error_msg\">".gettext("La date de naissance que vous avez saisie, n'est pas conforme.")."</div><br />\n";
 254              }
 255  
 256              // mot de passe
 257              if ( $userpwd && !verifPwd($userpwd) ) {
 258                  echo "<div class='error_msg'>";
 259                  echo gettext("Vous devez proposer un mot de passe d'une longueur comprise entre 4 et 8 caract&#232;res
 260                      alphanum&#233;riques avec obligatoirement un des caract&#232;res sp&#233;ciaux suivants");
 261                  echo " ($char_spec) </div><br />\n";
 262              }
 263  
 264              if($info_employeeNumber!="") {
 265                  echo "<div class=\"error_msg\">".gettext("$info_employeeNumber.")."</div><br />\n";
 266              }
 267  
 268              // fin verification des saisies
 269          }
 270  
 271          echo "<p><a href='people.php?uid=".$uid."'>Retour sans modification vers la fiche de $uid</a></p>\n";
 272  
 273      } else {
 274          // Positionnement des entrees a modifier
 275          //$entry["sn"] =  stripslashes ( utf8_encode($nom) );
 276          //$entry["cn"] = stripslashes ( utf8_encode($prenom)." ".utf8_encode($nom) );
 277          $entry["sn"] =  stripslashes ( ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$nom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz"))) );
 278          $entry["cn"] = stripslashes ( ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$prenom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz")))." ".ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$nom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz"))) );
 279      
 280          //======================================
 281          // Correction du gecos:
 282          //echo "\$user[0][\"gecos\"]=".$user[0]["gecos"]."<br />";
 283          if($user[0]["gecos"]!="") {
 284              $tab_gecos=explode(",",$user[0]["gecos"]);
 285              //$entry["gecos"]=ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$prenom"))))," 'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","__AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz")))." ".ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$nom"))))," 'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","__AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz"))).",".$tab_gecos[1].",".$tab_gecos[2].",".$tab_gecos[3];
 286              $entry["gecos"]=ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$prenom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz")))." ".ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$nom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz"))).",".$tab_gecos[1].",".$tab_gecos[2].",".$tab_gecos[3];
 287          }
 288      
 289          if($corriger_givenname_si_diff=="y") {
 290              // Ajout: crob 20080611
 291              // Variable initialisée dans includes/ldap.inc.php: $corriger_givenname_si_diff
 292              // placée pour permettre de désactiver temporairement cette partie
 293      
 294              // Le givenName est destiné à prendre pour valeur le Prenom de l'utilisateur
 295              //$entry["givenName"] = ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$prenom"))))," 'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","__AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz")));
 296              $entry["givenName"] = ucfirst(strtolower(strtr(preg_replace("/Æ/","AE",preg_replace("/æ/","ae",preg_replace("/¼/","OE",preg_replace("/½/","oe","$prenom")))),"'ÂÄÀÁÃÄÅÇÊËÈÉÎÏÌÍÑÔÖÒÓÕ¦ÛÜÙÚݾ´áàâäãåçéèêëîïìíñôöðòóõ¨ûüùúýÿ¸","_AAAAAAACEEEEIIIINOOOOOSUUUUYYZaaaaaaceeeeiiiinoooooosuuuuyyz")));
 297          }
 298      
 299          // Il faudrait aussi corriger le gecos et pour cela récupérer le sexe et la date de naissance
 300          // On ne les trouve que dans le gecos ici.
 301          // Et le gecos n'est pas récupéré avec $user=people_get_variables ($uid, false);
 302          // Et on récupère un $user[0][pseudo] <- givenName
 303          /*
 304          echo "<p>Valeur des attributs avant modification: <br />";
 305          foreach($user[0] as $key => $value) {
 306              echo "\$user[0][$key]=$value<br />";
 307          }
 308          */
 309          // La fonction people_get_variables() est utilisée dans pas mal de pages modifier le retour si givenName prend pour valeur Prenom va être lourd.
 310          //======================================
 311      
 312          if ( $isadmin=="Y" ) {
 313              $entry["loginshell"] = $shell;
 314              // Modification du homeDirectory
 315              if ( $shell == "/usr/lib/sftp-server" )
 316              $entry["homedirectory"] = "/home/".$user[0]["uid"]."/./";
 317              else $entry["homedirectory"] = "/home/".$user[0]["uid"];
 318              if ( $mail != "" ) $entry["mail"] = $mail;
 319              if ( $telephone && verifTel($telephone) ) $entry["telephonenumber"]=$telephone ;
 320              if ( $description && verifDescription($description) ) $entry["description"]=utf8_encode(stripslashes($description));
 321  
 322              if ($naissance!='' && verifDateNaissance($naissance)) {
 323                  if(isset($entry["gecos"])) {
 324                      $tmp_tab=explode(",", $entry["gecos"]);
 325                      if(isset($tmp_tab[3])) {
 326                          $entry["gecos"]=$tmp_tab[0].",".$naissance.",".$tmp_tab[2].",".$tmp_tab[3];
 327                      }
 328                      else {
 329                          echo "<div class=\"error_msg\">".gettext("L'attribut gecos n'est pas correctement renseign&#233;.")."</div><br />\n";
 330                      }
 331                  }
 332              }
 333  
 334              if($employeeNumber!="") {$entry["employeeNumber"] = $employeeNumber;}
 335          }
 336          // Modification des entrees
 337          $ds = @ldap_connect ( $ldap_server, $ldap_port );
 338          if ( $ds ) {
 339              $r = @ldap_bind ( $ds, $adminDn, $adminPw ); // Bind en admin
 340              if ($r) {
 341                  if (@ldap_modify ($ds, "uid=".$uid.",".$dn["people"],$entry)) {
 342                      echo "<strong>".gettext("Les entr&#233;es ont &#233;t&#233; modifi&#233;es avec succ&#232;s.")."</strong><br />\n";
 343                  } else {
 344                      echo "<strong>".gettext("Echec de la modification, veuillez contacter")." </strong><A HREF='mailto:$MelAdminLCS?subject=PB modification entrees utilisateur'>".gettext("l'administrateur du syst&#232;me")."</A><br />\n";
 345                  }
 346              }
 347              @ldap_close ( $ds );
 348  
 349              if((isset($user[0]["employeeNumber"]))&&($user[0]["employeeNumber"]!="")&&($employeeNumber=='')) {
 350                  // Il faut vider l'employeeNumber
 351                  $tab_attr=array();
 352                  $tab_attr["employeeNumber"]=$user[0]["employeeNumber"];
 353                  if(modify_attribut ("uid=".$uid, "people", $tab_attr, "del")) {
 354                      echo "<strong>".gettext("L'employeeNumber a &#233;t&#233; correctement vid&#233;.")."</strong><br />\n";
 355                  }
 356                  else {
 357                      echo "<strong>".gettext("Echec de la modification de l'employeeNumber, veuillez contacter")." </strong><A HREF='mailto:$MelAdminLCS?subject=PB modification entrees utilisateur'>".gettext("l'administrateur du syst&#232;me")."</A><br />\n";
 358                  }
 359              }
 360  
 361          } else {
 362              echo gettext("Erreur de connection &#224; l'annuaire, veuillez contacter")." </strong><A HREF='mailto:$MelAdminLCS?subject=PB connection a l'annuaire'>".gettext("l'administrateur du syst&#232;me</A>administrateur")."<br />\n";
 363          }
 364      
 365          // Fin modification des entrees
 366          // Changement du mot de passe
 367          if ( $userpwd && verifPwd($userpwd) ) {
 368              userChangedPwd($uid, $userpwd);
 369          }
 370  
 371          echo "<p><a href='".$_SERVER['PHP_SELF']."?uid=".$uid."'>Retour vers la modification des informations $uid</a></p>\n";
 372          echo "<p><a href='people.php?uid=".$uid."'>Retour vers la fiche de $uid</a></p>\n";
 373      }
 374  } else {
 375      echo "<div class=error_msg>".gettext("Cette fonctionnalit&#233; n&#233;cessite des droits d'administration SambaEdu !")."</div>";
 376  }
 377  
 378  
 379  
 380  include ("pdp.inc.php");
 381  ?>


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