<?php
#=
/****************************************************************************
Copyright 2002, Daniel Deycard, Jacques Messines, Alain Pomirol
(CATICE Académie de Bordeaux)

This file is part of GiBii/Melia.

GiBii/Melia 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.

GiBii/Melia 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 GiBii/Melia; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

****************************************************************************/
/*
     Les noms des variables PHP sont importants car ils servent dans 2 pages :
     requete.php et details.php
     etab (id) etnom ville cp
     eid nom prenom annee civilite
     divcod
*/


function entetehtml($title) {
    global $etab_theme;

//##############################################
    //PROVISOIRE (sera récupéré par la session)
    $etab_theme="hiver";
//##############################################
    ?>

    <DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <HTML>
    <HEAD>
    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
    <TITLE><?php print $title; ?></TITLE>
    <link rel="stylesheet" href="<?php echo "../themes/".$etab_theme."/b2i.css" ?>">
    <style type="text/css">
        .taille8 { font-size: 8pt; }
        .taille6 { font-size: 6pt; }
    </style>

    <script language="javascript">
        var fen='';
        function basculer(id1,id2,chk) {
            for (id=id1; id<=id2; id++) {
                var c=document.getElementById('it'+id);
                c.checked=chk;
                }
            }
        function ouvrir(eid,etab,classe) {
            fen=window.open('details.php?eid='+eid+'&etab='+etab+'&clid='+classe+&op=entree','fen_'+eid,'width=670,height=520,status=0,directories=0,toolbar=0,location=0,scrollbars=1,resizable=1');
            fen.focus();
            }
    </script>
    </HEAD>
    <BODY class="arialadmin" onload="if (document.form1==undefined) ; else document.form1.unom.focus();">
    <?php
    }


function lignevide($texte="") {
if ($texte) $ligne="<b>$texte</b>";
else $ligne="&nbsp;";
print "<tr><td colspan=\"4\" align=\"center\"><p>$ligne</p></td></tr>\n";
}

function lignegauche($texte) {
print "<tr><td colspan=\"4\" align=\"left\"><p style=\"font-size:8pt\" >$texte</p></td></tr>\n";
}

//récupère les caractéristiques de chaque brevet
function getbrevets(&$brevet,&$imin,&$imax) {
static $sbrevet,$simin,$simax;
if (!isset($sbrevet)) {
    $res=query("SELECT  brevet_no,min(item_id) AS vmin, max(item_id) AS vmax
                FROM  items
                GROUP BY brevet_no
                ORDER BY brevet_no");
    while (list($b,$vmin,$vmax)=mysql_fetch_array($res)) {
        $simin[$b]=$vmin;$simax[$b]=$vmax;
        }
    $sbrevet[1]='Ecole';$sbrevet[2]='Collège';$sbrevet[3]='Lycée';
    mysql_free_result($res);
    }
$brevet=$sbrevet;
$imin=$simin;
$imax=$simax;
}

//affiche 3 lignes de coches grâce au tableau $tcoches
//si $nomchamp="taratata" les champs s'appellent taratata[]
//si les cases 1 et 4 doivent être cochées, le tableau en entrée vaut :
//tcoches[0]=1  et tcoches[1]=4. S'il n'y a pas de modification,
//le script qui récupère reçoit taratata[0]=1 et taratata[1]=4
function checkboxes(&$tcoches,$nomchamp,$eid=0) { //par réf pour des raisons d'économie seulement
static $imin,$imax,$brevet;
if (empty($imin)) {
        $brevet=$imin=$imax=array();
        getbrevets($brevet,$imin,$imax);
        }
$maxb=count($imin);
$name=$nomchamp."[]"; //calcul séparé pour éviter l'erreur d'interprétation
for ($b=1;$b<=$maxb;$b++) {
    $deb=$imin[$b];$fin=$imax[$b];
    print "<tr><td><p>\n";

    //affichages particuliers de la colonne de gauche
    if ($eid) print $brevet[$b];
    else print "<input  type=\"checkbox\" id=\"brevet$b\" name=\"brevet$b\" value=\"$b\" onclick=\"basculer($deb,$fin,this.checked);\"/>
                B2I ".$brevet[$b].'s';
    print "<br /></p></td><td colspan=\"3\"><TABLE border =\"0\" cellpadding=\"0\" cellspacing=\"0\"><TR>\n";

    for ($item=$deb; $item<=$fin; $item++) {
        if (in_array($item,$tcoches))
            $checked="checked=\"checked\"";
        else $checked="";
        print "<TD class=taille6 width=\"28px\"><input type=\"checkbox\" style=\"width:10px;\" name=\"$name\" value=\"$item\" $checked/>"
             ."<span style=\"width:15px;position:relative; bottom:4px;\">$item</span>\n";
        //disabled=\"disabled\"
        print "</td>";
        }
        print "</TR></TABLE>";
    print "</p></td></tr>\n";
    }
}

function boutons($libgauche,$libdroit,$onclick=false) {
$fingauche="value=\"$libgauche\" ";
$findroit="value=\"$libdroit\" ";
if ($onclick) {
   //$fingauche.="onclick=\"alert('Modifications enregistrées');\"";
   $findroit.="onclick=\"window.close();\"";
}
?>
    <tr>
        <td>&nbsp;</td>
        <td><p>
            <input type="submit" class="coul"  name="bouton1" <?php print $fingauche; ?> >
            </p>
        </td>
        <td><p>
            <input type="reset" class="coul" name="bouton2" <?php print $findroit; ?> >
            </p>
        </td>
        <td><p>&nbsp;</p>
        </td>
    </tr>
<?php
}

//tattendu contient les items que l'élève e doit posséder
function possede($e,$tattendu) {  //sous-entendu : possede au moins
$treel=obtenu($e);
//vérification : est-ce que les valeurs de $tattendu sont dans $treel ?
//array_diff($tattendu,$treel) retourne les valeurs de $tattendu qui sont absentes de treel
return count(array_diff($tattendu,$treel))==0;
}

function obtenu($eid=0) {
//$eid=0 sert pour le premier affichage du formulaire
$tacquis=array();
if ($eid) {
    $res=query("SELECT item_id FROM resultats WHERE eleve_id=$eid");
    while (list($item_id)=mysql_fetch_array($res))
        $tacquis[]=$item_id;
    }
return $tacquis;
}

function demande($eid) {    //lire "demandé"
global $nbj_vie_demande;
if (empty($nbj_vie_demande)) $nbj_vie_demande=100; //cas d'étab incorrect
$res=query("SELECT item_id FROM demandes
            WHERE  eleve_id=$eid
            AND   TO_DAYS(CURDATE())-TO_DAYS(quand)<=$nbj_vie_demande");
$tdemandes=array();
while (list($item_id)=mysql_fetch_array($res))
    $tdemandes[]=$item_id;
return $tdemandes;
}

function different(&$told,$tchamps) {
foreach($tchamps as $nomchamp) if ($_POST[$nomchamp]!=$told[$nomchamp]) return true;
return false;
}

function recupbase($eid) {
//on récupère les infos actuelles de la base pour le haut du formulaire
$res=query("SELECT  eleves.eleve_id as eid, eleves.nom AS unom,
                    prenom, dnaiss, annee, civil,
                    eleves.classe_id AS clid, divcod,
                    eleves.compte_id AS cid, login,
                    eleves.etab_id AS etab, etablissements.nom AS etnom,
                    ville, rne, codepostal, nbj_vie_demande
            FROM eleves
                LEFT JOIN etablissements ON eleves.etab_id=etablissements.etab_id
                LEFT JOIN comptes ON eleves.eleve_id=comptes.eleve_id
                LEFT JOIN classes ON eleves.classe_id=classes.classe_id
            WHERE eleves.eleve_id=$eid");
$row=mysql_fetch_array($res);
foreach($row as $index => $valeur) {    //récupère unom, prenom,..
    if (!is_int($index)) {
        global $$index;
        $$index=$valeur;
        }
    }
return $row;
}

function getetabs() {
$etablissements=array();
if (empty($etablissements)) {
    $res=query("SELECT etab_id,rne,nom,adresse,codepostal,ville
                  FROM etablissements
                  ORDER BY codepostal");
    while (list($id,$rne,$nom,$adresse,$codepostal,$ville)
           =mysql_fetch_array($res)) {
            $etablissements[$id]['rne']=$rne;
            $etablissements[$id]['nom']=$nom;
            $etablissements[$id]['adresse']=$adresse;
            $etablissements[$id]['codepostal']=$codepostal;
            $etablissements[$id]['ville']=$ville;
    }
}
return $etablissements;
}

function recupbase_user($eid) {
//on récupère les infos actuelles de la base pour le haut du formulaire
$res=query("SELECT  eleves.eleve_id as eid, eleves.nom AS unom,
                    prenom, dnaiss, annee, civil,
                    eleves.compte_id AS cid, login,
                    eleves.etab_id
            FROM eleves
                LEFT JOIN comptes ON eleves.eleve_id=comptes.eleve_id
            WHERE eleves.eleve_id=$eid");
$row=mysql_fetch_array($res);
mysql_free_result($res);
return $row;
}

function recupbase_etab($etab) {
$res=query("SELECT etab_id,rne,nom,ville,codepostal
                  FROM etablissements
                  WHERE etab_id=$etab");
$row=mysql_fetch_array($res);
mysql_free_result($res);
return $row;
}

function recupbase_classes($etab) {
$res=query("SELECT classe_id,divcod
            FROM classes
            WHERE etab_id=$etab AND divgro='D'");
while (list($classe_id,$divcod)=mysql_fetch_array($res)) {
    $tclasses[$classe_id]=$divcod;
    }
mysql_free_result($res);
return $tclasses;
}

function modifier(&$tcoord,&$tacquis,&$tdemandes) {
print "<h2>Entrée dans modifs</h2>";
print "<h3>_POST = </h3>";print_r($_POST);print "<hr />";
print "<h3>tcoord = </h3>";print_r($tcoord);print "<hr />";

$modif=false;
//etablissements
if (different($tcoord,array('etnom','ville','codepostal'))) {
   query("UPDATE etablissements
          SET nom='".$_POST['etnom']."'
          WHERE etab_id=".$_POST['etab']);
   $modif=true;
   }

//classes
if ($_POST['divcod']!=$tcoord['divcod']) {
   query("UPDATE classes
          SET divcod='".addslashes($_POST['divcod'])."'
          WHERE classe_id=".$tcoord['clid']);
   $modif=true;
   }

//eleves
if (different($tcoord,array('unom','prenom','dnaiss','annee','civil'))) {
   query("UPDATE eleves
          SET nom   ='".addslashes($_POST['unom'])."',
              prenom='".addslashes($_POST['prenom'])."',
              dnaiss='".addslashes($_POST['dnaiss'])."',
              annee = ".$_POST['annee'].",
              civil ='".$_POST['civil']."'
          WHERE eleve_id=".$tcoord['eid']);
   $modif=true;
   }

//comptes
$cid=$tcoord['cid'];
$loginnew=$_POST['login'];
$loginold=stripslashes($tcoord['login']);
if ($loginnew!=$loginold) {
    //update nécessaire
    global $etab_id; //pour LoginUnique !
    $etab_id=$tcoord['eid'];
    $loginbon=LoginUnique($loginnew);
    query("UPDATE comptes
           SET login='".addslashes($loginbon)."'
           WHERE compte_id=$cid");
    $m="\nNouveau login : $loginbon.";
    $modif=true;
    }
else $m='';

if ($modif) { // 3 paquets de javascript
    alert('Modifications effectuées.'.$m);
    //on rafraîchit l'écran
    js("window.opener.location.reload();");
    close_window();
    }
}

function debformulaire($titre,$readwrite='') {
//readwrite pour les champs numéro (élève et établissement)
$champsform=array(  'etab','etnom','ville','codepostal','eid','unom','prenom',
                    'civil','dnaiss','annee','divcod','dnaiss','login');
foreach($champsform as $nomvar) {
    global $$nomvar;
    if (!isset($$nomvar)) $$nomvar='';
    }
    //affichage du formulaire
    ?>
     <colgroup>
        <col width="15%">
        <col width="32%">
        <col width="32%">
        <col width="21%">
     </colgroup>
    <tr>
        <td colspan=\"4\"><h2><p><?php print $titre ?></h2></p></td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="etab" size=6 <?php echo $readwrite; ?> value="<?php echo $etab; ?>">
            <br />ID étab.<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="etnom" size=24 value="<?php echo $etnom; ?>">
            <br />Nom établissement<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="ville" size=20 value="<?php echo $ville; ?>">
            <br />Ville<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="codepostal" size=10 value="<?php echo $codepostal; ?>">
            <br />Code postal<br /><br />
            </p>
        </td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="eid" size=6 <?php echo $readwrite; ?> value="<?php echo $eid; ?>">
            <br />ID élève<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="unom" size=24 value="<?php echo $unom; ?>">
            <br />Nom<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="prenom" size="20" value="<?php echo $prenom; ?>">
            <br />Pr&eacute;nom<br /><br />
            </p>
        </td>
        <td>
            <p>
            <select name="civil" class="taille8" >
                <option value="0" >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>
                <?php
                    foreach(array('M.','Mme','Mlle') as $sexe) {
                        $selected=($civil==$sexe)? "selected=\"selected\"" : "";
                        print "<option value=\"$sexe\" $selected> $sexe </option>\n";
                        }
                ?>
            </select>
            <br />Civilité<br /><br />
            </p>
        </td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="dnaiss" size=6 value="<?php echo $dnaiss; ?>">
            <br />D. naiss.<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="login"  size=24 maxlength=22   value="<?php echo $login; ?>">
            <br />Login<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="divcod" size=20 value="<?php echo $divcod; ?>">
            <br />Classe<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="annee" size=10 value="<?php echo $annee; ?>">
            <br />Année<br /><br />
            </p>
        </td>
    </tr>

    <?php
    }

function formulaire_details($eid,$tcoord,$tetab,$tclasses) {
//globalise en variables les valeurs des tableaux
foreach(array('etab','etnom','ville','codepostal') as $nomvar)
    $$nomvar=$tetab[$nomvar];
foreach(array('eid','unom','prenom','civil','annee','divcod','dnaiss','login') as $nomvar)
    $$nomvar=$tcoord[$nomvar];

$onclick="window.open('details_pop.php?eid=$eid&etab=$etab','fen','width=500,height=200,status=0,directories=0,toolbar=0,location=0, scrollbars=0,resizable=0');";

//affichage du formulaire
print_r($_GET);
    ?>
     <colgroup>
        <col width="15%">
        <col width="32%">
        <col width="32%">
        <col width="21%">
     </colgroup>
    <tr>
        <td colspan=\"4\"><h2><p>Détails et modifications éventuelles</h2></p></td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="etab" size=6 readonly value="<?php echo $etab; ?>">
            <input type="button" name="javascript:void(0);" value="..." onclick="<?php print $onclick; ?>" >

            <br />ID étab.<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="etnom" size=24 value="<?php echo $etnom; ?>">
            <br />Nom établissement<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="ville" size=20 value="<?php echo $ville; ?>">
            <br />Ville<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="codepostal" size=10 value="<?php echo $codepostal; ?>">
            <br />Code postal<br /><br />
            </p>
        </td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="eid" size=6 <?php echo $readwrite; ?> value="<?php echo $eid; ?>">
            <br />ID élève<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="unom" size=24 value="<?php echo $unom; ?>">
            <br />Nom<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="prenom" size="20" value="<?php echo $prenom; ?>">
            <br />Pr&eacute;nom<br /><br />
            </p>
        </td>
        <td>
            <p>
            <select name="civil" class="taille8" >
                <option value="0" >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>
                <?php
                    foreach(array('M.','Mme','Mlle') as $sexe) {
                        $selected=($civil==$sexe)? "selected=\"selected\"" : "";
                        print "<option value=\"$sexe\" $selected> $sexe </option>\n";
                        }
                ?>
            </select>
            <br />Civilité<br /><br />
            </p>
        </td>
    </tr>
    <tr>
        <td>
            <p>
            <input type="text" class="taille8" name="dnaiss" size=6 value="<?php echo $dnaiss; ?>">
            <br />D. naiss.<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="login"  size=24 maxlength=22   value="<?php echo $login; ?>">
            <br />Login<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="divcod" size=20 value="<?php echo $divcod; ?>">
            <br />Classe<br /><br />
            </p>
        </td>
        <td>
            <p>
            <input type="text" class="taille8" name="annee" size=10 value="<?php echo $annee; ?>">
            <br />Année<br /><br />
            </p>
        </td>
    </tr>

    <?php
    }

?>
