var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		return false
	}
return true
}

function isEmpty(param) {
	if (param.replace(/ /g,'').length <= 0) return (true);
	return (false);
}

function isEmail(string) {
   if (!string) return false;
   var iChars = "*|,\":<>[]{}`\';()&$#%";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
   }
   return true;
}

function alertErro(erro) {
	if (erro.length > 0)	 {
		alert('Ocorreram os seguintes erros:\n\n' + erro + '\nPor favor, corrija-os e tente novamente.')
		return(false);
	}
	return (true);
}

function moveSelect(p1,p2) {
	for (i=0;i<p2.options.length;i++) {
		if(p2.options[i].value == '') {
			p2.remove(i);
		}
	}
	for (i=0;i<p1.options.length;i++) {
		if(p1.options[i].selected == true) {
			var oOption = document.createElement("OPTION");
			p2.add(oOption);
			oOption.innerText = p1.options[i].innerText;
			oOption.value = p1.options[i].value;
			p1.remove(i);
			i--;
		}
	}
	if (p1.options.length > 0) orderSelect(p1,0,p1.options.length-1);
	if (p2.options.length > 0) orderSelect(p2,0,p2.options.length-1);
}

function orderSelect(p1,loBound,hiBound) {

	pivot = p1.options[parseInt((loBound + hiBound) / 2)].innerText;
	pivot2 = p1.options[parseInt((loBound + hiBound) / 2)].value;
	p1.options[parseInt((loBound + hiBound) / 2)].innerText = p1.options[loBound].innerText;
	p1.options[parseInt((loBound + hiBound) / 2)].value = p1.options[loBound].value;
	p1.options[loBound].innerText = pivot;
	p1.options[loBound].value = pivot2;
	loSwap = loBound + 1;
	hiSwap = hiBound;

	do {
		while (loSwap <= hiSwap && p1.options[loSwap].innerText <= pivot)
			loSwap++;

		while (p1.options[hiSwap].innerText > pivot)
			hiSwap--;

		if (loSwap < hiSwap)
		{
			temp = p1.options[loSwap].innerText;
			temp2 = p1.options[loSwap].innerText;
			p1.options[loSwap].innerText = p1.options[hiSwap].innerText;
			p1.options[loSwap].value = p1.options[hiSwap].value;
			p1.options[hiSwap].innerText = temp;
			p1.options[hiSwap].value = temp2;
		}
	} while (loSwap < hiSwap);

	p1.options[loBound].innerText = p1.options[hiSwap].innerText;
	p1.options[loBound].value = p1.options[hiSwap].value;
	p1.options[hiSwap].innerText = pivot;
	p1.options[hiSwap].value = pivot2;

	if (loBound < hiSwap - 1)
		orderSelect(p1, loBound, hiSwap - 1);

	if (hiSwap + 1 < hiBound)
		orderSelect(p1, hiSwap + 1, hiBound);
}

//seleciona um conjunto de checkbox
function selectAll(p1) {
	for (i=0;i<p1.options.length;i++) {
		p1.options[i].selected = true;
	}
	return true;
}

//conta o número de caracteres dentro de um textarea
function CountLength(field, maxLen, campoContador)
	{
	fieldLen = field.value.length;

	if (fieldLen >= maxLen)
	{
		field.value = field.value.substring(0, maxLen);
		charsLeft = maxLen;
	}
	else
	{
		charsLeft = fieldLen;
	}
	campoContador.value = charsLeft;
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

//abre popup
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

//mostra e esconde layers
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

//função que verifica se é numérico
function validarNumero(evento){
tecla = evento.keyCode;	
if((tecla < 48) || (tecla > 57)){
	evento.returnValue = false;
	}
}

//função para mascara
function mascaraData(campo,evento){ //mascaraData(this, event);
validarNumero(evento);
data = campo.value;
if(data.length == 2) {
	campo.value = data+"/"
} else if(data.length == 5) {
	campo.value = data+"/"
} 
}


//controla show e hide de um elemento
var show = 'S';
var hide = 'H';

function showHide(theID, action) {	

	var obj = document.getElementById(theID);
	
	var strDsp;
	if (action)
		strDsp = (action == show ? 'block' : 'none');
	else
		strDsp = (document.getElementById(theID).style.display == 'block' ? 'none' : 'block');
	if (obj.length) {
		for (var i=0; i<obj.length; i++)
			obj[i].style.display = strDsp;
	} else 
		obj.style.display = strDsp;

	return ( (strDsp == 'block') ? true : false);
}
//-->


//======================================================================================================================================================================
//função do data e hora para os campos padrões dos forms - início
//======================================================================================================================================================================
// ---------------------------------------------------------------------------------
// ******VALIDAÇÃO PARA DATAS******
// Descrição: Monta a máscara e verifica se as informações são válidas.
// Utilização:
// onKeyDown="return FormataData(this,event);"  -> Monta Mascara da Data
// onBlur="return isValidaData(this);" 			-> Verifica se a Data Digitada é Válida (Data Em Português)
// ---------------------------------------------------------------------------------
function validarNumero(evento){
	tecla = evento.keyCode;	
	if((tecla < 48) || (tecla > 57)){
		evento.returnValue = false;
	}
}


// FormataData ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function FormataData(field,teclapres){
//Formata o campo de data de acordo com a tecla pressionada
  var tecla = teclapres.keyCode;
  var tam = 0;
  var vrout = "";

  vr = ""
  vra = field.value;
  for (i=0 ;i <= vra.length; i++) {
    c = vra.substr(i,1);
	if (c >= "0" && c <= "9") {
		vr += c;
	}
  }
  tam = vr.length ;

  if (tecla == 8 ){ 
   tam = tam - 1 ; 
  }
	
  if ( tecla == 9 || tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105){

    vrout = "" ;
    for (i=0 ;i <= tam ; i++) {
      c = vr.substr(i,1);
      switch (String(i)){   
	    case "2" : 
	      vrout = vrout + "/";
		  break;   
   	    case "4" :       
		  vrout = vrout + "/";
		  break;   
		default: ;
	  } // switch
	vrout += c;
	} // for
  
	field.value = vrout;
  }
    
  else {
    return(false);
  }
  return(true);
}
// ValidaData ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function ValidaData ( data ) {
//Verifica se a data é válida (data em português)

  if (data == "" ) {
    return (false) ;
  }  
  else {
  
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4}|\d{2})$/;
    //var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; //4 dígitos no ano

    var matchArray = data.match(datePat); // is the format ok?
    if (matchArray == null) {
      return (false);
    }
  
    day = matchArray[1]; // parse date into variables
    month = matchArray[3];
    year = matchArray[4];

    if (month < 1 || month > 12) { // check month range
      return (false);
    }
    if (day < 1 || day > 31) {
      return (false);
    }
    if ((month==4 || month==6 || month==9 || month==11) && day==31) {
      return (false);
    }
    if (month == 2) { // check for february 29th
      var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
	  if (day>29 || (day==29 && !isleap)) {
	    return (false);
	  }
    }	
  }
  return (true);  // date is valid
 }
// isValidaData ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function isValidaData (field) {
	if (!ValidaData(field.value)&& field.value != "" ) {
		alert ('Data Inválida.')
		field.value="";
		field.focus();
	}
}

// Formata Hora ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


function FormataHora(campo, evento){ //mascaraHora(this, event);

	validarNumero(evento);
	hora = campo.value;
	if(hora.length == 2) {
		campo.value = hora+":"
	} //else if(data.length == 5) {
		//campo.value = data+"/"
	//} 
}

function mascaraData(campo,evento){ //mascaraData(this, event);
	validarNumero(evento);
	data = campo.value;
	if(data.length == 2) {
		campo.value = data+"/"
	} else if(data.length == 5) {
		campo.value = data+"/"
	} 
}


function mascaraHora_Tratamento(tag,campo,evento){ 
				
	var linha = tag.numeroLinha;	

	var hora = Tratamento_Horas(campo.value);

	if(hora.length == 2) {
		hora = hora+":"
	} 
	
	campo.value = hora;
			
}


function Tratamento_Horas(txt) {

	var aux = "";

	for (var i=0;i<txt.length;i++) {

		if (!isNaN(txt.substr(i,1)) || (txt.substr(i,1)==":")) {
			
				if(i==0){
					if(txt.substr(i,1)<=2)   aux += txt.substr(i,1)
				}
				
				if(i==1){
					if(txt.substr(0,1)==2){
						if(txt.substr(i,1)<4)   aux += txt.substr(i,1)
					}else{
						aux += txt.substr(i,1)
					}
				}
				
				if(i==2){
					if(txt.substr(i,1)==":")   aux += txt.substr(i,1)
				}
				
				if(i==3){
					if(txt.substr(i,1)<=5)   aux += txt.substr(i,1)
				}
				
				if(i==4){
					if(txt.substr(i,1)<=9)   aux += txt.substr(i,1)
				}
										
		}
		
	}
	
	return(aux)

}	
//======================================================================================================================================================================
//função do data e hora para os campos padrões dos forms - fim
//======================================================================================================================================================================

//======================================================================================================================================================================
//função do calendário - início
//======================================================================================================================================================================
function IsDate(pData){

	if(pData.length<10 || pData.length>10){
		alert('Data inválida\nInforme a data no formato (dd/mm/aaaa)');
	
		return false;
	}
	var ano = '' + pData.substring(6,10);
	var mes = '' + pData.substring(3,5);
	var dia = '' + pData.substring(0,2);
							
	if(dia>'31'){
		alert('Data inválida');
		return false;
	}							
	if(mes>'12'){
		alert('Data inválida');
		return false;
	}
	if(mes=='02'){
		if(ano%4!=0 && dia>'28'){
			alert('Data Inválida');
			return false;
		}
		else{
			if(dia>'29'){
				alert('Data Inválida');
				return false;
			}
		}
	}
	if(mes<='07'){
		if(mes%2==0 && dia>'30'){
			alert('Data inválida');
			return false;
		}
	}
	else{
		if(mes>'09'){
			if(mes%2!=0 && dia>'30'){
				alert('Data inválida');
				return false;
			}
		}
	}			
	
	//Data Correta!
	return true
}

function IsDateR(pDataOBJ){
	pData = pDataOBJ.value
	if(pData.length<10 || pData.length>10){
		alert('Data inválida\nInforme a data no formato (dd/mm/aaaa)');
		pDataOBJ.value = '';
		return;
	}
	var ano = '' + pData.substring(6,10);
	var mes = '' + pData.substring(3,5);
	var dia = '' + pData.substring(0,2);
							
	if(dia>'31'){
		alert('Data inválida');
		pDataOBJ.value = '';
		return;
	}							
	if(mes>'12'){
		alert('Data inválida');
		pDataOBJ.value = '';
		return;
	}
	if(mes=='02'){
		if(ano%4!=0 && dia>'28'){
			alert('Data Inválida');
			pDataOBJ.value = '';
			return;
		}
		else{
			if(dia>'29'){
				alert('Data Inválida');
				pDataOBJ.value = '';
				return;

			}
		}
	}
	if(mes<='07'){
		if(mes%2==0 && dia>'30'){
			alert('Data inválida');
			pDataOBJ.value = '';
			return;
		}
	}
	else{
		if(mes>'09'){
			if(mes%2!=0 && dia>'30'){
				alert('Data inválida');
				pDataOBJ.value = '';
				return;
			}
		}
	}			
	
	//Data Correta!
	return true
}
//******************************************
// Compara datas.
//******************************************
function compara_data(data1,data2)
{
	data_menor=0;
	var ano_data1 = '' + data1.substring(6,10);
	var mes_data1 = '' + data1.substring(3,5);
	var dia_data1 = '' + data1.substring(0,2);

	var ano_data2 = '' + data2.substring(6,10);
	var mes_data2 = '' + data2.substring(3,5);
	var dia_data2 = '' + data2.substring(0,2);
	
	if (ano_data1<ano_data2){
		data_menor=1;
	}
	
	if(ano_data1=ano_data2){
		if(mes_data1<mes_data2){
			data_menor=1;
		}
		if(mes_data1==mes_data2){
			if(dia_data1<=dia_data2){
				data_menor=1;
			}
		}
	}

	return data_menor;

}

function popdate(obj,div,tam,ddd)
{
   if (ddd) 
   {
       day = ""
       mmonth = ""
       ano = ""
       c = 1
       char = ""
       for (s=0;s<parseInt(ddd.length);s++)
       {
           char = ddd.substr(s,1)
           if (char == "/") 
           {
               c++; 
               s++; 
               char = ddd.substr(s,1);
           }
           if (c==1) day    += char
           if (c==2) mmonth += char
           if (c==3) ano    += char
       }
       //ddd = mmonth + "/" + day + "/" + ano
	   ddd = ano + "/" + mmonth + "/"  + day   
   }
 
   if(!ddd) {today = new Date()} else {today = new Date(ddd)}
   date_Form = eval (obj)
   if (date_Form.value == "") { date_Form = new Date()} else {date_Form = new Date(date_Form.value)}
 
   ano = today.getFullYear();
   mmonth = today.getMonth ();
   day = today.toString ().substr (8,2)
 
   umonth = new Array ("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro")
   days_Feb = (!(ano % 4) ? 29 : 28)
   days = new Array (31, days_Feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)

   if ((mmonth < 0) || (mmonth > 11))  alert(mmonth)
   if ((mmonth - 1) == -1) {month_prior = 11; year_prior = ano - 1} else {month_prior = mmonth - 1; year_prior = ano}
   if ((mmonth + 1) == 12) {month_next  = 0;  year_next  = ano + 1} else {month_next  = mmonth + 1; year_next  = ano}
	txt  = "<table bgcolor='#efefef' style='border:solid #ffffff; border-width:2' cellspacing='0' cellpadding='3' border='0' width='"+tam+"' height='"+tam*1.1 +"'>"

	// CONTROLES DE AVANÇO
	txt  += "	<tr class='conteudoTabelaCorForte'>"
	txt  += "		<td colspan='7' align='center'>"
	txt  += "			<table border='0' cellpadding='0' width='100%' class='conteudoTabelaCorForte'>"
	txt  += "				<tr>"
	txt  += "					<td width=20% align=center class='conteudoTabelaCorForte'>"
	txt  += "						<a style='text-decoration:none' href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano-1).toString())+"') class='conteudoTabelaCorForte' title='Ano Anterior'><<</a>"
	txt  += "					</td>"
	txt  += "					<td width=20% align=center class='conteudoTabelaCorForte'>"
	txt  += "						<a style='text-decoration:none' href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_prior+1).toString() + "/" + year_prior.toString())+"') class='conteudoTabelaCorForte' title='Mês Anterior'><</a>"
	txt  += "					</td>"
	txt  += "					<td width=20% align=center class='conteudoTabelaCorForte'>"
	txt  += "						<a style='text-decoration:none' href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_next+1).toString()  + "/" + year_next.toString())+"') class='conteudoTabelaCorForte' title='Próximo Mês'>></a>"
	txt  += "					</td>"
	txt  += "					<td width=20% align=center class='conteudoTabelaCorForte'>"
	txt  += "						<a style='text-decoration:none;' href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano+1).toString())+"') class='conteudoTabelaCorForte' title='Próximo Ano'>>></a>"
	txt  += "					</td>"
	txt  += "					<td width=20% align=right class='conteudoTabelaCorForte'>"
	txt  += "						<a style='text-decoration:none;' href=javascript:force_close('"+div+"') class='conteudoTabelaCorForte' title='Fechar Calendário'><b>X</b></a>"
	txt  += "					</td>"
	txt  += "				</tr>"
	txt  += "			</table>"
	txt  += "		</td>"
	txt  += "	</tr>"

	// MES E ANO
	txt  += "	<tr>"
	txt  += "		<td colspan='7' align='left' bgcolor='#333333' class='botao'>&nbsp;"
	txt  += "			<b>"
	txt  += "				<a style='text-decoration:none; color:#FFFFFF' href=javascript:pop_year('"+obj+"','"+div+"','"+tam+"','" + (mmonth+1) + "')>" + ano.toString() + "</a>"
	txt  += "				<a style='text-decoration:none; color:#FFFFFF' href=javascript:pop_month('"+obj+"','"+div+"','"+tam+"','" + ano + "') >" + umonth[mmonth] + "</a>"
	txt  += "				<div id='popd' style='position:absolute'></div>"
	txt  += "			</b>"
	txt  += "		</td>"
	txt  += "	</tr>"

	// TITULO DO DIA DA SEMANA
	txt  += "	<tr bgcolor='#646464'>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Dom</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Seg</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Ter</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Qua</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Qui</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Sex</td>"
	txt  += "		<td width='14%' class='conteudoTabelaCorForte' align=center>Sab</td>"
	txt  += "	</tr>"
   today1 = new Date((mmonth+1).toString() +"/01/"+ano.toString());
   diainicio = today1.getDay () + 1;
   week = d = 1
   start = false;

   for (n=1;n<= 42;n++) 
   {
       if (week == 1)  txt += "<tr bgcolor='#efefef' align=center>"
       if (week==diainicio) {start = true}
       if (d > days[mmonth]) {start=false}
       if (start) 
       {
           dat = new Date((mmonth+1).toString() + "/" + d + "/" + ano.toString())
           day_dat   = dat.toString().substr(0,10)
           day_today  = date_Form.toString().substr(0,10)
           year_dat  = dat.getFullYear ()
           year_today = date_Form.getFullYear ()
           colorcell = ((day_dat == day_today) && (year_dat == year_today) ? " bgcolor='#D4D7DA' " : "" )
					 mesp = mmonth+1;
					 if (mesp<10){
					 mes_sh = '0' + mesp
					 }else{
					 mes_sh = mesp
					 }
					 
					 if(d<10){
					 	d = '0' + d;
					 }
					 
           txt += "<td"+colorcell+" class='ConteudoTabelaCorFraca' align=center><a href=javascript:block('"+ d + "/" + (mes_sh).toString() + "/" + ano.toString() +"','"+ obj +"','" + div +"') class='ConteudoTabelaCorFraca'>"+ d.toString() + "</a></td>"
           d ++ 
       } 
       else 
       { 
           txt += "<td class='ConteudoTabelaCorFraca' align=center> </td>"
       }
       week ++
       if (week == 8) 
       { 
           week = 1; txt += "</tr>"} 
       }
       txt += "</table>"
	   
       div2 = eval (div)
	   
       div2.innerHTML = txt 
	   
}
 
// função para exibir a janela com os meses
function pop_month(obj, div, tam, ano)
{
 txt  = "<table bgcolor='#cccccc' border='0' width=80 class='ConteudoTabelaCorForte'>"
 for (n = 0; n < 12; n++) { txt += "<tr><td align=center class='ConteudoTabelaCorFraca'><a href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+("01/" + (n+1).toString() + "/" + ano.toString())+"') style='text-decoration:none; color:#000000;'>" + umonth[n] +"</a></td></tr>" }
 txt += "</table>"
 popd.innerHTML = txt
}

// função para exibir a janela com os anos
function pop_year(obj, div, tam, umonth)
{
 txt  = "<table bgcolor='#cccccc' border='0' width=160 class='ConteudoTabelaCorForte'>"
 l = 1
 
 for (n=1900; n<2005; n++)
 {  if (l == 1) txt += "<tr>"
    txt += "<td class='ConteudoTabelaCorForte' align=center><a href=javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+(umonth.toString () +"/01/" + n) +"') style='text-decoration:none; color:#000000;'>" + n + "</a></td>"
    l++
    if (l == 4) 
       {txt += "</tr>"; l = 1 } 
 }
 txt += "</tr></table>"
 popd.innerHTML = txt 
}

// função para fechar o calendário
function force_close(div) 
   { 
   	div2 = eval (div); div2.innerHTML = ''
	//new Effect.SlideUp('pop1')
	}
   
// função para fechar o calendário e setar a data no campo de data associado
function block(data, obj, div)
{ 
   force_close (div)
   obj2 = eval(obj)
   obj2.value = data 
}
//======================================================================================================================================================================
//função do calendário - fim
//======================================================================================================================================================================
