From 58cb18540721463a008b8883480f9cf24724ba2a Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Thu, 10 Dec 2015 12:23:22 +0100 Subject: [PATCH] =?UTF-8?q?V=C3=A9rification=20pre-submit=20pour=20toutes?= =?UTF-8?q?=20les=20pages=20(cr=C3=A9ations)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Consultations.php | 32 ++++++++++++++++++++++++-------- Medecins.php | 26 +++++++++++++++++++++----- Patients.php | 8 ++++---- css/global.css | 27 +++++++++++---------------- js/consultations.js | 39 +++++++++++++++++++++++++++++++++++++-- js/medecins.js | 26 ++++++++++++++++++++++++-- js/patients.js | 9 ++++++--- 7 files changed, 127 insertions(+), 40 deletions(-) diff --git a/Consultations.php b/Consultations.php index 1b54a7b..ba93971 100755 --- a/Consultations.php +++ b/Consultations.php @@ -3,7 +3,12 @@ require('autoloader.php'); if(!Authentification::checkUser(0)){ header("Location: http://".$_SERVER['HTTP_HOST']."/index.php"); die(); -};?> +}; + +// formattage $_GET['type'] +$answerType = (isset($_GET['type'])) ? $_GET['type'] : null; + +?> @@ -44,8 +49,19 @@ if(!Authentification::checkUser(0)){ + + '; + switch($answerType){ + case 'creation': echo 'Patient créé.'; break; + case 'error': echo 'Une erreur est survenue.'; break; + default: echo 'rien à déclarer ? Non!'; break; + } + echo ''; -
@@ -68,13 +84,13 @@ if(!Authentification::checkUser(0)){ Médecin traitant du patient.
- Date de la consultation
- Heure de la consultation
- Durée de la consultation
+ Date de la consultation
+ Heure de la consultation
+ Durée de la consultation

- - + +
@@ -87,7 +103,7 @@ if(!Authentification::checkUser(0)){ /*************************************/ ?>
-
+


diff --git a/Medecins.php b/Medecins.php index 937b376..99717ea 100755 --- a/Medecins.php +++ b/Medecins.php @@ -3,7 +3,12 @@ require('autoloader.php'); if(!Authentification::checkUser(0)){ header("Location: http://".$_SERVER['HTTP_HOST']."/index.php"); die(); -};?> +}; + +// formattage $_GET['type'] +$answerType = (isset($_GET['type'])) ? $_GET['type'] : null; + +?> @@ -45,22 +50,33 @@ if(!Authentification::checkUser(0)){ + + '; + switch($answerType){ + case 'creation': echo 'Médecin créé.'; break; + case 'error': echo 'Une erreur est survenue.'; break; + default: echo 'rien à déclarer ? Non!'; break; + } + echo ''; -

Ajout d'un nouveau médecin

-
-
+
+



- +
diff --git a/Patients.php b/Patients.php index f083be0..ed521b1 100755 --- a/Patients.php +++ b/Patients.php @@ -7,6 +7,7 @@ if(!Authentification::checkUser(0)){ // formattage $_GET['type'] $answerType = (isset($_GET['type'])) ? $_GET['type'] : null; + ?> @@ -48,15 +49,14 @@ $answerType = (isset($_GET['type'])) ? $_GET['type'] : null;
- + '; switch($answerType){ - - - + case 'creation': echo 'Patient créé.'; break; + case 'error': echo 'Une erreur est survenue.'; break; default: echo 'rien à déclarer ? Non!'; break; } echo ''; diff --git a/css/global.css b/css/global.css index 9f44954..66ae493 100755 --- a/css/global.css +++ b/css/global.css @@ -456,6 +456,7 @@ body{ -o-transition: all .2s ease-in-out; } +#CONTAINER > article input:hover + .info, #CONTAINER > article input:focus + .info{ color: #afafaf; border-color: #afafaf; @@ -557,17 +558,11 @@ input[type=radio] + label:before{ /* @active + label */ input[type=radio]:active + label:before{ - transform: scale(.8); - -moz-transform: scale(.8); - -webkit-transform: scale(.8); - -ms-transform: scale(.8); - -o-transform: scale(.8); - - transform: rotate(360deg); - -moz-transform: rotate(360deg); - -webkit-transform: rotate(360deg); - -ms-transform: rotate(360deg); - -o-transform: rotate(360deg); + transform: rotate(360deg) scale(.9); + -moz-transform: rotate(360deg) scale(.9); + -webkit-transform: rotate(360deg) scale(.9); + -ms-transform: rotate(360deg) scale(.9); + -o-transform: rotate(360deg) scale(.9); } @@ -577,11 +572,11 @@ input[type=radio]:checked + label:before{ background-size: 50% auto; /* animation */ - transform: rotate(360deg); - -moz-transform: rotate(360deg); - -webkit-transform: rotate(360deg); - -ms-transform: rotate(360deg); - -o-transform: rotate(360deg); + transform: rotate(360deg) scale(1.2); + -moz-transform: rotate(360deg) scale(1.2); + -webkit-transform: rotate(360deg) scale(1.2); + -ms-transform: rotate(360deg) scale(1.2); + -o-transform: rotate(360deg) scale(1.2); } diff --git a/js/consultations.js b/js/consultations.js index c11cc67..f3decbf 100755 --- a/js/consultations.js +++ b/js/consultations.js @@ -39,7 +39,7 @@ var inCk = new inputChecker(); var inDate = document.getElementById('inDate'); var inHeure = document.getElementById('inHeure'); var inSecu = document.getElementById('inSecu'); - + var sbCreer = document.getElementById('sbCreer'); // format de date simplifié var dateFormat = new formatChecker(null, @@ -131,4 +131,39 @@ inSecu.addEventListener('keyup', function(e){ // inDate.value = 'x3 F3/a8'; // inHeure.value = 'x3 F3/a8'; -inSecu.value = '1 96 01 31 555 861'; \ No newline at end of file +inSecu.value = '1 96 01 31 555 861'; + + + + + +////////////////////////////// +// VERIFICATION DU SUBMIT() // +////////////////////////////// +sbCreer.addEventListener('click', function(e){ + e.preventDefault(); // on annule le submit() + + var formElements = sbCreer.parentNode.children; + var checker = true; + + // pour chaque du formulaire (fils direct uniquement) + for( var i = 0 ; i < formElements.length ; i++ ){ if( formElements[i] instanceof HTMLInputElement && formElements[i].type == 'text' ){ + // si le champ est requis (required) + if( formElements[i].required ) + checker = checker && formElements[i].className.indexOf('validated') > -1; // TRUE => validé (niveau interface) + // si le champ n'est pas requis et pas vide, on le vide + else if( formElements[i].value != '' && formElements[i].className.indexOf('validated') < 0 ) // si incorrect et pas vide + formElements[i].value = ''; // on vide + }} + + var inputCheckerValid = inCk.check(inDate) && inCk.check(inHeure); + var selectNoDefault = newRDVPatient.value != '*' && newRDVMedecin.value != '*'; + + console.log( inputCheckerValid ); + console.log( checker ); + console.log( selectNoDefault ); + + + if( inputCheckerValid && checker && selectNoDefault ) // si tout es ok uniquement, on submit() + sbCreer.parentNode.submit(); +}, false); \ No newline at end of file diff --git a/js/medecins.js b/js/medecins.js index 06f5781..0d59c67 100755 --- a/js/medecins.js +++ b/js/medecins.js @@ -1,6 +1,6 @@ var crPrenom = document.getElementById('crPrenom'); -var crNom = document.getElementById('crNom'); - +var crNom = document.getElementById('crNom'); +var sbCreer = document.getElementById('sbCreer'); /* VERIFICATION DES SAISIES */ @@ -37,4 +37,26 @@ crNom.addEventListener('keyup', function(e){ else remClass(crNom, 'invalid'); } +}, false); + + + +sbCreer.addEventListener('click', function(e){ + e.preventDefault(); // on annule le submit() + + var formElements = sbCreer.parentNode.children; + var checker = true; + + // pour chaque du formulaire (fils direct uniquement) + for( var i = 0 ; i < formElements.length ; i++ ){ if( formElements[i] instanceof HTMLInputElement && formElements[i].type == 'text' ){ + // si le champ est requis (required) + if( formElements[i].required ) + checker = checker && formElements[i].className.indexOf('validated') > -1; // TRUE => validé (niveau interface) + // si le champ n'est pas requis et pas vide, on le vide + else if( formElements[i].value != '' && formElements[i].className.indexOf('validated') < 0 ) // si incorrect et pas vide + formElements[i].value = ''; // on vide + }} + + if( checker ) // si tout es ok uniquement, on submit() + sbCreer.parentNode.submit(); }, false); \ No newline at end of file diff --git a/js/patients.js b/js/patients.js index 1775645..d0ac857 100755 --- a/js/patients.js +++ b/js/patients.js @@ -20,6 +20,9 @@ inCk.append( inSecu, secuFormat, '1 99 19 99 999 999 99'); // on ajoute le +// var completeAccentList = "àAAÀAAÁÂÒÓÔÕÖØòÒÓÔÕ-ÖØòó_ôõöøÈÉÊËèéêëÇçÒÓÔÕÖØòÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"; +var accentList = 'àÀÈÉÊËèéêëçîïúû'; + /* Met à jour l'état visuel d'un si sa valeur correspond aux initères * * @pInputElement l'élément en question @@ -33,8 +36,8 @@ function checkVARCHAR(pInputElement, pMinLength, pMaxLength, optAlpha){ var varcharRegExp; - if( optAlpha ) varcharRegExp = new RegExp('^([a-z]{'+pMinLength+','+pMaxLength+'})$', 'i'); // only alpha characters - else varcharRegExp = new RegExp('^([\\w -]{'+ pMinLength+','+pMaxLength+'})$', 'i'); // any word character + if( optAlpha ) varcharRegExp = new RegExp('^(['+accentList+'a-z]{'+pMinLength+','+pMaxLength+'})$', 'i'); // only alpha characters + else varcharRegExp = new RegExp('^(['+accentList+'\\w -]{'+ pMinLength+','+pMaxLength+'})$', 'i'); // any word character if( pInputElement.value.match(varcharRegExp) != null || pInputElement.value == '' ){ // si champ correct addClass(pInputElement, 'validated'); @@ -142,7 +145,7 @@ sbCreer.addEventListener('click', function(e){ if( formElements[i].required ) checker = checker && formElements[i].className.indexOf('validated') > -1; // TRUE => validé (niveau interface) // si le champ n'est pas requis et pas vide, on le vide - else if( formElements[i].value != '' && formElements[i].className.indexOf('validated') < 0) // si incorrect et pas vide + else if( formElements[i].value != '' && formElements[i].className.indexOf('validated') < 0 ) // si incorrect et pas vide formElements[i].value = ''; // on vide }}