[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/registre/ -> cle_export.php (source)

   1  <?php
   2          
   3     /**
   4     
   5     * Gestion des cles pour clients Windows (mise a jour des cles)
   6     * @Version $Id: cle_export.php 2949 2008-05-04 18:45:49Z plouf $ 
   7     
   8    
   9     * @Projet LCS / SambaEdu 
  10     
  11     * @auteurs  Sandrine Dangreville
  12     
  13     * @Licence Distribue selon les termes de la licence GPL
  14     
  15     * @note 
  16     
  17     */
  18  
  19     /**
  20  
  21     * @Repertoire: registre
  22     * file: cle_export.php
  23  
  24    */    
  25  
  26  
  27  
  28  
  29  require  "include.inc.php";
  30  connexion();
  31  $act=$_GET['action'];
  32  if (!$act) { $act=$_POST['action'];}
  33  
  34  
  35  switch($act) {
  36      
  37      default:
  38      include  "entete.inc.php";
  39      include  "ldap.inc.php";
  40      include  "ihm.inc.php";
  41      
  42      require_once  ("lang.inc.php");
  43      bindtextdomain('se3-registre',"/var/www/se3/locale");
  44      textdomain ('se3-registre');
  45      if (ldap_get_right("computers_is_admin",$login)!="Y")
  46          die (gettext("Vous n'avez pas les droits suffisants pour acc&#233;der &#224; cette fonction")."</BODY></HTML>");
  47  
  48      $_SESSION["pageaide"]="Gestion_des_clients_windows#Description_du_processus_de_configuration_du_registre_Windows";
  49      
  50      echo "<a href=\"cle_export.php?action=export\">".gettext("Exporter mes cl&#233s ?")."</a>";
  51      break;
  52  
  53      case "export":
  54      $content_dir = '/tmp/';
  55      $fichier_mod_xml = $content_dir . "rules.xml";
  56      if (file_exists($fichier_mod_xml)) unlink($fichier_mod_xml);
  57  
  58      $get= fopen ($fichier_mod_xml, "w+");
  59      
  60      $ligne="<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n<se3mod>\n<nom>SE3</nom>\n<version>V 0.1</version>\n<categories>\n";
  61      fputs($get,$ligne);
  62       $query1="SELECT categorie from corresp group by categorie";
  63       $resultat1 = mysql_query($query1);
  64       
  65      while ($row = mysql_fetch_array($resultat1)) {
  66          $ligne="<categorie nom=\"$row[0]\">\n<regles>\n<Regle ClasseObjet=\"INFO\">\n<OS>252</OS>\n<Intitule>g&#233;n&#233;ral</Intitule>\n<Composant>LIGNE</Composant>\n<ValeurSiCoche/>\n<ValeurSiDecoche/>\n<Commentaire/>\n </Regle>\n";
  67          fputs($get,$ligne);
  68          $query2="SELECT sscat from corresp where categorie='$row[0]' group by sscat";
  69          $resultat2 = mysql_query($query2);
  70          
  71          while ($row2 = mysql_fetch_array($resultat2)) {
  72               if ($row2[0]) {
  73                  $ligne="<Regle ClasseObjet=\"INFO\">\n<OS>252</OS>\n<Intitule>\"$row2[0]\"</Intitule>\n<Composant>LIGNE</Composant>\n <ValeurSiCoche/>\n <ValeurSiDecoche/>\n<Commentaire/>\n</Regle>\n";
  74                  fputs($get,$ligne);
  75                  $ajoutquery=" and sscat=\"$row2[0]\" ";
  76               } else  { $ajoutquery= " and sscat=\"\" "; }
  77          
  78              $query3="SELECT Intitule,chemin,OS,type,genre,valeur,antidote,comment from corresp where categorie='$row[0]' ".$ajoutquery." order by type,genre,OS,valeur";
  79              $resultat3 = mysql_query($query3);
  80              while ($row3=mysql_fetch_array($resultat3)) {
  81                   $cheminpascomp=$row3['chemin'];
  82                   $chemin=explode("\\",$row3['chemin']);
  83                   $j=count($chemin)-1;
  84                   $cheminpascomp=$chemin[0];
  85                   for ($i=1;$i<$j;$i++) {
  86                       $cheminpascomp=$cheminpascomp."\\".$chemin[$i];
  87                   }
  88                   $variable=$chemin[$j];
  89  
  90                   $ligne="<Regle ClasseObjet=\"REGISTRE\">\n<OS>".$row3['OS']."</OS>\n<Chemin>reg:///$cheminpascomp</Chemin>\n<Intitule>".$row3['Intitule']."</Intitule>\n";
  91                   fputs($get,$ligne);
  92                  if ($row3['type']=="restrict") { $type="restrict" ;} else {$type="config"; }
  93                  $ligne="<Composant>$type</Composant>\n<Variable type=\"".$row3['genre']."\">$variable</Variable>\n";
  94                  fputs($get,$ligne);
  95                  if (isset($row3['valeur'])) {$ligne="<ValeurSiCoche>".$row3['valeur']."</ValeurSiCoche>\n"; } else {$ligne="<ValeurSiCoche/>\n";}
  96                  fputs($get,$ligne);
  97                  if (isset($row3['antidote'])) {$ligne="<ValeurSiDecoche>".$row3['antidote']."</ValeurSiDecoche>\n";} else {$ligne="<ValeurSiDeCoche/>\n";}
  98                  fputs($get,$ligne);
  99                  if (isset($row3['comment'])) {$ligne="<commentaire>".$row3['comment']."</commentaire>\n";} else {$ligne="<commentaire/>\n";}
 100                  fputs($get,$ligne); 
 101                  $ligne="</Regle>\n";
 102                  fputs($get,$ligne); 
 103               }
 104          }
 105  
 106  
 107           $ligne="</regles>\n</categorie>\n";
 108          fputs($get,$ligne); 
 109      }
 110      $ligne="</categories>\n</se3mod>\n";
 111      fputs($get,$ligne); 
 112      fclose($get);
 113      $get= fopen ($fichier_mod_xml, "r");
 114      header("Content-type: application/force-download");
 115      header("Content-Length: ".filesize($fichier_mod_xml));
 116      header("Content-Disposition: attachment; filename=rules.xml");
 117      readfile($fichier_mod_xml);
 118      if (file_exists($fichier_mod_xml)) unlink($fichier_mod_xml);
 119      mysql_close();
 120  
 121      include  "entete.inc.php";
 122      include  "ldap.inc.php";
 123      include  "ihm.inc.php";
 124      
 125      require_once  ("lang.inc.php");
 126      bindtextdomain('se3-registre',"/var/www/se3/locale");
 127      textdomain ('se3-registre');
 128      if (ldap_get_right("computers_is_admin",$login)!="Y")
 129          die (gettext("Vous n'avez pas les droits suffisants pour acc&#233;der &#224; cette fonction")."</BODY></HTML>");
 130  
 131      $_SESSION["pageaide"]="Gestion_des_clients_windows#Description_du_processus_de_configuration_du_registre_Windows";
 132  
 133      break;
 134  }
 135  retour();
 136  
 137  include("pdp.inc.php");
 138  ?>


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