From d05caf30fe7a9178aad0cf12839db86ef808af53 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Fri, 6 May 2016 14:44:05 +0200 Subject: [PATCH] =?UTF-8?q?Utilisation=20des=20`classes=20d'age`=20(par=20?= =?UTF-8?q?`5`,=20de=20`5`=20=C3=A0=20`100`)=20pour=20les=20`mini`=20et=20?= =?UTF-8?q?les=20`fiches`=20ainsi=20que=20leur=20inter-synchronisation.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/includes/input-html-data-min.js | 4 +- js/includes/input-html-data.js | 148 +++++++++++++++++---------- js/includes/input-phone-fiche-min.js | 22 ++-- js/includes/input-phone-fiche.js | 44 ++++---- js/includes/input-phone-mini-min.js | 10 +- js/includes/input-phone-mini.js | 27 ++--- 6 files changed, 153 insertions(+), 102 deletions(-) diff --git a/js/includes/input-html-data-min.js b/js/includes/input-html-data-min.js index f04609f..6b785d6 100644 --- a/js/includes/input-html-data-min.js +++ b/js/includes/input-html-data-min.js @@ -1,3 +1,3 @@ var contactBuilder=new HTMLBuilder;contactBuilder.setLayout("

\n\t\n\t\n\t\n\t\n\t\n\t \n\t \n\t \n\t \n\t \n\t \n\t\n

\n\n"); -var miniFicheBuilder=new HTMLBuilder;miniFicheBuilder.setLayout("
\n\t\n\t\n\t\n\t\n\t\n\t

@firstname @lastname @username

\n\t
\t\t@countcall appels\t
\t
\t\t@countsms sms\t
\t
\n\t\t\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\t\n\t
\n\t

Type de relation

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\tO\u00f9 habite t-elle/il\u00a0?
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n
"); -var ficheBuilder=new HTMLBuilder;ficheBuilder.setLayout("
\n\t\n\t\n\t\n\t\n\t\n\t

@firstname @lastname @username

\n\t
\t\t@countcall appels\t
\t
\t\t@countsms sms\t
\t
\n\t\t\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\tSituation familiale:
\n\t\t
\n\t\t   
\n\t\t   
\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t

Type de relation

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t

O\u00f9 habite t-elle/il\u00a0?

\n\t
\n\t\t\n\t
\n\t
\n\t\tO\u00f9 habite t-elle/il\u00a0?
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\tDepuis quand connaissez-vous cette personne ?

\n\t\tmois\n\t\tet    ans.\n\t
\n\t

Contexte de rencontre

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t

Avec quelle fr\u00e9quence discutez-vous avec cette personne\u00a0?

\n\t
\n\t\tFace \u00e0 face
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tT\u00e9l\u00e9phone ou skype et \u00e9quivalent
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tSMS, et \u00e9quivalents
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tCourrier \u00e9lectronique
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tFacebook ou autre r\u00e9seau social
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t

Comment \u00eates-vous \u00ab\u00a0connect\u00e9\u00a0\u00bb \u00e0 cette personne\u00a0?

\n\t
\n\t\tSes coordonn\u00e9es sont dans votre carnet d\u2019adresse
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tSon num\u00e9ro de mobile est enregistr\u00e9 sur votre mobile (ou vous-m\u00eames \u00eates sur le sien)
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tElle figure parmi vos amis facebook
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tElle figure parmi vos amis facebook et vous interagissez avec elle sur ce dispositif r\u00e9guli\u00e8rement
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous le suivez sur Twitter
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous communiquez avec cette personne sur Twitter
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous communiquez dans autre r\u00e9seau social : \n\t
\n\t
\n\t\tVous communiquez dans un autre dispositif (blogs, jeu vid\u00e9o ou autre) : \n\t
\n
\n"); +var miniFicheBuilder=new HTMLBuilder;miniFicheBuilder.setLayout("
\n\t\n\t\n\t\n\t\n\t\n\t

@firstname @lastname @username

\n\t
\t\t@countcall appels\t
\t
\t\t@countsms sms\t
\t
\n\t\t\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\t\n\t
\n\t

Type de relation

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\tO\u00f9 habite t-elle/il\u00a0?
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n
"); +var ficheBuilder=new HTMLBuilder;ficheBuilder.setLayout("
\n\t\n\t\n\t\n\t\n\t\n\t

@firstname @lastname @username

\n\t
\t\t@countcall appels\t
\t
\t\t@countsms sms\t
\t
\n\t\t\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\t\n\t
\n\t
\n\t\tSituation familiale:
\n\t\t
\n\t\t   
\n\t\t   
\n\t\t   \n\t
\n\t
\n\t\t\n\t
\n\t

Type de relation

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t

O\u00f9 habite t-elle/il\u00a0?

\n\t
\n\t\t\n\t
\n\t
\n\t\tO\u00f9 habite t-elle/il\u00a0?
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\tDepuis quand connaissez-vous cette personne ?

\n\t\tmois\n\t\tet    ans.\n\t
\n\t

Contexte de rencontre

\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t
\n\t\t   
\n\t\t   
\n\t\t   
\n\t\t   
\n\t
\n\t

Avec quelle fr\u00e9quence discutez-vous avec cette personne\u00a0?

\n\t
\n\t\tFace \u00e0 face
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tT\u00e9l\u00e9phone ou skype et \u00e9quivalent
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tSMS, et \u00e9quivalents
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tCourrier \u00e9lectronique
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t
\n\t\tFacebook ou autre r\u00e9seau social
\n\t\t   \n\t\t   \n\t\t   \n\t\t   \n\t
\n\t

Comment \u00eates-vous \u00ab\u00a0connect\u00e9\u00a0\u00bb \u00e0 cette personne\u00a0?

\n\t
\n\t\tSes coordonn\u00e9es sont dans votre carnet d\u2019adresse
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tSon num\u00e9ro de mobile est enregistr\u00e9 sur votre mobile (ou vous-m\u00eames \u00eates sur le sien)
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tElle figure parmi vos amis facebook
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tElle figure parmi vos amis facebook et vous interagissez avec elle sur ce dispositif r\u00e9guli\u00e8rement
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous le suivez sur Twitter
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous communiquez avec cette personne sur Twitter
\n\t\t   \n\t\t   \n\t
\n\t
\n\t\tVous communiquez dans autre r\u00e9seau social : \n\t
\n\t
\n\t\tVous communiquez dans un autre dispositif (blogs, jeu vid\u00e9o ou autre) : \n\t
\n
\n"); diff --git a/js/includes/input-html-data.js b/js/includes/input-html-data.js index 866a52e..a4fc456 100644 --- a/js/includes/input-html-data.js +++ b/js/includes/input-html-data.js @@ -67,33 +67,56 @@ miniFicheBuilder.setLayout( "\t
\n"+ - "\t\t\n"+ + "\t\t\n"+ "\t
\n"+ + + "\t
\n"+ "\t\t
\n"+ + "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ @@ -195,7 +218,28 @@ ficheBuilder.setLayout( "\t
\n"+ - "\t\t\n"+ + "\t\t\n"+ "\t
\n"+ "\t
\n"+ @@ -203,41 +247,41 @@ ficheBuilder.setLayout( "\t\t\t\n"+ "\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\t\n"+ - "\t\t\t\t\n"+ - "\t\t\t\t\n"+ + "\t\t\t\t\n"+ + "\t\t\t\t\n"+ "\t\t\n"+ "\t
\n"+ @@ -253,26 +297,26 @@ ficheBuilder.setLayout( "\t\t
\n"+ + "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ diff --git a/js/includes/input-phone-fiche-min.js b/js/includes/input-phone-fiche-min.js index 9b3921c..4dac2c0 100644 --- a/js/includes/input-phone-fiche-min.js +++ b/js/includes/input-phone-fiche-min.js @@ -1,25 +1,25 @@ function inputPhoneFiche(a,b){this.container=a;this.nav_container=b} -inputPhoneFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{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}, +inputPhoneFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{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:!1},{status:!0}],[{status:!1},{status:!0}],[{status:!1},{status:!0}],[{status:!1},{status:!0}], [{status:!1},{status:!0}],[{status:!1},{status:!0}]],connectSpecial:["",""],timestamp:0,valid:!1}}; inputPhoneFiche.prototype.fieldsToStorage=function(){console.log("FICHE: FIELDS TO STORAGE");for(var a=$$("article.relation-panel .fiche-relation"),b=0;b FICHE UPDATE");c={contact:c.contact.value,uid:c.uid.value,sexe:c.sexe,age:c.age.value,job:c.job.value,famsit:c.famsit,studies:c.studies.value, reltype:c.reltype,reltypeSpecial:c.reltypeSpecial.value,city:c.city.value,loc:c.loc,duration:[c.duration[0].value,c.duration[1].value],context:c.context,contextSpecial:[c.contextSpecial[0].value,c.contextSpecial[1].value,c.contextSpecial[2].value],freq:[c.freq0,c.freq1,c.freq2,c.freq3,c.freq4],connect:[c.connect0,c.connect1,c.connect2,c.connect3,c.connect4,c.connect5],connectSpecial:[c.connectSpecial[0].value,c.connectSpecial[1].value],hash:e};c.valid=this.check(c);c.timestamp=Date.now();lsi.set("fiches", c.uid,c)}}}; -inputPhoneFiche.prototype.add=function(a){console.log("FICHE: ADD");if(null==a.uid||null==a.contact)return!1;a.age=null!=a.age?a.age:this.defaultData.age;a.city=null!=a.city?a.city:this.defaultData.city;a.duration[0]=null!=a.duration[0]?a.duration[0]:this.defaultData.duration[0];a.duration[1]=null!=a.duration[1]?a.duration[1]:this.defaultData.duration[1];a.reltypeSpecial=null!=a.reltypeSpecial?a.reltypeSpecial:this.defaultData.reltypeSpecial;a.contextSpecial[0]=null!=a.contextSpecial[0]?a.contextSpecial[0]: -this.defaultData.contextSpecial[0];a.contextSpecial[1]=null!=a.contextSpecial[1]?a.contextSpecial[1]:this.defaultData.contextSpecial[1];a.contextSpecial[2]=null!=a.contextSpecial[2]?a.contextSpecial[2]:this.defaultData.contextSpecial[2];a.connectSpecial[0]=null!=a.connectSpecial[0]?a.connectSpecial[0]:this.defaultData.connectSpecial[0];a.connectSpecial[1]=null!=a.connectSpecial[1]?a.connectSpecial[1]:this.defaultData.connectSpecial[1];a.job=null!=a.job?a.job:this.defaultData.job;a.studies=null!=a.studies? -a.studies:this.defaultData.studies;a.sexe=null!=a.sexe?a.sexe:this.defaultData.sexe;a.famsit=null!=a.famsit?a.famsit:this.defaultData.famsit;a.reltype=null!=a.reltype?a.reltype:this.defaultData.reltype;a.loc=null!=a.loc?a.loc:this.defaultData.loc;a.context=null!=a.context?a.context:this.defaultData.context;a.freq=null!=a.freq?a.freq:this.defaultData.freq;a.connect=null!=a.connect?a.connect:this.defaultData.connect;var b=lsi.get("contacts",a.contact);if(!1===b)return!1;this.container.innerHTML+=ficheBuilder.build({firstname:b.firstname, -lastname:b.lastname,username:0==b.username.length?"":"("+b.username+")",countcall:b.countcall,countsms:b.countsms,uid:a.uid,contact:a.contact,age:a.age,city:a.city,duration0:a.duration[0],duration1:a.duration[1],reltypespecial:a.reltypeSpecial,contextspecial0:a.contextSpecial[0],contextspecial1:a.contextSpecial[1],contextspecial2:a.contextSpecial[2],connectspecial0:a.connectSpecial[0],connectspecial1:a.connectSpecial[1]});b=$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="job"]>option[value="'+ -a.job+'"]');null!=b&&b.setAttribute("selected","selected");b=$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=b&&b.setAttribute("selected","selected");for(var c=$$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'),b=0;binput[type="radio"][data-name="famsit"]');for(b=0;binput[type="radio"][data-name="reltype"]');for(b=0;binput[type="radio"][data-name="loc"]');for(b=0;binput[type="radio"][data-name="context"]');for(b=0;binput[type="radio"][data-name="freq'+c+'"]'),b=0;binput[type="radio"][data-name="connect'+c+'"]'),b=0;bspan>select[data-name="job"]>option[value="'+ +a.job+'"]');null!=b&&b.setAttribute("selected","selected");b=$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=b&&b.setAttribute("selected","selected");b=$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+a.age+'"]');null!=b&&b.setAttribute("selected","selected");for(var c=$$('article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'), +b=0;binput[type="radio"][data-name="famsit"]');for(b=0;binput[type="radio"][data-name="reltype"]');for(b=0;b< +c.length&&binput[type="radio"][data-name="loc"]');for(b=0;binput[type="radio"][data-name="context"]');for(b=0;binput[type="radio"][data-name="freq'+c+'"]'),b=0;binput[type="radio"][data-name="connect'+c+'"]'),b=0;bb.length)for(c in a){for(a=0;-1a;)a++;b.push(a);d=lsi.get("fiches",a);null==d&&(d=this.defaultData); d.uid=a;d.contact=c;lsi.set("fiches",a,d);if(20<=b.length)break}var d=lsi["export"]("fiches"),f;for(f in d)miniData=lsi.get("mini-fiches",d[f].contact),d[f].timestamp>=miniData.timestamp?(miniData.sexe=d[f].sexe,miniData.age=d[f].age,miniData.studies=d[f].studies,miniData.loc=d[f].loc,miniData.reltype=d[f].reltype,miniData.reltypeSpecial=d[f].reltypeSpecial):(d[f].sexe=miniData.sexe,d[f].age=miniData.age,d[f].studies=miniData.studies,d[f].loc=miniData.loc,d[f].reltype=miniData.reltype,d[f].reltypeSpecial= miniData.reltypeSpecial),lsi.set("mini-fiches",d[f].contact,miniData),lsi.set("fiches",f,d[f]);for(f in d)b=lsi.get("contacts",d[f].contact),null!=b&&-1!=b.sms&&-1!=b.call&&(b=10>parseInt(f)?10+b.sms:b.call,b=d[b],b.timestamp>=d[f].timestamp||(c=d[f],c.uid=b.uid,lsi.set("fiches",b.uid,c)))}; inputPhoneFiche.prototype.nav=function(a){if(null==a||!1===a.getData("n")||isNaN(a.getData("n"))||"nav-fiche"!=a.parentNode.id)return!1;for(var b=$$("#nav-fiche > span.active"),c=0;cAPPELS
";for(var c=0;c'+(c%10+1)+"
  ":(10==c&&(this.nav_container.innerHTML+='SMS'),this.nav_container.innerHTML+=''+(c%10+1)+"")}for(var e in a)b=$('#nav-fiche [data-n="'+ a[e].uid+'"]'),!0===a[e].valid?b.addClass("done"):b.remClass("done");this.nav($('#nav-fiche [data-n="'+this.selected+'"]'))}; -inputPhoneFiche.prototype.check=function(a){if(isNaN(parseInt(a.age))||2>a.city.length||isNaN(parseInt(a.duration[0]))&&0a.city.length||isNaN(parseInt(a.duration[0]))&&0a.reltypeSpecial.length||a.context[11].status&&2>a.contextSpecial[0].length||a.context[12].status&&2>a.contextSpecial[1].length||a.context[13].status&&2>a.contextSpecial[2].length?!1:!0}; inputPhoneFiche.prototype.attach=function(a){console.log("FICHE: ATTACH");lsi.createDataset("fiches");this.storageToFields();this.handler=a;var b=this,b=this;this.nav_container.addEventListener("click",function(a){b.nav(a.target);b.handler(a.target)},!1)}; diff --git a/js/includes/input-phone-fiche.js b/js/includes/input-phone-fiche.js index c730e25..58895e4 100644 --- a/js/includes/input-phone-fiche.js +++ b/js/includes/input-phone-fiche.js @@ -14,7 +14,7 @@ inputPhoneFiche.prototype = { handler: null, // Fonction pour l'enregistrement et la synchronisation des données defaultData: { // Valeurs par défaut sexe: [ {status:true}, {status:false}], - age: '', + age: '.', job: '.', famsit: [ {status:true}, {status:false}, {status:false} ], // Choix 1 à 3 studies: '.', @@ -163,7 +163,6 @@ inputPhoneFiche.prototype.add = function(objectData){ /* (0) Gestion du formattage des valeur */ // {1} Champs de texte // - objectData.age = (objectData.age != null) ? objectData.age : this.defaultData.age; objectData.city = (objectData.city != null) ? objectData.city : this.defaultData.city; objectData.duration[0] = (objectData.duration[0] != null) ? objectData.duration[0] : this.defaultData.duration[0]; objectData.duration[1] = (objectData.duration[1] != null) ? objectData.duration[1] : this.defaultData.duration[1]; @@ -177,6 +176,7 @@ inputPhoneFiche.prototype.add = function(objectData){ // {2} Champs // - // 1. L'age est un nombre - if( isNaN(parseInt(ficheData.age)) ) - return false; - // 2. La ville a au moins 2 caractères + // 1. La ville a au moins 2 caractères if( ficheData.city.length < 2 ) return false; - // 3. La durée de la relation en mois est vide ou un nombre + // 2. La durée de la relation en mois est vide ou un nombre if( isNaN(parseInt(ficheData.duration[0])) && ficheData.duration[0].length > 0 ) return false; - // 4. La durée de la relation en année est vide ou un nombre + // 3. La durée de la relation en année est vide ou un nombre if( isNaN(parseInt(ficheData.duration[1])) && ficheData.duration[1].length > 0 ) return false; - // 5. Pour la durée de la relation, au moins un des 2 n'est pas vide + // 4. Pour la durée de la relation, au moins un des 2 n'est pas vide if( ficheData.duration[0].length+ficheData.duration[1].length == 0 ) return false; // {2} Vérification des pour la profession n'est pas indéfini + // 5. Le pour les études n'est pas indéfini + // 6. Le radio // + // 7. L'AGE a un et un seul choix + if( !checkRadioValue(ficheData.age) ) + return false; // 8. Le SEXE a un et un seul choix if( !checkRadioValue(ficheData.sexe) ) return false; @@ -629,7 +634,6 @@ inputPhoneFiche.prototype.check = function(ficheData){ for( var i = 0 ; i < ficheData.freq.length ; i++ ) if( !checkRadioValue( ficheData.freq[i] ) ) return false; - // 14. Les CONNECTION ont un et un seul choix (par question de connection) for( var i = 0 ; i < ficheData.connect.length ; i++ ) if( !checkRadioValue( ficheData.connect[i] ) ) diff --git a/js/includes/input-phone-mini-min.js b/js/includes/input-phone-mini-min.js index 80f961d..840e26d 100644 --- a/js/includes/input-phone-mini-min.js +++ b/js/includes/input-phone-mini-min.js @@ -1,10 +1,10 @@ -function inputPhoneMini(a,b){this.container=a;this.nav_container=b}inputPhoneMini.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:[{status:!0},{status:!1}],age:"",studies:".",loc:[{status:!0},{status:!1},{status:!1},{status:!1}],reltype:[{status:!0},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1}],reltypeSpecial:"",timestamp:0,valid:!1}}; +function inputPhoneMini(a,b){this.container=a;this.nav_container=b}inputPhoneMini.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:[{status:!0},{status:!1}],age:".",studies:".",loc:[{status:!0},{status:!1},{status:!1},{status:!1}],reltype:[{status:!0},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1},{status:!1}],reltypeSpecial:"",timestamp:0,valid:!1}}; inputPhoneMini.prototype.fieldsToStorage=function(){console.log("MINI FICHE: FIELDS TO STORAGE");for(var a=$$("article.mini-relation-panel .mini-fiche-relation"),b=0;b MINI UPDATE");c={uid:c.uid.value,firstname:d.firstname,lastname:d.lastname,username:d.username,sexe:c.sexe,age:c.age.value, studies:c.studies.value,reltype:c.reltype,reltypeSpecial:c.reltypeSpecial.value,loc:c.loc,hash:e};c.valid=this.check(c);c.timestamp=Date.now();lsi.set("mini-fiches",c.uid,c)}}}; inputPhoneMini.prototype.add=function(a){console.log("MINI FICHE: ADD");if(null==a||null==a.uid)return!1;a.age=null!=a.age?a.age:this.defaultData.age;a.sexe=null!=a.sexe?a.sexe:this.defaultData.sexe;a.studies=null!=a.studies?a.studies:this.defaultData.studies;a.reltype=null!=a.reltype?a.reltype:this.defaultData.reltype;a.reltypeSpecial=null!=a.reltypeSpecial?a.reltypeSpecial:this.defaultData.reltypeSpecial;a.loc=null!=a.loc?a.loc:this.defaultData.loc;var b=lsi.get("contacts",a.uid);if(!1===b)return!1; -this.container.innerHTML+=miniFicheBuilder.build({firstname:b.firstname,lastname:b.lastname,username:0==b.username.length?"":"("+b.username+")",countcall:b.countcall,countsms:b.countsms,uid:a.uid,age:a.age,reltypespecial:a.reltypeSpecial,studies:a.studies});b=$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=b&&b.setAttribute("selected","selected");for(var c=$$('article.mini-fiche-relation input[data-name="uid"][value="'+ -a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'),b=0;binput[type="radio"][data-name="reltype"]');for(b=0;binput[type="radio"][data-name="loc"]');for(b=0;bspan>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=b&&b.setAttribute("selected","selected");b=$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+ +a.age+'"]');null!=b&&b.setAttribute("selected","selected");for(var c=$$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'),b=0;binput[type="radio"][data-name="reltype"]');for(b=0;binput[type="radio"][data-name="loc"]');for(b=0;b span.active"),c=0;c'+(c+1)+""}for(var e in a)b=$('#nav-mini [data-n="'+a[e].uid+'"]'),!0===a[e].valid?b.addClass("done"):b.remClass("done");this.nav($('#nav-mini [data-n="'+this.selected+'"]'))}; -inputPhoneMini.prototype.check=function(a){return isNaN(parseInt(a.age))||!checkRadioValue(a.sexe)||"."==a.studies||!checkRadioValue(a.loc)||!checkRadioValue(a.reltype)||a.reltype[8].status&&2>a.reltypeSpecial.length?!1:!0};inputPhoneMini.prototype.attach=function(a){console.log("MINI FICHE: ATTACH");lsi.createDataset("mini-fiches");this.storageToFields();this.handler=a;var b=this;this.nav_container.addEventListener("click",function(a){b.nav(a.target);b.handler(a.target)},!1)}; +inputPhoneMini.prototype.check=function(a){return!(checkRadioValue(a.sexe)&&"."!=a.studies&&checkRadioValue(a.age)&&checkRadioValue(a.loc)&&checkRadioValue(a.reltype))||a.reltype[8].status&&2>a.reltypeSpecial.length?!1:!0};inputPhoneMini.prototype.attach=function(a){console.log("MINI FICHE: ATTACH");lsi.createDataset("mini-fiches");this.storageToFields();this.handler=a;var b=this;this.nav_container.addEventListener("click",function(a){b.nav(a.target);b.handler(a.target)},!1)}; diff --git a/js/includes/input-phone-mini.js b/js/includes/input-phone-mini.js index bff2766..b98b4d8 100644 --- a/js/includes/input-phone-mini.js +++ b/js/includes/input-phone-mini.js @@ -14,7 +14,7 @@ inputPhoneMini.prototype = { handler: null, // Fonction pour l'enregistrement et la synchronisation des données defaultData: { // Valeur par défaut sexe: [{status:true}, {status:false}], - age: '', + age: '.', studies: '.', loc: [{status:true}, {status:false}, {status:false}, {status:false}], reltype: [ {status:true}, {status:false}, {status:false}, {status:false}, {status:false}, @@ -134,9 +134,7 @@ inputPhoneMini.prototype.add = function(objectData){ countcall: associatedContact.countcall, countsms: associatedContact.countsms, uid: objectData.uid, - age: objectData.age, - reltypespecial: objectData.reltypeSpecial, - studies: objectData.studies + reltypespecial: objectData.reltypeSpecial }); @@ -145,19 +143,24 @@ inputPhoneMini.prototype.add = function(objectData){ if( selectedOption != null ) selectedOption.setAttribute('selected', 'selected'); - /* {4} On sélectionna la valeur des boutons pour le SEXE */ + /* {4} On sélectionne la valeur dans le select (manuellement) de l'AGE */ + selectedOption = $('article.mini-fiche-relation input[data-name="uid"][value="'+objectData.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+objectData.age+'"]'); + if( selectedOption != null ) + selectedOption.setAttribute('selected', 'selected'); + + /* {5} On sélectionna la valeur des boutons pour le SEXE */ var sexeCreated = $$('article.mini-fiche-relation input[data-name="uid"][value="'+objectData.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'); for( var i = 0 ; i < sexeCreated.length && i < objectData.sexe.length ; i++ ) if( objectData.sexe[i].status ) sexeCreated[i].setAttribute('checked', 'checked'); else sexeCreated[i].removeAttribute('checked'); - /* {5} On sélectionna la valeur des boutons pour le TYPE DE RELATION */ + /* {6} On sélectionna la valeur des boutons pour le TYPE DE RELATION */ var reltypeCreated = $$('article.mini-fiche-relation input[data-name="uid"][value="'+objectData.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]'); for( var i = 0 ; i < reltypeCreated.length && i < objectData.reltype.length ; i++ ) if( objectData.reltype[i].status ) reltypeCreated[i].setAttribute('checked', 'checked'); else reltypeCreated[i].removeAttribute('checked'); - /* {6} On sélectionna la valeur des boutons pour la LOCATION */ + /* {7} On sélectionna la valeur des boutons pour la LOCATION */ var locCreated = $$('article.mini-fiche-relation input[data-name="uid"][value="'+objectData.uid+'"] ~ h5>input[type="radio"][data-name="loc"]'); for( var i = 0 ; i < locCreated.length && i < objectData.loc.length ; i++ ) if( objectData.loc[i].status ) locCreated[i].setAttribute('checked', 'checked'); @@ -315,15 +318,15 @@ inputPhoneMini.prototype.updateNavBar = function(){ =========================================================*/ inputPhoneMini.prototype.check = function(miniData){ - // 1. L'age est un nombre - if( isNaN(parseInt(miniData.age)) ) - return false; - // 2. Le sexe est défini + // 1. Le sexe est défini if( !checkRadioValue(miniData.sexe) ) return false; - // 3. Le métier est défini + // 2. Le métier est défini if( miniData.studies == '.' ) return false; + // 3. L'age est définie + if( !checkRadioValue(miniData.age) ) + return false; // 4. La distance de localisation est définie if( !checkRadioValue(miniData.loc) ) return false;