function DisDate(source, arguments) {
	
	if (arguments.Value == '')
	{
	    arguments.IsValid = false;
	}
    else
	{
	    
	    data = arguments.Value;
	    dia = data.substring(0,2);
	    mes = data.substring(3,5);
	    ano = data.substring(6,10);
	    barra1 = data.substring(2,3);
	    barra2 = data.substring(5,6);
	    mensagem = '';
	    
	    arguments.IsValid = true;

	    hoje = new Date();
	    // hoje.setDate(dia);
	    // hoje.setMonth(mes-1);
    	
	    if ((barra1 != "/") || (barra2 != "/")) {
		    alert("O formato do campo "+ mensagem +" esta inválido ! Exemplo: dd/mm/aaaa");
		    arguments.IsValid = false;
	    }
	    if ( isNaN(dia) || (dia < 1) || (dia > 31)) {
		    alert("O Dia do campo "+ mensagem +" é inválido");
		    arguments.IsValid = false;
	    }
	    else if (isNaN(mes) || (mes < 1) || (mes > 12) ) {
		    alert("O Mes do campo "+ mensagem +" é inválido");
		    arguments.IsValid = false;
	    }
	    else if (isNaN(ano)) {
		   alert("O Ano do campo "+ mensagem +" contém caracteres inválidos");
		    arguments.IsValid = false;
	    }
	    else if (data.length != 10) {
		    alert("O formato do campo "+ mensagem +" está inválido ! Exemplo: dd/mm/aaaa");
		    arguments.IsValid = false;
	    }
	    quociente4 = (eval(ano) % 4);
	    quociente100 = (eval(ano) % 100);
	    quociente400 = (eval(ano) % 400);
	    if ((quociente4 == 0) || (quociente100 == 0) && (quociente400 == 0))
		    biss = true;
	    else
		    biss = false;

	    if (ano < 1900) {
		    alert("O Ano do campo "+ mensagem +" não pode ser menor que 1900 !");
		    arguments.IsValid = false;
	    }
	    if (mes == 2) {
		    if ((dia == 29) && (biss == false)) {
			    alert("O Dia do campo "+ mensagem +" é inválido,/npois o ano não e bissexto!");
			    arguments.IsValid = false;
		    }
		    else if ((dia == 30) || (dia == 31)) {
			    alert("O Dia do campo "+ mensagem +" é inválido para o mês de Fevereiro!");
			    arguments.IsValid = false;
		    }
	    }
	    else if ((mes == 4) && (dia == 31)) {
		    alert("O Dia do campo "+ mensagem +" é inválido para o mês de Abril!");
		    arguments.IsValid = false;
	    }
	    else if ((mes == 6) && (dia == 31)) {
		    alert("O Dia do campo "+ mensagem +" é inválido para o mês de Junho!");
		    arguments.IsValid = false;
	    }
	    else if ((mes == 9) && (dia == 31)) {
		    alert("O Dia do campo "+ mensagem +" é inválido para o mês de Setembro!");
		    arguments.IsValid = false;
	    }
	    else if ((mes == 11) && (dia == 31)) {
		    alert("O Dia do campo "+ mensagem +" é inválido para o mês de Novembro!");
		    arguments.IsValid = false;
	    }
    }
	  

	   
	
}	


function findPos(obj) {
	var		curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
function ShowHide(qual)
{
var oDiv = document.getElementById(qual);
if (oDiv)
{
	if (oDiv.style.display=='')
	{
		oDiv.style.display='none';
	}
	else
	{
		oDiv.style.display='';
	}
}
}
function ShowCal(el)
{
var caltrigger = document.getElementById(el);
ShowHide("divCalendar");

var x = findPos(caltrigger)[0]//loc.offsetLeft;
	var y = findPos(caltrigger)[1]//loc.offsetTop;

caltrigger.style.top = y;
caltrigger.style.left = x;
}
