/* from http://www.thefutureoftheweb.com/blog/adddomloadevent */
addDOMLoadEvent=(function(){var e=[],t,s,n,i,o,d=document,w=window,r='readyState',c='onreadystatechange',x=function(){n=1;clearInterval(t);while(i=e.shift())i();if(s)s[c]=''};return function(f){if(n)return f();if(!e[0]){d.addEventListener&&d.addEventListener("DOMContentLoaded",x,false);/*@cc_on@*//*@if(@_win32)d.write("<script id=__ie_onload defer src=//0><\/scr"+"ipt>");s=d.getElementById("__ie_onload");s[c]=function(){s[r]=="complete"&&x()};/*@end@*/if(/WebKit/i.test(navigator.userAgent))t=setInterval(function(){/loaded|complete/.test(d[r])&&x()},10);o=w.onload;w.onload=function(){x();o&&o()}}e.push(f)}})();


function addOnSubmit(f, func)
{
	var oldonsubmit = f.onsubmit;
	if(typeof f.onsubmit != 'function')
	{
		f.onsubmit = func;
	}
	else
	{
		f.onsubmit = function()
		{
			if(oldonsubmit)
			{
				oldonsubmit();
			}
			func();
		}
	}
}

function focusField(f, defaultText)
{
	if(f.value == defaultText) { f.value = ''; }
	f.setAttribute('class', 'magicFieldNormal');
	f.setAttribute('className', 'magicFieldNormal'); // IE
}

function blurField(f, defaultText)
{
	if(f.value == '')
	{
		f.value = defaultText;
		f.setAttribute('class', 'magicFieldUnused');
		f.setAttribute('className', 'magicFieldUnused'); // IE
	}
}

function setupMagicFormField(text, fieldid, formid)
{
	var form = document.getElementById(formid);
	var field = document.getElementById(fieldid);
	
	blurField(field, text);
	field.onblur = function() { blurField(field, text); };
	field.onfocus = function() { focusField(field, text); };
	addOnSubmit(form, function() { focusField(field, text); });
}

function magicFormField(text, fieldid, formid)
{
	addDOMLoadEvent(function() {setupMagicFormField(text, fieldid, formid);});
}



// Magic Email...
addDOMLoadEvent(function()
{
	var addrString = ("dqguhz@" + "dqguhzuxvvhoo.qhw").replace(/[a-z]/g,function(c){return String.fromCharCode(c.charCodeAt(0)-3);});
	
	var images = document.getElementsByTagName("img");	
	
	for(var i = images.length-1; i >= 0; --i) // getElementsByTagName result is dynamicly updated
	{
		if(images[i].getAttribute("alt") == "my email address")
		{
			var addrElement = document.createElement("a");
			addrElement.setAttribute("href", "mail" + "to:" + addrString);
			addrElement.appendChild(document.createTextNode(addrString));
			images[i].parentNode.insertBefore(addrElement, images[i]);
			images[i].parentNode.removeChild(images[i]);
		}
	}
});



