/******* x - cross-browser JavaScript ***********/

var xOp7Up,xOp6Dn,xIE4Up,xIE4,xIE5,xNN4,xUA=navigator.userAgent.toLowerCase();
if(window.opera){
  var i=xUA.indexOf('opera');
  if(i!=-1){
    var v=parseInt(xUA.charAt(i+6));
    xOp7Up=v>=7;
    xOp6Dn=v<7;
  }
}
else if(navigator.vendor!='KDE' && document.all && xUA.indexOf('msie')!=-1){
  xIE4Up=parseFloat(navigator.appVersion)>=4;
  xIE4=xUA.indexOf('msie 4')!=-1;
  xIE5=xUA.indexOf('msie 5')!=-1;
}
else if(document.layers){xNN4=true;}
xMac=xUA.indexOf('mac')!=-1;

function xGetElementById(e) {
  if(typeof(e)!='string') return e;
  if(document.getElementById) e=document.getElementById(e);
  else if(document.all) e=document.all[e];
  else e=null;
  return e;
}

function xInsertRule(ss, sel, rule, idx)
{
  if (!(ss=xGetElementById(ss))) return false;
  if (ss.insertRule && !(xIE5 && xMac) ) { ss.insertRule(sel + "{" + rule + "}", (idx>=0?idx:ss.cssRules.length)); } // DOM
  else if (ss.addRule) { ss.addRule(sel, rule, idx); } // IE
  else return false;

  return true;
}
function RandomPhoto(p)
{
	var c=document.styleSheets;
	if (!c) return;
	xInsertRule(c[0], "#contento.home", "background-image: url(" + p + aPhotos[Math.floor( aPhotos.length * Math.random() )] + ");", -1);
}

function IC_Contact(u,d,c){var pre="mai";document.write("<a href=\""+pre+"lto:"+u+"%40"+d+"\">");if(c) document.write(u+"&#64;"+d + "</a>");}
function HasClass(p,c) {
	p = " " + p + " ";
	return p.indexOf(c) != -1;
}
function AddClass(e,c) { if (!HasClass(e.className,c)) e.className += " " + c; }
function RemoveClass(e,c)
{
	var p="", r=0;
	var a = e.className.split(" ");
	for (var i=1; i<a.length; i++)
		if (a[i] == c)
			r=1;
		else
			p += (p.length ? " " : "") + a[i];
	if (r) e.className = p;
}
function Validate()
{
	var eFrm = document.getElementById('frmData').elements;
	var eBad=null;
	for(var i = 0; i < eFrm.length; i++)
	{
		var eCtrl = eFrm[i];
		if ( HasClass(eCtrl.className, "frmCtrlReqd") )
			if ( !eCtrl.value.length )
			{
				AddClass(eCtrl,"frmCtrlInvalid");
				if (!eBad) eBad = eCtrl;
			}
			else
				RemoveClass(eCtrl,"frmCtrlInvalid");
	}
	if ( eBad )
	{
		window.alert("Please complete all required fields")
		eBad.focus();
		return false;
	}
	else
		return true;
}

function isdef(n) {	return eval("typeof("+n+")")!="undefined"; }
function gete(n) { return document.all ? document.all[n] : document.getElementById(n); }
function map(e,lng,lat,z) {
	if (!isdef("GBrowserIsCompatible") || !GBrowserIsCompatible())
		return;

	var i = gete(e);
	var p=i.parentNode;
	var d = document.createElement("div");
	d.style.width = i.width + "px";
	d.style.height = i.height + "px";
	p.insertBefore(d, i);
	p.removeChild(i);

	var map = new GMap2(d);
	if ( window.location.search.indexOf("clean=1")<0 ) {
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
	}
	map.setCenter(new GLatLng(lng,lat), z);
	map.openInfoWindowHtml(map.getCenter()
		, "<img src='"+ i.src.replace(/\.gif$/,"-icon.gif") +"' />");
}

function MapUnload() {
	if (!isdef("GBrowserIsCompatible") || !GBrowserIsCompatible())
		return;
	GUnload()
}

function MapLoad() {

	var l = document.body.getElementsByTagName('img');
	var x = new Array();

	for (var i = 0; i < l.length; i++)
		x[i]=l[i].id;

	for (var i = 0; i < x.length; i++)
	{
		var a = x[i].split("_");
		if ( a[0] == "map" )
			map(x[i], a[1], a[2], parseInt(a[3]) );
	}
}
