﻿Type.registerNamespace("Trinet.UI");Trinet.UI.CapsLockWarning=function(element){Trinet.UI.CapsLockWarning.initializeBase(this,[element]);this._label=null;this._displayTime=2500;this._displayTimer=null;this._timerCallBackHandler=null;};Trinet.UI.CapsLockWarning.prototype={get_labelElement:function(){if(arguments.length!==0){throw Error.parameterCount();}return this._label;},set_labelElement:function(value){var e=Function._validateParams(arguments,[{name:"value",domElement:true,mayBeNull:true}]);if(e){throw e;}this._label=value;},get_labelElementId:function(){if(arguments.length!==0){throw Error.parameterCount();}if(null===this._label){return "";}return this._label.id;},set_labelElementId:function(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e){throw e;}if(null===value||0===value.length){if(null!==this._label){this._label=null;this.raisePropertyChanged("labelElementId");}}else if(null===this._label||value!=this._label.id){this._label=$get(value);this.raisePropertyChanged("labelElementId");}},get_displayTime:function(){return this._displayTime;},set_displayTime:function(value){var e=Function._validateParams(arguments,[{name:"value",type:Number}]);if(e){throw e;}value=parseInt(value,10);if(isNaN(value)||0>value){value=2500;}if(value!=this._displayTime){this._displayTime=value;this.raisePropertyChanged("displayTime");}},initialize:function(){Trinet.UI.CapsLockWarning.callBaseMethod(this,"initialize");var element=this.get_element();if(element){this._timerCallBackHandler=Function.createDelegate(this,this._timerCallBack);$addHandlers(element,{"keypress":this._keyPress,"blur":this.hideWarning},this);Trinet.UI.CapsLockWarning._registerInstance(this);}},dispose:function(){if(this._displayTimer){window.clearTimeout(this._displayTimer);this._displayTimer=null;}var element=this.get_element();if(element){$clearHandlers(element);delete this._timerCallBackHandler;delete Trinet.UI.CapsLockWarning._instances[element.id];}Trinet.UI.CapsLockWarning.callBaseMethod(this,"dispose");},_timerCallBack:function(){this.hideWarning();},_keyPress:function(evt){var e=Function._validateParams(arguments,[{name:"evt",type:Sys.UI.DomEvent}]);if(!e){var capsLock=Trinet.UI.CapsLockWarning.isCapsLockOn(evt);if(true===capsLock){this.showWarning();}else if(false===capsLock){Trinet.UI.CapsLockWarning.hideAllWarnings();}}},showWarning:function(){if(this._displayTimer){window.clearTimeout(this._displayTimer);this._displayTimer=null;}var element=this.get_labelElement();if(element){Trinet.UI.CapsLockWarning.hideAllWarnings(element.id);Sys.UI.DomElement.setVisible(element,true);var displayTime=this.get_displayTime();if(0!==displayTime){this._displayTimer=window.setTimeout(this._timerCallBackHandler,displayTime);}}},hideWarning:function(){if(this._displayTimer){window.clearTimeout(this._displayTimer);this._displayTimer=null;}var element=this.get_labelElement();if(element){Sys.UI.DomElement.setVisible(element,false);}}};Trinet.UI.CapsLockWarning._registerInstance=function(value){var e=Function._validateParams(arguments,[{name:"value",type:Trinet.UI.CapsLockWarning}]);if(e){throw e;}var element=value.get_labelElement();if(null!==element){var instances=Trinet.UI.CapsLockWarning._instances||null;if(null===instances){instances=Trinet.UI.CapsLockWarning._instances=[];}else if(instances[element.id]){throw Error.invalidOperation("Field "+element.id+" already has a CapsLockWarning attached.");}instances[element.id]=value;}};Trinet.UI.CapsLockWarning.hideAllWarnings=function(except){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true,optional:true}]);if(e){throw e;}var instances=Trinet.UI.CapsLockWarning._instances||null;if(null!==instances){if("string"!==typeof(except)||0===except.length){except="";}for(var key in instances){if(key!==except){instances[key].hideWarning();}}}};Trinet.UI.CapsLockWarning.isCapsLockOn=function(evt){var e=Function._validateParams(arguments,[{name:"evt",type:Sys.UI.DomEvent}]);if(e){throw e;}var result=null;var charCode=evt.charCode;if(charCode){if(65<=charCode&&charCode<=90){result=!evt.shiftKey;}else if(97<=charCode&&charCode<=112){result=!!evt.shiftKey;}}return result;};Trinet.UI.CapsLockWarning.registerClass("Trinet.UI.CapsLockWarning",Sys.UI.Behavior);
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();