// JavaScript Document
function initCountryLeisure()
{
	for (var idx=0;idx<document.getElementById('leisure_country').options.length;idx++)
	{
		if (document.getElementById('leisure_country').options[idx].value== '')
		{
			document.getElementById('leisure_country').options[idx].selected=true;
		} // end if 
	} // end for
}
function hide()
{
	var obj = document.getElementById("u1");
	obj.style.visibility = "hidden"
}

function daysToEndDate()
{
	var dateString 	= document.getElementById('leisure_from').value;
	var days = document.getElementById('leisure_days').value;
	if (isDate(dateString, "dd/MM/yyyy")&& _isInteger(days) && days != '')
	{
		var mdate = parseDate(dateString, "dd/MM/yyyy");
		mdate.setDate(mdate.getDate()+(days-1));

		document.getElementById('leisure_to').value = formatDate(mdate,"dd/MM/yyyy");
	}
}

function dateToDays()
{
	var dateStringTo = document.getElementById('leisure_to').value;
	var dateStringFrom 	= document.getElementById('leisure_from').value;
	if (isDate(dateStringTo, "dd/MM/yyyy") && isDate(dateStringFrom, "dd/MM/yyyy"))
	{
		var mdateTo = parseDate(dateStringTo, "dd/MM/yyyy");
		var mdateFrom = parseDate(dateStringFrom, "dd/MM/yyyy");
		var days = (( (mdateTo.getTime() - mdateFrom.getTime())/(60*60*1000*24) )+1);

		document.getElementById('leisure_days').value = Math.round(days);
	}
}

function dateToPopulate()
{
	var dateStringTo = document.getElementById('leisure_from').value;
	if(document.getElementById('leisure_to').value == "")
	{
		document.getElementById('leisure_to').value = dateStringTo;
	}
}


/*function initTab(navitem) 
{
	document.getElementById('TripType').value = navitem;
	var navitem  = document.getElementById('TripType').value;

	document.getElementById('leisure_from').value = ''
	document.getElementById('leisure_to').value = ''
	if (navitem == 1){}
	else if (navitem == 2){}
	else
	{
		document.getElementById('TripType').value = "SingleTrip";
	}
	singleMultiSwitch();
	for (var idx=0;idx<document.getElementById('leisure_region').options.length;idx++)
	{
		if (document.getElementById('leisure_region').options[idx].value== '')
		{
			document.getElementById('leisure_region').options[idx].selected=true;
		} 
	} 
}*/

function initBusinessTab()
{
	var navitem  = document.getElementById('business_policyoption').value;

	document.getElementById('business_nav1').className = '';
	document.getElementById('business_nav2').className = '';
	
	if (navitem == 1)
		document.getElementById('business_nav1').className = 'active';
	else if (navitem == 2)
		document.getElementById('business_nav2').className = 'active';
	else
	{
		document.getElementById('business_nav1').className = 'active';
		document.getElementById('business_policyoption').value = "1";
	}
}

function changeTab(element, navitem) 
{
	//document.getElementById('nav1').className = '';
	//document.getElementById('nav2').className = '';

	document.getElementById('TripType').value = navitem;

	element.className = 'active';
	singleMultiSwitch();
}

function changeBusinessTab(element, navitem)
{
	document.getElementById('business_nav1').className = '';
	document.getElementById('business_nav2').className = '';

	document.getElementById('business_policyoption').value = navitem;
	element.className = 'active';
}

/*function singleMultiSwitch()
{
	var area = null;
	var areaoffset = 0;
	if (document.getElementById('TripType').value != 'AnnualMultiTrip')
	{
		document.getElementById('leisure_country').style.visibility = "visible";
		document.getElementById('anchor2').style.visibility = "visible";
		document.getElementById('leisure_to').style.visibility = "visible";
		document.getElementById('leisure_days').style.visibility = "visible";
		document.getElementById('c1').style.visibility = "visible";
		document.getElementById('c2').style.visibility = "visible";
		document.getElementById('tohideforonlymulty1').style.visibility = "visible";
		document.getElementById('tohideforonlymulty2').style.visibility = "visible";
		document.getElementById('tohideforonlymulty3').style.visibility = "visible";
		document.getElementById('tohideforonlymulty5').style.visibility = "visible";
		
		area = new Array("--- Select Area of Travel ---","Worldwide","Restricted Worldwide","UK, Ireland & SE Asia","Indonesia & West Pacific","Australia","Inbound to Australia");
	} else {
		document.getElementById('leisure_country').style.visibility = "hidden";
		document.getElementById('anchor2').style.visibility = "hidden";
		document.getElementById('leisure_to').style.visibility = "hidden";
		document.getElementById('c1').style.visibility = "hidden";
		document.getElementById('c2').style.visibility = "hidden";
		document.getElementById('leisure_days').style.visibility = "hidden";
		document.getElementById('tohideforonlymulty1').style.visibility = "hidden";
		document.getElementById('tohideforonlymulty2').style.visibility = "hidden";
		document.getElementById('tohideforonlymulty3').style.visibility = "hidden";
		document.getElementById('tohideforonlymulty5').style.visibility = "hidden";
		
		//if (document.getElementById('leisure_to').value=="") document.getElementById('leisure_to').value=document.getElementById('leisure_from').value;
		area = new Array("--- Select Area of Travel ---","Worldwide","Restricted Worldwide","Australia");
		areaoffset = 6;
	}
	// delete all areas
	for ( i = document.getElementById('leisure_region').options.length-1; i >= 0; i-- ) {document.getElementById('leisure_region').options[i] = null;}
	// make the others in
	document.getElementById('leisure_region').options[0] = new Option(area[0], 0 );
	for(i = 1; i < area.length; i++) {document.getElementById('leisure_region').options[i] = new Option(area[i], i+areaoffset );}
	document.getElementById('leisure_region').options[0].selected=true;
	getCountry('leisure_region','leisure_country');
}
*/
function dobOrAge(arg)
{
	if (arg=='age')
	{
		document.getElementById('dob').style.display='none';
		document.getElementById('age').style.display='';
	} else {
		document.getElementById('age').style.display='none';
		document.getElementById('dob').style.display='';
	}
	document.getElementById('dob_age_link').value=arg;
}

function initDobOrAge()
{
	if (document.getElementById('dob_age_link').value!='dob')
	{
		document.getElementById('dob').style.display='none';
		document.getElementById('age').style.display='';
	} else {
		document.getElementById('age').style.display='none';
		document.getElementById('dob').style.display='';
	}
}

function hidebox()
{
	if(document.getElementById('er').value.length > 2)
	{
		window.resizeTo(350,350);
		document.getElementById('policysales').className = 'hiddenRow';
		document.getElementById("erlink").innerHTML="<br><br><br><a href='#' onclick='javascript:window.close()'>Close this window</a>"
	}
	else
	{
		document.getElementById('policysales').className = 'visibleRow';
		window.resizeTo(800,600);
	}
}

function pup(url)
{
	fbw = window.open(url,"","menubar=yes, location=yes, toolbar=yes, scrollbars=yes, resizable=yes,top=20, width=650, height=500");
	fbw.focus();
}

function popUp(url)
{
	sealWin=window.open(url,"win",'toolbar=0, target=blank, location=0,directories=0,status=0,menubar=no,scrollbars=yes,resizable=no,width=500,height=450');
	self.name="winmain";
}

function popUpMap(url)
{
	sealWin=window.open(url,"win",'toolbar=0, target=blank, location=0,directories=0,status=0,menubar=no,scrollbars=no,resizable=no,width=650,height=550');
	self.name="winmain";
	sealWin.focus();

}
var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s)
{
	var i;
	for (i = 0; i < s.length; i++)
	{
		// Check that current character is number.
		var c = s.charAt(i);
		if (((c < "0") || (c > "9"))) return false;
	}
	// All characters are numbers.
	return true;
}

function stripCharsInBag(s, bag)
{
	var i;
	var returnString = "";
	// Search through string's characters one by one.
	// If character is not in bag, append to returnString.
	for (i = 0; i < s.length; i++)
	{
		var c = s.charAt(i);
		if (bag.indexOf(c) == -1) returnString += c;
	}
	return returnString;
}

function daysInFebruary (year)
{
	// February has 29 days in any year evenly divisible by four,
	// EXCEPT for centurial years which are not also divisible by 400.
	return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function DaysArray(n)
{
	for (var i = 1; i <= n; i++)
	{
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
	}
	return this
}

function isDate(dtStr)
{
	var daysInMonth = DaysArray(12)
	if(dtStr==null || dtStr =="" || dtStr.length < 6 ||dtStr.length > 10 )
	{
		//alert("Please enter a valid Start Date"); 
		return false;
	}
	s1=dtStr.split("/");

	if( (s1[0].length==2 ||s1[0].length==1 ) && (s1[1].length==2 ||s1[1].length==1 ) && (s1[2].length==4 || s1[2].length==2 ) && !isNaN(s1[2]) && !isNaN(s1[0]) && !isNaN(s1[1]))
	{
		strDay = s1[0].length==2?s1[0]:"0"+s1[0];
		strMonth = s1[1].length==2?s1[1]:"0"+s1[1];
		strYear = s1[2].length==4?s1[2]:"20"+s1[2];
		dtStr = strDay+ '/' + strMonth + '/' + strYear
	}
	else
	{
		return false;
	}
	month=parseInt(strMonth,10)
	day=parseInt(strDay,10)
	year=parseInt(strYear)
	
	if (strMonth.length<1 || month<1 || month>12)
	{
		alert("Please enter a valid month")
		return false
	}

	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
	{
		alert("Please enter a valid day")
		return false
	}

	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear)
	{
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	return true
}

function dateupd()
{
	var str = document.getElementById("leisure_from").value;
	var sd = new Date(parseInt(str.split("/")[2]), parseInt(str.split("/")[1],10)-1, parseInt(str.split("/")[0],10));
	var c = sd.setTime(sd.getTime() + 60 * 60 * 24 * 364 * 1000);
	var y = sd.getFullYear();
	var m = parseInt(sd.getMonth())+1;
	if(m<10) {m = "0"+m;}

	var d = sd.getDate();
	if(parseInt(d)<10){ d = "0"+d;}

	if(document.getElementById('TripType').value == "AnnualMultiTrip")
	{
		document.getElementById("leisure_to").value=d+"/"+m+"/"+y;
		/*var region = document.getElementById("leisure_region").options[document.getElementById("leisure_region").selectedIndex].text;
		document.getElementById("leisure_country").options[0] = new Option(region, region, true,true);*/
		//alert('amt')
	}
}

/*function detectBrowser()
{
var browser=navigator.appName;
var navindex=navigator.userAgent.indexOf('Safari');

var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
var is_safari = navigator.userAgent.toLowerCase().indexOf('safari') > -1;
var is_ie = navigator.userAgent.toLowerCase().indexOf('MSIE') > -1;

if(is_chrome) {window.location="http://www.covermore.com.au/1/_error_chrome_message.aspx"; r16=true}
else if(is_safari) {window.location="http://www.covermore.com.au/1/_error_safari_message.aspx"; r16=true}

}  */
function trim(str)
{
  return str.replace(/^\s+|\s+$/g, '');
}
function ageValidation()
    {
			var total=""
            var chks = document.getElementsByName('age[]');//here rr[] is the name of the textbox
     
            for (var i = 0; i < chks.length; i++)
            {        
				if (chks[i].value!=="")
				{
					total +=trim(chks[i].value)
			   /* alert("Please fillup atleast one textbox");
				chks[i].focus();
				return false;*/            
				}
            }
			//alert(total)
			if(total==""){alert("Please enter the Age of Each Traveller"); return false }
    }

function travellers_age(){
	var total=""
	var chks = document.getElementsByName('age[]');//here rr[] is the name of the textbox

	for (var i = 0; i < chks.length; i++)
	{        
		if (chks[i].value!=="" || chks[i].value!==null)
		{
			total +=trim(chks[i].value)
		}
	}
	if(total==""){
		alert("Please enter the Age of Each Traveller"); return false
	}else{
			//alert('2')
		var arr = new Array(document.getElementById("leisure_traveller_1").value, document.getElementById("leisure_traveller_2").value, document.getElementById("leisure_traveller_3").value, document.getElementById("leisure_traveller_4").value, document.getElementById("leisure_traveller_5").value, document.getElementById("leisure_traveller_6").value)
		var arr2 = new Array()
		for(i=0; i<=arr.length; i++) {
			if(arr[i] !== "" || arr[i] !== null){
				arr2.push(arr[i]);
			}
		}
		var myStr = arr2.join(",")
		if (myStr.length > 0)
		{
			var newStr = myStr.substring(0, myStr.length-1);
			document.getElementById("Travellers").value = newStr
			return true;
		}
	}
}

function validate()
{
	dateupd();

	var browser=navigator.appName;
	var navindex=navigator.userAgent.indexOf('Safari');	
	var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
	var is_safari = navigator.userAgent.toLowerCase().indexOf('safari') > -1;
		
	var today = new Date();
	var alp = "cmn0100";
	var strFromDate = document.getElementById("leisure_from").value;
	var strToDate = document.getElementById("leisure_to").value;
	var r1=false;var r2=false;var r3=false;var r4=false;var r5=false; var r6=false; var r7=false;r9=false;r10=false;r11=true;r12=false;r13=false;r14=true;r15=true;r16=false;var r8=false;
	var d1,m1,y1,d2,m2,y2,s1,s2;


	if (isDate(strFromDate))
	{
		r1 = true;
	} else {
		alert("Please enter the Date Travel Starts.");
	}

	if (isDate(strToDate))
	{
		r2 = true;
	} else {
		alert("Please Enter the Date Insurance Ends.");
	}

	if(r1 && r2)
	{
		s1=strFromDate.split("/");
		s2=strToDate.split("/");	
		d1 = s1[0].length==2?s1[0]:"0"+s1[0];m1 = s1[1].length==2?s1[1]:"0"+s1[1];y1 = s1[2].length==4?s1[2]:"20"+s1[2];
		d2 = s2[0].length==2?s2[0]:"0"+s2[0];m2 = s2[1].length==2?s2[1]:"0"+s2[1];y2 = s2[2].length==4?s2[2]:"20"+s2[2];

		
		var sd = new Date(parseInt(y1), parseInt(m1,10)-1, parseInt(d1,10));
		var ed = new Date(parseInt(y2), parseInt(m2,10)-1, parseInt(d2,10));

		var browser=navigator.appName;
		if(browser == 'Microsoft Internet Explorer') {
		var td =  new Date(today.getYear(),today.getMonth(),today.getDate());
		//
		}else {
		var td =  new Date(today.getYear()+1900,today.getMonth(),today.getDate());
		//alert('the year is:' + td.getYear())
		}
		//alert(sd + '\n'+ ed +'\n' + td+'|');
		
		//start date vs end date 
		if(ed.getYear() < sd.getYear()){alert("Start year is greater than End year");r14 = false} 
		else if (ed.getYear() == sd.getYear() ){r14=true;
		if ( ed.getMonth()<sd.getMonth()){alert('Start Month can not be earlier than this month'); r14 = false}
		else if (ed.getMonth()== sd.getMonth())
		{ 
			if (ed.getDate()<sd.getDate()){alert('Start date cannot be earlier than today’s date');r14 = false}}	
			//alert(ed.getDate() +'|' + sd.getDate() );
		}
		//start date vs today
		if(sd.getYear() < td.getYear()){alert("Start date year shouldn't be earlier than today");r15 = false} 
		else if (sd.getYear() == td.getYear() ){r15=true;
		if ( sd.getMonth()<td.getMonth()){alert('Start month is less than this month'); r15 = false}
		else if (sd.getMonth()==td.getMonth())
		{ 
			if (sd.getDate()<td.getDate()){alert('Start day is less than today'); r15 = false}} 	
		}
		
		
		
		
		var dok = ed.getTime()/1000 - sd.getTime()/1000;
		var dur = ed.getTime()/1000 - sd.getTime()/1000;

		/*if (td.getTime()>sd.getTime())
		{
			r8=false
		} else {
			r8=true
		}
		
		if (parseInt(dur)/(60 * 60 * 24) == 365)
		//adjust the end date to make it 364 days
		{
			ed = new Date(ed - 24*60*60*1000);
			
			d2 = ed.getDate();
			if (d2 < 10 ) {d2 = "0" + d2;}
			m2 = ed.getMonth() + 1.0;
			m2 = m2.length==2?m2:"0"+m2;
			y2 = ed.getFullYear();
		}*/
	}

	if(r1 && r2)
	{
		document.getElementById("leisure_from").value = d1+"/"+m1+"/"+y1;
		document.getElementById("leisure_to").value = d2+"/"+m2+"/"+y2; 
	}
	//var testMonth = parseFloat(m1)-(today.getMonth()+1)
	//if(parseInt(m1)-(today.getMonth()+1<today.getMonth())){alert(test);r14 = false}  else{r14=true;}
	//if(testMonth<0){alert(dok);r14 = false}  else{r14=true;}
	//if(test<0){alert((test));r14 = false}  else{r14=true;}
/*		var td =  new Date(today.getYear(),today.getMonth(),today.getDate());
		var sd = new Date(parseInt(y1), parseInt(m1,10)-1, parseInt(d1,10));
*/		
		//var date_diff = sd - td;
		//alert('td' + td);
		//alert((parseInt(y1))+'|'+(parseInt(m1,10))+'|' + (parseInt(d1,10)));
		
	
	//if(parseFloat(m1)<ed.getMonth()){alert("Month Wrong.");r15 = false}  else{r15=true;}
	//if(parseInt(y1)<today.getYear()){alert(parseInt(y1));r16 = false}  else{r16=true;}
		
	//if (r16)
	//{
		//if(r15){if (!r14){alert("Day Wrong.");}} else {if (!r14){alert("Day Wrong."); alert("Month Wrong."); }	
	//}
	
	
/*	if((Math.floor(parseInt(dur)/(60 * 60 * 24)))>365){alert("We can only insure trips up to one year or 365 days duration.\r\n Please check the dates you have entered.\r\n e.g Leaving date = 10/10/2010 Return date = 9/10/2011");}else{r7=true;}*/
	if((parseInt(dur)/(60 * 60 * 24))>365){alert("We can only insure trips up to one year or 365 days duration.\r\n Please check the dates you have entered.\r\n e.g Leaving date = 10/10/2010 Return date = 9/10/2011");}else{r7=true;}
	if(parseInt(dok)<0){alert("Date Travel Starts must be earlier than the Date Insurance Ends");}else{r6=true;}

	if(document.getElementById("leisure_region").value !="0" && document.getElementById('leisure_region').value !="")
	{
		r3=true;
	} else {
		alert("Please choose your Area of Travel");
	}
	
	if(document.getElementById("leisure_country").value !="Country most time spent in" && document.getElementById("leisure_country").value!="")
	{
		r12=true;
	} else {
		alert("Please choose the Country Most Time Spent In");
	}

	if(travellers_age())
	{
		//alert('1')
		r4 = true;
	} /*else {
		alert("Please enter the Age of Each Traveller");
	}*/

/*	if(document.getElementById("leisure_traveller_1").value !="" || document.getElementById("leisure_traveller_2").value !="" || document.getElementById("leisure_traveller_3").value !="" || document.getElementById("leisure_traveller_4").value !="" || document.getElementById("leisure_traveller_5").value !="" || document.getElementById("leisure_traveller_6").value !="" )
	{
		travellers_age();
		r4 = true;
	} else {
		alert("Please enter the Age of Each Traveller");
	}*/
//ageValidation()

	if(document.getElementById("livein_country").value  =="true")
	{
		r5 = true;
	} else {
		alert("Please answer the question Do all travellers live in Australia?");
	}
/*	if(document.getElementById("livein_country").checked == false)
	{
		alert("are you a UK resident?");
		document.getElementById("livein_country").value = 'no';
	} else {
		r5 = true;
		document.getElementById("livein_country").value = 'yes';
	}	
	var age = new Array(document.getElementById("leisure_traveller_3").value, document.getElementById("leisure_traveller_4").value, document.getElementById("leisure_traveller_5").value, document.getElementById("leisure_traveller_6").value);
	var adult =new Array(document.getElementById("leisure_traveller_1").value, document.getElementById("leisure_traveller_2").value);

	var agei = new Array();
	var adulti= new Array();
	for(i=0;i<adult.length;i++){adulti[i]=adult[i].length>0?adult[i]:"0"; if(adulti[i] > 84){alert("We're sorry we cannot offer insurance to travellers over the age of 84.");return false;} else {r9 = true;}}
	for(i=0;i<adult.length;i++){adulti[i]=adult[i].length>0?adult[i]:"0";if((adulti[i] < 21) && (adulti[i] != 0)) {alert("For any traveller under 21, please enter their ages in section five.");return false;} else {r13 = true;}}
	for(j=0;j<age.length;j++){agei[j]=age[j].length>0?age[j]:"0"; if(agei[j] > 20){alert("We're sorry age of children must be less than 21.");return false;} else {r10 = true;}}
	for(i=0;i<age.length;i++){agei[i]=age[i].length>0?age[i]:"0"; if(age.length >1 && agei[i] > 74 && document.getElementById('TripType').value == "AnnualMultiTrip"){alert("Family Annual Multi Trip is currently unavailable for travellers over 74.");r11 = false;}}
*/

	if(r1 && r2 && r3 && r4 && r5 && r6 && r7   && r12  && r14 && r15 ){return true} else {return false}
}


function clr(obj)
{
	if(obj.readOnly==false){obj.value = "";}
}

function X(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 Y(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 changeliveincountry()
{
	if(document.getElementById("livein_country").value == "false")
	{
/*		for ( i = document.getElementById("leisure_region").options.length-1; i >= 0; i-- )
		{document.getElementById("leisure_region").options[i+1] = null;}
		for ( i = document.getElementById("leisure_country").options.length-1; i >= 0; i-- )
		{document.getElementById("leisure_country").options[i+1] = null;}
		document.getElementById("leisure_region").options[6] = new Option("Inbound to Australia", "6");
		document.getElementById('leisure_region').options[6].selected=true;
		document.getElementById("leisure_country").options[0] = new Option("Australia", "Australia");*/
		alert('Sorry! We can only insure travellers who are living in Australia.');
	}
	else
	{
		initTab(document.getElementById('TripType').value);
		getCountry('leisure_region','leisure_country');
		initCountryLeisure();
	}
}

