	
	Validacao = {
			
			/*isMail*/
			reEmail : /^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/,
			msgMail : "é um e-mail inválido",
			
			/*isData*/
			msgData : "Data Inválida",
			
			/*isCPF*/
			msgCPF : "O CPF informado é invalido",
			
			/*ComparaDatas*/
			msgDts1 : "As datas de inicio e fim sao iguais.",
			msgDts2 : "Data final e menor que a data inicial.",
			msgDts3 : "A data do banco deve ser menor do que a data de retorno.",
			
			/*Global*/
			mensagem : "",
			
			isEmail : function(pStr)
			{
				if (this.reEmail.test(pStr)) {
					return true;
				} else if (pStr != null && pStr != "") {
					this.mensagem = pStr + " " +this.msgMail;
					return false;
				}
			},
			
			isCPF : function(cpf)
			{
				s = cpf.substring(0,3) + cpf.substring(4,7) + cpf.substring(8,11) + cpf.substring(12,14);
				var c = s.substr(0,9);
				var dv = s.substr(9,2);
				var d1 = 0;
				for (var i = 0; i < 9; i++){
					d1 += c.charAt(i)*(10-i);
				}
				if (d1 == 0)
				{
					this.mensagem = this.msgCPF;
					return false;
				}
				
				d1 = 11 - (d1 % 11);
				if (d1 > 9) d1 = 0;
				if (dv.charAt(0) != d1)
				{
					this.mensagem = this.msgCPF;
					return false;
				}
				
				d1 *= 2;
				for (i = 0; i < 9; i++) 
				{
					d1 += c.charAt(i)*(11-i);
				}
				
				d1 = 11 - (d1 % 11);
				if (d1 > 9) d1 = 0;
				if (dv.charAt(1) != d1)
				{
					this.mensagem = this.msgCPF;
					return false;
				}
			
				if (cpf == '111.111.111-11' || cpf == '222.222.222-22' || cpf == '333.333.333-33' || cpf == '444.444.444-44' || cpf == '555.555.555-55' || cpf == '666.666.666-66' || cpf == '777.777.777-77' || cpf == '888.888.888-88' || cpf == '999.999.999-99' || cpf == '012.345.678-90') 
				{
					this.mensagem = this.msgCPF;
					return false;
				}
				
				if (cpf == '111.111.111-11')
				{
					this.mensagem = this.msgCPF;
					return false;
				}
				
				return true;
			},
			
			isData : function(date)
			{
				var array_data=new Array;
				var ExpReg=new RegExp("(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[12][0-9]{3}");
				
				array_data=date.split("/");
				erro=false;
				
				if(date.search(ExpReg)==-1)
					erro=true;
				else if(((array_data[1]==4)||(array_data[1]==6)||(array_data[1]==9)||(array_data[1]==11))&&(array_data[0]>30))
					erro=true;
				else if(array_data[1]==2)
				{
					if((array_data[0]>28)&&((array_data[2]%4)!=0))
						erro=true;
					if((array_data[0]>29)&&((array_data[2]%4)==0))
						erro=true;
				}
				if(erro){
					this.mensagem = this.msgData;
					return false;
				}
				else
					return true;
			},
			
			ComparaDatas : function (data1, data2)
			{
				var nova_data1 = parseInt(data1.split("/")[2].toString() + data1.split("/")[1].toString() + data1.split("/")[0].toString());
				var nova_data2 = parseInt(data2.split("/")[2].toString() + data2.split("/")[1].toString() + data2.split("/")[0].toString());
				
				if (nova_data2 > nova_data1)
				   return true;
				else if (nova_data1 == nova_data2){
					this.mensagem = this.msgDts1;
					return false;
				}
				else{
					this.mensagem = this.msgDts2;
				   return false;
				}
			},
			
			ComparaDatas2 : function (data1, data2)
			{
				var nova_data1 = parseInt(data1.split("/")[2].toString() + data1.split("/")[1].toString() + data1.split("/")[0].toString());
				var nova_data2 = parseInt(data2.split("/")[2].toString() + data2.split("/")[1].toString() + data2.split("/")[0].toString());
				
				if (nova_data1 <= nova_data2)
				   return true;
				else{
					this.mensagem = this.msgDts3;
				    return false;
				}
			},
						
			alertaSiteForm : function(messages, objeto)
			{
				if (messages != "")
				{
					$("#error").html(messages);
										
					$("#"+objeto).addClass("obrigatorio");
					
					$("#"+objeto).focus();
				}
				return false;
			},
			
			alertaSiteForm2 : function(messages, objeto)
			{
				if (messages != "")
				{
					$("#error2").html(messages);
										
					$("#"+objeto).addClass("obrigatorio");
					
					$("#"+objeto).focus();
				}
				return false;
			}
		};


