function addEvent(element, eventType, lamdaFunction, useCapture) {
	if (element.addEventListener) {
		element.addEventListener(eventType, lamdaFunction, useCapture);
		return true;
	} else if (element.attachEvent) {
		var r = element.attachEvent('on' + eventType, lamdaFunction);
		return r;
	} else {
		return false;
	}
}

addEvent(window, 'load', init, false);

function init() {
	var listInputs = document.getElementsByTagName('input');
	for (var i = 0; i < listInputs.length; i++) {
		var currentInput = listInputs[i];
		if (currentInput.type == 'text' && currentInput.className.match(/\bcleardefault\b/)) {
			addEvent(currentInput, 'focus', clearDefaultText, false);
			addEvent(currentInput, 'blur', replaceDefaultText, false);
			if (currentInput.value != '') {
				currentInput.defaultText = currentInput.value;
			}
		}
		else if (currentInput.type == 'radio' && currentInput.className.match(/\bexpand\b/)) {
			addEvent(currentInput, 'click', expand, false);
		}
	}
	var listAnchors = document.getElementsByTagName('a');
	for (var i = 0; i < listAnchors.length; i++) {
		var currentAnchor = listAnchors[i];
		if (currentAnchor.className.match(/\bexpandToggle\b/)) {
			addEvent(currentAnchor, 'click', expandToggle, false);
		}
		else if (currentAnchor.className.match(/\bordenar\b/)) {
			//addEvent(currentAnchor, 'click', ordenar, false);
			//addEvent(currentAnchor, 'focus', ordenarOn, false);
			//addEvent(currentAnchor, 'blur', ordenarOff, false);
			//addEvent(currentAnchor, 'mouseover', ordenarOn, false);
			//addEvent(currentAnchor, 'mouseout', ordenarOff, false);
		}
	}
	var listImages = document.getElementsByTagName('img');
	for (var i = 0; i < listImages.length; i++) {
		var currentImage = listImages[i];
		if (currentImage.className.match(/\bthumb\b/)) {
			addEvent(currentImage, 'click', openImage, false);
		}
	}
}

function clearDefaultText(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	if (target.value == target.defaultText) {
		target.value = '';
	}
}

function replaceDefaultText(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	if (target.value == '' && target.defaultText) {
		target.value = target.defaultText;
	}
}

function expand(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	var nome = document.getElementById(target.attributes.xname.nodeValue + 'Options');
	if (target.value == 'sim' && nome.style.display != 'block') {
		nome.style.display = 'block';
	}
	else if (target.value == 'nao' && nome.style.display != 'none') {
		nome.style.display = 'none';
	}
}

function expandToggle(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	var href_ok = target.href.substring(target.href.indexOf('#')+1, target.href.length);
	var nome = document.getElementById(href_ok);
	if (nome.style.display == 'block') {
		nome.style.display = 'none';
	}
	else {
		nome.style.display = 'block';
	}
}

function ordenar(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	if (target.className == 'ordenar' || target.className == 'ordenar dsc') {
		target.className = 'ordenar asc';
		target.title = 'Ordenar descendentemente';
	}
	else if (target.className == 'ordenar asc') {
		target.className = 'ordenar dsc';
		target.title = 'Ordenar ascendentemente';
	}
	var listAnchors = document.getElementsByTagName('a');
	for (var i = 0; i < listAnchors.length; i++) {
		var currentAnchor = listAnchors[i];
		if (currentAnchor.className.match(/\bordenar\b/)) {
			if (currentAnchor.className != 'ordenar' && currentAnchor != target) {
				currentAnchor.className = 'ordenar';
				currentAnchor.title = 'Ordenar ascendentemente';
			}
		}
	}
}

function ordenarOn(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	target.previousBackground = target.style.backgroundImage;
	if (target.className == 'ordenar' || target.className == 'ordenar dsc') {
		target.style.backgroundImage = "url(../../Common/Images/arrow_asc_h.gif)";
	}
	else if (target.className == 'ordenar asc') {
		target.style.backgroundImage = "url(../../Common/Images/arrow_dsc_h.gif)";
	}
}

function ordenarOff(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	target.style.backgroundImage = target.previousBackground;
}

function openImage(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;
	var listImages = document.getElementsByTagName('img');
	for (var i = 0; i < listImages.length; i++) {
		var currentImage = listImages[i];
		if (currentImage.className == 'thumb sel') {
			currentImage.className = 'thumb';
		}
	}
	target.className = 'thumb sel';
	MM_swapImage('imagem','',target.src,1);
}

function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_findObj(n, d) { //v4.01
	var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}
