Modèle:CodeJS/Calcul : Différence entre versions

De Forum des Usages Coopératifs

 
(136 révisions intermédiaires par 2 utilisateurs sont masquées)
Ligne 1 : Ligne 1 :
 
<html>
 
<html>
 
<script type="text/javascript">
 
<script type="text/javascript">
 
 
// Ce code permet de calculer la somme à régler en fonction des différents éléments sélectionnés dans le formulaire
 
// Ce code permet de calculer la somme à régler en fonction des différents éléments sélectionnés dans le formulaire
 +
// Javascript viewer : https://codebeautify.org/jsviewer#
  
// vérifie si la chaine passée en argument est présente dans le tableau des structures défini ci-dessous
+
/*_____________________________________________________________________________________________________*/
function searchStructure(string) {
+
// Définition des variables globales utilisées
 +
// les différents tarifs sont fournis en paramètre à l'appel du modèle
  
    // définition du tableau des différents types de structures d'appartenance des inscrit
+
var debug              = false;                                    // -1 en prod, 1 en phase de test
    // le tableau ci-dessous doit contenir les mêmes éléments que ceux présents dans la liste déroulante
+
    // fournie à la section "Frais d'inscription" > "Votre structure est" du formulaire d'inscription
+
    var structures = new Array;
+
    structures[0] = 'une association';
+
    structures[1] = 'un établissement scolaire';
+
    structures[2] = 'une collectivité';
+
    structures[3] = 'une agence régionale';
+
    structures[4] = 'une entreprise';
+
    structures[5] = 'autre';
+
  
    // on s'assure que la structure sélectionnée dans la liste déroulante fait partie du tableau défini ci-dessus
+
var tarifDouche        = </html>{{{tarif_douche}}}<html>;        // cout d'un hébergement individuel pour une nuit
    for (var j=0; j<structures .length; j++) { if (structures [j].match (string)) return 1; }
+
var tarifNoDouche      = </html>{{{tarif_nodouche}}}<html>;         // cout d'un hébergement individuel pour une nuit
 +
var tarifRepas          = </html>{{{tarif_repas}}}<html>;           // cout d'un repas
 +
var soirOrdinaire      = </html>{{{tarif_soir_ordi}}}<html>;       // cout d'une soirée ordinaire
 +
var soirGala            = </html>{{{tarif_soir_gala}}}<html>;      // cout de la soirée de gala
 +
var tarifInscriptionMin = </html>{{{tarif_insc_min}}}<html>;        // cout du tarif d'inscription réduit
 +
var tarifInscriptionMax = </html>{{{tarif_insc_max}}}<html>;        // cout du tarif d'inscription plein
 +
var deductionContrib    = </html>{{{deduct_contrib}}}<html>;        // montant de la déduction contributeur
  
    // retourne false si non
+
// définition du tableau des différents types de structures d'appartenance des inscrit
    return -1;
+
// le tableau ci-dessous doit contenir les mêmes éléments que ceux présents dans la liste déroulante
}
+
// fournie à la section "Frais d'inscription" > "Votre structure est" du formulaire d'inscription
 +
var structures = new Array;
  
// analyse les les champs rempli dans le formulaire et calcule le montant total de l'inscription
+
structures[0] = 'une association';
function processFormData() {
+
structures[1] = 'un établissement scolaire';
    var debug = 1;             // -1 en prod, 1 en phase de test
+
structures[2] = 'une collectivité';
 +
structures[3] = 'une entreprise';
 +
structures[4] = 'autre';
  
    var total = 0;                // initialisation du total à payer
+
/*_____________________________________________________________________________________________________*/
    var nuites = 0;              // initialisation du cout des nuités
+
// !!! HACKISH PART !!!
    var repas = 0;              // initialisation du cout des repas
+
//  
    var soirees= 0;            // initialisation du cout des soirées
+
// Définition des identifiants des champs utilisées
 +
// les identifiants des champs sont fournis en paramètre à l'appel du modèle
 +
// les identifiants des champs successifs sont calculés à partir de l'identifiant du premier champ fournis en paramètre
  
     // debug
+
var fieldIndividuel     = 'input_' + (</html>{{{field_inscription}}}<html>);
    if (debug == true) { alert("Initialisation du cout total: " + total); }
+
var fieldPrisEnCharge  = 'input_' + (</html>{{{field_inscription}}}<html> + 1);
 +
var fieldIntervenant    = 'input_' + (</html>{{{field_inscription}}}<html> + 2);
  
    // L'inscription est à titre individuel
+
// identifiant de la liste déroulante utilisée pour la sélection du type de la structure
    // section "Frais d'inscription" > "Je m'inscris : " > "à titre individuel"
+
var fieldStructure      = 'input_' + (</html>{{{field_inscription}}}<html> + 3);
    if (document.getElementById('input_15').checked) {
+
  
        // debug
+
/*_____________________________________________________________________________________________________*/
        if (debug == true) { alert("Inscription à titre individuelle"); }
+
// ajustement des identifiants des variables par rapport aux radio bouton laissés vides
 +
// initialisation des variables d'incrémentation
 +
var inc_max    = 0;
 +
var inc_min    = 0;
 +
var inc_panier  = 0;
 +
var inc_contrib = 0;
  
        // on récupère le contenu de l'input 18
+
// cas d'une prise en charge avec / sans panier
        // section "Frais d'inscription" > "Votre structure est"
+
// les boutons radios des tarifs max et min sont obligatoirement positionnées à null
        var checkstruct = document.getElementById('input_18');
+
var checkinput_20  = document.getElementById('input_20');
       
+
        // on s'assure que la structure sélectionnée est valide
+
        if (searchStructure(checkstruct.value) == true) {
+
  
            // debug
+
// cas d'un tarif min avec / sans contrib & avec / sans panier
            if (debug == true) { alert("Type de la structure : " + checkstruct.value); }
+
// le bouton radio de la contribution obligatoire pour une prise en charge est obligatoirement positionné à null
 +
var checkinput_27  = document.getElementById('input_27');
  
            // sélection du niveau de facturation en fonction du type de structure
+
// cas d'un tarif maxi avec / sans contrib & avec / sans panier
            // minimal pour les structures associatives et les établissements scolaires
+
// le bouton radio de la contribution obligatoire pour une prise en charge est obligatoirement positionné à null
            // maximal pour les autres
+
var checkinput_28  = document.getElementById('input_28');
            switch(checkstruct.value) {
+
                case 'une association':
+
                case 'un établissement scolaire':
+
                                              // le tarif minimal est sélectionné, les champs champs input_23 et input_24 sont récupérés
+
                                              // pour déterminer les montants des inscriptions avec et sans contribution
+
  
                                              if (document.getElementById('input_23').checked) {
+
// cas d'un intervenant
                                                  var tarif = document.getElementById('input_23')
+
var checkinput_17  = document.getElementById('input_17');
                                                  var msg = "avec contribution -> ";
+
                                              }
+
  
                                              else if (document.getElementById('input_24').checked) {
+
if (checkinput_27 != null) {
                                                  var tarif = document.getElementById('input_24')
+
    if (document.getElementById('input_27').value == '' ) {
                                                  var msg = "sans contribution -> ";
+
        inc_contrib++;
                                              }
+
        if (debug == true) {
 
+
            alert('inc_contrib : ' + inc_contrib);
                                              // debug
+
        }
                                              if (debug == true) { alert("Montant de l'inscription : <br/>" + msg + tarif); }
+
        if (document.getElementById('input_44').value == '' ) {
 
+
            inc_panier++;
                                              break;
+
            if (debug == true) {
                default:                 
+
                alert('inc_panier: ' + inc_panier);
                                              // le tarif maximal est sélectionné, les champs champs input_20 et input_21 sont récupérés
+
                                              // pour déterminer les montants des inscriptions avec et sans contribution
+
 
+
                                              if (document.getElementById('input_20').checked) {
+
                                                  var tarif = document.getElementById('input_20')
+
                                                  var msg = "avec contribution -> ";
+
                                              }
+
 
+
                                              else if (document.getElementById('input_21').checked) {
+
                                                  var tarif = document.getElementById('input_21')
+
                                                  var msg = "sans contribution -> ";
+
                                              }
+
 
+
                                              // debug
+
                                              if (debug == true) { alert("Montant de l'inscription : <br/>" + msg + tarif); }
+
                                              break;
+
 
             }
 
             }
 +
        };
 +
    };
 +
    if (checkinput_20 != null) {
 +
        if (document.getElementById('input_20').value == '' ) {
 +
            inc_max++;
 +
            if (debug == true) {
 +
                alert('inc_max : ' + inc_max);
 +
            }
 +
            inc_min++;
 +
            if (debug == true) {
 +
                alert('inc_min: ' + inc_min);
 +
            }
 +
            if (document.getElementById('input_17').checked ) {
 +
                var inc_contrib = 2;
 +
            }
 +
            else if (document.getElementById('input_45').value == '' ) {
 +
                inc_panier++;
 +
                if (debug == true) {
 +
                    alert('inc_panier: ' + inc_panier);
 +
                }
 +
            };
 +
        };
 +
    }
 +
}
 +
else if (checkinput_28 != null) {
 +
    if (document.getElementById('input_28').value == '' ) {
 +
        inc_min++;
 +
        if (debug == true) {
 +
            alert('inc_min : ' + inc_min);
 
         }
 
         }
     }
+
        inc_contrib++;
 +
        if (debug == true) {
 +
            alert('inc_contrib : ' + inc_contrib);
 +
        }
 +
        if (document.getElementById('input_45').value == '' ) {
 +
            inc_panier++;
 +
            if (debug == true) {
 +
                alert('inc_panier: ' + inc_panier);
 +
            }
 +
        };
 +
     };
 +
}
  
    // L'inscription contient une demande de prise en charge
+
/*_____________________________________________________________________________________________________*/
    // section "Frais d'inscription" > "Je m'inscris : " > "avec demande de prise en charge"
+
// définitions des identifiants des champs utilisés dans le calcul de l'inscription.
    else if (document.getElementById('input_16').checked) {
+
// les identifiants numériques sont calculés en fonction des incrémentation définies dans la partie précédente.
 +
// le nombre initial utilisé comme base à ce calcul est celui qui correspond au numéro du champ tel qu'indiqué
 +
// lors de la création d'une nouvelle fiche. le calcul permet de préserver le bon fonctionnement du code dans le
 +
// cas d'une mise à jour d'une fiche existante.
 +
// les valeurs initiales des identifiants des champs sont fournis en paramètre à l'appel du modèle
 +
// les identifiants des champs successifs sont calculés à partir de l'identifiant du premier champ fournis en paramètre
  
        // debug
+
// identifiant des radiobuttons correspondant au tarif plein / réduit
        if (debug == true) { alert("Inscription avec demande de prise en charge"); }
+
// section "Frais d'inscription" > "Je choisis ma formule : "
 +
var fieldPleinA    = 'input_' + (</html>{{{field_frais}}}<html> + inc_max);
 +
var fieldPleinB    = 'input_' + (</html>{{{field_frais}}}<html> + 1 + inc_max);
 +
var fieldReduitA    = 'input_' + (</html>{{{field_frais}}}<html> + 3 + inc_max + inc_min);
 +
var fieldReduitB    = 'input_' + (</html>{{{field_frais}}}<html> + 4 + inc_max + inc_min);
  
    }
+
// identifiant des radiobox définissant le type de chambre choisie
    // L'inscription concerne un intervenant
+
var fieldDouche        = 'input_' + (</html>{{{field_douche}}}<html> + inc_max + inc_min + inc_contrib);
    // section "Frais d'inscription" > "Je m'inscris : " > "comme intervenant"
+
var fieldNoDouche      = 'input_' + (</html>{{{field_nodouche}}}<html> + inc_max + inc_min + inc_contrib);
    else if (document.getElementById('input_17').checked) {
+
  
        // debug
+
// identifiants des checkboxes utilisées pour la sélection des nuitées:
        if (debug == true) { alert("Inscription d'un intervenant"); }
+
// section "Hébergement / Repas / Soirées" > "Je réserve les nuits : "
 +
var fieldHebergement = new Array;
 +
for (var i=0;i<</html>{{{num_night}}}<html>;i++) {
 +
    fieldHebergement[i] = 'input_' + (</html>{{{field_heberger}}}<html> + i + inc_max + inc_min + inc_contrib);
 +
}
  
    }
+
// identifiants des checkboxes utilisées pour la sélection des déjeuners:
  // erreur
+
// section "Hébergement / Repas / Soirées" > "Je réserve les déjeuners : "
    else {
+
var fieldRepas = new Array;
        alert("Erreur, le type de l'inscription ne peut-être identifié, la page sera rechargé.");
+
for (var i=0;i<</html>{{{num_repas}}}<html>;i++) {
        window.location.reload(true);
+
    fieldRepas[i]      = 'input_' + (</html>{{{field_repas}}}<html> + i + inc_max + inc_min + inc_contrib);
    }
+
}
  
    return 0;
+
// identifiants des checkboxes utilisées pour la sélection des soirées:
 +
// section "Hébergement / Repas / Soirées" > "Je participerai aux soirées suivantes : "
 +
// soirée ordinaire
 +
var fieldSoiree = new Array;
 +
for (var i=0;i<</html>{{{num_soir}}}<html>;i++) {
 +
    fieldSoiree[i]    = 'input_' + (</html>{{{field_soir}}}<html> + i + inc_max + inc_min + inc_contrib + inc_panier);
 +
}
  
 +
// soirée de gala
 +
var fieldGala = new Array;
 +
    fieldGala[0]      = 'input_' + (</html>{{{field_gala}}}<html> + inc_max + inc_min + inc_contrib + inc_panier);
  
 +
// identifiants du champ texte utilisé pour l'affichage du resultat:
 +
// section "Finaliser" > "Montant total : "
 +
var fieldFake          = 'input_' + (</html>{{{field_calcul}}}<html> + inc_max + inc_min + inc_contrib + inc_panier);
 +
var fieldSomme          = 'input_' + (</html>{{{field_calcul}}}<html> + 1 + inc_max + inc_min + inc_contrib + inc_panier);
  
 +
/*_____________________________________________________________________________________________________*/
 +
// vérifie si la chaine passée en argument est présente dans le tableau des structures défini ci-dessous
 +
function searchStructure(string) {
  
 +
    // on s'assure que la structure sélectionnée dans la liste déroulante fait partie du tableau défini ci-dessus
 +
    for (var j=0; j<structures .length; j++) {
 +
        if (structures [j].match (string)) return 1;
 +
    }
  
 +
    // retourne false si non
 +
    return -1;
 +
}
  
 +
/*_____________________________________________________________________________________________________*/
 +
// calcule le montant des frais d'hébergements
 +
//
 +
// le paramètre facture :
 +
//      positionné à 1 si les couts d'hébergement sont à la charge du participant
 +
//      positionné à -1 si les couts d'hébergement sont à la charge de l'organisation ( intervenants uniquement )
  
 +
function calculFrais(facture,debug) {
 +
    var hebergement = 0;        // initialisation du cout des nuités
 +
    var repas      = 0;        // initialisation du cout des repas
 +
    var soirees    = 0;        // initialisation du cout des soirées
  
 +
    // définition du tarif d'hébergement correspondant au type de chambre choisi
 +
    var tarifHebergement    = 0;        // init cout d'un hébergement individuel pour une nuit
 +
    if (document.getElementById(fieldDouche).checked) {
 +
        tarifHebergement = tarifDouche;
 +
        if (debug == true) {
 +
            alert("douche : " + tarifDouche);
 +
        }
 +
    }
  
     // on récupère le contenu de l'input 23
+
     else if (document.getElementById(fieldNoDouche).checked) {
    var checkform = document.getElementById('input_23');
+
         tarifHebergement = tarifNoDouche;
 
+
         if (debug == true) {
    if (checkform.value == '' ) {
+
            alert("no douche : " + tarifNoDouche);
 
+
        }
         // debug
+
    }
        if (debug == true) { alert("Le champ input_23 est vide"); }
+
 
+
var contrib_max     = document.getElementById('input_20');
+
var no_contrib_max  = document.getElementById('input_21');
+
 
+
var contrib_min     = document.getElementById('input_24');
+
var no_contrib_min  = document.getElementById('input_25');
+
 
+
var night_1     = document.getElementById('input_36');
+
var night_2     = document.getElementById('input_37');
+
var night_3     = document.getElementById('input_38');
+
 
+
var repas_1     = document.getElementById('input_40');
+
var repas_2     = document.getElementById('input_41');
+
var repas_3     = document.getElementById('input_42');
+
 
+
var soir_1     = document.getElementById('input_46');
+
var soir_3     = document.getElementById('input_48');
+
}
+
 
+
    else {
+
 
+
        // debug
+
         if (debug == true) { alert("Le champ input_23 est : " + checkform.value); }
+
 
+
 
+
  
 +
    if (facture == true) {
 
         // détermination des cout d'hébergement
 
         // détermination des cout d'hébergement
 
         // section "Hébergement / Repas / Soirées" > "Je réserve les nuits : "
 
         // section "Hébergement / Repas / Soirées" > "Je réserve les nuits : "
var night_1     = document.getElementById('input_34');
+
        for (var j=0; j<fieldHebergement.length; j++) {
var night_2     = document.getElementById('input_35');
+
            if (document.getElementById(fieldHebergement [j]).checked) {
var night_3     = document.getElementById('input_36');
+
                hebergement = hebergement + tarifHebergement ;
var night_4     = document.getElementById('input_37');
+
            }
 +
        }
  
 
         // détermination des cout des repas
 
         // détermination des cout des repas
 
         // section "Hébergement / Repas / Soirées" > "Je réserve les déjeuners : "
 
         // section "Hébergement / Repas / Soirées" > "Je réserve les déjeuners : "
var repas_1     = document.getElementById('input_39');
+
        for (var j=0; j<fieldRepas.length; j++) {
var repas_2     = document.getElementById('input_40');
+
            if (document.getElementById(fieldRepas [j]).checked) {
var repas_3     = document.getElementById('input_41');
+
                repas = repas + tarifRepas ;
 +
            }
 +
        }
  
 
         // détermination de la participation aux soirées
 
         // détermination de la participation aux soirées
 
         // section "Hébergement / Repas / Soirées" > "Je participerai aux soirées suivantes : "
 
         // section "Hébergement / Repas / Soirées" > "Je participerai aux soirées suivantes : "
var soir_1     = document.getElementById('input_45');
+
        for (var j=0; j<fieldSoiree.length; j++) {
var soir_3     = document.getElementById('input_46');
+
            if (document.getElementById(fieldSoiree[j]).checked) {
}
+
                soirees = soirees + soirOrdinaire;
 +
            }
 +
        }
 +
        for (var j=0; j<fieldGala.length; j++) {
 +
            if (document.getElementById(fieldGala[j]).checked) {
 +
                soirees = soirees + soirGala ;
 +
            }
 +
        }
 +
    }
 +
    else {
 +
      hebergement  = 0;
 +
      repas        = 0;
 +
      soirees      = 0;
 +
    }
  
 +
    // debug
 +
    if (debug == true) {
 +
        alert("Frais d'hébergement : " + hebergement);
 +
        alert("Frais de restauration : " + repas);
 +
        alert("Frais de participation aux soirées : " + soirees);
 +
    }
  
 +
    return hebergement + repas + soirees;
 +
}
  
    // L'inscription est prise en charge par l'organisation
+
/*_____________________________________________________________________________________________________*/
    if (gratos_a.checked || gratos_b.checked) {
+
// calcule le montant des frais d'inscription
 +
//
 +
// le paramètre échelle :
 +
//      positionné à 1 pour un cout d'inscription reduit
 +
//      positionné à -1 pour un cout d'inscription plein
 +
//
 +
// les paramètres input_a et input_b définissent les identifiants à prendre en compte en fonction du type de la structure
  
        // il s'agit d'une prise en charge au titre d'une des structures organisatrices
+
function calculInscription(echelle,input_a,input_b,debug) {
        if (gratos_a.checked) {
+
    var tarif = 0;
  
            // debug
+
    // la valeur de ces variables doit être mise à jour en fonction des différents tarif d'inscription
            if (debug == true) { alert("L'inscription est prise en charge : " + gratos_a.value); }
+
    switch(echelle) {
 +
        case -1: var contrib = tarifInscriptionMin; break;      // montant de l'inscription minimal contribution
 +
        case 1: var contrib = tarifInscriptionMax; break;      // montant de l'inscription maximal contribution
 +
    }
  
            // calcul du montant des nuités
+
    if (document.getElementById(input_a).checked) {
            if(night_1.checked) {  nuites = nuites + 29; }
+
        tarif = contrib - deductionContrib;
            if(night_2.checked) {   nuites = nuites + 29; }
+
        var msg = "avec contribution -> ";
            if(night_3.checked) {  nuites = nuites + 29; }
+
    }
            if(night_4.checked) {  nuites = nuites + 29; }
+
  
            // debug
+
    else if (document.getElementById(input_b).checked) {
            if (debug == true) { alert("Le montant des nuités est de : " + nuites); }
+
        tarif = contrib;
 +
        var msg = "sans contribution -> ";
 +
    }
  
            // calcul du montant des repas
+
    // debug
            if(repas_1.checked) {   repas = repas + 10; }
+
    if (debug == true) {
            if(repas_2.checked) {  repas = repas + 10; }
+
        alert("Montant de l'inscription : " + msg + tarif);
            if(repas_3.checked) {  repas = repas + 10; }
+
    }
  
            // debug
+
    return tarif;
            if (debug == true) { alert("Le montant des repas est de : " + repas); }
+
}
  
             if(soir_1.checked) {   soirees = soirees + 10; }
+
/*_____________________________________________________________________________________________________*/
            if(soir_3.checked) {   soirees = soirees + 16; }
+
// analyse les les champs rempli dans le formulaire et calcule le montant total de l'inscription
 +
 
 +
function processFormData() {
 +
    var total      = 0;        // initialisation du total à payer
 +
    var inscription = 0;        // initialisation du total à payer
 +
 
 +
    var map = document.getElementById('map_google3_1_forminput_values');
 +
    if (map != null) {
 +
        if(map.value == "") {
 +
             alert("Merci de bien vouloir renseigner vos informations de géolocalisation avant de calculer le montant de votre inscription!");
 +
            return -1;
 +
        }
 +
    }
 +
   
 +
    /*_____________________________________________________________________________________ */
 +
    // L'inscription est à titre individuel
 +
    // section "Frais d'inscription" > "Je m'inscris : " > "à titre individuel"
 +
    if (document.getElementById(fieldIndividuel).checked) {
 +
       
 +
        // debug
 +
        if (debug == true) {
 +
            alert("debug : frais inscription");
 +
        }
 +
 
 +
        // on récupère le contenu de l'input 18
 +
        // section "Frais d'inscription" > "Votre structure est"
 +
        var checkstruct = document.getElementById(fieldStructure);
 +
       
 +
        // on s'assure que la structure sélectionnée est valide
 +
        if (searchStructure(checkstruct.value) == true) {
 +
            // la facturation des frais annexes est à la charge du participant
 +
            var facture = 1;
  
 
             // debug
 
             // debug
             if (debug == true) { alert("Le montant des soirées est de : " + soirees); }
+
             if (debug == true) {
 +
                alert("Type de la structure : " + checkstruct.value);
 
             }
 
             }
}
+
 
    else {
+
            // sélection du niveau de facturation en fonction du type de structure
        if (contrib == 'min' ) {
+
            // minimal pour les structures associatives et les établissements scolaires
    if(no_contrib_min.checked) {   total = 70; }
+
            // maximal pour les autres
    if(contrib_min.checked) {  total = 40; }
+
            switch(checkstruct.value) {
            }
+
                case 'une association':
        else {
+
                case 'un établissement scolaire':
    if(no_contrib_max.checked){  total = 170; }
+
                    // le tarif minimal est sélectionné, les champs champs input_23 et input_24 sont récupérés
    if(contrib_max.checked) {  total = 140; }
+
                    // pour déterminer les montants des inscriptions avec et sans contribution
 +
                    inscription = calculInscription(-1,fieldReduitA ,fieldReduitB ,debug);
 +
                    break;
 +
                default:
 +
                    // le tarif maximal est sélectionné, les champs champs input_20 et input_21 sont récupérés
 +
                    // pour déterminer les montants des inscriptions avec et sans contribution
 +
                    inscription = calculInscription(1,fieldPleinA ,fieldPleinB ,debug);
 +
                    break;
 
             }
 
             }
 +
        }
 +
    }
  
        // calcul du montant des nuités
+
    /*_____________________________________________________________________________________ */
        if(night_1.checked) {  nuites = nuites + 29; }
+
    // L'inscription contient une demande de prise en charge
        if(night_2.checked) {   nuites = nuites + 29; }
+
    // section "Frais d'inscription" > "Je m'inscris : " > "avec demande de prise en charge"
         if(night_3.checked) {  nuites = nuites + 29; }
+
    else if (document.getElementById(fieldPrisEnCharge).checked) {
         if(night_4.checked) {  nuites = nuites + 29; }
+
         // la facturation des frais annexes est à la charge du participant
 +
         var facture = 1;
  
 
         // debug
 
         // debug
         if (debug == true) { alert("Le montant des nuités est de : " + nuites); }
+
         if (debug == true) {
 +
            alert("Inscription avec demande de prise en charge");
 +
        }
 +
    }
  
        // calcul du montant des repas
+
    /*_____________________________________________________________________________________ */
        if(repas_1.checked) {  repas = repas + 10; }
+
    // L'inscription concerne un intervenant
        if(repas_2.checked) {   repas = repas + 10; }
+
    // section "Frais d'inscription" > "Je m'inscris : " > "comme intervenant"
         if(repas_3.checked) {  repas = repas + 10; }
+
    else if (document.getElementById(fieldIntervenant).checked) {
 +
         // la facturation des frais annexes est prise en charge par l'organisation
 +
        var facture = -1;
  
 
         // debug
 
         // debug
         if (debug == true) { alert("Le montant des repas est de : " + repas); }
+
         if (debug == true) {
 +
            alert("Inscription d'un intervenant");
 +
        }
 +
    }
  
        // calcul du montant des soirées
+
    /*_____________________________________________________________________________________ */
         if(soir_1.checked) {  soirees = soirees + 10; }
+
  // erreur
         if(soir_3.checked) {  soirees = soirees + 16; }
+
    else {
 +
         alert("Erreur, le type de l'inscription ne peut-être identifié, la page sera rechargé.");
 +
         window.location.reload(true);
 +
    }
  
        // debug
+
    /*_____________________________________________________________________________________ */
        if (debug == true) { alert("Le montant des soirées est de : " + soirees); }
+
    var frais = calculFrais(facture,debug);  
}
+
  
    total = total + nuites + repas + soirees
+
    total = inscription + frais;
    // debug
+
    if (debug == true) { alert("Le montant total est de : " + total); }
+
  
     var data = 'La somme total a régler pour votre inscription est :' ;
+
     // debug
    data += total + ' \n';
+
    if (debug == true) {
 +
        alert("Le montant total est de : " + total + " ");
 +
    }
  
     if (checkform.value == '' ) {
+
     document.getElementById(fieldFake).value = total;
document.getElementById('input_54').value = total;
+
     document.getElementById(fieldSomme).value = total;
}
+
 
     else {
+
    return 0;
document.getElementById('input_52').value = total;
+
}
+
 
}
 
}
 
</script>
 
</script>
 
</html>
 
</html>
 
[[Category:Bazar/Template/Info]]
 
[[Category:Bazar/Template/Info]]

Version actuelle en date du 3 mai 2018 à 11:45