$(function(){
    $.datepicker.regional['fr']={
        clearText:'Effacer',
        clearStatus:'',
        closeText:'Fermer',
        closeStatus:'Fermer sans modifier',
        prevText:'Préc',
        prevStatus:'Voir le mois précédent',
        nextText:'Suiv',
        nextStatus:'Voir le mois suivant',
        currentText:'Courant',
        currentStatus:'Voir le mois courant',
        monthNames:['Janvier','Février','Mars','Avril','Mai','Juin',
        'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
        monthNamesShort:['Jan','Fév','Mar','Avr','Mai','Jun',
        'Jul','Aoû','Sep','Oct','Nov','Déc'],
        monthStatus:'Voir un autre mois',
        yearStatus:'Voir un autre année',
        weekHeader:'Sm',
        weekStatus:'',
        dayNames:['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
        dayNamesShort:['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
        dayNamesMin:['Di','Lu','Ma','Me','Je','Ve','Sa'],
        dayStatus:'Utiliser DD comme premier jour de la semaine',
        dateStatus:'Choisir le DD, MM d',
        dateFormat:'dd/mm/yy',
        firstDay:1,
        initStatus:'Choisir la date',
        isRTL:false
    };
    $.datepicker.setDefaults($.datepicker.regional['fr']);
    $("#datepicker").datepicker({
        dateFormat:"mm/yy",
        numberOfMonths:2,
        minDate:'+1',
        maxDate:'+12m',
        altField:"#datepicker-dd",
        altFormat:"d",
        buttonImage:"/CS/images/v4/totem/picto_calendar.gif",
        buttonImageOnly:true,
        showButtonPanel:true,
        closeText:"Fermer",
        showOn:"both",
        onSelect:function(dateText,inst){
            $("#datepicker-dmy").val(dateText);
        }
    });
    $("#dtco").change(function() {
        if ($(this).val() == "FR") {
            affinCityBox("","fra",true);
        } else {
            affinCityBox("","",true);
        }
    });
    $('#radiodesti-label-fr').click(function(){
        $('#radiodestifr').click();
    });
    $('#radiodestifr').click(function(){
        $('#radiodestietr').attr("class","radiodesti");
        if($(this).attr("class")=="radiodesti"){
            $(this).attr("class","radiodesti-actif");
            $("#dtco").load("/partie-gauche/moteur-gauche/getRegionsBox.jsp");
            $("#dtco").val("FR");
            affinCityBox("","fra",true);
        }else{
            $(this).attr("class","radiodesti");
            $("#dtco").load("/partie-gauche/moteur-gauche/getDestinationsBox.jsp");
            affinCityBox("","all");
        }
        return false;
    });
    $('#radiodesti-label-etr').click(function(){
        $('#radiodestietr').click();
    });
    $('#radiodestietr').click(function(){
        $('#radiodestifr').attr("class","radiodesti");
        if($(this).attr("class")=="radiodesti"){
            $(this).attr("class","radiodesti-actif");
            $("#dtco").load("/partie-gauche/moteur-gauche/getPaysBox.jsp");
            affinCityBox("","etr");
        }else{
            $(this).attr("class","radiodesti");
            $("#dtco").load("/partie-gauche/moteur-gauche/getDestinationsBox.jsp");
            affinCityBox("","all");
        }
        return false;
    });

    $('select').change(function() {
        var selectClass = $(this).attr('class');
        $(this).attr('class' , selectClass.replace("form-selected-select" , ""));
    });
});
function affinCityBox(dtci,topville,getDtco){
    if(!dtci){
        dtci="";
    }
    var dtco="";
    if(getDtco){
        dtco=$('#dtco').val();
    }
    if(topville=="fra"){
        dtco="FR";
    }
    $('#dtci').attr("disabled",true);
    if($("#dtco option[value='"+$('#dtco').val()+"']").attr('class')=="option-region" || $("#dtco option[value='"+$('#dtco').val()+"']").attr('class') == "option-region form-selected"){
        $('#dtci').load('/partie-gauche/moteur-gauche/getVillesBox.jsp?c.re='+dtco+'&ville='+dtci+'&topville='+topville);
    }else{
        $('#dtci').load('/partie-gauche/moteur-gauche/getVillesBox.jsp?dtco='+dtco+'&ville='+dtci+'&topville='+topville);
    }
    $('#dtci').attr("disabled",false);
}
function changeNameDesti(){
    if($("#dtco option[value='"+$('#dtco').val()+"']").attr('class')=="option-region" || $("#dtco option[value='"+$('#dtco').val()+"']").attr('class')=="option-region form-selected"){
        $('#dtco').attr('name','c.re');
        if($('#dtci').val()==""){
            $('#hiddenDtco').attr('name','dtco');
            $('#hiddenDtco').attr('value','FR');
        }
    }else{
        $('#dtco').attr('name','dtco');
    }
}
function removeAccent(str){
    var temp=new String(str);
    if(str){
        temp=temp.replace(new RegExp('\u00e9',"g"),'e');
        temp=temp.replace(new RegExp('\u00e8',"g"),'e');
        temp=temp.replace(new RegExp('\u00f9',"g"),'u');
        temp=temp.replace(new RegExp('\u00e0',"g"),'a');
        temp=temp.replace(new RegExp('\u00ea',"g"),'e');
        temp=temp.replace(new RegExp('\u00f4',"g"),'o');
        temp=temp.replace(new RegExp('\u00ee',"g"),'i');
        temp=temp.replace(new RegExp('\u00fb',"g"),'u');
        temp=temp.replace(new RegExp('\u00e2',"g"),'a');
        temp=temp.replace(new RegExp('\u00eb',"g"),'e');
        temp=temp.replace(new RegExp('\u00f6',"g"),'o');
        temp=temp.replace(new RegExp('\u00ef',"g"),'i');
        temp=temp.replace(new RegExp('\u00fc',"g"),'u');
        temp=temp.replace(new RegExp('\u00e4',"g"),'a');
        temp=temp.replace(new RegExp('\u00e7',"g"),'c');
        temp=temp.replace(new RegExp('\u00c1',"g"),'A');
        temp=temp.replace(new RegExp('\u00c2',"g"),'A');
        temp=temp.replace(new RegExp('\u00c3',"g"),'A');
        temp=temp.replace(new RegExp('\u00c4',"g"),'A');
        temp=temp.replace(new RegExp('\u00c5',"g"),'A');
        temp=temp.replace(new RegExp('\u00c8',"g"),'E');
        temp=temp.replace(new RegExp('\u00c9',"g"),'E');
        temp=temp.replace(new RegExp('\u00ca',"g"),'E');
        temp=temp.replace(new RegExp('\u00cb',"g"),'E');
        temp=temp.replace(new RegExp('\u00cc',"g"),'I');
        temp=temp.replace(new RegExp('\u00cd',"g"),'I');
        temp=temp.replace(new RegExp('\u00ce',"g"),'I');
        temp=temp.replace(new RegExp('\u00cf',"g"),'I');
        temp=temp.replace(new RegExp('\u00d2',"g"),'O');
        temp=temp.replace(new RegExp('\u00d3',"g"),'O');
        temp=temp.replace(new RegExp('\u00d4',"g"),'O');
        temp=temp.replace(new RegExp('\u00d5',"g"),'O');
        temp=temp.replace(new RegExp('\u00d6',"g"),'O');
        temp=temp.replace(new RegExp('\u00d9',"g"),'U');
        temp=temp.replace(new RegExp('\u00da',"g"),'U');
        temp=temp.replace(new RegExp('\u00db',"g"),'U');
        temp=temp.replace(new RegExp('\u00dc',"g"),'U');
    }
    return temp;
}
function replaceInvalidChar(str){
    var str=new String(str);
    str=str.replace(new RegExp("&nbsp;","g"),"");
    str=str.replace(new RegExp('\\W',"g"),"-");
    str=str.replace(new RegExp('--+',"g"),"-");
    if(str.length>=2&&str.lastIndexOf("-")==str.length-1)
        return str.substring(0,str.length-1);
    return str;
}
function generateDestinationString(){
    var strDesti="";
    if($('#dtci').val()!=""){
        strDesti=$("#dtci option[value='"+$('#dtci').val()+"']").html();
    }else if($('#dtco').val()!=""){
        strDesti=$("#dtco option[value='"+$('#dtco').val()+"']").html();
    }
    if(strDesti==null||strDesti==""){
        return"thalasseo/";
    }else{
        strDesti=removeAccent(strDesti);
        strDesti=replaceInvalidChar(strDesti);
        strDesti=strDesti.toLowerCase();
        strDesti+="/";
        return strDesti;
    }
}
function searchMainForm(idform){
    var dtciClass = $("#dtci option[value='"+$('#dtci').val()+"']").attr('class');
    if (dtciClass.indexOf("topville-")!=-1) {
        dtciClass = dtciClass.split('-');
        if (dtciClass.length > 2) {
            //case FR
            $("#dtco").attr("name" , "c.re");
            $("#dtco").val(dtciClass[2]);
        } else {
            //case etr
           $("#dtco").val(dtciClass[1]);
        }
    } else if (dtciClass.indexOf("ville-")!=-1) {
        dtciClass = dtciClass.split('-');
        $("#dtco").attr("name" , "c.re");
        $("#dtco").val(dtciClass[1]);
    }
    var fields=$('#'+idform).serializeArray();
    var queryParams="";
    var isValid=true;
    var alertMsg="";
    var showPopupSearch=false;
    jQuery.each(fields,function(i,field){
        if(field.name=="dd"&&field.value=="Jour"){
            field.value=""
        }
        if(field.name=="dmy"&&field.value=="Mois"){
            field.value=""
        }
        if(field.value){
            if(queryParams!=""){
                queryParams+="&"
            }
            queryParams+=field.name+"="+field.value;
        }
    });
    if(queryParams.indexOf("dtco")==-1 && $("#radiodestietr").attr('class')=="radiodesti-actif" && queryParams.indexOf("dtci")==-1){
        isValid=false;
        alertMsg="Veuillez choisir une destination étranger avant de lancer votre recherche.";
    }
    if(queryParams.indexOf("dd")!=-1&&queryParams.indexOf("dmy")==-1){
        isValid=false;
        alertMsg="Veuillez sélectionner votre mois de départ.";
    }
    if(queryParams.indexOf("dtco")==-1&&queryParams.indexOf("dtci")==-1
        &&queryParams.indexOf("c.re")==-1&&queryParams.indexOf("dd")==-1
        &&queryParams.indexOf("dmy")==-1&&queryParams.indexOf("minMan")==-1
        &&queryParams.indexOf("fs")==-1&&isValid){
        isValid=false;
        showPopupSearch=true;
        tb_show("Rechercher","/partie-gauche/moteur-gauche/popup-moteur.jsp?height=300&width=550",false);
    }
    
    var destiSeo=generateDestinationString();
    var url="/"+destiSeo+"retour-moteur/"+queryParams;
    var currentUrl = location.href;
    if (currentUrl.indexOf("thalassotherapie.thalasseo.com") != -1) {
        url = "http://www.thalasseo.com"+url;
    }
    if(isValid){
        $(location).attr('href',url);
    }else if(!showPopupSearch){
        alert(alertMsg);
    }
}
function fillCureExt(){
    if($('#duree').val()=="0,30"){
        $('#hiddenCureExt').val("yes");
    }else{
        $('#hiddenCureExt').val("");
    }
}
