/* Funções gerais sistema */

function sigcIniciarTela(obj_b, menu_it, menu_sub) {
	if(menu_it) {
		menuOnOff('menu-'+menu_it+'-sub');
		menuMarcar(menu_sub, 'menu-'+menu_it+'-sub');
	}
	
	conteudoLoading();
	fadeDIV('conteudo', 0, '+', 4);
}

function conteudoLoading() {
	if(document.getElementById("conteudo-loading")) {
		document.getElementById("conteudo-loading").style.display = 'none';
		document.getElementById("conteudo").style.display = 'block';
	}
}

function fadeDIV(id, opacity, dr, tx) {
	var object = document.getElementById(id).style;
	
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	//object.filter = "alpha(opacity=" + opacity + ")";
	
	if(!tx) tx = 10;
	
	if(dr == "-" && opacity < 0) {
		try { object.display = 'none'; } 
		catch(err) { }
	}
	else if(dr == "+" && opacity > 100) {
		try { object.display = 'block'; } 
		catch(err) { }
	}
	else if(dr == "-") window.setTimeout("fadeDIV('"+id+"', "+(opacity-tx)+", '-', "+tx+")", 10);
	else if(dr == "+") window.setTimeout("fadeDIV('"+id+"', "+(opacity+tx)+", '+', "+tx+")", 10);
}

/* Funções menu */

function menuOnOff(id) {
	var obj = document.getElementById(id);
	var dsp = obj.style.display;
	
	if(dsp.toLowerCase() == "block") obj.style.display = 'none';
	else obj.style.display = 'block';
}

function menuMarcar(it, dv) {
	var arr_a = document.getElementById(dv).getElementsByTagName("a");	
	
	for(i = 0; i < arr_a.length; i++) arr_a[i].style.color = '#666666';
	if(document.getElementById(dv+'-'+it)) document.getElementById(dv+'-'+it).style.color = '#000000';
}


/* Funções tabela */

function corRGB2Hexa(cor) {
	if(cor.indexOf("rgb") == -1 && cor.indexOf("RGB") == -1) return cor.toUpperCase();
	else {
		var rgb_str = cor.slice(cor.indexOf('(') + 1, cor.indexOf(')'));
		var rgb_vlr = rgb_str.split(",");
		var cor_ret = "#";
		var hex_chr = "0123456789ABCDEF";
		var i = 0;
		var v;
		
		for(i = 0; i < 3; i++) {
			v = rgb_vlr[i].valueOf();
			cor_ret += hex_chr.charAt(v/16) + hex_chr.charAt(v%16);
		}
		
		return cor_ret.toUpperCase();
	}
}

function trOnOff(chk, cod) {
	var cel = document.getElementById("tr-reg-"+cod).getElementsByTagName("td");
	var i;
	
	for(i = 0; i < cel.length; i++) {
		if(chk.checked) cel[i].style.backgroundColor = "#FFE9E9";
		else cel[i].style.backgroundColor = "#FFFFFF";
	}
}

function trOn(obj) {
	var cel = obj.getElementsByTagName("td");
	var i;
	var cor_tmp;
	
	for(i = 0; i < cel.length; i++) {
		cor_tmp = corRGB2Hexa(cel[i].style.backgroundColor);
		if(cor_tmp != "#FFE9E9") cel[i].style.backgroundColor = "#FFEFEF";
	}
}

function trOff(obj) {
	var cel = obj.getElementsByTagName("td");
	var i;
	var cor_tmp;
	
	for(i = 0; i < cel.length; i++) {
		cor_tmp = corRGB2Hexa(cel[i].style.backgroundColor);
		if(cor_tmp != "#FFE9E9") cel[i].style.backgroundColor = "#FFFFFF";
	}
}

/* Funções formulário */

function bOn(obj) {
	obj.style.backgroundColor = "#b51019";
}

function bOff(obj) {
	obj.style.backgroundColor = "#79161b";
}

function cOn(obj) {
	obj.style.borderColor = "#000000";
	//obj.style.backgroundColor = "#FFEFEF";
}

function cOff(obj) {
	obj.style.borderColor = "#999999";
	//obj.style.backgroundColor = "#FFFFFF";
}

function vCalendarData(obj) {
	Calendar.setup({
		inputField: obj.id, 
		button: obj.id,
		ifFormat: "%d/%m/%Y",
		showsTime: false,
		timeFormat: "24"
	});
}

function vCheckAllCheckbox(chk, frm_name) {
	var i, flag = false;
	var frm = document.forms[frm_name];
	
	for(i = 0; i < frm.elements.length; i++) {
		if(frm.elements[i].name.indexOf("chk_") != -1) {
			if(chk.checked)  frm.elements[i].checked = true;
			else frm.elements[i].checked = false;
			
			if(frm.elements[i].value) trOnOff(frm.elements[i], frm.elements[i].value);
		}
	}
}

function vSubmit(frm_name) {
	document.forms[frm_name].submit();
}

function vExcluir(frm_name) {
	var frm = document.forms[frm_name];
	if(confirm('Confirmar exclusão do registro?')) frm.submit();
}

function vCheckbox(frm) {
	var i, flag = false;
	
	for(i = 0; i < frm.elements.length; i++) {
		if((frm.elements[i].name.indexOf("chk_") != -1) && (frm.elements[i].checked)) {
			flag = true;
			break;
		}
	}
	
	return flag;
}

function vFrmEnter(frm_name) {
	if(event.keyCode == 13) document.forms[frm_name].submit();
	return false;
}

function vRetorno(frm_name, tipo) {
	document.forms[frm_name].ret.value = tipo;
}

function vFrmFiltroEnter(frm_name) {
	if(event.keyCode == 13) vFiltro(frm_name, 1);
	return false;
}

function vFiltro(f, pg, ord, sent) {
	var frm = document.forms[f];

	if(!pg) pg = 1;
	if(ord) frm.filtro_ordenar.value = ord;
	if(sent) frm.filtro_sentido.value = sent;
	
	frm.filtro.value = "ativar";
	frm.filtro_pgn.value = pg;
	
	frm.submit();
}

function vFiltroReiniciar(f) {
	var frm = document.forms[f];
	
	frm.filtro.value = "";
	frm.filtro_ordenar.value = "";
	frm.filtro_sentido.value = "";
	frm.filtro_pgn.value = 1;
	frm.filtro_pgn_qtd_reg.value = 25;
	
	frm.submit();
}

function vPgnQtdReg(obj, f) {
	var frm = document.forms[f];
	var qtd = frm.filtro_pgn_qtd_reg;
	
	qtd.value = obj.value;
}

function vTooltip(ttip, req, tipo, msg) {
	var cnt = "";
	
	if(!ttip) {
		toolTip();
		return false;
	}
	
	if(msg) {
		cnt += msg+"<br>";
	}
	
	if(tipo != "null") return;
	
	if(req == 1) {
		cnt += "<font color='#CC0000'>Preenchimento obrigatório</font><br>";
	}
	
	if(tipo == "email") {
		cnt += "E-mail: campo alfanumérico";
		cnt += "<br>Ex.: usuario@provedor.com.br";
	}
	else if(tipo == "url") {
		cnt += "URL: campo alfanumérico";
		cnt += "<br>Ex.: www.infomet.com.br";
	}
	else if(tipo == "cnpj") {
		cnt += "Cnpj: campo numérico";
		cnt += "<br>Ex.: xx.xxx.xxx/xxxx-xx";
	}
	else if(tipo == "data") {
		cnt += "Data: campo numérico";
		cnt += "<br>Ex.: dd/mm/aaaa";
	}
	else if(tipo == "cpf") {
		cnt += "Cpf: campo numérico";
		cnt += "<br>Ex.: xxx.xxx.xxx-xx";
	}
	else if(tipo == "numero") {
		cnt += "Campo numérico";
		cnt += "<br>Ex.: 123456";
	}
	else if(tipo == "cep") {
		cnt += "Cep: campo numérico";
		cnt += "<br>Ex.: xxxxx-xxx";
	}
	else if(tipo == "select") {
		cnt += "Lista de seleção";
		cnt += "";
	}
	else if(tipo == "combo") {
		cnt += "Lista de seleção";
		cnt += "";
	}
	else if(tipo == "checkbox") {
		cnt += "Caixa de seleção múltipla";
		cnt += "";
	}
	else if(tipo == "radio") {
		cnt += "Caixa de seleção";
		cnt += "";
	}
	else if(tipo == "arquivo") {
		cnt += "Endereço do arquivo";
		cnt += "";
	}
	else if(tipo == "null") {
	}
	else {
		cnt += "Campo alfanumérico";
		cnt += "<br>Ex.: texto1234";
	}
	
	toolTip(cnt);
}