﻿Type.registerNamespace("Trinet.UI");Trinet.UI.TextBoxPrompt=function(element){Trinet.UI.TextBoxPrompt.initializeBase(this,[element]);this._defaultText="";this._defaultColor="";this._textColor="";};Trinet.UI.TextBoxPrompt.prototype={initialize:function(){Trinet.UI.TextBoxPrompt.callBaseMethod(this,"initialize");var element=this.get_element();if(element){element.Trinet_DefaultText=this._defaultText;if(Trinet.Core.HasDefaultFocus(element)){this._onFocusElement(element);}else{this._onBlurElement(element);}$addHandlers(element,{"focus":this._onFocus,"blur":this._onBlur,"propertychange":this._onPropertyChange},this);Trinet.UI.TextBoxPrompt._registerInstance(this);}},dispose:function(){var element=this.get_element();if(element){$clearHandlers(this.get_element());}Trinet.UI.TextBoxPrompt.callBaseMethod(this,"dispose");},get_defaultText:function(){return this._defaultText;},set_defaultText:function(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e){throw e;}if(value!=this._defaultText){this._defaultText=value;this.raisePropertyChanged("defaultText");}},get_defaultColor:function(){return this._defaultColor;},set_defaultColor:function(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e){throw e;}if(value!=this._defaultColor){this._defaultColor=value;this.raisePropertyChanged("defaultColor");}},get_textColor:function(){return this._textColor;},set_textColor:function(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e){throw e;}if(value!=this._textColor){this._textColor=value;this.raisePropertyChanged("textColor");}},get_controlValue:function(){var element=this.get_element();if(!element){return null;}if(element.value==this._defaultText){return "";}return element.value;},set_controlValue:function(value){var element=this.get_element();if(element){element.value=value||"";this._onBlurElement(element);}},get_validationValue:function(){return this.get_controlValue();},_onFocus:function(){var element=this.get_element();if(element){this._onFocusElement(element);}},_onFocusElement:function(element){if(element.value==this._defaultText){element.value="";}if(0!==this._textColor.length||0!==this._defaultColor.length){element.style.color=this._textColor;}if("undefined"==typeof(element.tagName)||"TEXTAREA"!=element.tagName.toUpperCase()){element.select();}},_onBlur:function(){var element=this.get_element();if(element){this._onBlurElement(element);}},_onBlurElement:function(element){if(0===element.value.length){element.value=this._defaultText;}if(0!==this._defaultColor.length&&element.value==this._defaultText){element.style.color=this._defaultColor;}else if(0!==this._textColor.length||0!==this._defaultColor.length){element.style.color=this._textColor;}},_onPropertyChange:function(evt){if(evt&&"string"==typeof(evt.propertyName)&&"VALUE"==evt.propertyName.toUpperCase()){var element=this.get_element();if(element){if(0===element.value.length||this._defaultText==element.value){if(0!==this._defaultColor.length){element.style.color=this._defaultColor;}}else{if(0!==this._textColor.length||0!==this._defaultColor.length){element.style.color=this._textColor;}}}}},showPost:function(){var element=this.get_element();if(element){if(element.value==this._defaultText){element.value="";}}}};Trinet.UI.TextBoxPrompt._registerInstance=function(value){var e=Function._validateParams(arguments,[{name:"value",type:Trinet.UI.TextBoxPrompt}]);if(e){throw e;}var elementId="";var element=value.get_element();if(null!==element){elementId=element.id;var instances=Trinet.UI.TextBoxPrompt._instances||null;if(null===instances){instances=Trinet.UI.TextBoxPrompt._instances=[];if(Sys.WebForms&&Sys.WebForms.PageRequestManager){var prm=Sys.WebForms.PageRequestManager.getInstance();prm.add_initializeRequest(Trinet.UI.TextBoxPrompt._onSubmit);}}else if(instances[elementId]){throw Error.invalidOperation("Field "+elementId+" already has a TextBoxPrompt attached.");}instances[elementId]=value;if(null!==element.form&&!element.form.__trinet_web_UI_TextBoxPromptSubmit){$addHandler(element.form,"submit",Trinet.UI.TextBoxPrompt._onSubmit);element.form.__trinet_web_UI_TextBoxPromptSubmit=true;}}};Trinet.UI.TextBoxPrompt._onSubmit=function(){var instances=Trinet.UI.TextBoxPrompt._instances||null;if(null!==instances){var value;for(var key in instances){value=instances[key];if(value&&"function"==typeof(value.showPost)){value.showPost();}}}};Trinet.UI.TextBoxPrompt.registerClass("Trinet.UI.TextBoxPrompt",Sys.UI.Control);
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();