// JavaScript Document

// Valida uma data no formato dd/mm/yyyy.
function checkdate(input){
	var dayfield=input.split("/")[0]
	var monthfield=input.split("/")[1]
	var yearfield=input.split("/")[2]
	var dayobj = new Date(yearfield, monthfield-1, dayfield)
	if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
		returnval=false
	else
		returnval=true
	return returnval
}

// Formata uma data ddmmyyyy para dd/mm/yyyy no evento onKeyUp do campo do formulario.
function maskdate(dt){
	var ret='';
	if(dt.value.length==2 || dt.value.length==5){
		ret = String(dt.value) + '/';
		}
		else{
			ret = String(dt.value);
			}
	dt.value = ret;
	return;
}

// Limita o tamanho do conteudo de um textarea de acordo com o parametro <size> informado.
function forceMaxLength(field, size){
	if(field.value.length > size)
		field.value = field.value.substring(0,size);
	return;
}

// Limpa os campos de um form.
function clearForm(formId){ 
  var form, elements, i, elm; 
  form = document.getElementById ? document.getElementById(formId) : document.forms[formId]; 
	if (document.getElementsByTagName){
		elements = form.getElementsByTagName('input');
		for(i=0,elm; elm=elements.item(i++); ){
			if (elm.getAttribute('type') == "text"){
				elm.value = "";
			}
		}
		elements = form.getElementsByTagName('textarea');
		for(i=0,elm; elm=elements.item(i++); ){
			elm.value = "";
		}
		elements = form.getElementsByTagName('select');
		for(i=0,elm; elm=elements.item(i++); ){
			elm.selectedIndex = '';
		}
	}
	else{
		elements = form.elements;
		for( i=0, elm; elm=elements[i++]; ){
			if (elm.type == "text"){
				elm.value = 0;
			}
			else{
				if(elm.type == "select"){
					elm.selectedIndex = 0;
					}
				}
		}
	}
}

// Retorna uma string sem espaços à esquerda e à direita.
function trim(value){
	var str = value;
	while(str.charCodeAt(0)==32){
		str=str.substring(1,str.length-1);
	}
	while(str.charCodeAt(str.length-1)==32){
		str=str.substring(0,str.length-1);
	}
	return str;
}

// Retorna o valor do radiobuttom selecionado
function checkedRadioValue(radioObj){
	for(var i=0;i<radioObj.length;i++){
		if(radioObj[i].checked){
			return radioObj[i].value;
			}
		}
		return;
}

// Valida um CPF
function checaCPF(CPF) { 
	if(CPF.length == 0){
		return false;
	}
	if ((CPF.length != 11 && CPF.length != 0) || CPF == "00000000000" || CPF == "11111111111" || CPF == "22222222222" || CPF == "33333333333" || CPF == "44444444444" || CPF == "55555555555" || CPF == "66666666666" || CPF == "77777777777" || CPF == "88888888888" || CPF == "99999999999") {
		return false;
	}
	soma = 0; 
	for (i=0; i < 9; i ++) 
		soma += parseInt(CPF.charAt(i)) * (10 - i); 
	resto = 11 - (soma % 11); 
	if (resto == 10 || resto == 11) 
		resto = 0; 
	if (resto != parseInt(CPF.charAt(9))) {
		return false; 
	}
	soma = 0; 
	for (i = 0; i < 10; i ++) 
		soma += parseInt(CPF.charAt(i)) * (11 - i); 
	resto = 11 - (soma % 11); 
	if (resto == 10 || resto == 11) 
		resto = 0; 
	if (resto != parseInt(CPF.charAt(10))) {
		return false; 
	}
	return true; 
} 

// AJAX Functions -----------------------------------------
var Ajax = false;
var id;

function Executa(url,idj) {
	id= idj;
	document.getElementById(id).innerHTML="<center><img src='img/loading.gif'></center>";
	AjaxRequest();
	Ajax.open('GET', url, true);
	Ajax.onreadystatechange = processaResposta;
	Ajax.send(null);
}

function AjaxRequest() {
	Ajax = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		Ajax = new XMLHttpRequest();
	} else if (window.ActiveXObject) { // IE
		try {
			Ajax = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				Ajax = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}		
}

function processaResposta() {
	if (Ajax.readyState == 4) {
		if(Ajax.status==200) {
			divConteudo(id,Ajax.responseText);
			return false;					
		} 
	}
}

function divConteudo(idd,cont){
	if(idd!=''){
		document.getElementById(idd).innerHTML= cont;	
		return true;
	} else {
		return false;	
		}
}
// End AJAX Functions -------------------------------------

// Overlay Functions --------------------------------------
var para = "";
function openMarrow(source, w, h){
	if(source != ''){
		Executa(source, "marrow");
		if(parseInt(w))
			document.getElementById("marrow").style.width=w;
		if(parseInt(h))
			document.getElementById("marrow").style.height=h;
		}
	document.getElementById("backgrounddiv").style.width= document.body.clientWidth;
	document.getElementById("backgrounddiv").style.height=document.body.clientHeight;
	document.getElementById("backgrounddiv").style.display="block";
	/*document.getElementById("iframeBg").width= document.body.clientWidth;
	document.getElementById("iframeBg").height=document.body.clientHeight;
	document.getElementById("iframeBg").style.visibility = "visible";*/
	document.getElementById("marrow").style.display="block";
	para = "1";
	refreshScreen();
}
		
function closeMarrow() {
	para = "";
	document.getElementById("backgrounddiv").style.display="none";
	document.getElementById("marrow").style.display="none";
}

function refreshScreen(){
	if(para != ""){
		var yScrolltop;
		var xScrollleft;
		if (self.pageYOffset || self.pageXOffset) {
			yScrolltop = self.pageYOffset;
			xScrollleft = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){	 
			yScrolltop = document.documentElement.scrollTop;
			xScrollleft = document.documentElement.scrollLeft;
		} else if (document.body) {
			yScrolltop = document.body.scrollTop;
			xScrollleft = document.body.scrollLeft;}	
		if(parseInt(document.getElementById("marrow").style.height) < document.body.clientHeight){
				document.getElementById("marrow").style.top=yScrolltop +(document.body.clientHeight/2) - (parseInt(document.getElementById("marrow").style.height)/2);
			}else{
				document.getElementById("marrow").style.top=yScrolltop + 10;
				}
		document.getElementById("marrow").style.left=xScrollleft+(document.body.clientWidth/2) - (parseInt(document.getElementById("marrow").style.width)/2);
		document.getElementById("backgrounddiv").style.top=yScrolltop;
		document.getElementById("backgrounddiv").style.left=xScrollleft;
		window.setTimeout("refreshScreen()",0);
	}
}
// End Overlay Functions ----------------------------------

// MM Menu Functions --------------------------------------
var mmOpenContainer = null;
var mmOpenMenus = null;
var mmHideMenuTimer = null;

function MM_menuHideSubmenus(menuName) {
	if( mmOpenMenus ) {
		var h = false;
		var c = 0;
		for(var i in mmOpenMenus) {
			if( h ) {
				var m = document.getElementById(mmOpenMenus[i]);
				m.style.visibility = "hidden";
			} else if( mmOpenMenus[i] == menuName ) {
				h = true;
			} else {
				c++;
			}
		}
		mmOpenMenus.length = c+1;
	}
}

function MM_menuShowSubMenu(subMenuName) {
	MM_menuResetTimeout();
	var e = document.getElementById(subMenuName);
	e.style.visibility = "inherit";
	if( !mmOpenMenus ) {
		mmOpenMenus = new Array;
	}
	mmOpenMenus[mmOpenMenus.length] = "" + subMenuName;
}

function MM_menuResetTimeout() {
	if (mmHideMenuTimer) clearTimeout(mmHideMenuTimer);
	mmHideMenuTimer = null;
}
// End MM Menu Functions ----------------------------------