var curr_elt = 0;

var divs = new Array ('benefits','info','floorPlanWrapper','mapWrapper');

function swap_random_image(container_id)
{
	divSwapImages = document.getElementById(container_id).getElementsByTagName('img');
	swapper = parseInt(Math.random() * divSwapImages.length);
	divSwapImages[swapper].className = 'show';
}


function tick()
{
	var imgs = document.getElementById('homeBanner').getElementsByTagName('img');

	var prev_elt = curr_elt;

	if (++curr_elt == imgs.length)
		{curr_elt = 0;}

	imgs[curr_elt].className = 'show';
	imgs[prev_elt].className = 'hide';

	return false;
}


function swap_office_image(image_id)
{
	for (i=1;i<=5;i++)
	{
		elt = document.getElementById("office_img_0" + i);

		if (elt)
		{
			if (i == image_id)
			{
				elt.className = "show";
			}
			else
			{
				elt.className = "hide";
			}
		}
	}
	return false;
}


function drawMap()
{
	var mapDiv = document.getElementById("mapDiv");
	var map = new GMap2(mapDiv,{size: new GSize('390','390')});

	var lon = mapDiv.getAttribute('long');
	var lat = mapDiv.getAttribute('lat');

	map.addControl(new GSmallMapControl());
	map.setCenter(new GLatLng(lat,lon), 15);

	//var point = new GLatLng(lat,lon);
	//map.addOverlay(new GMarker(point));

	var mwbIcon = new GIcon();
	mwbIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
	mwbIcon.iconSize = new GSize(20, 34);
	mwbIcon.shadowSize = new GSize(37, 34);
	mwbIcon.iconAnchor = new GPoint(9, 34);
	mwbIcon.infoWindowAnchor = new GPoint(9, 2);
	mwbIcon.infoShadowAnchor = new GPoint(18, 25);
  	mwbIcon.image = "/images/mwbicon.png";
  	var point = new GLatLng(lat,lon);
  	var marker = new GMarker(point, mwbIcon);
  	map.addOverlay(marker);
	return false;
}


function drawLondonMap(lat,lon,id){
	var areas = getElementsByClassName("londonRegion", "div", document.getElementById('selectOffice'));

	id = id - 0;
	for(var i=0;i<areas.length;i++){
		areas[i].style.display='none';
		if(i==id){
			areas[i].style.display='block';
		}
	}
	var mapDiv = document.getElementById("map");
	var map = new GMap2(mapDiv);
	map.addControl(new GOverviewMapControl());
	map.addControl(new GMapTypeControl());
	map.addControl(new GLargeMapControl());
	
	map.setCenter(new GLatLng(lat,lon), 15);
	var mwbIcon = new GIcon();
	mwbIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
	mwbIcon.iconSize = new GSize(20, 34);
	mwbIcon.shadowSize = new GSize(37, 34);
	mwbIcon.iconAnchor = new GPoint(9, 34);
	mwbIcon.infoWindowAnchor = new GPoint(9, 2);
	mwbIcon.infoShadowAnchor = new GPoint(18, 25);
  	mwbIcon.image = "/images/mwbicon.png";
  	var point = new GLatLng(lat,lon);
  	var marker = new GMarker(point, mwbIcon);
	map.addOverlay(marker);

	return false;
}


function showElt(divId)
{
	var theDiv = document.getElementById(divId);
	if (theDiv)
	{
		theDiv.className="show";
	}
	return false;
}


function hideElt(divId)
{
	var theDiv = document.getElementById(divId);
	if (theDiv)
	{
		theDiv.className="hide";
	}
	return false;
}


function show(divId)
{
	for (var d in divs)
	{
		if (divs[d] != divId)
		{
			hideElt(divs[d]);
		}
	}

	showElt(divId);
	return false;
}

function enablePrefTel(divId)
{
	disableInputs('pref_phone_1');
	disableInputs('pref_phone_2');

	if (divId != '')
	{
		enableInputs(divId);
	}
}


function enablePrefFax(divId)
{
	disableInputs('pref_fax_1');
	disableInputs('pref_fax_2');
	disableInputs('pref_fax_3');

	if (divId != '')
	{
		enableInputs(divId);
	}
}


function enablePrefMail(divId)
{
	disableInputs('pref_mail_1');
	disableInputs('pref_mail_2');
	disableInputs('pref_mail_3');

	if (divId != '')
	{
		enableInputs(divId);
	}
}


function enableInputs(divId)
{
	document.getElementById(divId).className = "orderQuestion"

	var enable = document.getElementById(divId).getElementsByTagName('input');

	for (i=0;i<enable.length;i++)
	{
		enable[i].disabled = false;
	}

	var enable = document.getElementById(divId).getElementsByTagName('textarea');

	for (i=0;i<enable.length;i++)
	{
		enable[i].disabled = false;
	}
}


function disableInputs(divId)
{
	var disable = document.getElementById(divId).getElementsByTagName('input');

	document.getElementById(divId).className = "orderQuestionOff"

	for (i=0;i<disable.length;i++)
	{
		disable[i].disabled = true;
	}

	var disable = document.getElementById(divId).getElementsByTagName('textarea');

	for (i=0;i<disable.length;i++)
	{
		disable[i].disabled = true;
	}
}


function testClick(evt)
{
	var e = evt ? evt : window.event;
	var clickedElt = e.srcElement ? e.srcElement.id : e.target.id;

	if((document.getElementById('locationClick').className == 'hide') || (document.getElementById('stationClick').className == 'hide'))
	{
		/* close drop downs as one is open */
		document.getElementById('locationClick').className = 'show';
		document.getElementById('locationListing').className = 'hide';
		document.getElementById('stationClick').className = 'show';
		document.getElementById('stationListing').className = 'hide';
	}
	else
	{
		if(clickedElt == "locationPara")
		{
			/* open loc dd */
			document.getElementById('locationClick').className = 'hide';
			document.getElementById('locationListing').className = 'show';
			document.getElementById('stationClick').className = 'hide';
			document.getElementById('stationListing').className = 'hide';
		}

		if(clickedElt == "tubePara")
		{
			/* open tube dd */
			document.getElementById('locationClick').className = 'show';
			document.getElementById('locationListing').className = 'hide';
			document.getElementById('stationClick').className = 'hide';
			document.getElementById('stationListing').className = 'show';
		}
	}

	if(clickedElt == "regionTabLink")
	{
		document.getElementById('locationTab').className = "";
		document.getElementById('regionTab').className = "selected";
		document.getElementById('searchLocations').className = "hide";
		document.getElementById('searchRegions').className = "show";
	}

	if(clickedElt == "locationTabLink")
	{
		document.getElementById('locationTab').className = "selected";
		document.getElementById('regionTab').className = "";
		document.getElementById('searchLocations').className = "show";
		document.getElementById('searchRegions').className = "hide";
	}
}


function ddClickLocSection(evt)
{
	var e;
	var clickedElt;

	if (!evt)
	{
		e = window.event;
	}
	else
	{
		e = evt;
	}

	if (!e.srcElement)
	{
		clickedElt = e.target.id;
	}
	else
	{
		clickedElt = e.srcElement.id;
	}

	if((document.getElementById('locationClick').className == 'hide') || (document.getElementById('stationClick').className == 'hide'))
	{
		/* close drop downs as one is open */
		document.getElementById('locationClick').className = 'show';
		document.getElementById('locationListing').className = 'hide';
		document.getElementById('stationClick').className = 'show';
		document.getElementById('stationListing').className = 'hide';
	}
	else
	{

		if(clickedElt == "locationPara")
		{
			/* open loc dd */
			document.getElementById('locationClick').className = 'hide';
			document.getElementById('locationListing').className = 'show';
			document.getElementById('stationClick').className = 'hide';
			document.getElementById('stationListing').className = 'hide';
		}


		if(clickedElt == "tubePara")
		{
			/* open tube dd */
			document.getElementById('locationClick').className = 'show';
			document.getElementById('locationListing').className = 'hide';
			document.getElementById('stationClick').className = 'hide';
			document.getElementById('stationListing').className = 'show';
		}


	}

}




function ddClickLocLondon(evt)
{
	var e;
	var clickedElt;

	if (!evt)
	{
		e = window.event;
	}
	else
	{
		e = evt;
	}

	if (!e.srcElement)
	{
		clickedElt = e.target.id;
	}
	else
	{
		clickedElt = e.srcElement.id;
	}

	if(document.getElementById('stationClick').className == 'hide')
	{
		/* close drop downs as one is open */
		document.getElementById('stationClick').className = 'show';
		document.getElementById('stationListing').className = 'hide';
	}
	else
	{
		if(clickedElt == "tubePara")
		{
			/* open tube dd */
			document.getElementById('stationClick').className = 'hide';
			document.getElementById('stationListing').className = 'show';
		}

	}

}

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}


function verify(f)
	{
	var message="";
	var status=" is a compulsory field";
	if (f.udo_name.value == "")
		{message+="First Name" + status +"\n";}

	if (f.telno.value == "")
		{message+="Telephone" + status +"\n";}

	if (f.when.value == "")
		{message+="When to call" + status +"\n";}

	if (message == "")
		{return true}
	else
		{
		alert("Your request can not be submited because:  \n"+message);
		return false
		}
	}


function toggleTab(a)
	{
	var li = a.parentNode;
	var ul = li.parentNode;
	tabID = ul.id;

	var lis = ul.getElementsByTagName('LI');
	for (var i=0; i<lis.length; i++)
		{
		if (lis[i] === li)
			{lis[i].className = 'selected';}
		else
			{lis[i].className = '';}
		}

	if (document.getElementById('map').className == 'selected')
		{
		var script = document.createElement("script");
		script.type = "text/javascript";
		script.src = "http://maps.google.com/maps?file=api&v=2&key=" + document.getElementById("mapDiv").getAttribute('key');
		document.body.appendChild(script);
		}

	var url = li.getElementsByTagName('A')[0].href + '&ajax=1';

	if (window.XMLHttpRequest)
		{
		// code for Mozilla, etc.
		jsHTTP=new XMLHttpRequest();
		jsHTTP.onreadystatechange=toggleTabDone;
		jsHTTP.open("GET",url,true);
		jsHTTP.send(null);
		}
	else if (window.ActiveXObject)
		{
		// code for IE
		jsHTTP=new ActiveXObject("Microsoft.XMLHTTP");
		if (jsHTTP)
			{
			jsHTTP.onreadystatechange=toggleTabDone;
			jsHTTP.open("GET",url,true);
			jsHTTP.send();
			}
		}
	}


function toggleTabDone()
	{
	if (jsHTTP.readyState == 4)
		{
		document.body.style.cursor = 'default';

		if (document.getElementById('map').className == 'selected')
			{drawMap();}

		if (jsHTTP.status == 200)
			{document.getElementById(tabID + 'Panel').innerHTML = jsHTTP.responseText;}
		else
			{alert('AJAX Error: ' + jsHTTP.status);}
		}
	}


function focusThis(i)
	{
	if (i.getAttribute('old') == null)
		{i.setAttribute('old',i.value);}

	if (i.getAttribute('old') == i.value)
		{i.value = '';}

	i.className = 'focus';
	}


function blurThis(i)
	{
	if (i.value == '')
		{
		i.className = 'text';
		i.value = i.getAttribute('old');
		}
	}


if (!document.all)
	{
	HTMLElement.prototype.click = function()
		{
		var evt = this.ownerDocument.createEvent('MouseEvents');
		evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
		this.dispatchEvent(evt);
		}
	}

function chatLink()
	{
	var links = document.getElementById('chat2us').getElementsByTagName('a');
	if (links[0].onclick == undefined)
		{setTimeout('chatLink()',100);}
	else
		{links[0].click();}
	}
