function CharacterRestrictor(event) {

	this.event = event;

	//The unicode or the ASCII code for characters
	this.unicode = event.charCode ? event.charCode : event.keyCode;

	//Restricts only numbers to be entered in the given input field
	this.numericOnlyKeypress = function() {
		return this.isControlChar() || this.isNumeric();
	}

	//Lets a user enter only valid product name values [DKC97 / RX677-89xyz]
	this.validProductNameOnlyKeypressWithCallback = function(action, formId, callbackFunction) {
		var validCharacterForProductName = this.isControlChar() || this.isNumeric() || this.isAlplaLowerCase() ||
																			 this.isAlplaUpperCase() || this.isForwardSlash() || this.isDash() ||
																			 this.isSpace() || this.isForwardArrow() || this.isBackArrow();
		if (!validCharacterForProductName) {
			return false;	//Disable key press
		}
		return callbackFunction(event, action, formId);
	}

	//Determines whether unicode is numeric
	this.isNumeric = function() {
		return this.unicode >= 48 && this.unicode <= 57;
	}

	//Determines whether unicode is a control char
	this.isControlChar = function() {
		return this.unicode <= 26;
	}

	//Determines whether unicode is an alphabet in lower case [a-z]
	this.isAlplaLowerCase = function() {
		return this.unicode >= 97 && this.unicode <= 122;
	}

	//Determines whether unicode is an alphabet in upper case [A-Z]
	this.isAlplaUpperCase = function() {
		return this.unicode >= 65 && this.unicode <= 90;
	}

	//Determines whether unicode is a Fwd Slash "/"
	this.isForwardSlash = function() {
		return this.unicode == 47;
	}

	//Determines whether unicode is a Fwd dash "-"
	this.isDash = function() {
		return this.unicode == 45;
	}

	//Determines whether unicode is a space " "
	this.isSpace = function() {
		return this.unicode == 32;
	}

	//Determines whether unicode is a fwd arrow  "->"
	this.isForwardArrow = function() {
		return this.unicode == 39;
	}

	//Determines whether unicode is a back arrow  "<-"
	this.isBackArrow = function() {
		return this.unicode == 37;
	}
}