﻿var id_com_pays = '';
var id_aloc_site1 = '';
var id_aloc_site2 = '';
var date_debut_j = '';
var date_fin_j = '';
var date_debut_h = '';
var date_fin_h = '';

function doInit() {

    if (id_com_pays.length == 3) {
        $("#id_com_pays").selectOptions(id_com_pays);
        getSite(id_com_pays);
    }
    if (date_debut_j.length == 10) {
        $("#date_debut").val(date_debut_j);
    }
    if (date_fin_j.length == 10) {
        $("#date_fin").val(date_fin_j);
    }
    if (date_debut_h.length == 5) {
        $("#date_debut_h").selectOptions(date_debut_h);
    }
    if (date_fin_h.length == 5) {
        $("#date_fin_h").selectOptions(date_fin_h);
    }

    $("#date_debut_h").change(function() { $("#date_fin_h").selectOptions($(this).val()); });

    getDateReady();
}

function getSite(id_com_pays) {

    $("#id_aloc_site1").attr('disabled', 'true');
    $("#id_aloc_site1").html('<option value="">Chargement...</option>');
    $("#id_aloc_site2").attr('disabled', 'true');
    $("#id_aloc_site2").html('<option value="">Chargement...</option>');

    if (id_com_pays.length == 3) {
        $.ajax({
            type: "POST",
            url: "/location/ajax/offres-car.asmx/getSiteFromPays",
            data: '{"id_com_pays":"' + id_com_pays + '"}',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(msg) {

                $("#id_aloc_site1").removeOption(/./);
                $("#id_aloc_site2").removeOption(/./);

                var options = '';
                var j = msg.d;

                if (j == null) {
                    var strempty = '<option value="">Aucune agence dans cette région</option>';
                    $("#id_aloc_site1").html(strempty);
                    $("#id_aloc_site2").html(strempty);
                    return;
                }

                for (var i = 0; i < j.length; i++) {
                    if (j[i].mainsite == 'True') {
                        options += '<option value="' + j[i].id_aloc_site + '" selected="selected">' + j[i].nomsite + '</option>';
                    } else {
                        options += '<option value="' + j[i].id_aloc_site + '">' + j[i].nomsite + '</option>';
                    }
                }
                $("#id_aloc_site1").html(options);
                $("#id_aloc_site1").removeAttr('disabled');
                $("#id_aloc_site2").html(options);
                $("#id_aloc_site2").removeAttr('disabled');

                $("#id_aloc_site1").change(function() { $("#id_aloc_site2").selectOptions($(this).val()); });

                setTimeout('preselectsite()', 500)

            }
        });
    } else {
        var strempty = '<option value="">Choisissez une région</option>';
        $("#id_aloc_site1").html(strempty);
        $("#id_aloc_site2").html(strempty);
    }
}

function preselectsite() {
    if (id_aloc_site1.length > 5) {
        $("#id_aloc_site1").selectOptions(id_aloc_site1);
    }
    if (id_aloc_site2.length > 5) {
        $("#id_aloc_site2").selectOptions(id_aloc_site2);
    }
}

function getDateReady() {
    //$('#date_debut').datePicker().val(new Date().addDays(1).asString());
    //$('#date_debut').datePicker().dpSetEndDate(new Date().addDays(120).asString());
    $('#date_debut')
		.datePicker(
    // associate the link with a date picker
			{
			createButton: true,
			startDate: new Date().addDays(3).asString(),
			endDate: new Date().addDays(365).asString()
}
		).bind(
    // when the link is clicked display the date picker
			'click',
			function() {
			    updatePickers($(this).dpGetSelected()[0]);
			    $(this).dpDisplay();
			    return false;
			}
		).bind(
    // when a date is selected update the SELECTs
			'dateSelected',
			function(e, selectedDate, $td, state) {
			    updatePickers(selectedDate);
			    $(this).dpClose();
			    return false;
			}
		).bind(
			'dpClosed',
			function(e, selected) {
			    updatePickers(selected[0]);
			}
		);

    if ($("#date_debut").val().length == 10) {
        $('#date_debut').datePicker().val($("#date_debut").val()).trigger('change');
    } else {
        $('#date_debut').datePicker().val(new Date().addDays(3).asString()).trigger('change');
    }

    if ($("#date_fin").val().length == 10) {
        $('#date_fin').datePicker().val($("#date_fin").val()).trigger('change');
        $('#date_fin').datePicker().dpSetStartDate($('#date_debut').val());
        $('#date_fin').datePicker().dpSetEndDate(new Date($('#date_debut').val()).addDays(120).asString());
    } else {
        $('#date_fin').datePicker().val(new Date().addDays(11).asString());
        $('#date_fin').datePicker().dpSetStartDate(new Date().addDays(3).asString());
        $('#date_fin').datePicker().dpSetEndDate(new Date().addDays(120).asString());
    }

};

function updatePickers(selectedDate) {
    $('#date_fin').datePicker().dpSetStartDate(new Date(selectedDate).asString());
    $('#date_fin').datePicker().dpSetEndDate(new Date(selectedDate).addDays(90).asString());
    $('#date_fin').datePicker().val(new Date(selectedDate).addDays(7).asString()).trigger('change');
}

function formSubmit() {

    var message = '';

    if ($('#id_com_pays').val().length < 3) { message += 'Veuillez renseigner une région\n'; };
    if ($('#id_aloc_site1').val().length < 5) { message += 'Veuillez indiquer une agence de départ\n'; };
    if ($('#id_aloc_site2').val().length < 5) { message += 'Veuillez indiquer une agence de retour\n'; };
    if ($('#date_debut').val().length < 5) { message += 'Veuillez indiquer une date de début\n'; };
    if ($('#date_fin').val().length < 5) { message += 'Veuillez indiquer une date de fin\n'; };

    if (message.length > 0) { alert(message); setTimeout('hideJqm()', 200) } else { setTimeout('doformSubmit()', 500) };

}
function doformSubmit() {
    $('#aspnetForm').submit();
}

function hideJqm() {
    $('#dialog').jqmHide();
}

function changehours(id_agence, first) {
    gethours(id_agence, first)
}
function gethours(id_agence, first) {
    if (first == '1') {
        $("#date_debut_h").attr('disabled', 'true')
        $("#date_debut_h").html('<option value="">Chargement...</option>')
    }
    $("#date_fin_h").attr('disabled', 'true')
    $("#date_fin_h").html('<option value="">Chargement...</option>')
    $.ajax({
        type: "POST",
        url: "/location/ajax/rechloc.asmx/GetHoraires",
        data: '{"id_agence":"' + id_agence + '"}',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg) {
            if (first == '1') { $("#date_debut_h").removeOption(/./); }
            $("#date_fin_h").removeOption(/./);
            var options = ''
            var j = msg.d;
            for (var i = 0; i < j.length; i++) {
                if (j[i].ho == '16:00') {
                    options += '<option value="' + j[i].ho + '" selected="selected">' + j[i].ho + '</option>'
                } else {
                    options += '<option value="' + j[i].ho + '">' + j[i].ho + '</option>'
                }
            }
            if (first == '1') {
                $("#date_debut_h").html(options)
                $("#date_debut_h").removeAttr('disabled')
            }
            $("#date_fin_h").html(options)
            $("#date_fin_h").removeAttr('disabled')
        }
    })
}