/*********************************** onKeyDown events ***********************************/

/**
 * isInteger
 *
 * Gets called onkeydown
 *
 * @param objectsKeyDownEvent	event fired from <input> tag
 *
 * Example of how to trigger : <input name="inputname" value="" class="cssstyle" size="2" maxlength="2" onkeydown="return isInteger(event)" />
 */
function isInteger( objectsKeyDownEvent ) {

	var keynum;		// keystroke number code
					// var keychar;
	var isInt;		// boolean
	var isXorY;		// boolean

	if (window.event)
	{
			keynum = objectsKeyDownEvent.keyCode;	// For IE

	} else if (objectsKeyDownEvent.which){

			keynum = objectsKeyDownEvent.which;		// For Netscape, FF, ...
	}

	//keychar = String.fromCharCode(keynum);

	isInt = /^(8|9|13|20|35|36|37|38|39|40|46|48|49|50|51|52|53|54|55|56|57|96|97|98|99|100|101|102|103|104|105|144)+$/.test(keynum);

	isXorY = /^(88|89)+$/.test(keynum);

	return (isInt && !isXorY ? true : false);

}


/**
 * isAlpha
 *
 * Gets called onkeydown
 *
 * @param objectsKeyDownEvent	event fired from <input> tag
 *
 * Example of how to trigger : <input name="inputname" value="" class="cssstyle" size="15" maxlength="15" onkeyup="this.value = this.value.toUpperCase();" onkeydown="return isAlpha(event)" />
 */
function isAlpha( objectsKeyDownEvent ) {

	var keynum;		// keystroke number code
	var keychar;	// keystroke string value
	var isSpecial;	// boolean
	var isAlpha;	// boolean
	var isNumPad;	// bollean

	if (window.event)
	{
			keynum = objectsKeyDownEvent.keyCode;	// For IE

	} else if (objectsKeyDownEvent.which){

			keynum = objectsKeyDownEvent.which;		// For Netscape, FF, ...
	}

	keychar = String.fromCharCode(keynum);

	isNumPad = /^(96|97|98|99|100|101|102|103|104|105)+$/.test(keynum);
	isSpecial = /^(8|9|13|20|32|35|36|37|38|39|40|46|109|144|189|190|191|222)+$/.test(keynum);
	isAlpha = /^[a-zA-Z]+$/.test(keychar);

	return ((isAlpha || isSpecial) && !isNumPad ? true : false);

}


/**
 * isAlphaNumeric
 *
 * Gets called onkeydown
 *
 * @param objectsKeyDownEvent	event fired from <input> tag
 *
 * Example of how to trigger : <input name="inputname" value="" class="cssstyle" size="15" maxlength="15" onkeyup="this.value = this.value.toUpperCase();" onkeydown="return isAlpha(event)" />
 */
function isAlphaNumeric( objectsKeyDownEvent ) {

	return (( !isAlpha( objectsKeyDownEvent ) && !isInteger( objectsKeyDownEvent ) ) ? false : true);

}

/*********************************** onChange events ***********************************/

/**
 * maxQuantity
 *
 * Gets called onchange event
 *
 * @param prodQtyObj	element Object <input> tag
 *
 * Example of how to trigger : <input type="text" name="Quantity" value="0" maxlength="3" size="2" onchange="maxQuantity(this);" />
 */
function maxQuantity( prodQtyObj ) {

	var prodQty = prodQtyObj.value;

	if (prodQty >= 200) {

		alert("Please enter a quantity less than 200");

		prodQtyObj.value = '0';
		prodQtyObj.focus();

	}
}

/*********************************** onSubmit events ***********************************/

/**
 * alphanumeric
 *
 * Gets called onchange event
 *
 * @param alphane	Object value
 *
 * Example of how to trigger :	<form name="Example" onChange="return alphanumeric(Example.UserInput.value)">
 *								<input name=UserInput type=text>
 *								<input type=submit value=validate>
 *  							</form>
 */
function alphanumeric(alphane)
{
	var numaric = alphane;
	for(var j=0; j<numaric.length; j++)
		{
		  var alphaa = numaric.charAt(j);
		  var hh = alphaa.charCodeAt(0);
		  if((hh > 47 && hh<58) || (hh > 64 && hh<91) || (hh > 96 && hh<123))
		  {
		  }
		else	{
			 return false;
		  }
		}
 return true;
}
