﻿Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.MaskedEditBehavior = function(element) 
{
AjaxControlToolkit.MaskedEditBehavior.initializeBase(this, [element]);this._Mask = "";this._MaskType = AjaxControlToolkit.MaskedEditType.None;this._Filtered = "";this._PromptChar = "_";this._InputDirection = AjaxControlToolkit.MaskedEditInputDirections.LeftToRight;this._MessageValidatorTip = true;this._AutoComplete = true;this._AutoCompleteValue = "";this._ClearTextOnInvalid = false;this._ClearMaskOnLostfocus = true;this._AcceptAmPm = AjaxControlToolkit.MaskedEditShowSymbol.None;this._AcceptNegative = AjaxControlToolkit.MaskedEditShowSymbol.None;this._DisplayMoney = AjaxControlToolkit.MaskedEditShowSymbol.None;this._OnFocusCssClass = "MaskedEditFocus";this._OnInvalidCssClass = "MaskedEditError";this._OnFocusCssNegative = "MaskedEditFocusNegative";this._OnBlurCssNegative = "MaskedEditBlurNegative";this._CultureName = "en-US";this._CultureDatePlaceholder = "/";this._CultureTimePlaceholder = ":";this._CultureDecimalPlaceholder = ".";this._CultureThousandsPlaceholder = ",";this._CultureDateFormat = "MDY";this._CultureCurrencySymbolPlaceholder = "$";this._CultureAMPMPlaceholder = "AM;PM";this._Century = 1900;this._CharsEditMask = "9L$CAN?";this._CharsSpecialMask = "/:.,";this._MaskConv = "";this._DirectSelText = "";this._initialvalue = "";this._LogicSymbol = "";this._LogicTextMask = "";this._LogicMask = "";this._LogicMaskConv = "";this._LogicPrompt = String.fromCharCode(1);this._LogicEscape = String.fromCharCode(2);this._LogicFirstPos = -1;this._LogicLastPos = -1;this._QtdValidInput = 0;this._InLostfocus = false;this._ExternalMessageError = "";this._CurrentMessageError = "";this._charLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";this._charNumbers = "0123456789";this._charEscape = "\\";this._DelimitStartDup = "{";this._DelimitEndDup = "}";this._focusHandler = null;this._keypressdown = null;this._keypressHandler = null;this._blurHandler = null;} 
AjaxControlToolkit.MaskedEditBehavior.prototype = { 
initialize : function() 
{
var e = this.get_element();this._InLostfocus = true;AjaxControlToolkit.MaskedEditBehavior.callBaseMethod(this, 'initialize');var hasInitialFocus = false;var clientState = this.get_ClientState();if (clientState != null && clientState != "") 
{
hasInitialFocus = (clientState == "Focused");this.set_ClientState(null);}
if (document.activeElement)
{
if (e.id == document.activeElement.id)
{
hasInitialFocus = true;}
}
this._focusHandler = Function.createDelegate(this, this._onFocus);$addHandler(e, "focus", this._focusHandler);this._keypressdown = Function.createDelegate(this, this._onKeyPressdown);$addHandler(e, "keydown", this._keypressdown);this._keypressHandler = Function.createDelegate(this, this._onKeyPress);$addHandler(e, "keypress", this._keypressHandler);this._blurHandler = Function.createDelegate(this, this._onBlur);$addHandler(e, "blur", this._blurHandler);if (hasInitialFocus) 
{
this._onFocus();}
else if (e.value != "")
{
this._InitValue();if (this._ClearMaskOnLostfocus)
{
e.value = (this._getClearMask(e.value));}
}
}
, _InitValue : function()
{
var masktxt = this._createMask();var Inipos = this._LogicFirstPos;var initValue = "";var e = this.get_element();this._LogicSymbol = "";if (e.value != "" && e.value != masktxt)
{
initValue = e.value;}
e.value = (masktxt);if (initValue != "")
{
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Date)
{
initValue = this.ConvFmtDate(initValue);}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
this.loadValue(initValue,this._LogicFirstPos);} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
this.loadValue(initValue,this._LogicLastPos);}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
if (this._InLostfocus && this._LogicSymbol == "-" && this._OnBlurCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnBlurCssNegative);}
}
}
return Inipos;}
, ConvFmtDate : function(input)
{
var e = this.get_element();var maskvalid = this._MaskConv.substring(this._LogicFirstPos,this._LogicFirstPos+this._LogicLastPos+1);var m_arrDate = input.split(this._CultureDatePlaceholder);var m_mask = maskvalid.split(this._CultureDatePlaceholder);if (parseInt(m_arrDate.length,10) != 3)
{
return "";}
var D = m_arrDate[this._CultureDateFormat.indexOf("D")];if (D.length < m_mask[this._CultureDateFormat.indexOf("D")].length)
{
while (D.length < m_mask[this._CultureDateFormat.indexOf("D")].length)
{
D = "0" + D;}
}
m_arrDate[this._CultureDateFormat.indexOf("D")] = D;var M = m_arrDate[this._CultureDateFormat.indexOf("M")];if (M.length < m_mask[this._CultureDateFormat.indexOf("M")].length)
{
while (M.length < m_mask[this._CultureDateFormat.indexOf("M")].length)
{
M = "0" + M;}
}
m_arrDate[this._CultureDateFormat.indexOf("M")] = M;var Y = m_arrDate[this._CultureDateFormat.indexOf("Y")];if (m_mask[this._CultureDateFormat.indexOf("Y")].length == 4)
{
Y = this._AdjustElementDateY(Y,this._Century.toString());}
else
{
Y = this._AdjustElementDateY(Y,this._Century.toString().substring(2));}
m_arrDate[this._CultureDateFormat.indexOf("Y")] = Y;return m_arrDate[0] + this._CultureDatePlaceholder + m_arrDate[1] + this._CultureDatePlaceholder + m_arrDate[2];}
, AddCssClassMaskedEdit : function(CssClass)
{
var e = this.get_element();Sys.UI.DomElement.removeCssClass(e,this._OnBlurCssNegative);Sys.UI.DomElement.removeCssClass(e,this._OnFocusCssClass);Sys.UI.DomElement.removeCssClass(e,this._OnFocusCssNegative);Sys.UI.DomElement.removeCssClass(e,this._OnInvalidCssClass);if (CssClass != "")
{
Sys.UI.DomElement.addCssClass(e,CssClass);}
}
, loadValue : function(initValue,logicPosition)
{
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
var oldfocus = this._InLostfocus;var i = 0;this._InLostfocus = false;if (this._ClearMaskOnLostfocus == false)
{
logicPosition = 0;}
for (i = 0 ;i < parseInt(initValue.length,10) ;i++) 
{
var c = initValue.substring(i,i+1);if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(c.toUpperCase()) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(c);}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(c) != -1)
{
this.InsertSignal(c);}
if (this._processKey(logicPosition,c)) 
{
this._insertContent(c,logicPosition);if (this._ClearMaskOnLostfocus == false)
{
logicPosition = logicPosition+1;}
else
{
logicPosition = this._getNextPosition(logicPosition+1);}
}
else
{
if (this._ClearMaskOnLostfocus == false)
{
logicPosition = logicPosition+1;}
}
}
this._InLostfocus = oldfocus;}
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
var oldfocus = this._InLostfocus;this._InLostfocus = false;if (this._ClearMaskOnLostfocus == false)
{
logicPosition = parseInt(this.get_element().value.length,10)-1;}
for (i = parseInt(initValue.length,10) ;i > 0 ;i--) 
{
var c = initValue.substring(i-1,i);if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(c.toUpperCase()) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(c);}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(c) != -1)
{
this.InsertSignal(c);}
if (this._processKey(logicPosition,c)) 
{
this._insertContent(c,logicPosition);if (this._ClearMaskOnLostfocus == false)
{
logicPosition = logicPosition-1;}
else
{
logicPosition = this._getPreviousPosition(logicPosition-1);}
}
else
{
if (this._ClearMaskOnLostfocus == false)
{
logicPosition = logicPosition-1;}
}
} 
this._InLostfocus = oldfocus;}
}
, dispose : function() 
{
var e = this.get_element();if (this._focusHandler) 
{
$removeHandler(e, "focus", this._focusHandler);this._focusHandler = null;}
if (this._blurHandler) 
{
$removeHandler(e, "blur", this._blurHandler);this._blurHandler = null;}
if (this._keypressdown) 
{
$removeHandler(e, "keydown", this._keypressdown);this._keypressdown = null;}
if (this._keypressHandler) 
{
$removeHandler(e, "keypress", this._keypressHandler);this._keypressHandler = null;}
AjaxControlToolkit.MaskedEditBehavior.callBaseMethod(this, 'dispose');}
, _CheckArgsEvents : function(args)
{
var ret = null;if (typeof(args) != "undefined" && args !=null && typeof(args.rawEvent) != "undefined")
{
ret = args.rawEvent;}
return ret;}
, _onFocus : function(args) 
{
var evt = this._CheckArgsEvents(args);var e = this.get_element();this._InLostfocus = false;if (this._OnFocusCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssClass);}
var Inipos = this._InitValue();var ClearText = this._getClearMask(e.value);this._initialvalue = ClearText;var hastip = false;if (this._MessageValidatorTip && ClearText == "")
{
hastip = true;}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && this._CultureAMPMPlaceholder != "" && ClearText == "")
{
if (this._AcceptAmPm)
{
this.InsertAMPM("A");}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && ClearText != "")
{
if (this._LogicSymbol == "-" && this._OnFocusCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssNegative);}
}
this.setSelectionRange(Inipos,Inipos);this.ShowTooltipMessage(false);if (hastip)
{
this.ShowTooltipMessage(true);}
}
,ShowTooltipMessage : function(Visible)
{
if (typeof(Page_Validators) == "undefined")
{
return;}
var msg = "";if (!Visible)
{
msg = this._CurrentMessageError;this._CurrentMessageError = "";}
var i = 0
var ctrval = null;for (i = 0;i < Page_Validators.length;i++) 
{
ctrval = Page_Validators[i];if (ctrval.getAttribute("TargetValidator") == this.get_element().id && ctrval.getAttribute("IsMaskedEdit") == "true")
{
if (!Visible)
{
ctrval.innerHTML = msg;if (typeof(ctrval.display) == "string") 
{ 
if (ctrval.display == "None") {
return;}
if (ctrval.display == "Dynamic") {
ctrval.style.display = ctrval.isvalid ? "none" : "inline";return;}
}
ctrval.style.visibility = ctrval.isvalid ? "hidden" : "visible";return;}
this._CurrentMessageError = ctrval.innerHTML;ctrval.innerHTML = ctrval.getAttribute("TooltipMessage");if (typeof(ctrval.display) == "string") 
{ 
if (ctrval.display == "None") {
return;}
if (ctrval.display == "Dynamic") {
ctrval.style.display = "inline";return;}
}
ctrval.style.visibility = "visible";return;}
} 
}
, _AdjustElementDateY : function(value,ValueDefault)
{
var emp = true;for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) != this._PromptChar)
{
emp = false;}
}
if (emp)
{
return ValueDefault;}
for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) == this._PromptChar)
{
value = value.substring(0,i) + "0" + value.substring(i+1);}
}
if (parseInt(value,10) == 0)
{
if (ValueDefault.length == 2)
{
value = this._Century.toString().substring(2);}
else
{
value = this._Century.toString();}
}
return value;}
, _AdjustElementDateDM : function(value,ValueDefault)
{
var emp = true;for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) != this._PromptChar)
{
emp = false;}
}
if (emp)
{
return ValueDefault;}
for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) == this._PromptChar)
{
value = value.substring(0,i) + "0" + value.substring(i+1);}
}
if (parseInt(value,10) == 0)
{
value = "01";}
return value;}
, _AdjustElementTime : function(value,ValueDefault)
{
var emp = true;for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) != this._PromptChar)
{
emp = false;}
}
if (emp)
{
return ValueDefault;}
for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) == this._PromptChar)
{
value = value.substring(0,i) + "0" + value.substring(i+1);}
}
return value;}
, _onBlur : function(args) 
{
var evt = this._CheckArgsEvents(args);this._InLostfocus = true;ValueText = this.get_element().value;ClearText = this._getClearMask(ValueText);if (ClearText == "" && this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._LogicSymbol == "-")
{
this.InsertSignal("+");}
if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Time)
{
var CurDate = new Date();var Hcur = CurDate.getHours().toString();if (Hcur.length < 2)
{
Hcur = "0" + Hcur;}
if (this._AutoCompleteValue != "" )
{
Hcur = this._AutoCompleteValue.substring(0,2);}
var Symb = ""
if (this._CultureAMPMPlaceholder != "")
{
var m_arrtm = this._CultureAMPMPlaceholder.split(";");var Symb = m_arrtm[0].substring(0,1);if (Hcur > 12)
{
Hcur = (parseInt(Hcur,10) - 12).toString();if (Hcur.length < 2)
{
Hcur = "0" + Hcur;}
Symb = m_arrtm[1].substring(0,1);}
if (!this._AcceptAmPm)
{
Symb = "";}
}
var Mcur = CurDate.getMinutes().toString();if (Mcur.length < 2)
{
Mcur = "0" + Mcur;}
if (this._AutoCompleteValue != "" )
{
Mcur = this._AutoCompleteValue.substring(3,2);}
var Scur = CurDate.getSeconds().toString();if (Scur.length < 2)
{
Scur = "0" + Scur;}
var maskvalid = this._MaskConv.substring(this._LogicFirstPos,this._LogicFirstPos+this._LogicLastPos+1);var PH = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+2);PH = this._AdjustElementTime(PH,Hcur);var PM = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+5);PM = this._AdjustElementTime(PM,Mcur);if (maskvalid == "99" + this._CultureTimePlaceholder + "99" + this._CultureTimePlaceholder + "99")
{
if (this._AutoCompleteValue != "" )
{
Scur = this._AutoCompleteValue.substring(5);}
PS = ValueText.substring(this._LogicFirstPos+6,this._LogicLastPos+1);PS = this._AdjustElementTime(PS,Scur);ValueText = ValueText.substring(0,this._LogicFirstPos) + PH + this._CultureTimePlaceholder + PM + this._CultureTimePlaceholder + PS + ValueText.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + PH + this._CultureTimePlaceholder + PM + this._CultureTimePlaceholder + PS + this._LogicTextMask.substring(this._LogicLastPos+1);}
else
{
ValueText = ValueText.substring(0,this._LogicFirstPos) + PH + this._CultureTimePlaceholder + PM + ValueText.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + PH + this._CultureTimePlaceholder + PM + this._LogicTextMask.substring(this._LogicLastPos+1);}
this.get_element().value = (ValueText);ClearText = this._getClearMask(ValueText);}
else if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
for (i = 0 ;i < parseInt(this._LogicTextMask.length,10) ;i++) 
{
if (this._LogicTextMask.substring(i,i+1) == this._LogicPrompt)
{
this._LogicTextMask = this._LogicTextMask.substring(0,i) + "0" + this._LogicTextMask.substring(i+1);ValueText = ValueText.substring(0,i) + "0" + ValueText.substring(i+1);}
}
var okdgt = false;for (i = 0 ;i < parseInt(this._LogicTextMask.length,10) ;i++) 
{
if (!okdgt)
{
if (this._LogicMask.substring(i,i+1) == this._LogicPrompt && this._LogicTextMask.substring(i,i+1) == "0")
{
this._LogicTextMask = this._LogicTextMask.substring(0,i) + this._LogicPrompt + this._LogicTextMask.substring(i+1);ValueText = ValueText.substring(0,i) + this._PromptChar + ValueText.substring(i+1);}
else if (this._LogicMask.substring(i,i+1) == this._LogicPrompt && "123456789".indexOf(this._LogicTextMask.substring(i,i+1)) != -1)
{
okdgt = true;}
else if (this._LogicMask.substring(i,i+1) != this._LogicPrompt && this._LogicTextMask.substring(i,i+1) == this._CultureDecimalPlaceholder)
{
this._LogicTextMask = this._LogicTextMask.substring(0,i-1) + "0" + this._CultureDecimalPlaceholder + this._LogicTextMask.substring(i+1);ValueText = ValueText.substring(0,i-1) + "0" + this._CultureDecimalPlaceholder + ValueText.substring(i+1);okdgt = true;}
}
}
this.get_element().value = (ValueText);ClearText = this._getClearMask(ValueText);}
else if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Date)
{
var maskvalid = this._MaskConv.substring(this._LogicFirstPos,this._LogicFirstPos+this._LogicLastPos+1);var Y4 = (maskvalid.indexOf("9999") != -1)?true:false;var CurDate = new Date();var Dcur = (CurDate.getUTCDate()).toString();if (Dcur.length < 2)
{
Dcur = "0" + Dcur;}
var Mcur = (CurDate.getUTCMonth()+1).toString();if (Mcur.length < 2)
{
Mcur = "0" + Mcur;}
var Ycur = CurDate.getUTCFullYear().toString();var Ycur2 = Ycur.substring(2);if (this._CultureDateFormat == "DMY" || this._CultureDateFormat == "MDY")
{
var P1 = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+2);var P2 = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+5);if (this._AutoCompleteValue != "" && Y4)
{
Ycur = this._AutoCompleteValue.substring(6);}
else if (this._AutoCompleteValue != "" && !Y4)
{
Ycur2 = this._AutoCompleteValue.substring(6);}
if ( this._CultureDateFormat == "DMY")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(0,2);Mcur = this._AutoCompleteValue.substring(3,5);}
P1 = this._AdjustElementDateDM(P1,Dcur);P2 = this._AdjustElementDateDM(P2,Mcur);}
if (this._CultureDateFormat == "MDY")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(3,5);Mcur = this._AutoCompleteValue.substring(0,2);}
P1 = this._AdjustElementDateDM(P1,Mcur);P2 = this._AdjustElementDateDM(P2,Dcur);}
var Y = ValueText.substring(this._LogicFirstPos+6,this._LogicLastPos+1);if (Y4)
{
Y = this._AdjustElementDateY(Y,Ycur);}
else
{
Y = this._AdjustElementDateY(Y,Ycur2);}
ValueText = ValueText.substring(0,this._LogicFirstPos) + P1 + this._CultureDatePlaceholder + P2 + this._CultureDatePlaceholder + Y + ValueText.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + P1 + this._CultureDatePlaceholder + P2 + this._CultureDatePlaceholder + Y + this._LogicTextMask.substring(this._LogicLastPos+1);}
else if (this._CultureDateFormat == "DYM" || this._CultureDateFormat == "MYD")
{
var P1 = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+2)
if ( this._CultureDateFormat == "DYM")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(0,2);}
P1 = this._AdjustElementDateDM(P1,Dcur);}
if ( this._CultureDateFormat == "MYD")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(0,2);}
P1 = this._AdjustElementDateDM(P1,Mcur)
}
if (this._AutoCompleteValue != "" && Y4)
{
Ycur = this._AutoCompleteValue.substring(3,7);}
else if (this._AutoCompleteValue != "" && !Y4)
{
Ycur2 = this._AutoCompleteValue.substring(3,5);}
var Y = null;var P2 = null;if (Y4)
{
P2 = ValueText.substring(this._LogicFirstPos+8,this._LogicLastPos+1);if ( this._CultureDateFormat == "DYM")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(8);}
P2 = this._AdjustElementDateDM(P2,Mcur);}
if ( this._CultureDateFormat == "MYD")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(8);}
P2 = this._AdjustElementDateDM(P2,Dcur);}
Y = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+7);Y = this._AdjustElementDateY(Y,Ycur);}
else
{
P2 = ValueText.substring(this._LogicFirstPos+6,this._LogicLastPos+1);if ( this._CultureDateFormat == "DYM")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(6);}
P2 = this._AdjustElementDateDM(P2,Mcur);}
if ( this._CultureDateFormat == "MYD")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(6);}
P2 = this._AdjustElementDateDM(P2,Dcur);}
Y = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+5);Y = this._AdjustElementDateY(Y,Ycur2);}
ValueText = ValueText.substring(0,this._LogicFirstPos) + P1 + this._CultureDatePlaceholder + Y + this._CultureDatePlaceholder + P2 + ValueText.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + P1 + this._CultureDatePlaceholder + Y + this._CultureDatePlaceholder + P2 + this._LogicTextMask.substring(this._LogicLastPos+1);}
else if (this._CultureDateFormat == "YMD" || this._CultureDateFormat == "YDM")
{
var Y = null;var P1 = null;var P2 = null;if (this._AutoCompleteValue != "" && Y4)
{
Ycur = this._AutoCompleteValue.substring(0,4);}
else if (this._AutoCompleteValue != "" && !Y4)
{
Ycur2 = this._AutoCompleteValue.substring(0,2);}
if (Y4)
{
Y = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+4);Y = this._AdjustElementDateY(Y,Ycur);P1 = ValueText.substring(this._LogicFirstPos+5,this._LogicFirstPos+7);if ( this._CultureDateFormat == "YMD")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(5,7);}
P1 = this._AdjustElementDateDM(P1,Mcur);}
if ( this._CultureDateFormat == "YDM")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(5,7);}
P1 = this._AdjustElementDateDM(P1,Dcur);}
P2 = ValueText.substring(this._LogicFirstPos+8,this._LogicLastPos+1);if ( this._CultureDateFormat == "YMD")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(8);}
P2 = this._AdjustElementDateDM(P2,Mcur);}
if ( this._CultureDateFormat == "YDM")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(8);}
P2 = this._AdjustElementDateDM(P2,Dcur);}
}
else
{
Y = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+2);Y = this._AdjustElementDateY(Y,Ycur2);P1 = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+5);if ( this._CultureDateFormat == "YMD")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(3,5);}
P1 = this._AdjustElementDateDM(P1,Mcur);}
if ( this._CultureDateFormat == "YDM")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(3,5);}
P1 = this._AdjustElementDateDM(P1,Dcur);}
P2 = ValueText.substring(this._LogicFirstPos+6,this._LogicLastPos+1);if ( this._CultureDateFormat == "YMD")
{
if (this._AutoCompleteValue != "")
{
Mcur = this._AutoCompleteValue.substring(6);}
P2 = this._AdjustElementDateDM(P2,Mcur);}
if ( this._CultureDateFormat == "YDM")
{
if (this._AutoCompleteValue != "")
{
Dcur = this._AutoCompleteValue.substring(6);}
P2 = this._AdjustElementDateDM(P2,Dcur);}
}
ValueText = ValueText.substring(0,this._LogicFirstPos) + Y + this._CultureDatePlaceholder + P1 + this._CultureDatePlaceholder + P2 + ValueText.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + Y + this._CultureDatePlaceholder + P1 + this._CultureDatePlaceholder + P2 + this._LogicTextMask.substring(this._LogicLastPos+1);}
this.get_element().value = (ValueText);ClearText = this._getClearMask(ValueText);}
if (this._ClearMaskOnLostfocus)
{
this.get_element().value = (ClearText);}
ValueText = ClearText;this.AddCssClassMaskedEdit("");if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._LogicSymbol == "-" && this._OnBlurCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnBlurCssNegative);}
this.ShowTooltipMessage(false);var IsValid = this._CaptureValidatorsControl();if (!IsValid)
{
if (this._OnInvalidCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnInvalidCssClass);}
if (this._ClearTextOnInvalid)
{
this.get_element().value = (this._createMask());}
}
else
{
if (evt != null && typeof(this.get_element().onchange) != "undefined" && this.get_element().onchange != null && !this.get_element().readOnly)
{
if (this._initialvalue != this.get_element().value)
{
this.get_element().onchange(evt);}
}
}
}
,_CaptureValidatorsControl : function()
{
var ret = true;this._ExternalMessageError = "";if (typeof(Page_Validators) != "undefined")
{
var i = 0
var ctrval = null;var msg = "";for (i = 0;i < Page_Validators.length;i++) 
{
ctrval = Page_Validators[i];if (typeof(ctrval.enabled) == "undefined" || ctrval.enabled != false) 
{
if (ctrval.getAttribute("TargetValidator") == this.get_element().id)
{
if (typeof(ctrval.evaluationfunction) == "function") 
{
var crtret = ctrval.evaluationfunction(ctrval);if (!crtret)
{
ret = false;if (typeof(ctrval.errormessage) == "string")
{
if (msg != "")
{
msg += ", ";}
msg += ctrval.errormessage;}
}
}
else if(typeof(ctrval.getAttribute("evaluationfunction")) == "string") 
{
var crtret;eval("crtret = " + ctrval.getAttribute("evaluationfunction") + "(" + ctrval.id + ")");if (!crtret)
{
ret = false;if (typeof(ctrval.errormessage) == "string")
{
if (msg != "")
{
msg += ", ";}
msg += ctrval.errormessage;}
}
}
}
}
}
}
this._ExternalMessageError = msg;return ret;}
, _SetCancelEvent : function(evt)
{
if (Sys.Browser.agent == Sys.Browser.InternetExplorer) 
{
evt.returnValue = false;}
else
{
if (typeof(evt.returnValue) != "undefined")
{
evt.returnValue = false;}
if (evt.preventDefault)
{
evt.preventDefault();}
}
}
, _onKeyPress : function(args) 
{
var evt = this._CheckArgsEvents(args);if (evt == null)
{
return;}
if (this.get_element().readOnly)
{
this._SetCancelEvent(evt);return;}
var scanCode;var navkey = false;if (Sys.Browser.agent == Sys.Browser.InternetExplorer) 
{
scanCode = evt.keyCode;}
else
{
if (evt.charCode)
{
scanCode = evt.charCode;}
else
{
scanCode = evt.keyCode;}
if (evt.keyIdentifier) 
{
if (evt.ctrlKey || evt.altKey || evt.metaKey) 
{
return;}
if (evt.keyIdentifier.substring(0,2) != "U+") 
{
return;}
if (scanCode == 63272) 
{
scanCode = 46;navkey = true;}
else if (scanCode == 63302) 
{
scanCode = 45;navkey = true;}
else if (scanCode == 63233) 
{
scanCode = 40;navkey = true;}
else if (scanCode == 63235) 
{
scanCode = 39;navkey = true;}
else if (scanCode == 63232) 
{
scanCode = 38;navkey = true;}
else if (scanCode == 63234) 
{
scanCode = 37;navkey = true;}
else if (scanCode == 63273) 
{
scanCode = 36;navkey = true;}
else if (scanCode == 63275) 
{
scanCode = 35;navkey = true;}
else if (scanCode == 63277) 
{
scanCode = 34;navkey = true;}
else if (scanCode == 63276) 
{
scanCode = 33;navkey = true;}
else if (scanCode == 3) 
{
scanCode = 13;navkey = true;}
} 
if (typeof(evt.which) != "undefined" && evt.which !=null)
{
if (evt.which == 0)
{
navkey = true;}
}
if (navkey && scanCode == 13)
{
this._onBlur(evt);if (!this._CaptureValidatorsControl())
{
this._onFocus(evt);}
return;}
if (scanCode == 8)
{
navkey = true;}
if (!this._OnNavigator(scanCode,evt,navkey))
{
return;}
if (this.SpecialNavKey(scanCode,navkey))
{
return;}
}
if (scanCode && scanCode >= 0x20 ) 
{
var c = String.fromCharCode(scanCode);var curpos = -1;if (Sys.Browser.agent == Sys.Browser.InternetExplorer)
{
curpos = this._deleteTextSelection();}
if (curpos == -1)
{
curpos = this._getCurrentPosition();}
if (curpos <= this._LogicFirstPos)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);curpos = this._LogicFirstPos;}
else if (curpos >= this._LogicLastPos+1)
{
this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);curpos = this._LogicLastPos+1;}
var logiccur = curpos;if (curpos == this._LogicFirstPos && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
logiccur = this._getLastEmptyPosition();}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(c.toUpperCase()) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(c);this.setSelectionRange(curpos,curpos);this._SetCancelEvent(evt);return ;}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(c) != -1)
{
this.InsertSignal(c);this.setSelectionRange(curpos,curpos);this._SetCancelEvent(evt);return ;}
else if (this._processKey(logiccur,c)) 
{
if (this._MessageValidatorTip) 
{
this.ShowTooltipMessage(false);}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
this._insertContent(c,curpos);curpos = this._getNextPosition(curpos+1);} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (curpos > this._LogicFirstPos)
{
this._insertContent(c,curpos);curpos = this._getNextPosition(curpos+1);}
else
{
this._insertContentRight(c);curpos = this._LogicFirstPos;}
}
this.setSelectionRange(curpos,curpos);this._SetCancelEvent(evt);return ;}
else
{
if (!this.SpecialNavKey(scanCode,navkey))
{
this._SetCancelEvent(evt);}
return;}
}
}
, InsertAMPM : function(value)
{
var masktext = this.get_element().value;var ASymMask = this._CultureAMPMPlaceholder.split(";");var symb = "";if (ASymMask.length == 2)
{
if (value.toUpperCase() == this.get_CultureFirstLetterAM().toUpperCase())
{
symb = ASymMask[0];}
else if (value.toUpperCase() == this.get_CultureFirstLetterPM().toUpperCase())
{
symb = ASymMask[1];}
this._LogicSymbol = symb;}
masktext = masktext.substring(0,this._LogicLastPos+2) + symb + masktext.substring(this._LogicLastPos+2+symb.length);this.get_element().value = (masktext);}
, InsertSignal : function(value)
{
var masktext = this.get_element().value;if (value == "-" && this._LogicSymbol == "-")
{
value = "+"
}
if (value == "+")
{
value = " ";this._LogicSymbol = "";if (!this._InLostfocus && this._OnFocusCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssClass);}
else if (!this._InLostfocus)
{
this.AddCssClassMaskedEdit("");}
}
else
{
this._LogicSymbol = "-";if (!this._InLostfocus && this._OnFocusCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssNegative);}
}
if (this._AcceptNegative == AjaxControlToolkit.MaskedEditShowSymbol.Left)
{
masktext = masktext.substring(0,this._LogicFirstPos-1) + value + masktext.substring(this._LogicFirstPos);}
else if (this._AcceptNegative == AjaxControlToolkit.MaskedEditShowSymbol.Right)
{
masktext = masktext.substring(0,this._LogicLastPos+1) + value + masktext.substring(this._LogicLastPos+2);}
this.get_element().value = (masktext);}
, SpecialNavKey : function(keyCode,navkey)
{
if (Sys.Browser.agent == Sys.Browser.InternetExplorer)
{
return false;}
return (keyCode >= 33 && keyCode <= 45 && navkey);}
,_OnNavigator : function(scanCode,evt,navkey)
{
if (!navkey)
{
return true;}
var curpos;if (this._processDeleteKey(scanCode))
{
curpos = this._getCurrentPosition();if (curpos <= this._LogicFirstPos && this._InputDirection != AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);}
if (this._MessageValidatorTip) 
{
if (this._getClearMask(this.get_element().value) == "")
{
this.ShowTooltipMessage(true);}
}
this._SetCancelEvent(evt);return false;}
if((evt.ctrlKey || evt.altKey || evt.shiftKey || evt.metaKey))
{
if (scanCode == 39 && evt.ctrlKey)
{
this._DirectSelText = "R";curpos = this._getCurrentPosition();if (curpos >= this._LogicLastPos+1)
{
this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);this._SetCancelEvent(evt);return false;}
return true;}
else if (scanCode == 37 && evt.ctrlKey)
{
this._DirectSelText = "L";curpos = this._getCurrentPosition();if (curpos <= this._LogicFirstPos)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);this._SetCancelEvent(evt);return false;}
return true;}
else if (scanCode == 35 && evt.shiftKey) 
{
this._DirectSelText = "R";curpos = this._getCurrentPosition();this.setSelectionRange(curpos,this._LogicLastPos+1);this._SetCancelEvent(evt);return false;}
else if (scanCode == 36 && evt.shiftKey) 
{
this._DirectSelText = "L";curpos = this._getCurrentPosition();this.setSelectionRange(this._LogicFirstPos,curpos);this._SetCancelEvent(evt);return false;}
else if (scanCode == 35 || scanCode == 34) 
{
this._DirectSelText = "R";this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);this._SetCancelEvent(evt);return false;}
else if (scanCode == 36 || scanCode == 33) 
{
this._DirectSelText = "L";this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);this._SetCancelEvent(evt);return false;}
return true;}
if (scanCode == 35 || scanCode == 34) 
{
this._DirectSelText = "R";this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);this._SetCancelEvent(evt);return false;}
else if (scanCode == 36 || scanCode == 33) 
{
this._DirectSelText = "L";this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);this._SetCancelEvent(evt);return false;}
else if (scanCode == 37)
{
this._DirectSelText = "L";curpos = this._getCurrentPosition();if (curpos <= this._LogicFirstPos)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);this._SetCancelEvent(evt);return false;}
return true;}
else if (scanCode == 38 || scanCode == 40)
{
this._SetCancelEvent(evt);return false;}
else if (scanCode == 39)
{
this._DirectSelText = "R";curpos = this._getCurrentPosition();if (curpos >= this._LogicLastPos+1)
{
this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);this._SetCancelEvent(evt);return false;}
return true;}
return true;}
, _onKeyPressdown : function(args) 
{
var evt = this._CheckArgsEvents(args);if (evt == null)
{
return;}
if (this.get_element().readOnly)
{
this._SetCancelEvent(evt);return ;}
if (evt.keyCode == 13)
{
this._onBlur(evt);if (!this._CaptureValidatorsControl())
{
this._onFocus(evt);}
return;}
if (Sys.Browser.agent != Sys.Browser.InternetExplorer) 
{
if (this._InLostfocus)
{
this._onFocus(evt);}
}
if (Sys.Browser.agent == Sys.Browser.InternetExplorer) {
var scanCode = evt.keyCode;this._OnNavigator(scanCode,evt,true)
}
}
, setSelectionRange : function(selectionStart, selectionEnd) 
{
input = this.get_element();if (input.createTextRange) 
{
var range = input.createTextRange();range.collapse(true);range.moveEnd('character', selectionEnd);range.moveStart('character', selectionStart);range.select();}
else if (input.setSelectionRange) 
{
input.setSelectionRange(selectionStart, selectionEnd);}
}
, _processDeleteKey : function(scanCode)
{
if (scanCode == 46 ) 
{
var curpos = this._deleteTextSelection();if (curpos == -1)
{
curpos = this._getCurrentPosition();if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && curpos <= this._LogicFirstPos)
{
var logicur = this._getLastEmptyPosition();logicur = this._getNextPosition(logicur+1);this._backspace(logicur);}
else
{
this._deleteAtPosition(curpos);}
}
this.setSelectionRange(curpos,curpos);return true;}
else if (scanCode == 8 ) 
{
var curpos = this._getCurrentPosition();if (curpos <= this._LogicFirstPos)
{
return true;}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
this._deleteAtPosition(curpos);this.setSelectionRange(curpos,curpos);}
curpos = this._deleteTextSelection();if (curpos == -1)
{
curpos = this._getPreviousPosition(this._getCurrentPosition()-1);this._backspace(curpos);}
this.setSelectionRange(curpos,curpos);return true;}
return false;}
, _deleteAtPosition : function(curpos) 
{
var masktext = this.get_element().value;if (this._isValidMaskedEditPosition(curpos))
{
var resttext = masktext.substring(curpos+1);var restlogi = this._LogicTextMask.substring(curpos+1);masktext = masktext.substring(0,curpos) + this._PromptChar;this._LogicTextMask = this._LogicTextMask.substring(0,curpos) + this._LogicPrompt;for (i = 0 ;i < parseInt(resttext.length,10) ;i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i))
{
masktext += this._PromptChar;this._LogicTextMask += this._LogicPrompt;}
else
{
masktext += resttext.substring(i,i+1);this._LogicTextMask += restlogi.substring(i,i+1);}
}
posaux = this._getNextPosition(curpos);for (i = 0 ;i < parseInt(resttext.length,10) ;i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i) && restlogi.substring(i,i+1) != this._LogicPrompt)
{
masktext = masktext.substring(0,posaux) + resttext.substring(i,i+1) + masktext.substring(posaux+1);this._LogicTextMask = this._LogicTextMask.substring(0,posaux) + restlogi.substring(i,i+1) + this._LogicTextMask.substring(posaux+1);posaux = this._getNextPosition(posaux+1);}
} 
this.get_element().value = (masktext);}
}
, _backspace : function(curpos) 
{
var masktext = this.get_element().value;if (this._isValidMaskedEditPosition(curpos))
{
masktext = masktext.substring(0,curpos) + this._PromptChar + masktext.substring(curpos+1);this._LogicTextMask = this._LogicTextMask.substring(0,curpos) + this._LogicPrompt + this._LogicTextMask.substring(curpos+1);this.get_element().value = (masktext);}
}
, _deleteTextSelection : function()
{
var masktext = this.get_element().value;var input = this.get_element();var ret = -1;var lenaux = -1;var begin = -1;if (document.selection) 
{
sel = document.selection.createRange();if (sel.text != "")
{
var aux = sel.text + String.fromCharCode(3);sel.text = aux;dummy = input.createTextRange();dummy.findText(aux);dummy.select();begin=input.value.indexOf(aux);if (this._DirectSelText == "P")
{
this._DirectSelText = "";ret = begin;}
else
{
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
ret = begin;} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
ret = begin+parseInt(aux.length,10)-1;}
}
document.selection.clear();lenaux = parseInt(aux.length,10)-1;}
}
else if (input.setSelectionRange) 
{
if (input.selectionStart != input.selectionEnd)
{
var ini = parseInt(input.selectionStart,10);var fim = parseInt(input.selectionEnd,10);lenaux = fim - ini;begin=input.selectionStart;if (this._DirectSelText == "P")
{
this._DirectSelText = "";input.selectionEnd = input.selectionStart;ret = begin;}
else
{
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
input.selectionEnd = input.selectionStart;ret = begin;}
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
input.selectionStart = input.selectionEnd;ret = begin+lenaux;}
}
}
}
if (ret !=-1)
{
for (i = 0 ;i < lenaux ;i++) 
{
if (this._isValidMaskedEditPosition(begin+i))
{
masktext = masktext.substring(0,begin+i) + this._PromptChar + masktext.substring(begin+i+1);this._LogicTextMask = this._LogicTextMask.substring(0,begin+i) + this._LogicPrompt + this._LogicTextMask.substring(begin+i+1);}
}
this.get_element().value = (masktext);if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (ret > this._LogicLastPos || ret < this._LogicFirstPos)
{
ret = this._LogicFirstPos;}
}
}
return ret;}
, _insertContent : function(value,curpos) 
{
var masktext = this.get_element().value;masktext = masktext.substring(0,curpos) + value + masktext.substring(curpos+1);this._LogicTextMask = this._LogicTextMask.substring(0,curpos) + value + this._LogicTextMask.substring(curpos+1);this.get_element().value = (masktext);} 
, _getLastEmptyPosition : function()
{
var pos = this._LogicLastPos;while (pos >= 0 && this._LogicTextMask.substring(pos, pos+1) != this._LogicPrompt)
{
pos--;}
return pos;}
, _getFirstNotEmptyPosition : function()
{
var pos = this._LogicFirstPos;while (pos <= this._LogicLastPos && this._LogicTextMask.substring(pos, pos+1) == this._LogicPrompt)
{
pos++;}
return pos;}
, _insertContentRight : function(value) 
{
var masktext = this.get_element().value;curpos = this._getLastEmptyPosition();if (curpos < 0)
{
return;}
var resttext = masktext.substring(curpos+1);var restlogi = this._LogicTextMask.substring(curpos+1);masktext = masktext.substring(0,curpos) + this._PromptChar;this._LogicTextMask = this._LogicTextMask.substring(0,curpos) + this._LogicPrompt;for (i = 0 ;i < parseInt(resttext.length,10) ;i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i))
{
masktext += this._PromptChar;this._LogicTextMask += this._LogicPrompt;}
else
{
masktext += resttext.substring(i,i+1);this._LogicTextMask += restlogi.substring(i,i+1);}
}
posaux = this._getNextPosition(curpos);for (i = 0 ;i < parseInt(resttext.length,10);i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i) && restlogi.substring(i,i+1) != this._LogicPrompt)
{
masktext = masktext.substring(0,posaux) + resttext.substring(i,i+1) + masktext.substring(posaux+1);this._LogicTextMask = this._LogicTextMask.substring(0,posaux) + restlogi.substring(i,i+1) + this._LogicTextMask.substring(posaux+1);posaux = this._getNextPosition(posaux+1);}
} 
masktext = masktext.substring(0,this._LogicLastPos) + value + masktext.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicLastPos) + value + this._LogicTextMask.substring(this._LogicLastPos+1);this.get_element().value = (masktext);} 
, _isValidMaskedEditPosition : function(pos) 
{
return (this._LogicMask.substring(pos,pos+1) == this._LogicPrompt);}
, _getNextPosition : function(pos)
{
while (!this._isValidMaskedEditPosition(pos) && pos < this._LogicLastPos+1)
{
pos++;}
if (pos > this._LogicLastPos+1)
{
pos = this._LogicLastPos+1;}
return pos;}
, _getPreviousPosition : function(pos)
{
while (!this._isValidMaskedEditPosition(pos) && pos > this._LogicFirstPos)
{
pos--;}
if (pos < this._LogicFirstPos)
{
pos = this._LogicFirstPos;}
return pos;}
, _getCurrentPosition : function()
{
begin = 0;input = this.get_element();if (input.setSelectionRange) 
{
begin = parseInt(input.selectionStart,10);}
else if (document.selection) 
{
sel = document.selection.createRange();if (sel.text != "")
{
var aux = ""
if (this._DirectSelText == "R")
{
aux = sel.text + String.fromCharCode(3);}
else if (this._DirectSelText == "L")
{
aux = String.fromCharCode(3) + sel.text ;}
sel.text = aux;this._DirectSelText == "";}
else
{
sel.text = String.fromCharCode(3);this._DirectSelText == "";}
dummy = input.createTextRange();dummy.findText(String.fromCharCode(3));dummy.select();begin=input.value.indexOf(String.fromCharCode(3));document.selection.clear();}
if (begin > this._LogicLastPos+1)
{
begin = this._LogicLastPos+1;}
if (begin < this._LogicFirstPos)
{
begin = this._LogicFirstPos;}
return begin;}
, _processKey : function(poscur,key) {
var posmask = this._LogicMaskConv;var filter;if (posmask.substring(poscur,poscur+1) == "9")
{
filter = this._charNumbers;}
else if (posmask.substring(poscur,poscur+1).toUpperCase() == "L")
{
filter = this._charLetters + this._charLetters.toLowerCase();}
else if (posmask.substring(poscur,poscur+1) == "$")
{
filter = this._charLetters + this._charLetters.toLowerCase() + " ";}
else if (posmask.substring(poscur,poscur+1).toUpperCase() == "C")
{
filter = this._Filtered;}
else if (posmask.substring(poscur,poscur+1).toUpperCase() == "A")
{
filter = this._charLetters + this._charLetters.toLowerCase() + this._Filtered;}
else if (posmask.substring(poscur,poscur+1).toUpperCase() == "N")
{
filter = this._charNumbers + this._Filtered;}
else if (posmask.substring(poscur,poscur+1) == "?")
{
filter = "";}
else
{
return false;}
if (filter == "")
{
return true;}
return (!filter || filter.length == 0 || filter.indexOf(key) != -1);} 
, _createMask : function()
{
var text;if (this._MaskConv == "" && this._Mask != "")
{
this._convertMask();} 
text = this._MaskConv;var i = 0;var masktext = "";var flagescape = false;this._LogicTextMask = "";this._QtdValidInput = 0;while (i < parseInt(text.length,10)) 
{
if (text.substring(i, i+1) == this._charEscape && flagescape == false) 
{
flagescape = true;}
else if (this._CharsEditMask.indexOf(text.substring(i, i+1)) == -1) 
{
if (flagescape == true)
{
flagescape = false;masktext += text.substring(i,i+1);this._LogicTextMask += this._LogicEscape;}
else
{
if (this._CharsSpecialMask.indexOf(text.substring(i, i+1)) != -1) 
{
this._QtdValidInput ++;if (text.substring(i, i+1) == "/")
{
masktext += this._CultureDatePlaceholder;this._LogicTextMask += this._CultureDatePlaceholder;}
else if (text.substring(i, i+1) == ":")
{
masktext += this._CultureTimePlaceholder;this._LogicTextMask += this._CultureTimePlaceholder;}
else if (text.substring(i, i+1) == ",")
{
masktext += this._CultureThousandsPlaceholder;this._LogicTextMask += this._CultureThousandsPlaceholder;}
else if (text.substring(i, i+1) == ".")
{
masktext += this._CultureDecimalPlaceholder;this._LogicTextMask += this._CultureDecimalPlaceholder;}
}
else
{
masktext += text.substring(i,i+1);this._LogicTextMask += text.substring(i,i+1);}
}
} 
else 
{
if (flagescape == true)
{
flagescape = false;masktext += text.substring(i,i+1);this._LogicTextMask += this._LogicEscape;}
else
{
this._QtdValidInput ++;masktext += this._PromptChar;this._LogicTextMask += this._LogicPrompt;}
}
i++;}
this._LogicFirstPos = -1;this._LogicLastPos = -1;this._LogicMask = this._LogicTextMask;for (i = 0 ;i < parseInt(this._LogicMask.length,10) ;i++) 
{
if (this._LogicFirstPos == -1 && this._LogicMask.substring(i,i+1) == this._LogicPrompt)
{
this._LogicFirstPos = i;}
if (this._LogicMask.substring(i,i+1) == this._LogicPrompt)
{
this._LogicLastPos = i;}
}
return masktext;}
, _getClearMask : function(masktext)
{
var i = 0;var clearmask = "";var qtdok = 0;while (i < parseInt(this._LogicTextMask.length,10)) 
{
if (qtdok < this._QtdValidInput)
{
if (this._isValidMaskedEditPosition(i) && this._LogicTextMask.substring(i, i+1) != this._LogicPrompt)
{
clearmask += this._LogicTextMask.substring(i,i+1);qtdok++;}
else if (this._LogicTextMask.substring(i, i+1) != this._LogicPrompt && this._LogicTextMask.substring(i, i+1) != this._LogicEscape)
{
if (this._LogicTextMask.substring(i,i+1) == this._CultureDatePlaceholder)
{
clearmask += (clearmask == "")?"":this._CultureDatePlaceholder;}
else if (this._LogicTextMask.substring(i,i+1) == this._CultureTimePlaceholder)
{
clearmask += (clearmask == "")?"":this._CultureTimePlaceholder;}
else if (this._LogicTextMask.substring(i,i+1) == this._CultureThousandsPlaceholder)
{
clearmask += (clearmask == "")?"":this._CultureThousandsPlaceholder;}
else if (this._LogicTextMask.substring(i,i+1) == this._CultureDecimalPlaceholder)
{
clearmask += (clearmask == "")?"":this._CultureDecimalPlaceholder;}
}
}
i++;}
if (this._LogicSymbol != "" && clearmask != "")
{
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time)
{
clearmask += " " + this._LogicSymbol;}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
clearmask = this._LogicSymbol + clearmask;}
}
return clearmask;}
, _convertMask : function() 
{
this._MaskConv = "";var qtdmask = "";var maskchar = "";for (i = 0 ;i < parseInt(this._Mask.length,10) ;i++) 
{
if (this._CharsEditMask.indexOf(this._Mask.substring(i, i+1)) != -1)
{
if (qtdmask.length == 0)
{
this._MaskConv += this._Mask.substring(i, i+1);qtdmask = "";maskchar = this._Mask.substring(i, i+1);}
else if (this._Mask.substring(i, i+1) == "9")
{
qtdmask += "9";}
else if (this._Mask.substring(i, i+1) == "0")
{
qtdmask += "0";}
}
else if (this._CharsEditMask.indexOf(this._Mask.substring(i, i+1)) == -1 && this._Mask.substring(i, i+1) != this._DelimitStartDup && this._Mask.substring(i, i+1) != this._DelimitEndDup)
{
if (qtdmask.length == 0)
{
this._MaskConv += this._Mask.substring(i, i+1);qtdmask = "";maskchar = "";}
else
{
if (this._charNumbers.indexOf(this._Mask.substring(i, i+1)) != -1)
{
qtdmask += this._Mask.substring(i, i+1);}
} 
}
else if (this._Mask.substring(i, i+1) == this._DelimitStartDup && qtdmask == "")
{
qtdmask = "0";}
else if (this._Mask.substring(i, i+1) == this._DelimitEndDup && qtdmask != "")
{
qtddup = parseInt(qtdmask,10) -1;if (qtddup > 0)
{
for (q = 0 ;q < qtddup ;q++) 
{
this._MaskConv += maskchar;}
}
qtdmask = "";maskchar = "";}
}
var FirstPos = -1;var LastPos = -1;var flagescape = false;for (i = 0 ;i < parseInt(this._MaskConv.length,10) ;i++) 
{
if (this._MaskConv.substring(i, i+1) == this._charEscape && !flagescape) 
{
flagescape = true;}
else if (this._CharsEditMask.indexOf(this._MaskConv.substring(i, i+1)) != -1 && !flagescape) 
{
if (FirstPos == -1)
{
FirstPos = i;}
LastPos = i;} 
else if(flagescape) 
{
flagescape = false;} 
}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && this._AcceptAmPm)
{
var ASymMask = this._CultureAMPMPlaceholder.split(";");var SymMask = "";if (ASymMask.length == 2)
{
SymMask = this._charEscape + " ";for (i = 0 ;i < parseInt(ASymMask[0].length,10) ;i++) 
{
SymMask += this._charEscape + " ";}
}
this._MaskConv = this._MaskConv.substring(0,LastPos+1) + SymMask + this._MaskConv.substring(LastPos+1);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._DisplayMoney == AjaxControlToolkit.MaskedEditShowSymbol.Left)
{
var SymMask = "";for (i = 0 ;i < parseInt(this._CultureCurrencySymbolPlaceholder.length,10) ;i++) 
{
if (this._CharsEditMask.indexOf(this._CultureCurrencySymbolPlaceholder.substring(i, i+1)) == -1)
{
SymMask += this._CultureCurrencySymbolPlaceholder.substring(i, i+1);}
else
{
SymMask += this._charEscape + this._CultureCurrencySymbolPlaceholder.substring(i, i+1);}
}
SymMask += this._charEscape + " ";this._MaskConv = this._MaskConv.substring(0,FirstPos) + SymMask + this._MaskConv.substring(FirstPos);FirstPos += SymMask.length;LastPos += SymMask.length;}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._DisplayMoney == AjaxControlToolkit.MaskedEditShowSymbol.Right)
{
var SymMask = this._charEscape + " ";for (i = 0 ;i < parseInt(this._CultureCurrencySymbolPlaceholder.length,10) ;i++) 
{
if (this._CharsEditMask.indexOf(this._CultureCurrencySymbolPlaceholder.substring(i, i+1)) == -1)
{
SymMask += this._CultureCurrencySymbolPlaceholder.substring(i, i+1);}
else
{
SymMask += this._charEscape + this._CultureCurrencySymbolPlaceholder.substring(i, i+1);}
}
this._MaskConv = this._MaskConv.substring(0,LastPos+1) + SymMask + this._MaskConv.substring(LastPos+1);}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative == AjaxControlToolkit.MaskedEditShowSymbol.Right)
{
this._MaskConv = this._MaskConv.substring(0,LastPos+1) + this._charEscape + " " + this._MaskConv.substring(LastPos+1);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative == AjaxControlToolkit.MaskedEditShowSymbol.Left)
{
this._MaskConv = this._MaskConv.substring(0,FirstPos) + this._charEscape + " " + this._MaskConv.substring(FirstPos);}
this._convertMaskNotEscape();}
, _convertMaskNotEscape : function()
{
this._LogicMaskConv = "";var atumask = this._MaskConv;var flagescape = false;for (i = 0 ;i < parseInt(atumask.length,10);i++) 
{
if (atumask.substring(i, i+1) == this._charEscape)
{
flagescape = true;}
else if (!flagescape)
{
this._LogicMaskConv += atumask.substring(i, i+1);}
else
{
this._LogicMaskConv += this._LogicEscape;flagescape = false;}
}
}
, get_Mask : function() {
if (this._MaskConv == "" && this._Mask != "")
{
this._convertMask();} 
return this._MaskConv;}
, set_Mask : function(value) 
{
this._Mask = value;this.raisePropertyChanged('Mask');}
, get_Filtered : function() 
{
return this._Filtered;}
, set_Filtered : function(value) 
{
this._Filtered = value;this.raisePropertyChanged('Filtered');} 
, get_InputDirection : function() 
{
return this._InputDirection;} 
, set_InputDirection : function(value) 
{
this._InputDirection = value;this.raisePropertyChanged('InputDirection');}
, get_PromptCharacter : function() 
{
return this._PromptChar;} 
, set_PromptCharacter : function(value) 
{
this._PromptChar = value;this.raisePropertyChanged('PromptChar');}
, get_OnFocusCssClass : function() 
{
return this._OnFocusCssClass;} 
, set_OnFocusCssClass : function(value) 
{
this._OnFocusCssClass = value;this.raisePropertyChanged('OnFocusCssClass');}
, get_OnInvalidCssClass : function() 
{
return this._OnInvalidCssClass;} 
, set_OnInvalidCssClass : function(value) 
{
this._OnInvalidCssClass = value;this.raisePropertyChanged('OnInvalidCssClass');}
, get_CultureName : function() 
{
return this._CultureName;} 
, set_CultureName : function(value) 
{
this._CultureName = value;this.raisePropertyChanged('Culture');}
, get_CultureDatePlaceholder : function() 
{
return this._CultureDatePlaceholder;} 
, set_CultureDatePlaceholder : function(value) 
{
this._CultureDatePlaceholder = value;this.raisePropertyChanged('CultureDatePlaceholder');} 
, get_CultureTimePlaceholder : function() 
{
return this._CultureTimePlaceholder;} 
, set_CultureTimePlaceholder : function(value) 
{
this._CultureTimePlaceholder = value;this.raisePropertyChanged('CultureTimePlaceholder');} 
, get_CultureDecimalPlaceholder : function() 
{
return this._CultureDecimalPlaceholder;} 
, set_CultureDecimalPlaceholder : function(value) 
{
this._CultureDecimalPlaceholder = value;this.raisePropertyChanged('CultureDecimalPlaceholder');} 
, get_CultureThousandsPlaceholder : function() 
{
return this._CultureThousandsPlaceholder;} 
, set_CultureThousandsPlaceholder : function(value) 
{
this._CultureThousandsPlaceholder = value;this.raisePropertyChanged('CultureThousandsPlaceholder');} 
, get_CultureDateFormat : function() 
{
return this._CultureDateFormat;} 
, set_CultureDateFormat : function(value) 
{
this._CultureDateFormat = value;this.raisePropertyChanged('CultureDateFormat');} 
, get_CultureCurrencySymbolPlaceholder : function() 
{
return this._CultureCurrencySymbolPlaceholder;} 
, set_CultureCurrencySymbolPlaceholder : function(value) 
{
this._CultureCurrencySymbolPlaceholder= value;this.raisePropertyChanged('CultureCurrencySymbolPlaceholder');} 
, get_CultureAMPMPlaceholder : function() 
{
return this._CultureAMPMPlaceholder;} 
, set_CultureAMPMPlaceholder : function(value) 
{
if (value.split(";").length != 2 || value == ";") 
{
this._CultureAMPMPlaceholder = "";}
else
{
this._CultureAMPMPlaceholder = value;}
this.raisePropertyChanged('CultureAMPMPlaceholder');} 
, get_CultureFirstLettersAMPM : function() 
{
if (this._CultureAMPMPlaceholder != "")
{
var ASymMask = this._CultureAMPMPlaceholder.split(";");return (ASymMask[0].substring(0,1) + ASymMask[1].substring(0,1));}
return "";}
, get_CultureFirstLetterAM : function() 
{
if (this._CultureAMPMPlaceholder != "")
{
var ASymMask = this._CultureAMPMPlaceholder.split(";");return ASymMask[0].substring(0,1);}
return "";} 
, get_CultureFirstLetterPM : function() 
{
if (this._CultureAMPMPlaceholder != "")
{
var ASymMask = this._CultureAMPMPlaceholder.split(";");return ASymMask[1].substring(0,1);}
return "";} 
, get_ClearMaskOnLostFocus : function() 
{
return this._ClearMaskOnLostfocus;} 
, set_ClearMaskOnLostFocus : function(value) 
{
this._ClearMaskOnLostfocus = value;this.raisePropertyChanged('ClearMaskOnLostfocus');} 
, get_MessageValidatorTip : function() 
{
return this._MessageValidatorTip;} 
, set_MessageValidatorTip : function(value) 
{
this._MessageValidatorTip = value;this.raisePropertyChanged('MessageValidatorTip');} 
, get_AcceptAMPM : function() 
{
return this._AcceptAmPm;} 
, set_AcceptAMPM : function(value) 
{
this._AcceptAmPm = value;this.raisePropertyChanged('AcceptAmPm');} 
, get_AcceptNegative : function() 
{
return this._AcceptNegative;} 
, set_AcceptNegative : function(value) 
{
this._AcceptNegative= value;this.raisePropertyChanged('AcceptNegative');} 
, get_DisplayMoney : function() 
{
return this._DisplayMoney;} 
, set_DisplayMoney : function(value) 
{
this._DisplayMoney = value;this.raisePropertyChanged('DisplayMoney');} 
, get_OnFocusCssNegative : function() 
{
return this._OnFocusCssNegative;} 
, set_OnFocusCssNegative : function(value) 
{
this._OnFocusCssNegative= value;this.raisePropertyChanged('OnFocusCssNegative');} 
, get_OnBlurCssNegative : function() 
{
return this._OnBlurCssNegative;} 
, set_OnBlurCssNegative : function(value) 
{
this._OnBlurCssNegative= value;this.raisePropertyChanged('OnBlurCssNegative');} 
, get_Century : function() 
{
return this._Century;} 
, set_Century : function(value) 
{
this._Century= value;this.raisePropertyChanged('Century');} 
, get_AutoComplete : function() 
{
return this._AutoComplete;} 
, set_AutoComplete : function(value) 
{
this._AutoComplete = value;this.raisePropertyChanged('AutoComplete');} 
, get_AutoCompleteValue : function() 
{
return this._AutoCompleteValue;} 
, set_AutoCompleteValue : function(value) 
{
this._AutoCompleteValue = value;this.raisePropertyChanged('AutoCompleteValue');} 
, get_MaskType : function() 
{
return this._MaskType;} 
, set_MaskType : function(value) 
{
this._MaskType = value;this.raisePropertyChanged('MaskType');} 
}
AjaxControlToolkit.MaskedEditBehavior.registerClass('AjaxControlToolkit.MaskedEditBehavior', AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.MaskedEditType = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.MaskedEditInputDirections = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.MaskedEditShowSymbol = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.MaskedEditType.prototype = {
None: 0,
Date: 1,
Number: 2,
Time: 3
}
AjaxControlToolkit.MaskedEditInputDirections.prototype = {
LeftToRight: 0,
RightToLeft: 1
}
AjaxControlToolkit.MaskedEditShowSymbol.prototype = {
None: 0,
Left: 1,
Right: 2
}
AjaxControlToolkit.MaskedEditType.registerEnum('AjaxControlToolkit.MaskedEditType');AjaxControlToolkit.MaskedEditInputDirections.registerEnum('AjaxControlToolkit.MaskedEditInputDirections');AjaxControlToolkit.MaskedEditShowSymbol.registerEnum('AjaxControlToolkit.MaskedEditShowSymbol');
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();