var isIE = (navigator.appName.toLowerCase().indexOf('microsoft') != -1);
if (typeof top.estrutura == "object") 
	var estrutura = top.estrutura;

var Sisweb = {
	funcoesOnLoad: "",
	funcoesOnUnload: "",
	semFoco: true,
	iniciar: function(parte){
		if (typeof parte == "undefined") parte = document;
		var Tags = ['input','textarea','select'];
		for(var z=0;z<Tags.length;z++){
			var Inputs=parte.getElementsByTagName(Tags[z]);
			for(var i=0;i<Inputs.length;i++)
				if(('button,image,submit,reset').indexOf(Inputs[i].type.toLowerCase())==-1)
					this.aplicar(Inputs[i]);
		}
		this.setFocus();
		Tags = null;
		Inputs = null;
	},
	aplicar: function (obj){
		if (typeof ControleDoEnter == "object")
			ControleDoEnter.aplicar(obj);
		if (typeof Obrigatorios == "object")
			Obrigatorios.aplicar(obj, (typeof _SITE_ != "undefined" && _SITE_ == true));
		if (typeof Mascaras == "object")
			Mascaras.aplicar(obj);
	},
	carregar: function(funcao){
		if (funcao != "" && funcao != null)
			this.funcoesOnLoad += funcao + ";";
	},
	aoFechar: function(funcao){
		if (funcao != "" && funcao != null)
			this.funcoesOnUnload += funcao + ";";
		funcao = null;
	},
	gerenciaOnLoad: function(){
		this.carregar(window.onload);
		var onload = function(){ $E(Sisweb.funcoesOnLoad);}
		if(typeof Eventos == 'object')
			Eventos.adiciona(window, 'load', onload);
		this.aoFechar(window.onunload);
		var onunload = function(){ $E(Sisweb.funcoesOnUnload);}
		window.onunload = onunload;
	},
	setFocus: function(qual){
		if(this.semFoco)
			return;
		if (!$TP(qual)){
			$F(qual);
			return;
		}
		var formu = document.forms[0];
		if(formu != null){
			var e = formu.elements;
			if( e[0] != null) {
				for(var i = 0; i < e.length; i++ ) {
					if( e[i].type != "hidden" && !e[i].disabled && !e[i].getAttribute("readonly")){
						var o = e[i];
						var esc = false;
						while(o.nodeName != "FORM"){
							if (o.style.display == "none"){
								esc = true;
								break;
							}
							o = o.parentNode;
						}
						if (esc == false){
							$F(e[i]);
							break;
						}
					}
				}
			}
		}
	}
};

Sisweb.carregar("Sisweb.iniciar();");

function carregar(Args){
	for (var i=0; i<Args.length; i++)
		Sisweb.carregar(Args[i]);
}