epnadmin-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Epnadmin-fr] CVS: epnadmin AUTHORS,1.1,1.2 configuration.php,1.2,1.3 co


From: Loïc Dayot
Subject: [Epnadmin-fr] CVS: epnadmin AUTHORS,1.1,1.2 configuration.php,1.2,1.3 constantes.inc.php,1.17,1.18 entete.inc.php,1.16,1.17 fr.lang.inc.php,1.1,1.2 header.inc.php,1.15,1.16 horaires.php,1.9,1.10 initiations.php,1.5,1.6 questions.php,1.3,1.4 themes.php,1.4,1.5
Date: Sun, 26 Jan 2003 18:10:07 -0500

Update of /cvsroot/epnadmin/epnadmin
In directory subversions:/tmp/cvs-serv1630/epnadmin

Modified Files:
        AUTHORS configuration.php constantes.inc.php entete.inc.php 
        fr.lang.inc.php header.inc.php horaires.php initiations.php 
        questions.php themes.php 
Log Message:
Modification du mode de gestion des autorisations en cours.



Index: AUTHORS
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/AUTHORS,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** AUTHORS     20 Feb 2002 15:32:45 -0000      1.1
--- AUTHORS     26 Jan 2003 23:09:59 -0000      1.2
***************
*** 3,7 ****
  * Bertand Pallie, 
  
! * Loïc Dayot <address@hidden>
  
  
--- 3,7 ----
  * Bertand Pallie, 
  
! * Loïc Dayot <address@hidden> <address@hidden>
  
  

Index: configuration.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/configuration.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** configuration.php   22 Jan 2003 21:24:08 -0000      1.2
--- configuration.php   26 Jan 2003 23:09:59 -0000      1.3
***************
*** 44,57 ****
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <?
! $titr = "Configuration de l'application et des autorisations";
! $datemaj="14 janvier 2003";
  require("entete.inc.php");
  
  // Remarque : même si la fonctionnalité des droits (FCT_DROITS) n'est pas 
définie, on accès quand même à cette page.
  
! if ((defined("FCT_DROITS") && (FCT_DROITS=="INACTIF")) || (defined("DROITS") 
&& DROITS=="AUCUN"))
  {
!   echo "<p>Désolé, mais vous n'avez pas les droits suffisants pour accéder à 
la configuration de l'application.
!           Mettez-vous en relation avec l'administrateur si vous pensez que 
c'est une erreur.</p>\n";
    include("basdepage.inc.php");
    echo "</body></html>\n";
--- 44,56 ----
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <?
! $titr = $titreconfiguration;
! $datemaj="25 janvier 2003";
  require("entete.inc.php");
  
  // Remarque : même si la fonctionnalité des droits (FCT_DROITS) n'est pas 
définie, on accès quand même à cette page.
  
! if (FCT_DROITS!="y" && DROITS<"~")
  {
!   echo $pasledroit;
    include("basdepage.inc.php");
    echo "</body></html>\n";
***************
*** 72,87 ****
    }
    echo "<table align=center border=1>
!         <tr><th align=center colspan='3'>";
    switch ($id)
    {
!   case -4 : echo "Les autorisations des visiteurs non identifiés"; break;
!   case -3 : echo "Les autorisations par défaut des structures"; break;
!   case -2 : echo "Les autorisations des animateurs"; break;
!   case -1 : echo "Les autorisations des usagers"; break;
!   case 0  : echo "Les fonctionnalités de l'application"; break;
!   default : echo structure($id); break;
    } // switch
    echo "</th></tr>\n";
!   $req1="SELECT * FROM fonctions";
    $res1=executeRequete($req1);
    while ($fonction=mysql_fetch_object($res1))
--- 71,93 ----
    }
    echo "<table align=center border=1>
!         <tr><th align=center colspan='";
    switch ($id)
    {
!   case -4 : echo "4'>".$autorvisiteur; break;
!   case -3 : echo "4'>".$autordefstructure; break;
!   case -2 : echo "4'>".$autoranim; break;
!   case -1 : echo "4'>".$autorusagers; break;
!   case 0  : echo "3'>".$fonctionnalitesdeappli; break;
!   default : echo "4'>".structure($id); break;
    } // switch
    echo "</th></tr>\n";
!   echo "<tr><td>Fonctionnalité</td>";
!   if ($id!=0)
!     echo "<td>Mes<br>informations</td><td>Celles<br>des autres</td>";
!   else
!     echo "<td>Actif ?</td>";
!   echo "<td>Commentaire</td></tr>\n";
! 
!   $req1="SELECT * FROM fonctions ORDER BY ordre";
    $res1=executeRequete($req1);
    while ($fonction=mysql_fetch_object($res1))
***************
*** 104,108 ****
        }
      }
!     if ($droit->droit)
      {
        // Retrouver si la fonctionnalité est active
--- 110,114 ----
        }
      }
!     if ($droit->id_fonction)
      {
        // Retrouver si la fonctionnalité est active
***************
*** 110,129 ****
        $res12=executeRequete($req11);
        $fct=mysql_fetch_object($res12);
!       if (strtoupper($fct->droit)!="ACTIF")
!         echo "<tr bgcolor=\"#ADADAD\"><th>$fonction->fonction (INACTIF)</th>";
        else
          echo "<tr 
bgcolor=\"$fonction->couleur\"><th>$fonction->fonction</th>";
  
        echo "<td>";
!       switch ($droit->droit)
!       {
!       case 'actif' : echo "Actif"; break;
!       case 'inactif' : echo "Inactif"; break;
!       case '00' : echo "aucun"; break;
!       case '10' : echo "voir ses informations"; break;
!       case '20' : echo "modifier ses informations"; break;
!       case '30' : echo "voir les informations des autres"; break;
!       case '40' : echo "administrer tous et tout"; break;
!       default :   echo "<i>Indéfini donc aucun</i>"; break;
        }
        echo "</td><td>".nl2br($fonction->commentaire)."</td>";
--- 116,156 ----
        $res12=executeRequete($req11);
        $fct=mysql_fetch_object($res12);
!       if ($fct->actif!="y")
!       {
!         echo "<tr bgcolor=\"#ADADAD\"><th>$fonction->fonction";
!         if ($id!=0)
!           echo " (INACTIVE)";
!         echo "</th>";
!       }
        else
          echo "<tr 
bgcolor=\"$fonction->couleur\"><th>$fonction->fonction</th>";
  
        echo "<td>";
!       if ($id==0)
!       {   // fonctionnalités
!         switch ($droit->actif)
!         {
!         case 'y' : echo "active"; break;
!         case 'n' : echo "inactive"; break;
!         default :  echo "<i>indéfinie</i>"; break;
!         }
!       }
!       else
!       { // autorisations
!         switch ($droit->moi)
!         {
!         case ' ' : echo "aucun"; break;
!         case 'r' : echo "voir"; break;
!         case 'w' : echo "modifier"; break;
!         default : echo "<i>indéfini</i>"; break;
!         }
!         echo "</td><td>";
!         switch ($droit->autres)
!         {
!         case ' ' : echo "aucun"; break;
!         case 'r' : echo "voir"; break;
!         case 'w' : echo "modifier"; break;
!         default : echo "<i>indéfini</i>"; break;
!         }
        }
        echo "</td><td>".nl2br($fonction->commentaire)."</td>";
***************
*** 148,163 ****
          <input type=\"hidden\" name=\"operation\" value=\"1\">
          <table align=center border=1>
!         <tr><th align=center colspan='3'>";
    switch ($id)
    {
!   case -4 : echo "Les autorisations des visiteurs non identifiés"; break;
!   case -3 : echo "Les autorisations par défaut des structures"; break;
!   case -2 : echo "Les autorisations des animateurs"; break;
!   case -1 : echo "Les autorisations des usagers"; break;
!   case 0  : echo "Les fonctionnalités de l'application"; break;
!   default : echo structure($id); break;
    } // switch
    echo "</th></tr>\n";
!   $req1="SELECT * FROM fonctions";
    $res1=executeRequete($req1);
    while ($fonction=mysql_fetch_object($res1))
--- 175,199 ----
          <input type=\"hidden\" name=\"operation\" value=\"1\">
          <table align=center border=1>
!         <tr><th align=center colspan='";
    switch ($id)
    {
!   case -4 : echo "4'>Les autorisations des visiteurs non identifiés"; break;
!   case -3 : echo "4'>Les autorisations par défaut des structures"; break;
!   case -2 : echo "4'>Les autorisations des animateurs"; break;
!   case -1 : echo "4'>Les autorisations des usagers"; break;
!   case 0  : echo "3'>Les fonctionnalités de l'application"; break;
!   default : echo "4'>".structure($id); break;
    } // switch
    echo "</th></tr>\n";
! 
!   echo "<tr><td>Fonctionnalité</td>";
!   if ($id!=0)
!     echo "<td>Mes<br>informations</td><td>Celles<br>des autres</td>";
!   else
!     echo "<td>Actif ?</td>";
!   echo "<td>Commentaire</td></tr>\n";
! 
! 
!   $req1="SELECT * FROM fonctions ORDER BY ordre";
    $res1=executeRequete($req1);
    while ($fonction=mysql_fetch_object($res1))
***************
*** 167,172 ****
      $res12=executeRequete($req11);
      $fct=mysql_fetch_object($res12);
!     if (strtoupper($fct->droit)!="ACTIF")
!       echo "<tr bgcolor=\"#ADADAD\"><th>$fonction->fonction (INACTIF)</th>";
      else
        echo "<tr bgcolor=\"$fonction->couleur\"><th>$fonction->fonction</th>";
--- 203,213 ----
      $res12=executeRequete($req11);
      $fct=mysql_fetch_object($res12);
!     if ($fct->actif!="y")
!     {
!       echo "<tr bgcolor=\"#ADADAD\"><th>$fonction->fonction";
!       if ($id!=0)
!         echo " (INACTIVE)";
!       echo "</th>";
!     }
      else
        echo "<tr bgcolor=\"$fonction->couleur\"><th>$fonction->fonction</th>";
***************
*** 177,214 ****
      $droit=mysql_fetch_object($res2);
  
-     echo "<td><select name=\"fonction_$fonction->id\">
-               <option value=\"\"";
-     if (! $droit->droit)
-       $droit->droit=" selected";
-     echo ">";
      if ($id==0)
      {    // Des fonctionalités de l'application
!       echo "<option value=\"actif\"";
!       if ($droit->droit=="actif")
!         echo " selected";
!       echo ">Actif</option><option value=\"inactif\"";
!       if ($droit->droit=="inactif")
          echo " selected";
!       echo ">Inactif</option>";
      }
      else // Des autorisations
      {    // de structure, animateurs ou usagers
!       echo "<option value=\"00\"";
!       if ($droit->droit=="00")
          echo " selected";
!       echo ">Aucun</option><option value=\"10\"";
!       if ($droit->droit=="10")
          echo " selected";
!       echo ">Voir (ses propres) informations)</option><option value=\"20\"";
!       if ($droit->droit=="20")
          echo " selected";
!       echo ">Modifier (ses propres informations)</option><option 
value=\"30\"";
!       if ($droit->droit=="30")
          echo " selected";
!       echo ">Voir les informations des autres</option><option value=\"40\"";
!       if ($droit->droit=="40")
          echo " selected";
!       echo ">Administrer (tout pour tous)</option>";
      }
      echo "</select></td>\n";
  
--- 218,264 ----
      $droit=mysql_fetch_object($res2);
  
      if ($id==0)
      {    // Des fonctionalités de l'application
!       echo "<td><select name=\"fonction_$fonction->id\">
!                 <option value=\"\"";
!       if (! $droit->actif)
          echo " selected";
!       echo ">";
!         echo "<option value=\"y\"";
!         if ($droit->actif=="y")
!           echo " selected";
!         echo ">active</option><option value=\"n\"";
!         if ($droit->actif=="n")
!           echo " selected";
!         echo ">inactive</option>";
      }
      else // Des autorisations
      {    // de structure, animateurs ou usagers
!       echo "<td><select name=\"fonction_moi_$fonction->id\">
!                 <option value=\"\"></option><option value=\"n\"";
!       if ($droit->moi=="n")
          echo " selected";
!       echo ">aucun</option><option value=\"r\"";
!       if ($droit->moi=="r")
          echo " selected";
!       echo ">voir</option><option value=\"w\"";
!       if ($droit->moi=="w")
          echo " selected";
!       echo ">modifier</option>";
! 
!       echo "</select></td>
!             <td><select name=\"fonction_autre_$fonction->id\">
!                 <option value=\"\"></option><option value=\"n\"";
!       if ($droit->autres=="n")
!         echo " selected";
!       echo ">aucun</option><option value=\"r\"";
!       if ($droit->autres=="r")
          echo " selected";
!       echo ">voir</option><option value=\"w\"";
!       if ($droit->autres=="w")
          echo " selected";
!       echo ">modifier</option>";
      }
+ 
      echo "</select></td>\n";
  
***************
*** 216,224 ****
      echo "</tr>\n";
    }
!   echo "<tr><td colspan=\"3\" align=center><input type=\"submit\" 
name=\"Confirmer\" value=\"Confirmer\"></td></tr>\n";
    echo "</table>\n
          </form>";
  } // fonction affiche_autorisations
  
  switch ($operation)
  {
--- 266,343 ----
      echo "</tr>\n";
    }
!   echo "<tr><td colspan=\"4\" align=center><input type=\"submit\"
!           name=\"Confirmer\" value=\"Confirmer\"></td></tr>\n";
    echo "</table>\n
          </form>";
  } // fonction affiche_autorisations
  
+ function verifie_dependances_fonctionnalites()
+ { // On doit regarder s'il y a des dépendances
+   $req1="SELECT * FROM droits WHERE id_structure='0'"; // On prend toutes les 
fonctionnalités
+   $res1=executeRequete($req1);
+   while ($fonction1=mysql_fetch_object($res1))
+     if ($fonction1->actif=="y")
+       verifie_une_fonctionnalite($fonction1->id_fonction);
+   mysql_free_result($res1);
+ }
+ 
+ function verifie_une_fonctionnalite($id)
+ {
+ global $avisfctrenduactive;
+   $req1="SELECT * FROM fonctions WHERE id='$id'"; // On prend toutes les 
fonctionnalités
+   $res1=executeRequete($req1);
+   $fonction1=mysql_fetch_object($res1);
+   $dependance=$fonction1->depend;
+   while ($dependance>"")
+   {
+     $suivante=""; $carsuivant=""; // On retrouve le numéro de la 
fonctionnalité indispensable
+     while ($dependance>"" && ($carsuivant=$dependance[0])!=",")
+     {
+       $suivante.=$carsuivant;
+       $dependance=substr($dependance,1);
+     }
+     // On l'a trouvé
+     //debug($suivante);
+     $rendreactif=FALSE;
+     // On regarde si la fonctionnalité existe.
+     $req2="SELECT * FROM droits WHERE id_structure='0' AND 
id_fonction='$suivante'";
+     $res2=executeRequete($req2);
+     if ($droit2=mysql_fetch_object($res2))
+     { // Oui, alors est-elle active ?
+       if ($droit2->actif!="y")
+       { // Non, alors on la rend active
+         $req3="UPDATE droits SET actif='y' WHERE id_fonction='$suivante'
+                                                  AND id_structure='0'";
+         if ($res3=executeRequete($req3))
+           $rendreactif=TRUE;
+       }
+     }
+     else
+     { // Non, elle n'existe pas, alors on la crée
+       $req3="INSERT INTO droits (id_structure, id_fonction, actif)
+                            VALUES ('0', '$suivante', 'y')";
+       if ($res3=executeRequete($req3))
+         $rendreactif=TRUE;
+     }
+ 
+     if ($rendreactif)
+     {
+       // Retrouver la fonctionnalité rendue active
+       $req4="SELECT * FROM fonctions WHERE id='$suivante'";
+       debug($req4);
+       $res4=executeRequete($req4);
+       $fctajoutee=mysql_fetch_object($res4);
+       printf($avisfctrenduactive, $fctajoutee->fonction, 
$fonction1->fonction);
+       verifie_une_fonctionnalite($suivante);
+     }
+ 
+     $dependance=substr($dependance,1);
+   }
+   // Ouf, on a épuisé la liste des dépendances
+   mysql_free_result($res1);
+ }
+ 
+ // Début de la page
+ 
  switch ($operation)
  {
***************
*** 227,235 ****
    $mes="";
    // A-t-on le droit de modifier quelquechose ?
!   if (defined("DROITS") && (DROITS!="MODIFIER" && DROITS<"20"))
      $mes.="Désolé, mais vous n'avez pas les autorisations de changer des 
droits ou fonctionnalités !<br>";
-   // Est-on administrateur ?
-   if (defined("DROITS") && ($id_stru!=$id_structure && DROITS<"40"))
-     $mes.="Désolé, mais vous n'avez pas les autorisations de changer des 
droits des autres ou fonctionnalités !<br>";
    // A-t-on bien le numéro de la structure à qui changer les droits ?
    if (! isset($id_stru))
--- 346,352 ----
    $mes="";
    // A-t-on le droit de modifier quelquechose ?
!   if ((DROITS_MES<"w" || $id_stru!=$id_structure)
!       && DROITS_AUTRES<"w")
      $mes.="Désolé, mais vous n'avez pas les autorisations de changer des 
droits ou fonctionnalités !<br>";
    // A-t-on bien le numéro de la structure à qui changer les droits ?
    if (! isset($id_stru))
***************
*** 252,265 ****
    {
      // et on regarde s'il y a une affectation
!     $champ="fonction_".$fonction1->id;
!     if ($$champ && $$champ>="00")
      { // Oui, un champ a été rempli
        //debug($$champ);
!       $req2="INSERT INTO droits (id_structure, id_fonction, droit)
!             VALUES (\"$id_stru\", \"$fonction1->id\", \"".$$champ."\")";
        $res2=executeRequete($req2);
      }
    }
    mysql_free_result($res1);
    echo "<p>Les modifications ont été prises en compte.</p>
          <p>Pour certaines, elles ne prendront effets qu'à la prochaine 
identification.</p>\n";
--- 369,388 ----
    {
      // et on regarde s'il y a une affectation
!     $champ0="fonction_".$fonction1->id;
!     $champ1="fonction_moi_".$fonction1->id;
!     $champ2="fonction_autre_".$fonction1->id;
!     if ($$champ0 || $$champ1 || $$champ2)
      { // Oui, un champ a été rempli
        //debug($$champ);
!       $req2="INSERT INTO droits (id_structure, id_fonction, actif, moi, 
autres)
!             VALUES (\"$id_stru\", \"$fonction1->id\", \"${$champ0}\", 
\"${$champ1}\", \"${$champ2}\")";
        $res2=executeRequete($req2);
      }
    }
    mysql_free_result($res1);
+ 
+   if ($id==0) // Il s'agit des fonctionnalités
+     verifie_dependances_fonctionnalites(); // comme son nom l'indique
+ 
    echo "<p>Les modifications ont été prises en compte.</p>
          <p>Pour certaines, elles ne prendront effets qu'à la prochaine 
identification.</p>\n";
***************
*** 299,352 ****
  } // switch
  
! //default : // Affichage des éventuelles possibilités
!   //'aucun', 'voir', 'ajouter', 'modifier', 'administrer'
!   echo "<table align='center' border='1' bgcolor='#B6FFB2'>\n";
!   if (defined("USAGERS") && USAGERS!="00")
!   {
!     echo "<tr><th>Droits des usagers</th>";
!     echo "<td><a href='$PHP_SELF?operation=11'>Voir</a></td>";
!     if (DROITS>="30")
!       echo "<td><a href='$PHP_SELF?operation=12'>Modifier</a></td>";
!     echo "</tr>\n";
!   }
!   if (defined("ANIMATEURS") && ANIMATEURS!="00")
!   {
!     echo "<tr><th>Droits des animateurs</th>";
      echo "<td><a href='$PHP_SELF?operation=21'>Voir</a></td>";
!     if (DROITS>="30")
!       echo "<td><a href='$PHP_SELF?operation=22'>Modifier</a></td>";
!     echo "</tr>\n";
!   }
!   if (defined("STRUCTURES") && STRUCTURES!="00")
!   {
!     echo "<tr><th>Droits par défaut des structures</th>";
!     echo "<td><a href='$PHP_SELF?operation=31&id=-3'>Voir</a></td>";
!     if (DROITS>="30")
!       echo "<td><a href='$PHP_SELF?operation=32&id=-3'>Modifier</a></td>";
!     echo "</tr>\n";
!   }
!   if (defined("STRUCTURES") && STRUCTURES!="00")
    {
      echo "<tr><th>Droits des structures</th>";
      echo "<td><a href='$PHP_SELF?operation=31'>Voir</a></td>";
!     if (DROITS>="30")
        echo "<td><a href='$PHP_SELF?operation=32'>Modifier</a></td>";
      echo "</tr>\n";
    }
  
!   if ((defined("DROITS") && DROITS>="40") || !defined("FCT_DROITS"))
!   {                           // s'en sortirait plus !
!     echo "<tr><th>Droits des visiteurs non identifiés</th>";
!     echo "<td><a href='$PHP_SELF?operation=51'>Voir</a></td>";
      echo "<td><a href='$PHP_SELF?operation=52'>Modifier</a></td>";
!     echo "</tr>\n";
  
!     echo "<tr><th>Fonctionnalités de l'application</th>";
!     echo "<td><a href='$PHP_SELF?operation=41'>Voir</a></td>";
      echo "<td><a href='$PHP_SELF?operation=42'>Modifier</a></td>";
!     echo "</tr>\n";
!   }
!   echo "</table>\n";
! //} // switch
  
  // Fin de la page
--- 422,491 ----
  } // switch
  
! echo "<table align='center' border='1' bgcolor='#B6FFB2'>\n";
! if (FCT_USAGERS=="y")
! {
!   echo "<tr><th>Droits des usagers</th>";
!   if (DROITS_AUTRES>="r" || ($is_ident=="usager" && DROITS_MOI>="r"))
!   echo "<td><a href='$PHP_SELF?operation=11'>Voir</a></td>";
!   if (DROITS_AUTRES=="w" || ($is_ident=="usager" && DROITS_MOI>="r"))
!     echo "<td><a href='$PHP_SELF?operation=12'>Modifier</a></td>";
!   echo "</tr>\n";
! }
! 
! if (ANIMATEURS>="~")
! {
!   echo "<tr><th>Droits des animateurs</th>";
!   if (DROITS_AUTRES>="r" || ($is_ident=="animateur" && DROITS_MOI>="r"))
      echo "<td><a href='$PHP_SELF?operation=21'>Voir</a></td>";
!   if (DROITS_AUTRES>="w" || ($is_ident=="animateur" && DROITS_MOI>="w"))
!     echo "<td><a href='$PHP_SELF?operation=22'>Modifier</a></td>";
!   echo "</tr>\n";
! }
! 
! if (FCT_STRUCTURES=="y" && DROITS_AUTRES>="w")
! {
!   echo "<tr><th>Droits par défaut des structures</th>";
!   echo "<td><a href='$PHP_SELF?operation=31&id=-3'>Voir</a></td>";
!   echo "<td><a href='$PHP_SELF?operation=32&id=-3'>Modifier</a></td>";
!   echo "</tr>\n";
! } 
! 
! if (FCT_STRUCTURES=="y")
! {
! //  if (DROITS_AUTRES<"r")
!     if ($is_ident=="structure" && DROITS_MOI>="r")
!     {
!       echo "<tr><th>Mes droits</th>";
!       echo "<td><a 
href='$PHP_SELF?operation=31&id=$id_structure'>Voir</a></td>";
!       if (DROITS_MOI>="w")
!         echo "<td><a 
href='$PHP_SELF?operation=32&id=$id_structure'>Modifier</a></td>";
!       echo "</tr>\n";
!     }
! 
!   if (DROITS_AUTRES>="r")
    {
      echo "<tr><th>Droits des structures</th>";
      echo "<td><a href='$PHP_SELF?operation=31'>Voir</a></td>";
!     if (DROITS_AUTRES>="w")
        echo "<td><a href='$PHP_SELF?operation=32'>Modifier</a></td>";
      echo "</tr>\n";
    }
+ }
  
! if ((DROITS>="~") && DROITS_AUTRES>="r")
! {
!   echo "<tr><th>Droits des visiteurs non identifiés</th>";
!   echo "<td><a href='$PHP_SELF?operation=51'>Voir</a></td>";
!   if (DROITS_AUTRES>="w")
      echo "<td><a href='$PHP_SELF?operation=52'>Modifier</a></td>";
!   echo "</tr>\n";
  
!   echo "<tr><th>Fonctionnalités de l'application</th>";
!   echo "<td><a href='$PHP_SELF?operation=41'>Voir</a></td>";
!   if (DROITS_AUTRES>="w")
      echo "<td><a href='$PHP_SELF?operation=42'>Modifier</a></td>";
!   echo "</tr>\n";
! }
! echo "</table>\n";
  
  // Fin de la page

Index: constantes.inc.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/constantes.inc.php,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -r1.17 -r1.18
*** constantes.inc.php  23 Jan 2003 22:00:50 -0000      1.17
--- constantes.inc.php  26 Jan 2003 23:09:59 -0000      1.18
***************
*** 87,90 ****
--- 87,91 ----
  
  // Définition des couleurs, mais franchement, il faudrait repenser tout ça.
+ /*
  define ("COULEUR_ACCES_INDIVIDUEL", "#70F120");  // reservations et usages
  define ("COULEUR_SESSION", "#2AA1F6");
***************
*** 97,126 ****
  define ("COULEUR_PARC", "#DAA4F1");          // prets, materiels, logiciels
  define ("COULEUR_ADMIN", "#C0C0C0");
! 
! // Définition des signes pour les commandes récurrentes
! // Version graphique
! if (TRUE)
! {
!   $ajouter     = "<img src=\"images/ajouter.png\" border=0 alt=\"Ajouter\">";
!   $retirer    = "<img src=\"images/retirer.png\" border=0 alt=\"Retirer\">";
!   $supprimer    = "<img src=\"images/supprimer.png\" border=0 
alt=\"Supprimer\">";
!   $info      = "<img src=\"images/info.png\" border=0 alt=\"Plus de 
détails\">";
!   $programmer    = "<img src=\"images/programmer.png\" border=0 
alt=\"Programmer, s'inscrire\">"; //'
!   $deprogrammer  = "<img src=\"images/deprogrammer.png\" border=0 
alt=\"Déprogrammer, désinscrire\">";
!   $modifier    = "<img src=\"images/modifier.png\" border=0 
alt=\"Modifier\">";
!   $rien      = "<img src=\"images/noir.png\" border=0 alt=\"Rien\">";
! }
! else
! { // version textuelle
!   $ajouter="+";
!   $retirer="-";
!   $supprimer="s";
!   $info="?";
!   $programmer="p";
!   $deprogrammer="x";
!   $modifier="m";
!   $rien="&nbsp;";
! }
! 
  // Chargement du fichier de langage
  require_once($langage.".lang.inc.php");
--- 98,102 ----
  define ("COULEUR_PARC", "#DAA4F1");          // prets, materiels, logiciels
  define ("COULEUR_ADMIN", "#C0C0C0");
! */
  // Chargement du fichier de langage
  require_once($langage.".lang.inc.php");

Index: entete.inc.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/entete.inc.php,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -r1.16 -r1.17
*** entete.inc.php      22 Jan 2003 21:24:08 -0000      1.16
--- entete.inc.php      26 Jan 2003 23:09:59 -0000      1.17
***************
*** 3,7 ****
      Copyright (C) 2001, 2002 Loïc Dayot - Mairie de Pierrefitte (93)
  
!     EPNadmin - Version 0.6 - 14/01/2003
  
      This program is free software; you can redistribute it and/or modify
--- 3,7 ----
      Copyright (C) 2001, 2002 Loïc Dayot - Mairie de Pierrefitte (93)
  
!     EPNadmin - Version 0.6 - 25/01/2003
  
      This program is free software; you can redistribute it and/or modify
***************
*** 63,67 ****
    $visiteur=TRUE;
  }
! 
  // Début de l'affichage de la barre de menu (y compris le logo de 
l'application).
  
--- 63,67 ----
    $visiteur=TRUE;
  }
!       
  // Début de l'affichage de la barre de menu (y compris le logo de 
l'application).
  
***************
*** 69,75 ****
  <table cellpadding=\"2\" cellspacing=\"0\" align=\"left\">
    <tr>
!     <td colspan=3 align=center><a href=\"index.php\"><img src=\"$logo\" 
width=113 height=113 border=0></a></td>
      <td width=\"5\"></td>
!   </tr>\n";
  
  
--- 69,76 ----
  <table cellpadding=\"2\" cellspacing=\"0\" align=\"left\">
    <tr>
!     <td colspan=3 align=center><a href=\"index.php\">
!        <img src=\"$logo\" width=113\" height=\"113\" border=\"0\" alt=\"Logo 
EPNadmin\"></a></td>
      <td width=\"5\"></td>
!   </tr>\n";              //"
  
  
***************
*** 87,91 ****
  case "usager" :    $logon=2; echo "Perso $usager->login"; break;
  case "structure" : $logon=1; echo "Ma structure $structure->login"; break;
! case "animateur" : $logon=3; echo "Perso"; break;
  case "visiteur" :  $logon=4; echo "Visiteur"; break;
  }
--- 88,92 ----
  case "usager" :    $logon=2; echo "Perso $usager->login"; break;
  case "structure" : $logon=1; echo "Ma structure $structure->login"; break;
! case "animateur" : $logon=3; echo "Perso $animateur->login"; break;
  case "visiteur" :  $logon=4; echo "Visiteur"; break;
  }
***************
*** 102,128 ****
  if ($is_ident=="usager")
  {
!   if(defined("USAGERS") && USAGERS>"00")
      echo "<a href=\"usagers.php\">mes infos</a><br>\n";
  
!   if ("CREDITS">"00")
      echo "<a href=\"usagers.php?operation=7\">mes cr&eacute;dits</a><br>\n";
  
!   if (defined("USAGERS") && USAGERS>"00")
      echo "<a href=\"usagers.php?operation=6\">mot de passe</a><br>\n";
  
!   if (defined("SITES") && SITES>"00")
      echo "<a href=\"siteweb.php\">ma page perso</a><br>\n";
  
!   if (defined("COURRIELS") && COURRIELS>"00")
      echo "<a href=\"courriel.php\">mon courriel</a><br>\n";
  }
  elseif ($is_ident=="structure")
  {
!   if (defined("STRUCTURES") && STRUCTURES>"00")
      echo "<a href=\"structures.php\">informations</a><br>
            <a href=\"structures.php?operation=6\">mot de passe</a><br>\n";
!   if (defined("SITES") && SITES>"00")
      echo "<a href=\"siteweb.php?operation=11\">site web</a><br>\n";
!   if (defined("COURRIELS") && COURRIELS>"00")
      echo "<a href=\"courriel.php?operation=11\">courriel</a><br>\n";
  }
--- 103,129 ----
  if ($is_ident=="usager")
  {
!   if(USAGERS_MES>="r")
      echo "<a href=\"usagers.php\">mes infos</a><br>\n";
  
!   if (CREDITS_MES>="r")
      echo "<a href=\"usagers.php?operation=7\">mes cr&eacute;dits</a><br>\n";
  
!   if (USAGERS_MES>="r")
      echo "<a href=\"usagers.php?operation=6\">mot de passe</a><br>\n";
  
!   if (SITES_MES>="r")
      echo "<a href=\"siteweb.php\">ma page perso</a><br>\n";
  
!   if (COURRIELS_MES>="r")
      echo "<a href=\"courriel.php\">mon courriel</a><br>\n";
  }
  elseif ($is_ident=="structure")
  {
!   if (STRUCTURES_MES>="r")
      echo "<a href=\"structures.php\">informations</a><br>
            <a href=\"structures.php?operation=6\">mot de passe</a><br>\n";
!   if (SITES_MES>="r")
      echo "<a href=\"siteweb.php?operation=11\">site web</a><br>\n";
!   if (COURRIELS_MES>="r")
      echo "<a href=\"courriel.php?operation=11\">courriel</a><br>\n";
  }
***************
*** 137,143 ****
  // UTILISATION DES POSTES EN ACCES INDIVIDUELS
  
! if ((defined("UTILISATION") && UTILISATION>"00")
!     || (defined("USAGERS") && USAGERS>"00")
!     || (defined("USAGES") && USAGES>"00") )
  {
    echo "<tr>
--- 138,145 ----
  // UTILISATION DES POSTES EN ACCES INDIVIDUELS
  
! if (UTILISATIONS>="~"
!     || USAGERS>"~"
!     || USAGES>"~"
!     || HORAIRES>"~")
  {
    echo "<tr>
***************
*** 161,176 ****
      echo "<a href=\"reservations.php?operation=5\">reservations 
pr&eacute;vues</a><br>\n";
  
!   if (defined("UTILISATION") && UTILISATION>="20")
      echo "<a href=\"table_horaire.php\">r&eacute;server un poste</a><br>\n";
  
!   if (USAGERS==="40")
      echo "<a href=\"usagers.php?operation=3\">nouvel</a> -";
!   if (USAGERS>="30")
      echo "<a href=\"usagers.php?operation=5\">usagers</a><br>\n";
!   if (USAGERS==="40")
      echo "<a href=\"print.php\">cartes</a><br>\n";
!   if (defined("USAGES") && USAGES>="10")
      echo "<a href=\"usages.php\">usages</a><br>\n";
!   if (defined(HORAIRES) && HORAIRES>="10")
      echo "<a href=\"horaires.php\">horaires</a><br>\n";
  
--- 163,178 ----
      echo "<a href=\"reservations.php?operation=5\">reservations 
pr&eacute;vues</a><br>\n";
  
!   if (UTILISATIONS>="~")
      echo "<a href=\"table_horaire.php\">r&eacute;server un poste</a><br>\n";
  
!   if (USAGERS_AUTRES>="w")
      echo "<a href=\"usagers.php?operation=3\">nouvel</a> -";
!   if (USAGERS_AUTRES>="r")
      echo "<a href=\"usagers.php?operation=5\">usagers</a><br>\n";
!   if (USAGERS_AUTRES>="w")
      echo "<a href=\"print.php\">cartes</a><br>\n";
!   if (USAGES>="~")
      echo "<a href=\"usages.php\">usages</a><br>\n";
!   if (HORAIRES>="~")
      echo "<a href=\"horaires.php\">horaires</a><br>\n";
  
***************
*** 185,189 ****
  } // if
  
!   if ($is_ident=="usager" && PARCOURS>"00")
    {
      echo "<tr>
--- 187,191 ----
  } // if
  
!   if ($is_ident=="usager" && PARCOURS_MES>="r")
    {
      echo "<tr>
***************
*** 201,207 ****
      <td valign=\"top\">
        <a href=\"parcours.php\">mon parcours</a><br>\n";
!     if (SESSIONS>="10")
        echo "<a href=\"parcours.php\">m'inscrire à une initiation</a><br>\n";
!     if (PARCOURS>="20")
        echo "<a href=\"parcours.php?operation=4\">ajouter initiation</a><br>
          <a href=\"parcours.php?operation=5\">mettre &agrave; jour</a><br>\n";
--- 203,209 ----
      <td valign=\"top\">
        <a href=\"parcours.php\">mon parcours</a><br>\n";
!     if (SESSIONS_MES>="w")
        echo "<a href=\"parcours.php\">m'inscrire à une initiation</a><br>\n";
!     if (PARCOURS_MES>="w")
        echo "<a href=\"parcours.php?operation=4\">ajouter initiation</a><br>
          <a href=\"parcours.php?operation=5\">mettre &agrave; jour</a><br>\n";
***************
*** 266,272 ****
          <a href=\"session.php?operation=5\">sessions passées</a><br>\n";
      if (defined("PEDAGOGIE") && PEDAGOGIE>"00")
!       echo "<a href=\"initiations.php?operation=5\">initiations</a><br>
!         <a href=\"themes.php\">thèmes</a><br>\n";
!     if (defined("HORAIRES") && HORAIRES>"10")
        echo "<a href=\"horaires.php\">horaires</a>\n";
      echo "</td>
--- 268,275 ----
          <a href=\"session.php?operation=5\">sessions passées</a><br>\n";
      if (defined("PEDAGOGIE") && PEDAGOGIE>"00")
!       echo "<a href=\"initiations.php?operation=5\">initiations</a><br>\n";
!     if (defined("THEME") && THEME>"00")
!       echo "<a href=\"themes.php\">thèmes</a><br>\n";
!     if (defined("HORAIRES") && HORAIRES>="10")
        echo "<a href=\"horaires.php\">horaires</a>\n";
      echo "</td>
***************
*** 316,324 ****
  
    // if ($isadmin=="super") // Suppri avec 0.6
!   if ((defined("STRUCTURES") && STRUCTURES>="40") ||
!       (defined("LOCALISATIONS") && LOCALISATIONS>="40") ||
!       (defined("SITES") && SITES>="40") ||
!       (defined("COURRIELS") && COURRIELS>="40") ||
!       (defined("DROITS") && DROITS>="40"))
    {
      echo "
--- 319,327 ----
  
    // if ($isadmin=="super") // Suppri avec 0.6
!   if ( (STRUCTURES>"~") ||
!        (LOCALISATIONS>"~") ||
!        (SITES>"~") ||
!        (COURRIELS>"~") ||
!        (DROITS>"~") )
    {
      echo "
***************
*** 333,345 ****
      </td>
      <td valign=\"top\">\n";
!     if (STRUCTURES>="40")
        echo "<a href=\"structures.php?operation=5\">liste des 
structures</a><br>\n";
!     if (LOCALISATIONS>="40")
        echo "<a href=\"localisations.php\">liste des salles</a><br>\n";
!     if (SITES>="40")
        echo "<a href=\"siteweb.php?operation=10\">domaines sites 
web</a><br>\n";
!     if (COURRIELS>="40")
        echo "<a href=\"courriel.php?operation=10\">domaines 
courriels</a><br>\n";
!     if (DROITS>="40")
        echo "<a href=\"configuration.php\">fonctionnalités et 
droits</a><br>\n";
      echo "</td>
--- 336,348 ----
      </td>
      <td valign=\"top\">\n";
!     if (STRUCTURES>"~")
        echo "<a href=\"structures.php?operation=5\">liste des 
structures</a><br>\n";
!     if (LOCALISATIONS>"~")
        echo "<a href=\"localisations.php\">liste des salles</a><br>\n";
!     if (SITES>="~")
        echo "<a href=\"siteweb.php?operation=10\">domaines sites 
web</a><br>\n";
!     if (COURRIELS>"~")
        echo "<a href=\"courriel.php?operation=10\">domaines 
courriels</a><br>\n";
!     if (DROITS>"~")
        echo "<a href=\"configuration.php\">fonctionnalités et 
droits</a><br>\n";
      echo "</td>

Index: fr.lang.inc.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/fr.lang.inc.php,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** fr.lang.inc.php     23 Jan 2003 22:00:50 -0000      1.1
--- fr.lang.inc.php     26 Jan 2003 23:09:59 -0000      1.2
***************
*** 22,28 ****
  */
  
  $pasledroit="<p>Vous n'avez pas les autorisations suffisantes pour accéder à 
ce service.
               Adressez-vous à votre administrateur si vous pensez que c'est 
une erreur.</p>
               <p><a href=\"/\">Retour</a></p>\n";
  
! ?>
\ No newline at end of file
--- 22,101 ----
  */
  
+ // configuration.php
+ $titreconfiguration="Configuration de l'application et des autorisations";
+ $autorvisiteur="Les autorisations des visiteurs non identifiés";
+ $autordefstructure="Les autorisations par défaut des structures";
+ $autoranim="Les autorisations des animateurs";
+ $autorusagers="Les autorisations des usagers";
+ $fonctionnalitesdeappli="Les fonctionnalités de l'application";
+ $avisfctrenduactive="<p>La fonctionalité <b>%s</b> a été rendue active car 
elle était indispensable à la fonctionnalité <b>%s</b>.</p>\n";
+ 
+ // initiations.php
+ $sinitiations="initiations";
+ $stitreinitiations="Base des initiations";
+ $spaschoisitheme="Tu n'as pas choisi de thème.<br>";
+ $spasnominitiation="Tu dois donner un nom à l'initiation.<br>";
+ $spasniveau="Tu n'as pas indiqué le niveau de l'initiation.<br>";
+ $spasduree="Tu n'as pas indiqué la durée.<br>";
+ $senrnouvinitiation="<p>Enregistrement de la nouvelle initiation.</p>\n";
+ $smiseajourenr="<p>Mise à jour de l'enregistrement</p>\n";
+ $stheme="Th&egrave;me";
+ $sintitule="Intitul&eacute";
+ $sniveau="Niveau";
+ $sdebutant="d&eacute;butant(e)";
+ $sinitie="initi&eacute;(e)";
+ $savance="avanc&eacute;(e)";
+ $sobjectifs="Objectifs";
+ $sinitprerequis="Initiations pr&eacute;requises";
+ $sprolongements="Prolongements";
+ $sduree="Dur&eacute;e (hh:mm)";
+ $snbmaxpart="Nombre maximum de participants";
+ $sattentionsupprinit="<p>Attention, tu vas supprimer une initiation. C'est 
très dangereux !</p>\n";
+ $sattentioninitsert="<p>Des usagers ont cette initiation dans leur parcours. 
Mieux vaut la laisser même si elle ne sert pas souvent (comme ça les 
statistiques ne sont pas fausses).</p>\n";
+ $sconfirmerquandmeme="<p><a href=\"%s\">Confirmer tout de même la 
suppression. Non mais !</a></p>\n";
+ $sinitsuppr="<p>L'initiation est supprimée. Snif !</p>\n";
+ $sQuestions="Questions";
+ $spasdinit="Il n'y a pas d'initiations disponibles.";
+ $sajoutinit="Ajouter une nouvelle initiation";
+ $svoirlisteinit="Voir la liste des initiations";
+ 
+ // themes.php
+ 
+ // questions.php
+ $questions="questions";
+ $titrequestions="Base des questions d'autoévaluation";
+ 
+ // Toutes ou beaucoup
  $pasledroit="<p>Vous n'avez pas les autorisations suffisantes pour accéder à 
ce service.
               Adressez-vous à votre administrateur si vous pensez que c'est 
une erreur.</p>
               <p><a href=\"/\">Retour</a></p>\n";
+ $fctnonactive="<p>La fonctionnalité gérée dans cette écran a été 
désactivée.</p>
+              <p><a href=\"/\">Retour</a></p>\n";
+ 
+ 
+ // Définition des signes pour les commandes récurrentes
+ // Version graphique
+ if (TRUE)
+ {
+   $ajouter     = "<img src=\"images/ajouter.png\" border=0 alt=\"Ajouter\">";
+   $retirer    = "<img src=\"images/retirer.png\" border=0 alt=\"Retirer\">";
+   $supprimer    = "<img src=\"images/supprimer.png\" border=0 
alt=\"Supprimer\">";
+   $info      = "<img src=\"images/info.png\" border=0 alt=\"Plus de 
détails\">";
+   $programmer    = "<img src=\"images/programmer.png\" border=0 
alt=\"Programmer, s'inscrire\">"; //'
+   $deprogrammer  = "<img src=\"images/deprogrammer.png\" border=0 
alt=\"Déprogrammer, désinscrire\">";
+   $modifier    = "<img src=\"images/modifier.png\" border=0 
alt=\"Modifier\">";
+   $rien      = "<img src=\"images/noir.png\" border=0 alt=\"Rien\">";
+ }
+ else
+ { // version textuelle
+   $ajouter="+";
+   $retirer="-";
+   $supprimer="s";
+   $info="?";
+   $programmer="p";
+   $deprogrammer="x";
+   $modifier="m";
+   $rien="&nbsp;";
+ }
  
! ?>

Index: header.inc.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/header.inc.php,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -r1.15 -r1.16
*** header.inc.php      23 Jan 2003 22:00:50 -0000      1.15
--- header.inc.php      26 Jan 2003 23:09:59 -0000      1.16
***************
*** 131,139 ****
  } // switch
  
! if ($logon!=1)
    echo "<a href=\"$PHP_SELF?logon=1\">S'identifier en tant que 
structure.</a><br>\n";
! if ($logon!=2)
    echo "<a href=\"$PHP_SELF?logon=2\">S'identifier en tant qu'usager 
individuel.</a><br>\n";
! if ($logon!=3)
    echo "<a href=\"$PHP_SELF?logon=3\">S'identifier en tant 
qu'animateur.</a><br>\n";
  if ($logon!=4)
--- 131,152 ----
  } // switch
  
! // Retrouver les fonctionnalités actives de l'application
! $req1="SELECT id_fonction, fonction, actif
!         FROM droits
!         LEFT JOIN fonctions ON id_fonction=fonctions.id
!         WHERE id_structure='0'";
! if ($res1 = executeRequete($req1))
!   while ($fonctionnalite = mysql_fetch_object($res1))
!     if ($fonctionnalite->actif=="y")
!     {
!       define(strtoupper("FCT_".$fonctionnalite->fonction), 
strtoupper($fonctionnalite->actif));
!       define(strtoupper("COULEUR_".$fonctionnalite->fonction), 
strtoupper($fonctionnalite->couleur));
!     }
! 
! if (($logon!=1) && defined("FCT_STRUCTURES"))
    echo "<a href=\"$PHP_SELF?logon=1\">S'identifier en tant que 
structure.</a><br>\n";
! if (($logon!=2) && defined("FCT_USAGERS"))
    echo "<a href=\"$PHP_SELF?logon=2\">S'identifier en tant qu'usager 
individuel.</a><br>\n";
! if (($logon!=3) && defined("FCT_ANIMATEURS"))
    echo "<a href=\"$PHP_SELF?logon=3\">S'identifier en tant 
qu'animateur.</a><br>\n";
  if ($logon!=4)
***************
*** 238,241 ****
--- 251,257 ----
          de rendre actif ou non des fonctionnalités.
  
+     id_structure>0
+       - Il s'agit des droits de chacune des structures.
+ 
      id_structure==-1
        - C'est celui des droits des usagers, ils sont tous identiques.
***************
*** 244,250 ****
        - C'est celui des droits des animateurs, ils sont tous identiques. 
(Quand ça existera !)
  
-     id_structure>0
-       - Il s'agit des droits de chacune des structures.
- 
      id_structure==-3
        - C'est celui des droits par défaut des structures.
--- 260,263 ----
***************
*** 273,277 ****
  
  // Retrouver les fonctionnalités actives de l'application
! $req1="SELECT id_fonction, fonction, droit
          FROM droits
          LEFT JOIN fonctions ON id_fonction=fonctions.id
--- 286,290 ----
  
  // Retrouver les fonctionnalités actives de l'application
! $req1="SELECT id_fonction, fonction, actif, couleur
          FROM droits
          LEFT JOIN fonctions ON id_fonction=fonctions.id
***************
*** 282,313 ****
    {
      $config=TRUE;
!     if (strtoupper($fonctionnalite->droit)!="INACTIF")
      {
!       define(strtoupper("FCT_".$fonctionnalite->fonction), 
strtoupper($fonctionnalite->droit));
        /*  Dans le cas de la définition des fonctionnalités, les constantes 
sont précédées de FCT_
            Par exemple, si la fonction de gestion des usagers est activé, 
FCT_USAGERS vaudra ACTIF. */
!       //debug(strtoupper("FCT_".$fonctionnalite->fonction)." => 
".strtoupper($fonctionnalite->droit));
  
        // Pour chaque fonctionnalité, on regarde les droit.
        $variable=$fonctionnalite->fonction;
!       $req2="SELECT droit FROM droits
                WHERE id_structure='$nstructure' AND 
id_fonction='$fonctionnalite->id_fonction'";
        $res2= executeRequete($req2);
        if ($droit = mysql_fetch_object($res2))
        {
!         define(strtoupper($variable), strtoupper($droit->droit));
          /* Dans le cas des droits de la structure,
             si la structure a le droits de voir (et uniquement de voir)
             les informations sur les usagers, on aura : USAGERS=="10". */
!         //debug(strtoupper($variable)." -> ".strtoupper($droit->droit));
        }
        elseif ($nstructure>0) // Si c'est une structure et qu'on n'a rien, on 
prend la config par défaut
        {
!         $req3="SELECT droit FROM droits
                WHERE id_structure='-3' AND 
id_fonction='$fonctionnalite->id_fonction'";
          $res3= executeRequete($req3);
          if ($droit = mysql_fetch_object($res3))
          {
!           define(strtoupper($variable), strtoupper($droit->droit));
          }
        }  // elseif
--- 295,332 ----
    {
      $config=TRUE;
!     if ($fonctionnalite->actif=="y")
      {
!       define(strtoupper("FCT_".$fonctionnalite->fonction), 
$fonctionnalite->actif);
!       define(strtoupper("COULEUR_".$fonctionnalite->fonction), 
$fonctionnalite->couleur);
        /*  Dans le cas de la définition des fonctionnalités, les constantes 
sont précédées de FCT_
            Par exemple, si la fonction de gestion des usagers est activé, 
FCT_USAGERS vaudra ACTIF. */
!       //debug(strtoupper("FCT_".$fonctionnalite->fonction)." => 
".strtoupper($fonctionnalite->actif));
!       //debug(strtoupper("COULEUR_".$fonctionnalite->fonction)." => 
".strtoupper($fonctionnalite->couleur));
  
        // Pour chaque fonctionnalité, on regarde les droit.
        $variable=$fonctionnalite->fonction;
!       $req2="SELECT moi, autres FROM droits
                WHERE id_structure='$nstructure' AND 
id_fonction='$fonctionnalite->id_fonction'";
        $res2= executeRequete($req2);
        if ($droit = mysql_fetch_object($res2))
        {
!         define(strtoupper($variable), "~".$droit->moi.$droit->autres);
!         define(strtoupper($variable)."_MOI", $droit->moi);
!         define(strtoupper($variable)."_AUTRES", $droit->autres);
          /* Dans le cas des droits de la structure,
             si la structure a le droits de voir (et uniquement de voir)
             les informations sur les usagers, on aura : USAGERS=="10". */
!         //debug(strtoupper($variable)." -> "."~".$droit->moi.$droit->autres);
        }
        elseif ($nstructure>0) // Si c'est une structure et qu'on n'a rien, on 
prend la config par défaut
        {
!         $req3="SELECT moi, autres FROM droits
                WHERE id_structure='-3' AND 
id_fonction='$fonctionnalite->id_fonction'";
          $res3= executeRequete($req3);
          if ($droit = mysql_fetch_object($res3))
          {
!           define(strtoupper($variable), "~".$droit->moi.$droit->autres);
!           define(strtoupper($variable)."_MOI", $droit->moi);
!           define(strtoupper($variable)."_AUTRES", $droit->autres);
          }
        }  // elseif
***************
*** 317,323 ****
  if (!$config)
  {
!   debug("Il n'y a aucune configuration de faite, Un jour il faudrait prévoir 
un guide à l'installation");
    exit;
  }
  
! ?>
\ No newline at end of file
--- 336,354 ----
  if (!$config)
  {
!   echo "<p>C'est apparemment la toute première utilisation.</p>";
!   if ($is_ident=="structure")
!   {
!     echo "<p>La fonctionnalité pour gérer les fonctionnalités et 
autorisations et créee.</p>";
!     $req="INSERT INTO droits (id_fonction, id_structure, actif) VALUES (1, 0, 
'y')";
!     executeRequete($req);
!     echo "<p>Vous avez tous les droits pour effectuer des modifications.</p>";
!     $req="INSERT INTO droits (id_fonction, id_structure, moi, autres) VALUES 
(1, $id_structure, 'w', 'w')";
!     executeRequete($req);
!   }
!   else
!     echo "<p>Il faut se connecter en tant que structure</p>";
!   echo "<a href=\"$PHP_SELF?logoff=1\">Reprendre</a>";
    exit;
  }
  
! ?>

Index: horaires.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/horaires.php,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** horaires.php        5 Jan 2003 20:34:01 -0000       1.9
--- horaires.php        26 Jan 2003 23:09:59 -0000      1.10
***************
*** 23,26 ****
--- 23,32 ----
  
  require_once("header.inc.php"); // C'est dans header.inc.php que sont 
retrouvés les droits issus de la table droits
+ if (!defined("FCT_HORAIRES"))
+ {
+   echo $fctnonactive;
+   exit;
+ }
+ 
  require_once("constantes.inc.php");             // définition des constantes
  //require_once("fonctions.inc.php");              // concernant des fonctions 
transversales inclassables
***************
*** 43,53 ****
  <?
  $titr = "Gestion du calendrier et des horaires d'ouverture";
! $datemaj="5 janvier 2003";
  require("entete.inc.php");
  
  function AfficheCalendrier($id_localisation, $date)
  {
  global $unitehoraire, $PHP_SELF;
  
    // Construction de la requête.
    $req = "SELECT DISTINCT structures.ville AS ville,
--- 49,64 ----
  <?
  $titr = "Gestion du calendrier et des horaires d'ouverture";
! $datemaj="26 janvier 2003";
  require("entete.inc.php");
  
+ 
  function AfficheCalendrier($id_localisation, $date)
  {
  global $unitehoraire, $PHP_SELF;
  
+ // On retrouve le lundi
+   while (date("w", strtotime($date))!=1)        // 1 pour commencer le lundi, 
0 pour commencer le dimanche
+     $date=date("Y-m-d", strtotime("-1 days", strtotime($date)));
+ 
    // Construction de la requête.
    $req = "SELECT DISTINCT structures.ville AS ville,
***************
*** 66,72 ****
            <tr><td bgcolor=\"#C0C0C0\">F</td><td>= fermé</td>
              <td> </td>
!             <td bgcolor=\"".COULEUR_ACCES_INDIVIDUEL."\">I</td><td>= accès 
individuels</td>
              <td> </td>
!             <td bgcolor=\"".COULEUR_SESSION."\">C</td><td>= activités 
collectives</td>
            </tr>
          </table></td></tr>
--- 77,83 ----
            <tr><td bgcolor=\"#C0C0C0\">F</td><td>= fermé</td>
              <td> </td>
!             <td bgcolor=\"".COULEUR_UTILISATION."\">I</td><td>= accès 
individuels</td>
              <td> </td>
!             <td bgcolor=\"".COULEUR_SESSIONS."\">C</td><td>= activités 
collectives</td>
            </tr>
          </table></td></tr>
***************
*** 78,85 ****
    echo "<h3>$reponse->salle de $reponse->structure à $reponse->ville</h3>\n";
  
    $datemoisprec=date("Y-m-d", strtotime("-1 month", strtotime($date)));
    $datemoissuiv=date("Y-m-d", strtotime("+1 month", strtotime($date)));
!   echo "<p align=center><a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoisprec\">mois
 précédent</a> - ";
!   echo "<a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoissuiv\">mois
 suivant</a></p>\n";
    // on construit le tableau des horaires
  
--- 89,106 ----
    echo "<h3>$reponse->salle de $reponse->structure à $reponse->ville</h3>\n";
  
+   $datesemaineprec=date("Y-m-d", strtotime("-7 days", strtotime($date)));
+   $datesemainesuiv=date("Y-m-d", strtotime("+7 days", strtotime($date)));
    $datemoisprec=date("Y-m-d", strtotime("-1 month", strtotime($date)));
    $datemoissuiv=date("Y-m-d", strtotime("+1 month", strtotime($date)));
! 
! 
!   $lignechoixdate=
!     "<p align=center><a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoisprec\"><<<</a>
 - "
!     ."<a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datesemaineprec\"><<</a>
 - "
!     ."<b>semaine du ".datetodate($date)."</b> - "
!     ."<a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datesemainesuiv\">>></a>
 - "
!     ."<a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoissuiv\">>>>></a></p>\n";
!   echo $lignechoixdate;
! 
    // on construit le tableau des horaires
  
***************
*** 87,95 ****
  
    // Ligne des horaires
!   $mois = date("m", strtotime($date));
!   $nommois = nomMois($mois);
!   $annee = date("Y", strtotime($date));
! 
!   $lignehoraires="<tr bgcolor=\"#FFC6AA\"><th>$nommois $annee</th>";
    $nbcolparheure = 60/$unitehoraire;
  
--- 108,112 ----
  
    // Ligne des horaires
!   $lignehoraires="<tr 
bgcolor=\"".COULEUR_HORAIRES."\"><td></td>";//<th>".datetodate($date)."</th>";
    $nbcolparheure = 60/$unitehoraire;
  
***************
*** 100,104 ****
    {
        $lignehoraires.="<td colspan=\"".$nbcolparheure."\">";
!       $lignehoraires.=date("H", strtotime($heure))."h";
        $lignehoraires.="</td>\n";
    }
--- 117,121 ----
    {
        $lignehoraires.="<td colspan=\"".$nbcolparheure."\">";
!       $lignehoraires.=sprintf("%sh à %sh", date("H", strtotime($heure)), 
date("H", strtotime("+1 hour", strtotime($heure))));
        $lignehoraires.="</td>\n";
    }
***************
*** 107,178 ****
    echo $lignehoraires;
  
!   $jour=1;
!   while (checkDate($mois, $jour, $annee))
    {
!      $datejour = date("Y-m-", strtotime($date));
!      if ($jour<10)
!        $datejour.="0";
!      $datejour.=$jour;
! 
!      $nomjour=jourSemaine(date("w",strtotime($datejour)));
! 
!      if (($nomjour=="dimanche") && ($jour>1))
!        echo $lignehoraires;
!      echo "<tr><td bgcolor=\"#C0C0C0\"><a name=\"$jour\"></a>$nomjour 
$jour</td>";
  
       // Il va falloir construire la ligne des horaires en tenant compte des 
horaires et des réservations
       $heure=MINHORAIRE;
       while ($heure<MAXHORAIRE)
       {
         // On regarde si c'est déjà ouvert ou pas.
!        $req3 = "SELECT * FROM calendrier
!                          WHERE date=\"$annee-$mois-$jour\"
                             AND id_localisation=\"$id_localisation\"
                             AND debut<=\"$heure\" AND \"$heure\"<fin";
         $res3 = executeRequete($req3);
!        if (!($tranchehoraire = mysql_fetch_object($res3)))
         {
!          echo "<td bgcolor=\"#C0C0C0\">F \n";
!          echo "<a 
href=\"$PHP_SELF?operation=12&id_localisation=$id_localisation&date=$annee-$mois-$jour&debut=$heure#$jour\">i</a>
 \n";
!          echo "<a 
href=\"$PHP_SELF?operation=13&id_localisation=$id_localisation&date=$annee-$mois-$jour&debut=$heure#$jour\">c</a>\n";
!          echo "</td>\n";
!        }
!        else
!        {   // C'est ouvert...
  
-          echo "<td";
-          if ($tranchehoraire->ouverture=="accès individuels")
-            echo " bgcolor=\"".COULEUR_ACCES_INDIVIDUEL."\">\n";
-          else
-            echo " bgcolor=\"".COULEUR_SESSION."\">\n";
-          echo "<a 
href=\"$PHP_SELF?operation=11&id_localisation=$id_localisation&date=$annee-$mois-$jour&debut=$heure#$jour\">f</a>
 \n";
-          if ($tranchehoraire->ouverture!="accès individuels")
-            echo "<a 
href=\"$PHP_SELF?operation=12&id_localisation=$id_localisation&date=$annee-$mois-$jour&debut=$heure#$jour\">i</a>
 \n";
-          else
-            echo "I \n";
-          if ($tranchehoraire->ouverture!="activités collectives")
-            echo "<a 
href=\"$PHP_SELF?operation=13&id_localisation=$id_localisation&date=$annee-$mois-$jour&debut=$heure#$jour\">c</a>\n";
-          else
-            echo "C";
-          echo "</td>\n";
-        }
         $heure=date("H:i:00", strtotime("+".$unitehoraire." minutes", 
strtotime($heure)));
         mysql_free_result($res3);
       } // while $heure
  
!      if ($nomjour=="dimanche")
!      {
!        echo "<td rowspan=\"7\" valign=\"middle\">
!                  <a 
href=\"$PHP_SELF?operation=2&id_localisation=$id_localisation&date=$annee-$mois-$jour#$jour\">Appliquer
 le modèle</a>
!              <br><a 
href=\"$PHP_SELF?operation=3&id_localisation=$id_localisation&date=$annee-$mois-$jour#$jour\">Vider</a></td>";
!      }
!      echo "</tr>";
!      $jour++;
    } // while
  
    echo "</table>\n";
  
!   echo "<p align=center><a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoisprec\">mois
 précédent</a> - ";
!   echo "<a 
href=\"$PHP_SELF?id_localisation=$id_localisation&operation=1&date=$datemoissuiv\">mois
 suivant</a></p>\n";
  
    mysql_free_result($res);
--- 124,194 ----
    echo $lignehoraires;
  
!   $datecur=$date;
!   while ($datecur<date("Y-m-d", strtotime("+7 days", strtotime($date))))
    {
!      echo "<tr><td 
bgcolor=\"#C0C0C0\"><b>".jourSemaine(date("w",strtotime($datecur)))."</b> 
".datetodate($datecur)."</td>";
  
       // Il va falloir construire la ligne des horaires en tenant compte des 
horaires et des réservations
       $heure=MINHORAIRE;
+      $nbcol=1;
       while ($heure<MAXHORAIRE)
       {
         // On regarde si c'est déjà ouvert ou pas.
!        $req3 = "SELECT * FROM calendrier  
!                          LEFT JOIN localisations ON 
localisations.id=calendrier.id_localisation
!                          WHERE date=\"$datecur\"
                             AND id_localisation=\"$id_localisation\"
                             AND debut<=\"$heure\" AND \"$heure\"<fin";
         $res3 = executeRequete($req3);
!        $tranchehoraire = mysql_fetch_object($res3);
! 
!        $nbcol++;
!        echo "<td";
!        switch ($tranchehoraire->ouverture)
         {
!        case "accès individuels" :
!          echo " bgcolor=\"".COULEUR_UTILISATION."\">\n";
!          break;
!        case "activités collectives" :
!          echo " bgcolor=\"".COULEUR_SESSIONS."\">\n";
!          break;
!        default :
!          echo " bgcolor=\"#C0C0C0\">\n";
!          break;
!        } // switch
! 
!        if (!$tranchehoraire->ouverture)
!          echo "F ";
!        elseif (HORAIRES>="40" || (HORAIRES>="20" && 
id_structure==$tranchehoraire->id_structure))
!          echo "<a 
href=\"$PHP_SELF?operation=11&id_localisation=$id_localisation&date=$datecur&debut=$heure\">f</a>
 \n";
! 
!        if ($tranchehoraire->ouverture=="accès individuels")
!          echo "I ";
!        elseif (HORAIRES>="40" || (HORAIRES>="20" && 
id_structure==$tranchehoraire->id_structure))
!          echo "<a 
href=\"$PHP_SELF?operation=12&id_localisation=$id_localisation&date=$datecur&debut=$heure\">i</a>
 ";
! 
!        if ($tranchehoraire->ouverture=="activités collectives")
!          echo "C ";
!        elseif (HORAIRES>="40" || (HORAIRES>="20" && 
id_structure==$tranchehoraire->id_structure))
!          echo "<a 
href=\"$PHP_SELF?operation=13&id_localisation=$id_localisation&date=$datecur&debut=$heure\">c</a>";
! 
!        echo "</td>\n";
  
         $heure=date("H:i:00", strtotime("+".$unitehoraire." minutes", 
strtotime($heure)));
         mysql_free_result($res3);
       } // while $heure
  
!      $datecur=date("Y-m-d", strtotime("+1 days", strtotime($datecur)));
    } // while
  
+   echo "</tr>
+     <tr><td colspan=\"$nbcol\" align=\"center\">
+         <a 
href=\"$PHP_SELF?operation=2&id_localisation=$id_localisation&date=$date\">Appliquer
 le modèle</a>
+         <br><a 
href=\"$PHP_SELF?operation=3&id_localisation=$id_localisation&date=$date\">Vider</a></td>
+         </tr>";
+ 
    echo "</table>\n";
  
!   echo $lignechoixdate;
  
    mysql_free_result($res);
***************
*** 222,228 ****
    echo "</tr>\n";
  
!   for ($jour=0; $jour<7; $jour++)
    {
!      $nomjour=jourSemaine($jour);
       echo "<tr><td>".$nomjour."</td>";
  
--- 238,244 ----
    echo "</tr>\n";
  
!   for ($jour=1; $jour<8; $jour++)
    {
!      $nomjour=jourSemaine($jour!=8 ? $jour : 0);
       echo "<tr><td>".$nomjour."</td>";
  
***************
*** 237,266 ****
                             AND debut<=\"$heure\" AND \"$heure\"<fin";
         $res3 = executeRequete($req3);
!        if (!($tranchehoraire = mysql_fetch_object($res3)))
         {
!          echo "<td bgcolor=\"#828282\">F \n";
!          echo "<a 
href=\"$PHP_SELF?operation=52&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">i</a>
 \n";
!          echo "<a 
href=\"$PHP_SELF?operation=53&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">c</a>\n";
!          echo "</td>\n";
!        }
         else
!        {   // C'est ouvert...
  
-          echo "<td";
-          if ($tranchehoraire->ouverture=="accès individuels")
-            echo " bgcolor=\"".COULEUR_ACCES_INDIVIDUEL."\">\n";
-          else
-            echo " bgcolor=\"".COULEUR_SESSION."\">\n";
-            echo "<a 
href=\"$PHP_SELF?operation=51&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">f</a>
 \n";
-          if ($tranchehoraire->ouverture!="accès individuels")
-            echo "<a 
href=\"$PHP_SELF?operation=52&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">i</a>
 \n";
-          else
-            echo "I \n";
-          if ($tranchehoraire->ouverture!="activités collectives")
-            echo "<a 
href=\"$PHP_SELF?operation=53&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">c</a>\n";
-          else
-            echo "C";
-          echo "</td>\n";
-        }
         $heure=date("H:i:00", strtotime("+".$unitehoraire." minutes", 
strtotime($heure)));
         mysql_free_result($res3);
--- 253,289 ----
                             AND debut<=\"$heure\" AND \"$heure\"<fin";
         $res3 = executeRequete($req3);
!        $tranchehoraire = mysql_fetch_object($res3);
! 
!        echo "<td";
!        switch ($tranchehoraire->ouverture)
         {
!        case "accès individuels" :
!          echo " bgcolor=\"".COULEUR_UTILISATION."\">\n";
!          break;
!        case "activités collectives" :
!          echo " bgcolor=\"".COULEUR_SESSIONS."\">\n";
!          break;
!        default :
!          echo " bgcolor=\"#C0C0C0\">\n";
!          break;
!        } // switch
! 
!        if (!$tranchehoraire->ouverture)
!          echo "F ";
         else
!          echo "<a 
href=\"$PHP_SELF?operation=51&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">f</a>
 \n";
! 
!        if ($tranchehoraire->ouverture=="accès individuels")
!          echo "I ";
!        else
!          echo "<a 
href=\"$PHP_SELF?operation=52&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">i</a>
 ";
! 
!        if ($tranchehoraire->ouverture=="activités collectives")
!          echo "C ";
!        else
!          echo "<a 
href=\"$PHP_SELF?operation=53&id_localisation=$id_localisation&nomjour=$nomjour&debut=$heure\">c</a>";
! 
!        echo "</td>\n";
  
         $heure=date("H:i:00", strtotime("+".$unitehoraire." minutes", 
strtotime($heure)));
         mysql_free_result($res3);
***************
*** 272,290 ****
  
    mysql_free_result($res);
- 
  }
  
  // Début du contenu de la page
  
! if($isadmin)
  {
    switch($operation)
    {
!     case 51 : // fermer un créneau
        $ouverture="";
      case 52 : // ouvrir accès individuel d'un créneau
        if (!$ouverture)
          $ouverture="accès individuels";
      case 53 : // ouvrir activité collective d'un créneau
        if (!$ouverture)
          $ouverture="activités collectives";
--- 295,328 ----
  
    mysql_free_result($res);
  }
+                           
  
  // Début du contenu de la page
  
! if(defined("HORAIRES") && HORAIRES>="10")
  {
    switch($operation)
    {
!     case 51 : // fermer un créneau 
!       if (HORAIRES<"20")
!       {
!         echo $pasledroit;
!         break;
!       }
        $ouverture="";
      case 52 : // ouvrir accès individuel d'un créneau
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        if (!$ouverture)
          $ouverture="accès individuels";
      case 53 : // ouvrir activité collective d'un créneau
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        if (!$ouverture)
          $ouverture="activités collectives";
***************
*** 401,413 ****
--- 439,471 ----
  
      case 5 :  // Affichage des modèles hebdomadaires
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        afficheModèle($id_localisation);
        break;
  
      case 11 : // fermer un créneau
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        $ouverture="";
      case 12 : // ouvrir accès individuel d'un créneau
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        if (!$ouverture)
          $ouverture="accès individuels";
      case 13 : // ouvrir activité collective d'un créneau
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        if (!$ouverture)
          $ouverture="activités collectives";
***************
*** 526,529 ****
--- 584,592 ----
  
      case 2 :  // Appliquer le modèle de calendrier pour une semaine donnée
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        // On commence par vider complètement le calendrier pour la semaine 
donnée.
        echo "<p>Vider le calendrier pour la semaine concernée...";
***************
*** 555,559 ****
--- 618,628 ----
  
      case 3 :  // Vider le calendrier pour une semaine donnée
+       if (HORAIRES<"20")
+       {
+         echo $pasledroit;
+         break;
+       }
        // On commence par vider complètement le calendrier pour la semaine 
donnée.
+       echo "<p>Vider le calendrier pour la semaine concernée...";
        $datefin=date("Y-m-d", strtotime("+6 days", strtotime($date)));
        $req="DELETE FROM calendrier WHERE date>=\"$date\" AND 
date<=\"$datefin\"
***************
*** 565,597 ****
  
      default : // liste des localisations
!         // TODO : ne présenter que les salles de la structure qui est 
identifiée en ce moment, sauf administrateur
!         $req = "SELECT ville, localisations.id AS id_localisation, structure, 
salle FROM localisations
!                           LEFT JOIN structures ON 
localisations.id_structure=structures.id ";
!         if ($isadmin!="super")
!           $req.= "WHERE id_structure=$id_structure ";
!         $req.= "ORDER BY ville, structure, salle";
!         $res = executeRequete($req);
!         echo "<table align=center border=1>
!               <tr><td colspan=5><h3 align=center>Liste des 
localisations</h3></td></tr>
!               <tr><th align=center>Ville</th><th 
align=center>Structure</th><th align=center>Salle<br>(ou groupe de 
machines)</th><th></th></tr>\n";
!         while ($local= mysql_fetch_object($res))
!         {
!            echo "<tr><td>$local->ville</td>
!                      <td>$local->structure</td>
!                      <td>$local->salle</td>
!                      <td><a 
href=\"$PHP_SELF?operation=1&id_localisation=$local->id_localisation\">calendrier</a></td>
!                      <td><a 
href=\"$PHP_SELF?operation=5&id_localisation=$local->id_localisation\">modèle 
hebdomadaire</a></td>
!                  </tr>\n";
!         }
!         echo "</table>\n";
!         break;
      }  // switch
      echo "<p>Voir la <a href=\"horaires.php\">liste des 
localisations</a>.</p>\n";
  } // if
  else
!   echo "<p>Mais, vous ne devriez pas être là. Qu'y faites-vous ?</p>\n";
  
  include("basdepage.inc.php");
  echo "</body></html>\n";
  require("footer.inc.php");
! ?>
\ No newline at end of file
--- 634,669 ----
  
      default : // liste des localisations
!       // TODO : ne présenter que les salles de la structure qui est 
identifiée en ce moment, sauf administrateur
!       $req = "SELECT ville, localisations.id AS id_localisation, structure, 
salle, id_structure
!                         FROM localisations
!                         LEFT JOIN structures ON 
localisations.id_structure=structures.id ";
!       /*if (HORAIRES<"30")
!         $req.= "WHERE id_structure=$id_structure ";*/
!       $req.= "ORDER BY ville, structure, salle";
!       $res = executeRequete($req);
!       echo "<table align=center border=1>
!             <tr><td colspan=5><h3 align=center>Liste des 
localisations</h3></td></tr>
!             <tr><th align=center>Ville</th><th align=center>Structure</th><th 
align=center>Salle<br>(ou groupe de machines)</th><th></th></tr>\n";
!       while ($local= mysql_fetch_object($res))
!       {
!         echo "<tr><td>$local->ville</td>
!                   <td>$local->structure</td>
!                   <td>$local->salle</td>\n";
!         if (HORAIRES>="30" || (HORAIRES>=20 && 
id_structure==$local->id_structure))
!           echo "<td><a 
href=\"$PHP_SELF?operation=1&id_localisation=$local->id_localisation\">calendrier</a></td>\n";
!         if (HORAIRES>"30" || (HORAIRES>=20 && 
id_structure==$local->id_structure))
!           echo "<td><a 
href=\"$PHP_SELF?operation=5&id_localisation=$local->id_localisation\">modèle 
hebdomadaire</a></td>\n";
!         echo "</tr>\n";
!       }
!       echo "</table>\n";
!       break;
      }  // switch
      echo "<p>Voir la <a href=\"horaires.php\">liste des 
localisations</a>.</p>\n";
  } // if
  else
!   echo $pasledroit;
  
  include("basdepage.inc.php");
  echo "</body></html>\n";
  require("footer.inc.php");
! ?>

Index: initiations.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/initiations.php,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** initiations.php     23 Jan 2003 22:00:51 -0000      1.5
--- initiations.php     26 Jan 2003 23:09:59 -0000      1.6
***************
*** 23,28 ****
  
  require_once("header.inc.php");
  require_once("constantes.inc.php");             // définition des constantes
! //require_once("fonctions.inc.php");              // concernant des fonctions 
transversales inclassables
  require_once("mysql.inc.php");                  // concernant mysql
  //require_once("sessions.inc.php");             // concernant les sessions et 
initiations
--- 23,34 ----
  
  require_once("header.inc.php");
+ if (!defined("FCT_PEDAGOGIE"))
+ {
+   echo $fctnonactive;
+   exit;
+ }
+ 
  require_once("constantes.inc.php");             // définition des constantes
! //require_once("fonctions.inc.php");            // concernant des fonctions 
transversales inclassables
  require_once("mysql.inc.php");                  // concernant mysql
  //require_once("sessions.inc.php");             // concernant les sessions et 
initiations
***************
*** 33,47 ****
  //require_once("dateheure.inc.php");            // concernant la manipulation 
des heures et des dates, formulaire, conversion...
  //require_once("structures.inc.php");           // concernant les structures
! require_once("initiations.inc.php");          // concernant les initiations 
et les thèmes
  //require_once("parcours.inc.php");             // concernant les parcours 
des usagers et leur positionnement
  
! ?>
! <html>
  <head>
! <title>initiations - epnadmin</title>
! <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
! <?
! $titr = "Base des initiations";
! $datemaj="22 janvier 2003";
  require("entete.inc.php");
  
--- 39,52 ----
  //require_once("dateheure.inc.php");            // concernant la manipulation 
des heures et des dates, formulaire, conversion...
  //require_once("structures.inc.php");           // concernant les structures
! require_once("initiations.inc.php");            // concernant les initiations 
et les thèmes
  //require_once("parcours.inc.php");             // concernant les parcours 
des usagers et leur positionnement
  
! echo "<html>
  <head>
! <title>$sinitiations - epnadmin</title>
! <meta http-equiv=\"Content-Type\" content=\"text/html; 
charset=iso-8859-1\">\n";
! 
! $titr = $stitreinitiations;
! $datemaj="26 janvier 2003";
  require("entete.inc.php");
  
***************
*** 56,63 ****
     }
     $mes="";
!    if ($id_theme=="") $mes.="Tu n'as pas choisi de thème.<br>";
!    if ($initiation=="") $mes.="Tu dois donner un nom à l'initiation.<br>";
!    if ($niveau=="") $mes.="Tu n'as pas indiqué le niveau de 
l'initiation.<br>";
!    if ($duree=="") $mes.="Tu n'as pas indiqué la duree.<br>";
     if ($mes!="")
        echo "<p>$mes</p>";
--- 61,68 ----
     }
     $mes="";
!    if ($id_theme=="") $mes.=$spaschoisitheme;
!    if ($initiation=="") $mes.=$spasnominitiation;
!    if ($niveau=="") $mes.=$spasniveau;
!    if ($duree=="") $mes.=$spasduree;
     if ($mes!="")
        echo "<p>$mes</p>";
***************
*** 82,86 ****
        if (!$id_initiation)
        {
!          echo "<p>Enregistrement de la nouvelle initiation.</p>\n";
           $req = "INSERT INTO initiations "
                . "(id_theme, initiation, niveau, objectifs, moyen_evaluation, 
prerequis,
--- 87,91 ----
        if (!$id_initiation)
        {
!          echo $senrnouvinitiation;
           $req = "INSERT INTO initiations "
                . "(id_theme, initiation, niveau, objectifs, moyen_evaluation, 
prerequis,
***************
*** 100,104 ****
        else
        { // C'est une mise à jour de l'enregistrement.
!          echo "<p>Mise à jour de l'enregistrement</p>\n";
           $req = "UPDATE initiations SET id_theme=\"$id_theme\", 
initiation=\"$initiation\", niveau=\"$niveau\",
                    objectifs=\"$objectifs\", 
moyen_evaluation=\"$moyen_evaluation\", prerequis=\"$prerequis\",
--- 105,109 ----
        else
        { // C'est une mise à jour de l'enregistrement.
!          echo $smiseajourenr;
           $req = "UPDATE initiations SET id_theme=\"$id_theme\", 
initiation=\"$initiation\", niveau=\"$niveau\",
                    objectifs=\"$objectifs\", 
moyen_evaluation=\"$moyen_evaluation\", prerequis=\"$prerequis\",
***************
*** 146,150 ****
             <table border=\"1\" align=\"center\">
               <tr>
!                <td>Th&egrave;me :
                   <select name=\"id_theme\">\n";
     if ($id_theme)
--- 151,155 ----
             <table border=\"1\" align=\"center\">
               <tr>
!                <td>$stheme :
                   <select name=\"id_theme\">\n";
     if ($id_theme)
***************
*** 164,194 ****
                 </td>
                 <td rowspan=\"2\">
!                  <div align=\"center\">Intitul&eacute; :<br>
                     <textarea name=\"initiation\" cols=\"40\" 
rows=\"2\">$initiation</textarea>
                   </div>
                 </td>
               </tr>
!              <tr> 
!                <td>Niveau : 
                   <select name=\"niveau\" size=\"1\">
                     <option value=\"d&eacute;butant(e)\"";
     if ($niveau=="débutant(e)") echo " SELECTED";
!    echo ">d&eacute;butant(e)</option>
                     <option value=\"initi&eacute;(e)\"";
     if ($niveau=="initié(e)") echo " SELECTED";
!    echo ">initi&eacute;(e)</option>
                     <option value=\"avanc&eacute;(e)\"";
     if ($niveau=="avancé(e)") echo " SELECTED";
!    echo ">avanc&eacute;(e)</option>
                   </select>
                 </td>
               </tr>
               <tr>
!                <td> 
!                  <div align=\"center\">Objectifs :<br>
                     <textarea name=\"objectifs\" rows=\"8\" 
cols=\"40\">$objectifs</textarea>
                   </div>
                 </td>
!                <td> 
                   <p align=\"center\">Moyens d'&eacute;valuation :<br>
                     <textarea name=\"moyen_evaluation\" rows=\"8\" 
cols=\"40\">$moyen_evaluation</textarea>
--- 169,199 ----
                 </td>
                 <td rowspan=\"2\">
!                  <div align=\"center\">$sintitule :<br>
                     <textarea name=\"initiation\" cols=\"40\" 
rows=\"2\">$initiation</textarea>
                   </div>
                 </td>
               </tr>
!              <tr>
!                <td>$sniveau :
                   <select name=\"niveau\" size=\"1\">
                     <option value=\"d&eacute;butant(e)\"";
     if ($niveau=="débutant(e)") echo " SELECTED";
!    echo ">$sdebutant</option>
                     <option value=\"initi&eacute;(e)\"";
     if ($niveau=="initié(e)") echo " SELECTED";
!    echo ">$sinitie</option>
                     <option value=\"avanc&eacute;(e)\"";
     if ($niveau=="avancé(e)") echo " SELECTED";
!    echo ">$savance</option>
                   </select>
                 </td>
               </tr>
               <tr>
!                <td>
!                  <div align=\"center\">$sobjectifs :<br>
                     <textarea name=\"objectifs\" rows=\"8\" 
cols=\"40\">$objectifs</textarea>
                   </div>
                 </td>
!                <td>
                   <p align=\"center\">Moyens d'&eacute;valuation :<br>
                     <textarea name=\"moyen_evaluation\" rows=\"8\" 
cols=\"40\">$moyen_evaluation</textarea>
***************
*** 196,202 ****
                 </td>
               </tr>
!              <tr> 
!                <td> 
!                  <div align=\"center\">Initiations pr&eacute;requises :<br>
                     <select name=\"prerequis[]\" size=\"5\" multiple>\n";
     if (!$prerequis | $prerequis=="") $prerequis="0";
--- 201,207 ----
                 </td>
               </tr>
!              <tr>
!                <td>
!                  <div align=\"center\">$sinitprerequis :<br>
                     <select name=\"prerequis[]\" size=\"5\" multiple>\n";
     if (!$prerequis | $prerequis=="") $prerequis="0";
***************
*** 212,217 ****
                   </div>
                 </td>
!                <td> 
!                  <div align=\"center\">Prolongements :<br>
                     <select name=\"prolongements[]\" size=\"5\" multiple>\n";
     if (!$prolongements | $prolongements=="") $prolongements="0";
--- 217,222 ----
                   </div>
                 </td>
!                <td>
!                  <div align=\"center\">$sprolongements :<br>
                     <select name=\"prolongements[]\" size=\"5\" multiple>\n";
     if (!$prolongements | $prolongements=="") $prolongements="0";
***************
*** 231,243 ****
               </tr>
               <tr>
!                <td>Dur&eacute;e (hh:mm) :
                   <input type=\"text\" name=\"duree\" size=\"10\" 
maxlength=\"9\" value=\"$duree\">
                 </td>
!                <td>Nombre maximum de participants : 
                   <input type=\"text\" name=\"nbmaxparticipants\" size=\"5\" 
maxlength=\"2\" value=\"$nbmaxparticipants\">
                 </td>
               </tr>
!              <tr> 
!                <td> 
                   <div align=\"center\">Contenu / d&eacute;roulement :<br>
                     <textarea name=\"contenu\" cols=\"40\" 
rows=\"8\">$contenu</textarea>
--- 236,248 ----
               </tr>
               <tr>
!                <td>$sduree :
                   <input type=\"text\" name=\"duree\" size=\"10\" 
maxlength=\"9\" value=\"$duree\">
                 </td>
!                <td>$snbmaxpart :
                   <input type=\"text\" name=\"nbmaxparticipants\" size=\"5\" 
maxlength=\"2\" value=\"$nbmaxparticipants\">
                 </td>
               </tr>
!              <tr>
!                <td>
                   <div align=\"center\">Contenu / d&eacute;roulement :<br>
                     <textarea name=\"contenu\" cols=\"40\" 
rows=\"8\">$contenu</textarea>
***************
*** 249,254 ****
                 </td>
               </tr>
!              <tr> 
!                <td> 
                   <div align=\"center\">R&ocirc;les du formateur :<br>
                     <textarea name=\"role_formateur\" cols=\"40\" 
rows=\"8\">$role_formateur</textarea>
--- 254,259 ----
                 </td>
               </tr>
!              <tr>
!                <td>
                   <div align=\"center\">R&ocirc;les du formateur :<br>
                     <textarea name=\"role_formateur\" cols=\"40\" 
rows=\"8\">$role_formateur</textarea>
***************
*** 295,306 ****
     if (!defined("PEDAGOGIE") || PEDAGOGIE<"40")
     {
!       echo "<p>C'est une erreur, ou c'est volontaire...</p>\n";
        break;
     }
!    echo "<p>Attention, tu vas supprimer une initiation. C'est très dangereux 
!</p>\n";
     $res = recherche("parcours", "id_initiation", $id_initiation);
     if (mysql_fetch_object($res))
!      echo "<p>Des usagers ont cette initiation dans leur parcours. Mieux vaut 
la laisser même si elle ne sert pas souvent (comme ça les statistiques ne sont 
pas fausses).</p>\n";
!    echo "<p><a 
href=\"initiations.php?operation=31&id_initiation=$id_initiation&$idu\">Confirmer
 tout de même la suppression. Non mais !</a></p>\n";
     break;
  
--- 300,311 ----
     if (!defined("PEDAGOGIE") || PEDAGOGIE<"40")
     {
!       echo $pasledroit;
        break;
     }
!    echo $sattentionsupprinit;
     $res = recherche("parcours", "id_initiation", $id_initiation);
     if (mysql_fetch_object($res))
!      echo $sattentioninitsert;
!    printf($sconfirmerquandmeme, 
"initiations.php?operation=31&id_initiation=$id_initiation");
     break;
  
***************
*** 311,319 ****
        break;
     }
!    echo "<p>L'initiation est supprimée. Snif !</p>\n";
     $req = "DELETE FROM initiations WHERE id=$id_initiation";
     $res = executeRequete($req);
-    //echo "<p><a 
href=\"?operation=2&id_initiation=$initiation->id&$idu\">Modifier</a></p>\n";
-    //echo "<p><a 
href=\"?operation=3&id_initiation=$initiation->id&$idu\">Supprimer</a></p>\n";
     break;
  
--- 316,322 ----
        break;
     }
!    echo $sinitsuppr;
     $req = "DELETE FROM initiations WHERE id=$id_initiation";
     $res = executeRequete($req);
     break;
  
***************
*** 347,358 ****
              if (PEDAGOGIE>="40")
                echo "<td width=21><a 
href=\"initiations.php?operation=3&id_initiation=$initiation->id&$idu\">$supprimer</a></td>\n";
!             echo "<td width=21><a 
href=\"questions.php?id_initiation=$initiation->id&$idu\">Questions</a></td>\n";
              $aucun=false;
              echo "</tr>\n";
           }
           if ($aucun)
!          {
!                  echo "<tr><td colspan=5>Il n'y a pas d'initiations 
disponibles.</td></tr>\n";
!          }
           echo "</table></td></tr>\n";
        }
--- 350,359 ----
              if (PEDAGOGIE>="40")
                echo "<td width=21><a 
href=\"initiations.php?operation=3&id_initiation=$initiation->id&$idu\">$supprimer</a></td>\n";
!             echo "<td width=21><a 
href=\"questions.php?id_initiation=$initiation->id&$idu\">$sQuestions</a></td>\n";
              $aucun=false;
              echo "</tr>\n";
           }
           if ($aucun)
!            echo "<tr><td colspan=5>$spasdinit</td></tr>\n";
           echo "</table></td></tr>\n";
        }
***************
*** 364,380 ****
  
  default : // affichage détails
!    if ($id_initiation)
!    {
!      afficheInitiation($id_initiation);
!      echo "<table align=center border=1><tr>\n";
!      if (defined("PEDAGOGIE") && PEDAGOGIE>="40")
!        echo "<td width=21><a 
href=\"initiations.php?operation=2&id_initiation=$id_initiation&$idu\">$modifier</a></td>
!              <td width=21><a 
href=\"initiations.php?operation=3&id_initiation=$id_initiation&$idu\">$supprimer</a></td>\n";
!      echo "<td width=21><a 
href=\"questions.php?id_initiation=$id_initiation&$idu\">Questions</a></td>
!              </tr></table>\n";
! }
!    else
!       echo "<p>Que faites-vous là, vous ne devriez pas vous y trouver 
!</p>\n";
!    break;
  
  } // switch
--- 365,381 ----
  
  default : // affichage détails
!   if ($id_initiation)
!   {
!     afficheInitiation($id_initiation);
!     echo "<table align=center border=1><tr>\n";
!     if (defined("PEDAGOGIE") && PEDAGOGIE>="40")
!       echo "<td width=21><a 
href=\"initiations.php?operation=2&id_initiation=$id_initiation\">$modifier</a></td>
!             <td width=21><a 
href=\"initiations.php?operation=3&id_initiation=$id_initiation\">$supprimer</a></td>\n";
!     echo "<td width=21><a 
href=\"questions.php?id_initiation=$id_initiation\">$sQuestions</a></td>
!             </tr></table>\n";
!   }
!   else
!     echo $pasledroit;
!   break;
  
  } // switch
***************
*** 383,389 ****
  {
    if (PEDAGOGIE>"10")
!     echo "<p><a href=\"initiations.php?operation=1&$idu\">Ajouter une 
nouvelle initiation</a>.</p>\n";
    if (PEDAGOGIE>"00")
!     echo "<p><a href=\"initiations.php?operation=5&$idu\">Voir la liste des 
initiations</a>.</p>\n";
  }
  else
--- 384,390 ----
  {
    if (PEDAGOGIE>"10")
!     echo "<p><a href=\"initiations.php?operation=1\">$sajoutinit</a>.</p>\n";
    if (PEDAGOGIE>"00")
!     echo "<p><a 
href=\"initiations.php?operation=5\">$svoirlisteinit</a>.</p>\n";
  }
  else

Index: questions.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/questions.php,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** questions.php       5 Jan 2003 20:34:01 -0000       1.3
--- questions.php       26 Jan 2003 23:09:59 -0000      1.4
***************
*** 23,26 ****
--- 23,31 ----
  
  require_once("header.inc.php");
+ if (!defined("FCT_PEDAGOGIE"))
+ {
+   echo $fctnonactive;
+   exit;
+ }
  //require_once("constantes.inc.php");             // définition des constantes
  //require_once("fonctions.inc.php");              // concernant des fonctions 
transversales inclassables
***************
*** 36,175 ****
  //require_once("parcours.inc.php");             // concernant les parcours 
des usagers et leur positionnement
  
! ?>
! <html>
! <head>
! <title>questions - epnadmin</title>
! <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
! <?
! $titr = "Base des questions d'autoévaluation";
! $datemaj="5 janvier 2003";
  require("entete.inc.php");
  
! if (!$isadmin)
! {
!    echo "<p>Cet écran est réservé aux administrateurs</p>\n";
!    echo "<p><a href=\"/\">Retour au bercail.</a>.</p>\n";
  }
! else
  {
!    switch ($operation)
!    {
!    case 11 : // confirmation d'ajout ou mise à jour
!    case 21 :
!       $mes="";
!       if ($id_initiation=="") $mes.="Problème, l'initiation n'est pas 
choisie.<br>";
!       if ($question=="") $mes.="Tu dois donner un question, sinon, vraiment, 
ça sert à rien.<br>";
!       if ($mes!="")
!          echo "<p>$mes</p>";
!       else
        {
!          if (!$id_question)
!          {
!             echo "<p>Enregistrement de la nouvelle question.</p>\n";
!             $req = "INSERT INTO questions "
!                  . "(id_initiation, question, url_aide) "
!                  . "VALUES "
!                  . "(\"$id_initiation\", \"$question\", \"$url_aide\")";
!             $res = executeRequete($req);
!          }
!          else
!          { // C'est une mise à jour de l'enregistrement.
!             echo "<p>Mise à jour de l'enregistrement</p>\n";
!             $req = "UPDATE questions SET question=\"$question\", 
url_aide=\"$url_aide\"";
!             $req .= " WHERE id = \"$id_question\"";
!             $res = executeRequete($req);
!          }
!          if (!$id_question)
!             echo "<p><a 
href=\"questions.php?operation=1&id_initiation=$id_initiation&$idu\">$ajouter 
Ajouter une autre question.</p>\n";
!          break; // tout c'est bien passé
        }
!       // pas de break si jamais il y avait besoin d'une nouvelle saisie.
! 
!    case 2 : // formulaire d'édition
!       // Saisie pour modification d'un enregistrement
!       $res = recherche("questions", "id", $id_question);
!       if ($question = mysql_fetch_array($res))
!          extract($question);
!       // pas de break, on enchaîne avec le formulaire d'édition
! 
!    case 1 : // formulaire d'ajout
!    // Début du fomulaire de saisie d'enregistrement de logiciels
!       if (!$id_initiation)
!       {
!          echo "<p>Problème, l'initiation n'est pas définie</p>\n";
!          break;
        }
! 
!       echo "<form method=\"post\" action=\"\" name=\"edition\">\n";
!       echo "<input type=\"hidden\" name=\"id_initiation\" 
value=\"$id_initiation\">\n";
!       if ($id_question)
!          echo "<input type=\"hidden\" name=\"id_question\" 
value=\"$id_question\">\n";
!       echo "  <input type=\"hidden\" name=\"operation\" value=\"21\">
!               <table border=\"1\" align=\"center\">
!                 <tr>
!                   <td>Question :</td><td>
!                       <textarea name=\"question\" rows=\"3\" 
cols=\"60\">$question</textarea>
!                   </td>
!                   </tr><tr>
!                   <td>Lien pour aider :</td><td>
!                       <input type=\"text\" name=\"url_aide\" 
value=\"$url_aide\" size=\"60\">
!                   </td>
!                 </tr>
!                 <tr>
!                   <td colspan=\"2\">
!                     <div align=\"center\">
!                       <input type=\"submit\" name=\"Envoyer\" value=\"Envoyer 
les informations\">
!                     </div>
!                   </td>
!                 </tr>
!               </table>
!             </form>\n";
!       // Fin du formulaire de saisie.
!       break;
! 
!    case 3 : // formulaire de suppression
!       echo "<p>Attention, tu vas supprimer une question.</p>\n";
!       echo "<p><a 
href=\"questions.php?operation=31&id_initiation=$id_initiation&id_question=$id_question&$idu\">Confirmer
 tout de même la suppression. Non mais !</a></p>\n";
!       break;
! 
!    case 31 : // confirmation de suppression
!       echo "<p>La question est supprimée. Snif !</p>\n";
!       $req = "DELETE FROM questions WHERE id=$id_question";
!       $res = executeRequete($req);
        break;
  
!    default : // affichage la liste des questions
!       if ($id_initiation)
        {
!          afficheInitiation($id_initiation, "REDUIT");
!          echo "<table border=1 align=center>
!                <tr><th>Question</th><th>Lien vers de l'aide</th><th 
colspan=2>actions</th></tr>\n";
!          $req="SELECT * FROM questions WHERE id_initiation=$id_initiation 
ORDER BY id";
!          $res=executeRequete($req);
!          while ($question=mysql_fetch_object($res))
!          {
!             echo "<tr>";
!             echo "<td><b>$question->question</b></td>\n";
!             echo "<td><a target=\"aide\" 
href=\"$question->url_aide\">$question->url_aide</a></b></td>\n";
              echo "<td width=21><a 
href=\"questions.php?operation=2&id_initiation=$id_initiation&id_question=$question->id\">$modifier</a></td>\n";
              echo "<td width=21><a 
href=\"questions.php?operation=3&id_initiation=$id_initiation&id_question=$question->id\">$supprimer</a></td>\n";
!             $aucun=false;
!             echo "</tr>\n";
!          }
!          if ($aucun)
!          {
!                  echo "<tr><td colspan=5>Il n'y a pas d'initiations 
disponibles.</td></tr>\n";
!          }
!          echo "<tr><td></td><td></td><td><a 
href=\"questions.php?operation=1&id_initiation=$id_initiation\">$ajouter</a></td><td></td>
!                </table></td></tr>\n";
        }
!       break;
! 
!    } // switch
! 
!    if ($id_initiation)
!       echo "<p><a 
href=\"questions.php?id_initiation=$id_initiation&$idu\">Voir la liste des 
questions de l'initiation</a>.</p>\n";
!    echo "<p><a href=\"initiations.php?operation=5&$idu\">Voir la liste des 
initiations</a>.</p>\n";
! }
  
  require("basdepage.inc.php");
--- 41,210 ----
  //require_once("parcours.inc.php");             // concernant les parcours 
des usagers et leur positionnement
  
! echo "<html><head>
! <title>$questions - epnadmin</title>
! <meta http-equiv=\"Content-Type\" content=\"text/html; 
charset=iso-8859-1\">\n";
! 
! $titr = $titrequestions;
! $datemaj="25 janvier 2003";
  require("entete.inc.php");
  
! if (!defined("PEDAGOGIE"))
! {      
!   echo $pasledroit;
!   exit;
  }
! 
! switch ($operation)
  {
! case 11 : // confirmation d'ajout ou mise à jour
! case 21 :
!     if (PEDAGOGIE<="10")
!     {
!       echo $pasledroit;
!       break;
!     }
!     $mes="";
!     if ($id_initiation=="") $mes.="Problème, l'initiation n'est pas 
choisie.<br>";
!     if ($question=="") $mes.="Tu dois donner un question, sinon, vraiment, ça 
sert à rien.<br>";
!     if ($mes!="")
!       echo "<p>$mes</p>";
!     else
!     {
!       if (!$id_question)
        {
!           echo "<p>Enregistrement de la nouvelle question.</p>\n";
!           $req = "INSERT INTO questions "
!               . "(id_initiation, question, url_aide) "
!               . "VALUES "
!               . "(\"$id_initiation\", \"$question\", \"$url_aide\")";
!           $res = executeRequete($req);
        }
!       else
!       { // C'est une mise à jour de l'enregistrement.
!           echo "<p>Mise à jour de l'enregistrement</p>\n";
!           $req = "UPDATE questions SET question=\"$question\", 
url_aide=\"$url_aide\"";
!           $req .= " WHERE id = \"$id_question\"";
!           $res = executeRequete($req);
        }
!       if (!$id_question)
!           echo "<p><a 
href=\"questions.php?operation=1&id_initiation=$id_initiation&$idu\">$ajouter 
Ajouter une autre question.</p>\n";
!       break; // tout c'est bien passé
!     }
!     // pas de break si jamais il y avait besoin d'une nouvelle saisie.
! 
! case 2 : // formulaire d'édition
!     if (PEDAGOGIE<="10")
!     {
!       echo $pasledroit;
        break;
+     }
+     // Saisie pour modification d'un enregistrement
+     $res = recherche("questions", "id", $id_question);
+     if ($question = mysql_fetch_array($res))
+       extract($question);
+     // pas de break, on enchaîne avec le formulaire d'édition
+ 
+ case 1 : // formulaire d'ajout
+     if (PEDAGOGIE<="10")
+     {
+       echo $pasledroit;
+       break;
+     }
+ // Début du fomulaire de saisie d'enregistrement de logiciels
+     if (!$id_initiation)
+     {
+       echo "<p>Problème, l'initiation n'est pas définie</p>\n";
+       break;
+     }
  
!     echo "<form method=\"post\" action=\"\" name=\"edition\">\n";
!     echo "<input type=\"hidden\" name=\"id_initiation\" 
value=\"$id_initiation\">\n";
!     if ($id_question)
!       echo "<input type=\"hidden\" name=\"id_question\" 
value=\"$id_question\">\n";
!     echo "  <input type=\"hidden\" name=\"operation\" value=\"21\">
!             <table border=\"1\" align=\"center\">
!               <tr>
!                 <td>Question :</td><td>
!                     <textarea name=\"question\" rows=\"3\" 
cols=\"60\">$question</textarea>
!                 </td>
!                 </tr><tr>
!                 <td>Lien pour aider :</td><td>
!                     <input type=\"text\" name=\"url_aide\" 
value=\"$url_aide\" size=\"60\">
!                 </td>
!               </tr>
!               <tr>
!                 <td colspan=\"2\">
!                   <div align=\"center\">
!                     <input type=\"submit\" name=\"Envoyer\" value=\"Envoyer 
les informations\">
!                   </div>
!                 </td>
!               </tr>
!             </table>
!           </form>\n";
!     // Fin du formulaire de saisie.
!     break;
! 
! case 3 : // formulaire de suppression
!     if (PEDAGOGIE<"40")
!     {
!       echo $pasledroit;
!       break;
!     }
!     echo "<p>Attention, tu vas supprimer une question.</p>\n";
!     echo "<p><a 
href=\"questions.php?operation=31&id_initiation=$id_initiation&id_question=$id_question&$idu\">Confirmer
 tout de même la suppression. Non mais !</a></p>\n";
!     break;
! 
! case 31 : // confirmation de suppression
!     if (PEDAGOGIE<"40")
!     {
!       echo $pasledroit;
!       break;
!     }
!     echo "<p>La question est supprimée. Snif !</p>\n";
!     $req = "DELETE FROM questions WHERE id=$id_question";
!     $res = executeRequete($req);
!     break;
! 
! default : // affichage la liste des questions
!     if (PEDAGOGIE<"10")
!     {
!       echo $pasledroit;
!       break;
!     }
!     if ($id_initiation)
!     {
!       afficheInitiation($id_initiation, "REDUIT");
!       echo "<table border=1 align=center>
!             <tr><th>Question</th><th>Lien vers de l'aide</th><th 
colspan=2>actions</th></tr>\n";
!       $req="SELECT * FROM questions WHERE id_initiation=$id_initiation ORDER 
BY id";
!       $res=executeRequete($req);
!       while ($question=mysql_fetch_object($res))
        {
!           echo "<tr>";
!           echo "<td><b>$question->question</b></td>\n";
!           echo "<td><a target=\"aide\" 
href=\"$question->url_aide\">$question->url_aide</a></b></td>\n";
!           if (PEDAGOGIE>="20")
              echo "<td width=21><a 
href=\"questions.php?operation=2&id_initiation=$id_initiation&id_question=$question->id\">$modifier</a></td>\n";
+           if (PEDAGOGIE>="40")
              echo "<td width=21><a 
href=\"questions.php?operation=3&id_initiation=$id_initiation&id_question=$question->id\">$supprimer</a></td>\n";
!           $aucun=false;
!           echo "</tr>\n";
        }
!       if ($aucun)
!       {
!               echo "<tr><td colspan=5>Il n'y a pas d'initiations 
disponibles.</td></tr>\n";
!       }
!       if (PEDAGOGIE>="20")
!         echo "<tr><td></td><td></td><td><a 
href=\"questions.php?operation=1&id_initiation=$id_initiation\">$ajouter</a></td><td></td>\n";
!       echo "</table></td></tr>\n";
!     }
!     break;
! 
! } // switch
! 
! if (($id_initiation) && PEDAGOGIE>="10")
!     echo "<p><a href=\"questions.php?id_initiation=$id_initiation&$idu\">Voir 
la liste des questions de l'initiation</a>.</p>\n";
! if (defined("PEDAGOGIE") && PEDAGOGIE>="10")
!   echo "<p><a href=\"initiations.php?operation=5&$idu\">Voir la liste des 
initiations</a>.</p>\n";
  
  require("basdepage.inc.php");

Index: themes.php
===================================================================
RCS file: /cvsroot/epnadmin/epnadmin/themes.php,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** themes.php  23 Jan 2003 22:00:51 -0000      1.4
--- themes.php  26 Jan 2003 23:09:59 -0000      1.5
***************
*** 23,26 ****
--- 23,32 ----
  
  require_once("header.inc.php");
+ if (!defined("FCT_THEME"))
+ {
+   echo $fctnonactive;
+   exit;
+ }
+ 
  require_once("constantes.inc.php");             // définition des constantes
  //require_once("fonctions.inc.php");              // concernant des fonctions 
transversales inclassables
***************
*** 46,54 ****
  
  // Début du contenu de la page
! if (defined("PEDAGOGIE") && PEDAGOGIE>="10")
  {
    switch($operation)
    {
      case 3 : // Confirmation d'effacement
          $res = recherche("initiations", "id_theme", $id_theme);
          if (mysql_fetch_object($res))
--- 52,65 ----
  
  // Début du contenu de la page
! if (defined("THEME") && THEME>="10")
  {
    switch($operation)
    {
      case 3 : // Confirmation d'effacement
+         if (!defined("THEME") || THEME<"40")
+         {
+           echo $pasledroit;
+           break;
+         }
          $res = recherche("initiations", "id_theme", $id_theme);
          if (mysql_fetch_object($res))
***************
*** 70,73 ****
--- 81,89 ----
          break;
      case 31:  // Efface final
+         if (!defined("THEME") || THEME<"40")
+         {
+           echo $pasledroit;
+           break;
+         }
          $query = "DELETE FROM themes WHERE id='$id_theme'";
          $result = executeRequete($query);
***************
*** 76,79 ****
--- 92,100 ----
  
      case 2:   // Formulaire modification
+         if (!defined("THEME") || THEME<"20")
+         {
+           echo $pasledroit;
+           break;
+         }
          $query = "SELECT * FROM themes WHERE id='$id_theme'";
          $result = executeRequete($query);
***************
*** 87,90 ****
--- 108,116 ----
  
      case 1:  // Ajoute d'une nouvelle session
+         if (!defined("THEME") || THEME<"20")
+         {
+           echo $pasledroit;
+           break;
+         }
         if (!$operations) $operations=11;
         echo "<table align=center border=1>
***************
*** 102,111 ****
--- 128,148 ----
  
      case 11:  // Ajout final
+         if (!defined("THEME") || THEME<"20")
+         {
+           echo $pasledroit;
+           break;
+         }
          $query = "INSERT INTO themes (theme, commentaire, url_image) VALUES 
(\"$theme\", \"$commentaire\", \"$url_image\")";
          if ($result = executeRequete($query))
             echo "<p>Thème ajouté.</p>";
+ 
          break;
  
      case 21:  // Modif final
+         if (!defined("THEME") || THEME<"20")
+         {
+           echo $pasledroit;
+           break;
+         }
          $query = "UPDATE themes SET theme=\"$theme\", 
commentaire=\"$commentaire\", url_image=\"$url_image\" WHERE id='$id_theme'";
          if ($result = executeRequete($query))
***************
*** 120,128 ****
          while ($u= mysql_fetch_object($res))
          {
!            echo 
"<tr><td><b>$u->theme</b></td><td>".nl2br($u->commentaire)."</td><td><img 
src=\"$u->url_image\" height=\"30\"></td>
!                  <td><a 
href=\"?operation=2&id_theme=$u->id&$idu\">$modifier</a></td>
!                  <td><a 
href=\"?operation=3&id_theme=$u->id&$idu\">$supprimer</a></td></tr>\n";
          }
!         echo "<tr><td colspan=5 align=right><a 
href=\"?operation=1&$idu\">$ajouter</a></td></tr>\n";
          echo "</table>\n";
          break;
--- 157,169 ----
          while ($u= mysql_fetch_object($res))
          {
!            echo 
"<tr><td><b>$u->theme</b></td><td>".nl2br($u->commentaire)."</td>
!                      <td><img src=\"$u->url_image\" height=\"30\"></td>\n";
!           if (defined("THEME") && THEME>="20")
!             echo "<td><a 
href=\"?operation=2&id_theme=$u->id&$idu\">$modifier</a></td>\n";
!           if (defined("THEME") && THEME>="40")
!             echo "<td><a 
href=\"?operation=3&id_theme=$u->id&$idu\">$supprimer</a></td></tr>\n";
          }
!         if (defined("THEME") && THEME>="20")
!           echo "<tr><td colspan=5 align=right><a 
href=\"?operation=1&$idu\">$ajouter</a></td></tr>\n";
          echo "</table>\n";
          break;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]