/*
********************************************************************************************
Desenvolvido por:	Mitsumi Tecnologia S.C. Ltda
url:				http://www.mitsumi.com.br
email:				webmaster@mitsumi.com.br
Tel/Fax:			3865-8939
********************************************************************************************
*/

function isInt(vintValor){
	var lintI=0
	var lblnAchou=false
	lstrValor=vintValor
	while (lintI<lstrValor.length && ! lblnAchou){
		if (isNaN(lstrValor.substring(lintI, lintI+1))==true){
			lblnAchou=true
		}
		lintI++
	}
	return ! lblnAchou
}

function isFloat(vintValor){
	lstrValor=vintValor
	if (lstrValor.substring(lstrValor.length-3,lstrValor.length-2)!="."){
		return false
	}
	else{
		if (! isInt(lstrValor.substring(0, lstrValor.length-3))){
			return false
		}
		if (! isInt(lstrValor.substring(lstrValor.length-2, lstrValor.length))){
			return false
		}
	}
	return true
}

function TrocaApostrofe (str1){
	var pos
	pos = str1.indexOf (unescape ("%27"))
	if (pos == -1)
		return str1
	else{
		var resto
	
		resto = str1.substring (pos + 1, str1.length)
		return (str1.substring (0, pos) + "`" + TrocaApostrofe (resto))
	}
}

function TrocaMaiuscula (str1){

	return str1.toUpperCase ()
}

function EhBissexto (Year) {	if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0))		return (1);	else		return (0);}

function mask (InString, Mask)  {	LenStr = InString.length;	LenMsk = Mask.length;	if ((LenStr==0) || (LenMsk==0))		return(0);	if (LenStr!=LenMsk)		return(0);	TempString=""	for (Count=0; Count<=InString.length; Count++)  {		StrChar = InString.substring(Count, Count+1);		MskChar = Mask.substring(Count, Count+1);		if (MskChar=='#') {			if(!IsNumber(StrChar))				return(0);		}		else if (MskChar=='?') {			if(!isAlphabeticChar(StrChar))				return(0);		}		else if (MskChar=='!') {			if(!isNumOrChar(StrChar))				return(0);		}		else if (MskChar=='*') {		}		else {			if (MskChar!=StrChar) 				return(0);		}	}	return (1);}function isAlphabeticChar (InString)  {	if(InString.length!=1) 		return (false);	InString=InString.toLowerCase();	RefString="abcdefghijklmnopqrstuvwxyz";	if (RefString.indexOf (InString.toLowerCase(), 0)==-1) 		return (false);	return (true);}function IsNumber (InString)  {//	RefString="1234567890";//	if (RefString.indexOf (InString, 0)==-1) //		return (false);	return (true);}function isNumOrChar (InString)  {	if(InString.length!=1) 		return (false);	InString=InString.toLowerCase();	RefString="1234567890abcdefghijklmnopqrstuvwxyz";	if (RefString.indexOf (InString, 0)==-1)  		return (false);	return (true);}
function isBlank (InString) {	if (InString==null) return (!false)	if (InString.length!=0)		return (!true);	else		return (!false);}

function isDate(rdatData)
	{
	if (!mask(rdatData, "##/##/####"))
		{
		return (false)
		}
	else if (rdatData.substring(0,2) > 31 || rdatData.substring(3,5) > 12)
		{
		return (false)
		}
	else if (rdatData.substring(3,5) == "04" || rdatData.substring(3,5) == "06" || rdatData.substring(3,5) == "09" || rdatData.substring(3,5) == "11")
		{
		if (rdatData.substring(0,2) > 30)
			{
			return (false)
			}
		}
	else if (rdatData.substring(3,5) == "02")
		{
		if (EhBissexto(rdatData.substring(6,10)))	
			{
			if (rdatData.substring(0,2) > 29)
				{
				return (false)
				}
			}
		else
			{
			if (rdatData.substring(0,2) > 28)
				{
				return (false)
				}
			}
		}
						
	return (true)
	}

function pathOnly (InString)  {	LastSlash=InString.lastIndexOf ('/', InString.length-1)	OutString=InString.substring  (0, LastSlash+1)	return (OutString);	}
function isDate01(fecha){
   day = parseInt(fecha.substring(0,2),10);
   month = parseInt(fecha.substring(3,5),10);
   year = parseInt(fecha.substring(6,10),10);
   if (fecha.substring(2,3) != "/" || fecha.substring(5,6) != "/") return -1;
   if (fecha.length != 10) return -1;
   if (day<1 || day>31 || month<1 || month>12) return -1;
   if ((month==2 || month==4 || month==6 || month==9 || month==11) && day==31) return -1;
   if ((month==2 && day==30) || (month==2 && day==29 && year%4!=0) || (month==2 && day==29 && year%4==0 && year%400==0)) return -1;
   return year*366+month*31+day; 
}
