// added by patrick 28-06-2019
GLOBAL_CHANGE = false;

function captchaCallback() {
    var response = grecaptcha.getResponse();
    $("#hiddenRecaptcha").val(response);
    if($("#hiddenRecaptcha").val()!="")
    {
      $("#hiddenRecaptcha-error").css('display','none');
    }           
 }
 function captchaExpired() {
     $("#hiddenRecaptcha").val("");
}

function updateType(type) {
    $('#ad_item_type').val(type);
}

function updatePrice(price) {
    $('#ad_item_price').val(price);
}

jQuery(function($) 
{
    console.log('loadééééé');
    jQuery('.selectpicker').selectpicker();
    jQuery('#tabs-place-ad ul.ui-tabs-nav li').on('click', function(e) 
    {
        e.preventDefault();
        jQuery('#tabs-place-ad > ul li').attr('class', 'ui-state-default ui-corner-top');
        jQuery(this).attr('class', 'ui-state-default ui-corner-top ui-tabs-active ui-state-active');
        var id_categorie = jQuery(this).find('a').attr('data');
        category_id = id_categorie;
        var type_logement = jQuery('.mutliSelect input:checked').serializeArray();
        var commodite = jQuery('#comodite input:checked').serializeArray();
        var prix = jQuery('#ad_item_price').val();
        var charge = jQuery('#awpcp-charges').val();
        var id_annonce = jQuery("input[name=ad_id]").val();
        jQuery.post(ajaxurl, {
            'action': 'ajax_depot_annonce',
            'id_categorie': id_categorie,
            'type_logement': type_logement,
            'commodite': commodite,
            'prix': prix,
            'charge': charge,
            'id_annonce': id_annonce
        }, function(response)
        {
            // new Tiana
            if (id_categorie == 2) {
                jQuery("#for_meuble_option").css('display','block');
                jQuery("#for_meuble_option_hr").css('display','block');
            } else if(id_categorie == 5){
                //jQuery("#lieu_immo").css('display', 'none');
                //jQuery("#nb_chambre_piece").css('display', 'none');
                //jQuery(".surfaces").css('display', 'none');
                //jQuery("#lieu_immo").next('hr').css('display', 'none');
                //jQuery("#nb_chambre_piece").next('hr').css('display', 'none');
                //jQuery("#prixCharges").next('hr').css('display', 'none');
                //jQuery(".surfaces").next('hr').css('display', 'none');
            } else {
                jQuery("#for_meuble_option").css('display','none');
                jQuery("#for_meuble_option_hr").css('display','none');
            }
            // Fin new Tiana
            var result = jQuery.parseJSON(response);
            jQuery('.mutliSelect').html(result.type_bien);
            jQuery('#comodite').html(result.commodite);
            jQuery('#prixCharges').html(result.prix_charges);
            jQuery('._brochure').addClass('hidden');
            jQuery('.spacer').removeClass('hidden');
            jQuery('.spacer').next().removeClass('hidden');
            jQuery('.spacer').prev().removeClass('hidden');
            jQuery('.surfaces').removeClass('hidden');
            jQuery('.surfaces').next().removeClass('hidden');
            jQuery('._dis').html('Disponibilité');
            jQuery('.offre-tab').removeClass('hidden');
            jQuery('.offre-tab').parent().parent().find('>h2').removeClass('hidden');
            jQuery('#container_copropriete, #container_syndicat_procedure_details, #container_budget_previsionnel_prix').removeClass('hidden');
            jQuery('#container_numero_lot, #container_charge_courant_annuel, #container_soumis_status_co, #container_plan_sauvegarde, #c_budget_previsionnelhidden').removeClass('hidden');
            jQuery('.vacanceshide').removeClass('hidden');
            jQuery('.c_budget_previsionnel').removeClass('hidden');
            if (id_categorie === "4") {
                // id_categorie = "";
                jQuery(".category_entreprise").show();
                jQuery(".nbr_chambreshide").hide();
                jQuery(".vacanceshide").show();
            } else if (id_categorie === "3") {
                jQuery(".category_entreprise").hide();
                jQuery(".vacanceshide").addClass('hidden');
                jQuery(".nbr_chambreshide").show();
            } else if( id_categorie === "5") {
                jQuery('._brochure').removeClass('hidden');
                jQuery('.spacer').addClass('hidden');
                jQuery('.spacer').prev().addClass('hidden');
                jQuery('.spacer').next().addClass('hidden');
                jQuery('.surfaces').addClass('hidden');
                jQuery('.surfaces').next().addClass('hidden');
                jQuery('._dis').html('Disponibilité *');
                jQuery('.offre-tab').addClass('hidden');
                jQuery('.offre-tab').parent().parent().find('>h2').addClass('hidden');
                jQuery('#container_syndicat_procedure_details, #container_budget_previsionnel_prix').addClass('hidden');
                jQuery('.vacanceshide').addClass('hidden');
                jQuery('.c_budget_previsionnel').addClass('hidden');
                jQuery('#container_numero_lot, #container_charge_courant_annuel, #container_soumis_status_co, #container_plan_sauvegarde, #c_budget_previsionnelhidden').addClass('hidden');
            } else {
                jQuery(".category_entreprise").hide();
                jQuery(".nbr_chambreshide").show();
                jQuery(".vacanceshide").removeClass('hidden');
            }
            update_searchcategory_value(id_categorie);
            jQuery('.selectpicker').selectpicker();

        });
    });
    
    (function($) {

        /* onDOMContentLoaded */
        $(function() {

            /* soumission ajout annonce */
            $(".validate_ajout_annonce").on('click', function() {

                if( $(".category_entreprise").is(":visible") ) {
                    $(".category_type").rules("add", {required:!0, messages: {required: "Merci de choisir votre type d'annonce."} })
                }

                if( $("#AddannonceForm").valid() ) 
                {
                    /* obtenir les options */
                    $("#mes_options").val(getOptions("*"));

                    /* soumission formulaire */
                    $("#AddannonceForm").submit();

                    /* mettre un loader */
                    $("#element").introLoader({
                        animation: {
                            name:"simpleLoader", 
                            options: {
                                effect: "slideUp", 
                                ease: "easeInOutCirc", 
                                style: "dark", 
                                delayTime: 1e3, 
                                animationTime: 500
                            }
                        }, 
                        spinJs: {
                            lines: 13, 
                            length: 20, 
                            width: 10, 
                            radius: 30, 
                            corners: 1, 
                            color: "#fff"
                        }
                    });
                }
            });

            /* pour l'upload fichier */
            $.validator.addMethod("maxfilesize", function(e, r, n) {
                var i;
                try {
                    i=r.files[0].size
                }
                catch(t) {
                    var a=navigator.userAgent.toLowerCase();
                    if(!(a.indexOf("msie")>-1))return!0;
                    var o=new ActiveXObject("Scripting.FileSystemObject");
                    i=o.getFile(r.value).size
                }
                var s=n[0], d=n[1];
                return"Ko"==d?s*=1024:"Mo"==d?s*=1048576:"Go"==d&&(s*=1073741824), this.optional(r)||s>i
            }, "The max file size of {0}{1} is reached");

            function ajoutLogement(logementID) {
                var newLgt = $(document.createElement('tr')).attr("class", 'logement_neuf');
                newLgt.attr("id", "logement-neuf-"+logementID);
                var _html = '<td><select class="form-control" name="logement_type[logement-neuf-'+logementID+']" onclick="updateType(this.value)"><option value="Appartement">Appartements</option><option value="Maison / Villa">Maison / Villas</option><option value="Entrepot">Entrepots</option><option value ="Local d\'activité">Locaux d\'activités</option><option value="Locaux commerciaux">Locaux commerciaux</option></select></td>';
                _html += '<td class="hidden"><select class="form-control" name="logement_chambre[logement-neuf-'+logementID+']"><option value="1">1 Chambre</option><option value="2">2 Chambres</option><option value="3">3 Chambres</option><option value ="4">4 Chambres et plus</option></select></td>';
                _html += '<td><select class="form-control" name="logement_piece[logement-neuf-'+logementID+']"><option value="1">1 pièce</option><option value="2">2 pièces</option><option value="3">3 pièces</option><option value ="4">4 pièces</option><option value ="5">5 pièces et plus</option></select></td>';
                _html += '<td><input type="text" class="form-control" name="logement_prix[logement-neuf-'+logementID+']" disabled></td>';
                _html += '<td><div style="display:flex"></button><button type="button" class="btn btn-danger delete-logement-neuf"><i class="glyphicon glyphicon-trash" aria-hidden="true"></i></button><button type="button" class="btn btn-primary ajout-logement-neuf-lot" title = "Ajouter lot"><i class="glyphicon glyphicon-plus" aria-hidden="true"></i></button></div></td>';
                newLgt.append(_html);
                newLgt.appendTo("#body-table-logement-neuf");
            }

            function ajoutLot(lotID, logementID) {
                var newLot = $(document.createElement('tr')).attr("class", 'logement_neuf_lot '+logementID);
                newLot.attr("id", "logement-neuf-lot-"+lotID);
                newLot.attr("data-parent", logementID);
                _html = '<td style="border: 0;"><table class="table table-responsive" style="margin-bottom:0;width:100%">';
                _html += '<tbody>' +
                    '<tr class="lot-immo-neuf">' +
                    '<td ><input type="text" class="form-control nom-lot" name="lot_nom['+logementID+'][]" placeholder="Etage"></td>' +
                    '<td><input type="text" class="form-control surface-lot" name="lot_surface['+logementID+'][]" placeholder="Surface en m²"></td>' +
                    '<td><input type="text" class="form-control prix-lot" name="lot_prix['+logementID+'][]" placeholder="Prix"></td>';
                _html += '<td><div style="display:flex"><button type="button" class="btn btn-danger delete-logement-neuf-lot"><i class="glyphicon glyphicon-trash" aria-hidden="true"></i></button></div></td></tr></tbody></table></td>';
                newLot.append(_html);
                //$('#body-table-logement-neuf .'+logementID).last().after(newLot);
                var lots = $('#body-table-logement-neuf .'+logementID);
                if (lots.length > 0)
                    lots.last().after(newLot);
                else
                    $('#'+logementID).after(newLot);
            }

            $(document).on("click", "#ajout-logement-neuf", function(e){
                e.preventDefault();
                var disAllow = false;
                if ($('input[name="prix"]').length > 0) {
                    $('input[name="prix"]').each(function(){
                        if (! checkNumber($(this).val())) {
                            disAllow = true;
                        }
                    });
                }
                if (!disAllow) {
                    var logementID = parseInt($('.logement_neuf').length) + 1;
                    ajoutLogement(logementID);
                }
            });

            $(document).on("click", ".ajout-logement-neuf-lot", function(e){
                e.preventDefault();
                var lotID = parseInt($('.logement_neuf_lot').length) + 1;
                var logementID = $(this).closest('.logement_neuf').attr("id");
                ajoutLot(lotID, logementID);
            });

            $(document).on("click", ".delete-logement-neuf", function(e){
                e.preventDefault();
                var parentID = $(this).closest('.logement_neuf').attr("id");
                $("#" + parentID).remove();
                $("." + parentID).remove();
            });

            $(document).on("click", ".delete-logement-neuf-lot", function(e){
                e.preventDefault();
                var parentID = $(this).parents('.logement_neuf_lot').attr("id");
                var logementID = $("#" + parentID).attr('data-parent');
                $("#" + parentID).remove();
                if ($('.'+logementID).length < 1)
                    $('#' + logementID).remove();
            });

            /* prix-lot change */
            $(document).on('change', '.prix-lot', function() {
                const grandPaID = $(this).parents('tr').parents('tr').data('parent');
                const grandPa = $("#" + grandPaID);
                let familyPrice = [];
                $('[data-parent="' + grandPaID +'"]').each(function(){
                    familyPrice.push( $(this).find('.prix-lot').val() || 0);
                })

                /* update GrandPa */
                grandPa.find('[name*=logement_prix]').val( Math.min.apply(null, familyPrice) );

                /* update price */
                const price = [];
                $('[name*=logement_prix]').each(function(){
                    price.push( $(this).val() || 0 );
                });
                $('[name=ad_item_price]').val( Math.min.apply(null, price) );
            });

            function checkNumber(value){
                var numberRegex = /^[+-]?\d+(\.\d+)?([eE][+-]?\d+)?$/;
                if(numberRegex.test(value)) {
                    return true;
                }
                return false;
            }
        });

    }(jQuery));
    
    
    if($("#AddannonceForm").size() > 0)
    {
        var __particulierRules, __particulierMessages, __proRules, __proMessages;
        __particulierRules = {
            ad_title            : "required"
            ,type_de_logement        : "required"
            ,terms_of_service        : "required"
            // ,charges: {
            //     number : true
            //     ,min    : 0.01
            // }
            ,ad_item_price: {
                required: true
                ,number : true
                ,min    : 0.01
            }
            ,surface_habitable: {
                number : true
            }
            ,surface_terrain: {
                number : true
            },
            disponibilite: {
                required: true
            },
            ad_details: {
                required: true
            }
        };
        __particulierMessages = {
            ad_title        : "Veuillez renseigner le titre de l'annonce."
            ,type_de_logement    : "Veuillez choisir votre type de bien."
            ,terms_of_service    : "Veuillez accepter nos conditions d'utilisation."
            // ,charges: {
            //     number: "Merci de renseigner un montant."
            //     ,min : "Veuillez entrer un montant > 0"
            // }
            ,ad_item_price: {
                required: "Veuillez insérer le prix du bien."
                ,number: "Merci de renseigner un prix."
                ,min : "Veuillez entrer un montant > 0"
            }
            ,surface_habitable: {
                number: "Merci de renseigner une surface habitable."
            }
            ,surface_terrain: {
                number: "Merci de renseigner une surface de terrain."
            },
            disponibilite: {
                required: "Merci de renseigner la disponibilité."
            },
            ad_details: {
                required: "Merci de renseigner la description."
            }
        };
        __proRules = jQuery.extend(__particulierRules,
        {
            numero_lot             : 
            {
                number : true
                ,min    : 1
                ,digits : true
            }
            ,charge_courant_annuel : 
            {
                number : true
                ,min    : 0.01
            }
            ,budget_previsionnel_prix : {
                number     : true
                ,min    : 0.01
                ,max     : 100
            }
        });
        __proMessages = jQuery.extend(__particulierMessages,
        {
            numero_lot  : 
            {
                    number : "Le nombre de lot ne doit comporter que des chiffres"
                    ,min : "Le nombre de lot doit être supérieur à 0"
            }
            ,charge_courant_annuel : 
            {
                    number : "La charge courante ne doit comporter que des chiffres"
                    ,min : "La charge courante doit être supérieur à 0"
            }
            ,budget_previsionnel_prix : {
                number : "Le budget prévisionnel ne doit comporter que des chiffres"
                ,max    : "Le budget prévisionnel ne doit pas être supérieur à 100"
                ,min    : "Le budget prévisionnel doit-être supérieur à 0"
            }
        });    
        __validation = jQuery("#AddannonceForm").validate({
                ignore: ""
                ,errorPlacement: function(e, r) 
                {
                    if(r.attr("name") == "type_de_logement")
                    {
                        e.insertAfter("#AddannonceForm .error_type", "#AddannonceForm");
                    }else if(r.attr("name") == "soumis_status_co" || r.attr("name") == "plan_sauvegarde"
                    || r.attr("name") == "procedure_alerte" || r.attr("name") == "charge_courant_annuel"
                    || r.attr("name") == "budget_previsionnel_prix")
                    {
                        e.appendTo(jQuery("#container_"+r.attr("name") + " div.input-group"));
                    }else{
                        if(r.attr("name") == "category_type")
                        {
                                e.insertBefore("#AddannonceForm hr.category_entreprise", "#AddannonceForm");
                        }else{
                                e.insertAfter(r);
                        }
                    }
                },
                focusInvalid: false,
                invalidHandler: function(e, r) 
                {
                    r.numberOfInvalids() && jQuery("html, body").animate({
                            scrollTop: jQuery(r.errorList[0].element).offset().top
                    }, 20)
                }
        });
        deleteMaxDefinition = function()
        {
            if(__validation.settings.rules.budget_previsionnel_prix != undefined
             && __validation.settings.rules.budget_previsionnel_prix.max != undefined){
               delete __validation.settings.rules.budget_previsionnel_prix.max;
           }
           if(__validation.settings.messages.budget_previsionnel_prix != undefined
            && __validation.settings.messages.budget_previsionnel_prix.max != undefined){
               delete __validation.settings.messages.budget_previsionnel_prix.max;
           }
       }
        addMaxDefinition = function()
        {
            if(__validation.settings.rules.budget_previsionnel_prix == undefined
            || (__validation.settings.rules.budget_previsionnel_prix != undefined 
                    && __validation.settings.rules.budget_previsionnel_prix.max == undefined))
            {
                 __validation.settings.rules.budget_previsionnel_prix.max = 100;
                 __validation.settings.messages.budget_previsionnel_prix.max = "Le budget prévisionnel ne doit pas être supérieur à 100";
            }
        }
        bindBudgetFormat = function()
        {
            var __prix_format = $('#budget_previsionnel_format option:selected').val();
            if(__prix_format == "%")
            {
                addMaxDefinition();
            }else{
                deleteMaxDefinition();
            }
            $('#budget_previsionnel_format').on("change",function()
            {
                var __prix_format = $(this).val();
                if(__prix_format == "%")
                {    
                    addMaxDefinition();
                }else{
                    deleteMaxDefinition();
                }
            });
        }
        var __isPro = jQuery("#is_user_pro").val();
        if(__isPro == "1")
        {
            __validation.settings.rules     = __proRules;
            __validation.settings.messages  = __proMessages;
            bindBudgetFormat();
        }else{
            __validation.settings.rules     = __particulierRules;
            __validation.settings.messages  = __particulierMessages;
        }
        jQuery('#tabs-place-ad ul.ui-tabs-nav li').on('click', function(e) 
        {
            __validation.resetForm();
            e.preventDefault();
            jQuery('#tabs-place-ad > ul li').attr('class', 'ui-state-default ui-corner-top');
            jQuery(this).attr('class', 'ui-state-default ui-corner-top ui-tabs-active ui-state-active');
            var id_categorie    = jQuery(this).find('a').attr('data');
            var type_logement   = jQuery('.mutliSelect input:checked').serializeArray();
            var commodite       = jQuery('#comodite input:checked').serializeArray();
            var prix            = jQuery('#ad_item_price').val();
            var charge          = jQuery('#awpcp-charges').val();
            var id_annonce      = jQuery("input[name=ad_id]").val();

            var __parentTabs = jQuery(this).parents("#tabs-place-ad");
                    jQuery.ajax(
            {
                url         : ajaxurl
                ,data       : {
                    "action"            :"ajax_depot_annonce"
                    ,"id_categorie"        :id_categorie
                    ,"type_logement"    :type_logement
                    ,"commodite"        :commodite
                    ,"prix"             :prix
                    ,"charge"           :charge  
                    ,"id_annonce"       :id_annonce
                }
                ,type       : "post"
                ,dataType   : "json"
                ,beforeSend : function()
                {
                    __parentTabs.block({ 
                        css: {
                            border: 'none'
                            ,padding: '15px'
                            ,backgroundColor: '#000'
                            ,'-webkit-border-radius': '10px'
                            ,'-moz-border-radius': '10px'
                            ,opacity: .5
                            ,color: '#fff'
                            ,zIndex:100000002
                        }
                        ,overlayCSS : 
                        {
                           zIndex:100000001
                        }
                        ,message : 'Traitement en cours...'
                    }); 
                }
                ,success : function(response)
                {
                    __parentTabs.unblock(); 
                    jQuery('.mutliSelect').html(response.type_bien);
                    jQuery('#comodite').html(response.commodite);
                    jQuery('#prixCharges').html(response.prix_charges);
                    var __id_categorie = id_categorie;
                    if (id_categorie === "4") 
                    {
                        // id_categorie = "";
                        jQuery(".category_entreprise").hide();
                        jQuery(".nbr_chambreshide").hide();
                        jQuery(".vacanceshide").show();
                    } else if (id_categorie ==="3"){
                        jQuery(".category_entreprise").hide();
                        jQuery(".vacanceshide").hide();
                        jQuery(".nbr_chambreshide").show();
                    }else{
                        jQuery(".category_entreprise").hide();
                        jQuery(".nbr_chambreshide").show();
                        jQuery(".vacanceshide").show()
                    }
                    update_searchcategory_value(id_categorie);
                    jQuery('.selectpicker').selectpicker();

                    var __isPro = parseInt(jQuery("#is_user_pro").val());
                    if(__isPro == "1")
                    {
                        bindBudgetFormat();
                    }else{
                        __validation.settings.rules     = __particulierRules;
                        __validation.settings.messages      = __particulierMessages;
                    }
                }
            });
        });
    }
    
    jQuery('.category_entreprise input:radio[name="category_type"]').click(function() {
        update_searchcategory_value(jQuery(this).val());
    });
    
    jQuery('.uncheckable input[type="radio"]').click(function() {
        if (jQuery(this).hasClass('notchecked')) {
            jQuery(this).closest('tbody').find('input[type="radio"]').removeClass('notchecked');
            jQuery(this).closest('tbody').find('input[type="radio"]').addClass('notchecked');
            jQuery(this).removeClass('notchecked');
            jQuery(this).prop('checked', true);
        } else {
            jQuery(this).closest('tbody').find('input[type="radio"]').addClass('notchecked');
            jQuery(this).prop('checked', false);
        }
    });
    jQuery('input:radio[name="option1"]').click(function() {
        switch (jQuery(this).val()) {
            case 'p1':
                jQuery('.hidden_photo_input').fadeIn('slow');
                jQuery('.add-picture').hide();
                break;
        }
        if (!jQuery(this).prop('checked')) {
            jQuery('.hidden_photo_input').fadeOut('slow');
        }
    });
    jQuery('input:radio[name="option2"]').click(function() {
        switch (jQuery(this).val()) {
            case 'r1':
                break;
            case 'r2':
                break;
            case 'r3':
                break;
        }
    });
    jQuery('input:radio[name="option3"]').click(function() {
        switch (jQuery(this).val()) {
            case 'a1':
                break;
            case 'a2':
                break;
            case 'a3':
                break;
                if (!jQuery(this).prop('checked')) {}
        }
    });
    getOptions = function(delimiter) {
        var option1 = jQuery("input[name='option1']:checked").val();
        var option2 = jQuery("input[name='option2']:checked").val();
        var option3 = jQuery("input[name='option3']:checked").val();
        var option4 = jQuery("input[name='option4']:checked").val();
        if (typeof option1 === 'undefined')
            option1 = "p0";
        if (typeof option2 === 'undefined')
            option2 = "r0";
        if (typeof option3 === 'undefined')
            option3 = "a0";
        if (typeof option4 === 'undefined')
            option4 = "m0";
        return (option1 + delimiter + option2 + delimiter + option3 + delimiter + option4);
    };
    jQuery('.selecpicker_city').selectpicker().on('change', function() {
        var selected = jQuery('.selecpicker_city option:selected').val();
        form_data = "id_ville=" + selected + "&action=ajax_insert_county_depot_annonce";
        if (selected !== "") {
            jQuery.ajax({
                type: "POST",
                url: ajaxurl,
                data: form_data,
                success: function(response) {
                    data = JSON.parse(response);
                    jQuery('#regions_city_select').html(data['city_select']);
                    jQuery('#regions_county_select').html(data['county_select']);
                    jQuery('#regions_city').val(data['city']);
                    jQuery('#regions_county').val(data['county']);
                    jQuery('#regions_country').val(data['country']);
                    jQuery('#regions_country-error').remove();
                    jQuery('#regions_state').val(data['state']);
                    jQuery('.selecpicker_city').selectpicker('refresh');
                    jQuery('.selecpicker_county').selectpicker('refresh');
                }
            });
        }
    });
    jQuery('.selecpicker_county').selectpicker().on('change', function() {
        var selected = jQuery('.selecpicker_county option:selected').val();
        form_data = "id_ville=" + selected + "&action=ajax_insert_city_depot_annonce";
        if (selected !== "") {
            jQuery.ajax({
                type: "POST",
                url: ajaxurl,
                data: form_data,
                success: function(response) {
                    data = JSON.parse(response);
                    jQuery('#regions_city_select').html(data['city_select']);
                    jQuery('#regions_county_select').html(data['county_select']);
                    jQuery('#regions_city').val(data['city']);
                    jQuery('#regions_county').val(data['county']);
                    jQuery('#regions_country').val(data['country']);
                    jQuery('#regions_country-error').remove();
                    jQuery('#regions_state').val(data['state']);
                    jQuery('.selecpicker_city').selectpicker('refresh');
                    jQuery('.selecpicker_county').selectpicker('refresh');
                }
            });
        }
    });
    jQuery('.renouveller-paiement').click(function() {
        var reference = jQuery(this).closest('form');
        var options = getOptions2('*', reference);
        jQuery("#mes_options", reference).val(options);
        jQuery(reference).submit();
    });
    getOptions2 = function(delimiter, ref) {
        var option1 = jQuery("input[name='option1']:checked", ref).val();
        var option2 = jQuery("input[name='option2']:checked", ref).val();
        var option3 = jQuery("input[name='option3']:checked", ref).val();
        var option4 = jQuery("input[name='option4']:checked", ref).val();
        if (typeof option1 === 'undefined')
            option1 = "p0";
        if (typeof option2 === 'undefined')
            option2 = "r0";
        if (typeof option3 === 'undefined')
            option3 = "a0";
        if (typeof option4 === 'undefined')
            option4 = "m0";
        return (option1 + delimiter + option2 + delimiter + option3 + delimiter + option4);
    };
    jQuery("#tabs-faq").tabs();

    function toggleChevron(e) {
        jQuery(e.target).prev('.panel-heading').find("i.indicator").toggleClass('fa-caret-down fa-caret-right');
        if (e.data.name == "manokatra") {
            jQuery('#accordion').find('a.toggledownup').html('<i class="fa fa-chevron-down"></i>');
            jQuery(e.target).closest('div.panel-default').find("div.panel-heading").addClass('accordion_selectionne');
            jQuery(e.target).closest('div.panel-default').find("a.toggledownup").html('<i class="fa fa-chevron-up"></i>');
        }
        if (e.data.name == "manidy") {
            jQuery('#accordion').find('a.toggledownup').html('<i class="fa fa-chevron-down"></i>');
            jQuery('#accordion').find('div.panel-heading').removeClass('accordion_selectionne');
        }
    }
    jQuery('#accordion').on('hidden.bs.collapse', {
        name: "manidy"
    }, toggleChevron);
    jQuery('#accordion').on('shown.bs.collapse', {
        name: "manokatra"
    }, toggleChevron);
    jQuery('.add-picture').click(function(e) {
        e.preventDefault();
        jQuery("#p1").trigger("click");
        jQuery(this).hide();
    });
    (function($) {
      $.fn.inputFilter = function(inputFilter) {
        return this.on("input keydown keyup mousedown mouseup select contextmenu drop", function() {
          if (inputFilter(this.value)) {
            this.oldValue = this.value;
            this.oldSelectionStart = this.selectionStart;
            this.oldSelectionEnd = this.selectionEnd;
          } else if (this.hasOwnProperty("oldValue")) {
            this.value = this.oldValue;
            this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd);
          } else {
            this.value = "";
          }
        });
      };
    }(jQuery));
    $(function() {
        $('#phones').on('input', function() {
            if( this.value.charAt(0) != 0 || ( parseInt(this.value) < 1 && this.value.length > 2)){
                this.value = '';
            }
        });

        $('#phones').attr("maxlength", "10");

        $('#phones').inputFilter(function(value) {
            return /^-?\d*$/.test(value);
        });
    });
    jQuery("#contact_formulaire").validate({
        rules: {
            subject: "required",
            name: "required",
            phone: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            email: {
                required: true,
                regex_email: "^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$"
            },
            c_Recaptcha: "required",
            message: "required"
        },
        messages: {
            subject: "Veuillez inserer le sujet de votre demande.",
            name: "Veuillez inserer votre nom.",
            phone: "Saisir un numéro de 10 chiffres",
            email: {
                required: "Veuillez renseigner votre adresse email.",
                regex_email: "Cette adresse email est invalide."
            },
            message: "Veuillez renseigner la description de votre demande.",
            c_Recaptcha: "Vérifiez que vous n'êtes pas un robot"
        }
    });
    jQuery('#demande_contact').click(function() {
        if (jQuery("#contact_formulaire").valid()) {
            jQuery("#contact_formulaire").submit();
        }
    });
    jQuery(".phone-agence").click(function(e) {
        var that = this;
        e.preventDefault();
        id_object = jQuery(this).attr("data");
        phone = jQuery('.phone-contact-agence').html();
        if (phone.trim().length == 0)
            phone = "Numéro non renseigné";
        jQuery(that).find("span.ok").html(phone);
        jQuery(that).find("span.ok").css("text-decoration", "none");
        jQuery.post(ajaxurl, {
            'action': 'ajax_update_click_telephone',
            'id_object': id_object,
            'type_click': "annonce"
        }, function(response) {
            if (response === 1 || response === "1") {
                return "ok";
            }
        });
    });
    jQuery(".phone-agence_agence").click(function(e) {
        var that = this;
        e.preventDefault();
        id_object = jQuery(this).attr("data");
        jQuery.post(ajaxurl, {
            'action': 'ajax_update_click_telephone',
            'id_object': id_object,
            'type_click': "agence"
        }, function(response) {
            if (response === 1 || response === "1") {
                phone = jQuery('.phone-contact-agence').html();
                if (phone.trim().length == 0)
                    phone = "Numéro non renseigné";
                jQuery(that).find("span.ok").html(phone);
                jQuery(that).find("span.ok").css("text-decoration", "none");
            }
        });
    });
    jQuery('.compteur_click_agence').click(function(e) {
        var that = this;
        e.preventDefault();
        id_object = jQuery(this).attr("data");
        jQuery.post(ajaxurl, {
            'action': 'ajax_update_click_telephone',
            'id_object': id_object,
            'type_click': "agence"
        }, function(response) {
            if (response === 1 || response === "1") {
                phone = jQuery(that).attr('data-replace-txt');
                if (phone.trim().length == 0)
                    phone = "Numéro non renseigné";
                jQuery(that).html(phone);
                jQuery(that).removeClass('data-replace');
            }
        });
    });
    jQuery('.compteur_click_annonce').click(function(e) {
        var that = this;
        e.preventDefault();
        id_object = jQuery(this).attr("data");
        phone = jQuery(that).attr('data-replace-txt');
        if (phone.trim().length == 0)
            phone = "Numéro non renseigné";
        jQuery(that).html(phone);
        jQuery(that).removeClass('data-replace');
        jQuery.post(ajaxurl, {
            'action': 'ajax_update_click_telephone',
            'id_object': id_object,
            'type_click': "annonce"
        }, function(response) {
            if (response === 1 || response === "1") {
                return "ok";
            }
        });
    });
    jQuery("#toTop_annonce").click(function() {
        jQuery("html, body").animate({
            scrollTop: 0
        }, "slow");
        return false;
    });
});
jQuery(document).live("mouseup", function(e) {
    var container = jQuery(".derniere-recherche");
    if (!container.is(e.target) && container.has(e.target).length === 0) {
        if (jQuery(".last-search-content").is(":visible"))
            jQuery(".last-search-content").slideToggle("slow");
    }
    var container1 = jQuery('.menu-affiner > li > a');
    var container2 = jQuery('.menu-affiner > li > ul');
    if (!container1.is(e.target) && container1.has(e.target).length === 0 && !container2.is(e.target) && container2.has(e.target).length === 0 && !GLOBAL_CHANGE) {
        container1.removeClass('active');
        jQuery('.menu-affiner > li > ul').filter(':visible').slideUp('normal');
    }
    GLOBAL_CHANGE = false;
});