(function(){
var t=this,d=this.document,g="getElementById",f=d[g]("first"),l=d[g]("last"),e=d[g]("email"),
	j=d[g]("subject"),k=d[g]("message"),m=d[g]("error-message");

t.check = function (t) {
	var a=t.firstChild.className=t.firstChild.className=='a'?'':'a';
	t.lastChild.value=!a?0:1;
};

t.messageCheck = function (form) {
	var r=true,
		f=form.first,
		l=form.last,
		e=form.email,
		j=form.subject,
		k=form.message;
	if (!f.value) {
		r=showMessage(f,"Please provide us with your first name, so that we may better assist you.");
	} else if (!l.value) {
		r=showMessage(l,"Please provide us with your last name, so that we may better assist you.");
	} else if (!e.value || !e.value.match(/^[^@\s]+@([\w\-]+\.)\w{2,}$/)) {
		r=showMessage(e,"Please provide us with a valid email address, so that we may better assist you.");
	} else if (!j.value) {
		r=showMessage(j,"Please include a subject, so that we may better assist you.");
	} else if (!k.value) {
		r=showMessage(k,"Please include a message, so that we may better assist you.");
	}
	return r;
};

function offset (elem) {
	if ( !elem || !elem.ownerDocument ) {
		return {t:0,l:0};
	}

	var box = elem.getBoundingClientRect(), doc = elem.ownerDocument, body = doc.body, docElem = doc.documentElement,
		clientTop = docElem.clientTop || body.clientTop || 0, clientLeft = docElem.clientLeft || body.clientLeft || 0,
		top  = box.top  + (self.pageYOffset || docElem.scrollTop  || body.scrollTop ) - clientTop,
		left = box.left + (self.pageXOffset || docElem.scrollLeft || body.scrollLeft) - clientLeft;

	return { t: top, l: left };
}

function showMessage (e,s) {
	var o = offset(e),n=m.style;
	e.focus();
	e.style.outline="1px solid #F00";
	m.innerHTML = s;
	n.display="block";
	n.top=(o.t-(m.offsetHeight+6))+"px";
	n.left=(o.l-(((m.offsetWidth+6)-e.offsetWidth)/2))+"px";
	setTimeout(function(){n.display="none"},4000);
	return false;
}
})();
