[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3-dhcp/sources/www/ -> reservations.php (source)

   1  <?php
   2  
   3  /**
   4  
   5   * Gestion des baux du DHCP
   6   * @Version $Id: reservations.php 8570 2015-03-15 14:40:37Z plouf $
   7  
   8   * @Projet LCS / SambaEdu
   9  
  10   * @auteurs  GrosQuicK   eric.mercier@crdp.ac-versailles.fr
  11  
  12   * @note
  13  
  14   * @Licence Distribue sous la licence GPL
  15  
  16   */
  17  /**
  18   * @Repertoire: dhcp
  19   * file: reservations.php
  20   */
  21  // loading libs and init
  22  include  "entete.inc.php";
  23  include  "ldap.inc.php";
  24  include  "ihm.inc.php";
  25  include("crob_ldap_functions.php");
  26  include  "printers.inc.php";
  27  require_once "fonc_parc.inc.php";
  28  require_once  "dhcpd.inc.php";
  29  ?>
  30  
  31  <script type="text/javascript" src="/elements/js/wz_tooltip_new.js"></script>
  32  
  33  <?php
  34  
  35  $action = $_POST['action'];
  36  $suppr_doublons_ldap = $_POST['suppr_doublons_ldap'];
  37  
  38  if (is_admin("system_is_admin",$login)!="Y")
  39      die (gettext("Vous n'avez pas les droits suffisants pour acc&#233;der &#224; cette fonction")."</BODY></HTML>");
  40  
  41  
  42      //aide
  43      $_SESSION["pageaide"] = "Le_module_DHCP#G.C3.A9rer_les_baux_et_r.C3.A9server_des_IPs";
  44  
  45  
  46      $content .= "<h1>" . gettext("R&#233;servations existantes") . "</h1>";
  47  
  48  // Permet de vider les resa
  49      $content .= "<table><tr><td>";
  50      $content .= "<form name=\"lease_form\" method=post action=\"reservations.php\">\n";
  51      $content .= "<input type='hidden' name='action' value='cleanresa'>\n";    
  52      $content .= "<input type=\"submit\" name=\"button\" value=\"".gettext("Supprimer toutes les r&#233;servations ")."\" onclick=\"if (window.confirm('supression de toutes les r&#233;servations ?')) {return true;} else {return false;}\">\n";    
  53      $content .= "</form>\n";
  54      $content .= "</td><td>";
  55      $content .= "<u onmouseover=\"return escape".gettext("('Permet de supprimer toutes les r&#233;servations de la base. Utile par exemple en cas de changement de plan d\'adressage.')")."\"><IMG style=\"border: 0px solid ;\" src=\"../elements/images/help-info.gif \"></u>\n";
  56      $content .= "</td></tr></table>\n";
  57  
  58  
  59  /*
  60  
  61  echo "<form action=\"reservations.php\" method=\"post\">\n";
  62  echo "<input  type=\"submit\" value=\"Supprimer toutes les réservations existantes\" onclick=\"if (window.confirm('supression de toutes les réservations ?')) {return true;} else {return false;}\"/>";
  63  echo "</form>";*/
  64  
  65      // Prepare HTML code
  66      switch ($action) {
  67          case '' :
  68          case 'index' :
  69              $content.=form_existing_reservation();
  70              break;
  71      case 'cleanresa' :
  72          $query="TRUNCATE se3_dhcp";
  73          mysql_query($query);
  74          dhcpd_restart();
  75              $content.=form_existing_reservation();
  76              break;
  77  
  78          case 'valid' :
  79              $ip = $_POST['ip'];
  80              $mac = $_POST['mac'];
  81              $localadminname = $_POST['localadminname'];
  82              $localadminpasswd = $_POST['localadminpasswd'];
  83              $oldname = $_POST['oldname'];
  84              $name = $_POST['name'];
  85              $parc = $_POST['parc'];
  86              $action_res = $_POST['action_res'];
  87              foreach ($ip as $keys => $value) {
  88                  if ($action_res[$keys] == "integrer") {
  89                      if ($localadminpasswd[$keys] == "") {
  90                          $localadminpasswd[$keys] = "xxx";
  91                      }
  92                      $content .= "<FONT color='red'>" . integre_domaine($ip[$keys], $mac[$keys], strtolower($name[$keys]), $localadminname[$keys], $localadminpasswd[$keys]) . "</FONT>";
  93                  } elseif ($action_res[$keys] == "actualiser") {
  94                      $content .= renomme_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
  95                  } elseif ($action_res[$keys] == "newip") {
  96                      
  97                      $content .= change_ip_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
  98                      //$content .= "<FONT color='red'>" . "Attention";
  99                     
 100                      
 101                  } elseif ($action_res[$keys] == "renommer-linux") {
 102                      $ret = already_exist("ipbidon", strtolower($name[$keys]), "macbidon");
 103                      if ($ret == "") {
 104                          exec("/usr/share/se3/sbin/tcpcheck 4 $ip[$keys]:22 | grep alive",$arrval,$return_value);
 105                          if ($return_value == "1") {
 106                              $content .= gettext("<p style='color:red;'>Attention  : Renommage de $oldname[$keys] impossible. La machine est injoignable en ssh :  </p>\n " );
 107                          }
 108  
 109                          else {
 110                              $content .= renomme_linux($ip[$keys], $oldname[$keys], strtolower($name[$keys]));
 111                              $content .= renomme_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
 112                              $content .= renomme_machine_parcs(strtolower($oldname[$keys]), strtolower($name[$keys]));
 113                              }   
 114                      } else {
 115                              $content .= gettext("<p style='color:red;'>Attention : Le nom $name[$keys] n'est pas valide ou existe d&#233;j&#224;");
 116  
 117                       }
 118                  } elseif ($action_res[$keys] == "reintegrer") {
 119  
 120                      exec("/usr/share/se3/sbin/tcpcheck 4 $ip[$keys]:445 | grep alive",$arrval,$return_value);
 121                      if ($return_value == "1") {
 122                          $content .= gettext("<p style='color:red;'>Attention  : R&#233;int&#233;gration de $oldname[$keys] impossible. La machine est injoignable ou prot&#233;g&#233;e par un pare-feu  :  </p>\n " );
 123                      }
 124  
 125                      else {
 126                          $content .= renomme_domaine($ip[$keys], $oldname[$keys], strtolower($name[$keys]));
 127                      }
 128                  } elseif ($action_res[$keys] == "renommer-base") {
 129                      $ret = already_exist("ipbidon", strtolower($name[$keys]), "macbidon");
 130                      if ($ret == "") {
 131                          $content .= renomme_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
 132                      }
 133                      else {
 134                          $content .= gettext("<p style='color:red;'>Attention : Le nom $name[$keys] n'est pas valide ou existe d&#233;j&#224;");
 135                          
 136                      }
 137                       
 138                 } elseif ($action_res[$keys] == "renommer") {
 139                      $ret = already_exist("ipbidon", strtolower($name[$keys]), "macbidon");
 140                      if ($ret == "") {
 141                          exec("/usr/share/se3/sbin/tcpcheck 4 $ip[$keys]:445 | grep alive",$arrval,$return_value);
 142                          if ($return_value == "1") {
 143                               $content .= gettext("<p style='color:red;'>Attention : Renommage de $oldname[$keys] impossible. La machine est injoignable ou prot&#233;g&#233;e par un pare-feu  :  </p>\n " );
 144                              
 145                              
 146                          }
 147                          else {
 148                              $content .= renomme_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
 149                              $content .= renomme_domaine($ip[$keys], $oldname[$keys], strtolower($name[$keys]));
 150                              $content .= renomme_machine_parcs(strtolower($oldname[$keys]), strtolower($name[$keys]));
 151  //                            $content .= "parti";
 152                              $content .= system("/usr/bin/sudo /usr/share/se3/scripts/italc_generate.sh");
 153                              } 
 154                      }
 155                      else {
 156                          $content .= gettext("<p style='color:red;'>Attention : Le nom $name[$keys] n'est pas valide ou existe d&#233;j&#224;");
 157                          
 158                      }
 159                  } elseif ($action_res[$keys] == "supprimer") {
 160                      $content .= suppr_reservation($ip[$keys], $mac[$keys], strtolower($name[$keys]));
 161                  }
 162                  if (($parc[$keys] != "none") && ($parc[$keys] != "")) {
 163                      $content .= add_machine_parc(strtolower($name[$keys]), $parc[$keys]);
 164                  }
 165              }
 166              dhcpd_restart();
 167              $content.=form_existing_reservation();
 168              break;
 169  
 170          default :
 171              // anti  hackingprot
 172              $title = '';
 173              $content = '';
 174              return;
 175      }
 176  //$content .= search_doublons_mac();
 177  // $content .= affiche_doublons_csv();
 178  
 179      print "$content\n";
 180      $filename="/tmp/emailunattended_generate";
 181      if (file_exists($filename))  {
 182          echo "<p style='color:red;'>Attention : doublons dans l'annuaire</p>\n";
 183          search_doublons_mac();
 184      }
 185  
 186      if(isset($suppr_doublons_ldap)) {
 187              $suppr=isset($_POST['suppr']) ? $_POST['suppr'] : NULL;
 188  
 189  //             $tab_attr_recherche=array('cn');
 190  //             for($i=0;$i<count($suppr);$i++) {
 191  //                     if(get_tab_attribut("computers","cn=$suppr[$i]",$tab_attr_recherche)) {
 192  //                             if(!del_entry("cn=$suppr[$i]","computers")) {
 193  //                                     echo "Erreur lors de la suppression de l'entr&#233;e $suppr[$i]<br />\n";
 194  //                             }
 195  //                     }
 196  // 
 197  //                     // Faut-il aussi supprimer les uid=$suppr[$i]$ ? OUI
 198  //                     if(get_tab_attribut("computers","uid=$suppr[$i]$",$tab_attr_recherche)) {
 199  //                             if(!del_entry("uid=$suppr[$i]$","computers")) {
 200  //                                     echo "Erreur lors de la suppression de l'entr&#233;e uid=$suppr[$i]$<br />\n";
 201  //                             }
 202  //                     }
 203  //             }
 204      for($i=0;$i<count($suppr);$i++) {
 205          //echo "suppression_computer($suppr[$i])<br />";
 206          echo suppression_computer($suppr[$i]);
 207          //echo "<hr />";
 208      }
 209      echo "<hr />\n";
 210      }
 211   
 212  
 213  // Footer
 214  include ("pdp.inc.php");
 215  ?>


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