

function Number2String(v)
{
    var s = "0" + String(v);
    return s.substring(s.length-2);
}

function ValidaCadastro()
	{
    
    
    
	var sMensagem;
	var asMsgErro;
	
	// Inicializo a mensagem com vazio
	sMensagem = "";
	asMsgErro = "";

	// Agora vou testar se os campos obrigatórios estão preenchidos
	// Os que não estiverem, vou acumulando  na mensagem de erro.
	if ( ( document.cadastro.fsLogin.value == null) || ( document.cadastro.fsLogin.value == "" ) )
		{
       sMensagem += "Favor preencher o login.\n";
		}
	if ( ( document.cadastro.fsSenha.value == null) || ( document.cadastro.fsSenha.value == "" ) )
		{
       sMensagem += "Favor preencher a senha.\n";
		}
	if ( ( document.cadastro.fsConfirmeSenha.value == null) || ( document.cadastro.fsConfirmeSenha.value == "" ) )
		{
       sMensagem += "Favor preencher a confirmação da senha.\n";
		}
	if ( ( document.cadastro.fsSenha.value != document.cadastro.fsConfirmeSenha.value) )
		{
       sMensagem += "A confirmação da senha está incorreta.\n";
		}
	if ( ( document.cadastro.fsNome.value == null) || ( document.cadastro.fsNome.value == "" ) )
		{
       sMensagem += "Favor preencher o nome.\n";
		}
	if ( ( document.cadastro.fsCRM.value == null) || ( document.cadastro.fsCRM.value == "" ) )
		{
       sMensagem += "Favor preencher o CRM.\n";
		}
	if ( ( document.cadastro.fsEspecialidade.value == null) || ( document.cadastro.fsEspecialidade.value == "" ) )
		{
       sMensagem += "Favor selecionar a especialidade.\n";
		}
    
    
    
    var iDay   = Number(document.cadastro.txtDia.value);
    var iMonth = Number(document.cadastro.txtMes.value);
    var iYear  = Number(document.cadastro.txtAno.value);
    var tmpDate = new Date(iYear, 0, 1);
    iYear = tmpDate.getFullYear();
    
    var oDate = new Date(iYear, iMonth-1, iDay);
    
    if(isNaN(oDate) || (iYear != oDate.getFullYear() || (iMonth-1) != oDate.getMonth() || iDay != oDate.getDate()))
    {
        sMensagem += "A data de aniversário está incorreta. Utilize o formato dia/mes/ano\n";
        document.cadastro.fsDtNascimento.value = "";
    }
    else
        document.cadastro.fsDtNascimento.value = Number2String(iDay) + "/" + Number2String(iMonth) + "/" + String(iYear);
    
    
//	if ( ( document.cadastro.fsDtNascimento.value == null) || ( document.cadastro.fsDtNascimento.value == "" ) )
//		{
//       sMensagem += "Favor preencher a data de aniversário.\n";
//		}
	if ( ( document.cadastro.fsConsultorio.value == null) || ( document.cadastro.fsConsultorio.value == "" ) )
		{
       sMensagem += "Favor preencher o consultório.\n";
		}	
	if ( ( document.cadastro.fsEndConsultorio.value == null) || ( document.cadastro.fsEndConsultorio.value == "" ) )
		{
       sMensagem += "Favor preencher o endereço.\n";
		}	
	if ( ( document.cadastro.fsBairro.value == null) || ( document.cadastro.fsBairro.value == "" ) )
		{
       sMensagem += "Favor preencher o bairro.\n";
		}	
	if ( ( document.cadastro.fsCidade.value == null) || ( document.cadastro.fsCidade.value == "" ) )
		{
       sMensagem += "Favor preencher a cidade.\n";
		}
	if ( ( document.cadastro.fsEstado.value == null) || ( document.cadastro.fsEstado.value == "" ) )
		{
       sMensagem += "Favor selecionar o estado.\n";
		}
	if ( ( document.cadastro.fsCEP.value == null) || ( document.cadastro.fsCEP.value == "" ) )
		{
       sMensagem += "Favor preencher o CEP.\n";
		}	
	if ( ( document.cadastro.fsTelefone.value == null) || ( document.cadastro.fsTelefone.value == "" ) )
		{
       sMensagem += "Favor preencher o telefone.\n";
		}	
	if ( ( document.cadastro.fsFax.value == null) || ( document.cadastro.fsFax.value == "" ) )
		{
       sMensagem += "Favor preencher o fax.\n";
		}	
	if ( ( document.cadastro.fsEmail.value == null) || ( document.cadastro.fsEmail.value == "" ) )
		{
       sMensagem += "Favor preencher o email.\n";
		}
	// Verifico se o Email foi preenchido, e preencido corretamento
	if ( !checkmail(document.cadastro.fsEmail.value )&&(document.cadastro.fsEmail.value != ""))
		   {
		   sMensagem += "Email Inválido.\n";
		   }
	if ( ( document.cadastro.fsHorarios.value == null) || ( document.cadastro.fsHorarios.value == "" ) )
		{
       sMensagem += "Favor preencher os dias e horários de visitação.\n";
		}
	if ( sMensagem != "" )
	   {
		alert( sMensagem );
		}
	else
	 { 
		document.cadastro.action = "GravaCadastro.asp"	;
		document.cadastro.submit() ;
	 }
}

/*------------------------------------------------------------------------
| FUNCAO:
|			checkmail()
|
| OBJETIVO:
|			Utilizada para criticar se campo de email esta correto
|
| RECEBE:
|       campo de email
------------------------------------------------------------------------*/
function checkmail(Email) 
{ 
	var find_ponto=false;
	var find_arroba=false;
	var find_caracter=true;
	var find_colon=true;
	for (var i=0; i< Email.length; i++) 
	{
		if (Email.charAt(i)=="@") find_arroba=true;
		else if (Email.charAt(i)==".") find_ponto=true;
		else if (Email.charAt(i)==" ") find_caracter=false;
		else if (Email.charAt(i)==",") find_colon=false;
	}
	return (find_ponto & find_arroba & find_caracter & find_colon);
}


//função para ir testando se o número de caracteres digitado é maior que o passado como parâmetro 
//e trunca a string no tamanho escolhido
function TestaTamanhoCampo(sCampo,iTamanhoMaximo)
	{
	if(document.cadastro.elements[sCampo].value.length > iTamanhoMaximo)
	{
		document.cadastro.elements[sCampo].value = document.cadastro.elements[sCampo].value.substr(0, iTamanhoMaximo);
		alert("O número máximo de caracteres deste campo é "+iTamanhoMaximo+".");
	}
	}
	
/*------------------------------------------------------------------------
| FUNCAO:
|			DDValidaData( adtData, asMsgErro )
|
| OBJETIVO:
|			Verifica se a data digitada é uma data valida.
| RECEBE:
|       	adtData 		Data a ser validada
|			asMsgErro	Mensagem de Erro
|
| Autor:
|    Rafael Estima
|
| Data:
|    25/07/2000
|
|	Alterações:
------------------------------------------------------------------------*/	
function DDValidaData( adtData, asMsgErro )
	{
	// Checando os seguintes formatos validos:
	// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
	var rgMascara = /^(\d{2})(\/|-)(\d{2})\2(\d{4})$/;

	//var rgMascara = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

	// Se quizermos considerar obrigatório 4 dígitos de ano,
	// é só descomentar esta linha
	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;

	// Este formato está Ok?
	var vMatchArray = adtData.match( rgMascara ); 
	if ( vMatchArray == null ) 
		{
		asMsgErro += "Máscara Inválida!\n"; 
		return false;
		}
	
	// Agora vou separar a data em variáveis mês, dia e ano.
	iMes = vMatchArray[ 3 ]; 
	iDia = vMatchArray[ 1 ];
	iAno = vMatchArray[ 4 ];

	// Checando o mês.
	if ( iMes < 1 || iMes > 12 ) 
		{
		asMsgErro += "Mês tem que estar entre 1 e 12\n"; 
		return false;
		}

	// Checando o básico do Dia ( maior ou igual a 1 e menor ou igual ao 31.
	if ( iDia < 1 || iDia > 31 ) 
		{
		asMsgErro += "Dia não pode ser menor que 1 e maior que 31\n"; 
		return false;
		}
	
	// Verificando se o dia está como 31 em um mês que não tem
	// 31 dias.
	if ( ( iMes == 4 || iMes == 6 || iMes == 9 || iMes == 11 ) && iDia == 31 ) 
		{
		asMsgErro += "Mês não tem dia 31\n"; 		
		return false
		}
	
	// Verificando se o mês é fevereiro, se for vou tratar o caso do ano bissexto.
	if ( iMes == 2 ) 
		{ 
		var bBissexto = ( iAno % 4 == 0 && ( iAno % 100 != 0 || iAno % 400 == 0 ) );
		if ( iDia > 29 || ( iDia == 29 && !bBissexto ) ) 
			{
			asMsgErro += "Fevereiro só tem 28 Dias( Não é ano Bissexto! )\n"; 
			return false;
   		}
		}
	return true;  // Data válida.
	}
