From 83ab5702ecadaffd927b606f7d5bc158f1d21d16 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Wed, 27 Apr 2016 18:32:44 +0200 Subject: [PATCH] =?UTF-8?q?V=C3=A9rification=20compl=C3=A8te=20des=20`fich?= =?UTF-8?q?es=20relation`=20(code=20couleur=20sur=20les=20liens=20de=20pag?= =?UTF-8?q?es).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/includes/input-phone-fiche-min.js | 8 +- js/includes/input-phone-fiche.js | 105 ++++++++++++++++++--------- js/includes/input-phone-mini-min.js | 2 +- js/includes/input-phone-mini.js | 2 +- view/js/input-min.js | 8 +- view/js/input.js | 88 +++++++++------------- 6 files changed, 115 insertions(+), 98 deletions(-) diff --git a/js/includes/input-phone-fiche-min.js b/js/includes/input-phone-fiche-min.js index 58e4f53..ace7f55 100644 --- a/js/includes/input-phone-fiche-min.js +++ b/js/includes/input-phone-fiche-min.js @@ -1,7 +1,7 @@ function inputPhoneFiche(a,c){this.container=a;this.nav_container=c} inputPhoneFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{firstname:"",lastname:"",username:"",sexe:[{status:!0},{status:!1}],age:"",job:".",famsit:[{status:!0},{status:!1},{status:!1}],studies:".",reltype:[{status:!0},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1}],reltypeSpecial:"",city:"",loc:[{status:!0},{status:!1},{status:!1},{status:!1}],duration:["",""],context:[{status:!0},{status:!1}, -{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1}],contextSpecial:["","",""],freq:[[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}]],connect:[[{status:!0},{status:!1}],[{status:!0},{status:!1}],[{status:!0}, -{status:!1}],[{status:!0},{status:!1}],[{status:!0},{status:!1}],[{status:!0},{status:!1}]],connectSpecial:["",""]}}; +{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1}],contextSpecial:["","",""],freq:[[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}],[{status:!0},{status:!1},{status:!1},{status:!1}]],connect:[[{status:!1},{status:!0}],[{status:!1},{status:!0}],[{status:!1}, +{status:!0}],[{status:!1},{status:!0}],[{status:!1},{status:!0}],[{status:!1},{status:!0}]],connectSpecial:["",""]}}; inputPhoneFiche.prototype.fieldsToStorage=function(){console.log("FICHE: FIELDS TO STORAGE");for(var a=$$("article.relation-panel .fiche-relation"),c=0;cc;c++){var b=lsi.get("contacts",a[c]),d=lsi.get("fiches",a[c]);null==d&&(d=this.defaultData);d.uid=b.uid;d.firstname=b.firstname;d.lastname=b.lastname;d.username=b.username;lsi.set("fiches",a[c],d)}}; inputPhoneFiche.prototype.nav=function(a){if("undefined"==typeof a||isNaN(a.innerHTML))return!1;for(var c=$$("#nav-fiche > span.active"),b=0;b"+b+""}this.check();this.nav(this.nav_container.children[this.selected])}; -inputPhoneFiche.prototype.check=function(){for(var a=lsi.keys("fiches"),c=0;c // + // 1. L'age est un nombre + validForm = validForm && !isNaN(parseInt(ficheData.age)); + console.log(validForm); + // 2. La ville a au moins 2 caractères + validForm = validForm && ficheData.city.length >= 2; + console.log(validForm); + // 3. La durée de la relation en mois est vide ou un nombre + validForm = validForm && (!isNaN(parseInt(ficheData.duration[0])) || ficheData.duration[0].length == ''); + console.log(validForm); + // 4. La durée de la relation en année est vide ou un nombre + validForm = validForm && (!isNaN(parseInt(ficheData.duration[1])) || ficheData.duration[1].length == ''); + console.log(validForm); + // 5. Pour la durée de la relation, au moins un des 2 n'est pas vide + validForm = validForm && ficheData.duration[0].length+ficheData.duration[1].length > 0; + console.log(validForm); + + // {2} Vérification des pour la profession n'est pas indéfini + validForm = validForm && ficheData.job != '.'; + console.log(validForm); + // 7. Le radio // + // 8. Le SEXE a un et un seul choix + validForm = validForm && checkRadioValue(ficheData.sexe); + console.log(validForm); + // 9. La SITUATION FAMILIALE a un et un seul choix + validForm = validForm && checkRadioValue(ficheData.famsit); + console.log(validForm); + // 10. Le TYPE DE RELATION a un et un seul choix + validForm = validForm && checkRadioValue(ficheData.reltype); + console.log(validForm); + // 11. La DISTANCE DE DOMICILE (location) a un et un seul choix + validForm = validForm && checkRadioValue(ficheData.loc); + console.log(validForm); + // 12. Le CONTEXTE DE RENCONTRE a un et un seul choix + validForm = validForm && checkRadioValue(ficheData.context); + console.log(validForm); + // 13. Les FRÉQUENCES ont un et un seul choix (par question de fréquence) + for( var i = 0 ; i < ficheData.freq.length ; i++ ) + validForm = validForm && checkRadioValue( ficheData.freq[i] ); + console.log(validForm); + + // 14. Les CONNECTION ont un et un seul choix (par question de connection) + for( var i = 0 ; i < ficheData.connect.length ; i++ ) + validForm = validForm && checkRadioValue( ficheData.connect[i] ); + console.log(validForm); + + // {4} dépendant d'un choix d'un radio // + // 15. TYPE DE RELATION si autre est coché (indice 8) + validForm = validForm && (!ficheData.reltype[8].status || ficheData.reltype[8].status && ficheData.reltypeSpecial.length >= 2); + console.log(validForm); + // 16. CONTEXTE DE RELATION si est coché indice 11 + validForm = validForm && (!ficheData.context[11].status || ficheData.context[11].status && ficheData.contextSpecial[0].length >= 2); + + // 17. CONTEXTE DE RELATION si est coché indice 12 + validForm = validForm && (!ficheData.context[12].status || ficheData.context[12].status && ficheData.contextSpecial[1].length >= 2); + + // 18. CONTEXTE DE RELATION si est coché indice 13 + validForm = validForm && (!ficheData.context[13].status || ficheData.context[13].status && ficheData.contextSpecial[2].length >= 2); diff --git a/js/includes/input-phone-mini-min.js b/js/includes/input-phone-mini-min.js index 3582595..686fba4 100644 --- a/js/includes/input-phone-mini-min.js +++ b/js/includes/input-phone-mini-min.js @@ -8,5 +8,5 @@ inputPhoneMini.prototype.storageToFields=function(){console.log("MINI FICHE: STO inputPhoneMini.prototype.sync=function(){console.log("MINI FICHE: SYNC");for(var a=lsi.keys("contacts"),b=0;b span.active"),c=0;c"+c+""}this.check();this.nav(this.nav_container.children[this.selected])}; -inputPhoneMini.prototype.check=function(){for(var a=lsi.keys("mini-fiches"),b=0;b contient les données du sujet -// contacts -> contient les données de tous les contacts -// fiches -> contient les données de toutes les fiches - - - - -/* (3) Fonction qui met à jour un élément et son listener */ -function updateListener(element, eventType, handler){ - element.removeEventListener(eventType, handler); - element.addEventListener(eventType, handler); -} - - - - - - - - - - - - - - - - +// subject -> contient les données du sujet +// contacts -> contient les données de tous les contacts +// mini-fiches -> contient les données de toutes les mini fiches +// fiches -> contient les données de toutes les fiches /* [1] Initialisation des utilitaires et variables @@ -34,17 +10,13 @@ function updateListener(element, eventType, handler){ /* (1) Input de type fichier pour l'import */ var importCallLog = $('input#call_log-import[type="file"]'); -/* (2) Conteneur des fiches relation */ -var ficheContainer = $('article.relation-panel'); - - - -/* (3) Initialisation des managers */ +/* (2) Initialisation des managers */ var subjectManager; var contactManager; var miniManager; var ficheManager; +/* (3) Fonctions utiles */ function dynamicUpdate(){ console.log('DYNAMIC UPDATE: UPDATING'); @@ -160,6 +132,35 @@ include('/js/includes/input-phone-fiche.js', function(){ + + + + + /* [6] Gestion de l'import du fichier + =========================================================*/ + importCallLog.addEventListener('change', function(e){ + /* (1) On rédige la requête */ + var uploadRequest = { + path: 'upload/call_log', + file: importCallLog.files[0] + }; + + /* (2) On effectue l'upload (import) */ + api.send(uploadRequest, function(response){ + console.log( response ); + // Si tout est bon, on met l'input en bleu + if( response.ModuleError == 0 ){ + importCallLog.addClass('active'); + // TODO: Gestion de l'ajout des fiches relation + + } + + }); + + }, false); + + + }) }) }) }); @@ -187,26 +188,7 @@ include('/js/includes/input-phone-fiche.js', function(){ -/* [6] Gestion de l'import du fichier -=========================================================*/ -importCallLog.addEventListener('change', function(e){ - /* (1) On rédige la requête */ - var uploadRequest = { - path: 'upload/call_log', - file: importCallLog.files[0] - }; - /* (2) On effectue l'upload (import) */ - api.send(uploadRequest, function(response){ - console.log( response ); - // Si tout est bon, on met l'input en bleu - if( response.ModuleError == 0 ) - importCallLog.addClass('active'); - - // TODO: Gestion de l'ajout des fiches relation - }); - -}, false);