
// header - more tab drop down menu

function toggleHeaderDDMenu(togMenu)
{
	var menuDiv = document.getElementById('header_dropMenu');
	if(togMenu)
	{
		menuDiv.style.display = "block";
		liWidth = (menuDiv.offsetWidth - 10) + "px";
		menuLink = menuDiv.getElementsByTagName('li');
		for(i=0; i<menuLink.length; i++)
			menuLink[i].style.width = liWidth;
	}
	else menuDiv.style.display = "none";
}

// pop up functions
var popOpenObj;
function closePop(popID) {

    document.getElementById(popID).style.display = 'none';
    document.getElementById('liteBox').style.display = 'none';
    if (document.getElementById('iframeUnder')) {
        document.getElementById('iframeUnder').parentNode.removeChild(document.getElementById('iframeUnder'));
        if (popID == 'PhoneOrderComplete' && document.getElementById('iframeUnder') != null) {
            document.body.removeChild(document.getElementById('iframeUnder'));
        }
    }

    popOpenObj = null;

    if (document.getElementById('interactiveBannerLinkx') != null) {
        run_bannerCycle();
    }
}

function openPop(popID)
{
	document.getElementById('liteBox').style.display = "block";
	document.getElementById('liteBox').style.height = document.body.offsetHeight + 114 + "px";
	document.getElementById(popID).style.visibility='hidden';
	document.getElementById(popID).style.display='block';
	
	leftx = ((document.body.offsetWidth/2) - (document.getElementById(popID).offsetWidth/2));
	topx = ((vpHeight()/2) - (document.getElementById(popID).offsetHeight/2)) + getScrollTop();

	document.getElementById(popID).style.left = leftx + "px";
	document.getElementById(popID).style.top = topx + "px";
	
	var iframeUnderPop = document.createElement('iframe');
	iframeUnderPop.id = "iframeUnder";
	iframeUnderPop.className = "iframeUnder";
	document.body.appendChild(iframeUnderPop);
	iframeUnderPop.frameBorder = 0;
	iframeUnderPop.style.width = document.getElementById(popID).offsetWidth;
	iframeUnderPop.style.height = document.getElementById(popID).offsetHeight;
	iframeUnderPop.style.left = leftx + "px";
    iframeUnderPop.style.top = topx + "px";
	iframeUnderPop.style.visibility = "visible";
	
	document.getElementById(popID).style.visibility='visible';
	popOpenObj = popID;
}
function openPriceDetailsPop(popID) {
    document.getElementById('liteBox').style.display = "block";
    document.getElementById('liteBox').style.height = document.body.offsetHeight + 175 + "px";
    document.getElementById(popID).style.visibility = 'hidden';
    document.getElementById(popID).style.display = 'block';

    leftx = ((document.body.offsetWidth / 2) - (document.getElementById(popID).offsetWidth / 2));
    topx = ((vpHeight() / 2) - (document.getElementById(popID).offsetHeight / 2)) + getScrollTop();

    document.getElementById(popID).style.left = leftx + "px";
    if (popID == 'priceDetails_PopUp')
        document.getElementById(popID).style.top = "900px";
    else
        document.getElementById(popID).style.top = topx + "px";

    var iframeUnderPop = document.createElement('iframe');
    iframeUnderPop.id = "iframeUnder";
    iframeUnderPop.className = "iframeUnder";
    document.body.appendChild(iframeUnderPop);
    iframeUnderPop.frameBorder = 0;
    iframeUnderPop.style.width = document.getElementById(popID).offsetWidth;
    iframeUnderPop.style.height = document.getElementById(popID).offsetHeight;
    iframeUnderPop.style.left = leftx + "px";
    if (popID == 'priceDetails_PopUp')
        iframeUnderPop.style.top = "900px";
    else
        iframeUnderPop.style.top = topx + "px";
    iframeUnderPop.style.visibility = "visible";

    document.getElementById(popID).style.visibility = 'visible';
    popOpenObj = popID;
}
function getScrollTop()
{
	var ScrollTop = document.body.scrollTop;
	if (ScrollTop == 0)
	{
	    if (window.pageYOffset) ScrollTop = window.pageYOffset;
	    else ScrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
	}
	return ScrollTop;
}

function vpHeight() {
return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
}


function closeAll()
{
	if(popOpenObj) closePop(popOpenObj);
}

function toggleDestCountry(destVal)
{
	if (destVal != '0')
	{
		document.getElementById('select_Destination_text').style.display = 'block';
		document.getElementById('Destination_name').style.display = 'block';
	}
	else
	{
		document.getElementById('select_Destination_text').style.display = 'none';
		document.getElementById('Destination_name').style.display = 'none';
	}
}

function toggleKIDS(destVal)
{
	if(destVal=='0')
	{
		document.getElementById('Number_of_kids_show01').style.display = 'none';
		document.getElementById('Number_of_kids_show02').style.display = 'none';
		document.getElementById('Number_of_kids_show03').style.display = 'none';
		document.getElementById('Number_of_kids_show04').style.display = 'none';
	}
	else if(destVal=='1')
	{
	    document.getElementById('Number_of_kids_show01').style.display = '';
	    //document.getElementById("childAge01").value = 3
        document.getElementById('Number_of_kids_show02').style.display = 'none';
		document.getElementById('Number_of_kids_show03').style.display = 'none';
		document.getElementById('Number_of_kids_show04').style.display = 'none';
	}
	else if(destVal=='2')
	{
	    document.getElementById('Number_of_kids_show01').style.display = '';
	    //document.getElementById('childAge01').value = 4;
	    document.getElementById('Number_of_kids_show02').style.display = '';
	    //document.getElementById('childAge02').value = 4;
		document.getElementById('Number_of_kids_show03').style.display = 'none';
		document.getElementById('Number_of_kids_show04').style.display = 'none';
	}
	else if(destVal=='3')
	{
	    document.getElementById('Number_of_kids_show01').style.display = '';
	    //document.getElementById('childAge01').value = 3;
	    document.getElementById('Number_of_kids_show02').style.display = '';
	    //document.getElementById('childAge02').value = 3;
	    document.getElementById('Number_of_kids_show03').style.display = '';
	    //document.getElementById('childAge03').value = 3;
		document.getElementById('Number_of_kids_show04').style.display = 'none';
	}
	else if(destVal=='4')
	{
	    document.getElementById('Number_of_kids_show01').style.display = '';
	    //document.getElementById('childAge01').value = 3;
	    document.getElementById('Number_of_kids_show02').style.display = '';
	    //document.getElementById('childAge02').value = 3;
	    document.getElementById('Number_of_kids_show03').style.display = '';
	    //document.getElementById('childAge03').value = 3;
	    document.getElementById('Number_of_kids_show04').style.display = '';
	    //document.getElementById('childAge04').value = 3;
	}
}
/* tooltip */
function showTooltip(linx, object, Widthx, Heightx)
{
    if (document.getElementById)
	{
		leftx = (findPosX(linx)) + Widthx;
		topx = (findPosY(linx)) + Heightx;
        document.getElementById(object).style.left = leftx+'px';
        document.getElementById(object).style.top = topx+'px';
        document.getElementById(object).style.visibility = 'visible';
        document.getElementById(object).style.display = 'block';
	}
}

function hideTooltip(object) {
    if (document.getElementById)
	{
       document.getElementById(object).style.visibility = 'hidden';
       document.getElementById(object).style.display = 'none';
	}
}

function findPosX(obj)
{
	var curleft = 0;

	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function openPop_toPosition(linx, object)
{
    if (document.getElementById)
	{
		document.getElementById('liteBox').style.display = "block";
		document.getElementById('liteBox').style.height = document.body.offsetHeight + 175 + "px";
		document.getElementById(object).style.display = 'block';

		leftx = ((document.body.offsetWidth/2) - (document.getElementById(object).offsetWidth/2)) + 95;
		topx = ((document.body.offsetHeight/2) - (document.getElementById(object).offsetHeight/2)); 
		//topx = (findPosY(linx)) -400;
        document.getElementById(object).style.left = leftx+'px';
        document.getElementById(object).style.top = topx+'px';
        document.getElementById(object).style.visibility = 'visible';
		
		popOpenObj = object;
	}
}


/* Siblings - Shay's functions */
function getNextSibling(startBrother) {
    endBrother = startBrother.nextSibling;
    while (endBrother.nodeType != 1) {
        endBrother = endBrother.nextSibling;
    }

    return endBrother;
}

function getPrevSibling(startBrother) {
    endBrother = startBrother.previousSibling;
    while (endBrother.nodeType != 1) {
        endBrother = endBrother.previousSibling;
    }

    return endBrother;
}

function upto_250(textObj) {
    //	alert(textObj.value+"\n"+(textObj.value).length);
    if (textObj.value != "") {
        str = (textObj.value).length;
        if (str > 250) {
            textObj.value = textObj.value.substring(0, 250);
            str = (textObj.value).length;
        }
        getNextSibling(textObj).innerHTML = "נותרו " + (250 - str) + " תווים";
    }
    else {
        getNextSibling(textObj).innerHTML = "נותרו 250 תווים";
    }
}

function focusOn_upto250(textObj) {
    if (textObj.value == '(הזן מלל חופשי (עד 250 תווים') {
        textObj.value = '';
        getNextSibling(textObj).innerHTML = "נותרו 250 תווים";
    }
    else {
        textObj.value = textObj.value.substring(0, 250);
        str = (textObj.value).length;
        getNextSibling(textObj).innerHTML = "נותרו " + (250 - str) + " תווים";
    }
}

function blurOn_upto250(textObj) {
    if (textObj.value == '') {
        textObj.value = '(הזן מלל חופשי (עד 250 תווים';
        getNextSibling(textObj).innerHTML = "נותרו 250 תווים";
    }
}

function upto_500(textObj) {
    //	alert(textObj.value+"\n"+(textObj.value).length);
    if (textObj.value != "") {
        str = (textObj.value).length;
        if (str > 500) {
            textObj.value = textObj.value.substring(0, 500);
            str = (textObj.value).length;
        }
        getNextSibling(textObj).innerHTML = "נותרו " + (500 - str) + " תווים";
    }
    else {
        getNextSibling(textObj).innerHTML = "נותרו 500 תווים";
    }
}

function focusOn_upto500(textObj) {
    if (textObj.value == '(הזן מלל חופשי (עד 500 תווים') {
        textObj.value = '';
        getNextSibling(textObj).innerHTML = "נותרו 500 תווים";
    }
    else {
        textObj.value = textObj.value.substring(0, 500);
        str = (textObj.value).length;
        getNextSibling(textObj).innerHTML = "נותרו " + (500 - str) + " תווים";
    }
}

function blurOn_upto500(textObj) {
    if (textObj.value == '') {
        textObj.value = '(הזן מלל חופשי (עד 500 תווים';
        getNextSibling(textObj).innerHTML = "נותרו 500 תווים";
    }
}

function toggleFAQ(lnx) {
    if (lnx.className != "FAQActive") {
        allFAQ_divs = lnx.parentNode.parentNode.getElementsByTagName('div');
        allFAQ_lnks = lnx.parentNode.parentNode.getElementsByTagName('A');
        for (i = 0; i < allFAQ_lnks.length; i++) {
            allFAQ_divs[i].style.display = "none";
            allFAQ_lnks[i].className = "";
        }

        lnx.className = "FAQActive";
        lnx.parentNode.getElementsByTagName('div')[0].style.display = "block";
    }
}

////////LOCATION MAP FUNCTIONS////////
function openLoctionMap(inpId) {
    if (document.location.toString().indexOf('Main.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=Flights&Pos=Middle_right&Type=Button&Label=Show_Map']);
    }
    else if (document.location.toString().indexOf('FlightsResults.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=Flights_Results&Pos=Middle_right&Type=Button&Label=Show_Map']);
    }
    else if (document.location.toString().indexOf('RecommendationAirLines.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=RecommendationAirLines&Pos=Middle_right&Type=Button&Label=Show_Map']);
    }
    else if (document.location.toString().indexOf('FlightsWelcome.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=FlightsWelcome&Pos=Middle_right&Type=Button&Label=Show_Map']);
    }
    else if (true) {
        _gaq.push(['_trackPageview', '/fp/?Page=Homepage&Pos=Middle_right&Type=Button&Label=Show_Map']);
    }
    document.getElementById('inputId').value = inpId;
    document.getElementById('LocationMapBtn').click();
    document.getElementById('liteBox').style.display = "block";
    document.getElementById('liteBox').style.height = document.body.offsetHeight + 100 + "px";
    var Australia_RollOverImg = new Image;
    var Australia_ClickedImg = new Image;
    var Asia_RollOverImg = new Image;
    var Asia_ClickedImg = new Image;
    var Europe_RollOverImg = new Image;
    var Europe_ClickedImg = new Image;
    var Africa_RollOverImg = new Image;
    var Africa_ClickedImg = new Image;
    var SouthAmerica_RollOverImg = new Image;
    var SouthAmerica_ClickedImg = new Image;
    var NorthAmerica_RollOverImg = new Image;
    var NorthAmerica_ClickedImg = new Image;
    var TelAviv_RollOverImg = new Image;
    var TelAviv_ClickedImg = new Image;
    
    Australia_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/Australia_RollOver.png';
    Australia_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/Australia_Clicked.png';
    Asia_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/Asia_RollOver.png';
    Asia_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/Asia_Clicked.png';
    Europe_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/Europe_RollOver.png';
    Europe_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/Europe_Clicked.png';
    Africa_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/Africa_RollOver.png';
    Africa_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/Africa_Clicked.png';
    SouthAmerica_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/SouthAmerica_RollOver.png';
    SouthAmerica_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/SouthAmerica_Clicked.png';
    NorthAmerica_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/NorthAmerica_RollOver.png';
    NorthAmerica_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/NorthAmerica_Clicked.png';
    TelAviv_RollOverImg.src = 'http://www.gulliver.co.il/Images/Map/TelAviv_RollOver.png';
    TelAviv_ClickedImg.src = 'http://www.gulliver.co.il/Images/Map/TelAviv_Clicked.png';
}
function closeMap() {
    document.getElementById('isLocationMapInp').value = "false";
    document.getElementById('LocationMapHolder').style.display = "none";
    closePop('inputId'); //fake input id to give the function for not crashing
}
function doThings(id) {
    if (id == "7") {//Tel aviv
        ReturnDestinationId("TLV", "תל אביב");
    }
    else {
        document.getElementById('continentIdInp').value = id;
        document.getElementById('ContinentBtn').click();
    }
}
function ReturnDestinationId(id, name, country) {
    //replace tilda to comma
    name = name.replace(/~/g, '\'');
    name = name.replace(/@/g, '\"');
    if (country != undefined) {
        country = country.replace(/~/g, '\'');
        country = country.replace(/@/g, '\"');
    }
    if (document.getElementById('inputId').value == '1') {
            document.getElementById('departureFromDestinationInp').value = id;
            document.getElementById('returnToDestinationInp').value = id;
            if (document.getElementById('locationFrom1') != null) {
                var sPath = window.location.pathname;
                var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
                if (sPage == "Index.aspx" || sPage == "") {
                    document.getElementById('locationFrom1').value = name + ' - ' + country;
                }
                else {
                    document.getElementById('locationFrom1').value = name;
                }
            }
            else {
                document.getElementById('locationFromCombine').value = name;
                document.getElementById('departureFromDestinationInp').value = 'TLV';
                document.getElementById('returnToDestinationInp').value = 'TLV';
                document.getElementById('departureToDestinationInp').value = id;
                document.getElementById('returnFromDestinationInp').value = id;
            }
            if (document.getElementById('locationTo2') != null) {
                document.getElementById('locationTo2').value = name;
            }
            document.getElementById('isLocationMapInp').value = "false";
            closeMap();
    }
    else if (document.getElementById('inputId').value == '2') {
            document.getElementById('departureToDestinationInp').value = id;
            document.getElementById('locationTo1').value = name;
            document.getElementById('isLocationMapInp').value = "false";
            closeMap();
    }
    else if (document.getElementById('inputId').value == '3') {
            document.getElementById('returnFromDestinationInp').value = id;
            document.getElementById('locationFrom2').value = name;
            document.getElementById('isLocationMapInp').value = "false";
            closeMap();
        }

        if (document.getElementById('SelectedDestToShow') != null) {
            document.getElementById('SelectedDestToShow').innerText = document.getElementById('locationFrom1').value;
          
        }    
}
////////END OF LOCATION MAP FUNCTIONS////////


////////CALENDAR FUNCTIONS////////
function CloseCalendar() {
    document.getElementById('CalendarHolder').style.display = 'none';
    document.getElementById('isCalendarsInp').value = "false";
    closeDarkPopUp('inputId'); //fake input id to give the function for not crashing
}
function openCalendarPopUP() {
    if (document.getElementById('ToggleSearchBoxInp') != null && document.getElementById('ToggleSearchBoxInp').value == '1') {
        document.getElementById('IsSingleCalendarInp').value = "true";
        document.getElementById('OpenSingleCalendarBtn').click();
    }
    else {
        document.getElementById('isCalendarsInp').value = "true";
        document.getElementById('OpenCalendarBtn').click();
    }
    document.getElementById('liteBox').style.display = "block";
    document.getElementById('liteBox').style.height = document.body.offsetHeight + 100 + "px";
}
function ReturnToParentCalendar(fromDate, toDate) {
        fromDate = fromDate.replace(/\//g, '.');
        toDate = toDate.replace(/\//g, '.');
        //for combine pages
        if (document.getElementById('SearchResult_fromDate') != null) {
            document.getElementById('fromDateInp').value = fromDate;
            document.getElementById('toDateInp').value = toDate;
            document.getElementById('SearchResult_fromDate').value = toDate.substring(0, 6) + toDate.substring(8, 10) + ' - ' + fromDate.substring(0, 6) + toDate.substring(8, 10);
        }
        else {
            document.getElementById('fromDateInp').value = fromDate;
            if (document.getElementById('fromDate') != null) {
                document.getElementById('fromDate').value = fromDate.substring(0, 6) + fromDate.substring(8, 10);
            }
            else {
                document.getElementById('fromDateCombine').value = fromDate.substring(0, 6) + fromDate.substring(8, 10);
            }
            document.getElementById('toDateInp').value = toDate;
            if (document.getElementById('toDate') != null) {
                document.getElementById('toDate').value = toDate.substring(0, 6) + toDate.substring(8, 10);
            }
            else {
                if (document.getElementById('fromDate') != null) {
                    document.getElementById('fromDate').value = toDate.substring(0, 6) + toDate.substring(8, 10) + ' - ' + fromDate.substring(0, 6) + fromDate.substring(8, 10);
                }
                else {
                    document.getElementById('fromDateCombine').value = fromDate.substring(0, 6) + fromDate.substring(8, 10) + ' - ' + toDate.substring(0, 6) + toDate.substring(8, 10);
                }
            }
        }
        //for Packages Results Page (search focus)
        if (document.getElementById('DatesFocusInp') != null) {
            document.getElementById('DatesFocusInp').value = toDate.substring(0, 6) + toDate.substring(8, 10) + ' - ' + fromDate.substring(0, 6) + fromDate.substring(8, 10);
        }
        CloseCalendar();
        if (document.getElementById('IsPAckInp') != null)
            clearRoomComb();
        if (document.getElementById('CheckIfLineUpAllowedBtn') != null) {
            document.getElementById('CheckIfLineUpAllowedBtn').click();
        }

      if (document.getElementById('SelectedFromDateToShow') != null && document.getElementById('SelectedToDateToShow') != null) {
          document.getElementById('SelectedFromDateToShow').innerText = 'מ- ' + document.getElementById('fromDateInp').value.substring(0, 6) + document.getElementById('fromDateInp').value.substring(8, 10);
          document.getElementById('SelectedToDateToShow').innerText = 'עד- ' + document.getElementById('toDateInp').value.substring(0, 6) + document.getElementById('toDateInp').value.substring(8, 10);
        }
}
function CloseSingleCalendar() {
    document.getElementById('SingleCalendarHolder').style.display = 'none';
    document.getElementById('IsSingleCalendarInp').value = "false";
    closeDarkPopUp('inputId'); //fake input id to give the function for not crashing
}
function SetCalendarType(calendarName) {
    document.getElementById('IsCladersOrSingleCalendar').value = calendarName;
}
function ReturnToParentSingleCalendar(fromDate) {
    fromDate = fromDate.replace(/\//g, '.');
    document.getElementById('fromDateInp').value = fromDate;
    document.getElementById('fromDate').value = fromDate.substring(0, 6) + fromDate.substring(8, 10);
    document.getElementById('toDateInp').value = '';
    if (document.getElementById('toDate') != null) {
        document.getElementById('toDate').value = '';
    }
    CloseSingleCalendar();
    if (document.getElementById('GetDestinationResultsBtn') != null) {
        document.getElementById('GetDestinationResultsBtn').click();
    }
    
}
////////END OF SINGLE CALENDAR FUNCTIONS////////

function closeDarkPopUp(popID) {
    if (document.getElementById('CalendarHolder') != null) {
        document.getElementById('CalendarHolder').style.display = 'none';
    }
    if (document.getElementById('SingleCalendarHolder') != null) {
        document.getElementById('SingleCalendarHolder').style.display = 'none';
    }
    if (document.getElementById('LocationMapHolder') != null) {
        document.getElementById('LocationMapHolder').style.display = 'none';
    }
    if (document.getElementById('moreDestination_pop2') != null) {
        document.getElementById('moreDestination_pop2').style.display = 'none';
    }
    if (document.getElementById('OpinionHolder') != null) {
        document.getElementById('OpinionHolder').style.display = 'none';
    }
    if (document.getElementById('ReadOpinionHolder') != null) {
        document.getElementById('ReadOpinionHolder').style.display = 'none';
    }
    closePop(popID);
}
function CheckIfPassangerAllowed(ddlObj, clientCtrlId) {
    if ((typeof (document.getElementById(clientCtrlId + 'AdultNumberDDL')) != 'undefined') && (document.getElementById(clientCtrlId + 'AdultNumberDDL') != null)) {
        var seniorNumber = 0;
        var youthNumber = 0;
        if ((typeof (document.getElementById(clientCtrlId + 'SeniorNumberDDL')) != 'undefined') && (document.getElementById(clientCtrlId + 'SeniorNumberDDL') != null))
            seniorNumber = Number(document.getElementById(clientCtrlId + 'SeniorNumberDDL').value);
        if ((typeof (document.getElementById(clientCtrlId + 'YouthNumberDDL')) != 'undefined') && (document.getElementById(clientCtrlId + 'YouthNumberDDL') != null))
            youthNumber = Number(document.getElementById(clientCtrlId + 'YouthNumberDDL').value);
        adultNumber = Number(document.getElementById(clientCtrlId + 'AdultNumberDDL').value);
        childNumber = Number(document.getElementById(clientCtrlId + 'ChildNumberDDL').value);
        infantNumber = Number(document.getElementById(clientCtrlId + 'InfantNumberDDL').value);

        if ((adultNumber == 0) && (seniorNumber == 0) && (youthNumber == 0)) {
            //ddlObj.selectedIndex = "2";
            alert('יש לבחור מבוגר או פנסיונר או צעיר אחד לפחות');
            if (ddlObj.id == (clientCtrlId + 'InfantNumberDDL')) {
                ddlObj.selectedIndex = 0;
            }
            return false;
        }
        else if ((adultNumber + childNumber + seniorNumber + youthNumber) > 7) {
            ddlObj.selectedIndex = 0; // selectedIndex < 0 ? 0 : selectedIndex;
            alert('לא ניתן לבחור מעל 7 נוסעים (לא כולל תינוקות) בטיסה');
            if (ddlObj.id == (clientCtrlId + 'ChildNumberDDL')) {
                toggleKIDS('0')
            }
            return false;
        }
        else if ((adultNumber + seniorNumber + youthNumber) < infantNumber) {
            alert('לא ניתן לבחור מספר תינוקות גדול ממספר המבוגרים');
            document.getElementById(clientCtrlId + 'InfantNumberDDL').selectedIndex = 0;
            return false;
        }
        else {
            return true;
        }
    }
    else {
        return true;
    }
}


/***********************Start NewsLetter******************************/
function SaveEmail(emailInp, ctrlId) {
    if (emailInp == 1) {
        var email = document.getElementById(ctrlId + '_EmailInp').value;
    }
    else if (emailInp == 2) {
        var email = document.getElementById(ctrlId + '_EmailFailedInp').value;
    }
    else if (emailInp == 3) {
        var email = document.getElementById('EmailInp').value;
    }
    else if (emailInp == 4) {
        var email = document.getElementById('EmailFailedInp').value;
    }
    else if (emailInp == 5) {
        var email = document.getElementById('EmailInp2').value;
    }

    if (email.indexOf("@") == -1 || email.trim().length == 0 || !CheckEMailAddress(email)) {
        if (emailInp != 2 && emailInp != 4) {
            openPop('FailedMail');
        }
    }
    else {
        closePop('FailedMail');
        if (emailInp == 3 || emailInp == 4) {
            _gaq.push(['_trackPageview', '/fp/?Page=DealSummery&Pos=Offer_Strip&Type=Button&Label=Send'])
            document.getElementById('SaveEmailBtn').click();
        }
        else if (emailInp == 5) {
            _gaq.push(['_trackPageview', '/fp/?Page=HomePage&Pos=Offer_Strip&Type=Button&Label=Send'])
            document.getElementById('SaveEmailBtn2' + emailInp).click();
        }
        else {
            _gaq.push(['_trackPageview', '/fp/?Page=HomePage&Pos=Offer_Strip&Type=Button&Label=Send'])
            document.getElementById(ctrlId + '_SaveEmailBtn' + emailInp).click();
        }
        openPop('SuccessNews_Popup');
        if (emailInp == 1) {
            document.getElementById(ctrlId + '_EmailInp').value = "";
        }
        else if (emailInp == 2) {
            document.getElementById(ctrlId + '_EmailFailedInp').value = "";
        }
        else if (emailInp == 3) {
            document.getElementById('EmailInp').value = "";
        }
        else if (emailInp == 4) {
            document.getElementById('EmailFailedInp').value = "";
        }
        else if (emailInp == 5) {
            document.getElementById('EmailInp2').value = "";
        }
    }
}
/***********************END NewsLetter*******************************/

//function to open only the location map 
//the size of the map is dinamic - sending it to be locate when it's in is full size
function openLocationMapPop(popID) {
    document.getElementById('liteBox').style.display = "block";
    document.getElementById('liteBox').style.height = document.body.offsetHeight + 115 + "px";
    document.getElementById(popID).style.visibility = 'hidden';
    document.getElementById(popID).style.display = 'block';

    leftx = ((document.body.offsetWidth / 2) - (document.getElementById(popID).offsetWidth / 2));
    topx = ((vpHeight() / 2) - (567 / 2)) + getScrollTop();

    document.getElementById(popID).style.left = leftx + "px";
    document.getElementById(popID).style.top = topx + "px";

    var iframeUnderPop = document.createElement('iframe');
    iframeUnderPop.id = "iframeUnder";
    iframeUnderPop.className = "iframeUnder";
    document.body.appendChild(iframeUnderPop);
    iframeUnderPop.frameBorder = 0;
    iframeUnderPop.style.width = document.getElementById(popID).offsetWidth;
    iframeUnderPop.style.height = document.getElementById(popID).offsetHeight;
    iframeUnderPop.style.left = leftx + "px";
    iframeUnderPop.style.top = topx + "px";
    iframeUnderPop.style.visibility = "visible";

    document.getElementById(popID).style.visibility = 'visible';
    popOpenObj = popID;
}


/***********************Start NewsLetterRegistration******************************/
function saveDetails(ctrlId) {
    var name = document.getElementById(ctrlId + '_NameInp').value;
    var email = document.getElementById(ctrlId + '_EmailInp').value;
    var phone = document.getElementById(ctrlId + '_PhoneInp').value;
    var isOk = true;
    if (!alphanumeric(name)) {
        document.getElementById('NameValidInp').value = "אנא הזן שם חוקי";
        document.getElementById(ctrlId + '_NameInp').setAttribute("class", "input_InvalidEmail");
        isOk = false;
    }
    else {
        document.getElementById('NameValidInp').value = "";
        document.getElementById(ctrlId + '_NameInp').setAttribute("class", "");
    }
    if (email.length == 0 || !CheckEMailAddress(String(email))) {
        document.getElementById('EmailValidInp').value = "אנא הזן כתובת חוקית";
        document.getElementById(ctrlId + '_EmailInp').setAttribute("class", "input_InvalidEmail");
        isOk = false;
    }
    else {
        document.getElementById('EmailValidInp').value = "";
        document.getElementById(ctrlId + '_EmailInp').setAttribute("class", "");
    }
    if (phone.length > 0) {
        if (!CheckPhoneNumber(phone)) {
            document.getElementById('PhoneValidInp').value = "אנא הזן טלפון חוקי";
            document.getElementById(ctrlId + '_PhoneInp').setAttribute("class", "input_InvalidEmail");
            isOk = false;
        }
        else {
            document.getElementById('PhoneValidInp').value = "";
            document.getElementById(ctrlId + '_PhoneInp').setAttribute("class", "");
        }
    }
    if (isOk) {
        document.getElementById('Get_SuggestPopup_step1').style.display = 'none';
        document.getElementById('Get_SuggestPopup_step2').style.display = 'block';
        document.getElementById(ctrlId + '_SaveDetailsBtn').click();
        document.getElementById(ctrlId + '_NameInp').value = "";
        document.getElementById(ctrlId + '_EmailInp').value = "";
        document.getElementById(ctrlId + '_PhoneInp').value = "";

        //        closePop('Get_SuggestPopup_step1');
        //        openPop('Get_SuggestPopup_step2');
        //document.getElementById('Get_SuggestPopup_step2').style.display = 'block';
        //document.getElementById('Get_SuggestPopup_step1').style.display = 'none';
    }
}
function CheckEMailAddress(EMailAddress) {
    return (/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(EMailAddress));
}
function CheckPhoneNumber(phoneNumber) {
    if (phoneNumber.length != 9 && phoneNumber.length != 10 && phoneNumber.length != 11)
        return false;
    return true;
}
function alphanumeric(alphane) {
    var numaric = alphane;
    for (var j = 0; j < numaric.length; j++) {
        var alphaa = numaric.charAt(j);
        var hh = alphaa.charCodeAt(0);
        if ((hh > 64 && hh < 91) || (hh > 96 && hh < 123) || (hh >= 1488 && hh <= 1514) || (hh == 39) || (hh == 32)) {
        }
        else {
            return false;
        }
    }
    return true;
}
/***********************END NewsLetterRegistration*******************************/


/***********************Start Passengers Number***********************/
function PassengersNumberSelectedClick(clientCtrlId) {
    var paxCount;
    var adultNumDDL = document.getElementById(clientCtrlId + 'AdultNumberDDL');
    var adultNum = adultNumDDL.options[adultNumDDL.selectedIndex].text;
    document.getElementById('adultNumInp').value = adultNum;

    var childNumDDL = document.getElementById(clientCtrlId + 'ChildNumberDDL');
    var childNum = childNumDDL.options[childNumDDL.selectedIndex].text;
    document.getElementById('childNumInp').value = childNum;
    var childAgeArray = [];
    var i = 0;
    var childAgeDDL;
    if (childNum > 0) {
        for (i = 0; i < childNum; i++) {
            childAgeDDL = document.getElementById('childAge0' + (i + 1));
            childAgeArray[i] = childAgeDDL.options[childAgeDDL.selectedIndex].text;
            document.getElementById('childAge' + (i + 1) + 'Inp').value = childAgeDDL.options[childAgeDDL.selectedIndex].text;
        }
    }
    var babyNumDDL = document.getElementById(clientCtrlId + 'InfantNumberDDL');
    var babyNum = babyNumDDL.options[babyNumDDL.selectedIndex].text;
    document.getElementById('babyNumInp').value = babyNum;

    var seniorNumDDL = document.getElementById(clientCtrlId + 'SeniorNumberDDL');
    var seniorNum = seniorNumDDL.options[seniorNumDDL.selectedIndex].text;
    document.getElementById('seniorNumInp').value = seniorNum;

    var youthNumDDL = document.getElementById(clientCtrlId + 'YouthNumberDDL');
    var youthNum = youthNumDDL.options[youthNumDDL.selectedIndex].text;
    document.getElementById('youthNumInp').value = youthNum;

    var paxDesc = "";
    if (adultNum == 1) {
        paxDesc = "מבוגר";
    }
    else if (adultNum > 1) {
        paxDesc = adultNum + " מבוגרים";
    }

    if (seniorNum == 1) {
        paxDesc += adultNum > 0 ? " + " : "";
        paxDesc += "פנסיונר";
    }
    else if (seniorNum > 1) {
        paxDesc += adultNum > 0 ? " + " : "";
        paxDesc += seniorNum + " פנסיונרים";
    }
    if (youthNum == 1) {
        paxDesc += (seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += "צעיר";
    }
    else if (youthNum > 1) {
        paxDesc += (seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += youthNum + " צעיר";
    }

    if (childNum == 1) {
        paxDesc += (youthNum > 0 || seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += "ילד";
    }
    else if (childNum > 1) {
        paxDesc += (youthNum > 0 || seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += childNum + " ילדים";
    }
    if (babyNum == 1) {
        paxDesc += (childNum > 0 || youthNum > 0 || seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += "תינוק";
    }
    else if (babyNum > 1) {
        paxDesc += (childNum > 0 || youthNum > 0 || seniorNum > 0 || adultNum > 0) ? " + " : "";
        paxDesc += babyNum + " תינוק";
    }
    if ((typeof (document.getElementById('PaxNumInp')) != 'undefined') && (document.getElementById('PaxNumInp') != null)) {
        document.getElementById('PaxNumInp').value = paxDesc;
    }
    if (document.getElementById('SelectedCompositionToShow') != null) {
        document.getElementById('SelectedCompositionToShow').innerText = paxDesc;    
    }
    if ((typeof (document.getElementById('PaxNum2Inp')) != 'undefined') && (document.getElementById('PaxNum2Inp') != null)) {
        document.getElementById('PaxNum2Inp').value = paxDesc;
    }

    closePop('Number_passengers_popup');


    if (document.location.toString().indexOf('Flights/Content/Main.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=Flights&Pos=Middle_right&Type=Passenger_Popup&Label=' + (Number(adultNum) + Number(childNum) + Number(babyNum)).toString() + "'"]);
    }
    else if (document.location.toString().indexOf('GulliverPackagesFamily/Content/Main.aspx') != -1) {
        _gaq.push(['_trackPageview', '/fp/?Page=Deals&Pos=Middle_right&Type=Passenger_Popup&Label=' + (Number(adultNum) + Number(childNum) + Number(babyNum)).toString() + "'"]);
    }
    else if (true) {
        _gaq.push(['_trackPageview', '/fp/?Page=Homepage&Pos=Middle_right&Type=Passenger_Popup&Label=' + (Number(adultNum) + Number(childNum) + Number(babyNum)).toString() + "'"]);
    }
}
/***********************END Passengers Number******************************/

function CheckCouponValid() {
    if (document.getElementById('ExtendedCouponCodeTB').value.length != 8) {
        alert('הקופון אינו תקין');
        _gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Cupon&Type=Button&Label=Not_OK'])
        return false;
    }
    if (Number(document.getElementById('ExtendedCouponCodeTB').value) == NaN) {
        alert('הקופון אינו תקין');
        _gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Cupon&Type=Button&Label=Not_OK'])
        return false;
    }
    else {
        document.getElementById('CouponBtn').click();
    }
}

/*********************** Start Flight Destination AutoComplete***********************/
function SetlocationFrom1(source, eventArgs) { 
    if (eventArgs._value.length > 0) {
        document.getElementById('departureFromDestinationInp').value = eventArgs._value.split('~')[0];
        document.getElementById('returnToDestinationInp').value = eventArgs._value.split('~')[0];
        document.getElementById('DestinationTypeIdInp').value = eventArgs._value.split('~')[1];
        document.getElementById('locationFrom1').value = document.getElementById('locationFrom1').value.split(',')[0];
    }
    else {
        document.getElementById('departureFromDestinationInp').value = '';
        document.getElementById('returnToDestinationInp').value = '';
        document.getElementById('DestinationTypeIdInp').value = '';
        document.getElementById('locationFrom1').value = '';
    }
    _gaq.push(['_trackPageview', '/fp/?page=GLV&Pos=search&Type=write_des&Label=' + eventArgs._text.replace(/'/g, "").replace(/\"/g, "")]);

    var j = Sys.UI.DomElement.getLocation(source.get_element());
    var x = j.x - 17;
    var y = j.y + 20;
    $common.setLocation($get("AutoCompletePnl"), new Sys.UI.Point(x, y));
    document.body.focus();

    if(document.getElementById('SelectedDestToShow') != null)
    {
         document.getElementById('SelectedDestToShow').innerText = document.getElementById('locationFrom1').value;
      
    }
}

/*********************** End Flight Destination AutoComplete***********************/

/*********************** Start package AutoComplete***********************/
function SetlocationPackFrom1(source, eventArgs) {
    document.getElementById('departureFromDestinationInp').value = eventArgs._value.split('~')[0];
    document.getElementById('returnToDestinationInp').value = eventArgs._value.split('~')[0];
    document.getElementById('DestinationTypeIdInp').value = eventArgs._value.split('~')[1];
    document.getElementById('locationFrom1').value = document.getElementById('locationFrom1').value.split(',')[0];

    var j = Sys.UI.DomElement.getLocation(source.get_element());
    var x = j.x - 17;
    var y = j.y + 20;
    $common.setLocation($get("AutoCompletePackPnl"), new Sys.UI.Point(x, y));
}
/*********************** End Flight Destination AutoComplete***********************/

/******************************** Start ContactUs ***************************************/
function ContactUsCheckDetails() {
    var name = document.getElementById('NameInp').value;
    var email = document.getElementById('EmailInp').value;
    var reasonSelect = document.getElementById('ReasonSelect')
    var reason = reasonSelect.options[reasonSelect.selectedIndex].text;
    var message = document.getElementById('MessageTA').value;
    if (name.length == 0) {
        alert("אנא, הכנס את שמך");
        return false;
    }
    if (!CheckEMailAddress(email)) {
        alert("אנא, הכנס כתובת אימייל");
        return false;
    }
    if (reason == 'בחר') {
        alert("אנא, בחר מהות פנייה");
        return false;
    }
    if (message.length == 0 || message == "(הזן מלל חופשי (עד 250 תווים") {
        alert("אנא, הכנס את הודעתך");
        return false;
    }
    document.getElementById('SendMailBtn').click();
}
function ContactUsCheckPADetails() {
    var name = document.getElementById('FullNameInp').value;
    var email1 = document.getElementById('Email1PAInp').value.replace(/ /g, "");
    var email2 = document.getElementById('Email2PAInp').value.replace(/ /g, "");
    var message = document.getElementById('PAMessagecontentTA').value;
    var resNo = document.getElementById('ResNoInp').value.replace(/^\s+|\s+$/g, "");
    var PhonePA = document.getElementById('PhonePAInp').value.replace(/ /g, "");
    var rezNo = document.getElementById('ResNoInp').value.replace(/ /g, "");


    var IsOK = true;
    var popUpMessage = '';
    if (rezNo.length == 0)
        {
            popUpMessage += "אנא, הכנס מספר הזמנה";
            document.getElementById('ResNoInp').style.border = "#f24e22 1px solid";
            IsOK= false;
        }
    if (rezNo.length > 0)
        if (isNaN(rezNo)) 
        {
            popUpMessage += "מספר הזמנה לא תקין";
            document.getElementById('ResNoInp').style.border = "#f24e22 1px solid";
            IsOK = false;
        }
    if (name.length == 0) {
        popUpMessage += "\r\nאנא, הכנס את שמך המלא";
        document.getElementById('FullNameInp').style.border = "#f24e22 1px solid";
        IsOK = false;
    }
    if (PhonePA.length == 0) {
        popUpMessage += "\r\nאנא, הכנס טלפון";
        document.getElementById('PhonePAInp').style.border = "#f24e22 1px solid";
        IsOK = false;
    }
    if (isNaN(PhonePA)) {
        popUpMessage += " \r\nמספר טלפון לא תקין";
        document.getElementById('PhonePAInp').style.border = "#f24e22 1px solid";
        IsOK = false;
    }

    if (!CheckEMailAddress(email1)) {
        popUpMessage += "\r\nאנא, הכנס דוא''ל 1";
        document.getElementById('Email1PAInp').style.border = "#f24e22 1px solid";
        IsOK = false;
    }
    if (email2.length > 0)
    {
        if (!CheckEMailAddress(email2)) {
            popUpMessage += "\r\nדוא''ל 2 לא חוקי";
            document.getElementById('Email2PAInp').style.border = "#f24e22 1px solid";
        IsOK = false;
    }
    }
    if (message.length == 0 || message == "(הזן מלל חופשי (עד 500 תווים") {
        popUpMessage += "\r\nאנא, הכנס את תוכן הפניה";
        document.getElementById('PAMessagecontentTA').style.border = "#f24e22 1px solid";
        IsOK = false;
    }

    if(!IsOK)
        alert(popUpMessage);

    return IsOK;

}

function CheckPA(ddlCtl) {
    if (ddlCtl.value == 'פניות הציבור') {
        document.getElementById('Contact1Div').style.display = 'none';
        document.getElementById('Contact2Div').style.display = '';
    }
    else {
        document.getElementById('Contact1Div').style.display = '';
        document.getElementById('Contact2Div').style.display = 'none';
    }

}
/********************************* End ContactUs**************************************/

/********************************* Start CutLongStringWithDirection ***************************************/
function CutLongStringWithDirection(str, requiredLength, direction) {
    if (str != null && str.length > requiredLength) {
        if (direction == "rtl")//** right to left
            str = str.substring(requiredLength) + "..";
        else
            str = ".." + str.substring(requiredLength); //.TrimStart(' ');
    }
    return str;
}
/********************************* End CutLongStringWithDirection ***************************************/

/********************************* Start Guides**************************************/
function BindToolTip(airPortName, airPortDescriptionSpan) {
    document.getElementById('AirPortStrong').innerHTML = airPortName;
    document.getElementById('AirPortDescriptionSpan').innerHTML = airPortDescriptionSpan;
}
/********************************* End Guides**************************************/


//************Map pop up ************
var MapTime = 0
function mapTimeOut() {
    if (MapTime < 6000) {
        MapTime = MapTime + 1;
        setTimeout('mapTimeOut()', 1);
    }
}
function openGoogleMap(mapTab) {
    document.getElementById("hotelDetailsVideoDV").style.display = "block";
    document.getElementById("hotelVideoDiv").style.display = "block";
    document.getElementById("hotelVideoDiv").className = 'hotelVideo_sampleHolder';
    document.getElementById("hotelDetailsVideoDV").className = 'hotelDetails_itemHolder';
    document.getElementById("hotelVideoDiv").className = 'hotelVideo_sampleHolder';
    document.getElementById("hotelDetails_popOpenDIV").style.display = "block";
    document.getElementById("hotelDetails_popOpenDIV").style.height = "auto";
    document.getElementById("hotelDetails_popOpenDIV").visible = true;
    document.getElementById("hotelDetails_hotelMovie").visible = true;
    document.getElementById("hotelDetails_hotelMovie").style.display = "block";
    itemTabs_arr = document.getElementById("hotelDetails_icons").getElementsByTagName("A");
    for (i = 0; i < itemTabs_arr.length; i++)
        if (itemTabs_arr[i].className.indexOf(" hotelDetails_iconSelected") != -1)
            itemTabs_arr[i].className = itemTabs_arr[i].className.split(" hotelDetails_iconSelected")[0];
    mapTab.className += " hotelDetails_iconSelected";

}
function closeGoogleMap() {
    document.getElementById("hotelDetailsVideoDV").style.display = "none";
    document.getElementById("hotelVideoDiv").style.display = "none";
    document.getElementById("hotelDetails_popOpenDIV").style.display = "none";
    document.getElementById("hotelDetails_popOpenDIV").visible = false;
    document.getElementById("hotelDetails_hotelMovie").visible = false;
    document.getElementById("hotelDetails_hotelMovie").style.display = "none";



}
//<![CDATA[
var cm_map;
var cm_mapMarkers = new Array();
var cm_mapHTMLS = new Array();
var icon;
// Create a base icon for all of our markers that specifies the
// shadow, icon dimensions, etc.
// Change these parameters to customize map
var param_wsId = "od6";
var param_ssKey = "o16162288751915453340.5631654799728214695";
var param_useSidebar = true;
var param_titleColumn = "code";
var param_descriptionColumn = "html";
var param_latColumn = "lat";
var param_lngColumn = "lng";
var param_rankColumn = "rank";
var param_iconType = "red";
var param_iconOverType = "orange";

var coordinates;
var hotelsName;
var hotelsImage;
var dealsURL;
var dealsDetails;
var hotelsDetails;
var repetareId;
/**
* Loads map and calls function to load in worksheet data.
*/
function cm_load(coordinates_array) {
    mapTimeOut();
    coordinates = coordinates_array;
    if (GBrowserIsCompatible()) {
        // create the map
        cm_map = new GMap2(document.getElementById("cm_map"));
        cm_map.addControl(new GSmallMapControl());
        cm_map.addControl(new GMapTypeControl());
        cm_map.setCenter(new GLatLng(43.907787, -79.359741), 2);
        cm_map.enableScrollWheelZoom();

        cm_getJSON();
    } else {
        alert("Sorry, the Google Maps API is not compatible with this browser");
    }
}
/** 
* Called when JSON is loaded. Creates sidebar if param_sideBar is true.
* Sorts rows if param_rankColumn is valid column. Iterates through worksheet rows, 
* creating marker and sidebar entries for each row.
* @param {JSON} json Worksheet feed
*/
function cm_loadMapJSON(json) {
    var bounds = new GLatLngBounds();
    var coordinate = new Array();
    var latitudeAverage = 0;
    var longitudeAverage = 0;
    if (typeof coordinates != 'undefined' && coordinates.length > 0) {
        for (i = 0; i < coordinates.length; i++) {
            coordinate = coordinates[i].split('~');
            var entry = json.feed.entry[i];
            var lat = coordinate[0];
            var lng = coordinate[1];
            var point = new GLatLng(lat, lng);
            //** create the marker
            //            var marker = cm_createMarker(point);
            //            cm_map.addOverlay(marker);
            bounds.extend(point);

        }
    }
    cm_map.setZoom(cm_map.getBoundsZoomLevel(bounds));
    cm_map.setCenter(bounds.getCenter(), 11);
    //    var lat = parseFloat(document.getElementById('CentralCityLatitudeInp').value);
    //    var lng = parseFloat(document.getElementById('CentralCityLongitudeInp').value);

}
/**
* Creates marker with ranked Icon or blank icon,
* depending if rank is defined. Assigns onclick function.
* @param {GLatLng} point Point to create marker at
* @param {String} title Tooltip title to display for marker
* @param {String} html HTML to display in InfoWindow
* @param {Number} rank Number rank of marker, used in creating icon
* @return {GMarker} Marker created
*/
function cm_createMarker(point) {
    var markerOpts = {};
    markerOpts = {
        "clickable": false,
        "labelText": "",
        "labelOffset": new GSize(-16, -8)
    };

    var newPoint = point;
    var marker = new LabeledMarker(newPoint, markerOpts);
    cm_map.addOverlay(marker);
    return marker;
}
/**
* Creates a script tag in the page that loads in the 
* JSON feed for the specified key/ID. 
* Once loaded, it calls cm_loadMapJSON.
*/
function cm_getJSON() {

    // Retrieve the JSON feed.
    var script = document.createElement('script');
    script.setAttribute('src', 'http://spreadsheets.google.com/feeds/list'
                         + '/' + param_ssKey + '/' + param_wsId + '/public/values' +
                        '?orderby=column:' + param_rankColumn +
                        '&alt=json-in-script&callback=cm_loadMapJSON');
    script.setAttribute('id', 'jsonScript');
    script.setAttribute('type', 'text/javascript');
    document.documentElement.firstChild.appendChild(script);
}
function drawCircle(lat, lng, radius, strokeColor, strokeWidth, strokeOpacity, fillColor, fillOpacity) {
    var d2r = Math.PI / 180;
    var r2d = 180 / Math.PI;
    var Clat = radius * 0.014483;  // Convert statute miles into degrees latitude
    var Clng = Clat / Math.cos(lat * d2r);
    var Cpoints = [];
    for (var i = 0; i < 33; i++) {
        var theta = Math.PI * (i / 16);
        Cy = lat + (Clat * Math.sin(theta));
        Cx = lng + (Clng * Math.cos(theta));
        var P = new GLatLng(Cy, Cx);
        Cpoints.push(P);
    }
    var polygon = new GPolygon(Cpoints, strokeColor, strokeWidth, strokeOpacity, fillColor, fillOpacity);
    cm_map.addOverlay(polygon);
}
//*************End of Map pop up ***********************//

function CheckPhone(tbName, functionNum, moduleId) {//tbName- name of the phone field needed to be checked; functionNum - which function to do if phone check is ok
    var isOK = false;
    var phone = document.getElementById(tbName.toString()).value;
    var preFix = phone.substring(0, phone.length - 7).replace('-', '');
    var kidomot = document.getElementById('PhonePreFixListInp').value;
    kidomet = kidomot.split(";");
    for (i = 0; i < kidomet.length; i++) {
        if (kidomet[i].trim() == preFix) {
            isOK = true;
        }
    }
    if (isOK == false) {
        if (moduleId == 12) {
            _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
        }
        if (moduleId == 8) {
            _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
        }
        alert('טלפון אינו חוקי');
    }
    else {
        if (moduleId == 12) {
            _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
        }
        if (moduleId == 8) {
            _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
        }
        if (functionNum == 1) {
            CheckWebForm();
        }
        else if (functionNum == 2) {
            CheckCustomerContactDetails();
        }
    }
    return isOK;
}
//*************Start Check Status ***********************//
function SaveFile(fullPathfileName) {
    document.getElementById('FullFileNameInp').value = fullPathfileName
    document.getElementById('SaveFileBtn').click();
}
function SaveEmailForNewsLetter(emailInp) {
    if (emailInp == 1) {
        var email = document.getElementById('editMail').value;
    }
    else if (emailInp == 2) {
        var email = document.getElementById('EmailFailedInp').value;
    }

    if (email.indexOf("@") == -1 || email.trim().length == 0 || !CheckEMailAddress(email)) {
        if (emailInp != 2) {
            closePop('SignupNews');
            openPop('FailedMail');
        }
    }
    else {
        closePop('FailedMail');
        closePop('SignupNews');
        document.getElementById('SaveEmailBtn').click();
        _gaq.push(['_trackPageview', '/fp/?Page=Flights_Main&Pos=Offer_Strip&Type=Button&Label=Send']);
        openPop('SuccessNews_Popup');
        if (emailInp == 2) {
            document.getElementById('EmailFailedInp').value = "";
        }
    }
}

function OpenDocumentPopup(docId) {
    document.getElementById("DocIdInp").value = docId;
    document.getElementById("BindDocPopBtn").click();
}
//*************End Check Status ***********************//

function DestinationChange(thisObj) {
    ReturnDestinationId(thisObj.value, thisObj.options[thisObj.selectedIndex].text, document.getElementById('LM_CountryDDL').options[document.getElementById('LM_CountryDDL').selectedIndex].text); return false;
}

//*************Start Check Site\Internet Lead Details for deal details page ***********************//
function CheckSiteLeadDetails(moduleId) {
    var phone = (document.getElementById('LeadPhoneTB').value).replace("-", "");
    var name = document.getElementById('LeadNameTB').value;
    var error = "";
    if ((phone.length == 0) && (name.length == 0)) {
        error = "יש להזין שם וטלפון";
    }
    else if (name.length == 0) {
        error = "יש להזין שם";
    }
    else if (phone.length == 0) {
        error = "יש להזין טלפון";
    }
    if (error.length > 0) {

        if (moduleId == 11) {
            _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=' + error + ''])
        }
        else if (moduleId == 8) {
            _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Telphone_Details&Type=Button&Label=' + error + ''])
        }
        else if (moduleId == 1) {
            _gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=' + error + ''])
        }
        else if (moduleId == 4) {
            //_gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
        }
        alert(error);
        return false;
    }
    else {
        if (!CheckPhoneNumberForOrder(phone)) {
            if (moduleId == 11) {
                _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
            }
            else if (moduleId == 8) {
                _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
            }
            else if (moduleId == 1) {
                _gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
            }
            else if (moduleId == 4) {
                //_gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
            }
            alert("יש להזין מספר טלפון חוקי");
            return false;
        }
        else {
            //CheckPhone('LeadPhoneTB', 2, 11)
            if (moduleId == 11) {
                _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
            }
            else if (moduleId == 8) {
                _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
            }
            else if (moduleId == 1) {
                _gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
            }
            else if (moduleId == 4) {
                //_gaq.push(['_trackPageview', '/fp/?Page=Charter_Flight_Details&Pos=Telphone_Details&Type=Button&Label=טלפון אינו חוקי'])
            }
            //CheckCustomerContactDetails();
            //_gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Telphone_Details&Type=Button&Label=OK'])
            if (document.getElementById('isPhoneOrderInp') != null) {
                document.getElementById('isPhoneOrderInp').value = "true";
            }
            document.getElementById('SiteLeadOrderBtn').click();
            return true;
        }
    }
}

function CheckInternetLeadDetails(moduleId) {
    var phone = (document.getElementById('WebPhoneTB').value).replace("-", "");
    var name = document.getElementById('WebPrivateNameTB').value;
    var familyName = document.getElementById('WebFamilyNameTB').value;
    var email = document.getElementById('WebMailTB').value;
    var error = "";
    if (!(
       (name.length = 0 || name == 'שם פרטי')
        &&
        (familyName.length = 0 || familyName == 'שם משפחה')
        &&
         (phone.length == 0 || phone == 'טלפון')
        &&
        (email.length = 0 || email == 'כתובת מייל')
       )) {
        if (name.length = 0 || name == 'שם פרטי') {
            error += "נא להזין שם פרטי \r\n";
        }
        if (familyName.length = 0 || familyName == 'שם משפחה') {
            error += "נא להזין שם משפחה \r\n";
        }
        if (email.length = 0 || email == 'כתובת מייל') {
            error += "נא להזין כתובת מייל \r\n";
        }
        else {
            if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email)) {
                error += "נא להזין מייל חוקי\n";
            }
        }
        if (phone.length == 0 || phone == 'טלפון') {
            error += "יש להזין טלפון\n ";
        }
        else if (!CheckPhoneNumberForOrder(phone)) {
            if (moduleId == 11)/*חבילות נופש*/{
                _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Personal_details&Type=Button&Label=טלפון אינו חוקי'])
            }
            else if (moduleId == 8 || moduleId == 1)/*טיסות*/{
                _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Personal_details&Type=Button&Label=טלפון אינו חוקי'])
            }
            error += "יש להזין מספר טלפון חוקי\n";
            alert(error);
            return false;
        }
    }
    if (error != "") {
        if (moduleId == 11) {
            _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Personal_details&Type=Button&Label=' + error.substring(0, 29)])
        }
        else if (moduleId == 8 || moduleId == 1) {
            _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Personal_details&Type=Button&Label=' + error.substring(0, 29)])
        }
        alert(error);
        return false;
    }
    else {
        if (moduleId == 11)/*חבילות נופש*/{
            _gaq.push(['_trackPageview', '/fp/?Page=Deal_Details&Pos=Personal_details&Type=Button&Label=OK'])
        }
        else if (moduleId == 8 || moduleId == 1) {
            _gaq.push(['_trackPageview', '/fp/?Page=Flight_Details&Pos=Personal_details&Type=Button&Label=OK'])
        }
        if (document.getElementById('isWebOrderInp') != null) {
            document.getElementById('isWebOrderInp').value = "true";
        }
        document.getElementById('InternetLeadOrderBtn').click();
    }
    if (moduleId == 1) {
     
        _gaq.push(['_trackPageview', '/fp/?Page=charter_ Flight_Details&Pos= personal_details_Details &Type=Button&Label=המשך']);
    }
    else if (moduleId == 8) {
        _gaq.push(['_trackPageview', '/fp/?Page= Flight_Details&Pos= personal_details_Details &Type=Button&Label=המשך']);
    }
    
}

var isWhole_re = /^\s*\d+\s*$/;
function CheckPhoneNumberForOrder(phone) {
    var isOK = false;
    var prefix = phone.substring(0, phone.length - 7);
    var kidomotList = document.getElementById('PhonePreFixListInp').value; //** list of kidomet from DB
    kidomet = kidomotList.split(";");
    for (i = 0; i < kidomet.length; i++) {
        if (kidomet[i].trim() == prefix) {
            isOK = true;
        }
    }
    if (!isOK) {
        return false;
    }
    else if (phone.length < 9) {
        return false;
    }
    else {
        return String(phone).search(isWhole_re) != -1;
    }
}
//*************End Check Site Lead Details for deal details page ***********************//

//*************Start Check Internet Reservation Details for Reservation page ***********************//
function CheckInternetReservationDetails(moduleName) {
    var flag;
    var error = "";
    var passError = CheckPassengersDetails()/*that function located at all modules*/;
    if (!(passError == "Valid"))
        error = passError;

    if (!CheckDatesValidity()) {
        if (error == "")
            error = "תאריך התוקף שהוזן אינו חוקי, נא להזין שוב";
        else
            error += "\nתאריך התוקף שהוזן אינו חוקי, נא להזין שוב";
        document.getElementById('CardNumber').style.border = "1px solid #f24e22";
    }
    else {
        document.getElementById('CardNumber').style.border = "1px solid #7F9DB9";
    }


    var CreditCardTypeV = document.getElementById("CardTypeDDL");
    var CreditCardTypeValue = CreditCardTypeV.options[CreditCardTypeV.selectedIndex].value;
    if (CreditCardTypeValue == "-1") {
    if (error == "") {
            error = "יש להזין את סוג כרטיס האשראי";
        }
        else {
            error += "\nיש להזין את סוג כרטיס האשראי";
        }
                document.getElementById('CardTypeDDL').style.border = "1px solid #f24e22";
    }
    else {
                document.getElementById('CardTypeDDL').style.border = "1px solid #7F9DB9";
    }

    var CreditCardType = document.getElementById("CardTypeDDL").value;
    CreditCardType = CreditCardType.substr(0, 1)


    var CreditCardNumber = String(document.getElementById("CardNumber").value);
    if ((CreditCardNumber != "2610") && (CreditCardNumber != "2708")) //In order to enable Developers tests
    {
        // If block if the card num is ok,check if user mark the chkBox to agree.
        if (!CheckCreditCardNumber(CreditCardNumber, CreditCardType)) {
            if (error == "") {
                error = "מספר כרטיס אשראי שגוי";
            }
            else {
                error += "\nמספר כרטיס אשראי שגוי";
            }
            document.getElementById('CardNumber').style.border = "1px solid #f24e22";
        }
        else {
            document.getElementById('CardNumber').style.border = "1px solid #7F9DB9";
        }
    }
    else {
        creditApproved = true; //In order to enable Developers tests
        document.getElementById('CardNumber').style.border = "1px solid #7F9DB9";
    }
    var cardLastNumbers = String(document.getElementById("CardIdLastNumbers").value);
    if (cardLastNumbers.length == 0) {
        document.getElementById("CardIdLastNumbers").style.border = "1px solid #f24e22";
        if (error == "")
            error = "יש להזין 3 ספרות אחרונות בגב הכרטיס";
        else
            error += "\nיש להזין 3 ספרות אחרונות בגב הכרטיס";
    }
    else {
        document.getElementById("CardIdLastNumbers").style.border = "1px solid #7F9DB9";
    }

    if (!document.getElementById("chkAgree").checked) {
        if (error == "")
            error = "אנא אשר הסכמתך לתנאים הכלליים";
        else
            error += "\nאנא אשר הסכמתך לתנאים הכלליים";
        document.getElementById('chkAgree').style.border = "1px solid #f24e22";
    }
    else {
        document.getElementById('chkAgree').style.border = "";
    }

    if (!CheckIDNumber(document.getElementById("CardOwnerID").value)) {
        if (error == "")
            error = "מס' ת.ז. המשלם שגוי";
        else
            error += "\nמס' ת.ז. המשלם שגוי";
        document.getElementById('CardOwnerID').style.border = "1px solid #f24e22";
    }
    else {
        document.getElementById('CardOwnerID').style.border = "1px solid #7F9DB9";
    }
    
    var myName = String(document.getElementById("CardOwnerName").value).trim();
    if (myName.length == 0) {
        if (error == "")
            error = "יש להזין שם משלם";
        else
            error += "\nיש להזין שם משלם";
        document.getElementById('CardOwnerName').style.border = "1px solid #f24e22";
    }
    else if (myName.indexOf(' ') == -1) {
        if (error == "")
            error = "בשם המשלם יש להזין שם פרטי ומשפחה";
        else
            error += "\nבשם המשלם יש להזין שם פרטי ומשפחה";
        document.getElementById('CardOwnerName').style.border = "1px solid #f24e22";
    }
    else if (moduleName != 'מלונות בישראל_')
    {
        if(!IsEnglishString(myName)) {
            if (error == "")
                error = "שם בעל הכרטיס חייב להיות באנגלית";
            else
                error += "\nשם המשלם חייב להיות באנגלית";
            document.getElementById('CardOwnerName').style.border = "1px solid #f24e22";
        }
        else {
            document.getElementById('CardOwnerName').style.border = "1px solid #7F9DB9";
        }
    }
    else {
        document.getElementById('CardOwnerName').style.border = "1px solid #7F9DB9";
    }
    
   

    if (!CheckIfIdIsInDataBase())/*that function located at all modules*/
    {
        if (error == "")
            error = "תעודת הזהות של בעל כרטיס האשראי חייבת להיות של אחד הנוסעים";
        else
            error += "\nתעודת הזהות של בעל כרטיס האשראי חייבת להיות של אחד הנוסעים";
    }
    var phoneError = CheckPhones();
    if (phoneError.length > 0) {
        if (error.length == 0)
            error = phoneError;
        else
            error += "\n" + phoneError;
    }

    // check if no error occured
    if (error == "") {
        _gaq.push(['_trackPageview', '/fp/?Page=Payment_Details&Pos=Submit_Order&Type=Button&Label=' + moduleName + document.getElementById('ReservationIdInp').value + '_OK']);
        if (document.getElementById("isOrderDealInp") != null)
            document.getElementById("isOrderDealInp").value = "true";
        document.getElementById("submitHref").style.visibility = "hidden";
        document.getElementById("CheckDoubleReservationBtn").click();
        return true;
    }
    else {
        alert(error);
        _gaq.push(['_trackPageview', '/fp/?Page=Payment_Details&Pos=Submit_Order&Type=Button&Label=' + moduleName + document.getElementById('ReservationIdInp').value + '_' + error]);
        return false;
    }
}

function CheckDatesValidity() {
    var YearNow, MonthNow, MonthChoosen, YearChoosen;
    YearNow = document.getElementById("YearInp").value;
    MonthNow = document.getElementById("MonthInp").value;
    YearChoosen = document.getElementById("YearExpireDDL").options[document.getElementById("YearExpireDDL").selectedIndex].text;
    MonthChoosen = document.getElementById("MonthExpireDDL").options[document.getElementById("MonthExpireDDL").selectedIndex].text;
    if (parseFloat(YearNow) < parseFloat(YearChoosen)) {
        return true;
    }
    else if (parseFloat(YearNow) == parseFloat(YearChoosen) && parseFloat(MonthNow) < parseFloat(MonthChoosen)) {
        return true;
    }
    else {
        return false;
    }
}

function IsEnglishString(str) {
    var asciiChr;
    for (i = 0; i < str.length; i++) {
        asciiChr = str.charCodeAt(i);
        if ((asciiChr < 32) || (asciiChr > 32 && asciiChr < 65) ||
                    (asciiChr > 90 && asciiChr < 97) || (asciiChr > 122)) {
            return false;
        }
    }
    return true;
}  


function CheckPhones() {
    var error = "";
    var Phone = String(document.getElementById("CardOwnerPhone").value);
    var MPhone = String(document.getElementById("CardOwnerMPhone").value);
    var Email = String(document.getElementById("CardOwnerEmail").value);
    if (Email.length == 0) {
        error = "עליך להזין כתובת דוא''ל";
        document.getElementById('CardOwnerEmail').style.border = "1px solid #f24e22";
    }
    else {
        document.getElementById('CardOwnerEmail').style.border = "1px solid #7F9DB9";
    }

    if (Phone.length > 0) {
        if (!CheckNumber(Phone, 7, 0)) {
            if (error.length == 0) {
                error = "הקש מספר ספרות מדוייק בטלפון";
            }
            else {
                error += "\nהקש מספר ספרות מדוייק בטלפון";
            }
            document.getElementById('CardOwnerPhone').style.border = "1px solid #f24e22";
        }
        else {
            document.getElementById('CardOwnerPhone').style.border = "1px solid #7F9DB9";
        }
    }
    else {
        document.getElementById('CardOwnerPhone').style.border = "1px solid #7F9DB9";
    }

    if (MPhone.length > 0) {
        if (!CheckNumber(MPhone, 7, 0)) {
            if (error.length == 0)
                error = "הקש מספר ספרות מדוייק בטלפון הנוסף";
            else
                error += "\nהקש מספר ספרות מדוייק בטלפון הנוסף";
            document.getElementById('CardOwnerMPhone').style.border = "1px solid #f24e22";
        }
        else {
            document.getElementById('CardOwnerMPhone').style.border = "1px solid #7F9DB9";
        }
    }
    else {
        document.getElementById('CardOwnerMPhone').style.border = "1px solid #7F9DB9";
    }
    //Make sure that the client entered one of the  phones
    if (Phone.length == 0) {
        if (error.length == 0)
            error = "עליך להזין לפחות מספר טלפון אחד";
        else
            error += "\nעליך להזין לפחות מספר טלפון אחד";
        document.getElementById('CardOwnerPhone').style.border = "1px solid #f24e22";
    }
    else {
        document.getElementById('CardOwnerPhone').style.border = "1px solid #7F9DB9";
    }
    return error;
}
//*************End Check Internet Reservation Details for Reservation page ***********************//


//*************Start Validate Functions***********************//
//
//
//  Function which checks the CreditCard Number
//  Returns True or False
//		1. Check Type of Credit Card and Number of Digits
//			Visa , MasterCard - Number of Digits in card 16	Type - V or M
//			Dinners - Number of Digits in card 14			Type - D
//			American Express - Number of Digits in card 15	Type - A
//			IsraCard - Number of Digits in card 8 or 9		Type - I
//  	2. Check Number using Luhn Check Digit Algorithm
function CheckCreditCardNumber(CreditCardNumber, CreditCardType) {
    //demo credit card
    if (CreditCardNumber == 2610 || CreditCardNumber == 2708) {
        return (true);
    }
    CreditCardType.toUpperCase();
    var CreditCardTypeSupported = true;
    // Declare RegularExpression by the type of the CreditCard
    switch (CreditCardType) {
        // Visa type  
        case "V":
            CreditCardNumberRegExp = new RegExp("^(\\d{4})[- ]?(\\d{4})[- ]?(\\d{4})[- ]?(\\d{4})$");
            break;
        // MasterCard type  
        case "M":
            CreditCardNumberRegExp = new RegExp("^(\\d{4})[- ]?(\\d{4})[- ]?(\\d{4})[- ]?(\\d{4})$");
            break;
        // Dinners type  
        case "D":
            CreditCardNumberRegExp = new RegExp("^(\\d{4})[- ]?(\\d{6})[- ]?(\\d{4})$");
            break;
        case "I":
            CreditCardNumberRegExp = new RegExp("^(\\d{4})[- ]?(\\d{4,5})$");
            break;
        // American Express  
        case "A":
            CreditCardNumberRegExp = new RegExp("^(\\d{4})[- ]?(\\d{4,6})[- ]?(\\d{5})$");
            break;
        // Otherwise return True for function !!!  
        default:
            CreditCardNumberRegExp = new RegExp("^(\\d{8,24})$");
            CreditCardTypeSupported = false;
            break;
    };
    // Check if CreditCard type is supported
    // if so check it, else return True
    CreditCardNumberRegExp.exec(CreditCardNumber);
    var PureCreditCardNumber = RegExp.$1 + RegExp.$2 + RegExp.$3 + RegExp.$4;
    if (CreditCardType != "I") {
        // Check that CreditCard matches RegularExpression and that is not
        // built from Zeros 0000-0000-0000-0000			
        if (CreditCardNumberRegExp.test(CreditCardNumber) && (parseInt(PureCreditCardNumber, 10) > 0)) {
            if (CreditCardTypeSupported) {
                var Total = 0;
                var MultipliedDigit = 0;
                var DigitPosition = 1;
                // Summaries digits with Luhn Check Digit Algorithm
                for (DigitIndex = (PureCreditCardNumber.length - 1); DigitIndex >= 0; DigitIndex--) {
                    MultipliedDigit = (DigitPosition % 2) == 0 ? parseInt(PureCreditCardNumber.charAt(DigitIndex), 10) * 2 : parseInt(PureCreditCardNumber.charAt(DigitIndex), 10);
                    if (MultipliedDigit > 9) {
                        MultipliedDigit -= 9;
                    };
                    Total += MultipliedDigit;
                    DigitPosition++;
                };
                // If summary divided by 10 then CreditCard is valid
                if ((Total % 10) == 0) {
                    CheckCreditCardNumber.PureCreditCardNumber = PureCreditCardNumber;
                    return (true);
                } else {
                    // Otherwise CreditCard is invalid
                    CheckCreditCardNumber.PureCreditCardNumber = "";
                    return (false);
                }
                // CreditCard type unsupported
            } else {
                CheckCreditCardNumber.PureCreditCardNumber = PureCreditCardNumber;
                return (true)
            };
        } else {
            CheckCreditCardNumber.PureCreditCardNumber = "";
            return (false);
        };
    } else if (CreditCardNumberRegExp.test(CreditCardNumber) && (parseInt(PureCreditCardNumber, 10) > 0)) {
        // Check IsraCard type
        if (parseInt(PureCreditCardNumber, 10) > 0) {
            while (PureCreditCardNumber.length < 8) {
                PureCreditCardNumber = "0" + PureCreditCardNumber;
            };
            var Total = 0;
            for (DigitIndex = 7; DigitIndex >= 0; DigitIndex--) {
                Total += parseInt(PureCreditCardNumber.charAt(DigitIndex), 10) * (8 - DigitIndex);
            };
            if ((Total % 11) == 0) {
                CheckCreditCardNumber.PureCreditCardNumber = PureCreditCardNumber;
                return (true);
            } else {
                CheckCreditCardNumber.PureCreditCardNumber = "";
                return (false);
            };
        };
        CheckCreditCardNumber.PureCreditCardNumber = "";
        return (false);
    } else {
        CheckCreditCardNumber.PureCreditCardNumber = "";
        return (false);
    };
};
//  Function which validate the ID Number (Israeli format)
//  Returns True or False
//  and return the Pure ID Number built only from Digits (9 length digit string)
//		1. Checking number of Digits - allowed between 7 and 9 digits
//  	2. Checking using the Validation Digit
function CheckIDNumber(IDNumber) {
    //		if(new String(IDNumber).lenght < 9)
    //			return false;

    // Declare RegularExpressions for ID Number with Dashes and For ID Number without Dashes
    IDNumberRegExp = new RegExp("^(\\d|\\d-)?(\\d{5,7})(-?\\d)$");
    PureIDNumberRegExp = new RegExp("^(\\d?)-?(\\d{5,7})-?(\\d)$");
    PureIDNumberRegExp.exec(IDNumber);
    var PureIDNumber = RegExp.$1 + RegExp.$2 + RegExp.$3;
    // Check if ID Number matches RegularExpression of ID Number with Dashes
    // and if the ID Number isn't 0-0000000-0
    if (IDNumberRegExp.test(IDNumber) && (parseInt(PureIDNumber, 10) > 0)) {
        // validate that ID number is 9 Digits - adds "0" before number
        while (PureIDNumber.length < 9) {
            PureIDNumber = "0" + PureIDNumber;
        }
        var Total = 0;
        var MultipliedDigit = 0;
        // Get summary by Luhn Check Digit Algorithm
        for (DigitIndex = 0; DigitIndex <= 7; DigitIndex++) {
            MultipliedDigit = parseInt(PureIDNumber.charAt(DigitIndex)) * ((Math.ceil(DigitIndex / 2)) - (Math.floor(DigitIndex / 2)) + 1);
            Total += ((Math.floor(MultipliedDigit / 10)) + (10 * ((MultipliedDigit / 10) - (Math.floor(MultipliedDigit / 10)))));
        }
        // Check the Validation Digit with the summary that we've got
        // Round the summary we've got to the next divided by 10 number
        // and check the diffrent between the rounded number and the 
        // summary, needed to be equal to validation digit
        if (parseInt((10 * (Math.ceil(Total / 10))) - Total) == (parseInt(PureIDNumber.charAt(8)))) {
            CheckIDNumber.PureIDNumber = PureIDNumber;
            return (true);
            // Otherwise Not a valid ID Number
        } else {
            CheckIDNumber.PureIDNumber = "";
            return (false);
        }
    } else {
        CheckIDNumber.PureIDNumber = "";
        return (false);
    };
};
function CheckNumber(NumberValue, TotalDigits, DecimalDigits) {
    var RegExpString = "^(\\d{0," + (TotalDigits - DecimalDigits) + "})(\\.(\\d{0," + DecimalDigits + "}))?$";
    var NumberRegExp = new RegExp(RegExpString);
    retVal = null;

    if (NumberRegExp.test(NumberValue)) {
        NumberRegExp.exec(NumberValue);
        var Integer = RegExp.$1.valueOf();
        var Decimal = RegExp.$3.valueOf();
        retVal = true;
    } else {
        retVal = false;
    }
    return retVal;
}
//*************Start Validate Functions ***********************//

//************* Start Advertisment Coupon Popup fro DealSummary & CheckStatus Page ***********************//

function OpenBannerPopup(rowNo) {
    document.getElementById('RowNoInp').value = rowNo;
    document.getElementById('CouponPopupDetailsBtn').click();

}

//************* End Advertisment Coupon Popup fro DealSummary & CheckStatus Page ***********************//

//************* Start Guide Page ***********************//
function BindSuggestPopup(hotelName, moreInfoLink, pic1, pic2, pic3) {
    document.getElementById('HotelNameH2').innerHTML = hotelName;
    document.getElementById('InnerTextDiv').innerHTML = "<div class=\"ImgGallery\">" +
		                                                    "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"compr_ImgTable\">" +
					                                            "<tr>" +
						                                            "<td class=\"right\"><div class=\"compr_ImgTableFrame\"><img src=\"../images/compr_ImgTableArro.png\" width=\"9\" height=\"22\" alt=\"\" class=\"compr_ImgTableArro1\" /><img src=\"" + pic1 + "\" height=\"101\" width=\"150\" alt=\"\" class=\"compr_ImgTableImg\" /></div></td>" +
                                                                        "<td><ul>" +
								                                            "<li><a href=\"javascript: void(0);\" onmouseover=\"toggle_compareGallery(this, 1); return false;\"><img src=\"" + pic1 + "\" height=\"31\" width=\"50\" alt=\"\"/></a></li>" +
								                                            "<li><a href=\"javascript: void(0);\" onmouseover=\"toggle_compareGallery(this, 2); return false;\"><img src=\"" + pic2 + "\" height=\"31\" width=\"50\" alt=\"\"/></a></li>" +
								                                            "<li class=\"last\"><a href=\"javascript: void(0);\" onmouseover=\"toggle_compareGallery(this, 3); return false;\"><img src=\"" + pic3 + "\" height=\"31\" width=\"50\" alt=\"\"/></a></li>" +
							                                            "</ul></td>" +
					                                            "</tr>" +
				                                            "</table>" +
		                                                "</div> " + moreInfoLink;
    //document.getElementById('InnerTextDiv').innerHTML + hotelName;

    //document.getElementById('InnerTextDiv').value = moreInfoLink;
}
//************* End Guide Page ***********************//

/*********************** Start Agent Name AutoComplete For Reservation Page***********************/
function SaveAgentName(source, eventArgs) {
    if (eventArgs._value.length > 0) {
        document.getElementById('AgentNameInp').value = eventArgs._value;
    }
}
function CheckClearTextBox(tb) {
    if (tb.value.length == 0)
        document.getElementById('AgentNameInp').value = "";
}
/*********************** End Agent Name AutoComplete  For Reservation Page***********************/

/*********************** Start SalePage Lead***********************/
function isPopUpEnable(enable, dealID, pageId) {
    document.getElementById("DealIDInp").value = dealID;
    if (enable == 'True') {      
      
            openPop('PhoneReturned_PopUp');       
    }
}

function ClosePhonePopUp() {
    document.getElementById('PhoneReturned_PopUp').style.display = 'none';
}
/*********************** End SalePage Lead***********************/

/*********************** Start Same Reservation Exist***********************/



/*********************** End Same Reservation Exist***********************/

function OpenCouponTouristServiceTermsPopUp() {
    var popUpWidth = 400;
    var popUpHeight = 300;
    var left = (screen.width / 2) - (popUpWidth / 2);
    var top = (screen.height / 2) - (popUpHeight / 2);
    window.open("../../Misc/Popups/CouponTouristServiceTerms.aspx", "CouponTouristServiceTerms", 'top=' + top + ',left=' + left + ',width=' + popUpWidth + ',height=' + popUpHeight + ',resizable=0,scrollbars=0, status=0');
}
function ContinentClicked(id) {
    if (document.getElementById('ClickedContinentInp').value.length > 0) {
        var oldClickedId = document.getElementById('ClickedContinentInp').value;
        document.getElementById(oldClickedId).className = oldClickedId;
        document.getElementById(oldClickedId).style.cursor = "pointer";
    }
    document.getElementById(id).className = id + "_Clicked";
    document.getElementById(id).style.cursor = "default";
    document.getElementById('ClickedContinentInp').value = id;
}
var RedFiller = -576;
var TextCheck = 0;
function WaitingDivAnimation() {
    RedFiller++;
    if (RedFiller < 1) {
        document.getElementById("RedFill").style.right = RedFiller + 'px';
        TextCheck++;
        if (TextCheck < 90) {
            window.setTimeout('WaitingDivAnimation();', 20);
        }
        else if (TextCheck >= 90 & TextCheck < 280) {
            document.getElementById("MSG01").style.display = 'block';
            document.getElementById("NUM01").style.display = 'block';
            window.setTimeout('WaitingDivAnimation();', 30);
        }
        else if (TextCheck >= 280 & TextCheck < 470) {
            document.getElementById("MSG01").style.display = 'none';
            document.getElementById("NUM01").style.display = 'none';
            document.getElementById("MSG02").style.display = 'block';
            document.getElementById("NUM02").style.display = 'block';
            window.setTimeout('WaitingDivAnimation();', 40);
        }
        else if (TextCheck >= 470) {
            document.getElementById("MSG02").style.display = 'none';
            document.getElementById("NUM02").style.display = 'none';
            document.getElementById("MSG03").style.display = 'block';
            document.getElementById("NUM03").style.display = 'block';
            window.setTimeout('WaitingDivAnimation();', 50);
        }
    }
}
function WaitingDivAnimationWithBannerTime(bannerTime) {
    RedFiller++;
    factor = bannerTime / 20;
    part1 = (20 * factor);
    part2 = (30 * factor);
    part3 = (40 * factor);
    part4 = (50 * factor);
    if (RedFiller < 1) {
        document.getElementById("RedFill").style.right = RedFiller + 'px';
        TextCheck++;
        if (TextCheck < 90) {

            window.setTimeout('WaitingDivAnimationWithBannerTime(' + bannerTime + ');', part1);
        }
        else if (TextCheck >= 90 & TextCheck < 280) {
            document.getElementById("MSG01").style.display = 'block';
            document.getElementById("NUM01").style.display = 'block';
            window.setTimeout('WaitingDivAnimationWithBannerTime(' + bannerTime + ');', part2);
        }
        else if (TextCheck >= 280 & TextCheck < 470) {
            document.getElementById("MSG01").style.display = 'none';
            document.getElementById("NUM01").style.display = 'none';
            document.getElementById("MSG02").style.display = 'block';
            document.getElementById("NUM02").style.display = 'block';
            window.setTimeout('WaitingDivAnimationWithBannerTime(' + bannerTime + ');', part3);
        }
        else if (TextCheck >= 470) {
            document.getElementById("MSG02").style.display = 'none';
            document.getElementById("NUM02").style.display = 'none';
            document.getElementById("MSG03").style.display = 'block';
            document.getElementById("NUM03").style.display = 'block';
            window.setTimeout('WaitingDivAnimationWithBannerTime(' + bannerTime + ');', part4);
        }
    }
}
function openPopWithOutLiteBox(popID) {  
    document.getElementById(popID).style.visibility = 'hidden';
    document.getElementById(popID).style.display = 'block';

    leftx = ((document.body.offsetWidth / 2) - (document.getElementById(popID).offsetWidth / 2));
    topx = ((vpHeight() / 2) - (document.getElementById(popID).offsetHeight / 2)) + getScrollTop() - 80;

    document.getElementById(popID).style.left = leftx + "px";
    document.getElementById(popID).style.top = topx + "px";

    var iframeUnderPop = document.createElement('iframe');
    iframeUnderPop.id = "iframeUnder";
    iframeUnderPop.className = "iframeUnder";
    document.body.appendChild(iframeUnderPop);
    iframeUnderPop.frameBorder = 0;
    iframeUnderPop.style.width = document.getElementById(popID).offsetWidth;
    iframeUnderPop.style.height = document.getElementById(popID).offsetHeight;
    iframeUnderPop.style.left = leftx + "px";
    iframeUnderPop.style.top = topx + "px";
    iframeUnderPop.style.visibility = "visible";

    document.getElementById(popID).style.visibility = 'visible';
    popOpenObj = popID;
}
