﻿// JScript File


// JScript File
// Key press component implementation.
// Author: Alex Timoshevsky


Type.registerNamespace('Artnet.OnlineAuction.Web.UI');


Artnet.OnlineAuction.Web.UI.KeyPressEvents = function()
{
	Artnet.OnlineAuction.Web.UI.KeyPressEvents.initializeBase(this);
	
	this._listInputsControlsId = null;
	this._listButtonsControlId = null;
	this._instanceName

	this._pressCallback = null;
}

Artnet.OnlineAuction.Web.UI.KeyPressEvents.prototype =
{
	initialize: function() {
		Artnet.OnlineAuction.Web.UI.KeyPressEvents.callBaseMethod(this, 'initialize');
		this._internalInitialization();
	},

	dispose: function() {
		for (var i = 0; i < this._listInputsControlsId.length; i++) {
			if (($get(this._listInputsControlsId[i]) != "undefined") || ($get(this._listInputsControlsId[i]) != null)) {
				$clearHandlers($get(this._listInputsControlsId[i]));
			}
		}
		Artnet.OnlineAuction.Web.UI.KeyPressEvents.callBaseMethod(this, 'dispose');
	},

	_internalInitialization: function() {
		for (var i = 0; i < this._listInputsControlsId.length; i++) {
			if (($get(this._listInputsControlsId[i]) != "undefined") || ($get(this._listInputsControlsId[i]) != null)) {
				var context = { buttonId: this._listButtonsControlId[i],
					inputId: this._listInputsControlsId[i]
				};
				this._pressCallback = Function.createCallback(this._onEnterPressed, context);
				$addHandler($get(this._listInputsControlsId[i]), "keypress", this._pressCallback);
			}
		}
	},

	_onEnterPressed: function(evt, context) {
		var code = evt.charCode;
		if (code == 13) {
			var btnElement = $get(context.buttonId);
			var inpElement = $get(context.inputId);
			if (btnElement != null) {
				//debugger;
				if (btnElement.dispatchEvent) {
					var clickevent = document.createEvent("MouseEvents")
					clickevent.initEvent("click", true, true)
					btnElement.dispatchEvent(clickevent);
				}
				else {
					btnElement.click();
					return false;
				}
			}
		}
	},

	get_listInputsControlsId: function() {
		return this._listInputsControlsId;
	},

	set_listInputsControlsId: function(value) {
		this._listInputsControlsId = value;
	},

	get_listButtonsControlId: function() {
		return this._listButtonsControlId;
	},

	set_listButtonsControlId: function(value) {
		this._listButtonsControlId = value;
	}
}

Artnet.OnlineAuction.Web.UI.KeyPressEvents.registerClass(
	'Artnet.OnlineAuction.Web.UI.KeyPressEvents', Sys.Component);


if(typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();

