// JavaScript Document

/* This function will finds the length of the given string and if it exceeds

   length then it displays an appropriate message. 

   data = string to be checked for length.

   upperLeng = specified string upper length.

   lowerLeng = specified string lower length.



*/

function checkoption(data)

{
 if(data.selectedIndex==0)

 {

   alert(FieldName+" Should Not Be Empty ");

   data.focus();

   return false;

 }

  else return true;

}

function getValidValue(data) 
{
	str1 = eval(data);
	str = str1.value;	

if(str == '0')
	{
		alert("Please select Dealer");
		//str1.select();
		return false;
	}
	
return true;
}

function checkLength(data, upperLeng, lowerLeng)

{	

	if(data.value.length > upperLeng )

	{			

		alert("Length Of "+FieldName+" Should Not Be More Than "+upperLeng);		

		data.focus();

		return false

	}

	else if (data.value.length < lowerLeng)

	{	

		if (lowerLeng==1)			

			alert(FieldName+" Should Not Be Empty");

		else if (lowerLeng >1 && lowerLeng<11)

			alert(FieldName+" Atlest "+lowerLeng+" Character Long");

		data.focus();

		return false

	}

	else

		 return true

}



/*

	it checks the number words have been entered in the given field

*/

function checkWordCount(data, upperLeng, lowerLeng)

{

	strValue = data.value

	wordCount = strValue.split(" ")



	if (wordCount.length > upperLeng)

	{

		alert("number of words should not be more than  "+upperLeng +" in the "+data.name)

	data.focus()

		return false

	}

	else if(wordCount.length <= lowerLeng)

	{

		alert("number of words should be more than  "+lowerLeng +" in the "+data.name)

	data.focus()

		return false

	}

	else

	 return true

}



/*

  This function checks whether the data has been sent is numeric or string

  if data is not numeric then it displays an appropriate error message.

*/



function checkPhone(data, leng)

{	//40,41,45,32,44 for (,),-," ",, characters respectively

	var num,i

	result=true

	num=data.value;	

	if(num.length > leng)

	{

		alert(FieldName+"  should not exceed "+leng+" digits");

		data.focus()

		return false

	}

	else

	{

		for(i=0; i<num.length ; i++)

		{

			if((num.charCodeAt(i)!= 44 && num.charCodeAt(i)!= 32 && num.charCodeAt(i)!= 40 && num.charCodeAt(i)!= 41 && num.charCodeAt(i)!= 45 )&&( num.charCodeAt(i)<48 || num.charCodeAt(i)>57 ))

			{

				alert(FieldName+" is invalid")

				data.focus()

				result = false		

				break;

			}

			else

			{

				result = true

			}

		}

		return result

	}

	

}



/*

  This function checks whether the data has been sent is numeric or string

  if data is not numeric then it displays an appropriate error message.

*/



function checkNumeric(data,leng)

{	

	var num,i

	num=data.value;

	result = true



	if(num.length > leng)

	{

		alert("Block should not exceed "+leng+" digits")

		return false

	}

	else

	{

		for(i=0; i<num.length ; i++)

		{

			/*if( (num.charCodeAt(i)<48 || num.charCodeAt(i)>57) )

			{

				alert(FieldName+" Should Be Numeric Only")

				data.focus()

				result = false

				break;

			}

			else

			{

				result = true

			}*/

			

			if( (num.charCodeAt(i)>=48 && num.charCodeAt(i)<=57) || (num.charAt(i) == "." ) )

			{

				result = true

			}

			else

			{

				alert(FieldName+" Should Be Numeric Only")

				data.focus()

				result = false

				break;				

			}

		}

		return result

	}

}





function checkEmail(data)

 {

		strEmailId	=  data.value;

		//HERE EMAIL ID IS AN OPTIONAL FIELD IF NO DATA THEN NO VALIDATION.

		//if (strEmailId == "")

		{

			//return true // DONT VALIDATE EMAIL FIELD

		}

			

		if((strEmailId.substring(0,1)<"a" || strEmailId.substring(0,1)>"z") && (strEmailId.substring(0,1)<"A" || strEmailId.substring(0,1)>"Z"))

		{

			alert("The "+FieldName+" should begin with an alphabetic character.");

			data.focus();

			return false;

		}

			

			

		 if(strEmailId.indexOf("@") > 0 && strEmailId.indexOf(".") > 1)

             {

		    //checks that last character is not "."

		    if( strEmailId.lastIndexOf(".") == data.value.length - 1)

                {  

			alert("Please correct "+FieldName)

			data.focus()

			return false

		    }

		    else

		 	return true     

             }

             else

             {

                alert("Please Enter correct "+FieldName)

		    data.focus()	

		    return false	



             }

             

}

function checkSpace(data){

	var Mystring=new String(data.value)

	var Idx=Mystring.search(" ") 

	if (Idx==-1){

	 return true}

	 else{

	 alert ("Please Remove The Space")

	 data.focus()

	 return false

	 }

}



function checkURL(data)

 {

		strEmailId	=  data.value;

		//HERE EMAIL ID IS AN OPTIONAL FIELD IF NO DATA THEN NO VALIDATION.

		if (strEmailId == "")

		{

			return true // DONT VALIDATE EMAIL FIELD

		}



		 if(strEmailId.indexOf(".") > 1)

             {

		    //checks that last character is not "."

		    if( strEmailId.lastIndexOf(".") == data.value.length - 1)

                {  

			alert("Please correct URL")

			data.focus()

			return false

		    }

		    else

		 	return true     

             }

             else

             {

                alert("Please correct URL")

		    data.focus()	

		    return false	



             }

             

          }

          

          

function checkZip(data, leng)

{	//40,41,45,32,44 for " " characters respectively

	var num,i

	result=true

	num=data.value;	

	if(num.length > leng)

	{

		alert(FieldName+" Should Not Be Exceed "+leng+" Digits");

		data.focus()

		return false

	}

	else

	{

		for(i=0; i<num.length ; i++)

		{

			if(num.charCodeAt(i)!= 32&&( num.charCodeAt(i)<48 || num.charCodeAt(i)>57 ))

			{

				alert(FieldName+" is invalid")

				data.focus()

				result = false		

				break;

			}

			else

			{

				result = true

			}

		}

		return result

	}

	

}



function validDate(m,d,y)

	{

		var check;

		mv = m.value;

		dv= d.value;

		yv = y.value;



		if(mv <= 0 || mv >12)

		{

			alert("Please enter valid month");

			m.value = "";

			m.focus();

			return false;

		}

		

		if(dv <=0 || dv > 31)

		{

			alert("Please enter valid date");

			//d.value = "";

			d.focus();

			return false;

		}

		

		if(mv == 2 || mv == 4 || mv == 6 || mv == 9 || mv == 11)

		{

			if(mv == 2)

			{

				if(dv > 29)

				{

					alert("Please enter valid date");

					//d.value = "";

					d.focus();

					return false;

				}

				else

				{

					return true;

				}

			}

			else

			{

				if(dv > 30)

				{

					alert("Please enter valid date");

					//d.value = "";

					d.focus();

					return false;

				}

				else

				{

					return true;

				}

			}	

		}

		

		if(yv <= 0)

		{

			alert("Please enter valid year");

			//y.value = "";

			y.focus();

			return false;

		}		

		else

		{

			return true;

		}

		

	}



function validateInt(evt)

{

	var k;

	var keyCode = evt.keyCode ? evt.keyCode : evt.charCode ? evt.charCode : evt.which ? evt.which : void 0;

	k=keyCode;

	

	if(k==8 || k==9 || k==13)

		return true;

	else if((k>=48 && k<=57))

		return true;

	else

		return false;

}



function validateChar(evt)

{

	var k;

	var keyCode = evt.keyCode ? evt.keyCode : evt.charCode ? evt.charCode : evt.which ? evt.which : void 0;

	k=keyCode;

	

	if(k==8 || k==9 || k==13)

		return false;

	else if((k>=48 && k<=57))

		return false;

	else

		return true;

}





function NumOnly() 

{ 

if(event.keyCode>=48 && event.keyCode<=57 )

  return true;

else

 { 

  if((event.keyCode==8 )||(event.keyCode==23)||(event.keyCode==13)) 

     return true;

  else 

  return false; 

 }

}



function ValidFontFile(x)

{		

				var y=x.value;					

				var fontlen=y.length;

				var fontdotpos=y.lastIndexOf(".");

				var fontext=y.substring(fontdotpos+1,fontlen);

								

				

					if((fontext!="ttf") && (fontext!="TTF"))

					{

						alert("For "+FieldName+" Please select .ttf Only")

						x.select();

						x.focus();

						return false;

					}

				

				return true;

}	



//HANDLES THE KEYPRESS EVENT OF THE TEXTBOX.

function checkTBKeyPress(obj,tbtype,length,precision)

{

	//ADDITIONAL FEATURE to add

	//SPECIAL CHARATERS

	

	//ADD CHECKING FOR TEXTAREA

	

	if(obj.value.length >=length)

	{

		window.event.keyCode=0;

		return;

	}

		

	if(tbtype=="alphanumeric")

	{

		if((window.event.keyCode<65 || window.event.keyCode>90) && 

		   (window.event.keyCode<97 || window.event.keyCode>122) &&

		   (window.event.keyCode<48 || window.event.keyCode>57))

		{

			window.event.keyCode=0;

			return;

		}



		return;

	}



	if(tbtype=="alpha")

	{

		if((window.event.keyCode<65 || window.event.keyCode>90) && 

		   (window.event.keyCode<97 || window.event.keyCode>122))

		{

			window.event.keyCode=0;

			return;

		}

	}	

	

	if(tbtype=="float")

	{			

		if(window.event.keyCode==46)

		{			

			if(precision==0)

			{

				window.event.keyCode=0;

				return;

			}

							

			if(length-obj.value.length==1)

			{

				window.event.keyCode=0;

				return;

			}

			

			if(obj.value.length==0)

			{

				obj.value="0";

				return;

			}

			

			var ind=obj.value.indexOf(".");

			if(ind>=0)

				window.event.keyCode=0;

		}

		else if(window.event.keyCode<48 || window.event.keyCode>57)

		{

			window.event.keyCode=0;

			return;

		}



		var ind=obj.value.indexOf(".");

		//BUG: if we insert characters after .(dot) it doesn't allow to enter 

		//characters before dot even the total length doesn't exceeds

		//Solution : Use regular expression

		if(ind>=0)

		{

			var sstr=obj.value.substring(ind);

			if(sstr.length>precision)

				window.event.keyCode=0;

			return;

		}			

	}



	if(tbtype=="integer")

	{

		if(window.event.keyCode<48 || window.event.keyCode>57)

		{

			window.event.keyCode=0;

			return;

		}

	}		

}



function setObjectValue(frmName, field, setValue)

{

	str1 = eval("document."+frmName+"."+field);	

	str1.value = setValue;

}



function getObjectValue(frmName, field)

{

	str1 = eval("document."+frmName+"."+field);	

	return str1.value;

}



function getcheckBoxStatus(frmName, field)

{

	str1 = eval("document."+frmName+"."+field);	

	return str1.checked;

}





function getRadioStatus(frmName, field , fldNumber, msg)

{

	var inc = 0;

	str1 = eval("document."+frmName+"."+field);

	

	for(i=0;i<fldNumber;i++)

	{

		if(!str1[i].checked)

			inc++;

		else

			inc = 0;

	}

	

	if(inc == fldNumber)

	{

		alert(msg);

		return false;

	}

	return true;

}



function checkValidDigit(frmName, field , msg) 

{

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	var ptrn = /[0-9]/;

	

	var v = ptrn.test(str);



	if(!v)

	{

		alert(msg);

		str1.focus();

		return false;

	}

	

return true;

}



function validDigit(frmName, field , msg) 

{

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	var ptrn = /[0-9]/;

	

	var v = ptrn.test(str);



	if(!v || str.length<4)

	{

		alert(msg);

		str1.focus();

		return false;

	}

	

return true;

}



function getValidLimit(frmName, field, LimitLength , msg) 

{

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	

	if(str.length < LimitLength)

	{

		alert(msg);

		str1.focus();

		return false;

	}

	

return true;

}



function getValidLimitedAmount(frmName, field, LimitLength , msg) 

{

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	

	if(str < LimitLength)

	{

		alert(msg);

		str1.focus();

		return false;

	}

	

return true;

}





function validBlank (frmName, field , msg) 

{

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	while (str.charAt(0) == ' ')

		str = str.substring(1);

	while (str.charAt(str.length - 1) == ' ')

		str = str.substring(0, str.length - 1);

	

	if(str.length == 0)

	{

		alert(msg);

		str1.focus();

		return false;

	}

return true;

}





function validemail(frmName, field , msg)  

{

	var at="@"

	var dot="."

	

	str1 = eval("document."+frmName+"."+field);

	str = str1.value;

	

	var lat=str.indexOf(at)

	var lstr=str.length

	var ldot=str.indexOf(dot)

	if (str.indexOf(at)==-1){

	    alert(msg);

		str1.focus();

	   return false

	}



	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){

	    alert(msg);

		str1.focus();

	   return false

	}



	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){

		alert(msg);

		str1.focus();

		return false

	}



	 if (str.indexOf(at,(lat+1))!=-1){

		alert(msg);

		str1.focus();

		return false

	 }



	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){

		alert(msg);

		str1.focus();

		return false

	 }



	 if (str.indexOf(dot,(lat+2))==-1){

		alert(msg);

		str1.focus();

		return false

	 }

	

	 if (str.indexOf(" ")!=-1){

		alert(msg);

		str1.focus();

		return false

	 }



	 return true					

}



