[x] Saisie de note libre (sans pas de .25)

[x] Pb saisie_notemultiple renvoie "error"
This commit is contained in:
xdrm-brackets 2016-01-07 22:39:01 +01:00
parent 326738d068
commit 99bf5447b9
5 changed files with 18 additions and 12 deletions

View File

@ -51,7 +51,7 @@ APIClass.prototype = {
if( ptrAPI.xhr[i].readyState == 4 ){ // si la requête est terminée if( ptrAPI.xhr[i].readyState == 4 ){ // si la requête est terminée
/* DEBUG : affiche la réponse BRUTE de API.php */ /* DEBUG : affiche la réponse BRUTE de API.php */
// console.log('API.php => '+ptrAPI.xhr[i].responseText); console.log('API.php => '+ptrAPI.xhr[i].responseText);
console.log( JSON.parse(ptrAPI.xhr[i].responseText) ); console.log( JSON.parse(ptrAPI.xhr[i].responseText) );
/* si success de requête */ /* si success de requête */

View File

@ -292,15 +292,22 @@ class noteRepo{
/* [3] On vérifie que la note a bien été créé pour cet étudiant et ce contrôle /* [3] On vérifie que la note a bien été créé pour cet étudiant et ce contrôle
=================================================================================*/ =================================================================================*/
$verifNote = DataBase::getPDO()->prepare("SELECT n.id_note as id $verifNote = DataBase::getPDO()->prepare("SELECT n.id_note as id, n.valeur
FROM note as n, appartenance as app FROM note as n, appartenance as app
WHERE n.id_appartenance = app.id_appartenance WHERE n.id_appartenance = app.id_appartenance
AND app.id_etudiant = :etudiant AND app.id_etudiant = :etudiant
AND n.id_controle = :controle AND n.id_controle = :controle
AND n.valeur = :valeur"); AND n.id_note in (SELECT max(id_note) FROM note GROUP BY id_controle, id_appartenance)
$verifNote->execute(array( ':etudiant' => $etudiant, ':controle' => $controle, ':valeur' => $valeur )); GROUP BY app.id_appartenance, n.id_controle");
$verifNote->execute(array( ':etudiant' => $etudiant, ':controle' => $controle ));
return is_array( $verifNote->fetch() ); $verifResult = $verifNote->fetch();
// si aucun résultat, on retourne FALSE
if( !is_array($verifResult) ) return false;
// sinon on retourne la vérification de la valeur
return $verifResult['valeur'] == $valeur;
} }

View File

@ -152,7 +152,7 @@ if( document.querySelector('#CONTAINER section[name=controlesenseignants]') != n
var nombreModificationEnseignant = 0; // contiendra le nombre de notes saisies var nombreModificationEnseignant = 0; // contiendra le nombre de notes saisies
/* SAISIE A L'AIDE DES <INPUT> */ /* SAISIE A L'AIDE DES <INPUT> */
var saisieInputEnseignant = document.querySelectorAll('#CONTAINER section[name=controlesenseignants] table tr td input[type=number][data-ctrl].saisie_note'); var saisieInputEnseignant = document.querySelectorAll('#CONTAINER section[name=controlesenseignants] table tr td input[type=text][data-ctrl].saisie_note');
var saisieObjEnseignant = []; var saisieObjEnseignant = [];
@ -295,7 +295,7 @@ if( document.querySelector('#CONTAINER section[name=allcontroles]') != null ){ /
var nombreModificationAdmin = 0; // contiendra le nombre de notes saisies var nombreModificationAdmin = 0; // contiendra le nombre de notes saisies
/* SAISIE A L'AIDE DES <INPUT> */ /* SAISIE A L'AIDE DES <INPUT> */
var saisieInputAdmin = document.querySelectorAll('#CONTAINER section[name=allcontroles] table tr td input[type=number][data-ctrl].saisie_note'); var saisieInputAdmin = document.querySelectorAll('#CONTAINER section[name=allcontroles] table tr td input[type=text][data-ctrl].saisie_note');
var saisieObjAdmin = []; var saisieObjAdmin = [];

View File

@ -440,9 +440,9 @@ elseif( permission('teacher') ){ // si enseignant et qu'un contrôle est spécif
echo "<td>"; echo "<td>";
if( $user['note'] != null ) // s'il a déjà une note, on la met par défaut if( $user['note'] != null ) // s'il a déjà une note, on la met par défaut
echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='number' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note' value='".$user['note']."'>"; echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='text' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note' value='".$user['note']."'>";
else // sinon on laisse le champ vide else // sinon on laisse le champ vide
echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='number' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note'>"; echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='text' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note'>";
echo "<div class='confirm'>enregistrer</div>"; echo "<div class='confirm'>enregistrer</div>";
echo "</td>"; echo "</td>";
@ -795,9 +795,9 @@ elseif( permission('master') || permission('admin') ){ // si enseignant et qu'un
if( permission('admin') ){ if( permission('admin') ){
echo "<td>"; echo "<td>";
if( $user['note'] != null ) // s'il a déjà une note, on la met par défaut if( $user['note'] != null ) // s'il a déjà une note, on la met par défaut
echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='number' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note' value='".$user['note']."'>"; echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='text' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note' value='".$user['note']."'>";
else // sinon on laisse le champ vide else // sinon on laisse le champ vide
echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='number' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note'>"; echo "<input class='saisie_note' data-ctrl='".$answer->controle['id']."' type='text' step='.25' min='0' max='".$answer->controle['base']."' placeholder='Note'>";
echo "<div class='confirm'>enregistrer</div>"; echo "<div class='confirm'>enregistrer</div>";
echo "</td>"; echo "</td>";

View File

@ -46,7 +46,6 @@ require_once __ROOT__.'/manager/security.php';
debug(); debug();
// var_dump(DataBase::getInstance()->getSemestreInfoFromTime( strtotime('2017-01-31') )); // var_dump(DataBase::getInstance()->getSemestreInfoFromTime( strtotime('2017-01-31') ));