<?php
#=
/*
Copyright 2002, Daniel Deycard, Jacques Messines, Stéphanie Roussel, Jean-Marie Treins
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

****************************************************************************/

function insert_lrp($resultat_id,$prof_id,$dateaccord=0) {
if ($dateaccord!=0) $quand="'$dateaccord'";
else $quand='NOW()';
query("INSERT IGNORE INTO lrp SET resultat_id=".seci($resultat_id)." , prof_id=".seci($prof_id)." , quand=$quand");
}


	
function ajout_resultat($eleve_id,$item_id,$disc_id,$message_id,$prof_id=0) {
/*
 si prof_id=0 c'est l'admin qui accorde donc pas de prof indiqué
 si prof_id<>0, on tient un prof ; si nb_validation=1, c'est suffisant pour remplir lrp, sinon, 
 	il faut en chercher d'autres 
 si message_id = -1, c'est l'admin qui octroie des items (accord sans demande préalable)
 si message_id = 0, il faut faire une recherche du message_id, le programme appelant n'a pas pu fournir message_id
 	donc il faut le calculer avec (e,i,d)
*/
$nbv=$_SESSION['etab_nb_validations']; //nombre d'enr max à stocker dans lrp

query("INSERT INTO resultats SET eleve_id=".seci($eleve_id)." , item_id=".seci($item_id)." ,disc_id=".seci($disc_id).", quand=NOW()");
$resultat_id=mysql_insert_id();	


if ($prof_id && $nbv==1) {
	//Voir le cas d'un prof qui a dit non puis oui + un second ?
	insert_lrp($resultat_id, $prof_id);
	}
else {
	//plus difficile... trouver au plus $nbv profs ayant accordé la demande (et la bonne demande !)
	//on se moque d'en connaître éventuellement un (dernier paramètre) puisqu'il faut de toute façon chercher l'autre
	if ($message_id==0) {
		$resd=query("SELECT message_id FROM demandes 
						WHERE eleve_id=$eleve_id AND item_id=$item_id AND disc_id=$disc_id
						ORDER BY quand DESC");
		list($message_id)=mysql_fetch_array($resd);
		}
	if ($message_id>0) {
		$resr=query("SELECT profs.prof_id, quand 
						FROM reponses,profs 
						WHERE reponses.prof_id=profs.prof_id
						AND message_id=$message_id AND accord=1
						ORDER BY prof_id DESC, reponses.quand DESC
						LIMIT $nbv"); //les temoin existant en premier
						
		while (list($prof_id,$quand)=mysql_fetch_array($resr)) {
			insert_lrp($resultat_id,$prof_id,$quand);
			}
		}
	}
	
return $resultat_id;
}
	
?>	    
