From 7fdb83f6324cca353e1a3693831b724d73cc48d3 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Sat, 21 Nov 2015 13:13:40 +0100 Subject: [PATCH] Ajout du loader --- css/global.css | 4 ++++ page/_JS/career.js | 6 ++++++ page/_JS/groups.js | 2 ++ page/career.php | 10 +++++----- src/loader.gif | Bin 0 -> 847 bytes 5 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 src/loader.gif diff --git a/css/global.css b/css/global.css index cfc4578..7d3b2b4 100755 --- a/css/global.css +++ b/css/global.css @@ -283,6 +283,7 @@ td select > option{ padding: 0; } + /* @all */ .confirm.all, tr.grayscale .confirm{ margin-top: -.7em; } @@ -296,6 +297,9 @@ select.active + .confirm, display: inline-block; background-image: url(../src/validate.svg); } +.confirm.loading{ + background-image: url(../src/loader.gif); +} .confirm.center{ position: relative; diff --git a/page/_JS/career.js b/page/_JS/career.js index f95f7cf..4365bd8 100755 --- a/page/_JS/career.js +++ b/page/_JS/career.js @@ -180,6 +180,8 @@ if( document.querySelector('#CONTAINER section[name=controlesenseignants]') != n note: obj.inputEl.value.replace(',', '.'), // par précaution, on replace les virgules par des points pour le php (is_numeric) }; + addClass( obj.button, 'loading' ); + API.send(request, function(response){ // on gère la réponse de API, si déplacement effectué, on recharge la page if( response.request == 'success' ) reload(); }); @@ -192,6 +194,8 @@ if( document.querySelector('#CONTAINER section[name=controlesenseignants]') != n // on créé l'évènement de confirmation de la saisie de TOUTES les notes saisies ou modifiées toutEnregistrerBtn.addEventListener('click', function(e){ + addClass( toutEnregistrerBtn, 'loading' ); + var nbRequest = 0; var nbSuccess = 0; @@ -199,6 +203,8 @@ if( document.querySelector('#CONTAINER section[name=controlesenseignants]') != n for( var i = 0 ; i < saisieObj.length ; i++ ){ if( /active/.test(saisieObj[i].inputEl.className) ){ nbRequest += 1; + + addClass( saisieObj[i].button, 'loading' ); var request = { // on définit la requête pour API level_0: 'career', diff --git a/page/_JS/groups.js b/page/_JS/groups.js index ae724d4..38fec3d 100755 --- a/page/_JS/groups.js +++ b/page/_JS/groups.js @@ -47,6 +47,8 @@ if( document.querySelector('#CONTAINER section[name=movestudents]') != null ){ / if( /^confirm/.test(e.target.className) && e.target.parentNode.children[0].dataset.hasOwnProperty('i') && deplacementObj[e.target.parentNode.children[0].dataset.i].button == e.target ){ var obj = deplacementObj[e.target.parentNode.children[0].dataset.i]; + addClass( obj.button, 'loading' ); + var request = { // on définit la requête pour API level_0: 'groups', level_1: 'move', diff --git a/page/career.php b/page/career.php index b3a474a..6f44a48 100755 --- a/page/career.php +++ b/page/career.php @@ -106,7 +106,7 @@ if( permission('student') ){ // si l'utilisateur est connecté et que c'est un foreach($module['controles'] as $controle){ // pour chaque contrôle echo ''; - echo ''.$controle['intitule'].''; + echo ''.$controle['libelle'].''; if( count($controle['notes']) == 0 ) // si aucune note pour ce controle on affiche 'Pas de note' echo 'Pas de note'; @@ -280,7 +280,7 @@ if( permission('teacher') && $controleOpt == null ){ // si c'est un enseignant e foreach($module['controles'] as $controle){ // pour chaque contrôle echo ''; - echo "".$controle['intitule'].""; + echo "".$controle['libelle'].""; echo "".$module['nom']." - ".$module['libelle'].""; echo "".$UE['nom']." - ".$UE['libelle'].""; @@ -348,10 +348,10 @@ elseif( permission('teacher') ){ // si enseignant et qu'un contrôle est spécif echo ""; - echo "'; + echo "'; echo ''; - echo ""; + echo ""; echo ""; @@ -501,7 +501,7 @@ if( permission('teacher') && $etudiantOpt != null ){ foreach($module['controles'] as $controle){ // pour chaque contrôle echo ''; - echo ''; + echo ''; if( count($controle['notes']) == 0 ) // si aucune note pour ce controle on affiche 'Pas de note' echo ''; diff --git a/src/loader.gif b/src/loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..85d7ea3dcc2cca67fd729739336be01a9c48afc0 GIT binary patch literal 847 zcmZ?wbhEHb6krfw_`<;O|Nnp8GX+2Y{EEKbKlABM!?VRcms{_Cd%pecS^En$eUCRb zJXrbS$NN<;kDUK>FXPsX;yVi%NCArfx&2&2f}I@$T#fV$m>Ge375_;&7o{eaq^2m8 zXO?6rBxWU6otbEINafjWLRY2!70|NW6iz~gEtaOk8&Zmh)doe~~B7us%UunTmtm@p|k*U*tz=BAkF!4MHVgQGFmbjeo6 zBo~h@Yz(V*CMM}{^{F-#7>gwzQQn~bgZGURyNQ{3fSOi>euG9&uL@R6z+soy%IayL(jn0+=WV`;*F%T>V5e?LvsP2HtCWbqlEbVA#nav0=JHKcBOC28X^OOB!p8W_OR8B7-$3d4d4|xhxJ; literal 0 HcmV?d00001
".$answer->controle['module'].' - '.$answer->controle['intitule'].'".$answer->controle['module'].' - '.$answer->controle['libelle'].'
".$answer->controle['intitule']."".$answer->controle['libelle']."".$answer->controle['module']." - ".$answer->controle['modulelib']."
'.$controle['intitule'].''.$controle['libelle'].'Pas de note