2015-12-08 22:24:22 +00:00
|
|
|
// /* [1] On récupère les 2 <select> de création de RDV
|
|
|
|
// ===============================================================*/
|
|
|
|
// var newRDVPatient = document.getElementById('newRDVPatient');
|
|
|
|
// var newRDVMedecin = document.getElementById('newRDVMedecin');
|
|
|
|
|
|
|
|
// /* [2] Si on a récupéré les 2 <select>, on créé l'évènement de selection dynamique
|
|
|
|
// ===============================================================*/
|
|
|
|
// if( newRDVPatient != null && newRDVMedecin != null ){
|
|
|
|
|
|
|
|
// /* [1] On selectionne dynamiquement le médecin traitant associé
|
|
|
|
// =======================================================================*/
|
|
|
|
// newRDVPatient.addEventListener('change', function(e){
|
|
|
|
// var child = document.querySelector("#newRDVPatient > option[value='"+newRDVPatient.value+"'][data-medecin]");
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // on selectionne le medecin associé
|
|
|
|
// newRDVMedecin.value = child.dataset.medecin;
|
|
|
|
// addClass(newRDVMedecin, 'associated');
|
|
|
|
// }, false);
|
2015-12-08 07:17:46 +00:00
|
|
|
|
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // [1] On met en valeur le médecin traitant associé (class=associated)
|
|
|
|
// // =======================================================================
|
|
|
|
// newRDVMedecin.addEventListener('change', function(e){
|
|
|
|
// var child = document.querySelector("#newRDVPatient > option[value='"+newRDVPatient.value+"'][data-medecin]");
|
|
|
|
// if( newRDVMedecin.value == child.dataset.medecin ) // si c'est le medecin traitant, on met en valeur l'association
|
|
|
|
// addClass(newRDVMedecin, 'associated');
|
|
|
|
// else
|
|
|
|
// remClass(newRDVMedecin, 'associated');
|
2015-12-08 07:50:30 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// }, false);
|
|
|
|
// }
|
2015-12-08 07:17:46 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// /* GESTION DU NUMÉRO DE SÉCU */
|
|
|
|
// var inSecu = document.getElementById('inSecu'); // input du numéro de sécu
|
|
|
|
// var ftSecu = 'x xx xx xx xxx xxx xx'; // format du numéro de sécu
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// inSecu.addEventListener('keyup', function(e){
|
|
|
|
|
|
|
|
// // pour chaque caractère
|
|
|
|
// for( var i = 0 ; i < inSecu.value.length ; i++ ){
|
|
|
|
|
|
|
|
// // [1] si le caractère n'est pas un nombre, on le supprime
|
|
|
|
// if( isNaN(inSecu.value[i]) )
|
|
|
|
// inSecu.value = inSecu.value.slice(0, i).concat( inSecu.value.slice(i+1) );
|
|
|
|
|
|
|
|
// // [2] si c'est pas un espace mais qu'il en faut un, on met en forme
|
|
|
|
// if( inSecu.value[i] != ' ' && ftSecu[i] == ' ' )
|
|
|
|
// inSecu.value = inSecu.value.slice(0, i).concat(' ').concat( inSecu.value.slice(i) );
|
|
|
|
|
|
|
|
// // [4] Le numéro saisi est trop long, on le coupe + enlève les espaces alentours
|
|
|
|
// inSecu.value = inSecu.value.slice(0, ftSecu.length).trim();
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // si input complet
|
|
|
|
// if( inSecu.value.length == ftSecu.length )
|
|
|
|
// addClass(inSecu, 'validated');
|
|
|
|
// else
|
|
|
|
// remClass(inSecu, 'validated');
|
|
|
|
|
|
|
|
// }, false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// /* GESTION DE LA DATE */
|
|
|
|
// var inDate = document.getElementById('inDate'); // input de la date
|
|
|
|
// var ftDate = 'dd/dd/dddd'; // format de la date
|
|
|
|
|
|
|
|
// inDate.addEventListener('keyup', function(e){
|
|
|
|
|
|
|
|
// // pour chaque caractère
|
|
|
|
// for( var i = 0 ; i < inDate.value.length ; i++ ){
|
|
|
|
|
|
|
|
// // [1] si le caractère n'est pas un nombre, on le supprime
|
|
|
|
// if( isNaN(inDate.value[i]) )
|
|
|
|
// inDate.value = inDate.value.slice(0, i).concat( inDate.value.slice(i+1) );
|
|
|
|
|
|
|
|
// // [2] si c'est pas un espace mais qu'il en faut un, on met en forme
|
|
|
|
// if( inDate.value[i] != '/' && ftDate[i] == '/' )
|
|
|
|
// inDate.value = inDate.value.slice(0, i).concat('/').concat( inDate.value.slice(i) );
|
|
|
|
|
|
|
|
// // [3] Le numéro saisi est trop long, on le coupe + enlève les espaces alentours
|
|
|
|
// inDate.value = inDate.value.slice(0, ftDate.length).trim();
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // [4] vérification de cohérence
|
|
|
|
// var pJour = inDate.value.slice(0,2);
|
|
|
|
// var pMois = inDate.value.slice(3,5);
|
|
|
|
// var pAnnee = inDate.value.slice(6,11);
|
|
|
|
|
|
|
|
// // test de la validité
|
|
|
|
// var pDate = new Date(pJour+'/'+pMois+'/'+pAnnee);
|
|
|
|
// // if( pDate.toString() != 'Invalid Date' ){
|
|
|
|
// // var pDateObj = {
|
|
|
|
// // jour: (''+(pDate.getDate()-1)).length != 2 ? '0'+(pDate.getDate()-1) : ''+(pDate.getDate()-1),
|
|
|
|
// // mois: (''+(pDate.getMonth()+1)).length != 2 ? '0'+(pDate.getMonth()+1) : ''+(pDate.getMonth()+1),
|
|
|
|
// // annee: (''+(pDate.getFullYear())).length != 4 ? '0'+(pDate.getFullYear()) : ''+(pDate.getFullYear()),
|
|
|
|
// // }
|
|
|
|
// // inDate.value = pDateObj.jour +'/'+ pDateObj.mois +'/'+ pDateObj.annee;
|
|
|
|
// // }
|
|
|
|
|
|
|
|
// }, false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// /* GESTION DE L'HEURE */
|
|
|
|
// var inHeure = document.getElementById('inHeure'); // input de la date
|
|
|
|
// var ftHeure = 'dd:dd'; // format de la date
|
|
|
|
|
|
|
|
// inHeure.addEventListener('keyup', function(e){
|
|
|
|
|
|
|
|
// // pour chaque caractère
|
|
|
|
// for( var i = 0 ; i < inHeure.value.length ; i++ ){
|
|
|
|
|
|
|
|
// // [1] si le caractère n'est pas un nombre, on le supprime
|
|
|
|
// if( isNaN(inHeure.value[i]) )
|
|
|
|
// inHeure.value = inHeure.value.slice(0, i).concat( inHeure.value.slice(i+1) );
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // [2] si c'est pas un espace mais qu'il en faut un, on met en forme
|
|
|
|
// if( inHeure.value[i] != ':' && ftHeure[i] == ':' )
|
|
|
|
// inHeure.value = inHeure.value.slice(0, i).concat(':').concat( inHeure.value.slice(i) );
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // [3] Le numéro saisi est trop long, on le coupe + enlève les espaces alentours
|
|
|
|
// inHeure.value = inHeure.value.slice(0, ftHeure.length).trim();
|
|
|
|
// }
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // [4] vérification de cohérence
|
|
|
|
// var pHeures = inHeure.value.slice(0,2);
|
|
|
|
// var pMinuts = inHeure.value.slice(3,5);
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// // on borne les valeurs
|
|
|
|
// if( pHeures.length == 2 ) pHeures = (pHeures>=24) ? '23' : pHeures;
|
|
|
|
// if( pMinuts.length == 2 ) pMinuts = (pMinuts>=60) ? '59' : pMinuts;
|
|
|
|
|
|
|
|
// // on met au bon format dans tous les cas
|
|
|
|
// if( pHeures.length == 2 && pMinuts.length == 2 ){
|
|
|
|
// addClass(inHeure, 'validated');
|
|
|
|
// inHeure.value = pHeures+':'+pMinuts;
|
|
|
|
// }else
|
|
|
|
// remClass(inHeure, 'validated');
|
|
|
|
|
|
|
|
// }, false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* VERIFICATION DES CHAMPS */
|
|
|
|
var inCk = new inputChecker();
|
|
|
|
var inDate = document.getElementById('inDate');
|
|
|
|
var inHeure = document.getElementById('inHeure');
|
|
|
|
var inSecu = document.getElementById('inSecu');
|
|
|
|
|
|
|
|
|
|
|
|
// format de date simplifié
|
|
|
|
var dateFormat = new formatChecker( null,
|
|
|
|
'Ji/Mi/2iii',
|
|
|
|
{ 'J': '[0-3]', 'M': '[0-1]' }
|
|
|
|
);
|
|
|
|
|
|
|
|
// format de temps simplifié
|
|
|
|
var timeFormat = new formatChecker( null,
|
|
|
|
'Hi:Mi',
|
|
|
|
{ 'H': '[0-2]', 'M': '[0-6]' }
|
|
|
|
);
|
|
|
|
|
|
|
|
// format numéro SECU simplifié
|
|
|
|
var secuFormat = new formatChecker( null,
|
|
|
|
'S ii ii ii iii iii ii',
|
|
|
|
{ 'S': '[0-1]' }
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var now = new Date();
|
|
|
|
inCk.append( inDate, dateFormat, now.toLocaleFormat('%d/%m/%Y') );
|
|
|
|
inCk.append( inHeure, timeFormat, now.toLocaleFormat('%H:%M') );
|
|
|
|
inCk.append( inSecu, secuFormat, '1 23 45 67 890 123 45' );
|
|
|
|
|
|
|
|
|
|
|
|
inDate.addEventListener('keyup', function(e){
|
|
|
|
if( inCk.check(inDate) ) addClass(inDate, 'validated'); // on active la classe si correct
|
|
|
|
else{ // si incorrect
|
|
|
|
|
|
|
|
remClass(inDate, 'validated'); // on désactive la classe
|
|
|
|
inCk.correct(inDate, false); // on corrige partiellement
|
|
|
|
if( inCk.check(inDate) ) addClass(inDate, 'validated'); // mise à jour de la classe après correction
|
|
|
|
}
|
|
|
|
}, false);
|
|
|
|
|
|
|
|
|
|
|
|
inHeure.addEventListener('keyup', function(e){
|
|
|
|
if( inCk.check(inHeure) ) addClass(inHeure, 'validated'); // on active la classe
|
|
|
|
else{ // si incorrect
|
|
|
|
|
|
|
|
remClass(inHeure, 'validated'); // on désactive la classe
|
|
|
|
inCk.correct(inHeure, false); // on corrige partiellement
|
|
|
|
if( inCk.check(inHeure) ) addClass(inHeure, 'validated'); // mise à jour de la classe après correction
|
|
|
|
}
|
|
|
|
}, false);
|
|
|
|
|
|
|
|
inSecu.addEventListener('keyup', function(e){
|
|
|
|
if( inCk.check(inSecu) ) addClass(inSecu, 'validated'); // on active la classe
|
|
|
|
else{ // si incorrect
|
|
|
|
|
|
|
|
remClass(inSecu, 'validated'); // on désactive la classe
|
|
|
|
inCk.correct(inSecu, false); // on corrige partiellement
|
|
|
|
if( inCk.check(inSecu) ) addClass(inSecu, 'validated'); // mise à jour de la classe après correction
|
2015-12-08 07:17:46 +00:00
|
|
|
}
|
2015-12-08 22:24:22 +00:00
|
|
|
}, false);
|
|
|
|
|
2015-12-08 07:17:46 +00:00
|
|
|
|
2015-12-08 22:24:22 +00:00
|
|
|
// inDate.value = 'x3 F3/a8';
|
|
|
|
// inHeure.value = 'x3 F3/a8';
|
|
|
|
// inSecu.value = 'x3 F3/a8';
|