// JavaScript Document
var t = new Number();
var start = new Number();
var end = new Number();
var q = new Number();
var boolFormat = false;

function checkBrowser(){
    if(navigator.appName.indexOf("Microsoft") != -1){
        var b_version = navigator.appVersion;
        var version = parseFloat(b_version);
        if(version <= 7){
            alert("Seu navegador nao suporta todos os recursos desse site!\nVoce pode fazer o download de navegadores melhores verificando o rodape desse site!");
            var x = document.getElementsByTagName("div");
            for(i = 0; i <= x.length; i++){
                if(x[i] != undefined){
                    if(x[i].className == "submenu"){
                        x[i].style.height = "auto";
                    }
                    
                    if(x[i].id == "box"){
                        var y = x[i].childNodes;
                        for(u = 0; u < y.length; u++){
                           if(y[u].href != undefined){
                                if(y[u].href.indexOf("showOver") != -1)
                                    y[u].href = "javascript:void(0);";
                            }
                        }
                    }
                }
            }
        }
    }
    onload_fnc();
}

function selectAct(obj, url, value){
    if(obj)
        if(obj.value != "")
            location.href = url + value;
}

function heightAdjust(id){
    var x = document.getElementById(id);
    if(x){
        if(document.body.clientHeight){
            x.height = (document.body.clientHeight + 21);
        }
    }
}

function allowAjax(){
	try{
		xmlhttp = new XMLHttpRequest();
	}catch(err1){
		try{
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(err2){
			try{
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(err3){
				xmlhttp = false;
				if(err3){
					alert("Desculpe! Mais o seu browser não suporta todas as funcionalidades dessa página.");
				}
			}
		}
	}
}

function onload_fnc(){
	Selection = function(input){
		this.isTA = (this.input = input).nodeName.toLowerCase() == "textarea";
	};
	with({o: Selection.prototype}){
		o.setCaret = function(start, end){
			var o = this.input;
			if(Selection.isStandard)
				o.setSelectionRange(start, end);
			else if(Selection.isSupported){
				var t = this.input.createTextRange();
				end -= start + o.value.slice(start + 1, end).split("\n").length - 1;
				start -= o.value.slice(0, start).split("\n").length - 1;
				t.move("character", start), t.moveEnd("character", end), t.select();
			}
		}
		o.getCaret = function(){
			var o = this.input, d = document;
			if(Selection.isStandard)
				return {start: o.selectionStart, end: o.selectionEnd};
			else if(Selection.isSupported){
				var s = (this.input.focus(), d.selection.createRange()), r, start, end, value;
				if(s.parentElement() != o)
					return {start: 0, end: 0};
				if(this.isTA ? (r = s.duplicate()).moveToElementText(o) : r = o.createTextRange(), !this.isTA)
					return r.setEndPoint("EndToStart", s), {start: r.text.length, end: r.text.length + s.text.length};
				for(var $ = "[###]"; (value = o.value).indexOf($) + 1; $ += $);
				r.setEndPoint("StartToEnd", s), r.text = $ + r.text, end = o.value.indexOf($);
				s.text = $, start = o.value.indexOf($);
				if(d.execCommand && d.queryCommandSupported("Undo"))
					for(r = 3; --r; d.execCommand("Undo"));
				return o.value = value, this.setCaret(start, end), {start: start, end: end};
			}
			return {start: 0, end: 0};
		}
		o.getText = function(){
			var o = this.getCaret();
			return this.input.value.slice(o.start, o.end);
		}
		o.setText = function(text){
			var o = this.getCaret(), i = this.input, s = i.value;
			i.value = s.slice(0, o.start) + text + s.slice(o.end);
			this.setCaret(o.start += text.length, o.start);
		}
		new function(){
			var d = document, o = d.createElement("input"), s = Selection;
			s.isStandard = "selectionStart" in o;
			s.isSupported = s.isStandard || (o = d.selection) && !!o.createRange();
		}
	}
	
	if(document.getElementById("data")){
		var clock = self.setInterval("dateTime('data')", 50);
	}
}

function change(x, id){
    var y = document.getElementById(id);
    if(x.checked){
        y.disabled = false;
    }else{
        y.disabled = true;
    }
}
function validaForm(x){
	for(var i = 0; i < x.elements.length; i++){
		if(x.elements[i].title != ""){
			if(x.elements[i].title.indexOf("mail") == -1 || x.elements[i].title.indexOf("mail") == -1){
				if(x.elements[i].value == ""){
                    if(!x.elements[i].disabled){
                        alert("Por favor, preencha o campo " + x.elements[i].title + " corretamente!");
                        x.elements[i].focus();
                        return false;
                    }
				}
			}else{
				if(x.elements[i].value.indexOf("@") == -1 || x.elements[i].value.indexOf(".") == -1 || x.elements[i].value.length <= 6){
                    if(!x.elements[i].disabled){
                        alert("Por favor, preencha o campo " + x.elements[i].title + " corretamente!");
                        x.elements[i].focus();
                        return false;
                    }
				}
			}
		}
		if(x.elements[i].name){
			if(x.elements[i].name.indexOf("fl") != -1){
				if(x.elements[i].value != ""){
                        x.action += "&upload=ok";
                        x.enctype = "multipart/form-data";
                        break;
				}else{
					x.action = x.action.replace("&upload=ok", "");
					x.enctype = "application/x-www-form-urlencoded";
				}
			}
		}
	}
	for(var i = 0; i < x.elements.length; i++){
		x.elements[i].disabled = false;
	}
}
function formatField(obj, e){
	var selection = new Selection(obj);

	var keynum = e.keyCode ? e.keyCode : e.charCode ? e.charCode : e.which ? e.which : void 0;
	if(keynum >= 96 && keynum <= 105) keynum = keynum - 48;
	var keychar = String.fromCharCode(keynum);
	var nonNumbers = /\D/;
	
	if(!nonNumbers.test(keychar)){
		if(obj.value.indexOf("_") != -1){
			q = obj.value.indexOf("_");
			start = selection.getCaret().start;
			end = selection.getCaret().end;
			
			if(start < obj.defaultValue.length){
				while(!0){
					if(obj.value.substr(start, 1) == "_"){
						obj.value = obj.value.substring(0, start) + keychar + obj.value.substring(start + 1);
						selection.setCaret(start + 1, start + 1);
						break;
					}else{
						start = start + 1;
						if(start >= obj.maxLength) break;
					}
				}
			}
		}else{
			start = selection.getCaret().start;
			end = selection.getCaret().end;
			
			if(start < obj.maxLength){
				while(!0){
					selection.setCaret(start, end);
					if(!nonNumbers.test(obj.value.substr(start, 1))){
						if(end < start) end = start;
						if(start == end){
							obj.value = obj.value.substring(0, start) 
								+ keychar 
								+ obj.value.substring(start + 1);
						}else{
							obj.value = obj.value.substring(0, start) 
								+ keychar 
								+ obj.defaultValue.substring(start + 1, end) 
								+ obj.value.substring(end);
						}
						selection.setCaret(start + 1, start + 1);
						break;
					}else{
						start = start + 1;
						if(start >= obj.maxLength) break;
					}
				}
			}
		}
	}else{
		start = selection.getCaret().start;
		end = selection.getCaret().end;
		if(obj.id == "") obj.id = obj.name;
		t = setTimeout("checkField('" + obj.id + "', '" + obj.value + "', " + keynum + ")", 1);
	}
	
	this.onkeyup = function(){
		start = selection.getCaret().start;
		end = selection.getCaret().end;
		t = setTimeout("checkField('" + obj.id + "', '" + obj.value + "', " + keynum + ")", 1);
	}
}
function checkField(x, value, keynum){
	var obj = document.getElementById(x);
	var compostValue = value;
	var selection = new Selection(obj);
	
	if(start == end){
		start = selection.getCaret().start;
		end = selection.getCaret().end;
		
		if(keynum == 8){
			if(start >= 0 && obj.value.length < obj.defaultValue.length){
				obj.value = obj.value.substr(0, start) 
					+ obj.defaultValue.substr(start, 1) 
					+ obj.value.substring(start);
				selection.setCaret(start, start);
			}
		}else if(keynum == 46){
			obj.value = obj.value.substr(0, start) 
				+ obj.defaultValue.substr(start, 1) 
				+ obj.value.substring(start + 1);
			selection.setCaret(start, start);
		}
		
		if(obj.value.length < obj.defaultValue.length){
			obj.value = obj.defaultValue;
			selection.setCaret(0, 0);
		}
	}else{
		if(obj.value.length != compostValue.length){
			obj.value = compostValue.substring(0, start) 
				+ obj.defaultValue.substring(start, end) 
				+ compostValue.substring(end);
			selection.setCaret(start, start);
		}
	}
	clearTimeout(t);
}

function markCheckbox(x){
    var y = document.getElementsByTagName("input");
    for(i = 0; i < y.length; i++){
        if(y[i].type == "checkbox"){
            if(y[i] != x){
                if(x.checked) y[i].checked = true;
                if(!x.checked) y[i].checked = false;
            }
        }
    }
}
function markAll(id){
    var x = document.getElementById(id);
    var y = document.getElementsByTagName("input");
    var check = 1;
    
    for(i = 0; i < y.length; i++){
        if(y[i].type == "checkbox"){
            if(y[i].name.indexOf("All") == -1){
                if(!y[i].checked){
                    check = 0;
                    break;
                }
            }
        }
    }
    
    if(check) x.checked = true;
    if(!check) x.checked = false;
}

function abrePop(url, w, h){
    var test = false;
    if(url == ""){
        try{
            test = validaForm(document.formCert);
            if(!test){
                if(test == undefined) window.open(url, "popup", "menubar=no, statusbar=no, resizable=no, scrollbars=no, toobar=no, width=" + w + ", height=" + h + ", top=10, left=10");
                else return false;
            }
        }catch(err){
            window.open(url, "popup", "menubar=no, statusbar=no, resizable=no, scrollbars=no, toobar=no, width=" + w + ", height=" + h + ", top=10, left=10");
        }
    }else
            window.open(url, "popup", "menubar=no, statusbar=no, resizable=no, scrollbars=yes, toobar=no, width=" + w + ", height=" + h + ", top=10, left=10");
}
function countClear(id){
	var x = document.getElementById(id);
	if(x){
		var time = setTimeout("hide('" + id + "')", 10000);
	}
}
function submitFalse(url, alvo){
	var x = document.getElementById(alvo);
	if(x.value == ""){
		alert("Você deve digitar um critério de busca antes de continuar.");
	}else{
		if(x.value != x.defaultValue){
			var y = url + "&extra=" + x.value;
			location.href = y;
		}else{
			alert("Você deve digitar um critério de busca antes de continuar.");
		}
	}
}
function blankInput(x, act){
	if(act == "foco"){
		if(x.value == x.defaultValue){
			x.value = "";
		}
	}else{
		if(x.value == ""){
			x.value = x.defaultValue;
		}
	}
}
function cleanField(x){
	if(x.value == x.defaultValue) x.value = "";
}
function fillField(x){
	if(x.value == "") x.value = x.defaultValue;
}

function showOver(id, u, check){
    var y = document.getElementById(id);
    var z = y.childNodes;
    
    for(var i = 0; i < z.length; i++){
        if(z[i].nodeName.indexOf("SPAN") != -1 || z[i].nodeName.indexOf("span") != -1){
            var w = z[i].clientHeight + 4;
            if(!check){
                var x = document.getElementsByTagName("a");
                for(m = 0; m < x.length; m++){
                    if(x[m].href != undefined){
                        if(x[m].href.indexOf(id) != -1){
                            var v = x[m].childNodes;
                            for(var l = 0; l < v.length; l++){
                                if(v[l].nodeName == "IMG" || v[l].nodeName == "img"){
                                    if(v[l].src.indexOf("Up") != -1) v[l].src = v[l].src.replace("Up", "Down");
                                    else v[l].src = v[l].src.replace("Down", "Up");
                                }
                            }
                        }
                    }
                }
                
                if(y.clientHeight >= w) check = 2;
                else check = 1;
            }
            
            if(u){
                if(check == 1){
                    if(u <= w){
                        y.style.height = u + "px";
                        clearTimeout(t);
                        t = setTimeout("showOver('" + id + "', " + (u + 15) + ", 1)", 20);
                    }else{
                        y.style.height = w + "px";
                        clearTimeout(t);
                    }
                }else{
                    if(u >= 0){
                        y.style.height = u + "px";
                        t = setTimeout("showOver('" + id + "', " + (u - 15) + ", 2)");
                    }else{
                        y.style.height = "0px";
                        clearTimeout(t);
                    }
                }
            }else{
                if(check == 1){
                    y.style.height = 1 + "px";
                    t = setTimeout("showOver('" + id + "', " + (u + 15) + ", 1)", 20);
                }else t = setTimeout("showOver('" + id + "', " + (w - 15) + ", 2)", 20);
            }
        }
    }
}
function startTimeout(id){
	t = setTimeout("hide('" + id + "')", 600);
}
function stopTimeout(){
	clearTimeout(t);
}

function runAjax(url, campo){
	allowAjax();
	var y = document.getElementById("loadingDefault");
	if(y){
        var top = new Number;
		y.style.visibility = "hidden";
		y.style.display = "block";
        top = Math.abs((y.style.top.replace("px", "")));
		if(top != document.documentElement.scrollTop)
            y.style.top = (document.documentElement.scrollTop) + "px";
		y.style.visibility = "visible";
	}
	var x = document.getElementById(campo);
	xmlhttp.open("GET", url, true);
	xmlhttp.onreadystatechange = function(){
		if(xmlhttp.readyState >= 4){
			var retorno = unescape(xmlhttp.responseText.replace(/\+/g, " "));
			x.innerHTML = retorno;
			if(y){
				y.style.display = "none";
			}
		}
	}
    if(url.indexOf("check") != -1) hide(campo);
	xmlhttp.send(null);
}
function validaAjaxPost(url, obj, myLoad, formId){
	var boolSend = true;
	var x = document.getElementById(formId);
	for(var i = 0; i < x.elements.length; i++){
		if(x.elements[i].title != ""){
			if(x.elements[i].value.indexOf("'") == -1){
				if(x.elements[i].name.indexOf("mail") == -1){
					if(x.elements[i].value == ""){
						alert("Por favor, preencha o campo " + x.elements[i].title + " corretamente!");
						x.elements[i].focus();
						boolSend = false;
						break;
					}
				}else{
					if(x.elements[i].value.indexOf("@") == -1 || x.elements[i].value.indexOf(".") == -1){
						alert("Por favor, preencha o campo " + x.elements[i].title + " corretamente!");
						x.elements[i].focus();
						boolSend = false;
						break;
					}
				}
			}else{
				alert("Voce deve preencher todos os campos corretamente!");
				x.elements[i].focus();
				boolSend = false;
				break;
			}
		}
	}
	
	if(boolSend){
		var parameters = new String();
		for(var i = 0; i < x.elements.length; i++){
			if(parameters != "") parameters += "&" + x.elements[i].name + "=" + encodeURI(x.elements[i].value);
			if(parameters == "") parameters = x.elements[i].name + "=" + encodeURI(x.elements[i].value);
			if(x.elements[i].name.indexOf("txt") != -1) x.elements[i].value = "";
			if(x.elements[i].name.indexOf("slt") != -1) x.elements[i].options[0].selected = true;
		}
		return runAjaxPost(url, obj, myLoad, parameters);
	}
}
function runAjaxPost(url, obj, myLoad, parameters){
	var loadingObject = document.getElementById(myLoad);
	var myObj = document.getElementById(obj);
	
	//Show an Loading Object
	loadingObject.style.top = (loadingObject.style.top + document.documentElement.scrollTop) + "px";
	loadingObject.style.display = "block";
	
	xmlhttp.open("POST", url, true);
	xmlhttp.onreadystatechange = function(){
		if(xmlhttp.readyState == 4){
			loadingObject.style.display = "none";
			var retorno = unescape(xmlhttp.responseText.replace(/\+/g, " "));
			
			//Mostra a msg de retorno
			myObj.style.display = "block";
			myObj.innerHTML = retorno;
		}
	}
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=ISO-8859-1");
	xmlhttp.send(parameters);
}

function formatPhone(x, nextDepth){
	if(x.value.length == 2){
		x.value = "(" + x.value + ") ";
	}else if(x.value.length == 9){
		x.value += " ";
	}else if(x.value.length == 14){
		document.getElementById(nextDepth).focus();
	}
}
function formatDate(x, nextDepth){
	if(x.value.length == 4 || x.value.length == 7){
		x.value += "-";
	}else if(x.value.length == 10){
        x.value += " ";
    }else if(x.value.length == 13 || x.value.length == 16){
        x.value += ":";
    }else if(x.value.length == 19){
		document.getElementById(nextDepth).focus();
	}
}
function formatHour(x, nextDepth){
	if(x.value.length == 2 || x.value.length == 5){
		x.value += ":";
	}else if(x.value.length == 8){
		document.getElementById(nextDepth).focus();
	}
}
function checkCaractere(x, nbTotal){
	if(x.value.length >= nbTotal){
		x.value = x.value.substr(0, nbTotal);
	}
}
function alwaysNum(x){
	var nonNumbers = /\D/;
	if(nonNumbers.test(x.value)){
		for(var i = 0; i < x.value.length; i++){
			if(nonNumbers.test(x.value.substr(i, 1))){
				x.value = x.value.replace(x.value.substr(i, 1), "");
			}
		}
		return false;
	}
}

function geraCampos(x, depth){
	var y = document.getElementById(depth);
	var qtdField = x.value;
	var nonNumbers = /\D/;
	if(nonNumbers.test(x.value)){
		alert("Você deve digitar apenas números nesse campo.");
		x.value = "";
	}
	
	if(qtdField >= 30){
		alert("Você realizou uma operação ilegal." + "\n" + "Essa operação será cancelada");
		x.value = "";
		y.innerHTML = "";
		return false;
	}
	
	if(qtdField > 10){
		var z = confirm("Você tem certeza que deseja realizar essa operação?" + "\n" + "Isso pode gerar uma certa lentidão no seu navegador.");
		if(!z){
			x.value = x.value.substr(0, 1);
			return false;
		}
	}
	
	y.innerHTML = "";
	for(var i = 1; i <= qtdField; i++){
		y.innerHTML += "<table width='100%' cellpadding='2' cellspacing='1' border='0' align='center'><tr><td>Descrição do Campo " + i + ":</td><td>Selecione o Arquivo " + i + ":</td></tr><tr><td><input name='txtDesc' type='text' title='Descrição " + i + "' maxlength='200' tabindex='" + Math.round(i + 1) + "' /></td><td><input name='flArquivo' type='file' title='Arquivo " + i + "' style='height:auto;' maxlength='150' tabindex='" + Math.round(i + 2) + "' /></td></tr></table>"
	}
}

function confirmDel(url){
	var x = confirm("Tem certeza que deseja excluir essa informação?");
	if(x) var y = confirm("Vale lembrar que efetuando essa operação as informações serão perdidas definitivamente!");
	if(y) location.href = url;
    else return false;
}
function confirmUpd(url){
	var x = confirm("Tem certeza que deseja excluir essa informação?");
	if(x) location.href = url;
}

function submitForm(form, value){
	var x = document.getElementById(form);
	x.action += "&extra=" + value;
	x.submit();
}

function disableElements(object, value1, value2){
    if(object.value == 1){
        document.getElementById(value1).disabled = true;
        document.getElementById(value2).disabled = true;
    }else{
        document.getElementById(value1).disabled = false;
        document.getElementById(value2).disabled = false;
    }
}