function ValidateStartDate(startdatecal_id, startdatecal_old_id, enddatecal_id, enddatecal_old_id) {

    var startdatecal = document.getElementById(startdatecal_id);
    var enddatecal = document.getElementById(enddatecal_id);

    document.getElementById(startdatecal_old_id).value = startdatecal.value;
    document.getElementById(enddatecal_old_id).value = enddatecal.value;

    var CurrentDate = new Date();

    var startdate = null;
    var sep = '.';

    if(startdatecal.value != "" && startdatecal.value != null){

        var s_arr = startdatecal.value.split(sep);

        var s_day = GetCorrectNumber(s_arr[0]);
        var s_month = GetCorrectNumber(s_arr[1]) - 1;
        var s_year = parseInt(s_arr[2]);

        startdate = new Date(s_year, s_month, s_day);
    }

    if (startdate == "" || startdate == null || startdate < CurrentDate) {
        var d = CurrentDate.getDate();
        var m = CurrentDate.getMonth() + 1;
        var y = CurrentDate.getFullYear();

        startdate = new Date(y, m - 1, d);

        if (d.toString().length == 1)
            d = "0" + d;
        if (m.toString().length == 1)
            m = "0" + m;

        startdatecal.value = d + sep + m + sep + y;
    }

    var enddate = null;
    if (enddatecal.value != "" && startdatecal.value != null) {

        var e_arr = enddatecal.value.split(sep);

        var e_day = GetCorrectNumber(e_arr[0]);
        var e_month = GetCorrectNumber(e_arr[1]) - 1;
        var e_year = parseInt(e_arr[2]);

        enddate = new Date(e_year, e_month, e_day);
    }

    if (enddate == "" || enddate == null || startdate >= enddate) {

        startdate.setDate(startdate.getDate() + 1);
        enddate = startdate;
        var d = enddate.getDate();
        var m = enddate.getMonth() + 1;
        var y = enddate.getFullYear();
        if (d.toString().length == 1)
            d = "0" + d;
        if (m.toString().length == 1)
            m = "0" + m;

        enddatecal.value = d + sep + m + sep + y;
    }
}

function ValidateEndDate(startdatecal_id, startdatecal_old_id, enddatecal_id, enddatecal_old_id) {

    var startdatecal = document.getElementById(startdatecal_id);
    var enddatecal = document.getElementById(enddatecal_id);

    document.getElementById(startdatecal_old_id).value = startdatecal.value;
    document.getElementById(enddatecal_old_id).value = enddatecal.value;

		var CurrentDate = new Date();
    var enddate = null;
    var sep = '.';

    if (enddatecal.value != "" && enddatecal.value != null) {

        CurrentDate.setDate(CurrentDate.getDate() + 1);

        var e_arr = enddatecal.value.split(sep);

        var e_day = GetCorrectNumber(e_arr[0]);
        var e_month = GetCorrectNumber(e_arr[1]) - 1;
        var e_year = parseInt(e_arr[2]);

        var enddate = new Date(e_year, e_month, e_day);
    }

    if (enddate == "" || enddate == null || enddate < CurrentDate) {
        var d = CurrentDate.getDate();
        var m = CurrentDate.getMonth() + 1;
        var y = CurrentDate.getFullYear();

        enddate = new Date(y, m - 1, d);

        if (d.toString().length == 1)
            d = "0" + d;
        if (m.toString().length == 1)
            m = "0" + m;

        enddatecal.value = d + sep + m + sep + y;
    }

    var startdate = null;

    if (startdatecal.value != "" && startdatecal.value != null) {

        var s_arr = startdatecal.value.split(sep);

        var s_day = GetCorrectNumber(s_arr[0]);
        var s_month = GetCorrectNumber(s_arr[1]) - 1;
        var s_year = parseInt(s_arr[2]);

        startdate = new Date(s_year, s_month, s_day);
    }

    if (startdate == "" || startdate == null || startdate >= enddate) {

        enddate.setDate(enddate.getDate() - 1);
        startdate = enddate;
        var d = startdate.getDate();
        var m = startdate.getMonth() + 1;
        var y = startdate.getFullYear();
        if (d.toString().length == 1)
            d = "0" + d;
        if (m.toString().length == 1)
            m = "0" + m;
        startdatecal.value = d + sep + m + sep + y;
    }
}


function GetToursCount(direction_id, city_id, meal_id, distr_id, dayscount_id, tourname_id, startprice_id, endprice_id, place_id, mincom_id, startdate_id, enddate_id, children_id, progressmetter_id)
{
    var direction_ctrl = document.getElementById(direction_id);
    var city_ctrl = document.getElementById(city_id);
    var meal_ctrl = document.getElementById(meal_id);
    var distr_ctrl = document.getElementById(distr_id);
    var dayscount_ctrl = document.getElementById(dayscount_id);
    var tourname_ctrl = document.getElementById(tourname_id);
    var startprice_ctrl = document.getElementById(startprice_id);
    var endprice_ctrl = document.getElementById(endprice_id);
    var startdate_ctrl = document.getElementById(startdate_id);
    var enddate_ctrl = document.getElementById(enddate_id);
    var mincom = document.getElementById(mincom_id);
    var children_ctrl = document.getElementById(children_id);


    var direction = direction_ctrl.options[direction_ctrl.selectedIndex].value;
    var city = city_ctrl.options[city_ctrl.selectedIndex].value;
    var meal = meal_ctrl.options[meal_ctrl.selectedIndex].value;
    var distr = "-1";
    if (distr_ctrl.selectedIndex != -1)
        distr = distr_ctrl.options[distr_ctrl.selectedIndex].value;
    var dayscount = dayscount_ctrl.options[dayscount_ctrl.selectedIndex].value;
    var tourname = tourname_ctrl.value;
    var startprice = startprice_ctrl.value;
    var endprice = endprice_ctrl.value;
    var place = false;
    var startdate = startdate_ctrl.value;
    var enddate = enddate_ctrl.value;
    var children = children_ctrl.options[children_ctrl.selectedIndex].value;

    var mincomvalue = 0;

    if (mincom)
        mincomvalue = mincom.options[mincom.selectedIndex].value;

    if (startprice == "")
        startprice = 0;
    if (endprice == "")
        endprice = 0;

    var place_ctrl_1 = document.getElementById(place_id + "_1");
    if (place_ctrl_1.checked)
        place = true;

    PageMethods.GetToursCount(direction, city, meal, distr, dayscount, tourname, startprice, endprice, place, mincomvalue, startdate, enddate, children, function(result) {
        document.getElementById(progressmetter_id).innerHTML = result;
    })
}

function GetCorrectNumber(num) {
    if (num.length == 2)
        if (num.indexOf("0") == 0)
        num = parseInt(num.substring(1, num.length));
    return parseInt(num);
}
