<?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

****************************************************************************/
include("../include/vars_adm.php");
include("../include/util.inc.php");
include("../include/get.inc.php"); //pour getBrevetFromNiv()
include("profs.inc.php");

define("NBCOLS",8);      //pour les classes

//$statut est passé par l'URL depuis admin_bas ou prof_form ou prof_bas
$statut=$_REQUEST['statut'];
opensession($statut,false);
//print "<h2><br>statut= $statut sess_statut= $sess_statut</h2>";
//print_r($_SESSION);

?>
<!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>c'est le cadre "form"</TITLE>
<link rel="stylesheet" href="<?php echo "../themes/".$etab_theme."/b2i.css" ?>" />
<link rel="stylesheet" href="../include/rubitem.css" />


<?php if (isset($id)) { ?>

    <script language='javascript'>
    function clicglobal(formulaire, nomchkbx, ouinon)
    //formulaire et nomchkbx 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 ouvrirliste() { //nouvelle fenêtre avec les disciplines
     wliste=open('listedisc.php?etab_theme=<?php echo $etab_theme."&statut=$statut"; ?>','nomfenliste',
                 'dependent,top=10,left=200,height=460,width=450,resizable');
    }

    function profestbon() { //vérifie le formulaire avant envoi
     var frm=document.form1;
     //alert(frm.nom.name+"="+frm.nom.value);
     if ((!frm.nom.value) || (!frm.discipline.value) || (!frm.login.value)) {
         alert("L'un des champs essentiels est absent (nom, login ou discipline).");
         return false;
     }
     return true;
    }

    function confirmer() {
    return (confirm('Supprimer vraiment cette fiche ?'));
    }

    function toutcodeco(first_item,last_item) {
    for (i=first_item ; i<=last_item ; i++) {
        chkbox=document.getElementById('idchkit'+i);
        chkbox.checked=!chkbox.checked;
        }
    }
    </script>
	<?php	
	} //fin de if (isset($id))

print "</HEAD>\n";

//$statut est passé en paramètre de l'url
if ($statut=="Prof") $classeCSS='class="arialprof"';
elseif ($statut=="Admin") $classeCSS='class="arialadmin"';
else $classeCSS='';
echo "<body $classeCSS>";


//entrée avec id en paramètre avec l'URL
//id=0 : nouveau prof, tous les champs sont vides
//id>0 : prof existant à modifier éventuellement (PROF_ID=$id)

if (!isset($id)) {
	//arrivée avant le choix d'une action
	print "</body></html>\n";
	exit();
	}
elseif ($id==-1 && $statut=='Prof') 
	$pid=$sess_mec_id; // c'est le prof lui-même
elseif ($id==0 && $statut=='Admin')
	$pid=0; //rien, on continue, c'est une création
else {
	$pid=@$_SESSION['temp']['prof'][(int) $id];
	if (!isset($pid)) {
		print "</body></html>\n";
		piratage();
		exit();
		}
	}

$sql="SELECT * FROM profs WHERE prof_id=$pid;";
$result=query ($sql);
$row=mysql_fetch_array($result);
mysql_free_result($result);

$disc_id=$row["disc_id"];
$admin=$row["admin"];
$accepte1an=$row['opt_dem1an'];

$resdisc=query("SELECT libelle FROM disciplines ".
               "WHERE  disc_id=$disc_id LIMIT 1;");
if ($rowdisc=mysql_fetch_object($resdisc))
	$discipline=$rowdisc->libelle;
else {
	$discipline="Inconnue";
	$disc_id=0;
	}

//Mettre "selected" dans l'élément du tableau $civ correspondant à l'option sélectionnée
$civ=array("M."=>"","Mme"=>"","Mlle"=>"");
$civ[$row["civil"]]="selected";

//Pour le login, on pioche dans la table comptes
$sqlcpt="SELECT * FROM comptes WHERE prof_id=$pid;";
$resultcpt=query($sqlcpt);
$rowcpt=mysql_fetch_array($resultcpt);
$plogin=$rowcpt["login"];
$practif=$rowcpt["actif"];

// print " <H2>$plogin</H2>";
 //print " <H2>actif : $practif</H2>";


print "<form name=\"form1\" method=\"post\" ".
      "      action=\"profs_traiter.php?statut=$statut&id=$id\" ".
      "      onsubmit=\"return profestbon();\">\n";
?>
<table border = "0" Width="100%" class='encadre_pres'><tr class="paire"><td>
       <table border="0" cellpadding="3" cellspacing="0" width="100%">
       <tr>
        <td width="30%">
        <p><input type="text" name="nom" value='<?php echo stripslashes($row["nom"]); ?>'> Nom </p>
        </td>
        <td width="40%">
        <p><input type="text" name="prenom" value='<?php echo stripslashes($row["prenom"]); ?>'> Prénom</p>
        </td>
         </tr>
       <tr>
        <td width="30%">
        <select name=civilite>
                <option value="M." <?php echo $civ["M."] ?>> M.</option>
                <option value="Mme" <?php echo $civ["Mme"] ?>> Mme</option>
                <option value="Mlle"<?php echo $civ["Mlle"] ?>> Mlle</option>
        </select>
        </td>
        <td width="40%">
        <p>
        <?php

        //LA discipline du prof affichée ou une liste de disciplines

        print "<input type='text' name='discipline' value='$discipline' readonly>";
        print "<input type='button'
                      class='coul'
                      name='listedisc'
                      value='. . .'
                      onclick='ouvrirliste();'>";
        print " Discipline";
        print "<input type='hidden' name='disc_id' value=$disc_id>";



        ?>
        </p></td>
    </tr>
    <tr>
<?php
print "        <td width=\"30%\">\n";
print "<p><input type=\"text\" name=\"login\"  size=22 maxlength=22   value='$plogin' ";

//Pas de modif du login en SSO
if ($entree_SSO) print "READONLY";
print "> Login&nbsp;&nbsp;</p>";
print "</td>\n";
print "<td width=\"40%\">\n";
print "<p><input type=\"text\" name=\"dnaiss\" value='".$row["dnaiss"];
print "'> Date de naissance</p>";
print "</td></tr>";

print "<tr>\n";
if ($entree_SSO==0) {     //Pas de réinitialisation en SSO
        print "<td width=\"60%\">";
        print "<p><input type=\"checkbox\" name=\"mdpinit\"> Réinitialiser le mot de passe (d. de naiss.)</p>";
        print "</td>";
        }
else print "<td>&nbsp;</td>";

if ($statut=="Admin") {
    print "<td >\n";
    print "<p><span title=\"A utiliser par exemple pour un prof principal\">\n";
    print "<input type=\"checkbox\" name=\"pradmin\" ";
    if ($admin & 1) print "checked=\"checked\"";
    print "> Professeur administrateur</span>\n";

/*************** Partie modifiée par Béa *****************************/
    if (($sess_statut=='Sadmin') || (@!($sess_statut_prof & 2))) {
        //seuls les vrais admins peuvent en créer d'autres
        //b1($sess_statut_prof)=1 pour un admin-adj, donc il faut éliminer ce cas
        //il ne reste plus ici que les Sadmin ou les Admin
        print "<br />\n";
        print "<span title=\"A utiliser lorsque la partie gestion est assumée par ce prof\">\n";
        print "<input type=\"checkbox\" name=\"prgest\" ";
        if ($admin & 4) print "checked=\"checked\"";
        print "> Gestionnaire adjoint</span>\n";
        print "<br />\n";
        print "<span title=\"A utiliser lorsque l'admin est ce prof\">\n";
        print "<input type=\"checkbox\" name=\"adminadj\" ";
        if ($admin & 2) print "checked=\"checked\"";
        print "> Administrateur adjoint</span>\n";
        }
    print "</p></td>";
    }
else print "<td>&nbsp;</td>";
/************************************************************************/



if (isset($sess_statut_prof)) {
    //le prof ne peut pas modifier ses paramètres admin-adj ou gest-adj
    //mais ils doivent être transmis pour être réenregistrés

    //Mais celui-là est déjà traité au-dessus (JAK 09-2006)
    if ($admin & 1) print "<input type='hidden' name='pradmin' value='on'>";
    if ($admin & 2) print "<input type='hidden' name='adminadj' value='on'>";
    if ($admin & 4) print "<input type='hidden' name='prgest' value='on'>";
    }


if ($accepte1an) $checked1an=" checked=\"checked\" "; else $checked1an="";
?>
</tr>

<tr><td colspan="2">
<p><input type="checkbox" name="accepte1an" <?php
		print $checked1an;
        if ($sess_statut=='Sadmin'
        	|| $sess_statut=='Admin'
        	|| $sess_statut_prof & 2) {
            // la case est accessible
            }
        else {
            print ' disabled="disabled" ';
            }
        ?> />
        Accepter pendant un an les demandes accordées par d'autres collègues</p>
</td></tr>
</table>
</td></tr></table>
<!-- Fin de la zone des coordonnées de l'individu -->

<br>

<!--Les classes -->
<table border = "0" class='encadre_pres' width="100%"><tr class="paire"><td>
       <table border ="0" cellpadding="0">
       <tr>
           <td width = "140"><b>&nbsp;&nbsp;&nbsp;Classes :</b></td>
           <td width="100">
           <i><a href='#' title="Coche toutes les classes"
             onclick="clicglobal('form1','CBClasses[]',true);">[Toutes]</a></i> </td>
           <td width = "100">
           <i><a href='#' title="Décoche toutes les classes"
             onclick="clicglobal('form1','CBClasses[]',false);">[Aucune]</a></i></td>
        </tr>
        </table>

    <table border="0" cellpadding="3" cellspacing="0" width="100%">

<?php

//Classes des profs
//=================

//recherche de toutes les classes
//-------------------------------
$sql="SELECT * FROM classes WHERE etab_id=$etab_id ORDER by divgro, divcod;";
$result=query ($sql);
$nbclasses=0;
while ($rowclasse=mysql_fetch_array($result)) {
    $nbclasses++;
    $classeid=$rowclasse["classe_id"];
    $tclasseid[]=$classeid; // pour avoir le tableau de toutes les classes
    $tclasseprof[$classeid]=0;  //pour connaître celles du prof en cours
    $tdivcod[]=$rowclasse["divcod"];//ainsi que les noms des classes
    $tdivgro[]=$rowclasse["divgro"]; //pour savoir classe ou groupe
}


//recherche de celles dans lesquelles enseigne le prof
//----------------------------------------------------
$sql="SELECT classes.classe_id, divcod ".
     "FROM lien_profs_classes, classes ".
     "where lien_profs_classes.prof_id=$pid ".
     "and lien_profs_classes.classe_id=classes.classe_id ".
     "order by divgro,divcod;";
$classeprof=query($sql);
while ($rowclasseprof=mysql_fetch_array($classeprof)) {
    $classeid=$rowclasseprof["classe_id"];
    $tclasseprof[$classeid]=1; //on rectifie
    //print "<hr>pour $classeid<hr>";print_r($tclasseprof);
}

//affichage des check-boxes des classes
//-------------------------------------
//print "<table border='0' cellpadding='0' cellspacing='0' width='100%'>";
$firstcar="";
$numcol=0;
$divgro='D';
//$tr_clas="impaire";
for ($i=0; $i<$nbclasses; $i++,$numcol++) {
    $classeid=$tclasseid[$i];
    $divcod=$tdivcod[$i];
    $divgro_old=$divgro;
    $divgro=$tdivgro[$i];
    $checked=($tclasseprof[$classeid]) ? "checked" : "";
    //Rupture en passant de classes aux groupes
    $j=$i-1;
    if ($divcod && $firstcar!=$divcod[0]) { //changement de nom de classe -> chgt de ligne
            print "</tr>\n";
            $numcol=0;
            $firstcar=$divcod[0];
            }
    if ($numcol%NBCOLS==0) {     //colonne 0 -> nouvelle ligne
        if ($divgro!=$divgro_old); // $tr_clas="paire";
        print "<tr>";    //class=\"$tr_clas\">";
        $envoifinligne=false;
        }

    if ($divgro!=$divgro_old) {
        print "</tr></table><p><b>&nbsp;&nbsp;&nbsp;&nbsp;Groupes :  </b>";
        print "<table border='0' cellpadding='0' cellspacing='0' width='100%'><tr>";
        $numcol=0;
        }

    print "\t<td  width='12%'>";  //Cellule pour ch. classe

    $classeid=$tclasseid[$i];
    $divcod=$tdivcod[$i];
    $checked=($tclasseprof[$classeid]) ? "checked" : "";
    print "<input type='checkbox' name='CBClasses[]' value=$classeid $checked>";
    print $divcod;
    print "</td>\n";
    if ($numcol%NBCOLS==NBCOLS-1) { //dernière colonne -> fin de ligne
        print "</tr>\n";
        $envoifinligne=true;
    }
}
if (!$envoifinligne) print "</tr>\n";
print "</table>\n";
print "</td></tr></table>\n";
print "<br />\n";

competences($pid);
?>


<div align='center'><table border ="0" ><tr><td>
&nbsp;<input type="submit" class="coul" name="enregistrer" value="Envoi des modifications"  accesskey='E'>
&nbsp;<input type="reset" class="coul" name="annuler" value="Annuler"  accesskey='A'>
<?php
/*
if ($statut=="Admin") { ?>
&nbsp;<input type="submit" class="coul" name="supprimer" value="Supprimer la fiche" onclick="return confirmer();"  accesskey='S'>
<?php } 
*/
?>
</td></tr></table>
<?php if (($pid) AND ($statut=="Admin")) { ?>
	<br /><hr /><br />
	<p>
	Vous pouvez aussi &laquo;<b>faire disparaître</b>&raquo; le professeur ci-dessus de diverses façons <br /><br />
	<table>
	<tr><td>
		<input type="submit" class="coul"  name="supprimer" value="Supprimer la fiche" onClick="return confirmer();" />
		</td>
		<td class="arial_petit"> Suprimer définitivement le professeur du site ainsi que tous ses liens vers les résultats.
		</td>
	</tr>
	<tr><td>
		<input type="submit" class="coul"  name="enreserve" value="Mettre en réserve" />
		</td>
		<td class="arial_petit"> L'année du professeur sera mise à <?php print $sess_ascol-1; ?>.
			Il n'apparaîtra plus dans les listes, les stats,... mais il pourra être &laquo;récupéré&raquo; par un
			autre établissement en gardant ses liens avec les résultats de ses anciens élèves.
		</td>
	</tr>
	<tr><td>
		<?php 
		if ($practif==-1) print "<p class='attention'>Ce compte est désactivé !</p>";	
		?>
		</td><td>&nbsp;</td>
	</tr>
	<tr><td>
		<?php
		if ($practif==-1) {
		?>	
		<input type="submit" class="coul"  name="revalider" value="Réactiver" />
		</td>
		<td class="arial_petit"> Réactiver le compte du professeur
		<?php
		} else  {
		?>
		<input type="submit" class="coul"  name="invalider" value="Désactiver" />
		</td>
		<td class="arial_petit"> Désactiver le compte du professeur : il apparaîtra dans les listes mais ne pourra plus se connecter.		
		<?php
		}
		?>
		</td>
	</tr>
	</table>
	</p>
<?php } ?>

</div>

</form>
</BODY>
</HTML>