	browser_version= parseInt(navigator.appVersion);
	browser_type = navigator.appName;
	if (browser_type == "Netscape" )
		IsNN=1
	else
		IsNN=0;
	IsCalendar1=false;
	IsCalendar2=false;
	LangID=1;


function ShowCalendar(IsMove)
{
	IsCalendar1=true;
	var calendar = document.getElementById("div_calendar");
	if (IsMove==1)
	{
	    MoveElement("div_calendar","DateFrom","down")
	}
	if (IsMove == 2) {
	    MoveElementRelativeToAbsolute("div_calendar", "DateFrom", "down")
	}
	if (document.getElementById("product_lists")) {
	    CalendarsCount++;
	    document.getElementById("product_lists").style.zIndex = -1;
	}
	calendar.style.visibility = "visible";
	calendar.style.height="210px";
}  // ShowCalendar

function ShowCalendar2(IsMove)
{
	IsCalendar2=true;
	var calendar = document.getElementById("div_calendar2");
	if (IsMove) {
	    MoveElement("div_calendar2", "DateTo", "down")
	}
	if (IsMove == 2) {
	    MoveElementRelativeToAbsolute("div_calendar2", "DateTo", "down")
	}
	if (document.getElementById("product_lists")) {
	    CalendarsCount++;
	    document.getElementById("product_lists").style.zIndex = -1;
	}
	calendar.style.height = "210px";
	calendar.style.visibility = "visible";
//	document.body.onclick="HideCalendar('body');";
}  // ShowCalendar


function HideCalendar()
{
	    if ( document.activeElement )
			    if ( document.activeElement.id=="DateFrom" )
				    return;
	    if ( !IsCalendar1 ) {
		    var calendar=document.getElementById("div_calendar");
		    if ( calendar ) {
				    calendar.style.visibility="hidden";
				    calendar.style.height="1px";
		    }
	    }
	    if (document.getElementById("product_lists")) {
	        if (CalendarsCount > 0) {
	            CalendarsCount--;
	        }
	        if (CalendarsCount == 0) {
	            document.getElementById("product_lists").style.zIndex = 50;
	        }
	    }
}  // HideCalendar()

function HideCalendar2()
{
		if ( document.activeElement )
				if ( document.activeElement.id=="DateTo" )
					return;
		if ( !IsCalendar2 ) {
			var calendar=document.getElementById("div_calendar2");
			if ( calendar ) {
					calendar.style.visibility="hidden";
					calendar.style.height=1;
			}
		}
		if (document.getElementById("product_lists")) {
		    if (CalendarsCount > 0) {
		        CalendarsCount--;
		    }
		    if (CalendarsCount == 0) {
		        document.getElementById("product_lists").style.zIndex = 50;
		    }
		}
}  // HideCalendar()



function expandCollapse ( elementname,elementname1 )
{
 var curElement = document.getElementById ( elementname );
 if ( curElement ) {
	 if (curElement.style.display == "block")
	  	curElement.style.display = "none";
	 else
	    curElement.style.display = "block";
 }
 if (elementname1!="")
 {
 	var curElement1 = document.getElementById ( elementname1 );
	 if ( curElement1 ) {
		 if (curElement.style.display == "block")
		  	curElement1.style.display = "none";
		 else
		    curElement1.style.display = "block";
	 }
 }
}

function hidePulldown(the_window)
	{
		if ( document.getElementById ( "div_searchhelp" ) ) {
				document.getElementById ( "div_searchhelp" ).style.visibility="hidden";
		}
		if ( document.getElementById ( "Duration" ) ) {
			document.getElementById ( "Duration" ).style.visibility="";
		}
	}

function showPulldown(TableName  )
{
		pulldown.style.visibility="";
		hideSelects("Duration",TableName);
}

function MaxDuration(formname  ) {
    if (document.forms[formname].Duration.value) {
        return Number(document.forms[formname].Duration.value.split(" ")[1].replace("=", "").replace("<", ""));
    }
    else {
        return 15;
    }
}  // MaxDuration

function MinDuration(formname  )
{
    if (document.forms[formname].Duration.value) {
        return Number(document.forms[formname].Duration.value.split(" ")[0].replace("=", "").replace(">", ""));
    }
    else {
        return 12;
    }
}  // MinDuration

function Pad0( st )
{
    if ((new String(st)).length == 1) {
        return "0" + st;
    }
		else
				return st;
}  // Pad0



function SetReturnDate(formname)
{
//	var month,year;
//	month=document.forms["form1"].MonthYear.value.slice(0,2)-1;
//	year=document.forms["form1"].MonthYear.value.slice(3);
//	dt = new Date('20'+year,month,document.forms.form1.DayFrom.value);
    //	dt2 = new Date('20'+year,month,document.forms.form1.DayFrom.value);
    if (document.forms[formname].Duration) {
//        if (document.forms[formname].Duration.value) {
            var day, month, year;
            day = document.forms[formname].DateFrom.value.slice(0, 2);
            month = Number(document.forms[formname].DateFrom.value.slice(3, 5));
            month--;
            year = '20' + document.forms[formname].DateFrom.value.slice(6);
            dt = new Date(year, month, day);
            min_duration = MinDuration(formname);
            max_duration = MaxDuration(formname);
            var one_day = 1000 * 60 * 60 * 24;
            if (document.forms[formname].DateTo.value != "") {
                day = document.forms[formname].DateTo.value.slice(0, 2);
                month = document.forms[formname].DateTo.value.slice(3, 5);
                month--;
                year = '20' + document.forms[formname].DateTo.value.slice(6);
                dt2 = new Date(year, month, day);
                //Calculate difference btw the two dates, and convert to days
                var diff = Math.ceil((dt2.getTime() - dt.getTime()) / one_day);
            }
            else {
                dt2 = dt;
                diff = 0;
            }
            if (diff < min_duration) {
                dt2.setTime(dt.getTime() + max_duration * one_day);
                document.forms[formname].DateTo.value = Pad0(dt2.getDate()) + '.' + Pad0(dt2.getMonth() + 1) + '.' + Pad0(dt2.getFullYear() - 2000);
                ChangeDate2(formname);
            }
//        }
    }
}  // SetReturnDate

function ChangeDate(formname,reload_calendar)
{
	var day,month,year;
	day=document.forms[formname].DateFrom.value.slice(0,2);
	month=document.forms[formname].DateFrom.value.slice(3,5);
	year=document.forms[formname].DateFrom.value.slice(6);
	if (reload_calendar==1)
		window.frames["new_calendar"].location.href='/containers/box_calendar.asp?Month='+month+'&Year=20'+year+'&Date='+document.forms[formname].DateFrom.value+'&Table=TABLE1&LangID='+LangID+'&id=11&form='+formname;
	SetReturnDate(formname);
}

function ChangeDate2(formname)
{
	var day,month,year;
	day=document.forms[formname].DateTo.value.slice(0,2);
	month=document.forms[formname].DateTo.value.slice(3,5);
	year=document.forms[formname].DateTo.value.slice(6);
	window.frames["new_calendar2"].location.href='/containers/box_calendar.asp?Month='+month+'&Year=20'+year+'&Date='+document.forms[formname].DateTo.value+'&Table=TABLE1&LangID='+LangID+'&id=12&form='+formname;;
	SetReturnDate(formname);
}

function CheckDate(Element, DateNowPlusDays)
{
		var DaysToAdd = Number(DateNowPlusDays);
    var CheckDateElement = document.getElementById(Element);
		if ( !CheckDateElement ) {
			return false;
		}
    var CheckDateValue = CheckDateElement.value;
		if ( CheckDateValue=="" ) {
			return true;
		}
    CheckDateElement.value = "";
    var DateNow = new Date;
//		if ( DateNow.getMonth()==11 )
//    	DateNow = new Date(DateNow.getFullYear()+1, 0, 1+DaysToAdd)
//		else
    	DateNow = new Date(DateNow.getFullYear(), DateNow.getMonth(), 1+DaysToAdd);
    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());
            }
        }
    }
    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() + 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)) ) {
        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 == "TextReturnDate") {
                var DepartureDate = GetDateFromElement(secondprefix + "TextDepartureDate", 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 CheckAirport() {
    if (!document.getElementById("AIRPORT_ZRH").checked
    && !document.getElementById("AIRPORT_GVA").checked
    && !document.getElementById("AIRPORT_BSL").checked
    && !document.getElementById("AIRPORT_FDH").checked) {
        document.getElementById("NoAirportMessage").style.display = "block"
        document.getElementById("ErrorMsg").style.display = "block";
        return false;
    }
    else {
        document.getElementById("NoAirportMessage").style.display = "none";
        return true;
    }
}

function CheckDestination() {
    if (document.forms.form1.elements["Keyword"].value=="")
    {
        document.getElementById("NoDestinationMessage").style.display = "block"
        document.getElementById("ErrorMsg").style.display = "block";
        return false;
    }
    else {
        document.getElementById("NoDestinationMessage").style.display = "none";
        return true;
    }
}

function ProcessDateKey(e, FieldName, DateNowPlusDays)
{
	if (!e) e=window.event;
	if (e.keyCode==13)
	{
		if (!CheckDate(FieldName,DateNowPlusDays))
		{
			if ( IsNN==1 ) {
				e.preventDefault();
				e.stopPropagation();
			}
			return false;
		}
	}
}  // ProcessDateKey()

function ValidateSearchParam() {
    CheckDate('DateFrom', 6);
    CheckDate('DateTo', 15);
    res = CheckAirport();
    res = CheckDestination() && res;
    if (res) {
        document.getElementById("ErrorMsg").style.display = "none";
    }
    return res;
}