Correction de l'affichage top20 pour 'input/facebook' + gestion du chargement des 'phone.mini' et 'facebook.mini' dès le chargement de la page car ça ne marchait pas avant, il fallait 'nav' pour que la première mini se charge correctement

This commit is contained in:
xdrm-brackets 2016-10-12 18:43:51 +02:00
parent d5da2387c2
commit 9ddd6cfe28
15 changed files with 239 additions and 411 deletions

View File

@ -3,6 +3,7 @@
function inputFacebookFiche(container, navContainer){ function inputFacebookFiche(container, navContainer){
this.container = container; this.container = container;
this.nav_container = navContainer; this.nav_container = navContainer;
this.top_size = 10;
} }
/* [1] Attributs /* [1] Attributs
@ -345,90 +346,105 @@ inputFacebookFiche.prototype.storageToFields = function(){
inputFacebookFiche.prototype.sync = function(){ inputFacebookFiche.prototype.sync = function(){
console.group('[facebook.fiche] synchronisation'); console.group('[facebook.fiche] synchronisation');
/* (1) Mise à jour en fonction des contacts Top 20 /* (1) Initialisation
---------------------------------------------------------*/ ---------------------------------------------------------*/
/* (1) On récupère tous les CONTACTS */ /* (1) On récupère tous les CONTACTS */
var contacts = lsi.export('f_contacts'); var contacts = lsi.export('f_contacts');
var addedFicheUids = []; // Contiendra les uids des fiches qui seront crées
/* (2) Contiendra les uids des fiches qui seront crées */
var addedFicheUids = [];
var ficheData, contactData;
/* (2) Mise à jour en fonction des contacts
/* (2) Mise à jour en fonction des contacts APRÈS SAISIE
---------------------------------------------------------*/ ---------------------------------------------------------*/
// Nombre maximum de fiches (20, sauf si moins de 20 contacts, dans ce cas, le nombre de contacts); // Nombre maximum de fiches (40, sauf si moins de 40 contacts, dans ce cas, le nombre de contacts);
var nbMaxFiche = lsi.keys('f_contacts').length < 20 ? lsi.keys('f_contacts').length : 20; var nbMaxFiche = lsi.keys('f_contacts').length < 2*this.top_size ? lsi.keys('f_contacts').length : 2*this.top_size;
// On complète en fonction des contacts séquentiellement HISTORIQUE, puis MESSENGER /* (1) Pour chaque CONTACT, on met à jour/crée la FICHE associée */
if( addedFicheUids.length < nbMaxFiche ){
/* (1) Pour chaque CONTACT, on met à jour/crée la FICHE associée*/
for( var uid in contacts ){ for( var uid in contacts ){
/* (2) On cherche un uid de fiche non existant dans l'intervalle 0-19 */ /* (1) On cherche un uid de fiche non existant dans l'intervalle [0;40[ */
var ficheUid = 0; ficheUid = 0;
while( addedFicheUids.indexOf(ficheUid) > -1 && ficheUid < nbMaxFiche ) while( addedFicheUids.indexOf(ficheUid) > -1 && ficheUid < nbMaxFiche )
ficheUid++; ficheUid++;
// On enregistre le nouvel UID dans les uid crées // On enregistre le nouvel UID dans les uid crées
addedFicheUids.push(ficheUid); addedFicheUids.push(ficheUid);
/* (3) On récupère les informations de la FICHE (si elle existe) */ /* (2) On récupère les informations de la FICHE (si elle existe) */
var ficheData = lsi.get('f_fiches', ficheUid); var ficheData = lsi.get('f_fiches', ficheUid);
// Si la fiche n'existe pas, on la crée avec les valeurs par défaut // Si la fiche n'existe pas, on la crée avec les valeurs par défaut
if( ficheData == null ) !ficheData && ( ficheData = this.defaultData );
ficheData = this.defaultData;
/* (4) On met à jour la fiche ET on l'enregistre */ /* (3) On met à jour la fiche ET on l'enregistre */
ficheData.uid = ficheUid; ficheData.uid = ficheUid;
ficheData.contact = parseInt(uid); ficheData.contact = parseInt(uid);
lsi.set('f_fiches', ficheUid, ficheData); lsi.set('f_fiches', ficheUid, ficheData);
/* (5) Si on a déja crée 10+10 fiches, on arrête */ /* (4) Si on a déja crée 20+20 fiches, on arrête */
if( addedFicheUids.length >= nbMaxFiche ) if( addedFicheUids.length >= nbMaxFiche )
break; break;
} }
}
/* (3) Mise à jour des fiches dupliquées entre le top 10 des APPELS et celui des SMS /* (3) Gestion des fiches dupliquées
---------------------------------------------------------*/ ---------------------------------------------------------*/
ficheData = lsi.export('f_fiches'); ficheData = lsi.export('f_fiches');
for( var key in ficheData ){ for( var key in ficheData ){
/* (1) On récupère le contact associé */ /* (1) On récupère le contact associé */
var associatedContact = lsi.get('f_contacts', ficheData[key].contact); var associatedContact = lsi.get('f_contacts', ficheData[key].contact);
// Si erreur, on passe au suivant // Si erreur, on passe au suivant
if( associatedContact == null ) if( !associatedContact )
continue; continue;
/* (2) Si la fiche n'est pas dans les 2 top 10 (APPELS et SMS) */ /* (3) On récupère la/les autre(s) fiche(s) (clone(s)) */
if( associatedContact.sms == -1 || associatedContact.call == -1 ) var clone = null;
continue; // On passe au suivant var inCall = parseInt( ficheData[key].uid ) < this.top_size; // vrai si dans les APPELS, sinon dans les SMS
for( var i in ficheData ){
/* (3) On récupère l'autre fiche (clone) */ // si on est pas dans le bonne tranche, on passe au suivant
var inCall = parseInt(key) < 10; // Si on est dans le top 10 des APPELS, sinon dans celui des SMS if( inCall && i < this.top_size || !inCall && i >= this.top_size )
var cloneIndex = inCall ? 10+associatedContact.sms : associatedContact.call; // Contient l'index du clone dans l'autre top (APPELS ou SMS)
var clone = ficheData[cloneIndex];
if( clone == null || ficheData[key] == null || clone.timestamp == null || ficheData[key].timestamp == null )
continue; continue;
/* (4) Si le clone a été modifié en dernier, on ne fait rien */ // on récupère le contact associé
if( clone.timestamp >= ficheData[key].timestamp ) contactData = lsi.get('f_contacts', ficheData[i].contact);
if( i == key || !contactData )
continue; continue;
/* (5) On copie les données de la FICHE dans le clone (cas ou la fiche est modifiée en dernier) */ // meme pseudo
var hasSameUsername = contactData.username.length > 0 && associatedContact.username === contactData.username;
// meme lien de contact
var hasSameLink = !isNaN(contactData.existing) && associatedContact.existing === contactData.existing;
// si ont le même contact, alors on enregistre le clone (sauf si la même fiche)
( hasSameUsername || hasSameLink ) && ( clone = ficheData[i] );
if( clone !== null )
break;
}
/* (4) Si c'est le clone qui a été modifié en dernier, on ne fait rien */
if( clone === null || clone.timestamp > ficheData[key].timestamp )
continue;
/* (5) On copie les données de la FICHE dans le CLONE */
var obj = ficheData[key]; var obj = ficheData[key];
obj.uid = clone.uid; obj.uid = clone.uid;
lsi.set('f_fiches', clone.uid, obj); lsi.set('f_fiches', clone.uid, obj);
} }
console.groupEnd(); console.groupEnd();
}; };
@ -442,10 +458,10 @@ inputFacebookFiche.prototype.sync = function(){
=========================================================*/ =========================================================*/
inputFacebookFiche.prototype.nav = function(element){ inputFacebookFiche.prototype.nav = function(element){
/* (1) On vérifie que l'élément contient un nombre et existe */ /* (1) On vérifie que l'élément contient un nombre et existe */
if( element == null ) if( !(element instanceof Element) )
return false; return false;
if( element.getData('n') === false || isNaN(element.getData('n')) || element.parentNode.id != 'f_nav-fiche' ) if( !element.getData('n') || isNaN(element.getData('n')) || element.parentNode.id != 'f_nav-fiche' )
return false; return false;
/* (2) On désactive tous les éléments actifs */ /* (2) On désactive tous les éléments actifs */
@ -480,22 +496,22 @@ inputFacebookFiche.prototype.updateNavBar = function(){
// Si 1ère valeur du top 10 des APPELS, on ajoute le bandeau "APPELS" // Si 1ère valeur du top 20 des APPELS, on ajoute le bandeau "APPELS"
if( i == 0 ) if( i == 0 )
this.nav_container.innerHTML += '<span>HISTORIQUE</span>'; this.nav_container.innerHTML += '<span>HISTORIQUE</span>';
// Si fin du top 10 des APPELS, on met un espace et un border-right // Si fin du top 20 des APPELS, on met un espace et un border-right
if( i < 10 && k < keys.length-1 && keys[k+1] >= 10 ) if( i < 20 && k < keys.length-1 && keys[k+1] >= 20 )
this.nav_container.innerHTML += '<span data-n="'+i+'" class="lc">'+(i%10 + 1)+'</span>&nbsp;&nbsp;'; this.nav_container.innerHTML += '<span data-n="'+i+'" class="lc">'+(i%20 + 1)+'</span>&nbsp;&nbsp;';
// Si début du top 10 des SMS, on met le label 'SMS' et un border-left // Si début du top 20 des SMS, on met le label 'SMS' et un border-left
else if( i == 10 ){ else if( i == 20 ){
this.nav_container.innerHTML += '<span class="fc">MESSENGER</span>'; this.nav_container.innerHTML += '<br><span class="fc">MESSENGER&nbsp;</span>';
this.nav_container.innerHTML += '<span data-n="'+i+'">'+(i%10 + 1)+'</span>'; this.nav_container.innerHTML += '<span data-n="'+i+'">'+(i%20 + 1)+'</span>';
// Sinon, on ajoute juste le bouton // Sinon, on ajoute juste le bouton
}else }else
this.nav_container.innerHTML += '<span data-n="'+i+'">'+(i%10 + 1)+'</span>'; this.nav_container.innerHTML += '<span data-n="'+i+'">'+(i%20 + 1)+'</span>';
} }
/* (3) On montre les FICHES qui sont correctes */ /* (3) On montre les FICHES qui sont correctes */

View File

@ -10,7 +10,7 @@ function inputFacebookMini(container, navContainer){
inputFacebookMini.prototype = { inputFacebookMini.prototype = {
container: this.container, // Conteneur des mini fiches relation container: this.container, // Conteneur des mini fiches relation
nav_container: this.nav_container, // Conteneur de la navigation entre les MINI fiches nav_container: this.nav_container, // Conteneur de la navigation entre les MINI fiches
selected: 0, // UID de la MINI fiche sélectionnée selected: null, // UID de la MINI fiche sélectionnée
handler: null, // Fonction pour l'enregistrement et la synchronisation des données handler: null, // Fonction pour l'enregistrement et la synchronisation des données
defaultData: { // Valeur par défaut defaultData: { // Valeur par défaut
sexe: '2', sexe: '2',
@ -216,24 +216,51 @@ inputFacebookMini.prototype.add = function(objectData){
inputFacebookMini.prototype.storageToFields = function(){ inputFacebookMini.prototype.storageToFields = function(){
console.group('[facebook.mini] storage to fields'); console.group('[facebook.mini] storage to fields');
// {1} Pour chaque contact du 'localStorage' // /* (1) On charge le contact selectionné
---------------------------------------------------------*/
var miniData = lsi.get('f_mini-fiches', this.selected); var miniData = lsi.get('f_mini-fiches', this.selected);
// Si on a rien trouvé, on ne fait rien /* (2.1) Si on ne trouve pas
if( miniData == null ){ ---------------------------------------------------------*/
if( miniData === null ){
/* (2.1.1) Si `selected` est pas encore défini
---------------------------------------------------------*/
if( this.selected === null ){
var k = lsi.keys('f_mini-fiches');
/* (1) S'il y a au moins 1 contact -> on le prend */
if( k.length > 0 ){
this.selected = k[0];
return this.storageToFields();
/* (2) Sinon, on quitte */
}else
return false;
/* (2.1.2) S'il est déja défini, on met à jour la nav
---------------------------------------------------------*/
}else{
this.updateNavBar(); this.updateNavBar();
return false; return false;
} }
}
// On réinitialise le HTML
/* (2.2) Si on trouve
---------------------------------------------------------*/
/* (1) On réinitialise le HTML */
this.container.innerHTML = ''; this.container.innerHTML = '';
// {2} On affiche la MINI fiche sélectionnée // /* (2) On affiche la MINI fiche sélectionnée */
this.add(miniData); this.add(miniData);
// {3} On met à jour la navigation // /* (3) On met à jour la navigation */
this.updateNavBar(); this.updateNavBar();
console.groupEnd(); console.groupEnd();
}; };
@ -331,10 +358,10 @@ inputFacebookMini.prototype.sync = function(){
=========================================================*/ =========================================================*/
inputFacebookMini.prototype.nav = function(element){ inputFacebookMini.prototype.nav = function(element){
/* (1) On vérifie que l'élément contient un nombre et existe */ /* (1) On vérifie que l'élément contient un nombre et existe */
if( element == null ) if( !(element instanceof Element) )
return false; return false;
if( element.getData('n') === false || isNaN(element.getData('n')) || element.parentNode.id != 'f_nav-mini' ) if( !element.getData('n') || isNaN(element.getData('n')) || element.parentNode.id != 'f_nav-mini' )
return false; return false;
/* (2) On désactive tous les éléments actifs */ /* (2) On désactive tous les éléments actifs */
@ -452,13 +479,12 @@ inputFacebookMini.prototype.attach = function(handler){
this.handler = handler; this.handler = handler;
/* (2) On attache l'évènement sur le conteneur de navigation */ /* (2) On attache l'évènement sur le conteneur de navigation */
var ptr = this;
this.nav_container.addEventListener('click', function(e){ this.nav_container.addEventListener('click', function(e){
// 1. On gère la navigation // 1. On gère la navigation
ptr.nav(e.target); this.nav(e.target);
// 2. On gere le chargement dynamique // 2. On gere le chargement dynamique
ptr.handler(e.target); this.handler(e.target);
}, false); }.bind(this), false);
console.groupEnd(); console.groupEnd();
}; };

View File

@ -8,7 +8,7 @@ fContactBuilder.setLayout(
"\t<input type='hidden' data-name='uid' value='@uid'>\n"+ "\t<input type='hidden' data-name='uid' value='@uid'>\n"+
"\t<span class='select-container nobold'><select data-name='existing'>\n"+ "\t<span class='select-container nobold'><select data-name='existing'>\n"+
"\t\t<option value='.'>Utiliser pseudo</option>\n"+ "\t\t<option value='.'>Contact existant</option>\n"+
"@contacts"+ "@contacts"+
"\t</select></span>\n"+ "\t</select></span>\n"+

View File

@ -15,7 +15,7 @@ pContactBuilder.setLayout(
// "\t<input type='text' data-name='number' placeholder='Numéro de téléphone' value='@number' > \n"+ // "\t<input type='text' data-name='number' placeholder='Numéro de téléphone' value='@number' > \n"+
"\t<span class='select-container nobold'><select data-name='existing'>\n"+ "\t<span class='select-container nobold'><select data-name='existing'>\n"+
"\t\t<option value='.'>Utiliser contact existant</option>\n"+ "\t\t<option value='.'>Contact existant</option>\n"+
"@contacts"+ "@contacts"+
"\t</select></span>\n"+ "\t</select></span>\n"+

View File

@ -3,6 +3,7 @@
function inputPhoneFiche(container, navContainer){ function inputPhoneFiche(container, navContainer){
this.container = container; this.container = container;
this.nav_container = navContainer; this.nav_container = navContainer;
this.top_size = 10;
} }
/* [1] Attributs /* [1] Attributs
@ -369,7 +370,7 @@ inputPhoneFiche.prototype.sync = function(){
/* (2) Mise à jour en fonction des contacts APRÈS SAISIE /* (2) Mise à jour en fonction des contacts APRÈS SAISIE
---------------------------------------------------------*/ ---------------------------------------------------------*/
// Nombre maximum de fiches (40, sauf si moins de 40 contacts, dans ce cas, le nombre de contacts); // Nombre maximum de fiches (40, sauf si moins de 40 contacts, dans ce cas, le nombre de contacts);
var nbMaxFiche = lsi.keys('p_contacts').length < 40 ? lsi.keys('p_contacts').length : 40; var nbMaxFiche = lsi.keys('p_contacts').length < 2*this.top_size ? lsi.keys('p_contacts').length : 2*this.top_size;
/* (1) Pour chaque CONTACT, on met à jour/crée la FICHE associée */ /* (1) Pour chaque CONTACT, on met à jour/crée la FICHE associée */
for( var uid in contacts ){ for( var uid in contacts ){
@ -415,12 +416,12 @@ inputPhoneFiche.prototype.sync = function(){
/* (3) On récupère la/les autre(s) fiche(s) (clone(s)) */ /* (3) On récupère la/les autre(s) fiche(s) (clone(s)) */
var clone = null; var clone = null;
var inCall = parseInt( ficheData[key].uid ) < 20; // vrai si dans les APPELS, sinon dans les SMS var inCall = parseInt( ficheData[key].uid ) < this.top_size; // vrai si dans les APPELS, sinon dans les SMS
for( var i in ficheData ){ for( var i in ficheData ){
// si on est pas dans le bonne tranche, on passe au suivant // si on est pas dans le bonne tranche, on passe au suivant
if( inCall && i < 20 || !inCall && i >= 20 ) if( inCall && i < this.top_size || !inCall && i >= this.top_size )
continue; continue;
// on récupère le contact associé // on récupère le contact associé
@ -643,13 +644,12 @@ inputPhoneFiche.prototype.attach = function(handler){
this.handler = handler; this.handler = handler;
/* (2) On attache l'évènement sur le bouton d'ajout de contact */ /* (2) On attache l'évènement sur le bouton d'ajout de contact */
var ptr = this;
this.nav_container.addEventListener('click', function(e){ this.nav_container.addEventListener('click', function(e){
// 1. On gère la navigation // 1. On gère la navigation
ptr.nav(e.target); this.nav(e.target);
// 2. On gere le chargement dynamique // 2. On gere le chargement dynamique
ptr.handler(e.target); this.handler(e.target);
}, false); }.bind(this), false);
console.groupEnd(); console.groupEnd();

View File

@ -10,7 +10,7 @@ function inputPhoneMini(container, navContainer){
inputPhoneMini.prototype = { inputPhoneMini.prototype = {
container: this.container, // Conteneur des mini fiches relation container: this.container, // Conteneur des mini fiches relation
nav_container: this.nav_container, // Conteneur de la navigation entre les MINI fiches nav_container: this.nav_container, // Conteneur de la navigation entre les MINI fiches
selected: 0, // UID de la MINI fiche sélectionnée selected: null, // UID de la MINI fiche sélectionnée
handler: null, // Fonction pour l'enregistrement et la synchronisation des données handler: null, // Fonction pour l'enregistrement et la synchronisation des données
defaultData: { // Valeur par défaut defaultData: { // Valeur par défaut
contact: null, contact: null,
@ -225,22 +225,48 @@ inputPhoneMini.prototype.add = function(objectData){
inputPhoneMini.prototype.storageToFields = function(){ inputPhoneMini.prototype.storageToFields = function(){
console.group('[phone.mini] storage to fields'); console.group('[phone.mini] storage to fields');
// {1} Pour chaque contact du 'localStorage' // /* (1) On charge le contact selectionné
---------------------------------------------------------*/
var miniData = lsi.get('p_mini-fiches', this.selected); var miniData = lsi.get('p_mini-fiches', this.selected);
// Si on a rien trouvé, on ne fait rien /* (2.1) Si on ne trouve pas
if( miniData == null ){ ---------------------------------------------------------*/
if( miniData === null ){
/* (2.1.1) Si `selected` est pas encore défini
---------------------------------------------------------*/
if( this.selected === null ){
var k = lsi.keys('p_mini-fiches');
/* (1) S'il y a au moins 1 contact -> on le prend */
if( k.length > 0 ){
this.selected = k[0];
return this.storageToFields();
/* (2) Sinon, on quitte */
}else
return false;
/* (2.1.2) S'il est déja défini, on met à jour la nav
---------------------------------------------------------*/
}else{
this.updateNavBar(); this.updateNavBar();
return false; return false;
} }
}
// On réinitialise le HTML
/* (2.2) Si on trouve
---------------------------------------------------------*/
/* (1) On réinitialise le HTML */
this.container.innerHTML = ''; this.container.innerHTML = '';
// {2} On affiche la MINI fiche sélectionnée // /* (2) On affiche la MINI fiche sélectionnée */
this.add(miniData); this.add(miniData);
// {3} On met à jour la navigation // /* (3) On met à jour la navigation */
this.updateNavBar(); this.updateNavBar();
@ -331,10 +357,10 @@ inputPhoneMini.prototype.sync = function(){
=========================================================*/ =========================================================*/
inputPhoneMini.prototype.nav = function(element){ inputPhoneMini.prototype.nav = function(element){
/* (1) On vérifie que l'élément contient un nombre et existe */ /* (1) On vérifie que l'élément contient un nombre et existe */
if( element == null ) if( !(element instanceof Element) )
return false; return false;
if( element.getData('n') === false || isNaN(element.getData('n')) || element.parentNode.id != 'p_nav-mini' ) if( !element.getData('n') || isNaN(element.getData('n')) || element.parentNode.id != 'p_nav-mini' )
return false; return false;
/* (2) On désactive tous les éléments actifs */ /* (2) On désactive tous les éléments actifs */
@ -375,7 +401,7 @@ inputPhoneMini.prototype.updateNavBar = function(){
if( isNaN(key) ) if( isNaN(key) )
continue; continue;
var currentElement = $('[data-sublink="phone"] #p_nav-mini span[data-n="'+miniData[key].uid+'"]'); var currentElement = $('[data-sublink="phone"] #p_nav-mini [data-n="'+miniData[key].uid+'"]');
if( currentElement == null ) if( currentElement == null )
continue; continue;
@ -394,7 +420,7 @@ inputPhoneMini.prototype.updateNavBar = function(){
/* (3) On séléctionne par défaut la dernière MINI fiche sélectionnée */ /* (3) On séléctionne par défaut la dernière MINI fiche sélectionnée */
this.nav( $('[data-sublink="phone"] #p_nav-mini span[data-n="'+this.selected+'"]') ); this.nav( $('[data-sublink="phone"] #p_nav-mini [data-n="'+this.selected+'"]') );
}; };
@ -452,13 +478,12 @@ inputPhoneMini.prototype.attach = function(handler){
this.handler = handler; this.handler = handler;
/* (2) On attache l'évènement sur le conteneur de navigation */ /* (2) On attache l'évènement sur le conteneur de navigation */
var ptr = this;
this.nav_container.addEventListener('click', function(e){ this.nav_container.addEventListener('click', function(e){
// 1. On gère la navigation // 1. On gère la navigation
ptr.nav(e.target); this.nav(e.target);
// 2. On gere le chargement dynamique // 2. On gere le chargement dynamique
ptr.handler(e.target); this.handler(e.target);
}, false); }.bind(this), false);
console.groupEnd(); console.groupEnd();

View File

@ -1,21 +1,21 @@
function inputFacebookFiche(a,b){this.container=a;this.nav_container=b}inputFacebookFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:"2",age:".",job:".",famsit:"0",studies:"0",reltype:"0",reltypeSpecial:"",city:"",quartier:"",cp:"",loc:"0",duration:["",""],context:"0",contextSpecial:["","",""],freq:["4","9","14","19","24"],connect:"1 3 5 7 9 11".split(" "),connectSpecial:["",""],timestamp:0,valid:!1}}; function inputFacebookFiche(a,c){this.container=a;this.nav_container=c;this.top_size=10}inputFacebookFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:"2",age:".",job:".",famsit:"0",studies:"0",reltype:"0",reltypeSpecial:"",city:"",quartier:"",cp:"",loc:"0",duration:["",""],context:"0",contextSpecial:["","",""],freq:["4","9","14","19","24"],connect:"1 3 5 7 9 11".split(" "),connectSpecial:["",""],timestamp:0,valid:!1}};
inputFacebookFiche.prototype.fieldsToStorage=function(){console.group("[facebook.fiche] fields to storage");for(var a=$$('[data-sublink="facebook"] article.relation-panel .fiche-relation'),b=0;b<a.length;b++){var c=(new FormDeflater(a[b],["input","select"],["data-name"])).deflate(),e=crc32(JSON.stringify(c)),d=lsi.get("f_fiches",c.uid);if(!1!==d){if(null!=d.hash&&d.hash==e)return;c={contact:parseInt(c.contact),uid:parseInt(c.uid),sexe:c.sexe,age:c.age,job:c.job,famsit:c.famsit,studies:c.studies,reltype:c.reltype, inputFacebookFiche.prototype.fieldsToStorage=function(){console.group("[facebook.fiche] fields to storage");for(var a=$$('[data-sublink="facebook"] article.relation-panel .fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),d=crc32(JSON.stringify(b)),e=lsi.get("f_fiches",b.uid);if(!1!==e){if(null!=e.hash&&e.hash==d)return;b={contact:parseInt(b.contact),uid:parseInt(b.uid),sexe:b.sexe,age:b.age,job:b.job,famsit:b.famsit,studies:b.studies,reltype:b.reltype,
reltypeSpecial:c.reltypeSpecial,city:c.city,quartier:c.quartier,cp:c.cp,loc:c.loc,duration:c.duration,context:c.context,contextSpecial:c.contextSpecial,freq:c.freq,connect:c.connect,connectSpecial:c.connectSpecial,hash:e};c.valid=this.check(c);0<diff(d,c,["hash","valid","timestamp"]).length&&(console.log(diff(d,c,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),c.timestamp=Date.now());lsi.set("f_fiches",c.uid,c)}}console.groupEnd()}; reltypeSpecial:b.reltypeSpecial,city:b.city,quartier:b.quartier,cp:b.cp,loc:b.loc,duration:b.duration,context:b.context,contextSpecial:b.contextSpecial,freq:b.freq,connect:b.connect,connectSpecial:b.connectSpecial,hash:d};b.valid=this.check(b);0<diff(e,b,["hash","valid","timestamp"]).length&&(console.log(diff(e,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("f_fiches",b.uid,b)}}console.groupEnd()};
inputFacebookFiche.prototype.add=function(a){if(null==a.uid||isNaN(a.uid)||null==a.contact||isNaN(a.contact))return!1;a.city=null!=a.city?a.city:this.defaultData.city;a.quartier=null!=a.quartier?a.quartier:this.defaultData.quartier;a.cp=null!=a.cp?a.cp:this.defaultData.cp;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; inputFacebookFiche.prototype.add=function(a){if(null==a.uid||isNaN(a.uid)||null==a.contact||isNaN(a.contact))return!1;a.city=null!=a.city?a.city:this.defaultData.city;a.quartier=null!=a.quartier?a.quartier:this.defaultData.quartier;a.cp=null!=a.cp?a.cp:this.defaultData.cp;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.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.age=null!=a.age?a.age:this.defaultData.age;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: a.job=null!=a.job?a.job:this.defaultData.job;a.studies=null!=a.studies?a.studies:this.defaultData.studies;a.age=null!=a.age?a.age:this.defaultData.age;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("f_contacts",a.contact);if(!1===b)return!1;if(!isNaN(b.existing)){var c=lsi.get("f_friends",b.existing);b.username=c.name;a.age=c.age;a.sexe=c.sexe;a.loc=c.dist;isNaN(c.reltype)?(a.reltype=10,a.reltypeSpecial=c.reltype):(a.reltype=c.reltype,a.reltypeSpecial="");null!=c.studies2&&(a.studies=c.studies2,a.job=c.job,a.famsit=c.famsit,a.city=c.city,a.cp=c.cp,a.quartier=c.quartier,a.duration[0]=c.duration[0],a.duration[1]=c.duration[1],a.context=c.context,a.contextSpecial= this.defaultData.connect;var c=lsi.get("f_contacts",a.contact);if(!1===c)return!1;if(!isNaN(c.existing)){var b=lsi.get("f_friends",c.existing);c.username=b.name;a.age=b.age;a.sexe=b.sexe;a.loc=b.dist;isNaN(b.reltype)?(a.reltype=10,a.reltypeSpecial=b.reltype):(a.reltype=b.reltype,a.reltypeSpecial="");null!=b.studies2&&(a.studies=b.studies2,a.job=b.job,a.famsit=b.famsit,a.city=b.city,a.cp=b.cp,a.quartier=b.quartier,a.duration[0]=b.duration[0],a.duration[1]=b.duration[1],a.context=b.context,a.contextSpecial=
c.contextExtra,a.connect=c.connect,a.connectSpecial=c.connectExtra,a.freq=c.freq)}this.container.innerHTML+=fFicheBuilder.build({name:b.username,countcall:b.countcall,countsms:b.countsms,uid:a.uid,contact:a.contact,city:a.city,quartier:a.quartier,cp:a.cp,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.contextExtra,a.connect=b.connect,a.connectSpecial=b.connectExtra,a.freq=b.freq)}this.container.innerHTML+=fFicheBuilder.build({name:c.username,countcall:c.countcall,countsms:c.countsms,uid:a.uid,contact:a.contact,city:a.city,quartier:a.quartier,cp:a.cp,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=$('[data-sublink="facebook"] 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=$('[data-sublink="facebook"] 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=$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+ c=$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="job"]>option[value="'+a.job+'"]');null!=c&&c.setAttribute("selected","selected");c=$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=c&&c.setAttribute("selected","selected");c=$('[data-sublink="facebook"] 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");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(b=0;b<c.length;b++)c[b].value==a.sexe?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="famsit"]'); a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+a.age+'"]');null!=c&&c.setAttribute("selected","selected");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(c=0;c<b.length;c++)b[c].value==a.sexe?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="famsit"]');
for(b=0;b<c.length;b++)c[b].value==a.famsit?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(b=0;b<c.length;b++)c[b].value==a.reltype?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]'); for(c=0;c<b.length;c++)b[c].value==a.famsit?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(c=0;c<b.length;c++)b[c].value==a.reltype?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');
for(b=0;b<c.length;b++)c[b].value==a.loc?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="context"]');for(b=0;b<c.length;b++)c[b].value==a.context?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="freq"]'); for(c=0;c<b.length;c++)b[c].value==a.loc?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="context"]');for(c=0;c<b.length;c++)b[c].value==a.context?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="freq"]');
for(b=0;b<c.length;b++)-1<a.freq.indexOf(c[b].value)?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="connect"]');for(b=0;b<c.length;b++)-1<a.connect.indexOf(c[b].value)?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked")}; for(c=0;c<b.length;c++)-1<a.freq.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="connect"]');for(c=0;c<b.length;c++)-1<a.connect.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked")};
inputFacebookFiche.prototype.storageToFields=function(){console.group("[facebook.fiche] storage to fields");var a=lsi["export"]("f_fiches");this.container.innerHTML="";for(var b in a)a[b].uid==this.selected&&this.add(a[b]);this.updateNavBar();console.groupEnd()}; inputFacebookFiche.prototype.storageToFields=function(){console.group("[facebook.fiche] storage to fields");var a=lsi["export"]("f_fiches");this.container.innerHTML="";for(var c in a)a[c].uid==this.selected&&this.add(a[c]);this.updateNavBar();console.groupEnd()};
inputFacebookFiche.prototype.sync=function(){console.group("[facebook.fiche] synchronisation");var a=lsi["export"]("f_contacts"),b=[],c=20>lsi.keys("f_contacts").length?lsi.keys("f_contacts").length:20;if(b.length<c)for(var e in a){for(var d=0;-1<b.indexOf(d)&&d<c;)d++;b.push(d);a=lsi.get("f_fiches",d);null==a&&(a=this.defaultData);a.uid=d;a.contact=parseInt(e);lsi.set("f_fiches",d,a);if(b.length>=c)break}var a=lsi["export"]("f_fiches"),f;for(f in a)b=lsi.get("f_contacts",a[f].contact),null!=b&&-1!= inputFacebookFiche.prototype.sync=function(){console.group("[facebook.fiche] synchronisation");var a=lsi["export"]("f_contacts"),c=[],b,d=lsi.keys("f_contacts").length<2*this.top_size?lsi.keys("f_contacts").length:2*this.top_size,e;for(e in a){for(ficheUid=0;-1<c.indexOf(ficheUid)&&ficheUid<d;)ficheUid++;c.push(ficheUid);a=lsi.get("f_fiches",ficheUid);!a&&(a=this.defaultData);a.uid=ficheUid;a.contact=parseInt(e);lsi.set("f_fiches",ficheUid,a);if(c.length>=d)break}var a=lsi["export"]("f_fiches"),f;
b.sms&&-1!=b.call&&(b=10>parseInt(f)?10+b.sms:b.call,b=a[b],null==b||null==a[f]||null==b.timestamp||null==a[f].timestamp||b.timestamp>=a[f].timestamp||(c=a[f],c.uid=b.uid,lsi.set("f_fiches",b.uid,c)));console.groupEnd()}; for(f in a)if(d=lsi.get("f_contacts",a[f].contact)){c=null;e=parseInt(a[f].uid)<this.top_size;for(var g in a)if(!(e&&g<this.top_size||!e&&g>=this.top_size)&&(b=lsi.get("f_contacts",a[g].contact),g!=f&&b)){var h=0<b.username.length&&d.username===b.username;b=!isNaN(b.existing)&&d.existing===b.existing;(h||b)&&(c=a[g]);if(null!==c)break}null===c||c.timestamp>a[f].timestamp||(d=a[f],d.uid=c.uid,lsi.set("f_fiches",c.uid,d))}console.groupEnd()};
inputFacebookFiche.prototype.nav=function(a){if(null==a||!1===a.getData("n")||isNaN(a.getData("n"))||"f_nav-fiche"!=a.parentNode.id)return!1;for(var b=$$('[data-sublink="facebook"] #f_nav-fiche > span.active'),c=0;c<b.length;c++)b[c].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))}; inputFacebookFiche.prototype.nav=function(a){if(!(a instanceof Element&&a.getData("n"))||isNaN(a.getData("n"))||"f_nav-fiche"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="facebook"] #f_nav-fiche > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))};
inputFacebookFiche.prototype.updateNavBar=function(){var a=lsi["export"]("f_fiches");this.nav_container.innerHTML="";for(var b=Object.keys(a),c=0;c<b.length;c++){var e=parseInt(b[c]);0==e&&(this.nav_container.innerHTML+="<span>HISTORIQUE</span>");10>e&&c<b.length-1&&10<=b[c+1]?this.nav_container.innerHTML+='<span data-n="'+e+'" class="lc">'+(e%10+1)+"</span>&nbsp;&nbsp;":(10==e&&(this.nav_container.innerHTML+='<span class="fc">MESSENGER</span>'),this.nav_container.innerHTML+='<span data-n="'+e+'">'+ inputFacebookFiche.prototype.updateNavBar=function(){var a=lsi["export"]("f_fiches");this.nav_container.innerHTML="";for(var c=Object.keys(a),b=0;b<c.length;b++){var d=parseInt(c[b]);0==d&&(this.nav_container.innerHTML+="<span>HISTORIQUE</span>");20>d&&b<c.length-1&&20<=c[b+1]?this.nav_container.innerHTML+='<span data-n="'+d+'" class="lc">'+(d%20+1)+"</span>&nbsp;&nbsp;":(20==d&&(this.nav_container.innerHTML+='<br><span class="fc">MESSENGER&nbsp;</span>'),this.nav_container.innerHTML+='<span data-n="'+
(e%10+1)+"</span>")}for(var d in a)b=$('[data-sublink="facebook"] #f_nav-fiche [data-n="'+a[d].uid+'"]'),null!=b&&(!0===a[d].valid?b.addClass("done"):b.remClass("done"));this.nav($('[data-sublink="facebook"] #f_nav-fiche [data-n="'+this.selected+'"]'))}; d+'">'+(d%20+1)+"</span>")}for(var e in a)c=$('[data-sublink="facebook"] #f_nav-fiche [data-n="'+a[e].uid+'"]'),null!=c&&(!0===a[e].valid?c.addClass("done"):c.remClass("done"));this.nav($('[data-sublink="facebook"] #f_nav-fiche [data-n="'+this.selected+'"]'))};
inputFacebookFiche.prototype.check=function(a){if(2>a.city.length||isNaN(parseInt(a.duration[0]))&&0<a.duration[0].length||isNaN(parseInt(a.duration[1]))&&0<a.duration[1].length||0==a.duration[0].length+a.duration[1].length||"."==a.job||"."==a.studies||"."==a.age||""==a.sexe||""==a.famsit||""==a.reltype||""==a.loc||""==a.context)return!1;for(var b=0;b<a.freq.length;b++)if(""==a.freq[b])return!1;for(b=0;b<a.connect.length;b++)if(""==a.connect[b])return!1;return"10"==a.reltype&&2>a.reltypeSpecial.length|| inputFacebookFiche.prototype.check=function(a){if(2>a.city.length||isNaN(parseInt(a.duration[0]))&&0<a.duration[0].length||isNaN(parseInt(a.duration[1]))&&0<a.duration[1].length||0==a.duration[0].length+a.duration[1].length||"."==a.job||"."==a.studies||"."==a.age||""==a.sexe||""==a.famsit||""==a.reltype||""==a.loc||""==a.context)return!1;for(var c=0;c<a.freq.length;c++)if(""==a.freq[c])return!1;for(c=0;c<a.connect.length;c++)if(""==a.connect[c])return!1;return"10"==a.reltype&&2>a.reltypeSpecial.length||
"11"==a.context&&2>a.contextSpecial[0].length||"12"==a.context&&2>a.contextSpecial[1].length||"13"==a.context&&2>a.contextSpecial[2].length?!1:!0};inputFacebookFiche.prototype.attach=function(a){console.group("[facebook.fiche] attaching events");lsi.createDataset("f_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);console.groupEnd()}; "11"==a.context&&2>a.contextSpecial[0].length||"12"==a.context&&2>a.contextSpecial[1].length||"13"==a.context&&2>a.contextSpecial[2].length?!1:!0};inputFacebookFiche.prototype.attach=function(a){console.group("[facebook.fiche] attaching events");lsi.createDataset("f_fiches");this.storageToFields();this.handler=a;var c=this,c=this;this.nav_container.addEventListener("click",function(a){c.nav(a.target);c.handler(a.target)},!1);console.groupEnd()};

View File

@ -1,4 +1,4 @@
function inputFacebookMini(a,c){this.container=a;this.nav_container=c}inputFacebookMini.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:"2",age:".",studies:"0",loc:".",reltype:"9",unknown:!1,reltypeSpecial:"",timestamp:0,valid:!1}}; function inputFacebookMini(a,c){this.container=a;this.nav_container=c}inputFacebookMini.prototype={container:this.container,nav_container:this.nav_container,selected:null,handler:null,defaultData:{sexe:"2",age:".",studies:"0",loc:".",reltype:"9",unknown:!1,reltypeSpecial:"",timestamp:0,valid:!1}};
inputFacebookMini.prototype.fieldsToStorage=function(){console.group("[facebook.mini] fields to storage");for(var a=$$('[data-sublink="facebook"] article.mini-relation-panel .mini-fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),d=crc32(JSON.stringify(b)),e=lsi.get("f_mini-fiches",b.uid);if(!1!==e){if(null!=e&&null!=e.hash&&e.hash==d)return;console.warn("> MINI UPDATE");b={uid:parseInt(b.uid),sexe:b.sexe,age:b.age,studies:b.studies,reltype:b.reltype, inputFacebookMini.prototype.fieldsToStorage=function(){console.group("[facebook.mini] fields to storage");for(var a=$$('[data-sublink="facebook"] article.mini-relation-panel .mini-fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),d=crc32(JSON.stringify(b)),e=lsi.get("f_mini-fiches",b.uid);if(!1!==e){if(null!=e&&null!=e.hash&&e.hash==d)return;console.warn("> MINI UPDATE");b={uid:parseInt(b.uid),sexe:b.sexe,age:b.age,studies:b.studies,reltype:b.reltype,
reltypeSpecial:b.reltypeSpecial,loc:b.loc,unknown:null!=b.unknown,hash:d};b.valid=this.check(b);0<diff(e,b,["hash","valid","timestamp"]).length&&(console.log(diff(e,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("f_mini-fiches",b.uid,b)}}console.groupEnd()}; reltypeSpecial:b.reltypeSpecial,loc:b.loc,unknown:null!=b.unknown,hash:d};b.valid=this.check(b);0<diff(e,b,["hash","valid","timestamp"]).length&&(console.log(diff(e,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("f_mini-fiches",b.uid,b)}}console.groupEnd()};
inputFacebookMini.prototype.add=function(a){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;a.unknown=null!=a.unknown?a.unknown:this.defaultData.unknown;var c=lsi.get("f_contacts", inputFacebookMini.prototype.add=function(a){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;a.unknown=null!=a.unknown?a.unknown:this.defaultData.unknown;var c=lsi.get("f_contacts",
@ -6,8 +6,8 @@ a.uid);if(!1===c)return!1;if(!isNaN(c.existing)){var b=lsi.get("f_friends",c.exi
a.studies+'"]');null!=c&&c.setAttribute("selected","selected");c=$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+a.age+'"]');null!=c&&c.setAttribute("selected","selected");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(c=0;c<b.length;c++)b[c].value==a.sexe?b[c].setAttribute("checked","checked"): a.studies+'"]');null!=c&&c.setAttribute("selected","selected");c=$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+a.age+'"]');null!=c&&c.setAttribute("selected","selected");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(c=0;c<b.length;c++)b[c].value==a.sexe?b[c].setAttribute("checked","checked"):
b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(c=0;c<b.length;c++)b[c].value==a.reltype?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(c=0;c<b.length;c++)b[c].value==a.loc?b[c].setAttribute("checked", b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(c=0;c<b.length;c++)b[c].value==a.reltype?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(c=0;c<b.length;c++)b[c].value==a.loc?b[c].setAttribute("checked",
"checked"):b[c].removeAttribute("checked");c=$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="checkbox"][data-name="unknown"]');null!=c&&a.unknown&&c.setAttribute("checked","checked")}; "checked"):b[c].removeAttribute("checked");c=$('[data-sublink="facebook"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="checkbox"][data-name="unknown"]');null!=c&&a.unknown&&c.setAttribute("checked","checked")};
inputFacebookMini.prototype.storageToFields=function(){console.group("[facebook.mini] storage to fields");var a=lsi.get("f_mini-fiches",this.selected);if(null==a)return this.updateNavBar(),!1;this.container.innerHTML="";this.add(a);this.updateNavBar();console.groupEnd()}; inputFacebookMini.prototype.storageToFields=function(){console.group("[facebook.mini] storage to fields");var a=lsi.get("f_mini-fiches",this.selected);if(null===a){if(null===this.selected)return a=lsi.keys("f_mini-fiches"),0<a.length?(this.selected=a[0],this.storageToFields()):!1;this.updateNavBar();return!1}this.container.innerHTML="";this.add(a);this.updateNavBar();console.groupEnd()};
inputFacebookMini.prototype.sync=function(){console.group("[facebook.mini] synchronisation");var a=lsi["export"]("f_contacts"),c=lsi["export"]("f_fiches"),b=[],d;for(d in c)-1==b.indexOf(c[d].contact)&&b.push(c[d].contact);for(var e in a)-1<b.indexOf(parseInt(e))?lsi.del("f_mini-fiches",e):(c=0==a[e].username.length?e.toString()+"-":e,d=lsi.get("f_mini-fiches",c),null==d&&(d=this.defaultData,d.valid=!1,isNaN(c)&&(d.reltype="9")),d.uid=parseInt(e),lsi.set("f_mini-fiches",c,d));d=lsi["export"]("f_mini-fiches"); inputFacebookMini.prototype.sync=function(){console.group("[facebook.mini] synchronisation");var a=lsi["export"]("f_contacts"),c=lsi["export"]("f_fiches"),b=[],d;for(d in c)-1==b.indexOf(c[d].contact)&&b.push(c[d].contact);for(var e in a)-1<b.indexOf(parseInt(e))?lsi.del("f_mini-fiches",e):(c=0==a[e].username.length?e.toString()+"-":e,d=lsi.get("f_mini-fiches",c),null==d&&(d=this.defaultData,d.valid=!1,isNaN(c)&&(d.reltype="9")),d.uid=parseInt(e),lsi.set("f_mini-fiches",c,d));d=lsi["export"]("f_mini-fiches");
if(null==d[this.selected])for(e in d)if(!isNaN(e)){this.selected=parseInt(e);break}console.groupEnd()};inputFacebookMini.prototype.nav=function(a){if(null==a||!1===a.getData("n")||isNaN(a.getData("n"))||"f_nav-mini"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="facebook"] #f_nav-mini > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))}; if(null==d[this.selected])for(e in d)if(!isNaN(e)){this.selected=parseInt(e);break}console.groupEnd()};inputFacebookMini.prototype.nav=function(a){if(!(a instanceof Element&&a.getData("n"))||isNaN(a.getData("n"))||"f_nav-mini"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="facebook"] #f_nav-mini > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))};
inputFacebookMini.prototype.updateNavBar=function(){var a=lsi["export"]("f_mini-fiches");this.nav_container.innerHTML="";var c=0,b;for(b in a)isNaN(b)||(this.nav_container.innerHTML+='<span data-n="'+b+'">'+ ++c+"</span>");for(b in a)isNaN(b)||(c=$('[data-sublink="facebook"] #f_nav-mini [data-n="'+a[b].uid+'"]'),null!=c&&(!0===a[b].valid?c.addClass("done"):c.remClass("done")));this.nav($('[data-sublink="facebook"] #f_nav-mini [data-n="'+this.selected+'"]'))}; inputFacebookMini.prototype.updateNavBar=function(){var a=lsi["export"]("f_mini-fiches");this.nav_container.innerHTML="";var c=0,b;for(b in a)isNaN(b)||(this.nav_container.innerHTML+='<span data-n="'+b+'">'+ ++c+"</span>");for(b in a)isNaN(b)||(c=$('[data-sublink="facebook"] #f_nav-mini [data-n="'+a[b].uid+'"]'),null!=c&&(!0===a[b].valid?c.addClass("done"):c.remClass("done")));this.nav($('[data-sublink="facebook"] #f_nav-mini [data-n="'+this.selected+'"]'))};
inputFacebookMini.prototype.check=function(a){return a.unknown?!0:""==a.sexe||"."==a.studies||"."==a.age||""==a.loc||""==a.reltype||"10"==a.reltype&&2>a.reltypeSpecial.length?!1:!0};inputFacebookMini.prototype.attach=function(a){console.group("[facebook.mini] attaching events");lsi.createDataset("f_mini-fiches");this.storageToFields();this.handler=a;var c=this;this.nav_container.addEventListener("click",function(a){c.nav(a.target);c.handler(a.target)},!1);console.groupEnd()}; inputFacebookMini.prototype.check=function(a){return a.unknown?!0:""==a.sexe||"."==a.studies||"."==a.age||""==a.loc||""==a.reltype||"10"==a.reltype&&2>a.reltypeSpecial.length?!1:!0};inputFacebookMini.prototype.attach=function(a){console.group("[facebook.mini] attaching events");lsi.createDataset("f_mini-fiches");this.storageToFields();this.handler=a;this.nav_container.addEventListener("click",function(a){this.nav(a.target);this.handler(a.target)}.bind(this),!1);console.groupEnd()};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
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:{sexe:"2",age:".",job:".",famsit:"0",studies:"0",reltype:"0",reltypeSpecial:"",city:"",quartier:"",cp:"",loc:"0",duration:["",""],context:"0",contextSpecial:["","",""],freq:["4","9","14","19","24"],connect:"1 3 5 7 9 11".split(" "),connectSpecial:["",""],timestamp:0,valid:!1}}; function inputPhoneFiche(a,c){this.container=a;this.nav_container=c;this.top_size=10}inputPhoneFiche.prototype={container:this.container,nav_container:this.nav_container,selected:0,handler:null,defaultData:{sexe:"2",age:".",job:".",famsit:"0",studies:"0",reltype:"0",reltypeSpecial:"",city:"",quartier:"",cp:"",loc:"0",duration:["",""],context:"0",contextSpecial:["","",""],freq:["4","9","14","19","24"],connect:"1 3 5 7 9 11".split(" "),connectSpecial:["",""],timestamp:0,valid:!1}};
inputPhoneFiche.prototype.fieldsToStorage=function(){console.group("[phone.fiche] fields to storage");for(var a=$$('[data-sublink="phone"] article.relation-panel .fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),d=crc32(JSON.stringify(b)),e=lsi.get("p_fiches",b.uid);if(!1!==e){if(null!=e.hash&&e.hash==d)return;b={contact:parseInt(b.contact),uid:parseInt(b.uid),sexe:b.sexe,age:b.age,job:b.job,famsit:b.famsit,studies:b.studies,reltype:b.reltype, inputPhoneFiche.prototype.fieldsToStorage=function(){console.group("[phone.fiche] fields to storage");for(var a=$$('[data-sublink="phone"] article.relation-panel .fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),d=crc32(JSON.stringify(b)),e=lsi.get("p_fiches",b.uid);if(!1!==e){if(null!=e.hash&&e.hash==d)return;b={contact:parseInt(b.contact),uid:parseInt(b.uid),sexe:b.sexe,age:b.age,job:b.job,famsit:b.famsit,studies:b.studies,reltype:b.reltype,
reltypeSpecial:b.reltypeSpecial,city:b.city,quartier:b.quartier,cp:b.cp,loc:b.loc,duration:b.duration,context:b.context,contextSpecial:b.contextSpecial,freq:b.freq,connect:b.connect,connectSpecial:b.connectSpecial,hash:d};b.valid=this.check(b);0<diff(e,b,["hash","valid","timestamp"]).length&&(console.log(diff(e,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("p_fiches",b.uid,b)}}console.groupEnd()}; reltypeSpecial:b.reltypeSpecial,city:b.city,quartier:b.quartier,cp:b.cp,loc:b.loc,duration:b.duration,context:b.context,contextSpecial:b.contextSpecial,freq:b.freq,connect:b.connect,connectSpecial:b.connectSpecial,hash:d};b.valid=this.check(b);0<diff(e,b,["hash","valid","timestamp"]).length&&(console.log(diff(e,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("p_fiches",b.uid,b)}}console.groupEnd()};
inputPhoneFiche.prototype.add=function(a){if(null==a.uid||isNaN(a.uid)||null==a.contact||isNaN(a.contact))return!1;a.city=null!=a.city?a.city:this.defaultData.city;a.quartier=null!=a.quartier?a.quartier:this.defaultData.quartier;a.cp=null!=a.cp?a.cp:this.defaultData.cp;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; inputPhoneFiche.prototype.add=function(a){if(null==a.uid||isNaN(a.uid)||null==a.contact||isNaN(a.contact))return!1;a.city=null!=a.city?a.city:this.defaultData.city;a.quartier=null!=a.quartier?a.quartier:this.defaultData.quartier;a.cp=null!=a.cp?a.cp:this.defaultData.cp;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;
@ -12,10 +12,10 @@ a.uid+'"] ~ h5>input[type="radio"][data-name="famsit"]');for(c=0;c<b.length;c++)
a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(c=0;c<b.length;c++)b[c].value==a.loc?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="context"]');for(c=0;c<b.length;c++)b[c].value==a.context?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+ a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(c=0;c<b.length;c++)b[c].value==a.loc?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="context"]');for(c=0;c<b.length;c++)b[c].value==a.context?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+
a.uid+'"] ~ h5>input[type="radio"][data-name="freq"]');for(c=0;c<b.length;c++)-1<a.freq.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="connect"]');for(c=0;c<b.length;c++)-1<a.connect.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked")}; a.uid+'"] ~ h5>input[type="radio"][data-name="freq"]');for(c=0;c<b.length;c++)-1<a.freq.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="connect"]');for(c=0;c<b.length;c++)-1<a.connect.indexOf(b[c].value)?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked")};
inputPhoneFiche.prototype.storageToFields=function(){console.group("[phone.fiche] storage to fields");var a=lsi["export"]("p_fiches");this.container.innerHTML="";for(var c in a)a[c].uid==this.selected&&this.add(a[c]);this.updateNavBar();console.groupEnd()}; inputPhoneFiche.prototype.storageToFields=function(){console.group("[phone.fiche] storage to fields");var a=lsi["export"]("p_fiches");this.container.innerHTML="";for(var c in a)a[c].uid==this.selected&&this.add(a[c]);this.updateNavBar();console.groupEnd()};
inputPhoneFiche.prototype.sync=function(){console.group("[phone.fiche] synchronisation");var a=lsi["export"]("p_contacts"),c=[],b,d=40>lsi.keys("p_contacts").length?lsi.keys("p_contacts").length:40,e;for(e in a){for(ficheUid=0;-1<c.indexOf(ficheUid)&&ficheUid<d;)ficheUid++;c.push(ficheUid);a=lsi.get("p_fiches",ficheUid);!a&&(a=this.defaultData);a.uid=ficheUid;a.contact=parseInt(e);lsi.set("p_fiches",ficheUid,a);if(c.length>=d)break}var a=lsi["export"]("p_fiches"),f;for(f in a)if(d=lsi.get("p_contacts", inputPhoneFiche.prototype.sync=function(){console.group("[phone.fiche] synchronisation");var a=lsi["export"]("p_contacts"),c=[],b,d=lsi.keys("p_contacts").length<2*this.top_size?lsi.keys("p_contacts").length:2*this.top_size,e;for(e in a){for(ficheUid=0;-1<c.indexOf(ficheUid)&&ficheUid<d;)ficheUid++;c.push(ficheUid);a=lsi.get("p_fiches",ficheUid);!a&&(a=this.defaultData);a.uid=ficheUid;a.contact=parseInt(e);lsi.set("p_fiches",ficheUid,a);if(c.length>=d)break}var a=lsi["export"]("p_fiches"),f;for(f in a)if(d=
a[f].contact)){c=null;e=20>parseInt(a[f].uid);for(var g in a)if(!(e&&20>g||!e&&20<=g)&&(b=lsi.get("p_contacts",a[g].contact),g!=f&&b)){var h=0<b.username.length&&d.username===b.username;b=!isNaN(b.existing)&&d.existing===b.existing;(h||b)&&(c=a[g]);if(null!==c)break}null===c||c.timestamp>a[f].timestamp||(d=a[f],d.uid=c.uid,lsi.set("p_fiches",c.uid,d))}console.groupEnd()}; lsi.get("p_contacts",a[f].contact)){c=null;e=parseInt(a[f].uid)<this.top_size;for(var g in a)if(!(e&&g<this.top_size||!e&&g>=this.top_size)&&(b=lsi.get("p_contacts",a[g].contact),g!=f&&b)){var h=0<b.username.length&&d.username===b.username;b=!isNaN(b.existing)&&d.existing===b.existing;(h||b)&&(c=a[g]);if(null!==c)break}null===c||c.timestamp>a[f].timestamp||(d=a[f],d.uid=c.uid,lsi.set("p_fiches",c.uid,d))}console.groupEnd()};
inputPhoneFiche.prototype.nav=function(a){if(!(a instanceof Element&&a.getData("n"))||isNaN(a.getData("n"))||"p_nav-fiche"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="phone"] #p_nav-fiche > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))}; inputPhoneFiche.prototype.nav=function(a){if(!(a instanceof Element&&a.getData("n"))||isNaN(a.getData("n"))||"p_nav-fiche"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="phone"] #p_nav-fiche > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))};
inputPhoneFiche.prototype.updateNavBar=function(){var a=lsi["export"]("p_fiches");this.nav_container.innerHTML="";for(var c=Object.keys(a),b=0;b<c.length;b++){var d=parseInt(c[b]);0==d&&(this.nav_container.innerHTML+="<span>APPELS</span>");20>d&&b<c.length-1&&20<=c[b+1]?this.nav_container.innerHTML+='<span data-n="'+d+'" class="lc">'+(d%20+1)+"</span>&nbsp;&nbsp;":(20==d&&(this.nav_container.innerHTML+='<br><span class="fc">&nbsp;&nbsp; SMS &nbsp;&nbsp;</span>'),this.nav_container.innerHTML+='<span data-n="'+ inputPhoneFiche.prototype.updateNavBar=function(){var a=lsi["export"]("p_fiches");this.nav_container.innerHTML="";for(var c=Object.keys(a),b=0;b<c.length;b++){var d=parseInt(c[b]);0==d&&(this.nav_container.innerHTML+="<span>APPELS</span>");20>d&&b<c.length-1&&20<=c[b+1]?this.nav_container.innerHTML+='<span data-n="'+d+'" class="lc">'+(d%20+1)+"</span>&nbsp;&nbsp;":(20==d&&(this.nav_container.innerHTML+='<br><span class="fc">&nbsp;&nbsp; SMS &nbsp;&nbsp;</span>'),this.nav_container.innerHTML+='<span data-n="'+
d+'">'+(d%20+1)+"</span>")}for(var e in a)c=$('[data-sublink="phone"] #p_nav-fiche [data-n="'+a[e].uid+'"]'),null!=c&&(!0===a[e].valid?c.addClass("done"):c.remClass("done"));this.nav($('[data-sublink="phone"] #p_nav-fiche [data-n="'+this.selected+'"]'))}; d+'">'+(d%20+1)+"</span>")}for(var e in a)c=$('[data-sublink="phone"] #p_nav-fiche [data-n="'+a[e].uid+'"]'),null!=c&&(!0===a[e].valid?c.addClass("done"):c.remClass("done"));this.nav($('[data-sublink="phone"] #p_nav-fiche [data-n="'+this.selected+'"]'))};
inputPhoneFiche.prototype.check=function(a){if(2>a.city.length||isNaN(parseInt(a.duration[0]))&&0<a.duration[0].length||isNaN(parseInt(a.duration[1]))&&0<a.duration[1].length||0==a.duration[0].length+a.duration[1].length||"."==a.job||"."==a.studies||"."==a.age||""==a.sexe||""==a.famsit||""==a.reltype||""==a.loc||""==a.context)return!1;for(var c=0;c<a.freq.length;c++)if(""==a.freq[c])return!1;for(c=0;c<a.connect.length;c++)if(""==a.connect[c])return!1;return"10"==a.reltype&&2>a.reltypeSpecial.length|| inputPhoneFiche.prototype.check=function(a){if(2>a.city.length||isNaN(parseInt(a.duration[0]))&&0<a.duration[0].length||isNaN(parseInt(a.duration[1]))&&0<a.duration[1].length||0==a.duration[0].length+a.duration[1].length||"."==a.job||"."==a.studies||"."==a.age||""==a.sexe||""==a.famsit||""==a.reltype||""==a.loc||""==a.context)return!1;for(var c=0;c<a.freq.length;c++)if(""==a.freq[c])return!1;for(c=0;c<a.connect.length;c++)if(""==a.connect[c])return!1;return"10"==a.reltype&&2>a.reltypeSpecial.length||
"11"==a.context&&2>a.contextSpecial[0].length||"12"==a.context&&2>a.contextSpecial[1].length||"13"==a.context&&2>a.contextSpecial[2].length?!1:!0};inputPhoneFiche.prototype.attach=function(a){console.group("[phone.fiche] attaching events");lsi.createDataset("p_fiches");this.storageToFields();this.handler=a;var c=this;this.nav_container.addEventListener("click",function(a){c.nav(a.target);c.handler(a.target)},!1);console.groupEnd()}; "11"==a.context&&2>a.contextSpecial[0].length||"12"==a.context&&2>a.contextSpecial[1].length||"13"==a.context&&2>a.contextSpecial[2].length?!1:!0};inputPhoneFiche.prototype.attach=function(a){console.group("[phone.fiche] attaching events");lsi.createDataset("p_fiches");this.storageToFields();this.handler=a;this.nav_container.addEventListener("click",function(a){this.nav(a.target);this.handler(a.target)}.bind(this),!1);console.groupEnd()};

View File

@ -1,13 +1,13 @@
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:{contact:null,sexe:"2",age:".",studies:"0",loc:".",reltype:"9",reltypeSpecial:"",unknown:!1,timestamp:0,valid:!1}}; function inputPhoneMini(a,c){this.container=a;this.nav_container=c}inputPhoneMini.prototype={container:this.container,nav_container:this.nav_container,selected:null,handler:null,defaultData:{contact:null,sexe:"2",age:".",studies:"0",loc:".",reltype:"9",reltypeSpecial:"",unknown:!1,timestamp:0,valid:!1}};
inputPhoneMini.prototype.fieldsToStorage=function(){console.group("[phone.mini] fields to storage");for(var a=$$('[data-sublink="phone"] article.mini-relation-panel .mini-fiche-relation'),b=0;b<a.length;b++){var c=(new FormDeflater(a[b],["input","select"],["data-name"])).deflate(),e=crc32(JSON.stringify(c)),d=lsi.get("p_mini-fiches",c.uid);if(!1!==d){if(null!=d&&null!=d.hash&&d.hash==e)return;console.warn("> MINI UPDATE");c={uid:parseInt(c.uid),sexe:c.sexe,age:c.age,studies:c.studies,reltype:c.reltype, inputPhoneMini.prototype.fieldsToStorage=function(){console.group("[phone.mini] fields to storage");for(var a=$$('[data-sublink="phone"] article.mini-relation-panel .mini-fiche-relation'),c=0;c<a.length;c++){var b=(new FormDeflater(a[c],["input","select"],["data-name"])).deflate(),e=crc32(JSON.stringify(b)),d=lsi.get("p_mini-fiches",b.uid);if(!1!==d){if(null!=d&&null!=d.hash&&d.hash==e)return;console.warn("> MINI UPDATE");b={uid:parseInt(b.uid),sexe:b.sexe,age:b.age,studies:b.studies,reltype:b.reltype,
reltypeSpecial:c.reltypeSpecial,loc:c.loc,unknown:null!=c.unknown,hash:e};c.valid=this.check(c);0<diff(d,c,["hash","valid","timestamp"]).length&&(console.log(diff(d,c,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),c.timestamp=Date.now());lsi.set("p_mini-fiches",c.uid,c)}}console.groupEnd()}; reltypeSpecial:b.reltypeSpecial,loc:b.loc,unknown:null!=b.unknown,hash:e};b.valid=this.check(b);0<diff(d,b,["hash","valid","timestamp"]).length&&(console.log(diff(d,b,["hash","valid","timestamp"])),console.warn("> FICHE UPDATE"),b.timestamp=Date.now());lsi.set("p_mini-fiches",b.uid,b)}}console.groupEnd()};
inputPhoneMini.prototype.add=function(a){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;a.unknown=null!=a.unknown?a.unknown:this.defaultData.unknown;var b=lsi.get("p_contacts", inputPhoneMini.prototype.add=function(a){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;a.unknown=null!=a.unknown?a.unknown:this.defaultData.unknown;var c=lsi.get("p_contacts",
a.uid);if(!1===b)return!1;if(!isNaN(b.existing)){var c=lsi.get("p_friends",b.existing);b.username=c.name;a.contact=b.uid;a.age=c.age;a.sexe=c.sexe;a.loc=c.dist;isNaN(c.reltype)?(a.reltype=10,a.reltypeSpecial=c.reltype):(a.reltype=c.reltype,a.reltypeSpecial="");null!=c.studies1&&(a.studies=c.studies1)}this.container.innerHTML+=pMiniFicheBuilder.build({name:b.username,countcall:b.countcall,countsms:b.countsms,uid:a.uid,reltypespecial:a.reltypeSpecial});b=$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+ a.uid);if(!1===c)return!1;if(!isNaN(c.existing)){var b=lsi.get("p_friends",c.existing);c.username=b.name;a.contact=c.uid;a.age=b.age;a.sexe=b.sexe;a.loc=b.dist;isNaN(b.reltype)?(a.reltype=10,a.reltypeSpecial=b.reltype):(a.reltype=b.reltype,a.reltypeSpecial="");null!=b.studies1&&(a.studies=b.studies1)}this.container.innerHTML+=pMiniFicheBuilder.build({name:c.username,countcall:c.countcall,countsms:c.countsms,uid:a.uid,reltypespecial:a.reltypeSpecial});c=$('[data-sublink="phone"] 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");b=$('[data-sublink="phone"] 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");c=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(b=0;b<c.length;b++)c[b].value== a.uid+'"] ~ h5>span>select[data-name="studies"]>option[value="'+a.studies+'"]');null!=c&&c.setAttribute("selected","selected");c=$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="age"]>option[value="'+a.age+'"]');null!=c&&c.setAttribute("selected","selected");b=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]');for(c=0;c<b.length;c++)b[c].value==
a.sexe?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(b=0;b<c.length;b++)c[b].value==a.reltype?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");c=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(b=0;b<c.length;b++)c[b].value== a.sexe?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="reltype"]');for(c=0;c<b.length;c++)b[c].value==a.reltype?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");b=$$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(c=0;c<b.length;c++)b[c].value==
a.loc?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked");b=$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="checkbox"][data-name="unknown"]');null!=b&&a.unknown&&b.setAttribute("checked","checked")}; a.loc?b[c].setAttribute("checked","checked"):b[c].removeAttribute("checked");c=$('[data-sublink="phone"] article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="checkbox"][data-name="unknown"]');null!=c&&a.unknown&&c.setAttribute("checked","checked")};
inputPhoneMini.prototype.storageToFields=function(){console.group("[phone.mini] storage to fields");var a=lsi.get("p_mini-fiches",this.selected);if(null==a)return this.updateNavBar(),!1;this.container.innerHTML="";this.add(a);this.updateNavBar();console.groupEnd()}; inputPhoneMini.prototype.storageToFields=function(){console.group("[phone.mini] storage to fields");console.warn(this.selected);var a=lsi.get("p_mini-fiches",this.selected);if(null===a){if(null===this.selected)return a=lsi.keys("p_mini-fiches"),0<a.length?(this.selected=a[0],this.storageToFields()):!1;this.updateNavBar();return!1}this.container.innerHTML="";this.add(a);this.updateNavBar();console.groupEnd()};
inputPhoneMini.prototype.sync=function(){console.group("[phone.mini] synchronisation");var a=lsi["export"]("p_contacts"),b;ficheIndexes=lsi.keys("p_fiches");for(b in ficheIndexes)delete a[ficheIndexes[b]];for(var c in a){var e=0==a[c].username.length?c.toString()+"-":c;b=lsi.get("p_mini-fiches",e);null==b&&(b=this.defaultData,b.contact=a[c].uid,b.valid=!1);b.uid=parseInt(c);lsi.set("p_mini-fiches",e,b)}b=lsi["export"]("p_mini-fiches");if(null==b[this.selected])for(c in b)if(!isNaN(c)){this.selected= inputPhoneMini.prototype.sync=function(){console.group("[phone.mini] synchronisation");var a=lsi["export"]("p_contacts"),c;ficheIndexes=lsi.keys("p_fiches");for(c in ficheIndexes)delete a[ficheIndexes[c]];for(var b in a){var e=0==a[b].username.length?b.toString()+"-":b;c=lsi.get("p_mini-fiches",e);null==c&&(c=this.defaultData,c.contact=a[b].uid,c.valid=!1);c.uid=parseInt(b);lsi.set("p_mini-fiches",e,c)}c=lsi["export"]("p_mini-fiches");if(null==c[this.selected])for(b in c)if(!isNaN(b)){this.selected=
parseInt(c);break}console.groupEnd()};inputPhoneMini.prototype.nav=function(a){if(null==a||!1===a.getData("n")||isNaN(a.getData("n"))||"p_nav-mini"!=a.parentNode.id)return!1;for(var b=$$('[data-sublink="phone"] #p_nav-mini > span.active'),c=0;c<b.length;c++)b[c].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))}; parseInt(b);break}console.groupEnd()};inputPhoneMini.prototype.nav=function(a){if(!(a instanceof Element&&a.getData("n"))||isNaN(a.getData("n"))||"p_nav-mini"!=a.parentNode.id)return!1;for(var c=$$('[data-sublink="phone"] #p_nav-mini > span.active'),b=0;b<c.length;b++)c[b].remClass("active");a.addClass("active");this.selected=parseInt(a.getData("n"))};
inputPhoneMini.prototype.updateNavBar=function(){var a=lsi["export"]("p_mini-fiches");this.nav_container.innerHTML="";var b=0,c;for(c in a)isNaN(c)||(this.nav_container.innerHTML+='<span data-n="'+c+'">'+ ++b+"</span>");for(c in a)isNaN(c)||(b=$('[data-sublink="phone"] #p_nav-mini span[data-n="'+a[c].uid+'"]'),null!=b&&(!0===a[c].valid?b.addClass("done"):b.remClass("done")));this.nav($('[data-sublink="phone"] #p_nav-mini span[data-n="'+this.selected+'"]'))}; inputPhoneMini.prototype.updateNavBar=function(){var a=lsi["export"]("p_mini-fiches");this.nav_container.innerHTML="";var c=0,b;for(b in a)isNaN(b)||(this.nav_container.innerHTML+='<span data-n="'+b+'">'+ ++c+"</span>");for(b in a)isNaN(b)||(c=$('[data-sublink="phone"] #p_nav-mini [data-n="'+a[b].uid+'"]'),null!=c&&(!0===a[b].valid?c.addClass("done"):c.remClass("done")));this.nav($('[data-sublink="phone"] #p_nav-mini [data-n="'+this.selected+'"]'))};
inputPhoneMini.prototype.check=function(a){return a.unknown?!0:""==a.sexe||"."==a.studies||"."==a.age||""==a.loc||""==a.reltype||"10"==a.reltype&&2>a.reltypeSpecial.length?!1:!0};inputPhoneMini.prototype.attach=function(a){console.group("[phone.mini] attaching events");lsi.createDataset("p_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);console.groupEnd()}; inputPhoneMini.prototype.check=function(a){return a.unknown?!0:""==a.sexe||"."==a.studies||"."==a.age||""==a.loc||""==a.reltype||"10"==a.reltype&&2>a.reltypeSpecial.length?!1:!0};inputPhoneMini.prototype.attach=function(a){console.group("[phone.mini] attaching events");lsi.createDataset("p_mini-fiches");this.storageToFields();this.handler=a;this.nav_container.addEventListener("click",function(a){this.nav(a.target);this.handler(a.target)}.bind(this),!1);console.groupEnd()};

View File

@ -137,6 +137,7 @@ if( $getAllR->error == ManagerError::Success )
<!-- GESTION DES FICHES RELATIONS --> <!-- GESTION DES FICHES RELATIONS -->
<h3 data-n='4' class='color4'>Remplir les fiches relations complètes des contacts les plus contactés</h3> <h3 data-n='4' class='color4'>Remplir les fiches relations complètes des contacts les plus contactés</h3>
<!-- NAVIGATION ENTRE LES FICHES --> <!-- NAVIGATION ENTRE LES FICHES -->
<!-- <div class='line' id='p_hide-fiche'>Cacher la section</div> -->
<div class='arrow-container line' id='p_nav-fiche'></div> <div class='arrow-container line' id='p_nav-fiche'></div>
<article class='relation-panel'></article> <article class='relation-panel'></article>
<span data-space></span> <span data-space></span>

View File

@ -94,14 +94,14 @@ sField.addEventListener('keypress', function(e){
/*=========================================================*/ /*=========================================================*/
/*========== Gestion du formulaire téléphonique ===========*/ /*========== Gestion du formulaire téléphonique ===========*/
/*=========================================================*/ /*=========================================================*/
var pAlready = false; var pAlready = 0;
var pLoaded = [ false, false, false, false, false ]; var pLoaded = [ 0, 0, 0, 0, 0 ];
var phoneRoutine = function(){ var phoneRoutine = function(){
if( !(pLoaded[0] && pLoaded[1] && pLoaded[2] && pLoaded[3] && pLoaded[4] && !pAlready) ) if( !Math.min.apply(Math, pLoaded) | pAlready )
return; return;
pAlready = true; pAlready = 1;
console.groupEnd(); console.groupEnd();
console.group('[phone] Initialization'); console.group('[phone] Initialization');
@ -151,6 +151,7 @@ var phoneRoutine = function(){
); );
/* (2) On le démarre */ /* (2) On le démarre */
pFicheManager.top_size = 20;
pFicheManager.attach(pDynamicUpdate); pFicheManager.attach(pDynamicUpdate);
@ -338,11 +339,11 @@ var phoneRoutine = function(){
}; };
include('/js/includes/input-phone-subject.js', function(){ pLoaded[0] = true; phoneRoutine(); }); include('/js/includes/input-phone-subject.js', function(){ pLoaded[0] = 1; phoneRoutine(); });
include('/js/includes/input-phone-contact.js', function(){ pLoaded[1] = true; phoneRoutine(); }); include('/js/includes/input-phone-contact.js', function(){ pLoaded[1] = 1; phoneRoutine(); });
include('/js/includes/input-phone-mini.js', function(){ pLoaded[2] = true; phoneRoutine(); }); include('/js/includes/input-phone-mini.js', function(){ pLoaded[2] = 1; phoneRoutine(); });
include('/js/includes/input-phone-fiche.js', function(){ pLoaded[3] = true; phoneRoutine(); }); include('/js/includes/input-phone-fiche.js', function(){ pLoaded[3] = 1; phoneRoutine(); });
include('/js/includes/input-phone-matrice.js', function(){ pLoaded[4] = true; phoneRoutine(); }); include('/js/includes/input-phone-matrice.js', function(){ pLoaded[4] = 1; phoneRoutine(); });
@ -351,14 +352,14 @@ include('/js/includes/input-phone-matrice.js', function(){ pLoaded[4] = true; ph
/*=========================================================*/ /*=========================================================*/
/*=========== Gestion du formulaire facebook ==============*/ /*=========== Gestion du formulaire facebook ==============*/
/*=========================================================*/ /*=========================================================*/
var fAlready = false; var fAlready = 0;
var fLoaded = [ false, false, false, false, false ]; var fLoaded = [ 0, 0, 0, 0, 0 ];
var facebookRoutine = function(){ var facebookRoutine = function(){
if( !(fLoaded[0] && fLoaded[1] && fLoaded[2] && fLoaded[3] && fLoaded[4] && !fAlready) ) if( !Math.min.apply(Math, fLoaded) | fAlready )
return; return;
fAlready = true; fAlready = 1;
console.groupEnd(); console.groupEnd();
console.group('[facebook] Initialization'); console.group('[facebook] Initialization');
@ -408,6 +409,7 @@ var facebookRoutine = function(){
); );
/* (2) On le démarre */ /* (2) On le démarre */
fFicheManager.top_size = 20;
fFicheManager.attach(fDynamicUpdate); fFicheManager.attach(fDynamicUpdate);
@ -595,253 +597,11 @@ var facebookRoutine = function(){
}; };
include('/js/includes/input-facebook-subject.js', function(){ fLoaded[0] = true; facebookRoutine(); }); include('/js/includes/input-facebook-subject.js', function(){ fLoaded[0] = 1; facebookRoutine(); });
include('/js/includes/input-facebook-contact.js', function(){ fLoaded[1] = true; facebookRoutine(); }); include('/js/includes/input-facebook-contact.js', function(){ fLoaded[1] = 1; facebookRoutine(); });
include('/js/includes/input-facebook-mini.js', function(){ fLoaded[2] = true; facebookRoutine(); }); include('/js/includes/input-facebook-mini.js', function(){ fLoaded[2] = 1; facebookRoutine(); });
include('/js/includes/input-facebook-fiche.js', function(){ fLoaded[3] = true; facebookRoutine(); }); include('/js/includes/input-facebook-fiche.js', function(){ fLoaded[3] = 1; facebookRoutine(); });
include('/js/includes/input-facebook-matrice.js', function(){ fLoaded[4] = true; facebookRoutine(); }); include('/js/includes/input-facebook-matrice.js', function(){ fLoaded[4] = 1; facebookRoutine(); });
//
// include('/js/includes/input-facebook-subject.js', function(){
// //TODO: Remettre version min
// include('/js/includes/input-facebook-contact.js', function(){
// //TODO: Remettre version min
// include('/js/includes/input-facebook-mini.js', function(){
// //TODO: Remettre version min
// include('/js/includes/input-facebook-fiche.js', function(){
// include('/js/includes/input-facebook-matrice.js', function(){
//
//
// /* (1) Gestion du formulaire du sujet
// ---------------------------------------------------------*/
// /* (1) On crée une instance du manager du sujet */
// fSubjectManager = new inputFacebookSubject(
// $('[data-sublink="facebook"] article.subject-panel [data-name="subject_id"]'),
// $('[data-sublink="facebook"] article.subject-panel [data-name="submit"]')
// );
//
// /* (2) On le démarre */
// fSubjectManager.attach(fDynamicUpdate);
//
//
// /* (2) Gestion des formulaires de contact
// ---------------------------------------------------------*/
// /* (1) On crée une instance du gestionnaire des CONTACTS */
// fContactManager = new inputFacebookContact(
// $('[data-sublink="facebook"] article.contact-panel'),
// $('[data-sublink="facebook"] #f_nav-contact')
// );
//
// /* (2) On le démarre */
// fContactManager.attach(fDynamicUpdate);
//
//
// /* (3) Gestion des mini fiches relation
// ---------------------------------------------------------*/
// /* (1) On crée une instance du gestionnaire des mini fiches relation */
// fMiniManager = new inputFacebookMini(
// $('[data-sublink="facebook"] article.mini-relation-panel'),
// $('[data-sublink="facebook"] #f_nav-mini')
// );
//
// /* (2) On le démarre */
// fMiniManager.attach(fDynamicUpdate);
//
//
// /* (4) Gestion des fiches relation
// ---------------------------------------------------------*/
// /* (1) On crée une instance du gestionnaire des fiches relation */
// fFicheManager = new inputFacebookFiche(
// $('[data-sublink="facebook"] article.relation-panel'),
// $('[data-sublink="facebook"] #f_nav-fiche')
// );
//
// /* (2) On le démarre */
// fFicheManager.attach(fDynamicUpdate);
//
//
// /* (5) Gestion de la matrice de relations
// ---------------------------------------------------------*/
// /* (1) On crée une instance du gestionnaire de la matrice */
// fMatriceManager = new inputFacebookMatrice(
// $('[data-sublink="facebook"] article.matrice-panel')
// );
//
// /* (2) On le démarre */
// fMatriceManager.attach(fDynamicUpdate);
//
//
// /* (7) Gestion de l'effacement des données locales
// ---------------------------------------------------------*/
// $('[data-sublink="facebook"] #f_clear-all').addEventListener('click', function(e){
// /* (1) On vide tous les dataset de données */
// lsi.clear('f_subject');
// lsi.clear('f_contacts');
// lsi.clear('f_mini-fiches');
// lsi.clear('f_fiches');
// lsi.clear('f_matrice');
// lsi.clear('f_friends');
//
//
// /* (2) On met à jour l'affichage */
// fSubjectManager.storageToFields();
// fContactManager.storageToFields();
// fMiniManager.storageToFields();
// fFicheManager.storageToFields();
// fMatriceManager.storageToFields();
//
// Notification.success('OK', 'Les données ont été supprimées');
// }, false);
//
//
//
// /* (8) Gestion de l'export des données locales
// ---------------------------------------------------------*/
// $('[data-sublink="facebook"] #f_export-all').addEventListener('click', function(e){
//
// Notification.info('INFORMATION', 'Lancement du téléchargement de la sauvegarde');
//
// /* (1) On construit les données */
// var data = {
// subject: lsi.export('f_subject')[0],
// contacts: lsi.export('f_contacts'),
// mini: lsi.export('f_mini-fiches'),
// fiches: lsi.export('f_fiches'),
// matrice: lsi.export('f_matrice')[0]
// };
//
//
// /* (2) On lance le téléchargement */
// var downloadTarget = $('[data-sublink="facebook"] #f_download-target'); // On récupère le lien (<a>) caché qui fera le téléchargement
// downloadTarget.download = 'local-facebook-data.json'; // Nom du fichier qui sera téléchargé
// downloadTarget.href = 'data:application/octet-stream,' + encodeURIComponent(JSON.stringify(data)); // Contenu
// downloadTarget.click(); // On lance le téléchargement
//
// }, false);
//
//
// /* (9) Gestion de l'import des données locales
// ---------------------------------------------------------*/
// // Le bouton lance l'<input> file
// $('[data-sublink="facebook"] #f_import-all').addEventListener('click', function(e){
// $('[data-sublink="facebook"] #f_local-upload').click();
// }, false);
//
//
// // On vide l'input de type 'file' quand on clique
// $('[data-sublink="facebook"] #f_local-upload').addEventListener('click', function(e){
// e.target.value = null;
// }, false);
//
//
// // Gestion de l'upload d'une sauvegarde de formulaire local
// $('[data-sublink="facebook"] #f_local-upload').addEventListener('change', function(e){
// /* (1) Rédaction de la requête d'upload */
// var request = {
// path: 'upload/local_data',
// file: $('[data-sublink="facebook"] #f_local-upload').files[0]
// };
//
// /* (2) Upload et réponse */
// api.send(request, function(response){
// console.log(response);
//
// // Si erreur, on quitte
// if( response.ModuleError != 0 ){
// Notification.error('Erreur', response.ModuleError);
// return false;
// }
//
// /* (3) On enregistre les données dans le 'localStorage' */
// lsi.set('f_subject', 0, response.local_data.subject);
// lsi.import('f_contacts', response.local_data.contacts);
// lsi.import('f_mini-fiches', response.local_data.mini);
// lsi.import('f_fiches', response.local_data.fiches);
// lsi.set('f_matrice', 0, response.local_data.matrice);
//
// /* (3) On met à jour l'affichage */
// fSubjectManager.storageToFields();
// fContactManager.storageToFields();
// fMatriceManager.storageToFields();
// fDynamicUpdate(true);
//
// });
//
// }, false);
//
//
// /* (10) Gestion de la validation et de l'envoi des données
// ---------------------------------------------------------*/
// $('[data-sublink="facebook"] #f_submit-all').addEventListener('click', function(e){
// console.log('> GATHERING ALL DATA');
//
// /* (1) On met dans la mémoire tout les champs non enregistrés */
// fSubjectManager.fieldsToStorage();
// fContactManager.fieldsToStorage();
// fMiniManager.fieldsToStorage();
// fFicheManager.fieldsToStorage();
//
// /* (2) Vérification de la validité de toutes les données */
// // {1} Vérification du sujet //
// if( !fSubjectManager.check() ){
// Notification.warning('Attention', 'Vous devez saisir les informations du <i>sujet</i>');
// return false;
// }
// // {2} Vérification des mini-fiches //
// var mini = lsi.export('f_mini-fiches');
// var i = 0;
// for( var id in mini ){ if( !isNaN(id) ){
//
// i++
//
// if( !mini[id].valid ){
// Notification.warning('Attention', 'La <i>fiche rapide</i> <b>'+i+'</b> est incomplète et/ou incorrecte');
// return false;
// }
//
// }}
// // {3} Vérification des fiches //
// var fiches = lsi.export('f_fiches');
// for( var id in fiches )
// if( !fiches[id].valid ){
// Notification.warning('Attention', 'La <i>fiche complète</i> <b>'+(parseInt(id)+1)+'</b> est incomplète et/ou incorrecte');
// return false;
// }
//
//
//
// /* (3) On prépare la requête avec toutes les données */
// var request = {
// path: 'input/facebook',
//
// subject: lsi.export('f_subject')[0],
// contacts: lsi.export('f_contacts'),
// mini: lsi.export('f_mini-fiches'),
// fiches: lsi.export('f_fiches'),
// matrice: lsi.export('f_matrice')[0]
// };
//
// /* (4) On envoie la requête et traite la réponse */
// api.send(request, function(response){
// console.log(response);
//
// // Si erreur, on la notifie
// if( response.ModuleError != 0 ){
// Notification.error('ERREUR', response.ModuleError);
// return false;
// }
//
// console.log(response);
//
// }, false);
//
//
// }, false);
//
//
// }); }); }); }); });
//
//

View File

@ -2,24 +2,24 @@ var sField,sSubmit,sList,pSubjectManager=null,pContactManager=null,pMiniManager=
var tmpSubjectSearchListener=function(a){api.send({path:"subject/search",name:sField.value},function(a){if(0!=a.ModuleError)return Notification.error("Erreur","La recherche a \u00e9chou\u00e9."),!1;console.log(a);var c=[],g;for(g in a.results)c.push("<li data-element data-id='"+g+"'>"),c.push("<div data-user><span>SUJET</span></div>"),c.push("<div> <span><input type='text' readonly style='text-align: center' onclick='this.select()' class='flag' value='"+g+"'></span> </div>"),c.push("<div> <span data-prefix='Nom'>"+ var tmpSubjectSearchListener=function(a){api.send({path:"subject/search",name:sField.value},function(a){if(0!=a.ModuleError)return Notification.error("Erreur","La recherche a \u00e9chou\u00e9."),!1;console.log(a);var c=[],g;for(g in a.results)c.push("<li data-element data-id='"+g+"'>"),c.push("<div data-user><span>SUJET</span></div>"),c.push("<div> <span><input type='text' readonly style='text-align: center' onclick='this.select()' class='flag' value='"+g+"'></span> </div>"),c.push("<div> <span data-prefix='Nom'>"+
a.results[g].name+"</span> </div>"),c.push("<div> <span data-prefix='Cr\u00e9ation'>"+a.results[g].creation+"</span> </div>"),c.push("<div> <span><input type='checkbox' id='s_"+g+"' "+(null!=a.results[g].phone?"checked":"")+" disabled><label for='s_"+g+"'>Cellulaire</label>"),c.push("</span> </div>"),c.push("<div> <span><input type='checkbox' id='s_"+g+"' "+(null!=a.results[g].facebook?"checked":"")+" disabled><label for='s_"+g+"'>Facebook</label>"),c.push("</span> </div>"),c.push("</li>");sList.innerHTML= a.results[g].name+"</span> </div>"),c.push("<div> <span data-prefix='Cr\u00e9ation'>"+a.results[g].creation+"</span> </div>"),c.push("<div> <span><input type='checkbox' id='s_"+g+"' "+(null!=a.results[g].phone?"checked":"")+" disabled><label for='s_"+g+"'>Cellulaire</label>"),c.push("</span> </div>"),c.push("<div> <span><input type='checkbox' id='s_"+g+"' "+(null!=a.results[g].facebook?"checked":"")+" disabled><label for='s_"+g+"'>Facebook</label>"),c.push("</span> </div>"),c.push("</li>");sList.innerHTML=
c.join("")})};sSubmit.addEventListener("click",tmpSubjectSearchListener,!1);sField.addEventListener("keypress",function(a){13===a.keyCode&&tmpSubjectSearchListener(a)},!1); c.join("")})};sSubmit.addEventListener("click",tmpSubjectSearchListener,!1);sField.addEventListener("keypress",function(a){13===a.keyCode&&tmpSubjectSearchListener(a)},!1);
var pAlready=!1,pLoaded=[!1,!1,!1,!1,!1],phoneRoutine=function(){pLoaded[0]&&pLoaded[1]&&pLoaded[2]&&pLoaded[3]&&pLoaded[4]&&!pAlready&&(pAlready=!0,console.groupEnd(),console.group("[phone] Initialization"),pSubjectManager=new inputPhoneSubject($('[data-sublink="phone"] article.subject-panel [data-name="subject_id"]'),$('[data-sublink="phone"] article.subject-panel [data-name="submit"]')),pSubjectManager.attach(pDynamicUpdate),pContactManager=new inputPhoneContact($('[data-sublink="phone"] article.contact-panel'), var pAlready=0,pLoaded=[0,0,0,0,0],phoneRoutine=function(){!Math.min.apply(Math,pLoaded)|pAlready||(pAlready=1,console.groupEnd(),console.group("[phone] Initialization"),pSubjectManager=new inputPhoneSubject($('[data-sublink="phone"] article.subject-panel [data-name="subject_id"]'),$('[data-sublink="phone"] article.subject-panel [data-name="submit"]')),pSubjectManager.attach(pDynamicUpdate),pContactManager=new inputPhoneContact($('[data-sublink="phone"] article.contact-panel'),$('[data-sublink="phone"] #p_nav-contact')),
$('[data-sublink="phone"] #p_nav-contact')),pContactManager.attach(pDynamicUpdate),pMiniManager=new inputPhoneMini($('[data-sublink="phone"] article.mini-relation-panel'),$('[data-sublink="phone"] #p_nav-mini')),pMiniManager.attach(pDynamicUpdate),pFicheManager=new inputPhoneFiche($('[data-sublink="phone"] article.relation-panel'),$('[data-sublink="phone"] #p_nav-fiche')),pFicheManager.attach(pDynamicUpdate),pMatriceManager=new inputPhoneMatrice($('[data-sublink="phone"] article.matrice-panel')), pContactManager.attach(pDynamicUpdate),pMiniManager=new inputPhoneMini($('[data-sublink="phone"] article.mini-relation-panel'),$('[data-sublink="phone"] #p_nav-mini')),pMiniManager.attach(pDynamicUpdate),pFicheManager=new inputPhoneFiche($('[data-sublink="phone"] article.relation-panel'),$('[data-sublink="phone"] #p_nav-fiche')),pFicheManager.top_size=20,pFicheManager.attach(pDynamicUpdate),pMatriceManager=new inputPhoneMatrice($('[data-sublink="phone"] article.matrice-panel')),pMatriceManager.attach(pDynamicUpdate),
pMatriceManager.attach(pDynamicUpdate),$('[data-sublink="phone"] #p_clear-all').addEventListener("click",function(a){lsi.clear("p_subject");lsi.clear("p_contacts");lsi.clear("p_mini-fiches");lsi.clear("p_fiches");lsi.clear("p_matrice");lsi.clear("p_friends");pSubjectManager.storageToFields();pContactManager.storageToFields();pMiniManager.storageToFields();pFicheManager.storageToFields();pMatriceManager.storageToFields();Notification.success("OK","Les donn\u00e9es ont \u00e9t\u00e9 supprim\u00e9es")}, $('[data-sublink="phone"] #p_clear-all').addEventListener("click",function(a){lsi.clear("p_subject");lsi.clear("p_contacts");lsi.clear("p_mini-fiches");lsi.clear("p_fiches");lsi.clear("p_matrice");lsi.clear("p_friends");pSubjectManager.storageToFields();pContactManager.storageToFields();pMiniManager.storageToFields();pFicheManager.storageToFields();pMatriceManager.storageToFields();Notification.success("OK","Les donn\u00e9es ont \u00e9t\u00e9 supprim\u00e9es")},!1),$('[data-sublink="phone"] #p_export-all').addEventListener("click",
!1),$('[data-sublink="phone"] #p_export-all').addEventListener("click",function(a){Notification.info("INFORMATION","Lancement du t\u00e9l\u00e9chargement de la sauvegarde");a={subject:lsi["export"]("p_subject")[0],contacts:lsi["export"]("p_contacts"),mini:lsi["export"]("p_mini-fiches"),fiches:lsi["export"]("p_fiches"),matrice:lsi["export"]("p_matrice")[0]};var b=$('[data-sublink="phone"] #p_download-target');b.download="local-facebook-data.json";b.href="data:application/octet-stream,"+encodeURIComponent(JSON.stringify(a)); function(a){Notification.info("INFORMATION","Lancement du t\u00e9l\u00e9chargement de la sauvegarde");a={subject:lsi["export"]("p_subject")[0],contacts:lsi["export"]("p_contacts"),mini:lsi["export"]("p_mini-fiches"),fiches:lsi["export"]("p_fiches"),matrice:lsi["export"]("p_matrice")[0]};var b=$('[data-sublink="phone"] #p_download-target');b.download="local-facebook-data.json";b.href="data:application/octet-stream,"+encodeURIComponent(JSON.stringify(a));b.click()},!1),$('[data-sublink="phone"] #p_import-all').addEventListener("click",
b.click()},!1),$('[data-sublink="phone"] #p_import-all').addEventListener("click",function(a){$('[data-sublink="phone"] #p_local-upload').click()},!1),$('[data-sublink="phone"] #p_local-upload').addEventListener("click",function(a){a.target.value=null},!1),$('[data-sublink="phone"] #p_local-upload').addEventListener("change",function(a){a={path:"upload/local_data",file:$('[data-sublink="phone"] #p_local-upload').files[0]};api.send(a,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("Erreur", function(a){$('[data-sublink="phone"] #p_local-upload').click()},!1),$('[data-sublink="phone"] #p_local-upload').addEventListener("click",function(a){a.target.value=null},!1),$('[data-sublink="phone"] #p_local-upload').addEventListener("change",function(a){a={path:"upload/local_data",file:$('[data-sublink="phone"] #p_local-upload').files[0]};api.send(a,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("Erreur",a.ModuleError),!1;lsi.set("p_subject",0,a.local_data.subject);lsi["import"]("p_contacts",
a.ModuleError),!1;lsi.set("p_subject",0,a.local_data.subject);lsi["import"]("p_contacts",a.local_data.contacts);lsi["import"]("p_mini-fiches",a.local_data.mini);lsi["import"]("p_fiches",a.local_data.fiches);lsi.set("p_matrice",0,a.local_data.matrice);pSubjectManager.storageToFields();pContactManager.storageToFields();pMatriceManager.storageToFields();pDynamicUpdate(!0)})},!1),$('[data-sublink="phone"] #p_submit-all').addEventListener("click",function(a){console.log("> GATHERING ALL DATA");pSubjectManager.fieldsToStorage(); a.local_data.contacts);lsi["import"]("p_mini-fiches",a.local_data.mini);lsi["import"]("p_fiches",a.local_data.fiches);lsi.set("p_matrice",0,a.local_data.matrice);pSubjectManager.storageToFields();pContactManager.storageToFields();pMatriceManager.storageToFields();pDynamicUpdate(!0)})},!1),$('[data-sublink="phone"] #p_submit-all').addEventListener("click",function(a){console.log("> GATHERING ALL DATA");pSubjectManager.fieldsToStorage();pContactManager.fieldsToStorage();pMiniManager.fieldsToStorage();
pContactManager.fieldsToStorage();pMiniManager.fieldsToStorage();pFicheManager.fieldsToStorage();if(!pSubjectManager.check())return Notification.warning("Attention","Vous devez saisir les informations du <i>sujet</i>"),!1;a=lsi["export"]("p_mini-fiches");var b=0,c;for(c in a)if(!isNaN(c)&&(b++,!a[c].valid))return Notification.warning("Attention","La <i>fiche rapide</i> <b>"+b+"</b> est incompl\u00e8te et/ou incorrecte"),!1;a=lsi["export"]("p_fiches");for(c in a)if(!a[c].valid)return Notification.warning("Attention", pFicheManager.fieldsToStorage();if(!pSubjectManager.check())return Notification.warning("Attention","Vous devez saisir les informations du <i>sujet</i>"),!1;a=lsi["export"]("p_mini-fiches");var b=0,c;for(c in a)if(!isNaN(c)&&(b++,!a[c].valid))return Notification.warning("Attention","La <i>fiche rapide</i> <b>"+b+"</b> est incompl\u00e8te et/ou incorrecte"),!1;a=lsi["export"]("p_fiches");for(c in a)if(!a[c].valid)return Notification.warning("Attention","La <i>fiche compl\u00e8te</i> <b>"+(parseInt(c)+
"La <i>fiche compl\u00e8te</i> <b>"+(parseInt(c)+1)+"</b> est incompl\u00e8te et/ou incorrecte"),!1;c={path:"input/facebook",subject:lsi["export"]("p_subject")[0],contacts:lsi["export"]("p_contacts"),mini:lsi["export"]("p_mini-fiches"),fiches:lsi["export"]("p_fiches"),matrice:lsi["export"]("p_matrice")[0]};api.send(c,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("ERREUR",a.ModuleError),!1;Notification.success("OK","L'identifiant du sujet est <strong>"+a.subject_id+"</strong> ! Tout s'est bien d\u00e9roul\u00e9.", 1)+"</b> est incompl\u00e8te et/ou incorrecte"),!1;c={path:"input/facebook",subject:lsi["export"]("p_subject")[0],contacts:lsi["export"]("p_contacts"),mini:lsi["export"]("p_mini-fiches"),fiches:lsi["export"]("p_fiches"),matrice:lsi["export"]("p_matrice")[0]};api.send(c,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("ERREUR",a.ModuleError),!1;Notification.success("OK","L'identifiant du sujet est <strong>"+a.subject_id+"</strong> ! Tout s'est bien d\u00e9roul\u00e9.",1E4);
1E4);console.log(a)},!1)},!1),console.groupEnd())};include("/js/includes/input-phone-subject.js",function(){pLoaded[0]=!0;phoneRoutine()});include("/js/includes/input-phone-contact.js",function(){pLoaded[1]=!0;phoneRoutine()});include("/js/includes/input-phone-mini.js",function(){pLoaded[2]=!0;phoneRoutine()});include("/js/includes/input-phone-fiche.js",function(){pLoaded[3]=!0;phoneRoutine()});include("/js/includes/input-phone-matrice.js",function(){pLoaded[4]=!0;phoneRoutine()}); console.log(a)},!1)},!1),console.groupEnd())};include("/js/includes/input-phone-subject.js",function(){pLoaded[0]=1;phoneRoutine()});include("/js/includes/input-phone-contact.js",function(){pLoaded[1]=1;phoneRoutine()});include("/js/includes/input-phone-mini.js",function(){pLoaded[2]=1;phoneRoutine()});include("/js/includes/input-phone-fiche.js",function(){pLoaded[3]=1;phoneRoutine()});include("/js/includes/input-phone-matrice.js",function(){pLoaded[4]=1;phoneRoutine()});
var fAlready=!1,fLoaded=[!1,!1,!1,!1,!1],facebookRoutine=function(){fLoaded[0]&&fLoaded[1]&&fLoaded[2]&&fLoaded[3]&&fLoaded[4]&&!fAlready&&(fAlready=!0,console.groupEnd(),console.group("[facebook] Initialization"),fSubjectManager=new inputFacebookSubject($('[data-sublink="facebook"] article.subject-panel [data-name="subject_id"]'),$('[data-sublink="facebook"] article.subject-panel [data-name="submit"]')),fSubjectManager.attach(fDynamicUpdate),fContactManager=new inputFacebookContact($('[data-sublink="facebook"] article.contact-panel'), var fAlready=0,fLoaded=[0,0,0,0,0],facebookRoutine=function(){!Math.min.apply(Math,fLoaded)|fAlready||(fAlready=1,console.groupEnd(),console.group("[facebook] Initialization"),fSubjectManager=new inputFacebookSubject($('[data-sublink="facebook"] article.subject-panel [data-name="subject_id"]'),$('[data-sublink="facebook"] article.subject-panel [data-name="submit"]')),fSubjectManager.attach(fDynamicUpdate),fContactManager=new inputFacebookContact($('[data-sublink="facebook"] article.contact-panel'),
$('[data-sublink="facebook"] #f_nav-contact')),fContactManager.attach(fDynamicUpdate),fMiniManager=new inputFacebookMini($('[data-sublink="facebook"] article.mini-relation-panel'),$('[data-sublink="facebook"] #f_nav-mini')),fMiniManager.attach(fDynamicUpdate),fFicheManager=new inputFacebookFiche($('[data-sublink="facebook"] article.relation-panel'),$('[data-sublink="facebook"] #f_nav-fiche')),fFicheManager.attach(fDynamicUpdate),fMatriceManager=new inputFacebookMatrice($('[data-sublink="facebook"] article.matrice-panel')), $('[data-sublink="facebook"] #f_nav-contact')),fContactManager.attach(fDynamicUpdate),fMiniManager=new inputFacebookMini($('[data-sublink="facebook"] article.mini-relation-panel'),$('[data-sublink="facebook"] #f_nav-mini')),fMiniManager.attach(fDynamicUpdate),fFicheManager=new inputFacebookFiche($('[data-sublink="facebook"] article.relation-panel'),$('[data-sublink="facebook"] #f_nav-fiche')),fFicheManager.top_size=20,fFicheManager.attach(fDynamicUpdate),fMatriceManager=new inputFacebookMatrice($('[data-sublink="facebook"] article.matrice-panel')),
fMatriceManager.attach(fDynamicUpdate),$('[data-sublink="facebook"] #f_clear-all').addEventListener("click",function(a){lsi.clear("f_subject");lsi.clear("f_contacts");lsi.clear("f_mini-fiches");lsi.clear("f_fiches");lsi.clear("f_matrice");lsi.clear("f_friends");fSubjectManager.storageToFields();fContactManager.storageToFields();fMiniManager.storageToFields();fFicheManager.storageToFields();fMatriceManager.storageToFields();Notification.success("OK","Les donn\u00e9es ont \u00e9t\u00e9 supprim\u00e9es")}, fMatriceManager.attach(fDynamicUpdate),$('[data-sublink="facebook"] #f_clear-all').addEventListener("click",function(a){lsi.clear("f_subject");lsi.clear("f_contacts");lsi.clear("f_mini-fiches");lsi.clear("f_fiches");lsi.clear("f_matrice");lsi.clear("f_friends");fSubjectManager.storageToFields();fContactManager.storageToFields();fMiniManager.storageToFields();fFicheManager.storageToFields();fMatriceManager.storageToFields();Notification.success("OK","Les donn\u00e9es ont \u00e9t\u00e9 supprim\u00e9es")},
!1),$('[data-sublink="facebook"] #f_export-all').addEventListener("click",function(a){Notification.info("INFORMATION","Lancement du t\u00e9l\u00e9chargement de la sauvegarde");a={subject:lsi["export"]("f_subject")[0],contacts:lsi["export"]("f_contacts"),mini:lsi["export"]("f_mini-fiches"),fiches:lsi["export"]("f_fiches"),matrice:lsi["export"]("f_matrice")[0]};var b=$('[data-sublink="facebook"] #f_download-target');b.download="local-phone-data.json";b.href="data:application/octet-stream,"+encodeURIComponent(JSON.stringify(a)); !1),$('[data-sublink="facebook"] #f_export-all').addEventListener("click",function(a){Notification.info("INFORMATION","Lancement du t\u00e9l\u00e9chargement de la sauvegarde");a={subject:lsi["export"]("f_subject")[0],contacts:lsi["export"]("f_contacts"),mini:lsi["export"]("f_mini-fiches"),fiches:lsi["export"]("f_fiches"),matrice:lsi["export"]("f_matrice")[0]};var b=$('[data-sublink="facebook"] #f_download-target');b.download="local-phone-data.json";b.href="data:application/octet-stream,"+encodeURIComponent(JSON.stringify(a));
b.click()},!1),$('[data-sublink="facebook"] #f_import-all').addEventListener("click",function(a){$('[data-sublink="facebook"] #f_local-upload').click()},!1),$('[data-sublink="facebook"] #f_local-upload').addEventListener("click",function(a){a.target.value=null},!1),$('[data-sublink="facebook"] #f_local-upload').addEventListener("change",function(a){a={path:"upload/local_data",file:$('[data-sublink="facebook"] #f_local-upload').files[0]};api.send(a,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("Erreur", b.click()},!1),$('[data-sublink="facebook"] #f_import-all').addEventListener("click",function(a){$('[data-sublink="facebook"] #f_local-upload').click()},!1),$('[data-sublink="facebook"] #f_local-upload').addEventListener("click",function(a){a.target.value=null},!1),$('[data-sublink="facebook"] #f_local-upload').addEventListener("change",function(a){a={path:"upload/local_data",file:$('[data-sublink="facebook"] #f_local-upload').files[0]};api.send(a,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("Erreur",
a.ModuleError),!1;lsi.set("f_subject",0,a.local_data.subject);lsi["import"]("f_contacts",a.local_data.contacts);lsi["import"]("f_mini-fiches",a.local_data.mini);lsi["import"]("f_fiches",a.local_data.fiches);lsi.set("f_matrice",0,a.local_data.matrice);pSubjectManager.storageToFields();pContactManager.storageToFields();pMatriceManager.storageToFields();pDynamicUpdate(!0)})},!1),$('[data-sublink="facebook"] #f_submit-all').addEventListener("click",function(a){console.log("> GATHERING ALL DATA");pSubjectManager.fieldsToStorage(); a.ModuleError),!1;lsi.set("f_subject",0,a.local_data.subject);lsi["import"]("f_contacts",a.local_data.contacts);lsi["import"]("f_mini-fiches",a.local_data.mini);lsi["import"]("f_fiches",a.local_data.fiches);lsi.set("f_matrice",0,a.local_data.matrice);pSubjectManager.storageToFields();pContactManager.storageToFields();pMatriceManager.storageToFields();pDynamicUpdate(!0)})},!1),$('[data-sublink="facebook"] #f_submit-all').addEventListener("click",function(a){console.log("> GATHERING ALL DATA");pSubjectManager.fieldsToStorage();
pContactManager.fieldsToStorage();pMiniManager.fieldsToStorage();pFicheManager.fieldsToStorage();if(!pSubjectManager.check())return Notification.warning("Attention","Vous devez saisir les informations du <i>sujet</i>"),!1;a=lsi["export"]("f_mini-fiches");var b=0,c;for(c in a)if(!isNaN(c)&&(b++,!a[c].valid))return Notification.warning("Attention","La <i>fiche rapide</i> <b>"+b+"</b> est incompl\u00e8te et/ou incorrecte"),!1;a=lsi["export"]("f_fiches");for(c in a)if(!a[c].valid)return Notification.warning("Attention", pContactManager.fieldsToStorage();pMiniManager.fieldsToStorage();pFicheManager.fieldsToStorage();if(!pSubjectManager.check())return Notification.warning("Attention","Vous devez saisir les informations du <i>sujet</i>"),!1;a=lsi["export"]("f_mini-fiches");var b=0,c;for(c in a)if(!isNaN(c)&&(b++,!a[c].valid))return Notification.warning("Attention","La <i>fiche rapide</i> <b>"+b+"</b> est incompl\u00e8te et/ou incorrecte"),!1;a=lsi["export"]("f_fiches");for(c in a)if(!a[c].valid)return Notification.warning("Attention",
"La <i>fiche compl\u00e8te</i> <b>"+(parseInt(c)+1)+"</b> est incompl\u00e8te et/ou incorrecte"),!1;c={path:"input/phone",subject:lsi["export"]("f_subject")[0],contacts:lsi["export"]("f_contacts"),mini:lsi["export"]("f_mini-fiches"),fiches:lsi["export"]("f_fiches"),matrice:lsi["export"]("f_matrice")[0]};api.send(c,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("ERREUR",a.ModuleError),!1;Notification.success("OK","L'identifiant du sujet est <strong>"+a.subject_id+"</strong> ! Tout s'est bien d\u00e9roul\u00e9.", "La <i>fiche compl\u00e8te</i> <b>"+(parseInt(c)+1)+"</b> est incompl\u00e8te et/ou incorrecte"),!1;c={path:"input/phone",subject:lsi["export"]("f_subject")[0],contacts:lsi["export"]("f_contacts"),mini:lsi["export"]("f_mini-fiches"),fiches:lsi["export"]("f_fiches"),matrice:lsi["export"]("f_matrice")[0]};api.send(c,function(a){console.log(a);if(0!=a.ModuleError)return Notification.error("ERREUR",a.ModuleError),!1;Notification.success("OK","L'identifiant du sujet est <strong>"+a.subject_id+"</strong> ! Tout s'est bien d\u00e9roul\u00e9.",
1E4);console.log(a)},!1)},!1),console.groupEnd())};include("/js/includes/input-facebook-subject.js",function(){fLoaded[0]=!0;facebookRoutine()});include("/js/includes/input-facebook-contact.js",function(){fLoaded[1]=!0;facebookRoutine()});include("/js/includes/input-facebook-mini.js",function(){fLoaded[2]=!0;facebookRoutine()});include("/js/includes/input-facebook-fiche.js",function(){fLoaded[3]=!0;facebookRoutine()});include("/js/includes/input-facebook-matrice.js",function(){fLoaded[4]=!0;facebookRoutine()}); 1E4);console.log(a)},!1)},!1),console.groupEnd())};include("/js/includes/input-facebook-subject.js",function(){fLoaded[0]=1;facebookRoutine()});include("/js/includes/input-facebook-contact.js",function(){fLoaded[1]=1;facebookRoutine()});include("/js/includes/input-facebook-mini.js",function(){fLoaded[2]=1;facebookRoutine()});include("/js/includes/input-facebook-fiche.js",function(){fLoaded[3]=1;facebookRoutine()});include("/js/includes/input-facebook-matrice.js",function(){fLoaded[4]=1;facebookRoutine()});
var pDynamicUpdate=function(a){var b=a instanceof Element,c=b&&"INPUT"==a.tagName&&"submit"==a.type,g=b&&"SPAN"==a.tagName&&("p_nav-mini"==a.parentNode.id||"p_nav-fiche"==a.parentNode.id),b=b&&"SPAN"==a.tagName&&"p_nav-contact"==a.parentNode.id;if(!c&&!g&&!b&&!0!==a)return!1;console.groupEnd();console.groupEnd();console.group("[phone] Dynamic Update");pMiniManager.fieldsToStorage();pFicheManager.fieldsToStorage();pContactManager.fieldsToStorage();pMatriceManager.fieldsToStorage();pFicheManager.sync(); var pDynamicUpdate=function(a){var b=a instanceof Element,c=b&&"INPUT"==a.tagName&&"submit"==a.type,g=b&&"SPAN"==a.tagName&&("p_nav-mini"==a.parentNode.id||"p_nav-fiche"==a.parentNode.id),b=b&&"SPAN"==a.tagName&&"p_nav-contact"==a.parentNode.id;if(!c&&!g&&!b&&!0!==a)return!1;console.groupEnd();console.groupEnd();console.group("[phone] Dynamic Update");pMiniManager.fieldsToStorage();pFicheManager.fieldsToStorage();pContactManager.fieldsToStorage();pMatriceManager.fieldsToStorage();pFicheManager.sync();
pMiniManager.sync();!0===a?api.send({path:"subject/getFriends",subject_id:pSubjectManager.subject_id.value},function(a){if(0!=a.ModuleError)return console.groupEnd(),!1;lsi["import"]("p_friends",a.subjects);pMiniManager.storageToFields();pFicheManager.storageToFields();pMatriceManager.storageToFields();pContactManager.storageToFields()}):(pMiniManager.storageToFields(),pFicheManager.storageToFields(),pMatriceManager.storageToFields(),(c||b)&&pContactManager.storageToFields());console.groupEnd()}, pMiniManager.sync();!0===a?api.send({path:"subject/getFriends",subject_id:pSubjectManager.subject_id.value},function(a){if(0!=a.ModuleError)return console.groupEnd(),!1;lsi["import"]("p_friends",a.subjects);pMiniManager.storageToFields();pFicheManager.storageToFields();pMatriceManager.storageToFields();pContactManager.storageToFields()}):(pMiniManager.storageToFields(),pFicheManager.storageToFields(),pMatriceManager.storageToFields(),(c||b)&&pContactManager.storageToFields());console.groupEnd()},
fDynamicUpdate=function(a){var b=a instanceof Element,c=b&&"INPUT"==a.tagName&&"submit"==a.type,g=b&&"SPAN"==a.tagName&&("f_nav-mini"==a.parentNode.id||"f_nav-fiche"==a.parentNode.id),b=b&&"SPAN"==a.tagName&&"f_nav-contact"==a.parentNode.id;if(!c&&!g&&!b&&!0!==a)return!1;console.groupEnd();console.groupEnd();console.group("[facebook] Dynamic Update");fMiniManager.fieldsToStorage();fFicheManager.fieldsToStorage();fContactManager.fieldsToStorage();fMatriceManager.fieldsToStorage();fFicheManager.sync(); fDynamicUpdate=function(a){var b=a instanceof Element,c=b&&"INPUT"==a.tagName&&"submit"==a.type,g=b&&"SPAN"==a.tagName&&("f_nav-mini"==a.parentNode.id||"f_nav-fiche"==a.parentNode.id),b=b&&"SPAN"==a.tagName&&"f_nav-contact"==a.parentNode.id;if(!c&&!g&&!b&&!0!==a)return!1;console.groupEnd();console.groupEnd();console.group("[facebook] Dynamic Update");fMiniManager.fieldsToStorage();fFicheManager.fieldsToStorage();fContactManager.fieldsToStorage();fMatriceManager.fieldsToStorage();fFicheManager.sync();