const $ = jQuery;
function captchaCallbackSignale() {
    var response = grecaptcha.getResponse(0);
    $("#hiddenRecaptchaSignale").val(response);
    if($("#hiddenRecaptchaSignale").val()!=""){
        $("#hiddenRecaptcha-error").css('display','none');
        $('#signupFormSignale input[name="hiddenRecaptchaSignale"]').tooltipster('close');
    }           
}
function captchaExpiredSignale() {
    $("#hiddenRecaptcha").val("");
}
/* agence */
function captchaCallbackA() {
    var response = grecaptcha.getResponse(0);
    $("#hiddenRecaptcha").val(response);
    if($("#hiddenRecaptcha").val()!=""){
        $("#hiddenRecaptcha-error").css('display','none');
        $('#hiddenRecaptcha input[name="hiddenRecaptcha"]').tooltipster('close');
    }           
}
function captchaExpiredA() {
    $("#hiddenRecaptcha").val("");
}
function captchaCallbackAB() {
    var response = grecaptcha.getResponse(1);
    $("#hiddenRecaptchas").val(response);
    if($("#hiddenRecaptchas").val()!=""){
        $("#hiddenRecaptcha-error").css('display','none');
        $('#hiddenRecaptchas input[name="hiddenRecaptchas"]').tooltipster('close');
    }           
}
function captchaExpiredAB() {
    $("#hiddenRecaptchas").val("");
}
/* end angece */
function captchaCallback() {
    var response = grecaptcha.getResponse(1);
    $("#hiddenRecaptcha").val(response);
    if($("#hiddenRecaptcha").val()!="")
    {
      $("#hiddenRecaptcha-error").css('display','none');
    }           
 }
 function captchaExpired() {
     $("#hiddenRecaptcha").val("");
}
function captchaCallback_bas() {
    return new Promise(function(resolve, reject) {
        if (grecaptcha === undefined) {
            reject();
        }
        var response = grecaptcha.getResponse(2);
        if (!response) {
            reject();
        }
        $("#hiddenRecaptcha_bas").val(response);
        if($("#hiddenRecaptcha_bas").val()!="")
        {
          $("#hiddenRecaptcha_bas-error").css('display','none');
        }   
    });
}
function captchaExpired_bas() {
    $("#hiddenRecaptcha_bas").val("");
}

function captchaCallback_popup() {
    var response = grecaptcha.getResponse(3);
    $("#hiddenRecaptcha_popup").val(response);
    if( $("#hiddenRecaptcha_popup").val()!="" )
    {
      $("#hiddenRecaptcha_popup-error").css('display','none');
    }           
 }
 function captchaExpired_popup() {
     $("#hiddenRecaptcha_popup").val("");
}


function printDiv(e) {
    for (var r = document.body.innerHTML, a = document.getElementById("descriptif-annonce"), i = document.getElementById(e), t = i.getElementsByClassName("carousel-control"), n = (i.childNodes, t.length), u = new Array, o = 0; n > o; o++) u[o] = t[o];
    for (var o = 0; n > o; o++) i.removeChild(u[o]);
    document.body.innerHTML = "<html><head><title></title></head><body>" + i.innerHTML + (a && a.innerHTML || "") + "</body>", window.print(), document.body.innerHTML = r
}

function RemoveLieu(nom_lieu) {
    $("#autocompleteville").parent().find("ul.select2-selection__rendered li").each(function() {
        var titre = $(this).attr("title");

        try {
            if (titre === nom_lieu) {
                $(this).remove();
                $("#autocompleteville option[value='p_" + nom_lieu + "']").removeAttr("selected");
                $("#autocompleteville option[value='q_" + nom_lieu + "']").removeAttr("selected");
                $("#autocompleteville option[value='v_" + nom_lieu + "']").removeAttr("selected");
                var selectedValues = $("#autocompleteville").select2('val');
                console.log(selectedValues);
                input_ville = "&nbsp;";
                if (selectedValues !== null) {
                    for (var i = 0; i < selectedValues.length; i++) {
                        var ville = selectedValues[i].split("_");
                        if (ville[0] === "p")
                            input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value="' + ville[1] + '"><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                        if (ville[0] === "v")
                            input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value="' + ville[1] + '"/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                        if (ville[0] === "q") {
                            var str = ville[1];
                            var substringLength = str.indexOf('-') - 1;
                            var res = str.substring(0, substringLength);
                            input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value="' + res + '"/>';
                        }
                    }
                }
                $('.hidden_input_ville').html(input_ville);
            }

            if(titre.indexOf('-') != -1) {
                var nom_region = titre.split("-");
                var nom_ville = nom_region[1].substring(1);

                var substringLength = titre.indexOf('-') - 1;
                var titre = titre.substring(0, substringLength);

                if (titre === nom_lieu) {
                    $(this).remove();
                    $("#autocompleteville option[value='p_" + nom_lieu + "']").removeAttr("selected");
                    $("#autocompleteville option[value='q_" + nom_lieu + " - v_" + nom_ville + "']").removeAttr("selected");
                    $("#autocompleteville option[value='v_" + nom_lieu + "']").removeAttr("selected");
                    var selectedValues = $("#autocompleteville").select2('val');
                    console.log(selectedValues);
                    input_ville = "&nbsp;";
                    if (selectedValues !== null) {
                        for (var i = 0; i < selectedValues.length; i++) {
                            var ville = selectedValues[i].split("_");
                            if (ville[0] === "p")
                                input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value="' + ville[1] + '"><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                            if (ville[0] === "v")
                                input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value="' + ville[1] + '"/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                            if (ville[0] === "q") {
                                var str = ville[1];
                                var substringLength = str.indexOf('-') - 1;
                                var res = str.substring(0, substringLength);
                                input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value="' + res + '"/>';
                            }
                        }
                    }
                    $('.hidden_input_ville').html(input_ville);
                }
            }
        }
        catch (e) {

        }
    });
}

function codeTouche(e) {
    for (prop in e)
        if ("which" == prop) return e.which;
    return e.keyCode
}

function scanTouche(e, r) {
    var a = /\d/,
        i = codeTouche(e);
    if (8 === i) n = !0;
    else var t = String.fromCharCode(i),
        n = a.test(t);
    return n || $(r).show(), n
}

function arrayMin(e) {
    for (var r = e.length, a = 1 / 0; r--;) e[r] < a && (a = e[r]);
    return a
}

function arrayMax(e) {
    for (var r = e.length, a = -(1 / 0); r--;) e[r] > a && (a = e[r]);
    return a
}

function update_searchcategory_value(e) {
    $("#awpcp-category-dropdown").val(e)
}

function update_nombre_pieces() {
    min_piece = "", max_piece = "";
    var e = 0;
    e = parseInt($(".nbr_pieces input:checked").val()), e > 0 ? ($("#awpcp-extra-field-awpcp-nombre_de_chambre-min").val(e), $("#awpcp-extra-field-awpcp-nombre_de_chambre-max").val(e)) : (min_piece = 1, max_piece = 1,$("#awpcp-extra-field-awpcp-nombre_de_chambre-max").val(0),$("#awpcp-extra-field-awpcp-nombre_de_piece-min").val(min_piece), $("#awpcp-extra-field-awpcp-nombre_de_piece-max").val(max_piece))
    if(e==5) $("#awpcp-extra-field-awpcp-nombre_de_chambre-max").val("");
    }

function update_nombre_chambres() {
    min_chambre = "", max_chambre = "";
    var e = [];
    $(".nbr_chambres input:checked").each(function() {
        e.push(parseInt($(this).val()))
    }), e.length > 0 ? 1 === e.length ? (min_chambre = arrayMin(e), max_chambre = "") : (min_chambre = arrayMin(e), max_chambre = arrayMax(e)) : (min_chambre = "", max_chambre = ""), $("#awpcp-extra-field-awpcp-nombre_de_chambre-min").val(min_chambre), $("#awpcp-extra-field-awpcp-nombre_de_chambre-max").val(max_chambre)
}

function test_input_checkbox_entreprise() {
    return ret = !1, $(".mutliSelect input[type=checkbox]:checked").each(function() {
        ret = !0
    }), ret
}

function update_input_checkbox_entreprise() {
    $(".mutliSelect input[type=checkbox]").each(function() {
        $(this).attr("checked", !0)
    })
}

function handleClick(e) {
    currentValue = e.value, update_searchcategory_value(currentValue)
}

function colore_carte(pays_listing) {
    $("#layer4 path").each(function() {
        $(this).css("fill", "#ffffff");
        $(this).css({opacity: 0.8});
        $('.svg_txt a').css("color", "#fff");
    });
    if (pays_listing !== null) {
        for (var i = 0; i < pays_listing.length; i++) {
            var value = pays_listing[i].split("_");
            if (value[0] === "q") {
                var separateQuartierVille = pays_listing[i].split("-");
                var pathName = separateQuartierVille[1].substring(1);
                $('#layer4 path[name="' + pathName + '"]').css("fill", "#1a91b1");
            }
            $('#layer4 path[name="' + pays_listing[i] + '"]').css("fill", "#1a91b1");
            $('.svg_txt a[data="' + pays_listing[i] + '"]').css("color", "#ff6713");
            $('.svg_txt a[data="' + pays_listing[i] + '"]').css("text-decoration", "underline");
        }
    }
}

function shareButtonClick(e, r, a) {
    FB.getLoginStatus(function(i) {
        "connected" === i.status ? apiShareFacebook(e, r, a) : ("not_authorized" === i.status, facebookConnect())
    })
}

function facebookConnect() {
    FB.login(function(e) {
        if (e.authResponse) {
            e.authResponse.userID, e.authResponse.accessToken
        }
    }, {
        scope: "publish_actions"
    })
}

function apiShareFacebook(e, r, a) {
    FB.ui({
        method: "feed",
        link: e,
        picture: r,
        caption: a
    }, function(e) {
        ad_id = $("#ad_id").val(), mon_fb = $("#moi_" + ad_id).val(), immo_fb = $("#immo_" + ad_id).val(), message = "", mon_fb && !immo_fb && (message = "Merci. Votre annonce a bien été postée sur votre compte Facebook", $("p#facebook").text(message), $(".confirm_facebook").click()), mon_fb && immo_fb && ($("#message_partage_" + ad_id).hide(), message = "Merci. Votre annonce a bien été postée sur le compte Facebook d'immo974 et votre compte", $("p#facebook").text(message), $(".confirm_facebook").click()), !mon_fb && immo_fb && ($("#message_partage_" + ad_id).hide(), message = "Merci. Votre annonce a bien été postée sur le compte Facebook d'immo974", $("p#facebook").text(message), $(".confirm_facebook").click())
    })
}

function show_input_message_partage(e) {
    $("#fb_immo_" + e).is(":checked") ? $("#message_partage_" + e).show() : $("#message_partage_" + e).hide()
}

function partager_fb(e) {
    $("#fb_user_" + e).is(":checked") ? ($("#moi_" + e).val(1), form_data = "id_ad=" + e + "&action=ajax_partage_fb", $("#message_partage_" + e).show(), $.ajax({
        type: "POST",
        url: ajaxurl,
        data: form_data,
        success: function(e) {
            data = JSON.parse(e), shareButtonClick(data.link, data.picture, data.caption)
        }
    })) : $("#moi_" + e).attr("value", ""), $("#fb_immo_" + e).is(":checked") ? ($("#immo_" + e).val(2), message_partage = $("#message_partage_" + e).val(), form_data = "id_ad=" + e + "&message=" + message_partage + "&action=ajax_partage_page_immofb", $("#message_partage_" + e).show(), mon_fb = $("#moi_" + e).val(), immo_fb = $("#immo_" + e).val(), immo_fb && !mon_fb && ($("#message_partage_" + e).hide(), message = "Merci. Votre annonce a bien été postée sur le compte Facebook d'immo974", $("p#facebook").text(message), $(".confirm_facebook").click()), $.ajax({
        type: "POST",
        url: ajaxurl,
        data: form_data
    })) : $("#immo_" + e).attr("value", "")
}

// loader pour formulaire
const Loader = {
    init: function(selector, msg){
        $(selector).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: msg
        });
    },
    hide: function (selector) {
        if( selector != '.menu-affiner' ) {
            $(selector).unblock();
        } else
            $('.blockUI.blockOverlay').hide();
            $(selector).attr('style', 'position: relative');
    }
};

// on init 
(function(){
    Loader.init('.tab-form, .tab-form-avance .ui-tabs-panel, .recherche-agence', 'Chargement ...');
}(jQuery)) 

// tab type
window.type = [];

(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() {

    // phone contact
    $('.form-agence').find('[name*="phone"]').on('input', function() {
        if( this.value.charAt(0) != 0 || ( parseInt(this.value) < 1 && this.value.length > 2)){
            this.value = '';
        }
    });

    $('.form-agence').find('[name*="phone"]').attr("maxlength", "10");

    $('.form-agence').find('[name*="phone"]').inputFilter(function(value) {
        return /^-?\d*$/.test(value);
    });

    // hide loader
    Loader.hide('.tab-form, .tab-form-avance .ui-tabs-panel, .recherche-agence');

    // on enleve 
    $('.__optional').find('[value="Colocation"]').on('change', function(e){
        var self = this;
        if( e.originalEvent ) { // event trigger by user not by code
            if( !$(this).is(':checked') ) {
                window.type = window.type.filter(function(value){
                    return value != "Colocation";
                });
            }
        }
    });

    $('.__optional').find('[value="Meuble"]').on('change', function(e){
        var self = this;
        if( e.originalEvent ) { // event trigger by user not by code
            if( !$(this).is(':checked') ) {
                window.type = window.type.filter(function(value){
                    return value != "Meuble";
                });
            }
        }
    });

    // haha
    const checkbox_logement = function () {
        const logement = ["Appartement", "Maison / Villa"],
        option = ["Meuble", "Colocation"],
        v = $(this).val(),
        // fonction pour afficher
        show = function() {
            let t = false;
            if( $('[value="Maison / Villa"]').is(':checked') || $('[value="Appartement"]').is(':checked') ) {
                $('.__optional').show();
                t = true;
            }
            return t;
        },
        // fonction pour cacher
        hide = function() {
            $('.__optional').hide();
            $('.__optional').find('[type="checkbox"]').attr('checked', false);
            return;
        };
        
        // on enregistre les données
        if( $.inArray(v, option) != -1 && $(this).is(':checked') && $.inArray(this.value, window.type) == -1 ) {
            window.type.push(v);
            // on enleve les données
            console.log( window.type );
        }

        // on stoppe si les options
        if( $.inArray(this.value, option) != -1 ) return;
        // test si dans logement les autres
        var unlogbox = [], log = [];
        $('[name="awpcp-type_de_logement[]"]').each(function(){
            if( $(this).is(':checked') && $.inArray(this.value, logement) == -1 )
                unlogbox.push(this);
            if( $(this).is(':checked') && $.inArray(this.value, logement) != -1 )
                log.push(this)
            return;
        });

        // si un autre est present dans chekbox on cache
        if( !$(this).is(':checked') && log.length == 0 )
            return hide();

        // sélection précedent
        // if( $.inArray("Meuble", window.type) != -1 ) {
        //     $('.__optional').find('[value="Meuble"]').prop('checked', true);
        // }
        // if( $.inArray("Colocation", window.type) != -1 ) {
        //     $('.__optional').find('[value="Colocation"]').prop('checked', true);
        // }

        return show();
    };
    
    $('[name="awpcp-type_de_logement[]"], [name="awpcp-option_logement[]"]').on('click', function(){console.log(this), checkbox_logement.apply(this);});

    function e() {
        $('.mutliSelect input[type="checkbox"]').on("change", function() {
            // check logement
            checkbox_logement.apply(this);

            // en second 
            var e = $(this).closest(".mutliSelect").find('input[type="checkbox"]').val();
            val = $(this).val(),
            e = "&nbsp;" + (val == "Meuble" ? "Meublé" : val) + ",";
            if ($(this).is(":checked")) {
                var r = '<span title="' + val + '">' + e + "</span>";
                $(".multiSel").append(r), $(".hida").hide()
            } else {
                /* type */
                const logement = ["Appartement", "Maison / Villa"],
                this_check = $(this).val();

                 // si this == appartement et maison est coché ou this == maison et appartement est coché alors
                if( 
                    (this_check =='Maison / Villa' && !$('[value="Appartement"]').is(':checked')) ||
                    (this_check =='Appartement' && !$('[value="Maison / Villa"]').is(':checked'))
                ) 
                { 
                    $('.multiSel span[title="' + this_check + '"]').remove();
                    // s'applique seulement sur les logements cité ci-dessus
                    // on supprimer this est meublé et coché
                    if( $.isArray(this_check, logement) != -1 ) {
                        $('.multiSel span[title="Meuble"]').remove();
                        $('.multiSel span[title="Colocation"]').remove();
                    }
                }
                else 
                { 
                    // on supprime this
                    $('.multiSel span[title="' + this_check + '"]').remove();
                }

                if( 0 === $("p.multiSel").text().trim().length )
                     $(".hida").show();// , $(".dropdown dt a").append(ret)
            }


        });
    }
    $(".dropdown dt a").on("click", function(e) {
        e.preventDefault(), $(".dropdown dd ul").slideToggle("fast")
    }), $(".dropdown dd ul li a").on("click", function(e) {
        e.preventDefault(), $(".dropdown dd ul").hide(), $(".dropdown dd ul").hide()
    }), $(document).bind("click", function(e) {
        var r = $(e.target);
        r.parents().hasClass("dropdown") || $(".dropdown dd ul").hide(), r.parents().hasClass("dropdown_piece") || $(".dropdown_piece dd ul").hide()
    }), e(), $(".dropdown_piece dt a").on("click", function(e) {
        e.preventDefault(), $(".dropdown_piece dd ul").slideToggle("fast")
    }), $(".dropdown_piece dd ul li a").on("click", function(e) {
        e.preventDefault(), $(".dropdown_piece dd ul").hide()
    }), $('.mutliSelect_piece input[type="radio"]').on("click", function() {
        switch (selectionne = $(this).val(), $(this).val()) {
            case "0":
                titre = "Studio";
                break;
            case "1":
                titre = "1 chambres";
                break;
            case "5":
                titre = "5 chambres et +";
                break;
            default:
                titre = $(this).val() + " chambres"
        }
        var e = $(this).closest(".multiSel_piece").find('input[type="checkbox"]').val(),
            e = "&nbsp;" + titre + ",";
        if ($(this).is(":checked")) {
            var r = '<span title="' + $(this).val() + '">' + e + "</span>";
            $(".multiSel_piece").text("").append(r), $(".hida_piece").hide()
        } else this_check = $(this).val(), $('.multiSel_piece span[title="' + this_check + '"]').remove(), 0 === $("p.multiSel_piece").text().trim().length && $(".hida_piece").show(), $(".dropdown_piece dt a").append(ret);
        update_nombre_pieces()
    }), $("#owl-immo").owlCarousel({
        items: 2,
        dragBeforeAnimFinish: !0,
        mouseDrag: !0,
        touchDrag: !0,
        loop:true,
        autoplay:true,
        autoplayTimeout:300,
        autoplayHoverPause:true
    }), $("#choix_vente").on("change", function(r) {
        //r.preventDefault(), $("#tabs ul.ui-tabs-nav li").attr("class", "ui-state-default ui-corner-top"), $(this).attr("class", "ui-state-default ui-corner-top ui-tabs-active ui-state-active");
        r.preventDefault();
        //var a = $(this).find("a").attr("data"),
        var a = $( "#choix_vente option:selected" ).val(),
            i = $(this).parents("#tabs");
        $.ajax({
            url: ajaxurl,
            data: {
                action: "ajax_search",
                id_categorie: a
            },
            type: "post",
            dataType: "json",
            beforeSend: function() {
                i.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(r) {
                i.unblock(), $(".nb-annonce span").html(r.nombre_annonce), $(".mutliSelect ul").html(r.extra_fields), $(".recherche-avance").attr("href", r.url_avancee), update_searchcategory_value(r.search_category), $(".hida").show(), $(".multiSel").html(""), e()
            }
        })
    });
    // BOF modif 04-04-2017 : met un onglet actif selon l'original du lien (vente,location,vacance,entreprise)
    var __ongletActif = $( ".tabs-recherche-avance ul.ui-tabs-nav li.ui-state-active" ).find("a").attr("data");
    if(parseInt(__ongletActif) > 0)
    {
        id_categorie         = __ongletActif;
        update_searchcategory_value(id_categorie);
        var type_logement   = $('.mutliSelect input:checked').serializeArray();
        var commodite       = $('#comodite input:checked').serializeArray();    
        var __parentTabs = $(".tabs-recherche-avance");
        $.ajax(
        {
            url         : ajaxurl
            ,data       : {
                action              : "ajax_recherche_avancee"
                ,id_categorie       : id_categorie
                ,type_logement      : type_logement
                ,commodite          : commodite
            }
            ,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(result)
            {
                __parentTabs.unblock();
                $("#awpcp-category-dropdown").val(__ongletActif); 
                $('.mutliSelect').html(result.type_bien);
                $('#acces-direct').html(result.acce_direct);
                $('#comodite').html(result.commodite);
                if (id_categorie == 4) 
                {
                    $(".nbr_chambreshide").hide();
                } else
                    $(".nbr_chambreshide").show();
            }
        });
    }
    $(".tabs-recherche-avance ul.ui-tabs-nav li").on("click", function(e) 
    {
        e.preventDefault(), $(".tabs-recherche-avance > ul li").attr("class", "ui-state-default ui-corner-top"), $(this).attr("class", "ui-state-default ui-corner-top ui-tabs-active ui-state-active");
        var r = $(this).find("a").attr("data"),
            a = $(".mutliSelect input:checked").serializeArray(),
            i = $("#comodite input:checked").serializeArray(),
            t = $(this).parents(".tabs-recherche-avance");
        $.ajax({
            url: ajaxurl,
            data: {
                action: "ajax_recherche_avancee",
                id_categorie: r,
                type_logement: a,
                commodite: i
            },
            type: "post",
            dataType: "json",
            beforeSend: function() {
                t.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(e) {
                $("#awpcp-category-dropdown").val(r), t.unblock(), $(".mutliSelect").html(e.type_bien), $("#acces-direct").html(e.acce_direct), $("#comodite").html(e.commodite), 4 == r ? $(".nbr_chambreshide").hide() : $(".nbr_chambreshide").show()
            }
        })
    });

    var r = jQuery(".menu-affiner > li > ul"),
        a = jQuery(".menu-affiner > li:not(:first) > a");
    r.hide(), a.click(function(e) {
        e.preventDefault(), $(this).hasClass("active") ? ($(this).removeClass("active"), $(this).next().stop(!0, !0).slideUp("high")) : (a.removeClass("active"), r.filter(":visible").slideUp("high"), $(this).addClass("active").next().stop(!0, !0).slideDown("high"))
    });
    var i = $(".navigation-mobile > li > ul"),
        t = $(".navigation-mobile > li > a");
    i.hide(), t.click(function(e) {
        $(this).hasClass("active") ? ($(this).removeClass("active"), $(this).next().stop(!0, !0).slideUp("normal")) : (t.removeClass("active"), i.filter(":visible").slideUp("normal"), $(this).addClass("active").next().stop(!0, !0).slideDown("normal"))
    }), 
    $(".selecpicker_resultatrecherche").selectpicker().on("change", function() 
    {
        var e = $(".selecpicker_resultatrecherche option:selected").val();
        var location = window.location.href
        var url = new URL(location);
        url.searchParams.set('val_order',e);
        window.location.replace(url.href);
    }), 
    $(".selecpicker_aucuneannoncetrouve").selectpicker().on("change", function() {
        var e = $(".selecpicker_aucuneannoncetrouve option:selected").val();
        form_data = $("#ajax_selectpicker").serialize(), form_data = form_data + "&val_order=" + e + "&action=ajax_aucune_annonce_trouve", $.ajax({
            type: "POST",
            url: ajaxurl,
            data: form_data,
            success: function(e) {
                $(".list-annonce").html(e)
            }
        })
    }), $(".selecpicker_aucuneannoncetrouve_elargir").selectpicker().on("change", function() {
        $("#loading_ajax").css("display", "inline-block");
        var e = $(".selecpicker_aucuneannoncetrouve_elargir option:selected").val();
        form_data = $("#ajax_selectpicker").serialize(), form_data = form_data + "&elargissement=" + e + "&action=ajax_elargir_recherche", $.ajax({
            type: "POST",
            url: ajaxurl,
            data: form_data,
            success: function(e) {
                $(".list-annonce").html(e), $("#loading_ajax").css("display", "none")
            }
        })
    }), $(".selecpicker_resultatrecherche_agence").selectpicker().on("change", function() {
        var e = $(".selecpicker_resultatrecherche_agence option:selected").val();
        form_data = $("#ajax_search_agence").serialize(), form_data = form_data + "&order_by=" + e + "&action=ajax_search_result_agence", $.ajax({
            type: "POST",
            url: ajaxurl,
            data: form_data,
            success: function(e) {
                var r = $.parseJSON(e);
                $(".list-agence").html(r.agences), $(".container-pagination").html(r.pagination)
            }
        })
    }), $("#phones,#surface_terrain,#surface_habitable,#awpcp-charges,#ad_item_price,#min-price,#max-price,#awpcp-extra-field-awpcp-surface_habitable-min,#awpcp-extra-field-awpcp-surface_habitable-max,#awpcp-extra-field-awpcp-surface_terrain-max").keypress(function() {
        $(this).valid()
    }), $("#recherche_formulaire").validate({
        ignore: "input[type=hidden]",
        rules: {
            choix_vente: {
                required: !0
            },
            autocompleteville: {
                required: !0
            },
            searchpricemax: {
                number: !0
            }
        },
        messages: {
            choix_vente: {
                required: "Merci de choisir un type."
            },
            autocompleteville: {
                required: "Merci de renseigner un lieu de recherche."
            },
            searchpricemax: {
                number: "Merci de renseigner un prix max."
            }
        },
        errorPlacement: function(e, r) {
            "autocompleteville" == r.attr("name") ? e.insertAfter(".select2-container", "#recherche_formulaire") : "radio" == r.attr("name") ? e.insertAfter("p.lastp", "#recherche_formulaire") : e.insertAfter(r)
        }
    }), page_autorise = [107, 116, 25, 28, 22, 30], -1 !== page_autorise.indexOf(page) && ($("#min-price").rules("add", {
        number: !0,
        messages: {
            number: "Merci de renseigner un prix min."
        }
    }), $("#awpcp-extra-field-awpcp-surface_habitable-min").rules("add", {
        number: !0,
        messages: {
            number: "Merci de renseigner une surface min."
        }
    }), $("#awpcp-extra-field-awpcp-surface_habitable-max").rules("add", {
        number: !0,
        messages: {
            number: "Merci de renseigner une surface max."
        }
    }), $("#awpcp-extra-field-awpcp-surface_terrain-max").rules("add", {
        number: !0,
        messages: {
            number: "Merci de renseigner une surface de terrain max."
        }
    })), 116 === page && $(".radio_categorie input[name='searchcategory']").rules("add", {
        required: !0,
        messages: {
            required: "Merci de selectionner un type de recherche."
        }
    }), jQuery(".radio_categorie input[name='radio']").change(function(e) {
        valeur = jQuery(this).val()
    }), jQuery("#boutton_rechercher, .filtre_boutton_rechercher").click(function(e) {
        e.preventDefault(), jQuery("#recherche_formulaire").valid() && (id_category = jQuery("#awpcp-category-dropdown").val(), "" === id_category && (test_check = test_input_checkbox_entreprise(), test_check || update_input_checkbox_entreprise()))//  jQuery("#recherche_formulaire").submit())
    }), jQuery(".filtre_boutton_rechercher_agence").click(function(e) {
        e.preventDefault(), jQuery("#recherche_agence_formulaire").valid() && jQuery("#recherche_agence_formulaire").submit()
    }), jQuery("#autocompleteville").length && jQuery("#autocompleteville").select2({
        placeholder: (placeholder = jQuery("#autocompleteville").attr('placeholder')) ? placeholder : "Code postal, ville...",
        minimumResultsForSearch: -1
    }).on("change", function(e) {
        var selectedValues = $(this).select2('val');
        colore_carte(selectedValues);
        input_ville = "&nbsp;";
        if (selectedValues !== null) {
            for (var i = 0; i < selectedValues.length; i++) {
                var ville = selectedValues[i].split("_");
                if (ville[0] === "p")
                    input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value="' + ville[1] + '"><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                if (ville[0] === "s")
                    input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value="' + ville[1] + '"><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                if (ville[0] === "v")
                    input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value="' + ville[1] + '"/><input type="hidden" name="regions[' + i + '][county]" value=""/>';
                if (ville[0] === "q") {
                    var str = ville[1];
                    var substringLength = str.indexOf('-') - 1;
                    var res = str.substring(0, substringLength);
                    input_ville = input_ville + '<input type="hidden" name="regions[' + i + '][country]" value=""><input type="hidden" name="regions[' + i + '][state]" value=""><input type="hidden" name="regions[' + i + '][city]" value=""/><input type="hidden" name="regions[' + i + '][county]" value="' + res + '"/>';
                }
            }
            if ($('#autocompleteville-error').is(':visible'))
                $('#autocompleteville-error').remove();

        }
        $('.hidden_input_ville').html(input_ville);
        GLOBAL_CHANGE = true;
    }), $('.suppr-select').click(function(e) {
        e.preventDefault();
        rel = $(this).attr("rel");
        rel = rel.split("|");
        if (rel.length > 1) {
            if (rel[0] === "awpcp-type_de_logement" || rel[0] === "awpcp-options") {
                $("input[value='" + rel[1] + "']").attr('checked', false);
            }
            if (rel[0] === "autocompleteville") {
                RemoveLieu(rel[1]);
            }
            if (rel[0] === "searchcategory") {
                $("#awpcp-category-dropdown").val("");
                $(".radio_categorie input[value='" + rel[1] + "']").attr('checked', false);
                var defaultValue = 0;
                $(".radio_categorie input[value='" + defaultValue + "']").attr('checked', true);
            }
            if (rel[0] === "photo") {
                $("input[name='photo']").attr('checked', false);
            }
            if (rel[0] === "type_user_part") {
                $("input[name='type_user_part']").attr('checked', false);
            }
            if (rel[0] === "type_user_pro") {
                $("input[name='type_user_pro']").attr('checked', false);
            }
            if (rel[0] === "publication") {
                $("input[name='publication']").attr('checked', false);
            }

        }
        else {
            $("input[name=" + rel[0] + "]").val("");
        }
        if (rel[0] === "awpcp-option_logement") {
            $("input[value='" + rel[1].replace('é', 'e') + "']").attr('checked', false);
        }
        if (rel[0] === "awpcp-nombre_de_chambre") {
            // $("input[name='chambre[]']").each(function(){
                $("input[name='chambre[]']").prop('checked', false);
            // });
        }
        // deactive studio
        if( rel[0] == 'awpcp-nombre_de_piece-max' || rel[0] == 'awpcp-nombre_de_piece-max' ) {
            $("input[name='chambre[]']").prop('checked', false);
            $('[name="awpcp-nombre_de_piece-min"]').prop('checked', false);
            $('[name="awpcp-nombre_de_piece-min"]').val('');
            $('[name="awpcp-nombre_de_piece-max"]').prop('checked', false);
            $('[name="awpcp-nombre_de_piece-max"]').val('');
        }

        $(this).closest('div').fadeOut();
        if ($('.filtre_boutton_rechercher').length)
            $('.filtre_boutton_rechercher').trigger("click");
        if ($('.filtre_boutton_rechercher_agence').length)
            $('.filtre_boutton_rechercher_agence').trigger("click");
    }), $("#loginContainer").hover(function() {
        $(this).children("#loginBox").show(), $(this).addClass("hover-show")
    }, function() {
        $(this).children("#loginBox").hide(), $(this).removeClass("hover-show")
    }), $(".derniere-recherche").click(function() {
        $(".last-search-content").slideToggle("slow")
    }), $("#layer4 path").each(function() {
        $(this).css({
            opacity: .8
        }), $(this).hover(function() {
            $(this).css("cursor", "pointer"), $(this).css({
                opacity: 1
            }), $(this).css("fill", "#1a91b1")
        }, function() {
            var e = $("#autocompleteville").select2("val");
            (null === e || null !== e && -1 === e.indexOf($(this).attr("name"))) && ($(this).css("fill", "#ffffff"), $(this).css({
                opacity: .8
            }))
        }), $(this).click(function() {
            $(this).css("fill", "#1a91b1");
            var e = $("#autocompleteville").select2("val");
            null !== e ? e.push($(this).attr("name")) : e = $(this).attr("name"), $("#autocompleteville").val(e).trigger("change")
        })
    }), $(".svg_txt a").click(function(e) {
        e.preventDefault(), $(this).css("color", "#ff6713"), $(this).css("text-decoration", "underline");
        var r = $("#autocompleteville").select2("val");
        null !== r ? r.push($(this).attr("data")) : r = $(this).attr("data"), $("#autocompleteville").val(r).trigger("change")
    }), $(".envoi_mail").click(function() {
        var e, r, a, i, t, n, u, o, c;
        e = r = a = i = "", n = u = o = c = !1;
        var l;
        $(this).closest("form.form-agence").find(".envoi_mail").each(function() {
            if (l = $(this).val(), $(this).is(":checked")) switch (textdefault = !0, l) {
                case "1":
                    e = "\nJe souhaiterais prendre un rendez-vous pour le visiter.", n = !0;
                    break;
                case "2":
                    r = "\nJe souhaiterais avoir plus d’information sur ce bien.", u = !0;
                    break;
                case "3":
                    a = "\nJe souhaiterais avoir plus d’information. Pourriez-vous me rappeler à ce sujet ? ", o = !0;
                    break;
                case "4":
                    i = "\nPourriez-vous m’envoyer d’avantage de photos ?", c = !0
            }
        }), t = "Bonjour, ce bien m’intéresse. " + e + r + a + i + "\nCordialement,", n || u || o || c ? ($(this).closest("form.form-agence").find("textarea").val(t), $(this).closest("form.form-agence").find("#text_to_contact").val(t), $("#text_to_contact-error").remove()) : ($(this).closest("form.form-agence").find("textarea").val(""), $(this).closest("form.form-agence").find("textarea").attr("placeholder", t), $(this).closest("form.form-agence").find("#text_to_contact").val(""))
    }), $("#phone-agence, #phone-agence-bas, .phone-agence-popup").click(function(e) {
        e.preventDefault(), $(this).parent().find(".phone-contact-agence").css("display", "inline")
    });

    /* BOF ajout fefeh */
    $('#signupForm #hiddenRecaptcha,\
        #signupForm input[name="prenom"],\
        #signupForm input[name="nom"],\
        #signupForm input[name="email"],\
        #signupForm input[name="phone"],\
        #signupForm input[name="optin"],\
        #signupForm textarea[name="text_body"]\
    ').tooltipster({
        trigger            : 'custom'
        ,animation        : 'grow'
        ,offsetY        : 3
        ,position        : 'bottom'
        ,content        : ""
    });
    $('#signupForm_bas input[name="prenom_bas"],\
        #signupForm_bas input[name="nom_bas"],\
        #signupForm_bas input[name="email_bas"],\
        #signupForm_bas input[name="phone_bas"],\
        #signupForm_bas input[name="optin_bas"],\
        #signupForm_bas textarea[name="text_body_bas"],\
        #signupForm_bas input[name="hiddenRecaptcha_bas"]\
    ').tooltipster({
        trigger            : 'custom'
        ,animation        : 'grow'
        ,offsetY        : 3
        ,position        : 'bottom'
        ,content        : ""
    });
    
    /* EOF ajout fefeh */
    /* Edited by Patrick */
    $(' #agenceForm1 input[name="hiddenRecaptcha"],\
        #agenceForm1 input[name="mail_loc"],\
        #agenceForm1 input[name="prenom_agence"],\
        #agenceForm1 input[name="nom_agence"],\
        #agenceForm1 input[name="email_agence"],\
        #agenceForm1 input[name="phone_agence"],\
        #agenceForm1 textarea[name="text_to_contact_agence"],\
        #agenceForm1 input[name="optin_agence"]\
    ').tooltipster({
        trigger            : 'custom'
        ,animation        : 'grow'
        ,offsetY        : 3
        ,position        : 'bottom'
        ,content        : ""
    });

    var validatorAgenceForm1 = $("#agenceForm1").validate({
        rules: {
            hiddenRecaptcha : "required",
            mail_loc: "required",
            msg: {
                required: true,
                // minlength: 20
            },
            prenom_agence: "required",
            nom_agence: "required",
            email_agence: {
                required: !0,
                regex_email: /[a-zA-Z]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            phone_agence: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            optin_agence: "required",
        },
        messages: {
            mail_loc: "Veuillez choisir",
            text_to_contact_agence: "Cocher ou renseigner votre demande. 20 caractères minimun.",
            prenom_agence: "Veulllez saisir votre prénom",
            nom_agence: "Veulllez saisir votre nom",
            email_agence: "Veuillez un adresse mail valide",
            phone_agence: "Saisir un numéro de 10 chiffres",
            optin_agence: "Merci d'accepter nos conditions générales .",
            hiddenRecaptcha: "Vérifier que vous n'êtes pas un robot."
        },success: function (label, element) 
        {
            if($(element).attr("name") == "mail_loc" || $(element).attr("name") == "prenom_agence" || $(element).attr("name") == "nom_agence" || $(element).attr("name") == "email_agence" 
            || $(element).attr("name") == "phone_agence" || $(element).attr("name") == "optin_agence" || $(element).attr("name") == "text_to_contact_agence" || $(element).attr("name") == "hiddenRecaptcha")
            {
                $(element).tooltipster('close');
            }
        },submitHandler: function(form) { // <- pass 'form' argument in
            $("#submit_contact").attr("disabled", true);
            form.submit();
            window.location.reload(true);            // <- use 'form' argument here.
        }
        ,errorPlacement: function(error, element) 
        {
            var errors         = validatorAgenceForm1.numberOfInvalids();
            var error_msg     = "";
            var error_element;
            if (validatorAgenceForm1.errorList.length > 0) 
            {
                error_msg         = validatorAgenceForm1.errorList[0].message;
                error_element     = validatorAgenceForm1.errorList[0].element
                
                if(error_msg != "" && $(element).attr("name") == "mail_loc" || $(element).attr("name") == "prenom_agence" || $(element).attr("name") == "nom_agence" || $(element).attr("name") == "email_agence" 
                || $(element).attr("name") == "phone_agence" || $(element).attr("name") == "optin_agence" || $(element).attr("name") == "text_to_contact_agence" || $(element).attr("name") == "hiddenRecaptcha")
                {
                    
                    console.log(error_element);
                    $(error_element).tooltipster('content', error_msg);
                    $(error_element).tooltipster('show');
                    // $('#agenceForm1 .tooltipstered').tooltipster('close');
                }
            }
        }
    });
    $('#agenceForm2 input[name="hiddenRecaptchas"],\
        #agenceForm2 input[name="mail_loc_agence_bas"],\
        #agenceForm2 input[name="prenom_agence_bas"],\
        #agenceForm2 input[name="nom_agence_bas"],\
        #agenceForm2 input[name="email_agence_bas"],\
        #agenceForm2 input[name="phone_agence_bas"],\
        #agenceForm2 input[name="optin_agence_bas"],\
        #agenceForm2 textarea[name="text_to_contact_agence_bas"]\
    ').tooltipster({
        trigger            : 'custom'
        ,animation        : 'grow'
        ,offsetY        : 3
        ,position        : 'bottom'
        ,content        : ""
    });

    var validatorAgenceForm2 = $("#agenceForm2").validate({
        rules: {
            hiddenRecaptchas: "required",
            mail_loc_agence_bas: "required",
            text_to_contact_agence_bas: {
                required: true,
                // minlength: 20
            },
            prenom_agence_bas: "required",
            nom_agence_bas: "required",
            email_agence_bas: {
                required: !0,
                regex_email: /[a-zA-Z]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            phone_agence_bas: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            optin_agence_bas: "required",
        },
        messages: {
            mail_loc_agence_bas: "Veuillez choisir",
            text_to_contact_agence_bas: "Cocher ou renseigner votre demande. 20 caractères minimun.",
            prenom_agence_bas: "Veulllez saisir votre prénom",
            nom_agence_bas: "Veulllez saisir votre nom",
            email_agence_bas: "Veuillez un adresse mail valide",
            phone_agence_bas: "Saisir un numéro de 10 chiffres",
            optin_agence_bas: "Merci d'accepter nos conditions générales .",
            hiddenRecaptchas: "Vérifier que vous n'êtes pas un robot."
        },success: function (label, element) 
        {
            if($(element).attr("name") == "mail_loc_agence_bas" || $(element).attr("name") == "prenom_agence_bas" || $(element).attr("name") == "nom_agence_bas" || $(element).attr("name") == "email_agence_bas"
            || $(element).attr("name") == "phone_agence_bas" || $(element).attr("name") == "optin_agence_bas" || $(element).attr("name") == "text_to_contact_agence_bas" || $(element).attr("name") == "hiddenRecaptchas")
            {
                $(element).tooltipster('close');
            }
        },submitHandler: function(form) { // <- pass 'form' argument in
            $("#submit_contact").attr("disabled", true);
            form.submit();
            // window.location.reload(true);            // <- use 'form' argument here.
        }
        ,errorPlacement: function(error, element) 
        {
            var errors         = validatorAgenceForm2.numberOfInvalids();
            var error_msg     = "";
            var error_element;
            if (validatorAgenceForm2.errorList.length > 0) 
            {
                error_msg         = validatorAgenceForm2.errorList[0].message;
                error_element     = validatorAgenceForm2.errorList[0].element
                
                if(error_msg != "" && $(element).attr("name") == "mail_loc_agence_bas"
                || $(element).attr("name") == "prenom_agence_bas" || $(element).attr("name") == "nom_agence_bas" || $(element).attr("name") == "email_agence_bas"
                || $(element).attr("name") == "phone_agence_bas" || $(element).attr("name") == "optin_agence_bas" || $(element).attr("name") == "text_to_contact_agence_bas" || $(element).attr("name") == "hiddenRecaptchas")
                {
                    // $('#agenceForm2 .tooltipstered').tooltipster('close');
                    $(error_element).tooltipster('content', error_msg);
                    $(error_element).tooltipster('show');
                }
            }
        }
    });
    /* end of */
    var validatorSignupForm = $("#signupForm").validate({
        rules: {
            text_body: {
                required: true,
                minlength: 20
            },
            prenom: "required",
            nom: "required",
            email: {
                required: !0,
                regex_email: /[a-zA-Z]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            phone: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            optin: "required",
            hiddenRecaptcha: "required"
        },
        messages: {
            text_body: "Cocher ou renseigner votre demande. 20 caractères minimun.",
            prenom: "Veuillez saisir votre prénom",
            nom: "Veuillez saisir votre nom",
            email: "Veuillez un adresse mail valide",
            phone: "Saisir un numéro de 10 chiffres",
            optin: "Merci d'accepter nos conditions générales .",
            hiddenRecaptcha: "Vérifier que vous n'êtes pas un robot."
        },success: function (label, element) 
        {
            if($(element).attr("name") == "prenom" || $(element).attr("name") == "nom" || $(element).attr("name") == "email" 
            || $(element).attr("name") == "phone" || $(element).attr("name") == "optin" || $(element).attr("name") == "text_body" || $(element).attr("name") == "hiddenRecaptcha")
            {
                $(element).tooltipster('close');
            }
        },submitHandler: function(form) { // <- pass 'form' argument in
            $("#submit_contact").attr("disabled", true);
            form.submit();
                window.location.reload(true);            // <- use 'form' argument here.
        }
        ,errorPlacement: function(error, element) 
        {
            var errors         = validatorSignupForm.numberOfInvalids();
            var error_msg     = "";
            var error_element;
            if (validatorSignupForm.errorList.length > 0) 
            {
                error_msg         = validatorSignupForm.errorList[0].message;
                error_element     = validatorSignupForm.errorList[0].element
                
                if(error_msg != "" && 
                ($(error_element).attr("name") == "prenom" || $(error_element).attr("name") == "nom" || $(error_element).attr("name") == "email" 
                || $(error_element).attr("name") == "phone" || $(error_element).attr("name") == "optin" || $(error_element).attr("name") == "text_body") ||  $(error_element).attr("name") == "hiddenRecaptcha")
                {
                    $('#signupForm .tooltipstered').tooltipster('close');
                    $(error_element).tooltipster('content', error_msg);
                    $(error_element).tooltipster('show');
                }
            }
        }
    });
    var validatorSignupFormBas = $("#signupForm_bas").validate({
        ignore: "",
        rules: {
            text_body_bas: {
                required: true,
                minlength: 20
            },
            prenom_bas: "required",
            nom_bas: "required",
            email_bas: {
                required: !0,
                regex_email: /[a-zA-Z]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            phone_bas: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            optin_bas: "required",
            hiddenRecaptcha_bas: "required"
        },
        messages: {
            text_body_bas: "Veuillez renseigner votre demande ou cochez au moins une case. Il faut 20 caractères minimum dans le champ.",
            prenom_bas: "Veulllez saisir votre prénom",
            nom_bas: "Veulllez saisir votre nom",
            email_bas: "Veulllez un adresse mail valide",
            phone_bas: "Saisir un numéro de 10 chiffres",
            optin_bas: "Merci d'accepter nos conditions générales.",
            hiddenRecaptcha_bas: "Vérifier que vous n'êtes pas un robot."
        },
        success: function (label, element) {
            if($(element).attr("name") == "prenom_bas" || $(element).attr("name") == "nom_bas" || $(element).attr("name") == "email_bas" 
            || $(element).attr("name") == "phone_bas" || $(element).attr("name") == "optin_bas" || $(element).attr("name") == "text_body_bas" || $(element).attr("name") == "hiddenRecaptcha_bas")
            {
                $(element).tooltipster('close');
            }
        },
        submitHandler: function(form) { // <- pass 'form' argument in
            $("#submit_contact_bas").attr("disabled", true);
            form.submit();
            // window.location.reload(true);            // <- use 'form' argument here.
        },
        errorPlacement: function(error, element) {
            // "optin_bas" == r.attr("name") ? e.insertAfter("#signupForm_bas .label_accepte", "#signupForm_bas") : e.insertAfter(r)
            var errors         = validatorSignupFormBas.numberOfInvalids();
            var error_msg     = "";
            var error_element;
            if (validatorSignupFormBas.errorList.length > 0) 
            {
                error_msg         = validatorSignupFormBas.errorList[0].message;
                error_element     = validatorSignupFormBas.errorList[0].element
                
                if(error_msg != "" && $(element).attr("name") == "prenom_bas" || $(element).attr("name") == "nom_bas" || $(element).attr("name") == "email_bas"
                || $(element).attr("name") == "phone_bas" || $(element).attr("name") == "optin_bas" || $(element).attr("name") == "text_body_bas" || $(element).attr("name") == "hiddenRecaptcha_bas")
                {
                    // $('#signupForm .tooltipstered').tooltipster('close');
                    console.log(error_element);
                    $(error_element).tooltipster('content', error_msg);
                    $(error_element).tooltipster('show');
                }
            }
        }
    });
    $("#signupForm_popup").validate({
        ignore: "",
        rules: {
            text_body_popup: {
                required: true,
                minlength: 20
            },
            prenom_popup: "required",
            nom_popup: "required",
            email_popup: {
                required: !0,
                email: !0
            },
            phone_popup: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            optin_popup: "required",
            hiddenRecaptcha_popup: "required"
        },
        messages: {
            text_body_popup: "Veuillez renseigner votre demande ou cochez au moins une case. Il faut 20 caractères minimum dans le champ.",
            prenom_popup: "Veulllez saisir votre prénom",
            nom_popup: "Veulllez saisir votre nom",
            email_popup: "Veulllez un adresse mail valide",
            phone_popup: "Saisir un numéro de 10 chiffres",
            optin_popup: "Merci d'accepter nos conditions générales.",
            hiddenRecaptcha_popup: "Vérifier que vous n'êtes pas un robot."
        },
        submitHandler: function(form) { // <- pass 'form' argument in
            $("#submit_contact_popup").attr("disabled", true);
            form.submit();
            // window.location.reload(true);           // <- use 'form' argument here.
        },
        errorPlacement: function(e, r) {
            "optin_popup" == r.attr("name") ? e.insertAfter(".label_accepte_popup", "#signupForm_popup") : e.insertAfter(r)
        }
    }), $("#signupFormSendMail").validate({
        rules: {
            mail_to: {
                required: !0,
                email: !0
            },
            mail_from: {
                required: !0,
                email: !0
            },
            mail_description: "required"
        },
        messages: {
            mail_to: "Veuilllez saisir l'adresse du destinataire",
            mail_from: "Veuilllez saisir l'adresse de l'expéditeur",
            mail_description: "Veuilllez remplir le champ description"
        }
    }), $("#signupFormSignaler").validate({
        rules: {
            phone: {
                required: !0,
                number: true,
                minlength: 10,
                maxlength: 10
            },
            mail: {
                required: !0,
                email: !0
            },
            nom: "required",
            prenom: "required",
            commentaire: "required",
            categorie_reclamation: {
                required: !0,
                range: [-5]
            }
        },
        messages: {
            nom: "Veuilllez renseigner le champ nom",
            prenom: "Veuilllez renseigner le champ prénom",
            mail: "Veuilllez renseigner l'adresse mail",
            categorie_reclamation: "Veuillez selectionner une catégorie",
            commentaire: "Veuillez mettre votre commentaire",
            phone: "Saisir un numéro de 10 chiffres"
        }
    }), $("#share_annonce").dcTooltip(), $.validator.addMethod("regex_email", function(e, r, a) {
        var i = new RegExp(a);
        return this.optional(r) || i.test(e)
    }, "Please check email value."), $("#connexion_header").validate({
        rules: {
            log: {
                required: !0,
                regex_email: /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            pwd: {
                required: !0
            }
        },
        messages: {
            log: {
                required: "Veuillez renseigner votre adresse email.",
                regex_email: "Cette adresse email est invalide."
            },
            pwd: {
                required: "Veuillez renseigner votre mot de passe."
            }
        },
        errorPlacement: function(e, r) {
            e.insertAfter("#user_pass", "#connexion_header")
        }
    }), $("#connexion_page").validate({
        rules: {
            login: {
                required: !0,
                regex_email: /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            },
            password: {
                required: !0
            }
        },
        messages: {
            login: {
                required: "Veuillez renseigner votre adresse email",
                regex_email: "Cette adresse email est invalide"
            },
            password: {
                required: "Veuillez renseigner votre mot de passe"
            }
        }
    }), $(".valider_auth").click(function() {
        var e = $(this).closest("form");
        if ("connexion_header" === e.attr("id") && (id = "connexion_header"), "connexion_page" === e.attr("id") && (id = "connexion_page"), $("#" + id).valid()) {
            $("#error_result").remove(), "connexion_header" === e.attr("id") && (user_login = e.find('input[name="log"]').val(), user_password = e.find('input[name="pwd"]').val(), conteneur_error = "#user_pass"), "connexion_page" === e.attr("id") && (user_login = e.find('input[name="login"]').val(), user_password = e.find('input[name="password"]').val(), ad_id = e.find('input[name="ad_id"]').val(), conteneur_error = "#user_password"), e.block({
                message: null,
                overlayCSS: {
                    backgroundColor: "#fff",
                    opacity: .6
                }
            }), e.find('input[name="rememberme"]:checked').size() > 0 ? remember = e.find('input[name="rememberme"]:checked').val() : remember = "";
            var r = {
                action: "ajax_authentification",
                user_login: user_login,
                user_password: user_password,
                remember: remember,
                redirect_to: e.find('input[name="redirect_to"]').val()
            };
            return $.ajax({
                url: sidebar_login_params.ajax_url,
                data: r,
                type: "POST",
                complete : function()
                {
                    e.unblock();
                },
                error : function()
                {
                    e.unblock();
                },
                success: function(response) 
                {
                    e.unblock();
                    if (response.indexOf("<!--SBL-->") >= 0)
                        response = response.split("<!--SBL-->")[1]; // Strip off before SBL

                    if (response.indexOf("<!--SBL_END-->") >= 0)
                        response = response.split("<!--SBL_END-->")[0]; // Strip off anything after SBL_END
                    var result = $.parseJSON(response);
                    if (result.success == 1) {
                        window.location = result.redirect;
                        console.log ("success connexion");
                        createCookie("user_id", result.user_id, 1);
                    } else {
                        error = '<label id="error_result" class="error">' + result.error + '</label>';
                        $(error).insertAfter(conteneur_error, "#" + id + "");
                    }
                }
            }), !1
        }
    }), $("#update_pass_page").validate({
        rules: {
            user_login: {
                required: !0,
                regex_email: /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/gm
            }
        },
        messages: {
            user_login: {
                required: "Veuillez renseigner votre adresse email",
                regex_email: "Cette adresse email est invalide"
            }
        }
    }), $(".update_pass").click(function() {
        if ($("#update_pass_page").valid()) {
            var e = $(this).closest("form");
            user_login = e.find('input[name="user_login"]').val(), e.block({
                message: null,
                overlayCSS: {
                    backgroundColor: "#fff",
                    opacity: .6
                }
            });
            var r = {
                action: "ajax_update_password",
                user_login: user_login,
                redirect_to: e.find('input[name="redirect_to"]').val()
            };
            return $.ajax({
                url: sidebar_login_params.ajax_url,
                data: r,
                type: "POST",
                success: function(r) {
                    r.indexOf("<!--SBL-->") >= 0 && (r = r.split("<!--SBL-->")[1]), r.indexOf("<!--SBL_END-->") >= 0 && (r = r.split("<!--SBL_END-->")[0]);
                    var a = $.parseJSON(r);
                    1 == a.success ? e.submit() : (error = '<label class="error" for="user_login" style="display: block;">' + a.error + "</label>", $(error).insertAfter("#user_login"), e.unblock())
                }
            }), !1
        }
    }), $("#type_user_pro").click(function() {
        $("#type_user_part").is(":checked") && $("#type_user_part").prop("checked", !1)
    }), $("#type_user_part").click(function() {
        $("#type_user_pro").is(":checked") && $("#type_user_pro").prop("checked", !1)
    })
}), $(function() {
    $("#nav-open").on("click touch", function(e) {
        $("#menu-menu-principale").slideToggle("slow")
    })
}), $(function() {
    $(window).scroll(function() 
    {
        if($(".resultat_recherches").length > 0)
        {
            var e = $(".resultat_recherches").offset();
            $(this).scrollTop() > e.top ? ($(".menu-affiner").addClass("fixNavigation"), $(".displaynone").css("display", "block")) : ($(".menu-affiner").removeClass("fixNavigation"), $(".displaynone").css("display", "none"))
        }
    })
}), window.fbAsyncInit = function() {
    FB.init({
        appId: "608272835999768",
        cookie: !0,
        xfbml: !0,
        version: "v2.7"
    })
},
    function(e, r, a) {
        var i, t = e.getElementsByTagName(r)[0];
        e.getElementById(a) || (i = e.createElement(r), i.id = a, i.src = "//connect.facebook.net/en_US/sdk.js", t.parentNode.insertBefore(i, t))
    }(document, "script", "facebook-jssdk"), $.noConflict();

$("#logout_page").click(function () {
    //delete the user_id cookie
    createCookie("user_id", "", -1);
});

/*$("#text_body_popup").on("change paste keyup", function(){
    if ($(this).val().length >= 20) {
        $("#text_body_popup-error").css("display", "none");
    }
});*/
$("#text_body_popup2").on("change paste keyup", function(){
    console.log( $(this).val().length, $.trim($(this).val()).length );
    if ($.trim($(this).val()).length >= 20) {
        $("#text_body_popup2-error").css("display", "none");
    }
});

$("#text_body_bas").on("change paste keyup", function(){
    console.log( $(this).val().length, $.trim($(this).val()).length );
    if ($.trim($(this).val()).length >= 20) {
        $("#text_body_bas-error").css("display", "none");
    }
});

$("#text_body").on("change paste keyup", function(){
    console.log( $(this).val().length, $.trim($(this).val()).length );
    if ($.trim($(this).val()).length >= 20) {
        $("#text_body-error").css("display", "none");
    }
});

$(document).on("change",".envoi_mail", function(){
    var region = $(this).attr("data-region");
    var checkbox_val = [];
    $.each($("input[name='mail"+region+"']"), function(){            
        if ($(this).is(':checked')) {
            checkbox_val.push($(this).val());
        }
    });
    if (checkbox_val.length > 0) {
        if (region == "_popup") {
            $("#text_body_popup2").prop("disabled", true);
        }else{
            $("#text_body"+region).prop("disabled", true);
        }
    }else{
        if (region == "_popup") {
            $("#text_body_popup2").prop("disabled", false);
        }else{
            $("#text_body"+region).prop("disabled", false);
        }
    }
});
$("#loginContainer").hover(function(){
    $("#loginBox").css("display","block");
});
$(".interet").on("change", function(){
   var checkbox_val = [];
    $('.interet:checked').each(function(){
        // Insertion de la valeur de la checkbox dans le tableau checkbox_val
        checkbox_val.push($(this).val());
    });
    if (checkbox_val.length > 0) {
        $("#hidden-check2").val("ok");
        $("#hidden-check2-error").css('display', 'none');
    }else{
        $("#hidden-check2").val("");
        $("#hidden-check2-error").css('display', 'block');
    }
});
jQuery(document).on('click', function(e){
    var $this = $(e.target);
    if(!$this.closest('#loginBox').length){
        $("#loginBox").css("display","none");
    }
});
jQuery(function(){
    jQuery('.slide-programme-neuf').owlCarousel({
        items: 1,
        dragBeforeAnimFinish: !0,
        mouseDrag: !0,
        touchDrag: !0,
        loop:true,
        nav: true,
        navigation:true,
        navText : ["<i class='fa fa-chevron-left'></i>","<i class='fa fa-chevron-right'></i>"],
        autoplay:true,
        autoplayTimeout:300,
        autoplayHoverPause:true
    });

    var carouselMob = function() {
        jQuery('.mob-carousel').owlCarousel({
            items: 1,
            center:true,
            dragBeforeAnimFinish: !0,
            stagePadding: 50,
            mouseDrag: !0,
            touchDrag: !0,
            loop:true,
            nav:false,
            pagination: false,
            navigation:false,
            navText : ["<i class='fa fa-chevron-left'></i>","<i class='fa fa-chevron-right'></i>"],
            autoPlay:true,
            autoplayTimeout:300,
            autoplayHoverPause:true
        });
        console.log('test ...');
    };

    // document.addEventListener('resize', carouselMob);

    if ( jQuery(window).width() <= 992 ) {
        carouselMob();
        slickCarousel();
    } else {
        jQuery('.mob-carousel').addClass('off');
        // jQuery('#etape-carousel').addClass('off');
    }

    jQuery(window).resize(function() {
        if ( jQuery(window).width() <= 992 ) {
            carouselMob();
            // startCarousel();
            slickCarousel();
        } else {
            // jQuery('#etape-carousel').data('owlCarousel').destroy(); 
            jQuery('.mob-carousel').data('owlCarousel').destroy(); 
            jQuery('#etape-carousel').slick('unslick'); 
        }
    });

    function slickCarousel() {
        jQuery('#etape-carousel').slick({
            centerMode: true,
            centerPadding: '60px',
            slidesToShow: 1,
            slidesToScroll: 1,
            autoplay: true,
            accessibility: false,
            autoplaySpeed : 4000,
            arrows: false,
            responsive: [
                {
                    breakpoint: 1600,
                    settings: 'unslick'
                },
                {
                    breakpoint: 992,
                    settings: {
                        arrows: false,
                        centerMode: true,
                        centerPadding: '40px',
                        slidesToShow: 2
                    }
                },
                {
                    breakpoint: 480,
                    settings: {
                        arrows: false,
                        centerMode: true,
                        centerPadding: '40px',
                        slidesToShow: 1
                    }
                }
            ]
        });
    }

});