

// JavaScript Document

/* determining whether msie or netscape being used and what versions */
var IE4 = (document.all && !document.getElementById) ? 1 : 0;
var NS4 = (document.layers) ? 1 : 0;
var IE5 = (document.all && document.getElementById) ? 1 : 0;
var N6 = (document.getElementById && !document.all) ? 1 : 0;
var ie = (IE4 || IE5) ? 1 : 0;
var ieVersion = msieversion();
var n = (NS4 || N6) ? 1 : 0;
var IE5MAC = false;
var NS4MAC = false;
function msieversion()
{
    var ua = window.navigator.userAgent
    var msie = ua.indexOf ( "MSIE " )

	if ( msie > 0 )      // If Internet Explorer, return version number
         return parseInt (ua.substring (msie+5, ua.indexOf (".", msie )));
	else                 // If another browser, return 0
         return 0
}


var MAC = (navigator.userAgent.indexOf("Mac")) // determines platform

if (MAC != -1)
{
	if (IE5)
	{
		IE5MAC = true; //determines if ie5 on a mac
	}
	else
	{
		if (NS4 || N6)
		{
			NS4MAC = true; // determines if net 4 or 6 on mac
		}
	}
}
else
{
}

/* error handling */
window.onerror = errorHandler;
function errorHandler()
{
	return true;
}


/* this is a work a round for the netscape resize bug */
if (document.layers)
{
	origWidth = innerWidth;
	origHeight = innerHeight;
}

function correctResize()
{
	if (innerWidth != origWidth || innerHeight != origHeight)
	location.reload();
}
if (document.layers) onResize = correctResize;


function populateHeight() {
	
	if (screen.height>768) {
		if (document.body.clientHeight) {
			if (navigator.userAgent.indexOf("Firefox")!=-1) {
				document.getElementById("centerContentWrap").style.minHeight = screen.height - 464 + "px";				
				
			} else if (navigator.userAgent.indexOf("Opera")!=-1	) {
					
					document.getElementById("centerContent").style.minHeight = screen.height - 464 + "px";				
						
			} else {
					if (document.getElementById("home") != null) {
						document.getElementById("centerContentWrap").style.height = screen.height - 440 + "px";				
					}
					else
					{
						document.getElementById("centerContentWrap").style.height = screen.height - 434 + "px";				
					}
							
			}
		}
	}
}


	
	function emailcheck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		
		if ((str==null)||(str=="")){
			return false
		}
	
		if (str.indexOf(at)==-1){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		 
		 if (str.indexOf(dot)+1==lstr){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}
	

	
function validate () {
		
		var e = document.forms[0];
		var check;
		var count;
		var current;
		var error = false;
		count = 0;
		var order = false;
		
		for(var i=0; i < e.elements.length; i++) {
			
			if (e.elements[i].type == "text" || e.elements[i].type == "textarea") 
			{
					if (e.elements[i].value == "" || e.elements[i].value == e.elements[i].defaultValue) 
					{						
						alert("Please enter a value for \n\"" + eval("L" + e.elements[i].name + ".innerText") + "\"");								
						error = true;
						e.elements[i].focus();
						break;
					}
					
					if (e.elements[i].name == "email") {
						if (!(emailcheck(e.elements[i].value))) {
							alert("Please enter a valid email address");								
							error = true;
							e.elements[i].focus();
							break; 
						}
					}			
					
									
			} else if (e.elements[i].type == "radio" || e.elements[i].type == "checkbox"){
					if (!(e.elements[i].checked)) {
						if (e.elements[i].name == "terms_of_use_read") {
							alert("Please acknowledge you have read the terms of use by ticking the box");
							error = true;
							e.elements[i].focus();
							break;
						}
						else {
							continue;
						}
					}
						
					
			} else if (e.elements[i].type == "select-one") {
					if (e.elements[i].value == "" || e.elements[i].value == e.elements[i].defaultValue) {
						alert("Please enter a value for \n\"" + eval("L" + e.elements[i].name + ".innerText") + "\"");
						error = true;
						e.elements[i].focus();
						break;
					}
					
			}
					
		}
		
				
		if (!error) {
			return true;
		} else {
			return false;
		}
	}
	
function initText() {
	for (var i = 0; i < 5; i++) {
		if (document.forms[i]) {
			var e = document.forms[i];
			initForm(e);
		}
		else {
			break;
		}
	}
}
	
function initForm(e) {
	for(var i=0; i < e.elements.length; i++) {
				if (e.elements[i].type == "text" || e.elements[i].type == "textarea" || e.elements[i].type == "select-one") {
						e.elements[i].onfocus = function() {
							if (this.value.indexOf('[') != -1) {
								this.value = "";
							}this.style.backgroundColor = '#F9E2D7';
						};
						e.elements[i].onblur = function() {  
							if (this.value == "") {
								this.value = this.defaultValue;
							}this.style.backgroundColor = '#fff';
					 };
				} 
				if (e.elements[i].type == "submit") {
					e.elements[i].onmouseover = function() {
						this.style.cursor = 'pointer';								
					};						
				}
			}
}
	

function addLinkTargets() {
	for (var i=1; i<5;i++) {
		if (document.getElementById("link" + [i]) != null)	{
			document.getElementById("link" + [i]).target = "_blank";
		}
		else{
			break;
		}
	}	
}

		
	
	function openWin() {
		return(window.confirm('JLT Travel Insurance is underwritten by Tokio Marine Europe Insurance Ltd.\n\nYou are about to be transferred to the Tokio Marine website.  Jardine Lloyd Thompson does not control the site you are to be redirected to which may contain different terms of use and privacy conditions to the site you are leaving.\n\nPlease ensure you read and are aware of the relevant site terms and conditions on both sites.\n\nPlease click ok to continue and get an online travel insurance quotation or click cancel to return to JLT Travel Insurance.'));
		
	}
		
		
	function addEvents() {
		if (document.getElementById("quote_button") != null)
		{						
			
			document.getElementById("quote_button").onclick = function(){ if(openWin()) {document.getElementById("quote_button").href = 'http://etravel.tokiomarine.eu/jltgeneric';  } else {document.getElementById("quote_button").href = "Default.aspx"; };};
		}
		if (document.getElementById("quote_button1") != null)
		{						
			
			document.getElementById("quote_button1").onclick = function(){ if(openWin()) {document.getElementById("quote_button1").href = 'http://etravel.tokiomarine.eu/jltgeneric';  } else {document.getElementById("quote_button1").href = "Default.aspx"; };};
		}
		
		if (document.getElementById("quote_button2") != null)
		{			
			document.getElementById("quote_button2").onclick = function(){ if(openWinDiscovery()) {document.getElementById("quote_button2").href = 'http://etravel.tokiomarine.eu/jltgeneric';  } else {document.getElementById("quote_button2").href = "Default.aspx"; };};
		}
		
		if (document.getElementById("discovery_quote_button") != null)
		{					
			document.getElementById("discovery_quote_button").onclick = function(){ if(openWinDiscovery()) {document.getElementById("discovery_quote_button").href = '';  } else {document.getElementById("discovery_quote_button").href = "utopia_discovery.htm"; };};
		}
		if (document.getElementById("discovery_quote_button1") != null)
		{			
			document.getElementById("discovery_quote_button1").onclick = function(){ if(openWinDiscovery()) {document.getElementById("discovery_quote_button1").href = '';  } else {document.getElementById("discovery_quote_button1").href = "utopia_discovery.htm"; };};
		}
		
		if (document.getElementById("constant_trek") || document.getElementById("constant_trek_update1") || document.getElementById("constant_trek_submit")) {
			
			checkSubmitButton();
			document.getElementById("terms_of_use_read").onclick = checkSubmitButton;
		}
	}

	function checkSubmitButton() {
		if (document.getElementById("terms_of_use_read").checked) {
			document.getElementById("submit").disabled 			= false;
			document.getElementById("submit").style.background 	= '#EB6A2B';
			document.getElementById("submit").style.color		= '#ffffff';
			document.getElementById("submit").style.border		= '1px solid #CE5A22';
		}
		else
		{
			document.getElementById("submit").style.background 	= '#D4D0C8';
			document.getElementById("submit").style.color		= '#333333';
			document.getElementById("submit").style.border		= '1px solid #CE5A22';
			document.getElementById("submit").disabled 			= true;
		}
	}
	
	function init ()
	{
		initText();
		addEvents();
		populateHeight();
		
	}
	
	window.onload=init;













