/****************************************************************
*  $RCSfile: Masking.js,v $																	 	
*  $Revision: 1.1.1.1 $							
*  $Author: mercury_build $							
*  $Date: 2005/08/08 17:10:57 $							
*								
*  Copyright (c) 2003 Quark Media house India Pvt Limited.	
*  All Rights Reserved						
*****************************************************************/

/******************************************Member variable**************************************************/
var elementValue = "";
var keyCode;
/******************************************Member variable**************************************************/


/******************************************Masking Methods**************************************************/

function maskNumeric(totallength, precisionlength)
{
	elementValue = window.event.srcElement.value;
	keyCode = window.event.keyCode;
	
	//check for "."
	if(keyCode == 46)
	{
		if(elementValue.indexOf(".") != -1)
		{
			return false;
		}
	}
	
	//check for numerals from 0-9
	if((keyCode < 48 || keyCode > 57) && keyCode != 46)
		return false;
	
	if(!checkValid(totallength, precisionlength))
		return false;
		
	return true;	
} 


function checkValid(totallength, precisionlength)
{
	var singleDot;
	var returnval = true;
	
	if(checkDot(elementValue) == "s")
	   singleDot = true;
	else
	   singleDot = false;
	
	if(singleDot)
	{
		var valueBeforeDot = elementValue.substr(0, elementValue.indexOf("."));
	    var valueAfterDot  = elementValue.substr(elementValue.indexOf(".") + 1, elementValue.length);
		
		if(valueBeforeDot.length > (totallength - precisionlength))
		    returnval = false;
		 
		  if(valueAfterDot != "")
		  { 
			if (valueAfterDot.length > (precisionlength))
				returnval = false;
		  }
	}
	else
	{
		if(elementValue.length > (totallength - precisionlength))
			returnval = false;
	} 
	
	return returnval;
}
  
  
function checkDot(val)
{
    if(val.indexOf(".") != -1)
		return "s";
	else
	   return "n";	
}

//This function trims the leading and trailing blanks
function trim(value)
{
	while(value.charAt(value.length-1) == " ")
	{
		value = value.substring(0,value.length-1);
	} 
	while(value.substring(0,1) ==" ")
	{
		value = value.substring(1,value.length);
	}
	return value;
}

/******************************************Masking Methods**************************************************/


/*************************************************************************
 * 
 * $Log: Masking.js,v $
 * Revision 1.1.1.1  2005/08/08 17:10:57  mercury_build
 * Inital Check-in for QCMS 2.8 after 2.5 version
 *
 * Revision 1.1.2.1  2005/03/16 11:09:07  sackumar
 * Initial check-in for Estore 2.5.
 *
 * Revision 1.1  2005/02/24 05:46:27  sackumar
 * added new file for client side masking methods.
 *
 *
 * 
 * Copyright (c) 2000-2006 Quark, Inc.
 * All Rights Reserved.
 * **********************************************************************/




