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

This file is part of Gibii.

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

****************************************************************************/
include("../include/vars_adm.php");
include("../include/util.inc.php");
include("../include/get.inc.php");
include("../include/suppr.inc.php");

$PHP_SELF=basename($_SERVER['PHP_SELF']);
opensession("Sadmin",false);
if ($sess_login=='admstats') {
	aneantir_session();
	goto("./index.php");
	}

?>
<?php
    print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
?>
<HTML>

<HEAD>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<TITLE>nom1</TITLE>
<BASE TARGET="_self">
<link rel="stylesheet" href="../include/general.css">

<?php include("../include/utiljs.php"); ?>
<script language='javascript'>
function clicglobal(formulaire, nomchkbx, ouinon)
//formulaire et momchkbx sont des chaînes spécifiant les "name" des objets
//ouinon vaut true ou false
// toutes les cases à cocher spécifiées sont cochées (ou décochées si ouinon==false)
{
 var frm=eval('document.'+formulaire);
 //on ne peut pas invoquer les checkboxes par leur nom du fait des
 //crochets nécessaires à PHP, d'où le test bestial dans la boucle ci-dessous
 for (i=0;i<frm.elements.length; i++) {
     if (frm.elements[i].name==nomchkbx) {
             frm.elements[i].checked=ouinon;
        //alert('name='+frm.elements[i].name+' param='+nomchkbx);
        }
     }
}

function classeestbonne() { //vérifie le formulaire avant envoi
    var frm=document.new_classe;
    if (!frm.nom_classe.value) {
       alert("Le nom de la classe est vide.");
       return false;
       }
       return true;
    }
</script>
</HEAD>
<body class="arial_sadmin" link="white" vlink="white" alink="white">


<p class="titre">Traitements des anciens utilisateurs</p><hr width="30%">
<table align="center" border="0"width="90%"><tr><td>
<p align="left">
Vous trouverez ici les utilisateurs n'ayant pas été incorporés depuis un an ou plus.<br /> 
L'<b>année</b> de référence indiquée est celle du mois de rentrée de leur dernière année scolaire dans cet établissement.
<br /><font color='red'><b>ATTENTION,</b></font><Font color='#FFE4B5'> la suppression des <b>utilisateurs</b> de l'année précédente est désactivée car ils sont susceptibles d'être importés par un autre établissement scolaire ou bien sont encore référencés dans la table des réponses.</font>
</p> </td></tr></table>
<?php


function get1rne($etab_id) {
static $oldeid=0,$rne;
if ($oldeid==0 || $etab_id!=$oldeid) {
	$res=query("SELECT rne FROM etablissements WHERE etab_id=$etab_id");
	list($rne)=mysql_fetch_array($res);
	$oldeid=$etab_id;
	}
return $rne;
}	

function restaurel($elevid, $classid) {
    //Remettre l'élève dans la classe $classid avec la bonne année scolaire
    $an=ascol();
    $sqlresto="UPDATE eleves ".
      " SET annee=".secs($an).", classe_id=".seci($classid ).
      " WHERE eleve_id=".seci($elevid );
    $resresto=query($sqlresto);
    return $resresto;
}

function restaurep($profid) {
    //Remettre le prof avec la bonne année scolaire
    $an=ascol();
    $sqlresto="UPDATE profs ".
      " SET annee=".secs($an ).
      " WHERE prof_id=".seci($profid );
    $resresto=query($sqlresto);
    return $resresto;
}

//--------------------------------------------------
//Connexion à la base, ça servira dans les deux cas
$conn  = mysql_connect($host, $user, $mdp);
mysql_select_db($db, $conn) or die ("Impossible d'accéder à $db");;
set_time_limit(600);

if (!isset($goelev)) { //Premier passage

	//Tentative de choix d'année ?
  if (!isset($vieillannee)) {
  	print "<p align=\"center\">Choisissez dans la liste suivante l'année que vous voulez traiter :</p>\n";	
	print"<form name='formannees' method=\"POST\" action=$PHP_SELF >\n";
	$listan="";
	$sqlanelev="SELECT annee FROM eleves WHERE annee<($sess_ascol) GROUP BY annee";		
	$reselev=query($sqlanelev);
	while (list($van)=mysql_fetch_array($reselev)) $listan.="$van,";
	$sqlanprof="SELECT annee FROM profs WHERE annee<($sess_ascol) GROUP BY annee";
	$resprof=query($sqlanprof);
	while (list($van)=mysql_fetch_array($resprof)) {
		if (!strstr($listan,$van)) $listan.="$van,";	
		}
	$listan.="toutes";
	$tannees=explode(',',$listan); sort($tannees);
	//Combo des annéees
	print "<p align=\"center\">\n";
	print "<select name=\"vieillannee\"\n>";
	//Boucle des annees
  	for ($i=0;$i<count($tannees);$i++) {
    	if (isset($vieillannee) and ($vieillannee==$tannees[$i])) $sel="selected"; else $sel="";
    	print "<option value=\"".$tannees[$i]."\" $sel>".$tannees[$i]."</OPTION>\n";
    	}
    print "</select>\n";
	print "<br /><br /><input type='submit' class=\"coul\" name=\"btn_annee\" value=\"CHOIX ANNEE\">\n</p>\n";
	print "</form>";
	
	}
  else {
	//ICI l'année est choisie ou bien 'toutes'
	if ($vieillannee=='toutes') $where=" WHERE annee< ($sess_ascol) "; else $where=" WHERE annee='$vieillannee' ";
   //trouver tous les anciens élèves
   $sqlelev="select * from eleves ".$where.
             " ORDER by etab_id, annee ASC, nom, prenom  ;";
   $resultelev=query ($sqlelev);

   //trouver tous les anciens profs
   $sqlprof="select * from profs ".$where.
             " ORDER by etab_id, annee ASC, nom, prenom  ;";
   $resultprof=query ($sqlprof);

   print "<p class=\"rubrique\" align=\"center\">Anciens élèves</p>\n";
   print"<form name='formanciens' method=\"POST\" onsubmit=\"return confirm('Vraiment lancer le traitement ?')\" action=$PHP_SELF >\n";
   //Préparation tableau pour élèves
   $ijk=0;
   $ascol=ascol();
   while($row=mysql_fetch_array($resultelev)) {
        $nom=$row['nom'];
        $prenom=$row['prenom'];
        $dnaiss=$row['dnaiss'];
        $an=$row['annee'];
        $ind_elev=$row['eleve_id'];
        $classeid=$row['classe_id'];
        $etabid=$row['etab_id'];
        switch ($ascol-$an) {
        	case 1: $check=""; $dis="disabled=\"disabled\"";break;
			case 2: $check=""; $dis="";break;
			default: $check="checked=\"checked\""; $dis="";
			}
        $rne=get1rne($etabid);
        print "<input type=\"checkbox\" name=\"boxe[$ijk]\" value=\"$ind_elev\" $check $dis />\n";
        print $an.' - '.$rne.'&nbsp;&nbsp;&nbsp;'.$nom." ".$prenom." - ".$dnaiss."\n";
        $ijk++;
        print "<br />\n";
        }

   //Préparation tableau pour profs
   print "<p class=\"rubrique\" align=\"center\">Anciens professeurs</p>\n";
   $ijk=0;
   while($rowp=mysql_fetch_array($resultprof)) {
        $nom=$rowp['nom'];
        $prenom=$rowp['prenom'];
        $an=$rowp['annee'];
        $ind_prof=$rowp['prof_id'];
        $discipid=$rowp['disc_id'];
        $etabid=$rowp['etab_id'];
        switch ($ascol-$an) {
        	case 1: $check=""; $dis="disabled=\"disabled\"";break;
			case 2: $check=""; $dis="";break;
			default: $check="checked=\"checked\""; $dis="";
			}
        $rne=get1rne($etabid);
        print "<input type=\"checkbox\" name=\"boxp[$ijk]\" value=\"$ind_prof\" $dis />\n";
        print $an.' - '.$rne.'&nbsp;&nbsp;&nbsp;'.$nom." ".$prenom." - ".$dnaiss."\n";
        //afficher la discipline
        $d=getdisc($discipid);
        print " - $d <br />\n";
        $ijk++;
        }

   print "<p align=\"center\">\n<input type='submit' class=\"coul\" name=\"goelev\" value=\"Purger\">\n</p>\n";
   print "</form>\n";
	} //fin choix annee
   } //Fin choix traitement
else { //2° passage,  TRAITEMENTS
//==================================================================
   //Traitement élèves
	print "<h2>Elèves supprimés:</h2>\n";
	$teid=array();
	if (isset($boxe) && count($boxe)) {
   		foreach($boxe as $cont => $eid) {
	        //export($eleveid);
	        print $eid." - ";
	        }  
	    suppr_eleves($boxe);
	    }
	
   //Traitement profs
	print "<h2>Profs supprimés:</h2>\n";
	$tpid=array();
	if (isset($boxp) && count($boxp)) {
    	foreach($boxp as $cont => $pid) {
	        print $pid." - ";
	        } 
	    suppr_profs($boxp); 
		}
	print "<p>&nbsp;</p>\n";
   	print "<a href=\"sadmin_bas.php\">Retour à la page d'accueil</a>\n";
}
?>
</BODY>
</HTML>