/*
  ** NAVEGAÇÃO *********************************
  *  Suporta todos os menus e links especiais  *
  **********************************************
  
  Última alteração: 30/03/2004
  Pelo usuário:		Dorival Teixeira Neto

*/

// Acende o item do menu
function colorize(act,obj){
	 if (act=='in')
	  {
	   obj.style.color = "#0D32A9";
	   obj.style.cursor = "Hand";
	  }
	 if (act=='out')
	 {
	   obj.style.color = "#000000";
	   obj.style.cursor = "Default";
	 }
}


function ActMenu(MenuID,Action){
   if (Action == 'show')
    document.getElementById(MenuID).style.visibility = 'visible';
   if (Action == 'hide')
    document.getElementById(MenuID).style.visibility = 'hidden';
}
// Exibe e oculta
function menus(source,obj,act){
	try{
	   if (navigator.appName=="Netscape"){
		   if (act == 'show')
			document.getElementById(obj).style.visibility = 'visible';
		   if (act == 'hide')
			document.getElementById(obj).style.visibility = 'hidden';
	   }else{
		   if (act == 'show'){
			document.getElementById(obj).style.visibility = 'visible';
			document.source.style.cursor = "Hand";
		   }
		   if (act == 'hide'){
			document.getElementById(obj).style.visibility = 'hidden';
			document.source.style.cursor = "Default";
		   }
	   }//of IF
	}// of TRY
	catch(ex){} //Anula qualquer mensagem de erro
 }


function menuClick(url){
	document.location = url;
}

function indique(URL,Idiom){
   window.open('/bmfbovespa/pages/email'+Idiom+'.asp?aURL='+URL,'BMFIEMAIL','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=410,height=240')
}

function indiqueBVRJ(URL,Idiom){
   window.open('http://www.bvrj.com.br/pages/email'+Idiom+'.asp?aURL='+URL,'BMFIEMAIL','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=410,height=240')
}

function OpenBRX50(URL){
window.open('http://www.bovespa.com.br/Mercado/RendaVariavel/Indices/DiariaP.asp?Indice=IBrX50&DataDiaria=<%=Day(date) & "/" & Month(date) & "/" & Year(date)%>');
}

/************** CSS ***************/
 var A,B;
 B = 1; //incremento
 A = 2; // fonte inicial

function HideButtons(){
	if(window.btMais) btMais.style.display = "none";
	if(window.btMenos) btMenos.style.display = "none";
}

function increase(){
	if (!window.MCSS){
	  alert('Desculpe,\nEsta função não está disponível para esta página');
	  HideButtons();
	}else{
	  if (A < 4){
	   A = A + B;
	   window.MCSS.href = '/2004/styles/fonte/fonte_' + A + '.css';
	  }
	}
}

function decrease(){
	if (!window.MCSS){
	 alert('Desculpe,\nEsta função não está disponível para esta página');
	 HideButtons();
	 }else{
	 if (A > 1){
	   A = A - B;
	   window.MCSS.href = '/2004/styles/fonte/fonte_' + A + '.css';
	  }
	 }
}


//****************************************************************
//*******************   MASCARA DE DATAS *************************
//****************************************************[INICIO]****

	/*  -------------------------
	DORIVAL TEIXEIRA NETO
	23.06.2005
	-------------------------
*/

/*function VerificaData(data) //data: string		return: boolean
{
	var filter = /^((0?[1-9]|[12]\d)\/(0?[1-9]|1[0-2])|30\/(0?[13-9]|1[0-2])|31\/(0?[13578]|1[02]))\/(19|20)?\d{2}$/;
	if(filter.test(data)) return true
	else
	{
		alert("A data fornecida está incorreta, favor corrigir.");
		return false;
	}
}*/


function mask_data_MMAAAA(TField)	//Máscara para  MM/AAAA
{
	//alert('oi');
	//alert(window.event.keyCode);
	//alert(window.event.srcElement.value);
  var keypressed = window.event.keyCode;
  var ElementText  = window.event.srcElement.value;
  
  if (keypressed == 45){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }
  
  if (keypressed == 46){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }
  else
  {
      var Reg = /\./g;
      if (Reg.test(ElementText)) {
        if( (keypressed >= 48 && keypressed <= 57) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
      else {
        if ((keypressed >= 48 && keypressed <= 57 || keypressed == 46) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
  }
  
  if(ElementText.length == 2)
  {
  	document.getElementById(TField).value += '/';
  }
}

function mask_data(ini,fim,decimal,TForm,TField) {

  var keypressed = window.event.keyCode;
  var ElementText  = window.event.srcElement.value ;
  if (keypressed == 45){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }
  if (keypressed == 46){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }

  else {
    if (decimal) {
      var Reg = /\./g;
      if (Reg.test(ElementText)) {
        if( (keypressed >= 48 && keypressed <= 57) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
      else {
        if ((keypressed >= 48 && keypressed <= 57 || keypressed == 46) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
    }

    else {
      if ((keypressed >= 48 && keypressed <= 57) == false) {
        window.event.keyCode = 0;
        return;
      }
    }
  }

  //Para os gráficos que possuem data inicial e data final
  if (ini == 1 || fim == 1)
  {
	//javascript:mask_data('1','0',true)
	if (ini == 1)
	{
		if (ElementText.length == 2 || ElementText.length == 5)
		{
			document.getElementById(TField).value += '/';
		}
	}
	//javascript:mask_data('0','1',true)
	if (fim == 1)
	{
		if (ElementText.length == 2 || ElementText.length == 5)
		{
			document.getElementById(TField).value += '/';
		}
	}
  }
 //Para os gráficos que possuem apenas uma data
 //javascript:mask_data('2','0',true)
  if (ini == 2)
  {
	if (ElementText.length == 2 || ElementText.length == 5) { document.getElementById(TField).value += '/' }
  }

};

function CkDate(campo,dData)
{

   var data = dData;


   if(dData == "" )
      return false;
   else
	{
      if (data.length < 8)
         return false;

      if (data.length == 8)
      {
         dia1 = data.substring(0,1);
		   if (dia1.substring(0,1) < "0" || "9" < dia1.substring(0,1))
            return false;

         mes1 = data.substring(2,3);
		   if (mes1.substring(0,1) < "0" || "9" < mes1.substring(0,1))
            return false;

		   ano1 = data.substring(4,8)
		   for (var i = 0;i<4;i++)
			   if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
               return false;

		   if(data.substring(1,2)!= "/" || data.substring(3,4) != "/")
            return false;

		   if (dia1<1 || dia1>9)
            return false;

         if (mes1<1 || mes1>9)
            return false;

		   if (ano1<1900 || ano1>2080)
			return false;

		   if (mes1==2)
			   if (ano1%4==0)
            {
				   if (dia1>29)
                  return false;
            }
			   else
				   if (dia1>28)
                  return false;

         campo.value = "0" + data.substring(0,1) + "/" + "0" + data.substring(2,3) + "/" + data.substring(4,8);

      }
      else
		   if (data.length == 9)
         {
            if (data.substring(1,2) == "/")
            {
               dia1 = data.substring(0,1);
     		      if (dia1.substring(0,1) < "0" || "9" < dia1.substring(0,1))
                  return false;

		         mes1 = data.substring(2,4);
		         if (mes1.substring(0,1) < "0" || "1" < mes1.substring(0,1) || mes1.substring(1,2) < "0" || "9" < mes1.substring(1,2))
                  return false;

		         ano1 = data.substring(5,9)
		         for (var i = 0;i<4;i++)
			         if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                     return false;

		         if(data.substring(1,2)!= "/" || data.substring(4,5) != "/")
                  return false;

		         if (dia1<1 || dia1>9)
                  return false;

               if (mes1<1 || mes1>12)
                  return false;

		         if (ano1<1900 || ano1>2080)
                  return false;

     		      if (mes1==11)
			         if (dia1==31)
                     return false;

               campo.value = "0" + data.substring(0,1) + "/" + data.substring(2,4) + "/" + data.substring(5,9);

            }
            else
               if (data.substring(2,3) == "/")
               {
                  dia1 = data.substring(0,2);
		            if (dia1.substring(0,1) < "0" || "3" < dia1.substring(0,1) || dia1.substring(1,2) < "0" || "9" < dia1.substring(1,2))
                     return false;

		            mes1 = data.substring(3,4);
		            if (mes1.substring(0,1) < "0" || "9" < mes1.substring(0,1))
                     return false;

		            ano1 = data.substring(5,9)
		            for (var i = 0;i<4;i++)
			            if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                        return false;

		            if(data.substring(2,3)!= "/" || data.substring(4,5) != "/")
                     return false;

		            if (dia1<1 || dia1>31)
                     return false;

                  if (mes1<1 || mes1>12)
                     return false;

		            if (ano1<1900 || ano1>2080)
                     return false;

		            if (mes1==4 || mes1==6 || mes1==9)
			            if (dia1==31)
                        return false;

		            if (mes1==2)
			            if (ano1%4==0)
                     {
				            if (dia1>29)
                           return false;
                     }
			            else
				            if (dia1>28)
                           return false;

                  campo.value = data.substring(0,2) + "/" + "0" + data.substring(3,4) + "/" + data.substring(5,9);

               }
         }
         else
         if (data.length == 10)
         {
            dia1 = data.substring(0,2);
		      if (dia1.substring(0,1) < "0" || "3" < dia1.substring(0,1) || dia1.substring(1,2) < "0" || "9" < dia1.substring(1,2))
               return false;

		      mes1 = data.substring(3,5);
		      if (mes1.substring(0,1) < "0" || "1" < mes1.substring(0,1) || mes1.substring(1,2) < "0" || "9" < mes1.substring(1,2))
               return false;

		      ano1 = data.substring(6,10)
		      for (var i = 0;i<4;i++)
			      if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                  return false;

		      if(data.substring(2,3)!= "/" || data.substring(5,6) != "/")
               return false;

		      if (dia1<1 || dia1>31)
               return false;

            if (mes1<1 || mes1>12)
               return false;

		      if (ano1<1900 || ano1>2080)
               return false;

		      if (mes1==4 || mes1==6 || mes1==9 || mes1==11)
			      if (dia1==31)
                  return false;

		      if (mes1==02)
			      if (ano1%4==0)
               {
				      if (dia1>29)
                     return false;
               }
			      else
				      if (dia1>28)
                     return false;

         }
         else
            return false;
	   }

       data = campo.value;
       sDataTemp = data.substring(6,10) + "/" + data.substring(3,5) + "/" + data.substring(0,2) ;
       return true;
};

function jumpOnFull(origem, numeroCaracteres, destino)
{
	if(document.getElementById(origem).value.length == numeroCaracteres) document.getElementById(destino).focus();
}

function ValidaPeriodo_MMAAAA(data1,data2)
{
	if(data1.length == 7 && data1.length == 7)
	{										//----\/----RADIX
		var mes1 = parseInt(data1.substring(0,2), 10);
		var mes2 = parseInt(data2.substring(0,2), 10);
		var ano1 = parseInt(data1.substring(3,7), 10);
		var ano2 = parseInt(data2.substring(3,7), 10);
		
		var tDate1, tDate2;
		try
		{
			tDate1 = Date.parse("28/" + data1);
			tDate2 = Date.parse("28/" + data2);
			
			if( (mes1 >= 1 && mes1 <= 12) && (mes2 >= 1 && mes2 <= 12)  && ano1 >= 1995 && ano2 >= 1995)
				if(tDate1 <= tDate2) return true
				else
				{
					alert("A data inicial deve ser menor que a data final.");
					return false
				}
			else
			{
				alert("A data é inválida ou fora de cobertura");
				return false;
			}
		}
		catch(e)
		{
			return false;
		}		
		
		return false
	}
	else return false;
}

///<summary>
///  control: object
///  text: object
///  eraseable: object		
///</summary>
function HintText(control,text,eraseable)
{
	if(control.value == text) control.value = "";
	else if(control.value == "") control.value = text;
}


function ddmmaaaa(objeto)
{
	if(objeto.value=='')
	{
		objeto.value='dd/mm/aaaa';
	}
	else if(objeto.value=='dd/mm/aaaa')
	{
		objeto.value='';
	}

};

function CkDate(campo,dData)
{
var sDataTemp
   var data = dData;


   if(dData == "" )
      return false;
   else
	{
      if (data.length < 8)
         return false;

      if (data.length == 8)
      {
         dia1 = data.substring(0,1);
		   if (dia1.substring(0,1) < "0" || "9" < dia1.substring(0,1))
            return false;

         mes1 = data.substring(2,3);
		   if (mes1.substring(0,1) < "0" || "9" < mes1.substring(0,1))
            return false;

		   ano1 = data.substring(4,8)
		   for (var i = 0;i<4;i++)
			   if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
               return false;

		   if(data.substring(1,2)!= "/" || data.substring(3,4) != "/")
            return false;

		   if (dia1<1 || dia1>9)
            return false;

         if (mes1<1 || mes1>9)
            return false;

		   if (ano1<1900 || ano1>2080)
			return false;

		   if (mes1==2)
			   if (ano1%4==0)
            {
				   if (dia1>29)
                  return false;
            }
			   else
				   if (dia1>28)
                  return false;

         campo.value = "0" + data.substring(0,1) + "/" + "0" + data.substring(2,3) + "/" + data.substring(4,8);

      }
      else
		   if (data.length == 9)
         {
            if (data.substring(1,2) == "/")
            {
               dia1 = data.substring(0,1);
     		      if (dia1.substring(0,1) < "0" || "9" < dia1.substring(0,1))
                  return false;

		         mes1 = data.substring(2,4);
		         if (mes1.substring(0,1) < "0" || "1" < mes1.substring(0,1) || mes1.substring(1,2) < "0" || "9" < mes1.substring(1,2))
                  return false;

		         ano1 = data.substring(5,9)
		         for (var i = 0;i<4;i++)
			         if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                     return false;

		         if(data.substring(1,2)!= "/" || data.substring(4,5) != "/")
                  return false;

		         if (dia1<1 || dia1>9)
                  return false;

               if (mes1<1 || mes1>12)
                  return false;

		         if (ano1<1900 || ano1>2080)
                  return false;

     		      if (mes1==11)
			         if (dia1==31)
                     return false;

               campo.value = "0" + data.substring(0,1) + "/" + data.substring(2,4) + "/" + data.substring(5,9);

            }
            else
               if (data.substring(2,3) == "/")
               {
                  dia1 = data.substring(0,2);
		            if (dia1.substring(0,1) < "0" || "3" < dia1.substring(0,1) || dia1.substring(1,2) < "0" || "9" < dia1.substring(1,2))
                     return false;

		            mes1 = data.substring(3,4);
		            if (mes1.substring(0,1) < "0" || "9" < mes1.substring(0,1))
                     return false;

		            ano1 = data.substring(5,9)
		            for (var i = 0;i<4;i++)
			            if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                        return false;

		            if(data.substring(2,3)!= "/" || data.substring(4,5) != "/")
                     return false;

		            if (dia1<1 || dia1>31)
                     return false;

                  if (mes1<1 || mes1>12)
                     return false;

		            if (ano1<1900 || ano1>2080)
                     return false;

		            if (mes1==4 || mes1==6 || mes1==9)
			            if (dia1==31)
                        return false;

		            if (mes1==2)
			            if (ano1%4==0)
                     {
				            if (dia1>29)
                           return false;
                     }
			            else
				            if (dia1>28)
                           return false;

                  campo.value = data.substring(0,2) + "/" + "0" + data.substring(3,4) + "/" + data.substring(5,9);

               }
         }
         else
         if (data.length == 10)
         {
            dia1 = data.substring(0,2);
		      if (dia1.substring(0,1) < "0" || "3" < dia1.substring(0,1) || dia1.substring(1,2) < "0" || "9" < dia1.substring(1,2))
               return false;

		      mes1 = data.substring(3,5);
		      if (mes1.substring(0,1) < "0" || "1" < mes1.substring(0,1) || mes1.substring(1,2) < "0" || "9" < mes1.substring(1,2))
               return false;

		      ano1 = data.substring(6,10)
		      for (var i = 0;i<4;i++)
			      if (ano1.substring(i,i+1) < "0" || "9" < ano1.substring(i,i+1))
                  return false;

		      if(data.substring(2,3)!= "/" || data.substring(5,6) != "/")
               return false;

		      if (dia1<1 || dia1>31)
               return false;

            if (mes1<1 || mes1>12)
               return false;

		      if (ano1<1900 || ano1>2080)
               return false;

		      if (mes1==4 || mes1==6 || mes1==9 || mes1==11)
			      if (dia1==31)
                  return false;

		      if (mes1==02)
			      if (ano1%4==0)
               {
				      if (dia1>29)
                     return false;
               }
			      else
				      if (dia1>28)
                     return false;

         }
         else
            return false;
	   }

       data = campo.value;
       sDataTemp = data.substring(6,10) + "/" + data.substring(3,5) + "/" + data.substring(0,2) ;
       return true;
};

function Trim(sString)
{
   var sStringRetorno = new String();

   sStringRetorno = sString;

   if (sStringRetorno.length > 0)
   {
      //Tira espaços da esquerda
      while (sStringRetorno.charAt(0) == " ")
      {
         sStringRetorno = sStringRetorno.substring(1, sStringRetorno.length);
      }

      if (sStringRetorno.length > 0)
      {
         //Tira espaços da direita
         while (sStringRetorno.charAt(sStringRetorno.length - 1) == " ")
         {
            sStringRetorno = sStringRetorno.substring(0, sStringRetorno.length - 1);
         }
      }
   }
   return (sStringRetorno);
};

function retroativo_Validator(theForm)
{
   if(!CkDate(theForm.txtData, theForm.txtData.value))
  {

    window.alert("A data deve estar no formato dd/mm/aaaa.");

    theForm.txtData.focus();
    theForm.txtData.select();
    return false;
  };

};

function keypress_number(decimal) {
  var keypressed = window.event.keyCode;
  var ElementText  = window.event.srcElement.value ;
  if (keypressed == 45){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
    }
  }
  else {
    if (decimal) {
      var Reg = /\./g;
      if (Reg.test(ElementText)) {
        if( (keypressed >= 48 && keypressed <= 57) == false) {
          window.event.keyCode = 0;
        }
      }
      else {
        if ((keypressed >= 48 && keypressed <= 57 || keypressed == 46) == false) {
          window.event.keyCode = 0;
        }
      }
    }

    else {
      if ((keypressed >= 48 && keypressed <= 57) == false) {
        window.event.keyCode = 0;
      }
    }
  }
};

function mask_data(ini,fim,decimal) {

  var keypressed = window.event.keyCode;
  var ElementText  = window.event.srcElement.value ;
  if (keypressed == 45){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }
  if (keypressed == 46){
    if (ElementText.length!=0) {
      window.event.keyCode = 0;
      return;
    }
  }

  else {
    if (decimal) {
      var Reg = /\./g;
      if (Reg.test(ElementText)) {
        if( (keypressed >= 48 && keypressed <= 57) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
      else {
        if ((keypressed >= 48 && keypressed <= 57 || keypressed == 46) == false) {
          window.event.keyCode = 0;
          return;
        }
      }
    }

    else {
      if ((keypressed >= 48 && keypressed <= 57) == false) {
        window.event.keyCode = 0;
        return;
      }
    }
  }

  //Para os gráficos que possuem data inicial e data final
  if (ini == 1 || fim == 1)
  {
	//javascript:mask_data('1','0',true)
	if (ini == 1)
	{
		if (ElementText.length == 2 || ElementText.length == 5)
		{
			document.frmGrafico.txtDataInicio.value += '/';
		}
	}
	//javascript:mask_data('0','1',true)
	if (fim == 1)
	{
		if (ElementText.length == 2 || ElementText.length == 5)
		{
			document.frmGrafico.txtDataFim.value += '/';
		}
	}
  }
 //Para os gráficos que possuem apenas uma data
 //javascript:mask_data('2','0',true)
  if (ini == 2)
  {
	if (ElementText.length == 2 || ElementText.length == 5) { document.frmGrafico.txtData.value += '/' }
  }

};

function jump()
{
	var ElementText  = window.event.srcElement.value ;
    if (ElementText.length == 10)
		{
		document.frmGrafico.txtDataFim.value='';
		document.frmGrafico.txtDataFim.focus();
		}
};

//* * * * * * * * * * * * * * * * * F I M    D A   M Á S C A R A * * * * * * * * * * * * * * * * * * * * * * * * * *


function clear()
{
	document.frmCotacoes.txtData.value = ""
};


function Periodo_Validator(theForm)
{

  if(!CkDate(theForm.txtDataInicio, theForm.txtDataInicio.value))
  {
    window.alert("A data deve estar no formato dd/mm/aaaa.");
    theForm.txtDataInicio.focus();
    theForm.txtDataInicio.select();
    return false;
  };

  if(!CkDate(theForm.txtDataFim, theForm.txtDataFim.value))
  {
    window.alert("A data deve estar no formato dd/mm/aaaa.");
    theForm.txtDataFim.focus();
    theForm.txtDataFim.select();
    return false;
  };
};

//Só permite valores a partir de uma data específica
function CkDateRetroativo(campo,dData)
{

   var data = dData.substring(10,6) + dData.substring(5,3) + dData.substring(0,2);
   if(data < 20020422)
     return false;
   else
     return true

};


//****************************************************************
//*******************   MASCARA DE DATAS *************************
//****************************************************[FIM]*******
