////////// Menu Rollovers

//constructor:
function ImageSwapObject(onPath,offPath,imgName,imgPath)
{
	if(document.images)
	{
		this.on=new Image();
		this.on.src="/images/"+ imgPath + "/" + onPath;
		this.off=new Image();
		this.off.src="/images/"+imgPath + "/" + offPath;
		this.imageName=imgName;
	}
}

//force prototype creation:
new ImageSwapObject("on","off","name","path");

//functions:
function ImageSwapObject_turnOn()
{
	if(document.images)
	{
		document.images[this.imageName].src=this.on.src;
	}
}

function ImageSwapObject_turnOff()
{
	if(document.images)
	{
		if(!document.layers)
		{
			document.images[this.imageName].src=this.off.src;
		}
		else
		{
			document.images[this.imageName].src=this.off.src;
		}
	}
}

//turn functions into methods:
ImageSwapObject.prototype.turnOn=ImageSwapObject_turnOn;
ImageSwapObject.prototype.turnOff=ImageSwapObject_turnOff;


//create objects:

//top menu items
var mHome = new ImageSwapObject("menu-home-on.jpg","menu-home-off.jpg","m-home","layout");
var mAbout = new ImageSwapObject("menu-about-on.jpg","menu-about-off.jpg","m-about","layout");
var mServices = new ImageSwapObject("menu-services-on.jpg","menu-services-off.jpg","m-services","layout");
var mProjects = new ImageSwapObject("menu-projects-on.jpg","menu-projects-off.jpg","m-projects","layout");
var mGallery = new ImageSwapObject("menu-gallery-on.jpg","menu-gallery-off.jpg","m-gallery","layout");
var mMovies = new ImageSwapObject("menu-movies-on.jpg","menu-movies-off.jpg","m-movies","layout");
var mContact = new ImageSwapObject("menu-contact-on.jpg","menu-contact-off.jpg","m-contact","layout");

//////// MISC FUNCTIONS

function trim(s)
{
	return s.replace(/^\s+|\s+$/g, '');
}

function validEmail(ea)
{
	var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
	var regex = new RegExp(emailReg);
	return regex.test(ea);
  }

function validate(f,el)
{
	var address = trim(document.getElementById(el).value);
	var valid = validEmail(address);

	if(!valid)
	{
		alert("\"" + address + "\" is not a valid email address. A valid email address is required to submit this form.");
		f.focus();
		f[el].select();
		return false;
	}
	else return true;
}
