<?php
/*
Copyright (C) 2003 Vincent Vairelle Ville de Dijon, Loc Dayot - Mairie de Pierrefitte (93)
EPNadmin - Version 0.7
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
http://epnadmin.pierrefitte93.fr/
*/
require_once("header.inc.php");
require_once("constantes.inc.php"); // dfinition des constantes
if (! defined("FCT_ANIMATEURS"))
{
echo $fctnonactive;
exit;
}
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
require_once("animateurs.inc.php"); // concernant la gestion des animateurs
require_once("reservations.inc.php"); // concernant les rservations des postes en accs individuel par des animateurs
//require_once("tableaux.inc.php"); // Concernant l'affichage transpos d'un tableau
//require_once("siteweb.inc.php"); // concernant les pages perso des animateurs et les sites web des structures
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 thmes
require_once("parcours.inc.php"); // concernant les parcours des animateurs et leur positionnement
$ptitr=$sanimateurs;
$titr = $is_ident=="animateur" ? $sanimateurtitre1 : $sanimateurtitre2;
$datemaj="25 juillet 2003";
define("COULEUR", COULEUR_ANIMATEURS);
require("entete.inc.php");
// Formulaire d'dition d'un animateur
function form_nouvel_animateur($operation=0)
{
global $sanimateurnouv1,$sNom,$sPrenom,$sconfirmer;
echo "<form name=\"form_nouvel_animateur\" action=\"animateur.php\">";
echo "<input type=\"hidden\" name=\"operation\" value=\"$operation\">
<table border=\"1\" align=\"center\">
<tr><td>$sPrenom : </td>
<td><input type=\"text\" name=\"prenom\" value=\"\" tabindex=1></td>
<td>$sNom :</td>
<td><input type=\"text\" name=\"nom\" value=\"\" tabindex=2></td></tr>";
echo "<tr><td colspan=4 align=center>
<input type=\"submit\" name=\"Modifier\" value=\"$sconfirmer\"></td></tr>
</table>
</form>\n";
}
// Formulaire d'dition d'un animateur
function form_animateur($id_animateur, $operation=0, $nom="", $prenom="", $login="")
{
global $tarifs, $PHP_SELF, $id_structure,
$sNom,$sPrenom,$sconfirmer,$sinchangeable,$sMotdepasse,$slemodifier,
$sAdresse,$sTelephones,$sIdentifiant,$sCourrieldefaut, $sVille,$smasculin,$sfeminin,
$sDatedenaissance,$sSexe,$sStructuredeprovenance,$scommentaireanimateur,
$starif,$sanimateurcarteimprimee,$sanimateurcarteprete,$sanimateurcarteattente,$sanimateurcarte,
$sheurereservable,$saccesindividuel,$sactivcollectives,
$sheurecredit,$sdepartabonnement,$sfinabonnement,$scommentairecredit,
$sconfirmer;
// on retrouve les informations personnelles
$res=recherche("animateurs", "id", $id_animateur);
$animateur=fetch_object($res); // si l'animateur est inconnu, ce sera un formulaire vide
// on retrouve les information de crdits d'heures et abonnements
/* $res=recherche("credits", "id_animateur", $id_animateur);
$credit=$res->fetchrow(DB_FETCHMODE_OBJECT); // si l'animateur est inconnu, ce sera un formulaire vide*/
echo "<form name=\"form_animateur\" action=\"animateur.php\">\n";
if ($animateur)
echo "<input type=\"hidden\" name=\"id_animateur\" value=\"$id_animateur\">\n";
echo "<input type=\"hidden\" name=\"operation\" value=\"$operation\">\n
<table border=\"1\" align=\"center\">\n
<tr><td>$sPrenom : </td>\n
<td><input tabindex=1 type=\"text\" name=\"prenom\" value=\"$animateur->prenom$prenom\"></td>\n
<td>$sNom :</td>\n
<td><input tabindex=2 type=\"text\" name=\"nom\" value=\"$animateur->nom$nom\"></td>\n
</tr>\n
<tr><td>$sIdentifiant :<br></td>\n
<td>";
if ($animateur)
echo "$animateur->login ($sinchangeable)";
else
echo "<input tabindex=3 type=\"text\" name=\"login\" value=\"$login\">";
echo "</td>\n";
if (!$animateur)
echo "<td>$sMotdepasse :
<br>$sMotdepasse (2) :</td>\n
<td><input tabindex=4 type=\"password\" name=\"motdepasse\" value=\"$animateur->motdepasse\" tabindex=1>
<br><input tabindex=5 type=\"password\" name=\"motdepasse2\" value=\"$animateur->motdepasse\">
</td>\n";
else
echo "<td>$sMotdepasse :</td>
<td><a href=\"$PHP_SELF?id_animateur=$id_animateur&operation=6\">$slemodifier</a></td>\n";
echo "</tr>
<tr><td>$sAdresse :</td>
<td><textarea tabindex=6 name=\"adresse\" cols=\"30\" rows=\"2\">$animateur->adresse</textarea></td>
<td>$sTelephones : </td>
<td><input tabindex=8 type=\"text\" name=\"telephone\" value=\"$animateur->telephone\"></td></tr>
<tr><td>$sVille</td>
<td><input tabindex=7 type=\"text\" name=\"ville\" value=\"$animateur->ville\"></td>
<td>$sCourrieldefaut</b></td>
<td><input tabindex=9 type=\"text\" name=\"courriel\" value=\"$animateur->courriel\"></td>
</tr><tr>
<td>$sDatedenaissance : </td>
<td>";
choixDate($animateur->naissance, "naissance", TRUE);
echo "<td>$sSexe :</td><td>
<select name='sexe'>
<option></option>
<option value='f'";
if ($animateur->sexe=='f') echo " selected";
echo ">$sfeminin</option>
<option value='m'";
if ($animateur->sexe=='m') echo " selected";
echo ">$smasculin</option>
</select>";
echo " </td></tr><tr>
<td>$sStructuredeprovenance :</td>
<td>";
choix_structure($animateur->id_structure, "id_structure", "");
echo "</td></tr>";
echo "<tr><td>$scommentaireanimateur :</td>
<td colspan=3><textarea name=\"commentaire\" rows=\"5\" cols=\"60\">$animateur->commentaire</textarea></td></tr>\n";
// Ici commence les informations sur les crdits
// Nota : version 0.5 - Les crdits sont dans une autre table
echo "<tr>";
// tat de la carte d'animateur
echo "<td rowspan=2>$sanimateurcarte :</td>
<td rowspan=2><input tabindex=11 type=\"radio\" name=\"carte\" value=\"attente\"";
if ($credit->carte=="attente" | !$credit->carte) echo " checked";
echo ">$sanimateurcarteattente</input><br>
<input type=\"radio\" name=\"carte\" value=\"prte\"";
if ($credit->carte=="prte") echo "checked";
echo ">$sanimateurcarteprete</input><br>
<input type=\"radio\" name=\"carte\" value=\"imprime\"";
if ($credit->carte=="imprime") echo " checked";
echo ">$sanimateurcarteimprimee</input></td>
</tr>\n";
echo "<tr><td colspan=4 align=center><input tabindex=16 type=\"submit\" name=\"Modifier\" value=\"$sconfirmer\"></td>";
echo " </tr>
</table>
</form>\n";
} // function form_animateur
function liste_animateurs()
{
global $code_barre, $id, $login, $nom, $prenom, $PHP_SELF, $operation;
// Recherche et visualisation de la liste des animateurs
if ($code_barre!="" & $id=="") $id=substr($code_barre,0,4);
affiche_liste_animateurs($id, $login, $nom, $prenom, "nom");
echo "<hr><a href=\"$PHP_SELF?operation=5\">Retour à la liste</a>";
}
switch($operation)
{
case 61 : // Enregistrement du changement de mot de passe de l'animateur
echo cadre_debut($sanimateurchgmtmdp);
if (ANIMATEURS_AUTRES<"w" && ANIMATEURS_MOI<"r")
{
echo $pasledroit;
echo cadre_fin();
break;
}
$mes="";
if ($motdepasse=="" && ANIMATEURS_AUTRES<"w")
$mes .= $smanquemotdepasseactuel."<br>";
if ($id_animateur=="")
$mes.=$sanimateurintrouvable."<br>";
else
{
$res=recherche("animateurs", "id", $id_animateur);
if (! $animateur=$res->fetchrow(DB_FETCHMODE_OBJECT))
$mes.=$sanimateurintrouvable."<br>";
}
if (ANIMATEURS_AUTRES<"w" && $motdepasse!=$animateur->motdepasse)
$mes.=$smauvaismotdepasse."<br>";
if ($motdepasse1=="") $mes .=$manquemotdepasse. "<br>";
if ($motdepasse1!=$motdepasse2) $mes .= $motdepassedifferents."<br>";
if ($mes!="")
echo "<p>$mes</p>";
else
{
// retrouver les informations de l'animateur
// TODO : Vrification que l'administrateur est
// d'une structure hbergeant les compte sur le serveur local
// 1 : modification du compte utilisateur NIS sur la machine locale
// cration du fichier contenant le mot de passe, ncessaire avec chpasswd
$motdepasse = $motdepasse1;
$fp = fopen("$fichier_temporaire", "w");
$motdepassec = crypt($motdepasse, "Sa");
$r = fwrite ($fp, "$animateur->login:$motdepassec\n");
$r = fclose($fp);
// prparation des commandes excuter
echo "<p>$sanimateurchangementmdplinux</p>";
$cmd = "sudo chpasswd -e < $fichier_temporaire";
executecommande($cmd);
// Mise jour provoque pour que l'utilisateur puisse se connecter immdiatement
echo "<p>$sanimateurmajnis</p>";
$cmd = "cd /var/yp; sudo make";
executecommande($cmd);
// 2 : modification du compte utilisateur Samba sur la machine locale
echo "<p>$sanimateurchangementmdpsamba</p>";
$cmd = "sudo smbpasswd -s $animateur->login $motdepasse";
executecommande($cmd);
// 3 : modification du compte de courriel sur la machine locale
// Actuellement, utilise une commande vpopmail
// TODO : voir si l'adresse est parmis les domaines supports (dans la base domaines)
$req="select * from domaines";
$res=executeRequete($req);
while ($domaine=$res->fetchrow(DB_FETCHMODE_OBJECT))
if (strpos($courriel, $domaine->domaine))
{
echo "<p>$sanimateurchangementmdpcourriel</p>";
$cmd="$dirvpopmail/vpasswd $animateur->courriel $motdepasse";
executecommande($cmd);
}
// 4 : modification du compte d'animateur dans la base locale epnadmin
echo "<p>$sanimateurchangementmdpepnadmin</p>";
$motdepassec=md5($motdepasse);
$query = "UPDATE animateurs SET motdepasse='$motdepassec' WHERE id='$id_animateur'";
$result = executeRequete($query);
echo cadre_fin();
break;
}
echo cadre_fin();
case 6 : // formulaire de changement de mot de passe
echo cadre_debut($sanimateurchgmtmdp);
if (ANIMATEURS_AUTRES<"w" && ANIMATEURS_MOI<"r")
{
echo $pasledroit;
echo cadre_fin();
break;
}
$res=recherche("animateurs", "id", $id_animateur);
if ($animateur=$res->fetchrow(DB_FETCHMODE_OBJECT))
{
echo "<form name=\"form_mp_animateur\" action=\"animateur.php\">
<input type=\"hidden\" name=\"id_animateur\" value=\"$id_animateur\">
<input type=\"hidden\" name=\"operation\" value=\"61\">
<table border=\"1\" align=\"center\">
<tr><th align=center colspan=2>$animateurchgmtmdp $animateur->prenom $animateur->nom ($animateur->login)</th></tr>";
// Si on est administrateur, on ne demande pas le mot de passe en cours
if (ANIMATEURS_AUTRES>"w")
echo "<tr><td>$smotdepasseactuel</td><td><input type=\"password\" name=\"motdepasse\"></td></tr>";
echo "<tr><td>$smotdepassenouveau</td><td><input type=\"password\" name=\"motdepasse1\"></td></tr>
<tr><td>$smotdepassenouveau (2)</td><td><input type=\"password\" name=\"motdepasse2\"></td></tr>
<tr><td align=center colspan=2><input type=\"submit\" value=\"$sconfirmer\"></td></tr>
<tr><td colspan=2>$sanimateuravertissementcngmdp</td></tr>
</table></form>\n";
}
else
echo "<p>$sanimateurintrouvable</p>\n";
echo cadre_fin();
break;
case 1: // Edition des informations personnelles
echo cadre_debut($sanimateurnouv1);
if (ANIMATEURS_MOI>="w" || ANIMATEURS_AUTRES>="w")
{
//debug("id_animateur : $id_animateur");
form_animateur($id_animateur, 11); // 11 = operation au sortir du formulaire pour le traiter
echo "<p><a href=\"$PHP_SELF?operation=5\">Retour à la liste</a></p>\n";
}
else
echo $pasledroit;
echo cadre_fin();
break;
case 11: // Mise jour suite une dition des informations personnelles
echo cadre_debut($sanimateurnouv1);
if (ANIMATEURS_MOI<"w" && ANIMATEURS_AUTRES<"w")
{
echo $pasledroit;
echo cadre_fin();
break;
}
// Attention, les informations de courriels n'affectent pas le compte de courriel local
$mes="";
if ($nom=="") $mes .= "$smanquenom<br>";
if ($prenom=="") $mes .= "$manqueprenom<br>";
if (defined("FCT_TARIFS"))
if ($tarif==-1) $mes .= "$smanquetarif<br>";
// Mise en condition des heures et des dates
$naissance="";
if ($naissanceannee>"" || $naissancemois>""
|| $naissancejour>"")
{
if (!checkdate($naissancemois,
$naissancejour,
$naissanceannee))
$mes.="$smanquenaissance<br>";
else
$naissance=$naissanceannee."-".
$naissancemois."-".
$naissancejour;
}
if ($mes!="")
{
echo "<p>$mes</p>";
cadre_fin();
break;
}
// Mise jour de l'enregistrement dans la table animateur
$query = "UPDATE animateurs SET nom=\"$nom\", prenom=\"$prenom\",
naissance='$naissance', sexe='$sexe', adresse=\"$adresse\", ville='$ville',
id_structure='$id_structure',
courriel='$courriel', telephone='$telephone',
commentaire=\"$commentaire\"
WHERE id='$id_animateur'";
if (!$result = executeRequete($query))
echo "<p>$spbmajanimateur</p>\n";
echo "<p>Informations mises jour.</p>";
echo cadre_fin();
break;
case 2 : // demande de confirmation de suppression
echo cadre_debut($sanimateursuppr);
if (ANIMATEURS_AUTRES<"w")
echo $pasledroit;
else
{
echo "<table align=center border=1>
<tr><th align=center>";
printf ($sanimateursupprdemandeconf, animateur($id_animateur));
echo "</th></tr>
<tr><td><form action=\"$PHP_SELF\" enctype=\"multipart/form-data\">
<input type=\"checkbox\" name=\"perso\" checked> $sanimateursupprepnadmin
<br><input type=\"checkbox\" name=\"credit\" checked> $sanimateursupprcredit
<br><input type=\"checkbox\" name=\"positionnement\" checked> $sanimateursupprpositionnement
<br><input type=\"checkbox\" name=\"parcours\" checked> $sanimateursupprparcours
<br><input type=\"checkbox\" name=\"utilisation\" checked> $sanimateursupprutilisations
<br><input type=\"checkbox\" name=\"nis\" checked> $sanimateursupprident
<br><input type=\"checkbox\" name=\"samba\" checked> $sanimateursupprsamba
<br><input type=\"checkbox\" name=\"courriel\" checked> $sanimateursupprcourriel
<tr><td align=center><input type=\"submit\" name=\"Supprimer\" value=\"$sanimateursupprconf\">
<input type=\"hidden\" name=\"id_animateur\" value=\"$id_animateur\">
<input type=\"hidden\" name=\"operation\" value=\"21\"></form></td></tr>
</table>\n";
}
echo cadre_fin();
break;
case 21: // Suppression relle
echo cadre_debut($sanimateursuppr);
if (ANIMATEURS_AUTRES<"w")
{
echo $pasledroit;
echo cadre_fin();
break;
}
// On retrouve l'enregistrement de l'animateur
$res = recherche("animateurs", "id", $id_animateur);
if (!$animateur = $res->fetchrow(DB_FETCHMODE_OBJECT))
{
echo $sanimateurintrouvable;
echo cadre_fin();
break;
}
echo "<p>$sanimateursupprok<br>";
if ($perso=="on")
{ // Effacement de l'enregistrement des informations personnelles
$query = "DELETE FROM animateurs WHERE id=$id_animateur";
$result = executeRequete($query);
echo "$sanimateursupprepnadmin<br>";
}
if ($credit=="on")
{ // Effacement de l'enregistrement des informations de crdits
$query = "DELETE FROM credits WHERE id_animateur=$id_animateur";
$result = executeRequete($query);
echo "$sanimateursupprcredit<br>";
}
if ($positionnement=="on")
{ // Effacement de l'enregistrement du positionnement
$query = "DELETE FROM positionnement WHERE id_animateur=$id_animateur";
$result = executeRequete($query);
echo "$sanimateursupprpositionnement<br>";
}
if ($parcours=="on")
{ // Effacement de l'enregistrement du parcours pdagogique
$query = "DELETE FROM parcours WHERE id_animateur=$id_animateur";
$result = executeRequete($query);
echo "$sanimateursupprparcours<br>";
}
if ($utilisation=="on")
{ // Effacement de l'enregistrement des accs en individuel
$query = "DELETE FROM utilisation_postes WHERE id_animateur=$id_animateur";
$result = executeRequete($query);
echo "$sanimateursupprutilisations<br>";
}
echo "</p>\n";
// Effacement du compte sur la machine local
if ($nis=="on")
{ // Compte NIS et FTP
$comm="userdel -r $animateur->login";
executecommande("sudo $comm");
echo "<p>$sanimateursupprident</p>";
}
if ($samba=="on")
{ // compte Samba
$comm="smbpasswd -x $animateur->login";
executecommande("sudo $comm");
echo "<p>$sanimateursupprsamba</p>";
}
if ($courriel=="on")
{ // compte de messagerie
$req="SELECT * FROM domaines";
$res=executeRequete($req);
while ($domaine=$res->fetchrow(DB_FETCHMODE_OBJECT))
if (strpos($animateur->courriel, $domaine->domaine))
{
$comm="$dirvpopmail/vdeluser $animateur->courriel";
echo "<p>$sanimateursupprcourriel</p>";
executecommande("sudo $comm");
}
}
echo cadre_fin();
break;
case 3: // Ajout formulaire, juste le nom et le prnom
echo cadre_debut($sanimateurnouv1);
if (ANIMATEURS_AUTRES<"w")
echo $pasledroit;
else
form_nouvel_animateur(31); // 31 = operation au sortir du formulaire pour regarder si c'est un doublon
echo cadre_fin();
break;
case 31: // Ajout formulaire, proposition de login
echo cadre_debut($sanimateurnouv1);
if (ANIMATEURS_AUTRES<"w")
{
echo $pasledroit;
echo cadre_fin();
break;
}
// Regarder s'il n'y a pas doublon
$req="SELECT * FROM animateurs WHERE nom=\"$nom\" AND prenom=\"$prenom\"";
$res=executeRequete($req);
if ($res->fetchrow(DB_FETCHMODE_OBJECT))
{
echo "<P>Attention, le nom et le prnom existent dj !</P>\n";
echo cadre_fin();
break;
}
$login=strtolower(substr($prenom, 0, 1).substr($nom, 0, 7));
$res=recherche("animateurs", "login", $login);
$res2=recherche("hebergements", "login", $login);
if ($res->fetchrow(DB_FETCHMODE_OBJECT) || $res2->fetchrow(DB_FETCHMODE_OBJECT))
{
$login=strtolower(substr($prenom, 0, 2).substr($nom, 0, 6));
$res=recherche("animateurs", "login", $login);
$res2=recherche("hebergements", "login", $login);
$n=1;
while ($res->fetchrow(DB_FETCHMODE_OBJECT) || $res2->fetchrow(DB_FETCHMODE_OBJECT))
{
$login=strtolower(substr($prenom, 0, 1).substr($nom, 0, 6)).$n;
$res=recherche("animateurs", "login", $login);
$res2=recherche("hebergements", "login", $login);
$n++;
}
}
$nom=strtoupper($nom);
$prenom=ucfirst(strtolower($prenom));
form_animateur("nouveau", 32, $nom, $prenom, $login); // 32 = operation au sortir du formulaire pour le traiter
echo cadre_fin();
break;
case 32: // Ajout confirm
echo cadre_debut($sanimateurnouv1);
if (ANIMATEURS_AUTRES<"w")
{
echo $pasledroit;
echo cadre_fin();
break;
}
// Attention, les informations de courriels n'affectent pas le compte de courriel local
$mes="";
if ($login=="")
$mes .= "$manqueidentifiant<br>";
else
{ // Regarder si le login n'existe pas dj
$req="SELECT * FROM animateurs WHERE login=\"$login\"";
$res=executeRequete($req);
if ($res->fetchrow(DB_FETCHMODE_OBJECT))
echo "$ssiteidentexistantanimateur<br>";
$req="SELECT * FROM hebergements WHERE login=\"$login\"";
$res=executeRequete($req);
if ($res->fetchrow(DB_FETCHMODE_OBJECT))
echo "$ssiteidentexistant<br>";
}
if ($motdepasse=="" || $motdepasse2=="") $mes .= "$manquemotdepasse<br>";
if ($motdepasse!=$motdepasse2) $mes .= "$motdepassedifferents<br>";
if ($nom=="") $mes .= "$smanquenom<br>";
if ($prenom=="") $mes .= "$manqueprenom<br>";
/* if (defined("FCT_TARIFS"))
if ($tarif==-1) $mes .= "$smanquetarif<br>";*/
// Mise en condition des heures et des dates
$naissance="";
if ($naissanceannee>"" || $naissancemois>""
|| $naissancejour>"")
{
if (!checkdate($naissancemois,
$naissancejour,
$naissanceannee))
$mes.="$smanquenaissance<br>";
else
$naissance=$naissanceannee."-".
$naissancemois."-".
$naissancejour;
}
if ($mes!="")
{
echo "<p>$mes</p>";
echo cadre_fin();
break;
}
// on crypte le mot de passe
// $motdepassec=md5($motdepasse);
// comment parce qu'on attend l'impression de la carte d'animateur
// Insertion dans la table animateurs (informations personnelles)
$query = "INSERT INTO animateurs (nom,prenom,login,motdepasse,naissance,sexe,
adresse,ville,telephone, courriel,id_structure,
commentaire,date)
VALUES ('$nom','$prenom','$login','$motdepasse','$naissance','$sexe',
'$adresse','$ville','$telephone','$courriel','$id_structure',
'$commentaire', NOW())";
// die ($query);
if (!$result = executeRequete($query))
{
echo "<p>$spbmajanimateur</p>\n";
echo cadre_fin();
break;
}
// TODO : vrifier que l'admin est dans une structure qui gre les comptes locaux sur le serveur
// On crypte le mot de passe pour crer le compte local sous Linux
$motdepassec = crypt($motdepasse, "Sa");
$comm="useradd $login -m -p $motdepassec -c \"$prenom $nom\" -s /bin/bash";
executecommande("sudo $comm");
echo "<p>$sanimateurcompteok</p>";
$comm="smbpasswd -a $login $motdepasse";
//ajoute_commande($comm);
executecommande("sudo $comm");
echo "<p>$sanimateursambaok</p>";
echo "<p>$sanimateurmajnis</p>";
$cmd = "cd /var/yp; sudo make";
executecommande($cmd);
// Dans le cas ou le compte n'est pas cr directement, mais via Webmin :
// <p><a href="https://soleil:10000/useradmin/edit_user.cgi" target="webadmin">Aller à Webmin pour créer le compte utilisateur sur le serveur.</a></p>
// <p><a href="http://www.pierrefitte93.fr/cgi-bin/qmailadmin" target="qmailadmin">Aller ` QmailAdmin pour créer le compte de courriel de l'animateur.</a></p>
$date=date('Y-m-d');
echo "<p><a href=\"table_horaire_session.php?date=$date\">$sanimateurversplanning</a></p>
<p><a href=\"$PHP_SELF?operation=3\">$sanimateurencorecreer</a>.</p>\n";
cadre_fin();
break;
case 5 : // Affichage de la liste des animateurs
echo cadre_debut($sanimateurliste);
if (ANIMATEURS_AUTRES<"r")
{
echo $pasledroit;
echo cadre_fin();
break;
}
liste_animateurs();
echo "<p><a href=\"$PHP_SELF?operation=3\">$sanimateurcreer</a>.</p>\n";
echo cadre_fin();
break;
case 7 : // Affichage des informations de crdit de l'animateur
echo cadre_debut($sanimateuretatcredits, "align=center", COULEUR_CREDITS);
if (ANIMATEURS_AUTRES<"r" && ANIMATEURS_MOI<"r")
{
echo $pasledroit;
echo cadre_fin(COULEUR_CREDITS);
break;
}
$res = recherche("animateurs", "id", $id_animateur);
$animateur = $res->fetchrow(DB_FETCHMODE_OBJECT);
affiche_credit($animateur);
echo cadre_fin(COULEUR_CREDITS);
break;
case 8 : // Formulaire de signalement d'erreur ou de changement dans les informations personnelles
// TODO
echo "<p>Pas encore prt !</p>\n";
break;
default : // Affichage des donnes personnelles
echo cadre_debut($sanimateurinfoperso);
if (ANIMATEURS_AUTRES<"r" && ANIMATEURS_MOI<"r")
{
echo $pasledroit;
echo cadre_fin();
break;
}
$res = recherche("animateurs", "id", $id_animateur);
$animateur = fetch_object($res);
affiche_animateur($animateur, "COMPLET");
// TODO : proposer l'animateur pas administrateur
// une demande de modification de
// coordonnes (par formulaire mail).
// et changement de mot de passe
if (ANIMATEURS_MOI>="w" || ANIMATEURS_AUTRES>="w")
{
echo "<p align=center>
<a href=\"$PHP_SELF?operation=6&id_animateur=$id_animateur\">$schangermdp</a><br>
<a href=\"$PHP_SELF?operation=1&id_animateur=$id_animateur\">$modifier $sanimateurmodifier</a><br>";
if (COURRIELS_MOI>="w" || COURRIELS_AUTRES>="w")
echo "<a href=\"courriel.php?operation=71&id_animateur=$id_animateur\">$ajouter $screercourriel</a><br>";
if (ANIMATEURS_AUTRES>="w" && $is_ident=="structure")
echo "<a href=\"$PHP_SELF?operation=2&id_animateur=$id_animateur\">$supprimer $sanimateursupprimer</a>";
echo "</p>\n";
}
echo cadre_fin();
liste_animateurs();
} // fin du switch
require("basdepage.inc.php");
echo "</body></html>";
require("footer.inc.php");
?>