﻿function CheckRooms(ItemType) {
    var varNumberOfRooms = document.getElementById('MultiSearchBox1_number_of_rooms_' + ItemType);
    var varRoom2Passenger = document.getElementById('tr_room2passenger_' + ItemType);
    var varRoom2Age = document.getElementById('tr_room2age_' + ItemType);
    var varRoom3Passenger = document.getElementById('tr_room3passenger_' + ItemType);
    var varRoom3Age = document.getElementById('tr_room3age_' + ItemType);
    var varRoom2Children = document.getElementById('MultiSearchBox1_room2_children_' + ItemType);
    var varRoom3Children = document.getElementById('MultiSearchBox1_room3_children_' + ItemType);

    if (varNumberOfRooms.value == 1) {
        CheckRoomChildren(1, ItemType);
        varRoom2Passenger.style.display = "none";
        varRoom2Age.style.display = "none";
        varRoom2Children.value = 0;
        varRoom3Passenger.style.display = "none";
        varRoom3Age.style.display = "none";
        varRoom3Children.value = 0;
    }
    else if (varNumberOfRooms.value == 2) {
        CheckRoomChildren(1, ItemType);
        varRoom2Passenger.style.display = "";
        CheckRoomChildren(2, ItemType);
        varRoom3Passenger.style.display = "none";
        varRoom3Age.style.display = "none";
        varRoom3Children.value = 0;
    }
    else if (varNumberOfRooms.value == 3) {
        CheckRoomChildren(1, ItemType);
        varRoom2Passenger.style.display = "";
        CheckRoomChildren(2, ItemType);
        varRoom3Passenger.style.display = "";
        CheckRoomChildren(3, ItemType);
    }
}

function CheckRoomChildren(RoomNum, ItemType) {
    if (document.getElementById("MultiSearchBox1_room" + RoomNum + "_children_" + ItemType).value == 0) 
    {
        document.getElementById("tr_room" + RoomNum + "age_" + ItemType).style.display = "none";
        for (var i = 1; i <= 4; i++) 
        {
            document.getElementById("room" + RoomNum + "_child" + i + "_label_" + ItemType).style.display = "none";
            document.getElementById("room" + RoomNum + "_child" + i + "_" + ItemType).style.display = "none";
        }
    }
    else 
    {
        for (var i = 1; i <= 4; i++) 
        {
            if (i <= document.getElementById("MultiSearchBox1_room" + RoomNum + "_children_" + ItemType).value) {
                document.getElementById("room" + RoomNum + "_child" + i + "_label_" + ItemType).style.display = "block";
                document.getElementById("room" + RoomNum + "_child" + i + "_" + ItemType).style.display = "block";
            }
            else {
                document.getElementById("room" + RoomNum + "_child" + i + "_label_" + ItemType).style.display = "none";
                document.getElementById("room" + RoomNum + "_child" + i + "_" + ItemType).style.display = "none";
            }
        }
        document.getElementById("tr_room" + RoomNum + "age_" + ItemType).style.display = "block";
    }
}
function CheckNightsDependency(ItemType) {
    var TextCheckInDate = document.getElementById("MultiSearchBox1_text_check_in_date_" + ItemType);
    var TextCheckOutDate = document.getElementById("MultiSearchBox1_text_check_out_date_" + ItemType);
    if ((TextCheckOutDate.value != "") && (TextCheckOutDate.value != "")) {
        var CheckOutDateSplit = TextCheckOutDate.value.split(".");
        var CheckInDateSplit = TextCheckInDate.value.split(".");
        var DateNow = new Date();
        DateNow = new Date(DateNow.getFullYear(), DateNow.getMonth(), DateNow.getDate() + BookingDelay);
        var InDay = DateNow.getDate();
        var InMonth = DateNow.getMonth();
        var InYear = DateNow.getFullYear();
        var OutDay = DateNow.getDate();
        var OutMonth = DateNow.getMonth();
        var OutYear = DateNow.getFullYear();
        if (CheckInDateSplit.length > 0)
            InDay = CheckInDateSplit[0];
        if (CheckInDateSplit.length > 1)
            InMonth = CheckInDateSplit[1];
        if (CheckInDateSplit.length > 2)
            InYear = CheckInDateSplit[2];
        if (CheckOutDateSplit.length > 0)
            OutDay = CheckOutDateSplit[0];
        if (CheckInDateSplit.length > 1)
            OutMonth = CheckOutDateSplit[1];
        if (CheckInDateSplit.length > 2)
            OutYear = CheckOutDateSplit[2];
        if (InYear <= (DateNow.getFullYear() - 100))
            InYear = Number(InYear) + 2000;
        if (OutYear <= (DateNow.getFullYear() - 100))
            OutYear = Number(OutYear) + 2000;
        var CheckInDate = new Date(InYear, InMonth - 1, InDay);
        var CheckOutDate = new Date(OutYear, OutMonth - 1, OutDay);
        var Difference = CheckOutDate - CheckInDate;
        var Days = Math.round(Difference / (1000 * 60 * 60 * 24));

        var PosDays = Math.abs(Days);
        if ((PosDays == Days) && (Days < 365)) {
        }
        else {
            CheckOutDate.setDate(CheckOutDate.getDate() - 1);
            InDay = CheckOutDate.getDate();
            InMonth = CheckOutDate.getMonth() + 1;
            InYear = CheckOutDate.getFullYear();
            InDay = new String(InDay);
            InMonth = new String(InMonth);
            InYear = new String(InYear);
            if (InYear.length == 4)
                InYear = Number(InYear) - 2000;
            if (InYear.length == 3)
                InYear = Number(InYear) - 100;
            if (new String(InYear).length == 1)
                InYear = "0" + InYear;
            if (InMonth.length < 2)
                InMonth = "0" + InMonth;
            if (InDay.length < 2)
                InDay = "0" + InDay;
            TextCheckInDate.value = InDay + "." + InMonth + "." + InYear;
        }
    }
}
function CheckNightsDependencyFromCheckIn(ItemType) {
    var TextCheckInDate = document.getElementById("MultiSearchBox1_text_check_in_date_" + ItemType);
    var TextCheckOutDate = document.getElementById("MultiSearchBox1_text_check_out_date_" + ItemType);
    if ((TextCheckOutDate.value != "") && (TextCheckOutDate.value != "")) {
        var CheckOutDateSplit = TextCheckOutDate.value.split(".");
        var CheckInDateSplit = TextCheckInDate.value.split(".");
        var DateNow = new Date();
        DateNow = new Date(DateNow.getFullYear(), DateNow.getMonth(), DateNow.getDate() + BookingDelay);
        var InDay = DateNow.getDate();
        var InMonth = DateNow.getMonth();
        var InYear = DateNow.getFullYear();
        var OutDay = DateNow.getDate();
        var OutMonth = DateNow.getMonth();
        var OutYear = DateNow.getFullYear();
        if (CheckInDateSplit.length > 0)
            InDay = CheckInDateSplit[0];
        if (CheckInDateSplit.length > 1)
            InMonth = CheckInDateSplit[1];
        if (CheckInDateSplit.length > 2)
            InYear = CheckInDateSplit[2];
        if (CheckOutDateSplit.length > 0)
            OutDay = CheckOutDateSplit[0];
        if (CheckInDateSplit.length > 1)
            OutMonth = CheckOutDateSplit[1];
        if (CheckInDateSplit.length > 2)
            OutYear = CheckOutDateSplit[2];
        if (InYear <= (DateNow.getFullYear() - 100))
            InYear = Number(InYear) + 2000;
        if (OutYear <= (DateNow.getFullYear() - 100))
            OutYear = Number(OutYear) + 2000;
        var CheckInDate = new Date(InYear, InMonth - 1, InDay);
        var CheckOutDate = new Date(OutYear, OutMonth - 1, OutDay);
        var Difference = CheckOutDate - CheckInDate;
        var Days = Math.round(Difference / (1000 * 60 * 60 * 24));

        var PosDays = Math.abs(Days);
        if ((PosDays == Days) && (Days < 356)) {
        }
        else {
            CheckInDate.setDate(CheckInDate.getDate() + 7);
            OutDay = CheckInDate.getDate();
            OutMonth = CheckInDate.getMonth() + 1;
            OutYear = CheckInDate.getFullYear();
            OutDay = new String(OutDay);
            OutMonth = new String(OutMonth);
            OutYear = new String(OutYear);
            if (OutYear.length == 4)
                OutYear = Number(OutYear) - 2000;
            if (OutYear.length == 3)
                OutYear = Number(OutYear) - 100;
            if (new String(OutYear).length == 1)
                OutYear = "0" + OutYear;
            if (OutMonth.length < 2)
                OutMonth = "0" + OutMonth;
            if (OutDay.length < 2)
                OutDay = "0" + OutDay;
            TextCheckOutDate.value = OutDay + "." + OutMonth + "." + OutYear;
        }
    }
}
function CheckInDateChanged(ItemType) {
    if (CheckDate("MultiSearchBox1_text_check_in_date_" + ItemType, 0))
        CheckNightsDependencyFromCheckIn(ItemType);
    else
        CheckOutDateChanged(ItemType);
}
function CheckOutDateChanged(ItemType) {
    CheckDate("MultiSearchBox1_text_check_out_date_" + ItemType, 1, ItemType);
    CheckNightsDependency(ItemType);
}
function CheckDate(Element, DateNowPlusDays, ItemType) {
    var DaysToAdd = Number(DateNowPlusDays);
    var CheckDateElement = document.getElementById(Element);
    var CheckDateValue = CheckDateElement.value;
    CheckDateElement.value = "";
    var DateNow = new Date();
    DateNow = new Date(DateNow.getFullYear(), DateNow.getMonth(), DateNow.getDate() + BookingDelay);
    var Day = DateNow.getDate() + DaysToAdd;
    var Month = DateNow.getMonth() + 1;
    var Year = DateNow.getFullYear();
    var DateCorrect = false;
    var IsSplitNum = true;
    var YearEntered = false;
    var CheckInDateSplit = CheckDateValue.split(".");
    if (CheckInDateSplit.length < 2)
        CheckInDateSplit = CheckDateValue.split("/");
    if (CheckInDateSplit.length < 2)
        CheckInDateSplit = CheckDateValue.split("\\");
    if (CheckInDateSplit.length < 2)
        CheckInDateSplit = CheckDateValue.split(" ");
    if (CheckInDateSplit.length < 2) {
        if (CheckDateValue.length == 8) {
            if (isFinite(CheckDateValue)) {
                Day = Number(CheckDateValue.substr(0, 2));
                Month = Number(CheckDateValue.substr(2, 2));
                Year = Number(CheckDateValue.substr(4, 4));
            }
        }
        if (CheckDateValue.length == 6) {
            if (isFinite(CheckDateValue)) {
                Day = Number(CheckDateValue.substr(0, 2));
                Month = Number(CheckDateValue.substr(2, 2));
                Year = Number(CheckDateValue.substr(4, 2));
            }
        }
        if (CheckDateValue.length == 4) {
            if (isFinite(CheckDateValue)) {
                Day = Number(CheckDateValue.substr(0, 2));
                Month = Number(CheckDateValue.substr(2, 2));
            }
        }
    }
    else {
        for (var i = 0; (i < CheckInDateSplit.length) && (IsSplitNum == true); i++) {
            IsSplitNum = false;
            if (isFinite(CheckInDateSplit[i])) {
                IsSplitNum = true;
                if (i == 2 && CheckInDateSplit[i].length == 0)
                    CheckInDateSplit[i] = DateNow.getFullYear();
                else if (i == 2)
                    YearEntered = true;
            }
        }
        if (IsSplitNum) {
            if (CheckInDateSplit.length > 0)
                Day = Number(CheckInDateSplit[0]);
            if (CheckInDateSplit.length > 1)
                Month = Number(CheckInDateSplit[1]);
            if (CheckInDateSplit.length > 2)
                Year = Number(CheckInDateSplit[2]);
            else
                Year = Number(DateNow.getFullYear());
        }
    }
    Year = new String(Year);
    Month = new String(Month);
    Day = new String(Day);
    if (Year.length < 3)
        Year = Number(Year) + 2000;
    else if (Year.length == 3)
        Year = Number(Year) + 1900;
    var TempDate = new Date(Year, Month - 1, Day);
    var CheckDay = TempDate.getDate();
    var CheckMonth = TempDate.getMonth() + 1;
    var CheckYear = TempDate.getFullYear();
    var CheckDate = new Date(CheckYear, CheckMonth, CheckDay);
    if ((CheckYear == Year) && (CheckMonth == Month) && (CheckDay == Day) && ((CheckYear == DateNow.getFullYear()) || (CheckYear == Number(DateNow.getFullYear() + 1) && (CheckMonth <= Number(DateNow.getMonth() + 1)))) && (TempDate >= DateNow)) {
        DateCorrect = true;
    }
    else {
        if (YearEntered == false) {
            if (CheckInDateSplit.length > 0)
                Day = Number(CheckInDateSplit[0]);
            if (CheckInDateSplit.length > 1)
                Month = Number(CheckInDateSplit[1]);
            Year = Number((DateNow.getFullYear() + 1));

            Year = new String(Year);
            Month = new String(Month);
            Day = new String(Day);
            if (Year.length < 3)
                Year = Number(Year) + 2000;
            else if (Year.length == 3)
                Year = Number(Year) + 1900;
            TempDate = new Date(Year, Month - 1, Day);
            CheckDay = TempDate.getDate();
            CheckMonth = TempDate.getMonth() + 1;
            CheckYear = TempDate.getFullYear();
            CheckDate = new Date(CheckYear, CheckMonth, CheckDay);
            if ((CheckYear == Year) && (CheckMonth == Month) && (CheckDay == Day) && ((CheckYear == DateNow.getFullYear()) || (CheckYear == Number(DateNow.getFullYear() + 1) && (CheckMonth <= Number(DateNow.getMonth() + 1)))) && (TempDate >= DateNow))
                DateCorrect = true;
        }
        if (DateCorrect == false) {
            var SetDate = false;
            if (Element == "MultiSearchBox1_text_check_out_date_" + ItemType) {
                var DepartureDate = GetDateFromElement('MultiSearchBox1_text_check_in_date_' + ItemType, 7);
                if (DepartureDate == null)
                    SetDate = true;
                else {
                    Day = DepartureDate.getDate();
                    Month = DepartureDate.getMonth() + 1;
                    Year = DepartureDate.getFullYear();
                }
            }
            else
                SetDate = true;

            if (SetDate) {
                Day = DateNow.getDate();
                Month = DateNow.getMonth() + 1;
                Year = DateNow.getFullYear();
            }
        }
    }
    Year = new String(Year);
    Month = new String(Month);
    Day = new String(Day);
    if (Year.length == 4)
        Year = Number(Year) - 2000;
    if (Year.length == 3)
        Year = Number(Year) - 100;
    if (new String(Year).length == 1)
        Year = "0" + Year;
    if (Month.length < 2)
        Month = "0" + Month;
    if (Day.length < 2)
        Day = "0" + Day;
    CheckDateElement.value = Day + "." + Month + "." + Year;
    return DateCorrect;
}
function GetDateFromElement(Element, DaysToAdd) {
    var CheckDateElement = document.getElementById(Element);
    var CheckDateValue = CheckDateElement.value;
    var DateNow = new Date();
    DateNow = new Date(DateNow.getFullYear(), DateNow.getMonth(), DateNow.getDate() + BookingDelay);
    var IsSplitNum = true;
    var CheckInDateSplit = CheckDateValue.split(".");
    for (var i = 0; (i < CheckInDateSplit.length) && (IsSplitNum == true); i++) {
        IsSplitNum = false;
        if (isFinite(CheckInDateSplit[i]))
            IsSplitNum = true;
    }
    if (IsSplitNum) {
        if (CheckInDateSplit.length > 0) {
            Day = Number(CheckInDateSplit[0]);
            Day = Day + DaysToAdd;
        }
        if (CheckInDateSplit.length > 1)
            Month = Number(CheckInDateSplit[1]);
        if (CheckInDateSplit.length > 2)
            Year = Number(CheckInDateSplit[2]);
    }
    var Year = new String(Year);
    var Month = new String(Month);
    var Day = new String(Day);
    if (Year.length < 3)
        Year = Number(Year) + 2000;
    else if (Year.length == 3)
        Year = Number(Year) + 1900;
    var TempDate = new Date(Year, Month - 1, Day);
    var CheckDay = TempDate.getDate();
    var CheckMonth = TempDate.getMonth();
    var CheckYear = TempDate.getFullYear();
    var CheckDate = new Date(CheckYear, CheckMonth, CheckDay);
    if (((CheckYear == DateNow.getFullYear()) || (CheckYear == Number(DateNow.getFullYear() + 1) && (CheckMonth <= Number(DateNow.getMonth() + 1)))) && (TempDate >= DateNow)) {
        return TempDate;
    }
    return null;
}

function expandCollapse(elementname, elementname1, elementname2, elementname3) {
	expandCollapse(elementname, elementname1, elementname2, elementname3, "");
}
function expandCollapse(elementname, elementname1, elementname2, elementname3, elementname4) {
    var curElement = document.getElementById(elementname);
    if (curElement.style.display == "block")
        curElement.style.display = "block";
    else
        curElement.style.display = "block";
    if (elementname1 != "") {
        var curElement1 = document.getElementById(elementname1);
        if (curElement.style.display == "block")
            curElement1.style.display = "none";
        else
            curElement1.style.display = "none";
    }
    if (elementname2 != "") {
        var curElement2 = document.getElementById(elementname2);
        if (curElement.style.display == "block")
            curElement2.style.display = "none";
        else
            curElement2.style.display = "none";
    }
    if (elementname3 != "") {
        var curElement3 = document.getElementById(elementname3);
        if (curElement.style.display == "block")
            curElement3.style.display = "none";
        else
            curElement3.style.display = "none";
    }
    if (elementname4 != "") {
    	var curElement4 = document.getElementById(elementname4);
    	if (curElement.style.display == "block")
    		curElement4.style.display = "none";
    	else
    		curElement4.style.display = "none";
    }
   }

function CheckOneWay() {
    var varCheckBoxOneWay = document.getElementById('MultiSearchBox1_CheckBoxOneWay');
    var varOneWayFrom = document.getElementById('OneWay');
    var varDropoffLocation = document.getElementById('MultiSearchBox1_DropoffLocation');

    if ((varCheckBoxOneWay != null) && (varCheckBoxOneWay.checked == true)) {
        if (varOneWayFrom != null)
            varOneWayFrom.style.display = "";
    }
    else {
        if (varOneWayFrom != null)
            varOneWayFrom.style.display = "none";
    }
}

function CheckFeatures() {
    var CheckBoxAirCondition = document.getElementById('MultiSearchBox1_PreferAirCondition');
    var CheckBoxAutoGear = document.getElementById('MultiSearchBox1_PreferAutomaticGear');
    if (CheckBoxAirCondition.checked == false)
        CheckBoxAirCondition.checked = false;
    else
        CheckBoxAirCondition.checked = true;
    if (CheckBoxAutoGear.checked == false)
        CheckBoxAutoGear.checked = false;
    else
        CheckBoxAutoGear.checked = true;
}

function CheckFontWeigt(ItemType) {
	var LabelDynaBeach = document.getElementById('MultiSearchBox1_ItemDynaBeach_label');
	var LabelCityTrip = document.getElementById('MultiSearchBox1_ItemCityTrip_label');
    var LabelFlight = document.getElementById('MultiSearchBox1_ItemFlight_label');
    var LabelHotel = document.getElementById('MultiSearchBox1_ItemHotel_label');
    var LabelCar = document.getElementById('MultiSearchBox1_ItemRentalCar_label');

    if (ItemType == "DynaBeach") {
		if(LabelDynaBeach != null)
    		LabelDynaBeach.className = "selected";
    	if (LabelCityTrip != null)
    		LabelCityTrip.className = "";
    	if (LabelFlight != null)
    		LabelFlight.className = "";
    	if (LabelHotel != null)
    		LabelHotel.className = "";
    	if (LabelCar != null)
    		LabelCar.className = "";
    }
    else if (ItemType == "CityTrip") {
	    if (LabelCityTrip != null)
			LabelCityTrip.className = "selected";
        if (LabelDynaBeach != null)
        	LabelDynaBeach.className = "";
        if (LabelFlight != null)
        	LabelFlight.className = "";
        if (LabelHotel != null)
        	LabelHotel.className = "";
        if (LabelCar != null)
        	LabelCar.className = "";
    }
    else if (ItemType == "Flight") {
	    if (LabelFlight != null)
			LabelFlight.className = "selected";
        if (LabelDynaBeach != null)
        	LabelDynaBeach.className = "";
        if (LabelCityTrip != null)
        	LabelCityTrip.className = "";
        if (LabelHotel != null)
        	LabelHotel.className = "";
        if (LabelCar != null)
        	LabelCar.className = "";
    }
    else if (ItemType == "Hotel") {
	    if (LabelHotel != null)
			LabelHotel.className = "selected";
        if (LabelDynaBeach != null)
        	LabelDynaBeach.className = "";
        if (LabelCityTrip != null)
        	LabelCityTrip.className = "";
        if (LabelFlight != null)
        	LabelFlight.className = "";
        if (LabelCar != null)
        	LabelCar.className = "";
    }
    else if (ItemType == "RentalCar") {
	    if (LabelCar != null)
			LabelCar.className = "selected";
        if (LabelDynaBeach != null)
        	LabelDynaBeach.className = "";
        if (LabelCityTrip != null)
        	LabelCityTrip.className = "";
        if (LabelFlight != null)
        	LabelFlight.className = "";
        if (LabelHotel != null)
        	LabelHotel.className = "";
    }
}
