diff --git a/build/api/module/input.php b/build/api/module/input.php index c129e8b..9ca22ad 100644 --- a/build/api/module/input.php +++ b/build/api/module/input.php @@ -64,9 +64,9 @@ /* TRAITE LES DONNÉES D'UN FORMULAIRE DE TYPE TÉLÉPHONIQUE * - * @subject Id du sujet concerné + * @subject Données du sujet concerné * @contacts Tableau contenant les données des contacts - * @mini Tableau contenant les données des mini fiches relation + * @mini Tableau contenant les données des mini fiches relation * @fiches Tableau contenant les données des fiches relation * * @return subject_id Retourne l'id sujet de l'enquête @@ -91,7 +91,7 @@ $offset = intval($uniqid) + 1; // on enregistre l'id du sujet - $subject_id = intval($subject); + $subject_id = intval($subject['subject_id']); // Contiendra la valeur de l'id maximum $maxId = $offset; @@ -130,7 +130,10 @@ if( !in_array('phone', $subject_set['subject']['surveys']) ) $subject_set['subject']['surveys'][] = 'phone'; - /* (5) On récupère les noms des contacts */ + /* (5) On met à jour si le sujet veut renouveller l'enquête plus tard */ + $subject_set['subject']['renew'] = $subject['renew']; + + /* (6) On récupère les noms des contacts */ $contactsById = []; // idContact -> nomContact, typeEnquete ('mini' ou 'fiche') foreach($subject_set['contacts'] as $contactId){ @@ -427,9 +430,9 @@ /* TRAITE LES DONNÉES D'UN FORMULAIRE DE TYPE FACEBOOK * - * @subject Id du sujet concerné + * @subject Données du sujet concerné * @contacts Tableau contenant les données des contacts - * @mini Tableau contenant les données des mini fiches relation + * @mini Tableau contenant les données des mini fiches relation * @fiches Tableau contenant les données des fiches relation * * @return subject_id Retourne l'id sujet de l'enquête @@ -454,7 +457,7 @@ $offset = intval($uniqid) + 1; // on enregistre l'id du sujet - $subject_id = intval($subject); + $subject_id = intval($subject['subject_id']); // Contiendra la valeur de l'id maximum $maxId = $offset; @@ -493,7 +496,10 @@ if( !in_array('facebook', $subject_set['subject']['surveys']) ) $subject_set['subject']['surveys'][] = 'facebook'; - /* (5) On récupère les noms des contacts */ + /* (5) On met à jour si le sujet veut renouveller l'enquête plus tard */ + $subject_set['subject']['renew'] = $subject['renew']; + + /* (6) On récupère les noms des contacts */ $contactsById = []; // idContact -> nomContact, typeEnquete ('mini' ou 'fiche') foreach($subject_set['contacts'] as $contactId){ diff --git a/config/modules.json b/config/modules.json index 91eda8d..5618a61 100755 --- a/config/modules.json +++ b/config/modules.json @@ -201,7 +201,7 @@ "description": "Enregistre les données d'une enquête téléphonique.", "permissions": ["admin"], "parameters": { - "subject": { "description": "Id du sujet concerné", "type": "id" }, + "subject": { "description": "Données du sujet (id, etc)", "type": "array" }, "contacts": { "description": "Données des contacts de l'enquête.", "type": "array" }, "mini": { "description": "Mini fiches relations sur les contacts de l'enquête.", "type": "array" }, "fiches": { "description": "Fiches relation sur les plus proches contacts de l'enquête.", "type": "array" }, @@ -216,7 +216,7 @@ "description": "Enregistre les données d'une enquête facebook.", "permissions": ["admin"], "parameters": { - "subject": { "description": "Id du sujet concerné", "type": "id" }, + "subject": { "description": "Données du sujet (id, etc)", "type": "array" }, "contacts": { "description": "Données des contacts de l'enquête.", "type": "array" }, "mini": { "description": "Mini fiches relations sur les contacts de l'enquête.", "type": "array" }, "fiches": { "description": "Fiches relation sur les plus proches contacts de l'enquête.", "type": "array" }, diff --git a/public_html/js/includes/input-facebook-fiche.js b/public_html/js/includes/input-facebook-fiche.js index 467436f..1baa2c8 100644 --- a/public_html/js/includes/input-facebook-fiche.js +++ b/public_html/js/includes/input-facebook-fiche.js @@ -21,7 +21,7 @@ inputFacebookFiche.prototype = { relmark: '.', job: '.', famsit: '0', // Choix 1 à 3 - studies: '0', + studies: '.', reltype: '0', // Choix 1 à 9 reltypeSpecial: '', city: '', diff --git a/public_html/js/includes/input-facebook-subject.js b/public_html/js/includes/input-facebook-subject.js index 54bcae5..1230cc3 100644 --- a/public_html/js/includes/input-facebook-subject.js +++ b/public_html/js/includes/input-facebook-subject.js @@ -1,7 +1,8 @@ /* [0] Constructeur -> définit le conteneur et le bouton d'ajout =========================================================*/ -function inputFacebookSubject(iSubjectId, store_button){ +function inputFacebookSubject(iSubjectId, iCoords, store_button){ this.subject_id = iSubjectId; + this.coords = iCoords; this.store_button = store_button; } @@ -10,6 +11,7 @@ function inputFacebookSubject(iSubjectId, store_button){ inputFacebookSubject.prototype = { store_button: this.store_button, // Bouton d'ajout d'un formulaire subject_id: this.subject_id, + coords: this.coords, handler: null }; @@ -36,7 +38,7 @@ inputFacebookSubject.prototype.fieldsToStorage = function(){ } // {3} On récupère et met en forme les valeurs du deflater // - var obj = { subject_id: this.subject_id.value }; + var obj = { subject_id: this.subject_id.value, coords: this.coords.value }; // {4} On enregistre les données dans le 'localStorage' // lsi.set('f_subject', 0, obj); @@ -57,11 +59,11 @@ inputFacebookSubject.prototype.storageToFields = function(){ // {1} On récupère les informations du sujet // var subjectData = lsi.get('f_subject', 0); - if( subjectData == null ) - subjectData = { subject_id: '' }; + subjectData = subjectData || { subject_id: '', coords: '' }; // {2} On restore les valeurs // - this.subject_id.value = subjectData.subject_id; + this.subject_id.value = subjectData.subject_id; + this.coords.value = subjectData.coords; console.groupEnd(); }; @@ -90,6 +92,9 @@ inputFacebookSubject.prototype.attach = function(handler){ /* (3) On attache un évènement de 'blur' sur chaque '' */ this.subject_id.addEventListener('blur', fts, false); + /* (4) On attache un évènement pour le champ coord */ + this.coords.addEventListener('blur', fts, false); + /* (4) On charge le sujet depuis la mémoire ('localStorage') */ this.storageToFields(); diff --git a/public_html/js/includes/input-html-facebook-data.js b/public_html/js/includes/input-html-facebook-data.js index c95fff6..377f9fa 100644 --- a/public_html/js/includes/input-html-facebook-data.js +++ b/public_html/js/includes/input-html-facebook-data.js @@ -219,43 +219,19 @@ fFicheBuilder.setLayout( "\t
\n"+ "\t\t\n"+ "\t
\n"+ @@ -271,31 +247,14 @@ fFicheBuilder.setLayout( "\t
\n"+ "\t\t\n"+ "\t
\n"+ diff --git a/public_html/js/includes/input-html-phone-data.js b/public_html/js/includes/input-html-phone-data.js index 02a93b0..580bc32 100644 --- a/public_html/js/includes/input-html-phone-data.js +++ b/public_html/js/includes/input-html-phone-data.js @@ -130,23 +130,7 @@ pMiniFicheBuilder.setLayout( "\t

Où habite t-elle/il ?

\n"+ - "\t
\n"+ - "\t\tÀ combien de temps est-ce de chez vous ?
\n"+ - "\t\t   
\n"+ - "\t\t   
\n"+ - "\t\t   
\n"+ - "\t\t   
\n"+ - "\t\t   
\n"+ - "\t
\n"+ - ""); - - - - - - - - + "\t
\n"+ "\t\tÀ combien de temps est-ce de chez vous ?
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t\t   
\n"+ "\t
\n"+ ""); @@ -236,43 +220,19 @@ pFicheBuilder.setLayout( "\t
\n"+ "\t\t\n"+ "\t
\n"+ @@ -288,31 +248,14 @@ pFicheBuilder.setLayout( "\t
\n"+ "\t\t\n"+ "\t
\n"+ diff --git a/public_html/js/includes/input-phone-fiche.js b/public_html/js/includes/input-phone-fiche.js index 30090bb..5d001f5 100644 --- a/public_html/js/includes/input-phone-fiche.js +++ b/public_html/js/includes/input-phone-fiche.js @@ -20,7 +20,7 @@ inputPhoneFiche.prototype = { relmark: '.', job: '.', famsit: '0', // Choix 1 à 3 - studies: '0', + studies: '.', reltype: '0', // Choix 1 à 9 reltypeSpecial: '', city: '', diff --git a/public_html/js/includes/input-phone-subject.js b/public_html/js/includes/input-phone-subject.js index 5952125..2b67fb9 100644 --- a/public_html/js/includes/input-phone-subject.js +++ b/public_html/js/includes/input-phone-subject.js @@ -1,7 +1,8 @@ /* [0] Constructeur -> définit le conteneur et le bouton d'ajout =========================================================*/ -function inputPhoneSubject(iSubjectId, store_button){ +function inputPhoneSubject(iSubjectId, iCoords, store_button){ this.subject_id = iSubjectId; + this.coords = iCoords; this.store_button = store_button; } @@ -10,6 +11,7 @@ function inputPhoneSubject(iSubjectId, store_button){ inputPhoneSubject.prototype = { store_button: this.store_button, // Bouton d'ajout d'un formulaire subject_id: this.subject_id, + coords: this.coords, handler: null }; @@ -36,7 +38,7 @@ inputPhoneSubject.prototype.fieldsToStorage = function(){ } // {3} On récupère et met en forme les valeurs du deflater // - var obj = { subject_id: this.subject_id.value }; + var obj = { subject_id: this.subject_id.value, coords: this.coords.value }; // {4} On enregistre les données dans le 'localStorage' // lsi.set('p_subject', 0, obj); @@ -57,10 +59,11 @@ inputPhoneSubject.prototype.storageToFields = function(){ // {1} On récupère les informations du sujet // var subjectData = lsi.get('p_subject', 0); - subjectData = subjectData || { subject_id: '' }; + subjectData = subjectData || { subject_id: '', coords: '' }; // {2} On restore les valeurs // this.subject_id.value = subjectData.subject_id; + this.coords.value = subjectData.coords; console.groupEnd(); @@ -92,8 +95,13 @@ inputPhoneSubject.prototype.attach = function(handler){ this.store_button.addEventListener('click', fts, false); /* (3) On attache un évènement de 'blur' sur chaque '' */ - // this.subject_id.addEventListener('blur', fts, false); + this.subject_id.addEventListener('blur', fts, false); + + /* (4) On attache un évènement pour le champ coord */ + this.coords.addEventListener('blur', fts, false); + + /* (4) On charge le sujet depuis la mémoire ('localStorage') */ /* (4) On charge le sujet depuis la mémoire ('localStorage') */ this.storageToFields(); diff --git a/public_html/view/input.php b/public_html/view/input.php index cff495b..f99a04e 100644 --- a/public_html/view/input.php +++ b/public_html/view/input.php @@ -150,6 +150,11 @@ if( $getAllR->error == ManagerError::Success )
+
+ Accepteriez- vous de participer à cette étude dans quelques années pour nous aider à comprendre comment votre rapport aux médias sociaux a évolué et a pu changer vos relations avec vos proches ? + Si oui, pouvez-vous nous transmettre vos coordonnées :
+ +

Envoi des données

@@ -265,6 +270,13 @@ if( $getAllR->error == ManagerError::Success )
+
+ Accepteriez- vous de participer à cette étude dans quelques années pour nous aider à comprendre comment votre rapport aux médias sociaux a évolué et a pu changer vos relations avec vos proches ? + Si oui, pouvez-vous nous transmettre vos coordonnées :
+ +
+ +

Envoi des données

diff --git a/public_html/view/js/input.js b/public_html/view/js/input.js index f38905b..986cbff 100644 --- a/public_html/view/js/input.js +++ b/public_html/view/js/input.js @@ -115,6 +115,7 @@ var phoneRoutine = function(){ /* (1) On crée une instance du manager du sujet */ pSubjectManager = new inputPhoneSubject( $('[data-sublink="phone"] article.subject-panel [data-name="subject_id"]'), + $('[data-sublink="phone"] #coord_p'), $('[data-sublink="phone"] article.subject-panel [data-name="submit"]') ); @@ -310,7 +311,7 @@ var phoneRoutine = function(){ var request = { path: 'input/phone', - subject: lsi.export('p_subject')[0].subject_id, + subject: lsi.export('p_subject')[0], contacts: lsi.export('p_contacts'), mini: lsi.export('p_mini-fiches'), fiches: lsi.export('p_fiches'), @@ -371,6 +372,7 @@ var facebookRoutine = function(){ /* (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"] #coord_f'), $('[data-sublink="facebook"] article.subject-panel [data-name="submit"]') ); @@ -457,7 +459,7 @@ var facebookRoutine = function(){ /* (1) On construit les données */ var data = { - subject: lsi.export('f_subject')[0].subject_id, + subject: lsi.export('f_subject')[0], contacts: lsi.export('f_contacts'), mini: lsi.export('f_mini-fiches'), fiches: lsi.export('f_fiches'), @@ -930,13 +932,11 @@ function testRoutinePhone(doMini){ $('article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="age"]').value = count % 19; // {3} On remplit la profession // - var jobVal = ['10', '21', '22', '23', '31', '32', '36', '41', '46', '47', '48', '51', '54', '55', '56', '61', '66', '69', '71', '72', '73', '74', '75', '76', '81', '82']; - jobVal = jobVal[ count % jobVal.length ]; + var jobVal = (count % 13).toString(); $('article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="job"]').value = jobVal; // {4} On remplit les études // - var stuVal = (count % 12).toString(); - if( stuVal.length == 1 ) stuVal = '0'+stuVal; + var stuVal = (count % 8).toString(); $('article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="studies"]').value = stuVal; // {5} Type de relation // @@ -1171,12 +1171,12 @@ function testRoutineFacebook(doMini){ $('section[data-sublink="facebook"] article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="age"]').value = count % 19; // {3} On remplit la profession // - var jobVal = ['10', '21', '22', '23', '31', '32', '36', '41', '46', '47', '48', '51', '54', '55', '56', '61', '66', '69', '71', '72', '73', '74', '75', '76', '81', '82']; + var jobVal = (count % 13).toString(); jobVal = jobVal[ count % jobVal.length ]; $('section[data-sublink="facebook"] article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="job"]').value = jobVal; // {4} On remplit les études // - var stuVal = (count % 12).toString(); + var stuVal = (count % 8).toString(); if( stuVal.length == 1 ) stuVal = '0'+stuVal; $('section[data-sublink="facebook"] article.fiche-relation > input[data-name="uid"][value="'+f+'"] ~ h5 select[data-name="studies"]').value = stuVal;