﻿var cnt_usage = 0;
var Maintenant = new Date();
var CurrentYear = Maintenant.getFullYear();
var CarYear;
var CarDescription;
var Brand;
var Model;
var Cylindree;
var motorID;
var kType;
var usage = 78;
var KilometreAuCompteur;
var AnnualCompteur;
var jsonConstraints;
var nbConstraints;
var usage = 78;
var nb_tab_constraints = 7;
var nb_tab_plan = 32;
/********************************************************************************
 * var etape = 5 devient var etape = 9 --> Quatre nouveaux etapes pour immat / nom
 * Immat = etape 6, nom = etape 7
 ********************************************************************************/
var etape = 9;
var etapeDefault = 1;
var montantPlan = 0;
var idFormSim;
var Prix = 0;
var Provenance;
/**************************************************************
* Evolution Immat / Nom --> Deux nouveaux variables introduits 
**************************************************************/
var immat=-1;
var nom;
/***************************
 * Evolution --> Value recus
 ***************************/
var marqueimmat="";
var modeleimmat="";
var cylindreimmat="";
var anneeimmat="";
var ktypeimmat="";

function trim(title) {
if (title.length > 25) {
title = title.substring(0, Math.min(25, title.length)) + "...";
}
return title;
}

function set_element(clef, libelle, description) {
this.clef = clef;
this.libelle = libelle;
this.description = description;
}

function localResLibConstraints(clef) {
for (i = 0; i < nb_tab_constraints && tab_constraints[i].clef != clef; i++);
return tab_constraints[i].description;
}

function localResConstraints(clef) {
for (i = 0; i < nb_tab_constraints && tab_constraints[i].clef != clef; i++);
return tab_constraints[i].libelle;
}

function localResPlan(clef) {
    //alert("nb_tab_plan:" + nb_tab_plan);
    //debugger;
/*for (i = 0; i < nb_tab_plan && tab_plan[i].clef != clef; i++);
return tab_plan[i].libelle;*/

    for (i = 0; i < nb_tab_plan; i++) {
      // alert("i=" + i + "-clef:" + clef);
        if (tab_plan[i].clef == clef) {
            //alert(i+"tab_plan[i].libelle" + tab_plan[i].libelle );
            return tab_plan[i].libelle;
        }
    }

}

function isNumeric(form_value) {
if (form_value.match(/^\d+$/) == null)
return false;
else
return true;
}

function isEmailSim(s) {
var verif = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if (verif.exec(s) == null) {
return false;
} else {
return true;
}
}

function JSONtoString(data) {
var string_json = "[";
var nbe = data.length;
var cpt = 1;
var temp_json;
$.each(data, function() {
string_json += "{";
$.each(this, function(key, val) {
if (key == "reponse")
string_json += '"' + key + '":' + val + ',';
else if (key == "kmKdd")
string_json += '"' + key + '":"' + val + '"';
else
string_json += '"' + key + '":"' + val + '",';
});
if (cpt < nbe) {
string_json += '},';
}
else {
string_json += '}';
}
cpt++;
});
string_json += "]";
return string_json;
}

function validateForm() {
$("#KmAuCompteur_error").html("");
$("#KmAuCompteur_error").append("&nbsp;");
$("#KmAnnual_error").html("");
$("#KmAnnual_error").append("&nbsp;");
var KmAuCompteur_input = $("#KmAuCompteur").val();
var KmAnnual_input = $("#KmAnnual").val();
var errors = 0;
if (KmAuCompteur_input == null || KmAuCompteur_input == '') {
$("#KmAuCompteur_error").show()
.append("champs obligatoire");
errors++;
}
else if (!isNumeric(KmAuCompteur_input)) {
$("#KmAuCompteur_error").show()
.append("numérique");
errors++;
}
if (KmAnnual_input == null || KmAnnual_input == '') {
$("#KmAnnual_error").show()
.append("champs obligatoire");
errors++;
}
else if (!isNumeric(KmAnnual_input)) {
$("#KmAnnual_error").show()
.append("numérique");
errors++;
}
return errors;
}

var titles = new Array();
titles[0] = 'LA Révision';
titles[1] = 'LA Révision - Etape 1';
titles[2] = 'LA Révision - Etape 2';
titles[3] = 'LA Révision - Etape 3';
titles[4] = 'Votre révision des ';
titles[5] = 'LA Révision';
/**************************************************************
* Evolution Immat / Nom --> Quatre nouveaux variables introduits 
**************************************************************/
titles[6] = 'LA Révision - Etape 1';
titles[7] = 'LA Révision - Etape 2';
titles[8] = 'LA Révision - Etape 2';
titles[9] = 'LA Révision - Etape 2';

var tab_constraints = new Array(nb_tab_constraints)
tab_constraints[0] = new set_element("DE", "Diagnostic électronique", "Option systématique pour les véhicules après 2000");
tab_constraints[1] = new set_element("BVA", "Boite de vitesse automatique<br />(ne pas cocher si robotisée ou séquentielle)", "Cochez cette option si votre véhicule dispose d’une boite automatique comme l’indique le schéma ci-dessous. Consultez votre carnet d’entretien si vous avez un doute (il faut trouver une image libre de droit pour une boite auto)");
tab_constraints[2] = new set_element("CLIM", "Climatisation", "Cochez cette option si votre véhicule est équipé d’une climatisation manuelle ou automatique");
tab_constraints[3] = new set_element("4x4", "Boite de transfert", "Si votre véhicule est de type 4X4, votre voiture est très certainement équipée d'une bôite de vitesse transfert 4X4.<br />Vous pouvez cocher cette option et vérifier cette information si vous le souhaitez sur la notice technique du véhicule");
tab_constraints[4] = new set_element("DSG", "Boite de vitesse DSG", "Option principalement disponible sur les véhicules de marques VAG. Consultez la notice  technique de votre voiture, pour savoir si elle en est équipée.");
tab_constraints[5] = new set_element("FAP", "FAP (Filtre à Particules)", "Cochez l’option si vous êtes sûr que votre voiture en est équipée.<br />Sinon, rendez-vous dans votre centre Midas. Seul un professionnel saura pour préciser de façon sûre si votre voiture est équipé ou non d’un filtre à particules.");
tab_constraints[6] = new set_element("LL", "Entretien Long Life ou Longue Durée", "Si vos intervalles de vidange sont supérieurs à 20 000 km, c’est que votre voiture est très certainement entretenue en programme Long Life. Dans ce cas, nous vous invitons à cocher cette option.");

var tab_plan = new Array(nb_tab_plan)
tab_plan[0] = new set_element("9486", "Niveau Boîte de Vitesse Automatique", "");
tab_plan[1] = new set_element("9484", "Niveau Boîte de Vitesse Manuelle", "");
tab_plan[2] = new set_element("9410", "Vidange Essence Huile", "");
tab_plan[3] = new set_element("9438", "Vidange Essence Huile", "");
tab_plan[4] = new set_element("9460", "Filtre à Air", "");
tab_plan[5] = new set_element("9440", "Filtre à Huile", "");
tab_plan[6] = new set_element("9485", "Vidange Boîte de Vitesse Manuelle", "");
tab_plan[7] = new set_element("9470", "Bougies d'Allumage", "");
tab_plan[8] = new set_element("9487", "Vidange Boîte de Vitesse Automatique", "");
tab_plan[9] = new set_element("9469", "Filtre à Essence", "");
tab_plan[10] = new set_element("9459", "Filtre Habitacle", "");
tab_plan[11] = new set_element("9490", "Niveau Boîte de Transfert", "");
tab_plan[12] = new set_element("9420", "Vidange Diesel Huile", "");
tab_plan[13] = new set_element("6904", "Diagnostic Electronique", "");
tab_plan[14] = new set_element("9477", "Contrôle Essence niveau 1", "");
tab_plan[15] = new set_element("9478", "Contrôle Essence niveau 2", "");
tab_plan[16] = new set_element("9479", "Contrôle Essence niveau 3", "");
tab_plan[17] = new set_element("9481", "Contrôle Diesel niveau 1", "");
tab_plan[18] = new set_element("9482", "Contrôle Diesel niveau 2", "");
tab_plan[19] = new set_element("9483", "Contrôle Diesel niveau 3", "");
tab_plan[20] = new set_element("9458", "Filtre à Gasoil", "");
tab_plan[21] = new set_element("9488", "Niveau Pont", "");
tab_plan[22] = new set_element("9491", "Vidange Boîte de Transfert", "");
tab_plan[23] = new set_element("9489", "Vidange Pont", "");
tab_plan[24] = new set_element("9439", "Vidange Diesel Huile", "");
tab_plan[25] = new set_element("DSG", "Boîte de vitesse DSG", "");
tab_plan[26] = new set_element("Et1", "+ 42 points de contrôle", "");
tab_plan[27] = new set_element("Et2", "+ 68 points de contrôle", "");
tab_plan[28] = new set_element("Et3", "+ 76 points de contrôle", "");
tab_plan[29] = new set_element("LIQFREIN", "Purge liquide de Frein", "");
tab_plan[30] = new set_element("LIQFROID", "Remplacement Liquide de Refroidissement", "");
tab_plan[31] = new set_element("COU_ACC_CPL", "Remplacement Courroie Accessoires", "");

function HideAllSteps() {
    i = 1;

    while (i <= etape) {
        $('#sim_etape' + i).hide();

        if (i == 1) {
            $('#sim_etape' + i + "a").hide();
            $('#sim_etape' + i + "b").hide();
        }
        
        i++;
    }
}

function changePageBreadCrum(title) {
    $(".GrayHeavy").html();
    var title = "";
    if ($("#main_loader").css("display") == "block") {
        title = titles[2];
    }
    for (var i = 1; i <= etape; i++) {
        if ($("#sim_etape" + i).css("display") == "block") {
            title = titles[i];
            if (i == 4) {
                title = titles[i] + $("#nbKm").html() + " km*";
            }
        }
    }
    $(".GrayHeavy").html("<strong>" + title + "</strong>");
}

function InitializeddlYear() {
    var ddlYear = $("#annee").html("");
    ddlYear.append($("<option></option>").val("").html("Année..."));
    for (i = CurrentYear; i > 1960; i--) {
        ddlYear.append($("<option></option>").val(i).html(i));
    }
}

function InitializeCombo() {
    ddlBrand = $("#brandId").html("");
    ddlBrand.append($("<option></option>").val('').html('Marque...'));
    ddlModel = $("#modelId").html("");
    ddlModel.append($("<option></option>").val('').html('Modèle...'));
    ddlCylindre = $("#cylindreId").html("");
    ddlCylindre.append($("<option></option>").val('').html('Cylindrée...'));
}

function InitializeInput() {
    $("#input_Name").focus(function() {
        $("#NameErr").html("");
        value = document.getElementById("input_Name").value;
        if (value == "Nom") {
            $(this).attr("value", "");
        }
    });
    $("#input_Email").focus(function() {
        value = document.getElementById("input_Email").value;
        if (value == "Email") {
            $(this).attr("value", "");
        }
    });
    $("#codpos").focus(function() {
        value = document.getElementById("codpos").value;
        if (value == "Code postal") {
            $(this).attr("value", "");
        }
    });
}

function InitializeRadio() {
    $("#radList1").click(function() {
        $("#radListErr").html("");
    });
    $("#radList2").click(function() {
        $("#radListErr").html("");
    });
    $("#radList3").click(function() {
        $("#radListErr").html("");
    });

    $("#chkReceive1").click(function() {
        $("#chkReceiveErr").html("");
    });
    $("#chkReceive2").click(function() {
        $("#chkReceiveErr").html("");
    });
}

function performSearchButton() {
    idFormSim = 2;
    $("#etap2_Eligible_TextVehicule").html("");
    $("#etap2_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
    $("#etap2_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
    $("#etap2_Eligible_TextVehicule").append($('#cylindreId :selected').text() + " - ");
    $("#etap2_Eligible_TextVehicule").append("Année " + $("#annee").val());

    if (annee != 0 && brandId != 0 && modelId != 0 && cylindreId != 0) {
        $("#btn-sim-1").hide();
        $.ajax(
            {
                type: "POST",
                url: "ddlSearBook.ashx",
                data: { immat: "1s1", ktype: cylindreId, yearCar: annee + "00" },
                dataType: "json",
                success: function(data) {
                //alert(data.Collection[0].motors);
                    bindOptionResultsModelSearchBook(data, annee);
                    $("#loader").hide();
                    $("#btn-sim-1").show();
                }
            });
    }
}
function performSearchButtonImmat(ktypes, annee, marque, modele, cylindre) {
    idFormSim = 2;
    $("#etap2_Eligible_TextVehicule").html("");
    $("#etap2_Eligible_TextVehicule").append(marque + " - ");
    $("#etap2_Eligible_TextVehicule").append(modele + " - ");
    $("#etap2_Eligible_TextVehicule").append(cylindre + " - ");
    $("#etap2_Eligible_TextVehicule").append("Année " + annee);

    if (annee != 0 && ktypes != "") {
        $("#btn-sim-1").hide();
        $.ajax(
            {
                type: "POST",
                url: "ddlSearBook.ashx",
                data: { immat: "1s1", ktype: ktypes, yearCar: annee + "00" },
                dataType: "json",
                success: function(data) {
                    //alert(data.Collection[0].motors);
                    bindOptionResultsModelSearchBook(data, annee);
                    $("#loader").hide();
                    //$("#ajaxetape7").hide();
                    $("#btn-sim-1").show();
                }
            });
    }
}

function ReloadData() {
    
    if (annee == 0 && brandId == 0 && modelId == 0 && cylindreId == 0) {
        return;
    }

    $("#annee").val(annee);

    $.ajax(
        {
            type: "POST",
            url: "ddlBrands.ashx",
            data: { annee: annee },
            dataType: "json",
            success: function(data) {
                bindOptionResultsBrandInt(data);
            }
        });

}

function NonEligible() {
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    $("#etapeNonEligible_TextVehicule").html("");
    if (immat != "" && immat != -1) {
        $("#etapeNonEligible_TextVehicule").append("Immat: "+immat);
    }
    else {     
        $("#etapeNonEligible_TextVehicule").append($('#brandId :selected').text() + " - ");
        $("#etapeNonEligible_TextVehicule").append($('#modelId :selected').text() + " - ");
        $("#etapeNonEligible_TextVehicule").append("Année " + $("#annee").val());
    }
    $("#sim_etape5").show();
    // Xiti
    xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Plan_Non');
    changePageBreadCrum(titles[idFormSim]);
    $("#main_loader").hide();
}
function ShowEtape1() {
    //Point le systeme vers le formulaire 1
    idFormSim = 1;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    //Mise en place des textes
    //$("#simimmatval").html("");
    //$("#simimmatval").append(immat);
    //$("#txtimmat").val(immat);        
    $("#sim_etape1").show();
    changePageBreadCrum(titles[idFormSim]);
    $("#main_loader").hide();
}
function ShowEtape6() {
    //Point le systeme vers le formulaire 1
    idFormSim = 6;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    $.ajax(
    {
        type: "GET",
        url: "/_js/checkupdateposition.aspx",
        data: { position: 1 },
        dataType: "html"
    });    
    //Mise en place des textes
    //$("#simimmatval").html("");
    //$("#simimmatval").append(immat);
    //$("#txtimmat").val(immat);        
    $("#sim_etape6").show();
    changePageBreadCrum(titles[idFormSim]);
    $("#main_loader").hide();
}
function ShowEtape7() {
    //Point le systeme vers le formulaire 7
    idFormSim = 7;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    //Mise en place des textes
    $("#simimmatval").html("");
    $("#simimmatval").append(immat);
    $("#txtimmat").val(immat);
    
    
    $("#sim_etape7").show();
    changePageBreadCrum(titles[idFormSim]);
    $("#main_loader").hide();
}
function ShowEtape8(val) {
    //Point le systeme vers le formulaire 8
    idFormSim = 8;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    //Mise en place des textes
    $("#P1").html("");
    $("#P1").append(immat);
    $("#P2").html("");
    $("#P2").append(nom);

    //$("#txtimmat").val(immat);

    //Populating Dynamically liste
    //Clearing liste
    var list = $("#ullist");
    list.empty();

    //Updating liste
    for (x = 0; x < val.length; x++) {
        valitems = val[x].split('|');
        $('<li><input type="radio" class="radio" name="modele" value="' + val[x] + '" />' + valitems[0] + " - " + valitems[1] + " - " + valitems[2] + ' Année ' + valitems[3] + '</li>').appendTo('ul#ullist');
    }


    $("#sim_etape8").show();
    changePageBreadCrum(titles[idFormSim]);
}
function ShowEtape9() {
    //Point le systeme vers le formulaire 9
    idFormSim = 9;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    //Mise en place des textes
    $("#P3").html("");
    $("#P3").append(immat);
    $("#P4").html("");
    $("#P4").append(nom);
    //$("#txtimmat").val(immat);


    $("#sim_etape9").show();
    changePageBreadCrum(titles[idFormSim]);
}
function ShowEtape4(varlist) {

    // Repopulating eth    
    cnt_usage = varlist[1];
    Maintenant = varlist[2];
    CurrentYear = varlist[3];
    CarYear = varlist[4];
    CarDescription = varlist[5];
    Brand = varlist[6];
    Model = varlist[7];
    Cylindree = varlist[8];
    motorID = varlist[9];
    kType = varlist[10];
    usage = varlist[11];
    KilometreAuCompteur = varlist[12];
    AnnualCompteur = varlist[13];
    
    nbConstraints = varlist[15];
    nb_tab_constraints = varlist[16];
    nb_tab_plan = varlist[17];
    etape = varlist[18];
    etapeDefault = varlist[19];
    montantPlan = varlist[20];
    idFormSim = varlist[21];
    Prix = varlist[22];
    Provenance = varlist[23];
    immat = varlist[24];
    nom = varlist[25];
    marqueimmat = varlist[26];
    modeleimmat = varlist[27];
    cylindreimmat = varlist[28];
    anneeimmat = varlist[29];
    ktypeimmat = varlist[30];

    //alert(kType);


    //Mise en place des textes
    $("#simimmatval").html("");
    $("#simimmatval").append(immat);
    $("#txtimmat").val(immat);

    

    $("#KmAuCompteur").attr("value", varlist[31]);
    $("#KmAnnual").attr("value", varlist[32]);
    if (varlist.length < 33) {
        alert("Une erreur c'est produit, vous allez etre redirigé vers l'accueil.");
        window.location = "/default.aspx";
    }    
    var val = varlist[33].split('&');
    $("#etape4_text_OptionsSpecifiques").html(val[0].substring(0, val[0].length - 5));
    $("#eml_OptionsSpecifiques").html(val[0].substring(0, val[0].length - 5)+"<br/>");

    var hasimmat = getParameterByName("immat");

    if (hasimmat != "") {
        //Other steps values
        $("#etap2_Eligible_TextVehicule").append(marqueimmat + " - ");
        $("#etap2_Eligible_TextVehicule").append(modeleimmat + " - ");
        $("#etap2_Eligible_TextVehicule").append(cylindreimmat + " - ");
        $("#etap2_Eligible_TextVehicule").append("Année " + anneeimmat);

        $("#etap3_Eligible_TextVehicule").append(marqueimmat + " - ");
        $("#etap3_Eligible_TextVehicule").append(modeleimmat + " - ");
        $("#etap3_Eligible_TextVehicule").append(cylindreimmat + " - ");
        $("#etap3_Eligible_TextVehicule").append("Année " + anneeimmat);
    }
    else {
        //Other steps values
        $("#etap2_Eligible_TextVehicule").append(Brand + " - ");
        $("#etap2_Eligible_TextVehicule").append(Model + " - ");
        $("#etap2_Eligible_TextVehicule").append(Cylindree + " - ");
        $("#etap2_Eligible_TextVehicule").append("Année " + CarYear);

        $("#etap3_Eligible_TextVehicule").append(Brand + " - ");
        $("#etap3_Eligible_TextVehicule").append(Model + " - ");
        $("#etap3_Eligible_TextVehicule").append(Cylindree + " - ");
        $("#etap3_Eligible_TextVehicule").append("Année " + CarYear);
    }
    $("#etape3_text_KmAuCompteur").html("");
    $("#etape3_text_KmAuCompteur").append($("#KmAuCompteur").attr("value"));
    $("#etape3_text_KmAnnual").html("");
    $("#etape3_text_KmAnnual").append($("#KmAnnual").attr("value"));
    $("#etape3_typeUsage").html("");
    if (cnt_usage == 0) {
        usage = 78;
        $("#etape3_typeUsage").append("normal");
    } else {
        usage = 83;
        $("#etape3_typeUsage").append("urbain");
    }

    var myktype = kType;
    var mycaryear = CarYear;

    if (hasimmat != "") {
        myktype = ktypeimmat;
        mycaryear = anneeimmat;
    }
      

    $.ajax(
    {
        type: "POST",
        url: "ddlSearBook.ashx",
        data: { immat: "1s1", ktype: myktype, yearCar: mycaryear + "00" },
        dataType: "json",
        success: function(data) {

            if (data.Collection[0].motors.length == 1) {
                jsonConstraints = data.Collection[0].constraints;
                GetConstraints(data.Collection[0].constraints, mycaryear);

                //Setting value for constraints                
                var myConstraints = varlist[14].split('|');
                for (i = 0; i < myConstraints.length - 1; i++) {
                    var myConstraintDetail = myConstraints[i].split('&');
                    if (myConstraintDetail[1] == 1) {
                        for (j = 0; j < nbConstraints; j++) {
                            var var_IDC = $('input[name=accepteC' + j + ']').attr("id");
                            if (var_IDC == myConstraintDetail[0]) {
                                $('input[name=accepteC' + j + ']').attr("checked", "checked");
                                jsonConstraints[j].reponse = 1;                                
                                break;
                            }
                        }
                    }
                }

                showetape4p2(varlist);


            }
            else NonEligible();
        }
    });
}
function showetape4p2(varlist) {
    //Setting place
    $("#etape3_loader").show();
    cnt_usage = 0;
    for (i = 0; i <= 3; i++) {
        var_name = $('input[name=accepte' + i + ']').serializeArray()[0].value;
        cnt_usage = parseInt(cnt_usage) + parseInt(var_name);
    }
    KilometreAuCompteur = $("#KmAuCompteur").attr("value");
    AnnualCompteur = $("#KmAnnual").attr("value");

    $("#eml_Car").html("");
    $("#eml_Car").append($('#brandId :selected').text() + " " + $('#modelId :selected').text());

    $("#eml_Cyl").html("");
    $("#eml_Cyl").append($('#cylindreId :selected').text());

    $("#eml_CarYear").html("");
    $("#eml_CarYear").append($('#annee :selected').text());

    $("#eml_KmCompteur").html("");
    $("#eml_KmCompteur").append($("#KmAuCompteur").val());

    $("#eml_KmAnnual").html("");
    $("#eml_KmAnnual").append($("#KmAnnual").val());

    Brand = $('#brandId :selected').text();

    Model = $('#modelId :selected').text();

    Cylindree = $('#cylindreId :selected').text()

    $("#etap4_Eligible_TextVehicule").html("");
    /*$("#etap4_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
    $("#etap4_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
    $("#etap4_Eligible_TextVehicule").append($('#cylindreId :selected').text());*/
    CarDescription = $("#etap4_Eligible_TextVehicule").html();
    //$("#etap4_Eligible_TextVehicule").append(" - Année " + $("#annee").val());
    if (marqueimmat == "") {
        $("#etap4_Eligible_TextVehicule").append(Brand + " - ");
        $("#etap4_Eligible_TextVehicule").append(Model + " - ");
        $("#etap4_Eligible_TextVehicule").append(Cylindree + " - ");
        $("#etap4_Eligible_TextVehicule").append("Année " + CarYear);
    }
    else {
        $("#etap4_Eligible_TextVehicule").append(marqueimmat + " - ");
        $("#etap4_Eligible_TextVehicule").append(modeleimmat + " - ");
        $("#etap4_Eligible_TextVehicule").append(cylindreimmat + " - ");
        $("#etap4_Eligible_TextVehicule").append("Année " + anneeimmat);
    }

    $("#etape4_text_KmAuCompteur").html("");
    $("#etape4_text_KmAuCompteur").append($("#KmAuCompteur").attr("value"));

    $("#etape4_text_KmAnnual").html("");
    $("#etape4_text_KmAnnual").append($("#KmAnnual").attr("value"));
    $("#eml_Usage").html("");
    $("#etape4_typeUsage").html("");

    if (cnt_usage == 0) {
        usage = 78;
        $("#etape4_typeUsage").append("normal");
        $("#eml_Usage").append("normal");
    } else {
        usage = 83;
        $("#etape4_typeUsage").append("urbain");
        $("#eml_Usage").append("urbain")
    }

    /*$("#eml_OptionsSpecifiques").html("");
    $("#etape4_text_OptionsSpecifiques").html("");
    for (i = 0; i < nbConstraints; i++) {
    var var_nameC = $('input[name=accepteC' + i + ']').attr("checked");
    var var_IDC = $('input[name=accepteC' + i + ']').attr("id");
    if (jsonConstraints[i].clef == var_IDC && jsonConstraints[i].clef != "KDD") {
    if (var_nameC == true) {
    $("#etape4_text_OptionsSpecifiques").append("- " + localResConstraints(jsonConstraints[i].clef).split("<br />", 1) + "<br />");
    $("#eml_OptionsSpecifiques").append("&bull;&nbsp;&nbsp;" + localResConstraints(jsonConstraints[i].clef).split("<br />", 1) + "<br />");
    jsonConstraints[i].reponse = 1;
    }
    else {
    jsonConstraints[i].reponse = 0;
    }
    }
    } */

    if (marqueimmat == "") {
        $.ajax(
                    {
                        type: "POST",
                        url: "ddlSearchPlan.ashx",
                        data: {
                            yearCar: CarYear + "00",
                            carnet: 0,
                            immat: "1s1",
                            jsonConstraints: JSONtoString(jsonConstraints),
                            ktype: kType,
                            motor: motorID,
                            usage: usage
                        },
                        dataType: "json",
                        success: function(data) {
                            kType = Cylindree;
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape3_Validation');
                            bindOptionResultsModelSearchPlan(data, KilometreAuCompteur, $("#annee").val());
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Plan_Resultat');
                            $("#main_loader").hide();
                            $("#sim_etape4").show();
                            changePageBreadCrum(titles[idFormSim]);
                        }
                    });
    }
    else {
        $.ajax(
                    {
                        type: "POST",
                        url: "ddlSearchPlan.ashx",
                        data: {
                            yearCar: anneeimmat + "00",
                            carnet: 0,
                            immat: "1s1",
                            jsonConstraints: JSONtoString(jsonConstraints),
                            ktype: ktypeimmat,
                            motor: motorID,
                            usage: usage
                        },
                        dataType: "json",
                        success: function(data) {
                            kType = ktypeimmat;
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape3_Validation');
                            bindOptionResultsModelSearchPlan(data, KilometreAuCompteur, anneeimmat);
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Plan_Resultat');
                            $("#main_loader").hide();
                            $("#sim_etape4").show();
                            changePageBreadCrum(titles[idFormSim]);
                        }
                    });
    }
    
}
/*
function ShowEtape1() {
    //Point le systeme vers le formulaire 1
    idFormSim = 1;
    //Cacher tous les layers
    i = 1;
    while (i <= etape) {
        $('#sim_etape' + i).hide();
        i++;
    }
    //Mise en place des textes
    //$("#P1").html("");
    //$("#P1").append(immat);
    //$("#txtimmat").val(immat);


    $("#sim_etape1").show();
    changePageBreadCrum(titles[idFormSim]);
}
*/
function bindQuestion() {
    var infoBox = $('#popupId');
    $(".NavRevi").find(".QuesOp").click(function(e) {
        infoBox.addClass("ShowInfo");
        infoBox.find(".Content").html($(this).parent().parent().find(".Info").html())
        infoBox.css({ left: (e.pageX - 25), top: (e.pageY - 22) });
        e.stopPropagation();
    })
    $("body").bind("click", function(e) {
        infoBox.removeClass("ShowInfo");
    });
}

function GetConstraints(data, annee) {
    $("#OptionsSpecifiques").html("");
    nbConstraints = 0;
    for (var k = 0; k < data.length; k++) {
        if (data[k].clef != "KDD") {
            nbConstraints++;
            var checkbox = $('<input>').attr({
                'name': 'accepteC' + k,
                'id': data[k].clef,
                'type': 'checkbox',
                'class': 'RadioStyle2',
                'tabindex': '77'
            });
            var el_p = $("<p>").attr({ 'class': 'OptionEtape Wrapper' });
            el_p.append(checkbox);

            var lib_cons = localResConstraints(data[k].clef)
            var el_span = $("<span>").attr({ 'class': 'Option' });
            el_span.append('<label class="Votre" for="' + data[k].clef + '">' + lib_cons + '</label>&nbsp;<a title="Question" class="QuesOp"><img src="../_images/icon-question.gif" width="12" height="14" alt="Question"/></a>');
            el_p.append(el_span);

            var el_spanInfo = $("<span>").attr({ 'class': 'Info' });
            el_spanInfo.append(localResLibConstraints(data[k].clef));
            el_p.append(el_spanInfo);

            $("#OptionsSpecifiques").append(el_p);
            if (eval(annee) >= 2000 && data[k].clef == "DE") {
                $("#" + data[k].clef).attr("checked", "checked");
                $("#" + data[k].clef).attr("disabled", "disabled");
            }
            bindQuestion();
        }
    }
}

function bindOptionResultsBrandInt(data) {
    ddlBrand = $("#brandId").html("");
    ddlBrand.append($("<option></option>").val('').html('Marque...'));
    for (var k = 0; k < data.BRAND.length; k++) {
        ddlBrand.append($("<option></option>").val(data.BRAND[k].brandId).html(trim(data.BRAND[k].brandName)));
    }
    $.timer(1, function(timer) {

        $("#brandId").val(brandId);
        timer.stop();
        $.ajax(
            {
                type: "POST",
                url: "ddlModels.ashx",
                data: { annee: annee, brandId: brandId },
                dataType: "json",
                success: function(data) {
                    bindOptionResultsModelInt(data);
                }
            });
    });
}

function bindOptionResultsModelInt(data) {
    $("#modelId").html("");
    ddlModel = $("#modelId").html("");
    ddlModel.append($("<option></option>").val('').html('Modèle...'));
    for (var k = 0; k < data.MODEL.length; k++) {
        ddlModel.append($("<option></option>").val(data.MODEL[k].modelId).html(data.MODEL[k].modelName));
    }
    $.timer(1, function(timer) {
        $("#modelId").val(modelId);
        timer.stop();
        $.ajax(
            {
                type: "POST",
                url: "ddlCylindre.ashx",
                data: { annee: annee, brandId: brandId, modelId: modelId },
                dataType: "json",
                success: function(data) {
                    bindOptionResultsModelCylindreInt(data);
                }
            });

    });

}

function bindOptionResultsModelCylindreInt(data) {
    
    $("#cylindreId").html("");
    ddlCylindre = $("#cylindreId").html("");
    ddlCylindre.append($("<option></option>").val('').html('Cylindrée...'));
    for (var k = 0; k < data.CYLINDRE.length; k++) {
        ddlCylindre.append($("<option></option>").val(data.CYLINDRE[k].cylindreId).html(data.CYLINDRE[k].cylindreName.split("(", 1) + " (" + data.CYLINDRE[k].cylindrePuissance + " ch)"));
    }
    $.timer(1, function(timer) {
        if (cylindreId > 0) {
            $("#cylindreId").val(cylindreId);
        }
        $("#sim_etape1").show();

        jQuery(".SelectUI").addSelectUI({
            scrollbarWidth: 15,
            maxDropListHeight: 300
        });
        timer.stop();

        //Cheat code $('#cylindreId :selected').text()
        if (annee == -1) {
            $($("p", $("#annee").next())[0]).html("Année");
        }
        else {
            $($("p", $("#annee").next())[0]).html(annee);
        }
        $($("p", $("#brandId").next())[0]).html(trim($('#brandId :selected').text()));
        $($("p", $("#modelId").next())[0]).html(trim($('#modelId :selected').text()));
        $($("p", $("#cylindreId").next())[0]).html(trim($('#cylindreId :selected').text()));
        $("#sim_etape1").hide();

        /**************************************************************
        * Etape1 --> Alimenter
        * A verifier provenance
        **************************************************************/
        var position = -1;
        var randomnumber = Math.floor(Math.random() * 1100)
        $.ajax(
                {
                    type: "GET",
                    url: "/_js/checkupdateposition.aspx",
                    data: { rand: randomnumber },
                    dataType: "html",
                    success: function(data) {
                        datadetails = data.split('$');
                        position = datadetails[0];
                        /*********************************************************
                        * If possition = 1, increment it
                        *********************************************************/
                        immat = getParameterByName("immat"); // Get current immat
                        if (position == 1 || position == "") {                           

                            if (k == 0) {
                                if (immat != "") {
                                    /****************************************************************
                                    * Verifier si Immat est dispo --> Si oui on affiche etape 7 (nom)
                                    ****************************************************************/
                                    ShowEtape7();
                                }
                                else {
                                    /********************************************
                                    * Else --> Afficher etape 5 (non eligible)
                                    ********************************************/
                                    NonEligible();
                                }
                            }
                            else { performSearchButton(); }
                        }
                        else {
                            ShowEtape4(datadetails);
                            
                        }
                    }
                });




    });
}

function bindOptionResultsModelSearchBook(data, annee) {
    //alert("bindOptionResultsModelSearchBook");
    if (data.Collection[0].motors.length == 1) {
        motorID = data.Collection[0].motors[0].codeMoteur;
        jsonConstraints = data.Collection[0].constraints;
        GetConstraints(data.Collection[0].constraints, annee);
        HideAllSteps();
        $('#sim_etape' + idFormSim).show();
        changePageBreadCrum(titles[idFormSim]);
        $("#main_loader").hide();
    }
    else NonEligible();
}

function bindOptionResultsModelSearchPlan(data, KilometreAuCompteur, annee) {
    CarYear = annee;
    $("#plan").html("");
    $("#travaux").html("");
    $("#eml_Plan").html("");
    var nbControlDiesel = 0
    var nbControlEssence = 0
    var _pasKilometrique = data.plan[0].pasKilometrique;
    var pasKilometrique = (data.plan[0].pasKilometrique) / 2;
    var etapesSansHuile = data.plan[0].etapesSansHuile;

    if (KilometreAuCompteur <= etapesSansHuile[0].kilometrage) {
        k = 0;
    }
    else {
        for (var k = 0; k < etapesSansHuile.length; k++) {
            if (eval(etapesSansHuile[k].kilometrage) <= KilometreAuCompteur
				&& (k == (etapesSansHuile.length - 1) || eval(etapesSansHuile[k + 1].kilometrage) > KilometreAuCompteur)) {
                break;
            }
        }
        if (k < (etapesSansHuile.length - 1)) {
            var d1 = Math.abs(etapesSansHuile[k].kilometrage - KilometreAuCompteur);
            var d2 = Math.abs(etapesSansHuile[k + 1].kilometrage - KilometreAuCompteur);
            if (d1 >= d2) k++;
        }
    }

    var matelas = etapesSansHuile[k].matelasEuros;
    montantPlan = etapesSansHuile[k].paddedPrice;
    montantPlan = montantPlan.replace(".0", "");
    var kilometrage = etapesSansHuile[k].kilometrage;
    var typehuile = data.plan[0].huile.libelle;
    $("#nbKm").html("");
    $("#nbKm").append(kilometrage);
    $("#eml_nbKm").html("");
    $("#eml_nbKm").append(kilometrage);
    $("#etape4R_text_KmAnnual").html("");
    $("#etape4R_text_KmAnnual").append(kilometrage);
    
    for (var j = 0; j < etapesSansHuile[k].lignesEtape.length; j++) {
        var labelElement = etapesSansHuile[k].lignesEtape[j].label;
        var clefGroupe = etapesSansHuile[k].lignesEtape[j].clefGroupe;
        var codeElement = etapesSansHuile[k].lignesEtape[j].codeElement;
        if (clefGroupe != "HORSPEP") {
            if (clefGroupe != "CONTROLE") {
                if (codeElement == "9410" || codeElement == "9438" || codeElement == "9420" || codeElement == "9439") {
                    $("#plan").append("<li>" + localResPlan(codeElement) + " " + typehuile + "</li>");
                    $("#eml_Plan").append("&bull; " + localResPlan(codeElement) + " " + typehuile + "<br />");
                } else {
                    $("#plan").append("<li>" + localResPlan(codeElement) + "</li>");
                    $("#eml_Plan").append("&bull; " + localResPlan(codeElement) + "<br />");
                }
            } else {
                if (codeElement == "9481" || codeElement == "9482" || codeElement == "9483") {
                    nbControlDiesel++;
                }
                if (codeElement == "9477" || codeElement == "9478" || codeElement == "9479") {
                    nbControlEssence++;
                }
            }           
        }
        else {
            var result;
            var AnneeVehicule;
            var cycleCourroie;
            if (codeElement == "COURROIE") {
                cycleCourroie = etapesSansHuile[k].lignesEtape[j].cycle;
                result = cycleCourroie * _pasKilometrique;
                if (KilometreAuCompteur > result)
                    $("#travaux").append("<li>" + labelElement + "</li>");
            }
            if (codeElement == "TPS_COURROIE") {
                cycleCourroie = etapesSansHuile[k].lignesEtape[j].cycle
                result = cycleCourroie / 12;
                AnneeVehicule = eval(annee) + eval(result);
                if (AnneeVehicule < CurrentYear)
                    $("#travaux").append("<li>" + labelElement + "</li>");
            }
            if (codeElement == "CLIM") {
                var cycleClim = etapesSansHuile[k].lignesEtape[j].cycle
                AnneeVehicule = eval(annee) + eval(cycleClim);
                if (AnneeVehicule < CurrentYear)
                    $("#travaux").append("<li>" + labelElement + "</li>");
            }
        }
    }
	var pdc="";
    switch (nbControlDiesel) {
        case 1:
            $("#plan").append("<li>" + localResPlan("Et1") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et1") + "<br />");
			 pdc = localResPlan("Et1");
            break;
        case 2:
            $("#plan").append("<li>" + localResPlan("Et2") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et2") + "<br />");
			 pdc = localResPlan("Et2");
            break;
        case 3:
            $("#plan").append("<li>" + localResPlan("Et3") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et3") + "<br />");
			 pdc = localResPlan("Et3"); 
            break;
    }

    switch (nbControlEssence) {
        case 1:
            $("#plan").append("<li>" + localResPlan("Et1") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et1") + "<br />");
			pdc = localResPlan("Et1");
            break;
        case 2:
            $("#plan").append("<li>" + localResPlan("Et2") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et2") + "<br />");
			pdc = localResPlan("Et2");
            break;
        case 3:
            $("#plan").append("<li>" + localResPlan("Et3") + "</li>");
            $("#eml_Plan").append("&bull; " + localResPlan("Et3") + "<br />");
			pdc = localResPlan("Et3");
            break;
    }
	
	var points_array = pdc.split(' ');
    var points = points_array[1];
    var doc;
    if (points >= 0 && points <= 42) {
        doc = "/_Docs/Tarifs_niveau_de_controle_1.pdf";
    }
    if (points>=43 && points<=68) {
        doc = "/_Docs/Tarifs_niveau_de_controle_2.pdf";
    }
    if (points>=69 && points <=76) {
        doc = "/_Docs/Tarifs_niveau_de_controle_3.pdf";
    }
    $("#hrefNiveau").attr("href", doc);	
	
    HideAllSteps();
    $('#sim_etape' + idFormSim).show();
    changePageBreadCrum(titles[idFormSim])

    Prix = eval(montantPlan);
    $("#prix").html("");
    $("#prix").append(montantPlan);
}

function generateEmail() {
    for (i = 1; i <= 3 && $('input[id=radList' + i + ']').attr("checked") == false; i++);
    if (i != 4) {
        $("#radListErr").html("");
        $("#eml_Civilite").html("");
        $("#eml_Civilite").append($('input[id=radList' + i + ']').attr("value"));
        var _name = $('input[id=input_Name]').attr("value");
        var _email = $('input[id=input_Email]').attr("value");

        var _name0 = _name.substring(0, 1);
        _name = _name0.toUpperCase() + _name.substring(1, _name.length).toLocaleLowerCase();

        $("#eml_Name").html("");
        $("#eml_Name").append(_name);

        var oui = $('input[id=chkReceive1]').attr("checked");
        var non = $('input[id=chkReceive2]').attr("checked");

        if (_name == "Nom" || _name == "") {
            $("#NameErr").html("");
            $("#NameErr").append("Le nom est obligatoire.");
        } else if (isEmailSim(_email) == false) {
            $("#EmailErr").html("");
            $("#EmailErr").append("L'e-mail saisi n'est pas valide.");
        } else if (oui == false && non == false) {
            $("#EmailErr").html("");
            $("#chkReceiveErr").html("");
            $("#chkReceiveErr").append("Merci de préciser si vous souhaitez recevoir des offres commerciales par email.");
        } else {
            $("#EmailErr").html("");
            $("#chkReceiveErr").html("");
            if (marqueimmat == "") {                
                $.ajax(
                {
                    type: "POST",
                    url: "SendEmail.ashx",
                    data: {
                        sUserCiv: $('input[id=radList' + i + ']').attr("value"),
                        sUserName: $('input[id=input_Name]').attr("value"),
                        sUserEmail: $('input[id=input_Email]').attr("value"),
                        sUseroptin: oui,
                        CarYear: CarYear,
                        kType: kType,
                        motorID: motorID,
                        Brand: Brand,
                        Model: Model,
                        Cylindree: Cylindree,
                        CarDescription: CarDescription,
                        usage: usage,
                        KilometreAuCompteur: KilometreAuCompteur,
                        AnnualCompteur: AnnualCompteur,
                        nbKm: $("#nbKm").html(),
                        Prix: Prix,
                        Provenance: "site web",
                        divEmail: $("#div_hidden").html(),
                        Immat: ""
                    },
                    dataType: "html"
                });
            }
            else {

                //Il faut modifier le texte de div_hiddent
                mydivhidden = $("#div_hidden").html();
                mydivhidden = mydivhidden.replace("Marque...", marqueimmat);
                mydivhidden = mydivhidden.replace("Modèle...", modeleimmat);
                mydivhidden = mydivhidden.replace("Cylindrée...", cylindreimmat);
                mydivhidden = mydivhidden.replace("Année", anneeimmat);

                $.ajax(
                {
                    type: "POST",
                    url: "SendEmail.ashx",
                    data: {
                        sUserCiv: $('input[id=radList' + i + ']').attr("value"),
                        sUserName: $('input[id=input_Name]').attr("value"),
                        sUserEmail: $('input[id=input_Email]').attr("value"),
                        sUseroptin: oui,
                        CarYear: anneeimmat,
                        kType: ktypeimmat,
                        motorID: motorID,
                        Brand: marqueimmat,
                        Model: modeleimmat,
                        Cylindree: cylindreimmat,
                        CarDescription: CarDescription,
                        usage: usage,
                        KilometreAuCompteur: KilometreAuCompteur,
                        AnnualCompteur: AnnualCompteur,
                        nbKm: $("#nbKm").html(),
                        Prix: Prix,
                        Provenance: "site web",
                        divEmail: mydivhidden,
                        Immat: immat
                    },
                    dataType: "html"
                });
            }
            // Xiti
            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Envoi_Email_Validation');
            tb_remove();
            setTimeout(function() {
                tb_show('', 'TB_inline?height=260&width=415&inlineId=confirmEmai&modal=true', null);
                //tracking('Metiers_et_Services::Revision_Simulateur_Popup_Confirm_Email');
            },
            1000);

            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Popup_Confirm_Email');
        }
    } else {
        $("#radListErr").html("");
        $("#radListErr").append("Merci de préciser votre civilité.");
    }
    return false;
}

function GetMidasCenter() {
    $("#ListRevision").html("");
    if (isNumeric($('input[id=codpos]').attr("value"))) {
        $("#ListRevision_loader").show();
        $.ajax(
                {
                    type: "POST",
                    url: "GetMidasCentre.ashx",
                    data: { codpos: $("#codpos").val() },
                    dataType: "html",
                    success: function(data) {
                        bindResultsCenter(data);
                        $("#ListRevision_loader").hide();
                        // Xiti
                        xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Liste_Centres_Validation');
                    }
                });
    }
    else {
        $("#ListRevision").append("Saisir un code département.");
    }
}

function bindResultsCenter(data) {
    $("#ListRevision").html("");
    if (data.length != 0) {
        $("#ListRevision").append(data);
    }
    else {
        $("#ListRevision").append("Aucun centre agrée et équipé LA Révision dans ce département.");
    }
}

$(document).ready(function() {

    SetCookieProvenance();
    HideAllSteps();

    $("#loader").hide();
    $("#ListRevision_loader").hide();
    $(".BtnSavoir").bind("click", function() {
        var self = $(this);
        if (!$("#boxAns").hasClass("Show")) {
            $("#boxAns").addClass("Show"); riptio
            self.removeClass("DownStyle");
        }
        else {
            $("#boxAns").removeClass("Show");
            self.addClass("DownStyle");
        }
    });

    //InitializeWizard
    var i = 1;

		//Update to show etape 6 as default
    while (i <= etape) {
        //if (i != etapeDefault) {
            $('#sim_etape' + i).hide();
        /*}
        else {
            $('#sim_etape' + i).show();
            changePageBreadCrum(titles[idFormSim]);
        }*/
        i++;
    }
	var myquery = location.search.substring(1);
	
    var mylength = myquery.length;
	//alert(mylength);
    if (mylength == 0) {
		$('#sim_etape6').show();
		changePageBreadCrum(titles[idFormSim]);
	}
	
    $('.btn').click(function() {
        if (this.id == "btn-sim-1") {
            var iquery = "annee=" + $("#annee").val() + "&brandId=" + $('#brandId :selected').val() + "&modelId=" + $('#modelId :selected').val() + "&cylindreId=" + $('#cylindreId :selected').val();
            var iurl = FolderRacine + "/Simulator/plan-de-revision-etap.aspx?" + iquery;
            document.location = iurl;

        }

        idFormSim = parseInt(this.id.split('btn-sim-')[1]) + 1;

        //TO STEP 2 --
        if (idFormSim == 2) {
            $("#etap2_Eligible_TextVehicule").html("");
            if (marqueimmat == "") {
                $("#etap2_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
                $("#etap2_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
                $("#etap2_Eligible_TextVehicule").append($('#cylindreId :selected').text() + " - ");
                $("#etap2_Eligible_TextVehicule").append("Année " + $("#annee").val());
            }
            else {
                $("#etap2_Eligible_TextVehicule").append(marqueimmat + " - ");
                $("#etap2_Eligible_TextVehicule").append(modeleimmat + " - ");
                $("#etap2_Eligible_TextVehicule").append(cylindreimmat + " - ");
                $("#etap2_Eligible_TextVehicule").append("Année " + anneeimmat);
            }
            //var annee = $("#annee > option[selected]").attr("value");
            var anneeObj = $("#annee option:selected");
            var annee = anneeObj.val();

            //var brandId = $("#brandId > option[selected]").attr("value");
            var brandIdObj = $("#brandId option:selected");
            var brandId = brandIdObj.val();

            //var modelId = $("#modelId > option[selected]").attr("value");
            var modelIdObj = $("#modelId option:selected");
            var modelId = modelIdObj.val();

            //var ktype = $("#cylindreId > option[selected]").attr("value"); var xxx = $("#cylindreId option:selected"); alert('ktype: ' + ktype + ' and xxx: ' + xxx + ' and its value is: ' + xxx.val());
            var ktypObj = $("#cylindreId option:selected");
            var ktype = ktypObj.val();

            if (annee != 0 && brandId != 0 && modelId != 0 && ktype != 0) {
                $("#main_loader").show();
                $("#sim_etape1").hide();
                $("#btn-sim-1").hide();
                $.ajax(
                    {
                        type: "POST",
                        url: "ddlSearBook.ashx",
                        data: { immat: "1s1", ktype: ktype, yearCar: annee + "00" },
                        dataType: "json",
                        success: function(data) {
                            bindOptionResultsModelSearchBook(data, annee);
                            $("#loader").hide();
                            $("#btn-sim-1").show();
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape1_Validation');
                        }
                    });
            }
        }
        //TO STEP 3 --
        if (idFormSim == 3) {
            if (validateForm() == 0) {
                $("#etape3_loader").hide();
                cnt_usage = 0;
                for (var i = 0; i <= 3; i++) {
                    var var_name = $('input[name=accepte' + i + ']').serializeArray()[0].value;
                    cnt_usage = parseInt(cnt_usage) + parseInt(var_name);
                }
                $("#etap3_Eligible_TextVehicule").html("");
                //$("#etap3_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
                //$("#etap3_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
                //$("#etap3_Eligible_TextVehicule").append($('#cylindreId :selected').text() + " - ");
                //$("#etap3_Eligible_TextVehicule").append("Année " + $("#annee").val());
                if (marqueimmat == "") {
                    $("#etap3_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
                    $("#etap3_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
                    $("#etap3_Eligible_TextVehicule").append($('#cylindreId :selected').text() + " - ");
                    $("#etap3_Eligible_TextVehicule").append("Année " + $("#annee").val());
                }
                else {
                    $("#etap3_Eligible_TextVehicule").append(marqueimmat + " - ");
                    $("#etap3_Eligible_TextVehicule").append(modeleimmat + " - ");
                    $("#etap3_Eligible_TextVehicule").append(cylindreimmat + " - ");
                    $("#etap3_Eligible_TextVehicule").append("Année " + anneeimmat);
                }
                $("#etape3_text_KmAuCompteur").html("");
                $("#etape3_text_KmAuCompteur").append($("#KmAuCompteur").attr("value"));
                $("#etape3_text_KmAnnual").html("");
                $("#etape3_text_KmAnnual").append($("#KmAnnual").attr("value"));
                $("#etape3_typeUsage").html("");
                if (cnt_usage == 0) {
                    usage = 78;
                    $("#etape3_typeUsage").append("normal");
                } else {
                    usage = 83;
                    $("#etape3_typeUsage").append("urbain");
                }
                HideAllSteps();
                $('#sim_etape' + idFormSim).show();
                changePageBreadCrum(titles[idFormSim]);
                // Xiti
                xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape2_Validation');

            }
        }
        //TO STEP 4 --
        if (idFormSim == 4) {

            $("#etape3_loader").show();
            cnt_usage = 0;
            for (i = 0; i <= 3; i++) {
                var_name = $('input[name=accepte' + i + ']').serializeArray()[0].value;
                cnt_usage = parseInt(cnt_usage) + parseInt(var_name);
            }
            KilometreAuCompteur = $("#KmAuCompteur").attr("value");
            AnnualCompteur = $("#KmAnnual").attr("value");

            $("#eml_Car").html("");
            $("#eml_Car").append($('#brandId :selected').text() + " " + $('#modelId :selected').text());

            $("#eml_Cyl").html("");
            $("#eml_Cyl").append($('#cylindreId :selected').text());

            $("#eml_CarYear").html("");
            $("#eml_CarYear").append($('#annee :selected').text());

            $("#eml_KmCompteur").html("");
            $("#eml_KmCompteur").append($("#KmAuCompteur").val());

            $("#eml_KmAnnual").html("");
            $("#eml_KmAnnual").append($("#KmAnnual").val());

            Brand = $('#brandId :selected').text();

            Model = $('#modelId :selected').text();

            Cylindree = $('#cylindreId :selected').text()

            $("#etap4_Eligible_TextVehicule").html("");
            /*$("#etap4_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
            $("#etap4_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
            $("#etap4_Eligible_TextVehicule").append($('#cylindreId :selected').text());*/
            CarDescription = $("#etap4_Eligible_TextVehicule").html();
            //$("#etap4_Eligible_TextVehicule").append(" - Année " + $("#annee").val());
            if (marqueimmat == "") {
                $("#etap4_Eligible_TextVehicule").append($('#brandId :selected').text() + " - ");
                $("#etap4_Eligible_TextVehicule").append($('#modelId :selected').text() + " - ");
                $("#etap4_Eligible_TextVehicule").append($('#cylindreId :selected').text() + " - ");
                $("#etap4_Eligible_TextVehicule").append("Année " + $("#annee").val());
            }
            else {
                $("#etap4_Eligible_TextVehicule").append(marqueimmat + " - ");
                $("#etap4_Eligible_TextVehicule").append(modeleimmat + " - ");
                $("#etap4_Eligible_TextVehicule").append(cylindreimmat + " - ");
                $("#etap4_Eligible_TextVehicule").append("Année " + anneeimmat);
            }

            $("#etape4_text_KmAuCompteur").html("");
            $("#etape4_text_KmAuCompteur").append($("#KmAuCompteur").attr("value"));

            $("#etape4_text_KmAnnual").html("");
            $("#etape4_text_KmAnnual").append($("#KmAnnual").attr("value"));
            $("#eml_Usage").html("");
            $("#etape4_typeUsage").html("");

            if (cnt_usage == 0) {
                usage = 78;
                $("#etape4_typeUsage").append("normal");
                $("#eml_Usage").append("normal");
            } else {
                usage = 83;
                $("#etape4_typeUsage").append("urbain");
                $("#eml_Usage").append("urbain")
            }

            $("#eml_OptionsSpecifiques").html("");
            $("#etape4_text_OptionsSpecifiques").html("");
            for (i = 0; i < nbConstraints; i++) {
                var var_nameC = $('input[name=accepteC' + i + ']').attr("checked");
                var var_IDC = $('input[name=accepteC' + i + ']').attr("id");
                if (jsonConstraints[i].clef == var_IDC && jsonConstraints[i].clef != "KDD" && jsonConstraints[i].clef != "DSG") {
                    if (var_nameC == true) {
                        $("#etape4_text_OptionsSpecifiques").append("- " + localResConstraints(jsonConstraints[i].clef).split("<br />", 1) + "<br />");
                        $("#eml_OptionsSpecifiques").append("&bull;&nbsp;&nbsp;" + localResConstraints(jsonConstraints[i].clef).split("<br />", 1) + "<br />");
                        jsonConstraints[i].reponse = 1;
                    }
                    else {
                        jsonConstraints[i].reponse = 0;
                    }
                }
            }
            /*******************
            * SAVE STATE HERE
            *******************/

            var jsonConstraintConvert = "";
            for (y = 0; y < jsonConstraints.length; y++) {
                jsonConstraintConvert = jsonConstraintConvert + jsonConstraints[y].clef + "&" + jsonConstraints[y].reponse + "|";
            }
            //Forgetten values
            CarYear = $("#annee").val();
            kType = $("#cylindreId").val();
            $.ajax(
                    {
                        type: "POST",
                        url: "/_js/checkupdateposition.aspx",
                        data: {
                            cnt_usage: cnt_usage,
                            maintenant: Maintenant,
                            currentyear: CurrentYear,
                            caryear: CarYear,
                            cardescription: CarDescription,
                            brand: Brand,
                            model: Model,
                            cylindree: Cylindree,
                            motorid: motorID,
                            ktype: kType,
                            usage: usage,
                            kilometreaucompteur: KilometreAuCompteur,
                            annualcompteur: AnnualCompteur,
                            jsonconstraints: jsonConstraintConvert,
                            nbconstraints: nbConstraints,
                            nb_tab_constraints: nb_tab_constraints,
                            nb_tab_plan: nb_tab_plan,
                            etape: etape,
                            etapedefault: etapeDefault,
                            montantplan: montantPlan,
                            idformsim: idFormSim,
                            prix: Prix,
                            provenance: Provenance,
                            immat: immat,
                            nom: nom,
                            marqueimmat: marqueimmat,
                            modeleimmat: modeleimmat,
                            cylindreimmat: cylindreimmat,
                            anneeimmat: anneeimmat,
                            ktypeimmat: ktypeimmat,
                            txtkmaucompteur: $("#KmAuCompteur").attr("value"),
                            txtkmannuel: $("#KmAnnual").attr("value"),
                            lbletape4_text_optionsspecifiques: $("#etape4_text_OptionsSpecifiques").html(),
                            lbleml_optionsspecifiques: $("#eml_OptionsSpecifiques").html()
                        },
                        dataType: "html"
                    });
                    /*********************
                    * Update position
                    *********************/
                    var randomnumber = Math.floor(Math.random() * 1100);
                    $.ajax(
                            {
                                type: "GET",
                                url: "/_js/checkupdateposition.aspx",
                                data: { position: 2, rand: randomnumber },
                                dataType: "html"
                            });
            if (marqueimmat == "") {
                $.ajax(
                    {
                        type: "POST",
                        url: "ddlSearchPlan.ashx",
                        data: {
                            yearCar: $("#annee").val() + "00",
                            carnet: 0,
                            immat: "1s1",
                            jsonConstraints: JSONtoString(jsonConstraints),
                            ktype: $("#cylindreId").val(),
                            motor: motorID,
                            usage: usage
                        },
                        dataType: "json",
                        success: function(data) {
                            kType = $("#cylindreId").val();
                            // Xiti
                            var numeroSimulateur = data.plan[0].numero;

                            if (numeroSimulateur == "") {
                                NonEligible();
                            }
                            else {
                                xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape3_Validation');
                                bindOptionResultsModelSearchPlan(data, KilometreAuCompteur, $("#annee").val());
                                // Xiti
                                xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Plan_Resultat');
                            }
                        }
                    });
            }
            else {
                $.ajax(
                    {
                        type: "POST",
                        url: "ddlSearchPlan.ashx",
                        data: {
                            yearCar: anneeimmat + "00",
                            carnet: 0,
                            immat: "1s1",
                            jsonConstraints: JSONtoString(jsonConstraints),
                            ktype: ktypeimmat,
                            motor: motorID,
                            usage: usage
                        },
                        dataType: "json",
                        success: function(data) {
                            kType = ktypeimmat;
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Etape3_Validation');
                            bindOptionResultsModelSearchPlan(data, KilometreAuCompteur, anneeimmat);
                            // Xiti
                            xt_med('F', '', 'Metiers_et_Services::Revision_Simulateur_Plan_Resultat');
                        }
                    });
            }
        }
    });
    $('.btn-prev').click(function() {
        i = 1;
        while (i <= etape) {
            $('#sim_etape' + i).hide();
            i++;
        }
        var idFormSim = parseInt(this.id.split('btn-sim-prev')[1]) - 1;
        $('#sim_etape' + idFormSim).show();
        $('etape3_loader' + idFormSim).hide();
        changePageBreadCrum(titles[idFormSim]);
        $("#etape3_loader").hide();
    });
    $('.btn-prev-first').click(function() {
		
        i = 1;
        while (i <= etape) {
            $('#sim_etape' + i).hide();
            i++;
        }

        /*****************************************************
        * Hack pour aller vers la premiere page  avec immat
        *****************************************************/
        var randomnumber = Math.floor(Math.random() * 110)
        if (immat != "" && immat != -1) {
            idFormSim = 6; // Etape 6 = immat
            $.ajax(
            {
                type: "GET",
                url: "/_js/checkupdateposition.aspx",
                data: { position: 1, rand: randomnumber },
                dataType: "html"
            });
            $('#sim_etape6').show();
        }
        else {
            $.ajax(
            {
                type: "GET",
                url: "/_js/checkupdateposition.aspx",
                data: { position: 1, rand: randomnumber },
                dataType: "html"
            });
            $('#sim_etape1').show();
        }
        changePageBreadCrum(titles[idFormSim]);
    });
    $('.btn-prev-sec').click(function() {
        i = 1;
        while (i <= etape) {
            $('#sim_etape' + i).hide();
            i++;
        }

        /*****************************************************
        * Hack pour aller vers la premiere page  avec immat
        *****************************************************/
        if (immat != "" && immat != -1) {
            idFormSim = 6; // Etape 7 = nom
            $('#sim_etape7').show();
        }
        else {
            $('#sim_etape2').show();
        }
        changePageBreadCrum(titles[idFormSim]);
    });
    InitializeddlYear();
    InitializeInput();
    InitializeCombo();
    InitializeRadio();
    ReloadData();
});


function SetCookieProvenance() {
    if ($.urlParam("provenance") != null & $.urlParam("provenance") != '') {
        //get value from querystring
        var provenance = $.urlParam("provenance");

        //set cookie
        $.cookie("MidasProvenance", provenance);
    }
}

//Get QueryString From URL
$.urlParam = function(name) {
    var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
    if (!results) { return 0; }
    return results[1] || 0;
}

/**
* Get the value of a cookie with the given name.
*
* @example $.cookie('the_cookie');
* @desc Get the value of a cookie.
*
* @param String name The name of the cookie.
* @return The value of the cookie.
* @type String
*
* @name $.cookie
* @cat Plugins/Cookie
* @author Klaus Hartl/klaus.hartl@stilbuero.de
*/
jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};
