// JavaScript Document

// Determina o browser
NS6 = (document.getElementById&&!document.all);
IE = (document.all);
NS = (navigator.appName=="Netscape" && navigator.appVersion.charAt(0)=="4");
var objeto = null;

var UTIL = {
	URL:function(objeto) {
		url = objeto.options[objeto.selectedIndex].value;
		if((url != '') && (url != 'cidade'))
			parent.location = url;		
	},
	REGIAO:function(objeto) {
		var regiao = objeto.value
		if(regiao != 'regiao')
		{
			var html = AJAX.REQUEST("GET", "/cef/ajax/cidades.php?secao="+regiao);
			OBdestino = UTIL.GetObject("div_cidade");
			OBdestino.innerHTML = html;
		}
		void(0);
	},
	GetObject:function(nome){
		// Caça Objeto pelo nome (div, img etc)
		if (NS6){objeto=document.getElementById(nome);}
		else if (IE) {objeto=document.all(nome);}
		else if (NS) {objeto=document.layers[nome];}
		return objeto;
	},
	GO_desativa:function(nome){
		// Desativa um layer pelo nome
		GetObject(nome);
		if (IE||NS6) {objeto.style.visibility = "hidden";}
		if (NS) {objeto.style.visibility = "hide";}
		return true;
	},
	GO_ativa:function(nome){
		// Ativa um layer pelo nome
		GetObject(nome);
		if (IE||NS6) {objeto.style.visibility = "visible";}
		if (NS) {objeto.style.visibility = "show";}
		return true;
	},
	createXMLHttpRequest:function() {
		try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}
		try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
		try { return new XMLHttpRequest(); } catch(e) {}
		alert("XMLHttpRequest not supported");
		return null;
	},
	numbers_only:function(obj){
		reg = /[^0-9.,]/g;
		obj.value =  obj.value.replace(reg,"");
		obj.value =  obj.value.replace(",",".");
		return void(0);
	},
	auto_cursor:function(ob_campo,comp,id_proximo){
		var objeto;
		if(ob_campo.value.length >= comp)
		{
			objeto = UTIL.GetObject(id_proximo);
			if(objeto.type == "text")
				objeto.select();
		}
		return void(0);
	}
}

if(typeof HTMLElement!="undefined" && !
HTMLElement.prototype.insertAdjacentElement){
	HTMLElement.prototype.insertAdjacentElement = function
(where,parsedNode)
	{
		switch (where){
		case 'beforeBegin':
			this.parentNode.insertBefore(parsedNode,this)
			break;
		case 'afterBegin':
			this.insertBefore(parsedNode,this.firstChild);
			break;
		case 'beforeEnd':
			this.appendChild(parsedNode);
			break;
		case 'afterEnd':
			if (this.nextSibling) 
this.parentNode.insertBefore(parsedNode,this.nextSibling);
			else this.parentNode.appendChild(parsedNode);
			break;
		}
	}

	HTMLElement.prototype.insertAdjacentHTML = function
(where,htmlStr)
	{
		var r = this.ownerDocument.createRange();
		r.setStartBefore(this);
		var parsedHTML = r.createContextualFragment(htmlStr);
		this.insertAdjacentElement(where,parsedHTML)
	}


	HTMLElement.prototype.insertAdjacentText = function
(where,txtStr)
	{
		var parsedText = document.createTextNode(txtStr)
		this.insertAdjacentElement(where,parsedText)
	}
}
