addEvent(window,"load",labels_init);
function labels_init() { 
	if(document.getElementById&&document.styleSheets) { 
		try {
			var s=document.styleSheets[document.styleSheets.length-1];
			addStyleRule(s,"label.inside","position:absolute; visibility:hidden;");
			for(var i=0,label=null;(label=document.getElementsByTagName("label")[i]);i++) { 
				if(label.className=='inside') { label_init(label); }
			}
			addEvent(document.forms[0],"submit",labels_uninit);
		}
		catch(e) { }
	}
}
function labels_uninit(e) {
	if(document.getElementById&&document.styleSheets) {
		for(var i=0,label=null;(label=document.getElementsByTagName("label")[i]);i++) {
			var el=document.getElementById(label.htmlFor);if(el&&el.value==el._labeltext)label_hide(el);
		}
	}
}
function label_init(label) {
	try {
		var el=document.getElementById(label.htmlFor);
		var elName=el.nodeName;
		var elType=el.getAttribute("type");
		if(elName=="TEXTAREA"||(elType=="text"||elType=="password")) {
			el._labeltext=label.firstChild.nodeValue;
			el._type=el.getAttribute("type");
			addEvent(el,"focus",label_focused);
			addEvent(el,"blur",label_blurred);
			label_blurred({currentTarget:el});
		} else {
			label.style.position="static";label.style.visibility="visible";
		}
	}
	catch(e) {
		label.style.position="static";
		label.style.visibility="visible";
	}
}
function label_focused(e) {
	e=fix_e(e);
	var el=e.currentTarget;
	if(el.value==el._labeltext) el=label_hide(el)
	el.select();
}
function label_hide(el){if(el._type=="password")el=label_setInputType(el,"password");el.value="";return el;}
function label_blurred(e){e=fix_e(e);var el=e.currentTarget;if(el.value=="")el=label_show(el);}
function label_show(el){if(el._type=="password")el=label_setInputType(el,"text");el.value=el._labeltext;return el;}
function label_setInputType(el,type){if(navigator.appName=="Microsoft Internet Explorer"){var newEl=document.createElement("SPAN");newEl.innerHTML='<input type="'+type+'" />';newEl=newEl.firstChild;var s='';for(prop in el){try{if(prop!="type"&&prop!="height"&&prop!="width")newEl[prop]=el[prop];}
catch(e){}}
addEvent(newEl,"focus",label_focused);addEvent(newEl,"blur",label_blurred);el.parentNode.replaceChild(newEl,el);return newEl;}else{el.setAttribute("type",type);return el;}}
function addEvent(obj,evType,fn){if(obj.addEventListener){obj.addEventListener(evType,fn,false);return true;}else if(obj.attachEvent){var r=obj.attachEvent("on"+evType,fn);return r;}else{return false;}}
function addStyleRule(stylesheet,selector,rule){if(stylesheet.addRule)stylesheet.addRule(selector,rule);else{var index=stylesheet.cssRules.length;stylesheet.insertRule(selector+"{"+rule+"}",index);}}
function fix_e(e){if(!e&&window.event)e=window.event;if(!e.currentTarget&&e.srcElement)e.currentTarget=e.srcElement;if(!e.originalTarget&&e.srcElement)e.originalTarget=e.srcElement;return e;}
