var d=document;
var w=window;
var arrMoving=[0,0,0,0,0];
var arrStop=[0,0,0,0,0];
var arrTimers=new Array();
var intDir=-1;
var bolEvents=w.addEventListener;

function contact(){
	var objHttp;
	objHttp=createxml();
	if(!objHttp){
		alert("ERROR\nCould not create XMLHTTP object.");
		return false;
	}
	objHttp.onreadystatechange=function(){
		if(objHttp.readyState==4){
			if(objHttp.status==200){
				var elmSend=elm("sending").getElementsByTagName("div")[1];
				var strResponse=unescape(objHttp.responseXML.getElementsByTagName("root").item(0).firstChild.data)+"";
				var bolSent=strResponse.indexOf("success")>-1;
				setTimeout(function(){
					elmSend.className=(bolSent?"ok":"error")+"box c m";
					elmSend.innerHTML="<p>"+strResponse+"</p><p class=\"s u\"><a href=\"/\" onclick=\"return closesend();\">Close</a></p>";
					if(bolSent){
						elm("fname").value=elm("fphone").value=elm("femail").value=elm("fmessage").value="";
						elm("fcopy").checked=false;
					}
				},1000);
			}else alert("ERROR\nServer responded with a "+objHttp.status+" error ("+objHttp.statusText.toLowerCase()+").");
			return false;
		}
	};
	elm("sending").style.display="table";
	objHttp.open("POST","/xml/contact.asp",true);
	objHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	objHttp.send("name="+escape(elm("fname").value).replace(new RegExp("\\+","g"),"%2B")+"&phone="+escape(elm("fphone").value).replace(new RegExp("\\+","g"),"%2B")+"&email="+escape(elm("femail").value).replace(new RegExp("\\+","g"),"%2B")+"&message="+escape(elm("fmessage").value).replace(new RegExp("\\+","g"),"%2B")+"&copy="+escape(elm("fcopy").checked+""));
	return false;
};
function closesend(){
	elm("sending").style.display="none";
	var elmSend=elm("sending").getElementsByTagName("div")[1];
	elmSend.className="tipbox c m";
	elmSend.innerHTML="<p>Please wait a moment while we process the details you provided ...</p><p class=\"loading hide\">Processing ...</p>";
	return false;
};
function createxml(){
	var objxml=false;
	if(w.XMLHttpRequest){
		objXml=new XMLHttpRequest();
		if(objXml.overrideMimeType)objXml.overrideMimeType("text/xml");
	}else if(w.ActiveXObject){
		try{
			objXml=new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				objXml=new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){}
		}
	}
	return objXml;
};
function elm(what){
	return d.getElementById(what);
};
function move(item,dir,t,b,w,m){
	if(arrMoving[w])clearInterval(arrTimers[w]);
	var elmMover=elm(item);
	var intHeight=parseInt(elmMover.offsetHeight);
	var intTop=parseInt(elmMover.style.top);
	if((dir==1&&intTop<t)||(dir==-1&&intTop>b)){
		arrStop[w]=dir==1?t:b;
		arrMoving[w]=1;
		arrTimers[w]=setInterval("slide(\""+item+"\","+dir+","+m+","+w+");",25);
	}
	return false;
};
function slide(item,dir,m,w){
	var elmMover=elm(item);
	var intTop=parseInt(elmMover.style.top);
	if(intTop!=arrStop[w])elmMover.style.top=intTop+(m*dir)+"px";
	else{
		clearInterval(arrTimers[w]);
		arrMoving[w]=0;
	}
};
function loadpage(){
	var arrLinks=d.getElementsByTagName("a");
	for(var x=0;x<arrLinks.length;x++){
		if(arrLinks[x].getAttribute("rel")&&arrLinks[x].getAttribute("rel").indexOf("external")>-1)bolEvents?arrLinks[x].addEventListener("click",function(event){openlink(this);event.preventDefault();},false):arrLinks[x].onclick=function(){return openlink(this);};
	}
	if(elm("hlogin")){
		var elmLogin=elm("top").getElementsByTagName("ul")[0].getElementsByTagName("li");
		elmLogin=elmLogin[elmLogin.length-1].getElementsByTagName("a")[0];
		elm("hlogin").style.display="block";
		var intLogin=elm("hlogin").offsetHeight;
		elm("hlogin").style.top=-intLogin+"px";
		bolEvents?elmLogin.addEventListener("click",function(event){intDir=-intDir;move("hlogin",intDir,23,-intLogin,0,15);event.preventDefault();},false):elmLogin.onclick=function(){intDir=-intDir;return move("hlogin",intDir,23,-intLogin,0,15);};
		if(elm("dropit"))bolEvents?elm("dropit").addEventListener("click",function(event){intDir=-intDir;move("hlogin",intDir,23,-intLogin,0,15);event.preventDefault();},false):elm("dropit").onclick=function(){intDir=-intDir;return move("hlogin",intDir,23,-intLogin,0,15);};
	}
	var elmContact=elm("contact").getElementsByTagName("form")[0];
	bolEvents?elmContact.addEventListener("submit",function(event){contact();event.preventDefault();},false):elmContact.onsubmit=function(){return contact();};
	if(elm("gmap")&&GBrowserIsCompatible()){
		var objMap=new GMap2(elm("gmap"),{size:new GSize(270,187)});
		objMap.addMapType(G_PHYSICAL_MAP);
		objMap.addControl(new GSmallZoomControl3D());
		objMap.addControl(new GMenuMapTypeControl(),new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(24,10)));
		var center=new GLatLng(53.33562044377572,-6.246950626373291);
		objMap.setCenter(center,15);
		var imgMarker=new GIcon();
		imgMarker.image="/images/map/marker.png";
		imgMarker.iconSize=new GSize(20,34);
		imgMarker.shadow="/images/map/shadow.png";
		imgMarker.shadowSize=new GSize(37,34);
		imgMarker.iconAnchor=new GPoint(9,34);
		var objMarker=new GMarker(center,{icon:imgMarker});
		objMap.addOverlay(objMarker);
	}
};
function openlink(url){
	var win=w.open(url,"external");
	if(win)win.focus();
	return false;
};

bolEvents?w.addEventListener("load",loadpage,false):w.onload=loadpage;
bolEvents?w.addEventListener("unload",GUnload,false):w.onunload=GUnload;
