//////////////////////////////////////////////////////////////////////////////////
// Project Name: Lottobytext.com												//
// Company Name: Globtier Solution Inc.	(www.globtier.com)						//
// File Name: validate.js														//
// Created by: Ravinder Chauhan													//
// Created On: 18 Dec 05														//
// Modified On:																	//
// File purpose: This file is for form validation for client side.		        //
//////////////////////////////////////////////////////////////////////////////////
function Trim(s)
{
	var tempStr1, s1 ,tmpStr2 ;
	s1 = s;
	tempStr1 = lTrim(s1);
	tempStr2 = rTrim(tempStr1);
	return tempStr2 ;
}	
	
function hasNoSplChars(obj) 
{ 
	var s=""; 
	s = Trim(obj.value);
	splChars=new Array("@","#","$","%","^","&","*","!","\'","(",")","_","=","+","[","]","{","}","|","\\","<",">",".","/","?","\"","*","~"); 
	for(i=0;i<s.length;i++)
		for(j=0;j<splChars.length;j++) 
		{ 
			if(s.charAt(i)==splChars[j]) 
			{ 
				return "Yes";
			} 
		} 
	return "No"; 
}
function rTrim(s)
{
	var temp="";
	  tempStr="";
	  temp=s;
	  var len=s.length;
	
	if(len>0)
	{
		for(i=len;i > 0;i--)
		{
			if(temp.charAt(i-1)!=" ")
				break;
		}
		
		k=0;
		for(j=0;j<i;j++)
		{
			tempStr=tempStr+temp.charAt(j);
			k=k+1;
		}
		return tempStr;
	}
	else
		return tempStr;
}

function lTrim(s)
{
	var temp="";
	tempStr="";
	temp=s;
	var len=s.length;
	
	if(len>0)
	{
		for(i=0;i<len;i++)
		{
			if(temp.charAt(i)!=" ")
				break;
		}
		
		k=0;
		for(j=i;j<len;j++)
		{
			tempStr=tempStr+temp.charAt(j);
			k=k+1;
		}
		return tempStr;
	}
	else
		return tempStr;
}

function isBlank(obj,displayName)
{
	var str="";
	str=obj.value;
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
			return false;
		}
	}
	alert(displayName+" cannot be left blank");
	obj.focus();
	return true;
}

function isMessage(obj,displayName)
{
	var str="";
	str=obj.value;
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
			return false;
		}
	}
	obj.focus();
	if (!confirm(displayName+" cannot be left blank. Do you want to send our standard Message?"))
	 {
	return true;
	 }
}

function isLength(val,num)
{
	var str="";
	str=val;
	var len=str.length
	  if(len!=num)
	   {
   return false;
	   }
   return true;
}


function isNumber(val)
{
	var str=lTrim(val);
	for(i=0;i<str.length;i++)
	{
		if((str.charAt(i)<'0'|| str.charAt(i)>'9') && str.charAt(i)!='.')
		{	
			if((str.charAt(0))=="-")
			{
				i=i+1;
					continue;
			}
			return false;
		}
	}
	return true;
} 



function isNonNumber(obj,displayName)
{
	var str=lTrim(obj.value);
	var flag=false;
	if(str.length>0)
	{
			for(i=0;i<str.length;i++)
			{	
				if((str.charAt(0))=="-")
				{
					i=i+1;
						continue;
				}
				if(str.charAt(i)<'0'||str.charAt(i)>'9')
				{
					flag=true;	
				}
			}
			if(flag)
				return true;
			else
			{
				alert(displayName+" should be non-numeric.");
				obj.focus();
				return false;
			}
	}
	else
		return true;
	return flag;
}




function isValidDate(obj,dt)
{
	newdt=new Date(dt);
	str=(newdt.getMonth()+1)+"/"+newdt.getDate()+"/"+newdt.getFullYear();
	if(dt==str) return true;
	alert("Invalid date.");
	obj.focus();
	return false;
}

function isEmail (obj,displayName) 
{ 
var theStr=lTrim(obj.value);
var atIndex = theStr.indexOf('@'); 
var dotIndex = theStr.indexOf('.', atIndex); 
var flag = true; 
theSub = theStr.substring(0, dotIndex+1) 

if ((atIndex < 1)||(atIndex != theStr.lastIndexOf('@'))||(dotIndex < atIndex + 2)||(theStr.length <= theSub.length)) 
{ 
	alert("Not a valid email id");
	obj.focus();
	flag = false; 
} 
else { flag = true; } 
return(flag); 
}

function isEmail_ck (obj,displayName) 
{ 
var theStr=lTrim(obj.value);
var atIndex = theStr.indexOf('@'); 
var dotIndex = theStr.indexOf('.', atIndex); 
var flag = true; 
theSub = theStr.substring(0, dotIndex+1) 

if ((atIndex < 1)||(atIndex != theStr.lastIndexOf('@'))||(dotIndex < atIndex + 2)||(theStr.length <= theSub.length)) 
{ 
	alert("Enter The valid Email Id Please");
	obj.focus();
	flag = true; 
} 
else { flag = false; } 
return(flag); 
}

function isPositive(obj,displayName)
{
	var str="";
	str=lTrim(obj.value);
	if(str.length<=0)
		return true;
	if(!isNaN(obj.value))
	{
		if(parseFloat(obj.value)>=0)
			return true;
		else
		{
			alert(displayName+" should be a positive number.");
			obj.focus();
			return false;
		}
	}
	else
	{
		alert(displayName+" should be numeric");
		obj.focus();
		return false;
	}
	return true;
}


function isBetween (val, lo, hi) { 
if ((val < lo) || (val > hi)) { return(false); } 
else { return(true); } 
} 


function isDigit(theNum) { 
var theMask = '0123456789'; 

if (isEmpty(theNum)) return(false); 
else if (theMask.indexOf(theNum) == -1) return(false); 

return(true); 
} 


function isInt (theStr) { 
var flag = true; 

if (isEmpty(theStr)) { flag=false; } 
else 
{ for (var i=0; i<theStr.length; i++) { 
if (isDigit(theStr.substring(i,i+1)) == false) { 
flag = false; break; 
} 
} 
} 
return(flag); 
} 

function isFloatNumber(obj,displayName)
{
	var str=lTrim(obj.value);
	var firstIndex,lastIndex;
	firstIndex=str.indexOf(".");
	lastIndex=str.lastIndexOf(".");
	if(firstIndex!=lastIndex)
	{
		alert(displayName+" should be numeric.");
		obj.focus();
		return false;
	}
	for(i=0;i<str.length;i++)
	{
		if((str.charAt(i)<'0'||str.charAt(i)>'9')&&str.charAt(i)!=".")
		{	
			if((str.charAt(0))=="-")
			{
				i=i+1;
					continue;
			}
			alert(displayName+" should be numeric.");
			obj.focus();
			return false;
		}
	}
	return true;
}  

function maxLength(obj,displayname,num)
{
	var str="";
	var  num=num;
	str=lTrim(obj.value);

	if(str.length > num)
	{
		alert(displayname+" should not have more than "+num+" characters.");
		obj.focus();
		return false;
	}
	return true;
}
function closeWindow() 
{ 
self.close(); 
}

/*
	This function is to validate the phone number entered by the user. This will allow one '+' and only numerics.
	GM: Nov. 14, 2006
*/
function isValidPhoneNumber(msnVal)
{
	if(Trim(msnVal)=="")
	{
		return false;
	}
	else
	{
		msnVal_Arr = msnVal.split('+');
		if(msnVal_Arr.length > 2)
		{
			return false;
		}
		else
		{
			msnVal = msnVal.replace('+','');

			if(!isNumber(msnVal))
			{
				return false;
			}
		}
		return true;
	}
}
/*
	This function is to validate that the value is only character and neither the numeric nor spc. character
	GM: Nov. 16, 2006
*/
function isOnlyChar(strObj)
{
	var strVal = Trim(strObj.value);

	if(Trim(strVal) == "")
	{
		return false;
	}
	else
	{
		for(i=0;i<strVal.length;i++)
		{
			if(strVal.charAt(i)>='0' && strVal.charAt(i)<='9')
			{	
				return false;
			}
		}
		if(hasNoSplChars(strObj) == "Yes")
		{
			return false;
		}
		return true;
	}
}