﻿
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BoxSide = function() {
}
AjaxControlToolkit.BoxSide.prototype = {
Top : 0,
Right : 1,
Bottom : 2,
Left : 3
}
AjaxControlToolkit.BoxSide.registerEnum("AjaxControlToolkit.BoxSide", false);AjaxControlToolkit._CommonToolkitScripts = function() {
}
AjaxControlToolkit._CommonToolkitScripts.prototype = {
_borderStyleNames : ["borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle"],
_borderWidthNames : ["borderTopWidth", "borderRightWidth", "borderBottomWidth", "borderLeftWidth"],
_paddingWidthNames : ["paddingTop", "paddingRight", "paddingBottom", "paddingLeft"],
_marginWidthNames : ["marginTop", "marginRight", "marginBottom", "marginLeft"],
getCurrentStyle : function(element, attribute, defaultValue) {
var currentValue = null;if (element) {
if (element.currentStyle) {
currentValue = element.currentStyle[attribute];} else if (document.defaultView && document.defaultView.getComputedStyle) {
var style = document.defaultView.getComputedStyle(element, null);if (style) {
currentValue = style[attribute];}
}
if (!currentValue && element.style.getPropertyValue) {
currentValue = element.style.getPropertyValue(attribute);}
else if (!currentValue && element.style.getAttribute) {
currentValue = element.style.getAttribute(attribute);} 
}
if ((!currentValue || currentValue == "" || typeof(currentValue) === 'undefined')) {
if (typeof(defaultValue) != 'undefined') {
currentValue = defaultValue;}
else {
currentValue = null;}
} 
return currentValue;},
getInheritedBackgroundColor : function(element) {
if (!element) return '#FFFFFF';var background = this.getCurrentStyle(element, 'backgroundColor');try {
while (!background || background == '' || background == 'transparent' || background == 'rgba(0, 0, 0, 0)') {
element = element.parentNode;if (!element) {
background = '#FFFFFF';} else {
background = this.getCurrentStyle(element, 'backgroundColor');}
}
} catch(ex) {
background = '#FFFFFF';}
return background;},
getLocation : function(element) {
if (element === document.documentElement) {
return new Sys.UI.Point(0,0);}
if (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7) {
if (element.window === element || element.nodeType === 9 || !element.getClientRects || !element.getBoundingClientRect) return new Sys.UI.Point(0,0);var screenRects = element.getClientRects();if (!screenRects || !screenRects.length) {
return new Sys.UI.Point(0,0);}
var first = screenRects[0];var dLeft = 0;var dTop = 0;var inFrame = false;try {
inFrame = element.ownerDocument.parentWindow.frameElement;} catch(ex) {
inFrame = true;}
if (inFrame) {
var clientRect = element.getBoundingClientRect();if (!clientRect) {
return new Sys.UI.Point(0,0);}
var minLeft = first.left;var minTop = first.top;for (var i = 1;i < screenRects.length;i++) {
var r = screenRects[i];if (r.left < minLeft) {
minLeft = r.left;}
if (r.top < minTop) {
minTop = r.top;}
}
dLeft = minLeft - clientRect.left;dTop = minTop - clientRect.top;}
var ownerDocument = element.document.documentElement;return new Sys.UI.Point(first.left - 2 - dLeft + ownerDocument.scrollLeft, first.top - 2 - dTop + ownerDocument.scrollTop);}
return Sys.UI.DomElement.getLocation(element);},
setLocation : function(element, point) {
Sys.UI.DomElement.setLocation(element, point.x, point.y);},
getContentSize : function(element) {
if (!element) {
throw Error.argumentNull('element');}
var size = this.getSize(element);var borderBox = this.getBorderBox(element);var paddingBox = this.getPaddingBox(element);return {
width : size.width - borderBox.horizontal - paddingBox.horizontal,
height : size.height - borderBox.vertical - paddingBox.vertical
}
},
getSize : function(element) {
if (!element) {
throw Error.argumentNull('element');}
return {
width: element.offsetWidth,
height: element.offsetHeight
};},
setContentSize : function(element, size) {
if (!element) {
throw Error.argumentNull('element');}
if (!size) {
throw Error.argumentNull('size');}
if(this.getCurrentStyle(element, 'MozBoxSizing') == 'border-box' || this.getCurrentStyle(element, 'BoxSizing') == 'border-box') {
var borderBox = this.getBorderBox(element);var paddingBox = this.getPaddingBox(element);size = {
width: size.width + borderBox.horizontal + paddingBox.horizontal,
height: size.height + borderBox.vertical + paddingBox.vertical
};}
element.style.width = size.width.toString() + 'px';element.style.height = size.height.toString() + 'px';},
setSize : function(element, size) {
if (!element) {
throw Error.argumentNull('element');}
if (!size) {
throw Error.argumentNull('size');}
var borderBox = this.getBorderBox(element);var paddingBox = this.getPaddingBox(element);var contentSize = {
width: size.width - borderBox.horizontal - paddingBox.horizontal,
height: size.height - borderBox.vertical - paddingBox.vertical
};this.setContentSize(element, contentSize);},
getBounds : function(element) {
var offset = $common.getLocation(element);return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);}, 
setBounds : function(element, bounds) {
if (!element) {
throw Error.argumentNull('element');}
if (!bounds) {
throw Error.argumentNull('bounds');}
this.setSize(element, bounds);$common.setLocation(element, bounds);},
getClientBounds : function() {
var clientWidth;var clientHeight;switch(Sys.Browser.agent) {
case Sys.Browser.InternetExplorer:
clientWidth = document.documentElement.clientWidth;clientHeight = document.documentElement.clientHeight;break;case Sys.Browser.Safari:
clientWidth = window.innerWidth;clientHeight = window.innerHeight;break;case Sys.Browser.Opera:
clientWidth = Math.min(window.innerWidth, document.body.clientWidth);clientHeight = Math.min(window.innerHeight, document.body.clientHeight);break;default: 
clientWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);clientHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);break;}
return new Sys.UI.Bounds(0, 0, clientWidth, clientHeight);},
getMarginBox : function(element) {
if (!element) {
throw Error.argumentNull('element');}
var box = {
top: this.getMargin(element, AjaxControlToolkit.BoxSide.Top),
right: this.getMargin(element, AjaxControlToolkit.BoxSide.Right),
bottom: this.getMargin(element, AjaxControlToolkit.BoxSide.Bottom),
left: this.getMargin(element, AjaxControlToolkit.BoxSide.Left)
};box.horizontal = box.left + box.right;box.vertical = box.top + box.bottom;return box;},
getBorderBox : function(element) {
if (!element) {
throw Error.argumentNull('element');}
var box = {
top: this.getBorderWidth(element, AjaxControlToolkit.BoxSide.Top),
right: this.getBorderWidth(element, AjaxControlToolkit.BoxSide.Right),
bottom: this.getBorderWidth(element, AjaxControlToolkit.BoxSide.Bottom),
left: this.getBorderWidth(element, AjaxControlToolkit.BoxSide.Left)
};box.horizontal = box.left + box.right;box.vertical = box.top + box.bottom;return box;},
getPaddingBox : function(element) {
if (!element) {
throw Error.argumentNull('element');}
var box = {
top: this.getPadding(element, AjaxControlToolkit.BoxSide.Top),
right: this.getPadding(element, AjaxControlToolkit.BoxSide.Right),
bottom: this.getPadding(element, AjaxControlToolkit.BoxSide.Bottom),
left: this.getPadding(element, AjaxControlToolkit.BoxSide.Left)
};box.horizontal = box.left + box.right;box.vertical = box.top + box.bottom;return box;},
isBorderVisible : function(element, boxSide) {
if (!element) {
throw Error.argumentNull('element');}
if(boxSide < AjaxControlToolkit.BoxSide.Top || boxSide > AjaxControlToolkit.BoxSide.Left) {
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue, boxSide, 'AjaxControlToolkit.BoxSide'));}
var styleName = this._borderStyleNames[boxSide];var styleValue = this.getCurrentStyle(element, styleName);return styleValue != "none";},
getMargin : function(element, boxSide) {
if (!element) {
throw Error.argumentNull('element');}
if(boxSide < AjaxControlToolkit.BoxSide.Top || boxSide > AjaxControlToolkit.BoxSide.Left) {
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue, boxSide, 'AjaxControlToolkit.BoxSide'));}
var styleName = this._marginWidthNames[boxSide];var styleValue = this.getCurrentStyle(element, styleName);try { return this.parsePadding(styleValue);} catch(ex) { return 0;}
},
getBorderWidth : function(element, boxSide) {
if (!element) {
throw Error.argumentNull('element');}
if(boxSide < AjaxControlToolkit.BoxSide.Top || boxSide > AjaxControlToolkit.BoxSide.Left) {
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue, boxSide, 'AjaxControlToolkit.BoxSide'));}
if(!this.isBorderVisible(element, boxSide)) {
return 0;} 
var styleName = this._borderWidthNames[boxSide];var styleValue = this.getCurrentStyle(element, styleName);return this.parseBorderWidth(styleValue);},
getPadding : function(element, boxSide) {
if (!element) {
throw Error.argumentNull('element');}
if(boxSide < AjaxControlToolkit.BoxSide.Top || boxSide > AjaxControlToolkit.BoxSide.Left) {
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue, boxSide, 'AjaxControlToolkit.BoxSide'));}
var styleName = this._paddingWidthNames[boxSide];var styleValue = this.getCurrentStyle(element, styleName);return this.parsePadding(styleValue);},
parseBorderWidth : function(borderWidth) {
if (!this._borderThicknesses) {
var borderThicknesses = { };var div0 = document.createElement('div');div0.style.visibility = 'hidden';div0.style.position = 'absolute';div0.style.fontSize = '1px';document.body.appendChild(div0)
var div1 = document.createElement('div');div1.style.height = '0px';div1.style.overflow = 'hidden';div0.appendChild(div1);var base = div0.offsetHeight;div1.style.borderTop = 'solid black';div1.style.borderTopWidth = 'thin';borderThicknesses['thin'] = div0.offsetHeight - base;div1.style.borderTopWidth = 'medium';borderThicknesses['medium'] = div0.offsetHeight - base;div1.style.borderTopWidth = 'thick';borderThicknesses['thick'] = div0.offsetHeight - base;div0.removeChild(div1);document.body.removeChild(div0);this._borderThicknesses = borderThicknesses;}
if (borderWidth) {
switch(borderWidth) {
case 'thin':
case 'medium':
case 'thick':
return this._borderThicknesses[borderWidth];case 'inherit':
return 0;}
var unit = this.parseUnit(borderWidth);Sys.Debug.assert(unit.type == 'px', String.format(AjaxControlToolkit.Resources.Common_InvalidBorderWidthUnit, unit.type));return unit.size;}
return 0;},
parsePadding : function(padding) {
if(padding) {
if(padding == 'inherit') {
return 0;}
var unit = this.parseUnit(padding);Sys.Debug.assert(unit.type == 'px', String.format(AjaxControlToolkit.Resources.Common_InvalidPaddingUnit, unit.type));return unit.size;}
return 0;},
parseUnit : function(value) {
if (!value) {
throw Error.argumentNull('value');}
value = value.trim().toLowerCase();var l = value.length;var s = -1;for(var i = 0;i < l;i++) {
var ch = value.substr(i, 1);if((ch < '0' || ch > '9') && ch != '-' && ch != '.' && ch != ',') {
break;}
s = i;}
if(s == -1) {
throw Error.create(AjaxControlToolkit.Resources.Common_UnitHasNoDigits);}
var type;var size;if(s < (l - 1)) {
type = value.substring(s + 1).trim();} else {
type = 'px';}
size = parseFloat(value.substr(0, s + 1));if(type == 'px') {
size = Math.floor(size);}
return { 
size: size,
type: type
};},
getElementOpacity : function(element) {
if (!element) {
throw Error.argumentNull('element');}
var hasOpacity = false;var opacity;if (element.filters) {
var filters = element.filters;if (filters.length !== 0) {
var alphaFilter = filters['DXImageTransform.Microsoft.Alpha'];if (alphaFilter) {
opacity = alphaFilter.opacity / 100.0;hasOpacity = true;}
}
}
else {
opacity = this.getCurrentStyle(element, 'opacity', 1);hasOpacity = true;}
if (hasOpacity === false) {
return 1.0;}
return parseFloat(opacity);},
setElementOpacity : function(element, value) {
if (!element) {
throw Error.argumentNull('element');}
if (element.filters) {
var filters = element.filters;var createFilter = true;if (filters.length !== 0) {
var alphaFilter = filters['DXImageTransform.Microsoft.Alpha'];if (alphaFilter) {
createFilter = false;alphaFilter.opacity = value * 100;}
}
if (createFilter) {
element.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(opacity=' + (value * 100) + ')';}
}
else {
element.style.opacity = value;}
},
getVisible : function(element) {
return (element &&
("none" != $common.getCurrentStyle(element, "display")) &&
("hidden" != $common.getCurrentStyle(element, "visibility")));},
setVisible : function(element, value) {
if (element && value != $common.getVisible(element)) {
if (value) {
if (element.style.removeAttribute) {
element.style.removeAttribute("display");} else {
element.style.removeProperty("display");}
} else {
element.style.display = 'none';}
element.style.visibility = value ? 'visible' : 'hidden';}
},
resolveFunction : function(value) {
if (value) {
if (value instanceof Function) {
return value;} else if (String.isInstanceOfType(value) && value.length > 0) {
var func;if ((func = window[value]) instanceof Function) {
return func;} else if ((func = eval(value)) instanceof Function) {
return func;}
}
}
return null;},
addCssClasses : function(element, classNames) {
for(var i = 0;i < classNames.length;i++) {
Sys.UI.DomElement.addCssClass(element, classNames[i]);}
},
removeCssClasses : function(element, classNames) {
for(var i = 0;i < classNames.length;i++) {
Sys.UI.DomElement.removeCssClass(element, classNames[i]);}
},
setStyle : function(element, style) {
$common.applyProperties(element.style, style);},
removeHandlers : function(element, events) {
for (var name in events) {
$removeHandler(element, name, events[name]);}
},
overlaps : function(r1, r2) {
return r1.x < (r2.x + r2.width)
&& r2.x < (r1.x + r1.width)
&& r1.y < (r2.y + r2.height)
&& r2.y < (r1.y + r1.height);},
containsPoint : function(rect, x, y) {
return x >= rect.x && x < (rect.x + rect.width) && y >= rect.y && y < (rect.y + rect.height);},
isKeyDigit : function(keyCode) { 
return (0x30 <= keyCode && keyCode <= 0x39);},
isKeyNavigation : function(keyCode) { 
return (Sys.UI.Key.left <= keyCode && keyCode <= Sys.UI.Key.down);},
padLeft : function(text, size, ch, truncate) { 
return $common._pad(text, size || 2, ch || ' ', 'l', truncate || false);},
padRight : function(text, size, ch, truncate) { 
return $common._pad(text, size || 2, ch || ' ', 'r', truncate || false);},
_pad : function(text, size, ch, side, truncate) {
text = text.toString();var length = text.length;var builder = new Sys.StringBuilder();if (side == 'r') {
builder.append(text);} 
while (length < size) {
builder.append(ch);length++;}
if (side == 'l') {
builder.append(text);}
var result = builder.toString();if (truncate && result.length > size) {
if (side == 'l') {
result = result.substr(result.length - size, size);} else {
result = result.substr(0, size);}
}
return result;},
__DOMEvents : {
focusin : { eventGroup : "UIEvents", init : function(e, p) { e.initUIEvent("focusin", true, false, window, 1);} },
focusout : { eventGroup : "UIEvents", init : function(e, p) { e.initUIEvent("focusout", true, false, window, 1);} },
activate : { eventGroup : "UIEvents", init : function(e, p) { e.initUIEvent("activate", true, true, window, 1);} },
focus : { eventGroup : "UIEvents", init : function(e, p) { e.initUIEvent("focus", false, false, window, 1);} },
blur : { eventGroup : "UIEvents", init : function(e, p) { e.initUIEvent("blur", false, false, window, 1);} },
click : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("click", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
dblclick : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("click", true, true, window, 2, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
mousedown : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("mousedown", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
mouseup : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("mouseup", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
mouseover : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("mouseover", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
mousemove : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("mousemove", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
mouseout : { eventGroup : "MouseEvents", init : function(e, p) { e.initMouseEvent("mousemove", true, true, window, 1, p.screenX || 0, p.screenY || 0, p.clientX || 0, p.clientY || 0, p.ctrlKey || false, p.altKey || false, p.shiftKey || false, p.metaKey || false, p.button || 0, p.relatedTarget || null);} },
load : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("load", false, false);} },
unload : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("unload", false, false);} },
select : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("select", true, false);} },
change : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("change", true, false);} },
submit : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("submit", true, true);} },
reset : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("reset", true, false);} },
resize : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("resize", true, false);} },
scroll : { eventGroup : "HTMLEvents", init : function(e, p) { e.initEvent("scroll", true, false);} }
},
tryFireRawEvent : function(element, rawEvent) {
try {
if (element.fireEvent) {
element.fireEvent("on" + rawEvent.type, rawEvent);return true;} else if (element.dispatchEvent) {
element.dispatchEvent(rawEvent);return true;}
} catch (e) {
}
return false;}, 
tryFireEvent : function(element, eventName, properties) {
try {
if (document.createEventObject) {
var e = document.createEventObject();$common.applyProperties(e, properties || {});element.fireEvent("on" + eventName, e);return true;} else if (document.createEvent) {
var def = $common.__DOMEvents[eventName];if (def) {
var e = document.createEvent(def.eventGroup);def.init(e, properties || {});element.dispatchEvent(e);return true;}
}
} catch (e) {
}
return false;},
wrapElement : function(innerElement, newOuterElement, newInnerParentElement) {
var parent = innerElement.parentNode;parent.replaceChild(newOuterElement, innerElement);(newInnerParentElement || newOuterElement).appendChild(innerElement);},
unwrapElement : function(innerElement, oldOuterElement) {
var parent = oldOuterElement.parentNode;if (parent != null) {
$common.removeElement(innerElement);parent.replaceChild(innerElement, oldOuterElement);}
},
removeElement : function(element) {
var parent = element.parentNode;if (parent != null) {
parent.removeChild(element);}
},
applyProperties : function(target, properties) {
for (var p in properties) {
var pv = properties[p];if (pv != null && Object.getType(pv)===Object) {
var tv = target[p];$common.applyProperties(tv, pv);} else {
target[p] = pv;}
}
},
createElementFromTemplate : function(template, appendToParent, nameTable) {
if (typeof(template.nameTable)!='undefined') {
var newNameTable = template.nameTable;if (String.isInstanceOfType(newNameTable)) {
newNameTable = nameTable[newNameTable];}
if (newNameTable != null) {
nameTable = newNameTable;}
}
var elementName = null;if (typeof(template.name)!=='undefined') {
elementName = template.name;}
var elt = document.createElement(template.nodeName);if (typeof(template.name)!=='undefined' && nameTable) {
nameTable[template.name] = elt;}
if (typeof(template.parent)!=='undefined' && appendToParent == null) {
var newParent = template.parent;if (String.isInstanceOfType(newParent)) {
newParent = nameTable[newParent];}
if (newParent != null) {
appendToParent = newParent;}
}
if (typeof(template.properties)!=='undefined' && template.properties != null) {
$common.applyProperties(elt, template.properties);}
if (typeof(template.cssClasses)!=='undefined' && template.cssClasses != null) {
$common.addCssClasses(elt, template.cssClasses);}
if (typeof(template.events)!=='undefined' && template.events != null) {
$addHandlers(elt, template.events);}
if (typeof(template.visible)!=='undefined' && template.visible != null) {
this.setVisible(elt, template.visible);}
if (appendToParent) {
appendToParent.appendChild(elt);}
if (typeof(template.opacity)!=='undefined' && template.opacity != null) {
$common.setElementOpacity(elt, template.opacity);}
if (typeof(template.children)!=='undefined' && template.children != null) {
for (var i = 0;i < template.children.length;i++) {
var subtemplate = template.children[i];$common.createElementFromTemplate(subtemplate, elt, nameTable);}
}
var contentPresenter = elt;if (typeof(template.contentPresenter)!=='undefined' && template.contentPresenter != null) {
contentPresenter = nameTable[contentPresenter];}
if (typeof(template.content)!=='undefined' && template.content != null) {
var content = template.content;if (String.isInstanceOfType(content)) {
content = nameTable[content];}
if (content.parentNode) {
$common.wrapElement(content, elt, contentPresenter);} else {
contentPresenter.appendChild(content);}
}
return elt;},
prepareHiddenElementForATDeviceUpdate : function () {
var objHidden = document.getElementById('hiddenInputToUpdateATBuffer_CommonToolkitScripts');if (!objHidden) {
var objHidden = document.createElement('input');objHidden.setAttribute('type', 'hidden');objHidden.setAttribute('value', '1');objHidden.setAttribute('id', 'hiddenInputToUpdateATBuffer_CommonToolkitScripts');objHidden.setAttribute('name', 'hiddenInputToUpdateATBuffer_CommonToolkitScripts');if ( document.forms[0] ) {
document.forms[0].appendChild(objHidden);}
}
},
updateFormToRefreshATDeviceBuffer : function () {
var objHidden = document.getElementById('hiddenInputToUpdateATBuffer_CommonToolkitScripts');if (objHidden) {
if (objHidden.getAttribute('value') == '1') {
objHidden.setAttribute('value', '0');} else {
objHidden.setAttribute('value', '1');}
}
}
}
var CommonToolkitScripts = AjaxControlToolkit.CommonToolkitScripts = new AjaxControlToolkit._CommonToolkitScripts();var $common = CommonToolkitScripts;Sys.UI.DomElement.getVisible = $common.getVisible;Sys.UI.DomElement.setVisible = $common.setVisible;Sys.UI.Control.overlaps = $common.overlaps;AjaxControlToolkit._DomUtility = function() {
}
AjaxControlToolkit._DomUtility.prototype = {
isDescendant : function(ancestor, descendant) {
for (var n = descendant.parentNode;n != null;n = n.parentNode) {
if (n == ancestor) return true;}
return false;},
isDescendantOrSelf : function(ancestor, descendant) {
if (ancestor === descendant) 
return true;return AjaxControlToolkit.DomUtility.isDescendant(ancestor, descendant);},
isAncestor : function(descendant, ancestor) {
return AjaxControlToolkit.DomUtility.isDescendant(ancestor, descendant);},
isAncestorOrSelf : function(descendant, ancestor) {
if (descendant === ancestor)
return true;return AjaxControlToolkit.DomUtility.isDescendant(ancestor, descendant);},
isSibling : function(self, sibling) {
var parent = self.parentNode;for (var i = 0;i < parent.childNodes.length;i++) {
if (parent.childNodes[i] == sibling) return true;}
return false;}
}
AjaxControlToolkit._DomUtility.registerClass("AjaxControlToolkit._DomUtility");AjaxControlToolkit.DomUtility = new AjaxControlToolkit._DomUtility();AjaxControlToolkit.TextBoxWrapper = function(element) {
AjaxControlToolkit.TextBoxWrapper.initializeBase(this, [element]);this._current = element.value;this._watermark = null;this._isWatermarked = false;}
AjaxControlToolkit.TextBoxWrapper.prototype = {
dispose : function() {
this.get_element().AjaxControlToolkitTextBoxWrapper = null;AjaxControlToolkit.TextBoxWrapper.callBaseMethod(this, 'dispose');},
get_Current : function() {
this._current = this.get_element().value;return this._current;},
set_Current : function(value) {
this._current = value;this._updateElement();},
get_Value : function() {
if (this.get_IsWatermarked()) {
return "";} else {
return this.get_Current();}
},
set_Value : function(text) {
this.set_Current(text);if (!text || (0 == text.length)) {
if (null != this._watermark) {
this.set_IsWatermarked(true);}
} else {
this.set_IsWatermarked(false);}
},
get_Watermark : function() {
return this._watermark;},
set_Watermark : function(value) {
this._watermark = value;this._updateElement();},
get_IsWatermarked : function() {
return this._isWatermarked;},
set_IsWatermarked : function(isWatermarked) {
if (this._isWatermarked != isWatermarked) {
this._isWatermarked = isWatermarked;this._updateElement();this._raiseWatermarkChanged();}
},
_updateElement : function() {
var element = this.get_element();if (this._isWatermarked) {
if (element.value != this._watermark) {
element.value = this._watermark;}
} else {
if (element.value != this._current) {
element.value = this._current;}
}
},
add_WatermarkChanged : function(handler) {
this.get_events().addHandler("WatermarkChanged", handler);},
remove_WatermarkChanged : function(handler) {
this.get_events().removeHandler("WatermarkChanged", handler);},
_raiseWatermarkChanged : function() {
var onWatermarkChangedHandler = this.get_events().getHandler("WatermarkChanged");if (onWatermarkChangedHandler) {
onWatermarkChangedHandler(this, Sys.EventArgs.Empty);}
}
}
AjaxControlToolkit.TextBoxWrapper.get_Wrapper = function(element) {
if (null == element.AjaxControlToolkitTextBoxWrapper) {
element.AjaxControlToolkitTextBoxWrapper = new AjaxControlToolkit.TextBoxWrapper(element);}
return element.AjaxControlToolkitTextBoxWrapper;}
AjaxControlToolkit.TextBoxWrapper.registerClass('AjaxControlToolkit.TextBoxWrapper', Sys.UI.Behavior);AjaxControlToolkit.TextBoxWrapper.validatorGetValue = function(id) {
var control = $get(id);if (control && control.AjaxControlToolkitTextBoxWrapper) {
return control.AjaxControlToolkitTextBoxWrapper.get_Value();}
return AjaxControlToolkit.TextBoxWrapper._originalValidatorGetValue(id);}
if (typeof(ValidatorGetValue) == 'function') {
AjaxControlToolkit.TextBoxWrapper._originalValidatorGetValue = ValidatorGetValue;ValidatorGetValue = AjaxControlToolkit.TextBoxWrapper.validatorGetValue;}
if (Sys.CultureInfo.prototype._getAbbrMonthIndex) {
try {
Sys.CultureInfo.prototype._getAbbrMonthIndex('');} catch(ex) {
Sys.CultureInfo.prototype._getAbbrMonthIndex = function(value) {
if (!this._upperAbbrMonths) {
this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);}
return Array.indexOf(this._upperAbbrMonths, this._toUpper(value));}
Sys.CultureInfo.CurrentCulture._getAbbrMonthIndex = Sys.CultureInfo.prototype._getAbbrMonthIndex;Sys.CultureInfo.InvariantCulture._getAbbrMonthIndex = Sys.CultureInfo.prototype._getAbbrMonthIndex;}
}

Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BehaviorBase = function(element) {
AjaxControlToolkit.BehaviorBase.initializeBase(this,[element]);this._clientStateFieldID = null;this._pageRequestManager = null;this._partialUpdateBeginRequestHandler = null;this._partialUpdateEndRequestHandler = null;}
AjaxControlToolkit.BehaviorBase.prototype = {
initialize : function() {
AjaxControlToolkit.BehaviorBase.callBaseMethod(this, 'initialize');},
dispose : function() {
AjaxControlToolkit.BehaviorBase.callBaseMethod(this, 'dispose');if (this._pageRequestManager) {
if (this._partialUpdateBeginRequestHandler) {
this._pageRequestManager.remove_beginRequest(this._partialUpdateBeginRequestHandler);this._partialUpdateBeginRequestHandler = null;}
if (this._partialUpdateEndRequestHandler) {
this._pageRequestManager.remove_endRequest(this._partialUpdateEndRequestHandler);this._partialUpdateEndRequestHandler = null;}
this._pageRequestManager = null;}
},
get_ClientStateFieldID : function() {
return this._clientStateFieldID;},
set_ClientStateFieldID : function(value) {
if (this._clientStateFieldID != value) {
this._clientStateFieldID = value;this.raisePropertyChanged('ClientStateFieldID');}
},
get_ClientState : function() {
if (this._clientStateFieldID) {
var input = document.getElementById(this._clientStateFieldID);if (input) {
return input.value;}
}
return null;},
set_ClientState : function(value) {
if (this._clientStateFieldID) {
var input = document.getElementById(this._clientStateFieldID);if (input) {
input.value = value;}
}
},
registerPartialUpdateEvents : function() {
if (Sys && Sys.WebForms && Sys.WebForms.PageRequestManager){
this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();if (this._pageRequestManager) {
this._partialUpdateBeginRequestHandler = Function.createDelegate(this, this._partialUpdateBeginRequest);this._pageRequestManager.add_beginRequest(this._partialUpdateBeginRequestHandler);this._partialUpdateEndRequestHandler = Function.createDelegate(this, this._partialUpdateEndRequest);this._pageRequestManager.add_endRequest(this._partialUpdateEndRequestHandler);}
}
},
_partialUpdateBeginRequest : function(sender, beginRequestEventArgs) {
},
_partialUpdateEndRequest : function(sender, endRequestEventArgs) {
}
}
AjaxControlToolkit.BehaviorBase.registerClass('AjaxControlToolkit.BehaviorBase', Sys.UI.Behavior);AjaxControlToolkit.DynamicPopulateBehaviorBase = function(element) {
AjaxControlToolkit.DynamicPopulateBehaviorBase.initializeBase(this, [element]);this._DynamicControlID = null;this._DynamicContextKey = null;this._DynamicServicePath = null;this._DynamicServiceMethod = null;this._cacheDynamicResults = false;this._dynamicPopulateBehavior = null;this._populatingHandler = null;this._populatedHandler = null;}
AjaxControlToolkit.DynamicPopulateBehaviorBase.prototype = {
initialize : function() {
AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(this, 'initialize');this._populatingHandler = Function.createDelegate(this, this._onPopulating);this._populatedHandler = Function.createDelegate(this, this._onPopulated);},
dispose : function() {
if (this._populatedHandler) {
if (this._dynamicPopulateBehavior) {
this._dynamicPopulateBehavior.remove_populated(this._populatedHandler);}
this._populatedHandler = null;}
if (this._populatingHandler) {
if (this._dynamicPopulateBehavior) {
this._dynamicPopulateBehavior.remove_populating(this._populatingHandler);}
this._populatingHandler = null;}
if (this._dynamicPopulateBehavior) {
this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior = null;}
AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(this, 'dispose');},
populate : function(contextKeyOverride) {
if (this._dynamicPopulateBehavior && (this._dynamicPopulateBehavior.get_element() != $get(this._DynamicControlID))) {
this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior = null;}
if (!this._dynamicPopulateBehavior && this._DynamicControlID && this._DynamicServiceMethod) {
this._dynamicPopulateBehavior = $create(AjaxControlToolkit.DynamicPopulateBehavior,
{
"id" : this.get_id() + "_DynamicPopulateBehavior",
"ContextKey" : this._DynamicContextKey,
"ServicePath" : this._DynamicServicePath,
"ServiceMethod" : this._DynamicServiceMethod,
"cacheDynamicResults" : this._cacheDynamicResults
}, null, null, $get(this._DynamicControlID));this._dynamicPopulateBehavior.add_populating(this._populatingHandler);this._dynamicPopulateBehavior.add_populated(this._populatedHandler);}
if (this._dynamicPopulateBehavior) {
this._dynamicPopulateBehavior.populate(contextKeyOverride ? contextKeyOverride : this._DynamicContextKey);}
},
_onPopulating : function(sender, eventArgs) {
this.raisePopulating(eventArgs);},
_onPopulated : function(sender, eventArgs) {
this.raisePopulated(eventArgs);},
get_dynamicControlID : function() {
return this._DynamicControlID;},
get_DynamicControlID : this.get_dynamicControlID,
set_dynamicControlID : function(value) {
if (this._DynamicControlID != value) {
this._DynamicControlID = value;this.raisePropertyChanged('dynamicControlID');this.raisePropertyChanged('DynamicControlID');}
},
set_DynamicControlID : this.set_dynamicControlID,
get_dynamicContextKey : function() {
return this._DynamicContextKey;},
get_DynamicContextKey : this.get_dynamicContextKey,
set_dynamicContextKey : function(value) {
if (this._DynamicContextKey != value) {
this._DynamicContextKey = value;this.raisePropertyChanged('dynamicContextKey');this.raisePropertyChanged('DynamicContextKey');}
},
set_DynamicContextKey : this.set_dynamicContextKey,
get_dynamicServicePath : function() {
return this._DynamicServicePath;},
get_DynamicServicePath : this.get_dynamicServicePath,
set_dynamicServicePath : function(value) {
if (this._DynamicServicePath != value) {
this._DynamicServicePath = value;this.raisePropertyChanged('dynamicServicePath');this.raisePropertyChanged('DynamicServicePath');}
},
set_DynamicServicePath : this.set_dynamicServicePath,
get_dynamicServiceMethod : function() {
return this._DynamicServiceMethod;},
get_DynamicServiceMethod : this.get_dynamicServiceMethod,
set_dynamicServiceMethod : function(value) {
if (this._DynamicServiceMethod != value) {
this._DynamicServiceMethod = value;this.raisePropertyChanged('dynamicServiceMethod');this.raisePropertyChanged('DynamicServiceMethod');}
},
set_DynamicServiceMethod : this.set_dynamicServiceMethod,
get_cacheDynamicResults : function() {
return this._cacheDynamicResults;},
set_cacheDynamicResults : function(value) {
if (this._cacheDynamicResults != value) {
this._cacheDynamicResults = value;this.raisePropertyChanged('cacheDynamicResults');}
},
add_populated : function(handler) {
this.get_events().addHandler("populated", handler);},
remove_populated : function(handler) {
this.get_events().removeHandler("populated", handler);},
raisePopulated : function(arg) {
var handler = this.get_events().getHandler("populated");if (handler) handler(this, arg);},
add_populating : function(handler) {
this.get_events().addHandler('populating', handler);},
remove_populating : function(handler) {
this.get_events().removeHandler('populating', handler);},
raisePopulating : function(eventArgs) {
var handler = this.get_events().getHandler('populating');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.DynamicPopulateBehaviorBase.registerClass('AjaxControlToolkit.DynamicPopulateBehaviorBase', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.ControlBase = function(element) {
AjaxControlToolkit.ControlBase.initializeBase(this, [element]);this._clientStateField = null;this._callbackTarget = null;this._onsubmit$delegate = Function.createDelegate(this, this._onsubmit);this._oncomplete$delegate = Function.createDelegate(this, this._oncomplete);this._onerror$delegate = Function.createDelegate(this, this._onerror);}
AjaxControlToolkit.ControlBase.prototype = {
initialize : function() {
AjaxControlToolkit.ControlBase.callBaseMethod(this, "initialize");if (this._clientStateField) {
this.loadClientState(this._clientStateField.value);}
if (typeof(Sys.WebForms)!=="undefined" && typeof(Sys.WebForms.PageRequestManager)!=="undefined") {
Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, this._onsubmit$delegate);} else {
$addHandler(document.forms[0], "submit", this._onsubmit$delegate);}
},
dispose : function() {
if (typeof(Sys.WebForms)!=="undefined" && typeof(Sys.WebForms.PageRequestManager)!=="undefined") {
Array.remove(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, this._onsubmit$delegate);} else {
$removeHandler(document.forms[0], "submit", this._onsubmit$delegate);}
AjaxControlToolkit.ControlBase.callBaseMethod(this, "dispose");},
findElement : function(id) {
return $get(this.get_id() + '_' + id.split(':').join('_'));},
get_clientStateField : function() {
return this._clientStateField;},
set_clientStateField : function(value) {
if (this.get_isInitialized()) throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_CannotSetClientStateField);if (this._clientStateField != value) {
this._clientStateField = value;this.raisePropertyChanged('clientStateField');}
},
loadClientState : function(value) {
},
saveClientState : function() {
return null;},
_invoke : function(name, args, cb) {
if (!this._callbackTarget) {
throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_ControlNotRegisteredForCallbacks);}
if (typeof(WebForm_DoCallback)==="undefined") {
throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_PageNotRegisteredForCallbacks);}
var ar = [];for (var i = 0;i < args.length;i++) 
ar[i] = args[i];var clientState = this.saveClientState();if (clientState != null && !String.isInstanceOfType(clientState)) {
throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_InvalidClientStateType);}
var payload = Sys.Serialization.JavaScriptSerializer.serialize({name:name,args:ar,state:this.saveClientState()});WebForm_DoCallback(this._callbackTarget, payload, this._oncomplete$delegate, cb, this._onerror$delegate, true);},
_oncomplete : function(result, context) {
result = Sys.Serialization.JavaScriptSerializer.deserialize(result);if (result.error) {
throw Error.create(result.error);}
this.loadClientState(result.state);context(result.result);},
_onerror : function(message, context) {
throw Error.create(message);},
_onsubmit : function() {
if (this._clientStateField) {
this._clientStateField.value = this.saveClientState();}
return true;} 
}
AjaxControlToolkit.ControlBase.registerClass("AjaxControlToolkit.ControlBase", Sys.UI.Control);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.HorizontalSide = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.HorizontalSide.prototype = {
Left : 0,
Center : 1,
Right : 2
}
AjaxControlToolkit.HorizontalSide.registerEnum("AjaxControlToolkit.HorizontalSide", false);AjaxControlToolkit.VerticalSide = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.VerticalSide.prototype = {
Top : 0,
Middle : 1,
Bottom : 2
}
AjaxControlToolkit.VerticalSide.registerEnum("AjaxControlToolkit.VerticalSide", false);AjaxControlToolkit.AlwaysVisibleControlBehavior = function(element) {
AjaxControlToolkit.AlwaysVisibleControlBehavior.initializeBase(this, [element]);this._horizontalOffset = 0;this._horizontalSide = AjaxControlToolkit.HorizontalSide.Left;this._verticalOffset = 0;this._verticalSide = AjaxControlToolkit.VerticalSide.Top;this._scrollEffectDuration = .1;this._repositionHandler = null;this._animate = false;this._animation = null;}
AjaxControlToolkit.AlwaysVisibleControlBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.AlwaysVisibleControlBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();if (!element) throw Error.invalidOperation(AjaxControlToolkit.Resources.AlwaysVisible_ElementRequired);this._repositionHandler = Function.createDelegate(this, this._reposition);this._animate = (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7);if (this._animate) {
this._animation = new AjaxControlToolkit.Animation.MoveAnimation(
element, this._scrollEffectDuration, 25, 0, 0, false, 'px');element.style.position = 'absolute';} else {
element.style.position = 'fixed';}
$addHandler(window, 'resize', this._repositionHandler);if (this._animate) {
$addHandler(window, 'scroll', this._repositionHandler);}
this._reposition();},
dispose : function() {
if (this._repositionHandler) {
if (this._animate) {
$removeHandler(window, 'scroll', this._repositionHandler);}
$removeHandler(window, 'resize', this._repositionHandler);this._repositionHandler = null;}
if (this._animation) {
this._animation.dispose();this._animation = null;}
AjaxControlToolkit.AlwaysVisibleControlBehavior.callBaseMethod(this, 'dispose');},
_reposition : function(eventObject) {
var element = this.get_element();if (!element) return;this.raiseRepositioning(Sys.EventArgs.Empty);var x = 0;var y = 0;if (this._animate) {
if (document.documentElement && document.documentElement.scrollTop) {
x = document.documentElement.scrollLeft;y = document.documentElement.scrollTop;} else {
x = document.body.scrollLeft;y = document.body.scrollTop;}
}
var clientBounds = $common.getClientBounds();var width = clientBounds.width;var height = clientBounds.height;switch (this._horizontalSide) {
case AjaxControlToolkit.HorizontalSide.Center :
x = Math.max(0, Math.floor(x + width / 2.0 - element.offsetWidth / 2.0 - this._horizontalOffset));break;case AjaxControlToolkit.HorizontalSide.Right :
x = Math.max(0, x + width - element.offsetWidth - this._horizontalOffset);break;case AjaxControlToolkit.HorizontalSide.Left :
default :
x += this._horizontalOffset;break;} 
switch (this._verticalSide) {
case AjaxControlToolkit.VerticalSide.Middle :
y = Math.max(0, Math.floor(y + height / 2.0 - element.offsetHeight / 2.0 - this._verticalOffset));break;case AjaxControlToolkit.VerticalSide.Bottom :
y = Math.max(0, y + height - element.offsetHeight - this._verticalOffset);break;case AjaxControlToolkit.VerticalSide.Top :
default :
y += this._verticalOffset;break;}
if (this._animate && this._animation) {
this._animation.stop();this._animation.set_horizontal(x);this._animation.set_vertical(y);this._animation.play();} else {
element.style.left = x + 'px';element.style.top = y + 'px';}
this.raiseRepositioned(Sys.EventArgs.Empty);},
get_HorizontalOffset : function() {
return this._horizontalOffset;},
set_HorizontalOffset : function(value) {
if (this._horizontalOffset != value) {
this._horizontalOffset = value;this._reposition();this.raisePropertyChanged('HorizontalOffset');}
},
get_HorizontalSide : function() {
return this._horizontalSide;},
set_HorizontalSide : function(value) {
if (this._horizontalSide != value) {
this._horizontalSide = value;this._reposition();this.raisePropertyChanged('HorizontalSide');}
},
get_VerticalOffset : function() {
return this._verticalOffset;},
set_VerticalOffset : function(value) {
if (this._verticalOffset != value) {
this._verticalOffset = value;this._reposition();this.raisePropertyChanged('VerticalOffset');}
},
get_VerticalSide : function() {
return this._verticalSide;},
set_VerticalSide : function(value) {
if (this._verticalSide != value) {
this._verticalSide = value;this._reposition();this.raisePropertyChanged('VerticalSide');}
},
get_ScrollEffectDuration : function() {
return this._scrollEffectDuration;},
set_ScrollEffectDuration : function(value) {
if (this._scrollEffectDuration != value) {
this._scrollEffectDuration = value;if (this._animation) {
this._animation.set_duration(value);}
this.raisePropertyChanged('ScrollEffectDuration');}
},
add_repositioning : function(handler) {
this.get_events().addHandler('repositioning', handler);},
remove_repositioning : function(handler) {
this.get_events().removeHandler('repositioning', handler);},
raiseRepositioning : function(eventArgs) {
var handler = this.get_events().getHandler('repositioning');if (handler) {
handler(this, eventArgs);}
},
add_repositioned : function(handler) {
this.get_events().addHandler('repositioned', handler);},
remove_repositioned : function(handler) {
this.get_events().removeHandler('repositioned', handler);},
raiseRepositioned : function(eventArgs) {
var handler = this.get_events().getHandler('repositioned');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.AlwaysVisibleControlBehavior.registerClass('AjaxControlToolkit.AlwaysVisibleControlBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs = function(oldValue, newValue) {
AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs.initializeBase(this);this._oldValue = oldValue;this._newValue = newValue;}
AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs.prototype = {
get_oldValue : function() {
return this._oldValue;},
get_newValue : function() {
return this._newValue;}
}
AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs.registerClass('AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs', Sys.EventArgs);AjaxControlToolkit.CascadingDropDownBehavior = function(e) {
AjaxControlToolkit.CascadingDropDownBehavior.initializeBase(this, [e]);this._parentControlID = null;this._category = null;this._promptText = null;this._loadingText = null;this._promptValue = null;this._emptyValue = null;this._emptyText = null;this._servicePath = null;this._serviceMethod = null;this._contextKey = null;this._useContextKey = false;this._parentElement = null;this._changeHandler = null;this._parentChangeHandler = null;this._lastParentValues = null;this._selectedValue = null;}
AjaxControlToolkit.CascadingDropDownBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.CascadingDropDownBehavior.callBaseMethod(this, 'initialize');$common.prepareHiddenElementForATDeviceUpdate();var e = this.get_element();this._clearItems();e.CascadingDropDownCategory = this._category;this._changeHandler = Function.createDelegate(this, this._onChange);$addHandler(e, "change",this._changeHandler);if (this._parentControlID) {
this._parentElement = $get(this._parentControlID);Sys.Debug.assert(this._parentElement != null, String.format(AjaxControlToolkit.Resources.CascadingDropDown_NoParentElement, this._parentControlID));if (this._parentElement) {
e.CascadingDropDownParentControlID = this._parentControlID;this._parentChangeHandler = Function.createDelegate(this, this._onParentChange);$addHandler(this._parentElement, "change", this._parentChangeHandler);if (!this._parentElement.childDropDown) {
this._parentElement.childDropDown = new Array();}
this._parentElement.childDropDown.push(this);}
}
this._onParentChange(null, true);},
dispose : function() {
var e = this.get_element();if (this._changeHandler) { 
$removeHandler(e, "change", this._changeHandler);this._changeHandler = null;}
if (this._parentChangeHandler) {
if (this._parentElement) { 
$removeHandler(this._parentElement, "change", this._parentChangeHandler);}
this._parentChangeHandler = null;}
AjaxControlToolkit.CascadingDropDownBehavior.callBaseMethod(this, 'dispose');},
_clearItems : function() {
var e = this.get_element();while (0 < e.options.length) {
e.remove(0);}
},
_isPopulated : function() {
var items = this.get_element().options.length;if (this._promptText) {
return items > 1;} else {
return items > 0;}
},
_setOptions : function(list, inInit, gettingList) {
if (!this.get_isInitialized()) {
return;}
var e = this.get_element();this._clearItems();var headerText;var headerValue = "";if (gettingList && this._loadingText) {
headerText = this._loadingText;} else if (!gettingList && list && (0 == list.length) && (null != this._emptyText)) {
headerText = this._emptyText;if (this._emptyValue) {
headerValue = this._emptyValue;}
} else if (this._promptText) {
headerText = this._promptText;if (this._promptValue) {
headerValue = this._promptValue;}
}
if (headerText) {
var optionElement = new Option(headerText, headerValue);e.options[e.options.length] = optionElement;}
var selectedValueOption = null;var defaultIndex = -1;if (list) {
for (i = 0 ;i < list.length ;i++) {
var listItemName = list[i].name;var listItemValue = list[i].value;if (list[i].isDefaultValue) {
defaultIndex = i;if (this._promptText) {
defaultIndex++;}
}
var optionElement = new Option(listItemName, listItemValue);if (listItemValue == this._selectedValue) {
selectedValueOption = optionElement;}
e.options[e.options.length] = optionElement;}
if (selectedValueOption) {
selectedValueOption.selected = true;}
}
if (selectedValueOption) {
this.set_SelectedValue(e.options[e.selectedIndex].value, e.options[e.selectedIndex].text);} else if (!selectedValueOption && defaultIndex != -1) {
e.options[defaultIndex].selected = true;this.set_SelectedValue(e.options[defaultIndex].value, e.options[defaultIndex].text);} else if (!inInit && !selectedValueOption && !gettingList && !this._promptText && (e.options.length > 0)) {
this.set_SelectedValue(e.options[0].value, e.options[0].text);} else if (!inInit && !selectedValueOption && !gettingList) {
this.set_SelectedValue('', '');}
if (e.childDropDown && !gettingList) {
for(i = 0;i < e.childDropDown.length;i++) {
e.childDropDown[i]._onParentChange();}
}
else {
if (list && (Sys.Browser.agent !== Sys.Browser.Safari) && (Sys.Browser.agent !== Sys.Browser.Opera)) {
if (document.createEvent) {
var onchangeEvent = document.createEvent('HTMLEvents');onchangeEvent.initEvent('change', true, false);this.get_element().dispatchEvent(onchangeEvent);} else if( document.createEventObject ) {
this.get_element().fireEvent('onchange');}
}
}
if (this._loadingText || this._promptText || this._emptyText) {
e.disabled = !list || (0 == list.length);}
this.raisePopulated(Sys.EventArgs.Empty);},
_onChange : function() {
if (!this._isPopulated()) {
return;}
var e = this.get_element();if ((-1 != e.selectedIndex) && !(this._promptText && (0 == e.selectedIndex))) {
this.set_SelectedValue(e.options[e.selectedIndex].value, e.options[e.selectedIndex].text);} else {
this.set_SelectedValue('', '');}
},
_onParentChange : function(evt, inInit) {
var e = this.get_element();var knownCategoryValues = '';var parentControlID = this._parentControlID;while (parentControlID) {
var parentElement = $get(parentControlID);if (parentElement && (-1 != parentElement.selectedIndex)){
var selectedValue = parentElement.options[parentElement.selectedIndex].value;if (selectedValue && selectedValue != "") {
knownCategoryValues = parentElement.CascadingDropDownCategory + ':' + selectedValue + ';' + knownCategoryValues;parentControlID = parentElement.CascadingDropDownParentControlID;continue;}
} 
break;}
if (knownCategoryValues != '' && this._lastParentValues == knownCategoryValues) {
return;}
this._lastParentValues = knownCategoryValues;if (knownCategoryValues == '' && this._parentControlID) {
this._setOptions(null, inInit);return;}
this._setOptions(null, inInit, true);if (this._servicePath && this._serviceMethod) {
var eventArgs = new Sys.CancelEventArgs();this.raisePopulating(eventArgs);if (eventArgs.get_cancel()) {
return;}
var params = { knownCategoryValues:knownCategoryValues, category:this._category };if (this._useContextKey) {
params.contextKey = this._contextKey;}
Sys.Net.WebServiceProxy.invoke(this._servicePath, this._serviceMethod, false, params,
Function.createDelegate(this, this._onMethodComplete), Function.createDelegate(this, this._onMethodError));$common.updateFormToRefreshATDeviceBuffer();}
},
_onMethodComplete : function(result, userContext, methodName) {
this._setOptions(result);},
_onMethodError : function(webServiceError, userContext, methodName) {
if (webServiceError.get_timedOut()) {
this._setOptions( [ this._makeNameValueObject(AjaxControlToolkit.Resources.CascadingDropDown_MethodTimeout) ] );} else {
this._setOptions( [ this._makeNameValueObject(String.format(AjaxControlToolkit.Resources.CascadingDropDown_MethodError, webServiceError.get_statusCode())) ] );}
},
_makeNameValueObject : function(message) {
return { 'name': message, 'value': message };},
get_ParentControlID : function() {
return this._parentControlID;},
set_ParentControlID : function(value) {
if (this._parentControlID != value) {
this._parentControlID = value;this.raisePropertyChanged('ParentControlID');}
},
get_Category : function() {
return this._category;},
set_Category : function(value) {
if (this._category != value) {
this._category = value;this.raisePropertyChanged('Category');}
},
get_PromptText : function() {
return this._promptText;},
set_PromptText : function(value) {
if (this._promptText != value) {
this._promptText = value;this.raisePropertyChanged('PromptText');}
},
get_PromptValue : function() {
return this._promptValue;},
set_PromptValue : function(value) {
if (this._promptValue != value) {
this._promptValue = value;this.raisePropertyChanged('PromptValue');}
},
get_EmptyText : function() {
return this._emptyText;},
set_EmptyText : function(value) {
if (this._emptyText != value) {
this._emptyText = value;this.raisePropertyChanged('EmptyText');}
},
get_EmptyValue : function() {
return this._emptyValue;},
set_EmptyValue : function(value) {
if (this._emptyValue != value) {
this._emptyValue = value;this.raisePropertyChanged('EmptyValue');}
},
get_LoadingText : function() {
return this._loadingText;},
set_LoadingText : function(value) {
if (this._loadingText != value) {
this._loadingText = value;this.raisePropertyChanged('LoadingText');}
},
get_SelectedValue : function() {
return this._selectedValue;},
set_SelectedValue : function(value, text) {
if (this._selectedValue != value) {
if (!text) {
var i = value.indexOf(':::');if (-1 != i) {
text = value.slice(i + 3);value = value.slice(0, i);}
}
var oldValue = this._selectedValue;this._selectedValue = value;this.raisePropertyChanged('SelectedValue');this.raiseSelectionChanged(new AjaxControlToolkit.CascadingDropDownSelectionChangedEventArgs(oldValue, value));}
AjaxControlToolkit.CascadingDropDownBehavior.callBaseMethod(this, 'set_ClientState', [ this._selectedValue+':::'+text ]);},
get_ServicePath : function() {
return this._servicePath;},
set_ServicePath : function(value) {
if (this._servicePath != value) {
this._servicePath = value;this.raisePropertyChanged('ServicePath');}
},
get_ServiceMethod : function() {
return this._serviceMethod;},
set_ServiceMethod : function(value) {
if (this._serviceMethod != value) {
this._serviceMethod = value;this.raisePropertyChanged('ServiceMethod');}
},
get_contextKey : function() {
return this._contextKey;},
set_contextKey : function(value) {
if (this._contextKey != value) {
this._contextKey = value;this.set_useContextKey(true);this.raisePropertyChanged('contextKey');}
},
get_useContextKey : function() {
return this._useContextKey;},
set_useContextKey : function(value) {
if (this._useContextKey != value) {
this._useContextKey = value;this.raisePropertyChanged('useContextKey');}
},
add_selectionChanged : function(handler) {
this.get_events().addHandler('selectionChanged', handler);},
remove_selectionChanged : function(handler) {
this.get_events().removeHandler('selectionChanged', handler);},
raiseSelectionChanged : function(eventArgs) {
var handler = this.get_events().getHandler('selectionChanged');if (handler) {
handler(this, eventArgs);}
},
add_populating : function(handler) {
this.get_events().addHandler('populating', handler);},
remove_populating : function(handler) {
this.get_events().removeHandler('populating', handler);},
raisePopulating : function(eventArgs) {
var handler = this.get_events().getHandler('populating');if (handler) {
handler(this, eventArgs);}
},
add_populated : function(handler) {
this.get_events().addHandler('populated', handler);},
remove_populated : function(handler) {
this.get_events().removeHandler('populated', handler);},
raisePopulated : function(eventArgs) {
var handler = this.get_events().getHandler('populated');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.CascadingDropDownBehavior.registerClass('AjaxControlToolkit.CascadingDropDownBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.CollapsiblePanelExpandDirection = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.CollapsiblePanelExpandDirection.prototype = {
Horizontal : 0,
Vertical: 1
}
AjaxControlToolkit.CollapsiblePanelExpandDirection.registerEnum("AjaxControlToolkit.CollapsiblePanelExpandDirection", false);AjaxControlToolkit.CollapsiblePanelBehavior = function(element) {
AjaxControlToolkit.CollapsiblePanelBehavior.initializeBase(this, [element]);this._collapsedSize = 0;this._expandedSize = 0;this._scrollContents = null;this._collapsed = false;this._expandControlID = null;this._collapseControlID = null;this._textLabelID = null;this._collapsedText = null;this._expandedText = null;this._imageControlID = null;this._expandedImage = null;this._collapsedImage = null;this._suppressPostBack = null;this._autoExpand = null;this._autoCollapse = null;this._expandDirection = AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical;this._collapseClickHandler = null;this._expandClickHandler = null;this._panelMouseEnterHandler = null;this._panelMouseLeaveHandler = null;this._childDiv = null;this._animation = null;}
AjaxControlToolkit.CollapsiblePanelBehavior.prototype = { 
initialize : function() {
AjaxControlToolkit.CollapsiblePanelBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();this._animation = new AjaxControlToolkit.Animation.LengthAnimation(element, .25, 10, 'style', null, 0, 0, 'px');if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
this._animation.set_propertyKey('height');} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
this._animation.set_propertyKey('width');}
this._animation.add_ended(Function.createDelegate(this, this._onAnimateComplete));if (this._suppressPostBack == null) {
if (element.tagName == "INPUT" && element.type == "checkbox") {
this._suppressPostBack = false;this.raisePropertyChanged('SuppressPostBack');} 
else if (element.tagName == "A") {
this._suppressPostBack = true;this.raisePropertyChanged('SuppressPostBack');}
}
var lastState = AjaxControlToolkit.CollapsiblePanelBehavior.callBaseMethod(this, 'get_ClientState');if (lastState && lastState != "") {
var wasCollapsed = Boolean.parse(lastState);if (this._collapsed != wasCollapsed) {
this._collapsed = wasCollapsed;this.raisePropertyChanged('Collapsed');}
}
this._setupChildDiv();if (this._collapsed) {
this._setTargetSize(this._getCollapsedSize());} else { 
this._setTargetSize(this._getExpandedSize());} 
this._setupState(this._collapsed);if (this._collapseControlID == this._expandControlID) {
this._collapseClickHandler = Function.createDelegate(this, this.togglePanel);this._expandClickHandler = null;} else {
this._collapseClickHandler = Function.createDelegate(this, this.collapsePanel);this._expandClickHandler = Function.createDelegate(this, this.expandPanel);}
if (this._autoExpand) {
this._panelMouseEnterHandler = Function.createDelegate(this, this._onMouseEnter);$addHandler(element, 'mouseover', this._panelMouseEnterHandler);} 
if (this._autoCollapse) {
this._panelMouseLeaveHandler = Function.createDelegate(this, this._onMouseLeave);$addHandler(element, 'mouseout', this._panelMouseLeaveHandler);}
if (this._collapseControlID) {
var collapseElement = $get(this._collapseControlID);if (!collapseElement) {
throw Error.argument('CollapseControlID', String.format(AjaxControlToolkit.Resources.CollapsiblePanel_NoControlID, this._collapseControlID));} else {
$addHandler(collapseElement, 'click', this._collapseClickHandler);}
}
if (this._expandControlID) {
if (this._expandClickHandler) { 
var expandElement = $get(this._expandControlID);if (!expandElement) {
throw Error.argument('ExpandControlID', String.format(AjaxControlToolkit.Resources.CollapsiblePanel_NoControlID, this._expandControlID));} else {
$addHandler(expandElement, 'click', this._expandClickHandler);}
}
}
},
dispose : function() {
var element = this.get_element();if (this._collapseClickHandler) {
var collapseElement = (this._collapseControlID ? $get(this._collapseControlID) : null);if (collapseElement) {
$removeHandler(collapseElement, 'click', this._collapseClickHandler);}
this._collapseClickHandler = null;}
if (this._expandClickHandler) {
var expandElement = (this._expandControlID ? $get(this._expandControlID) : null);if (expandElement) {
$removeHandler(expandElement, 'click', this._expandClickHandler);}
this._expandClickHandler = null;}
if (this._panelMouseEnterHandler) {
$removeHandler(element, 'mouseover', this._panelMouseEnterHandler);}
if (this._panelMouseLeaveHandler) {
$removeHandler(element, 'mouseout', this._panelMouseLeaveHandler);}
if (this._animation) {
this._animation.dispose();this._animation = null;}
AjaxControlToolkit.CollapsiblePanelBehavior.callBaseMethod(this, 'dispose');},
togglePanel : function(eventObj) {
this._toggle(eventObj);}, 
expandPanel : function(eventObj) {
this._doOpen(eventObj);},
collapsePanel : function(eventObj) {
this._doClose(eventObj);},
_checkCollapseHide : function() {
if (this._collapsed && this._getTargetSize() == 0) {
var e = this.get_element();var display = $common.getCurrentStyle(e, 'display');if (!e.oldDisplay && display != "none") {
e.oldDisplay = display;e.style.display = "none";}
return true;}
return false;},
_doClose : function(eventObj) {
var eventArgs = new Sys.CancelEventArgs();this.raiseCollapsing(eventArgs);if (eventArgs.get_cancel()) {
return;}
if (this._animation) {
this._animation.stop();this._animation.set_startValue(this._getTargetSize());this._animation.set_endValue(this._getCollapsedSize());this._animation.play();}
this._setupState(true);if (this._suppressPostBack) {
if (eventObj && eventObj.preventDefault) {
eventObj.preventDefault();} else {
if (event) {
event.returnValue = false;}
return false;}
}
},
_doOpen : function(eventObj) {
var eventArgs = new Sys.CancelEventArgs();this.raiseExpanding(eventArgs);if (eventArgs.get_cancel()) {
return;}
if (this._animation) {
this._animation.stop();var e = this.get_element();if (this._checkCollapseHide() && $common.getCurrentStyle(e, 'display', e.style.display)) {
if (e.oldDisplay) {
e.style.display = e.oldDisplay;} else {
if (e.style.removeAttribute) {
e.style.removeAttribute("display");} else {
e.style.removeProperty("display");}
}
e.oldDisplay = null;}
this._animation.set_startValue(this._getTargetSize());this._animation.set_endValue(this._getExpandedSize());this._animation.play();}
this._setupState(false);if (this._suppressPostBack) {
if (eventObj && eventObj.preventDefault) {
eventObj.preventDefault();} else {
if (event) {
event.returnValue = false;}
return false;}
}
},
_onAnimateComplete : function() {
var e = this.get_element();if (!this._collapsed && !this._expandedSize)
{
if(this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
if(this._childDiv.offsetHeight <= e.offsetHeight) {
e.style.height = "auto";this.raisePropertyChanged('TargetHeight');} 
else {
this._checkCollapseHide();}
}
else 
{
if( this._childDiv.offsetWidth <= e.offsetWidth) {
e.style.width = "auto";this.raisePropertyChanged('TargetWidth');}
else {
this._checkCollapseHide();}
}
}
else {
this._checkCollapseHide();}
if (this._collapsed) {
this.raiseCollapseComplete();this.raiseCollapsed(Sys.EventArgs.Empty);} else {
this.raiseExpandComplete()
this.raiseExpanded(new Sys.EventArgs());}
},
_onMouseEnter : function(eventObj) {
if (this._autoExpand) {
this.expandPanel(eventObj);}
},
_onMouseLeave : function(eventObj) {
if (this._autoCollapse) {
this.collapsePanel(eventObj);}
},
_getExpandedSize : function() {
if (this._expandedSize) {
return this._expandedSize;} 
if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
return this._childDiv.offsetHeight;} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
return this._childDiv.offsetWidth;}
},
_getCollapsedSize : function() {
if (this._collapsedSize) {
return this._collapsedSize;}
return 0;},
_getTargetSize : function() {
var value;if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
value = this.get_TargetHeight();} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
value = this.get_TargetWidth();} 
if (value === undefined) {
value = 0;}
return value;},
_setTargetSize : function(value) {
var useSize = this._collapsed || this._expandedSize;var e = this.get_element();if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
if (useSize || value < e.offsetHeight) {
this.set_TargetHeight(value);} else {
e.style.height = "auto";this.raisePropertyChanged('TargetHeight');}
} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
if (useSize || value < e.offsetWidth) {
this.set_TargetWidth(value);}
else {
e.style.width = "auto";this.raisePropertyChanged('TargetWidth');} 
}
this._checkCollapseHide();},
_setupChildDiv : function() {
var startSize = this._getTargetSize();var e = this.get_element();this._childDiv = e.cloneNode(false);this._childDiv.id = '';while (e.hasChildNodes()) { 
var child = e.childNodes[0];child = e.removeChild(child);this._childDiv.appendChild(child);}
e.style.padding = "";e.style.border = "";if (this._scrollContents) {
if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
e.style.overflowY = "scroll";this._childDiv.style.overflowY = "";} else {
e.style.overflowX = "scroll";this._childDiv.style.overflowX = "";}
if (Sys.Browser.agent == Sys.Browser.Safari || Sys.Browser.agent == Sys.Browser.Opera) {
e.style.overflow = "scroll";this._childDiv.style.overflow = "";}
}
else {
if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
e.style.overflowY = "hidden";this._childDiv.style.overflowY = "";} else {
e.style.overflowX = "hidden";this._childDiv.style.overflowX = "";}
if (Sys.Browser.Agent == Sys.Browser.Safari || Sys.Browser.Agent == Sys.Browser.Opera) {
e.style.overflow = "hidden";this._childDiv.style.overflow = "";} 
}
this._childDiv.style.position = "";this._childDiv.style.margin = "";if (startSize == this._collapsedSize) {
if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
this._childDiv.style.height = "auto";} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
this._childDiv.style.width = "auto";}
}
e.appendChild(this._childDiv);if (this._collapsed) {
startSize = this._getCollapsedSize();}
else {
startSize = this._getExpandedSize();}
if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical) {
e.style.height = startSize + "px";if (!this._expandedSize) {
e.style.height = "auto";}
else {
e.style.height = this._expandedSize + "px";}
this._childDiv.style.height = "auto";} else if (this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Horizontal) {
e.style.width = startSize + "px";if (!this._expandedSize) {
e.style.width = "auto";}
else {
e.style.width = this._expandedSize + "px";}
this._childDiv.style.width = "auto";} 
},
_setupState : function(isCollapsed) {
if (isCollapsed) { 
if (this._textLabelID && this._collapsedText) {
var e = $get(this._textLabelID);if (e) {
e.innerHTML = this._collapsedText;}
}
if (this._imageControlID && this._collapsedImage) {
var i = $get(this._imageControlID);if (i && i.src) {
i.src = this._collapsedImage;if (this._expandedText || this._collapsedText) {
i.title = this._collapsedText;}
}
} 
}
else { 
if (this._textLabelID && this._expandedText) {
var e = $get(this._textLabelID);if (e) {
e.innerHTML = this._expandedText;}
}
if (this._imageControlID && this._expandedImage) {
var i = $get(this._imageControlID);if (i && i.src) {
i.src = this._expandedImage;if (this._expandedText || this._collapsedText) {
i.title = this._expandedText;}
}
} 
} 
if (this._collapsed != isCollapsed) {
this._collapsed = isCollapsed;this.raisePropertyChanged('Collapsed');}
AjaxControlToolkit.CollapsiblePanelBehavior.callBaseMethod(this, 'set_ClientState', [this._collapsed.toString()]);},
_toggle : function(eventObj) {
if (this.get_Collapsed()) {
return this.expandPanel(eventObj);} else {
return this.collapsePanel(eventObj);}
},
add_collapsing : function(handler) {
this.get_events().addHandler('collapsing', handler);},
remove_collapsing : function(handler) {
this.get_events().removeHandler('collapsing', handler);},
raiseCollapsing : function(eventArgs) {
var handler = this.get_events().getHandler('collapsing');if (handler) {
handler(this, eventArgs);}
},
add_collapsed : function(handler) {
this.get_events().addHandler('collapsed', handler);},
remove_collapsed : function(handler) {
this.get_events().removeHandler('collapsed', handler);},
raiseCollapsed : function(eventArgs) {
var handler = this.get_events().getHandler('collapsed');if (handler) {
handler(this, eventArgs);}
},
add_collapseComplete : function(handler) {
this.get_events().addHandler('collapseComplete', handler);},
remove_collapseComplete : function(handler) {
this.get_events().removeHandler('collapseComplete', handler);},
raiseCollapseComplete : function() {
var handlers = this.get_events().getHandler('collapseComplete');if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
add_expanding : function(handler) {
this.get_events().addHandler('expanding', handler);},
remove_expanding : function(handler) {
this.get_events().removeHandler('expanding', handler);},
raiseExpanding : function(eventArgs) {
var handler = this.get_events().getHandler('expanding');if (handler) {
handler(this, eventArgs);}
},
add_expanded : function(handler) {
this.get_events().addHandler('expanded', handler);},
remove_expanded : function(handler) {
this.get_events().removeHandler('expanded', handler);},
raiseExpanded : function(eventArgs) {
var handler = this.get_events().getHandler('expanded');if (handler) {
handler(this, eventArgs);}
},
add_expandComplete : function(handler) {
this.get_events().addHandler('expandComplete', handler);},
remove_expandComplete : function(handler) {
this.get_events().removeHandler('expandComplete', handler);},
raiseExpandComplete : function() {
var handlers = this.get_events().getHandler('expandComplete');if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
get_TargetHeight : function() {
return this.get_element().offsetHeight;},
set_TargetHeight : function(value) { 
this.get_element().style.height = value + "px";this.raisePropertyChanged('TargetHeight');},
get_TargetWidth : function() {
return this.get_element().offsetWidth;},
set_TargetWidth : function(value) {
this.get_element().style.width = value + "px" 
this.raisePropertyChanged('TargetWidth');},
get_Collapsed : function() {
return this._collapsed;}, 
set_Collapsed : function(value) {
if (this.get_isInitialized() && this.get_element() && value != this.get_Collapsed()) {
this.togglePanel();}
else {
this._collapsed = value;this.raisePropertyChanged('Collapsed');}
},
get_CollapsedSize : function() {
return this._collapsedSize;},
set_CollapsedSize : function(value) {
if (this._collapsedSize != value) {
this._collapsedSize = value;this.raisePropertyChanged('CollapsedSize');}
},
get_ExpandedSize : function() {
return this._expandedSize;},
set_ExpandedSize : function(value) {
if (this._expandedSize != value) {
this._expandedSize = value;this.raisePropertyChanged('ExpandedSize');}
},
get_CollapseControlID : function() {
return this._collapseControlID;},
set_CollapseControlID : function(value) {
if (this._collapseControlID != value) {
this._collapseControlID = value;this.raisePropertyChanged('CollapseControlID');}
},
get_ExpandControlID : function() {
return this._expandControlID;}, 
set_ExpandControlID : function(value) {
if (this._expandControlID != value) {
this._expandControlID = value;this.raisePropertyChanged('ExpandControlID');}
},
get_ScrollContents : function() {
return this._scrollContents;},
set_ScrollContents : function(value) {
if (this._scrollContents != value) {
this._scrollContents = value;this.raisePropertyChanged('ScrollContents');}
},
get_SuppressPostBack : function() {
return this._suppressPostBack;},
set_SuppressPostBack : function(value) {
if (this._suppressPostBack != value) {
this._suppressPostBack = value;this.raisePropertyChanged('SuppressPostBack');}
},
get_TextLabelID : function() {
return this._textLabelID;},
set_TextLabelID : function(value) {
if (this._textLabelID != value) {
this._textLabelID = value;this.raisePropertyChanged('TextLabelID');}
},
get_ExpandedText : function() {
return this._expandedText;},
set_ExpandedText : function(value) {
if (this._expandedText != value) {
this._expandedText = value;this.raisePropertyChanged('ExpandedText');}
},
get_CollapsedText : function() {
return this._collapsedText;},
set_CollapsedText : function(value) {
if (this._collapsedText != value) {
this._collapsedText = value;this.raisePropertyChanged('CollapsedText');}
},
get_ImageControlID : function() {
return this._imageControlID;},
set_ImageControlID : function(value) {
if (this._imageControlID != value) {
this._imageControlID = value;this.raisePropertyChanged('ImageControlID');}
},
get_ExpandedImage : function() {
return this._expandedImage;},
set_ExpandedImage : function(value) {
if (this._expandedImage != value) {
this._expandedImage = value;this.raisePropertyChanged('ExpandedImage');}
},
get_CollapsedImage : function() {
return this._collapsedImage;},
set_CollapsedImage : function(value) {
if (this._collapsedImage != value) {
this._collapsedImage = value;this.raisePropertyChanged('CollapsedImage');}
},
get_AutoExpand : function() {
return this._autoExpand;},
set_AutoExpand : function(value) {
if (this._autoExpand != value) {
this._autoExpand = value;this.raisePropertyChanged('AutoExpand');}
},
get_AutoCollapse : function() {
return this._autoCollapse;},
set_AutoCollapse : function(value) {
if (this._autoCollapse != value) {
this._autoCollapse = value;this.raisePropertyChanged('AutoCollapse');}
}, 
get_ExpandDirection : function() {
return this._expandDirection == AjaxControlToolkit.CollapsiblePanelExpandDirection.Vertical;}, 
set_ExpandDirection : function(value) {
if (this._expandDirection != value) {
this._expandDirection = value;this.raisePropertyChanged('ExpandDirection');}
}
}
AjaxControlToolkit.CollapsiblePanelBehavior.registerClass('AjaxControlToolkit.CollapsiblePanelBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ConfirmButtonHiddenEventArgs = function(confirmed) {
AjaxControlToolkit.ConfirmButtonHiddenEventArgs.initializeBase(this);this._confirmed = confirmed;}
AjaxControlToolkit.ConfirmButtonHiddenEventArgs.prototype = {
get_confirmed : function() {
return this._confirmed;}
}
AjaxControlToolkit.ConfirmButtonHiddenEventArgs.registerClass('AjaxControlToolkit.ConfirmButtonHiddenEventArgs', Sys.EventArgs);AjaxControlToolkit.ConfirmButtonBehavior = function(element) {
AjaxControlToolkit.ConfirmButtonBehavior.initializeBase(this, [element]);this._ConfirmTextValue = null;this._OnClientCancelValue = null;this._ConfirmOnFormSubmit = false;this._displayModalPopupID = null;this._postBackScript = null;this._clickHandler = null;this._oldScript = null;}
AjaxControlToolkit.ConfirmButtonBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ConfirmButtonBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();this._clickHandler = Function.createDelegate(this, this._onClick);$addHandler(element, "click", this._clickHandler);this._oldScript = element.getAttribute("onclick");if (this._oldScript) { 
element.setAttribute("onclick", null);}
if (this._ConfirmOnFormSubmit && (typeof(WebForm_OnSubmit) == 'function') && !AjaxControlToolkit.ConfirmButtonBehavior._originalWebForm_OnSubmit) {
if (AjaxControlToolkit.TextBoxWatermarkBehavior && AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit) {
AjaxControlToolkit.ConfirmButtonBehavior._originalWebForm_OnSubmit = AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit;AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit = AjaxControlToolkit.ConfirmButtonBehavior.WebForm_OnSubmit;} else {
AjaxControlToolkit.ConfirmButtonBehavior._originalWebForm_OnSubmit = WebForm_OnSubmit;WebForm_OnSubmit = AjaxControlToolkit.ConfirmButtonBehavior.WebForm_OnSubmit;}
}
},
dispose : function() {
if (this._clickHandler) {
$removeHandler(this.get_element(), "click", this._clickHandler);this._clickHandler = null;}
if (this._oldScript) {
this.get_element().setAttribute("onclick", this._oldScript);this._oldScript = null;}
AjaxControlToolkit.ConfirmButtonBehavior.callBaseMethod(this, 'dispose');},
_onClick : function(e) {
if (this.get_element() && !this.get_element().disabled) {
if (this._ConfirmOnFormSubmit) {
AjaxControlToolkit.ConfirmButtonBehavior._clickedBehavior = this;} else {
if (!this._displayConfirmDialog()) {
e.preventDefault();return false;}
else if (this._oldScript) {
if (String.isInstanceOfType(this._oldScript)) {
eval(this._oldScript);}
else if (typeof(this._oldScript) == 'function'){
this._oldScript();} 
}
}
}
},
_displayConfirmDialog : function() {
var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()) {
return;}
if(this._displayModalPopupID) {
var mpe = $find(this._displayModalPopupID);if (!mpe) {
throw Error.argument('displayModalPopupID', String.format(AjaxControlToolkit.Resources.CollapsiblePanel_NoControlID, this._displayModalPopupID));}
mpe.set_OnOkScript("$find('"+this.get_id()+"')._handleConfirmDialogCompletion(true);");mpe.set_OnCancelScript("$find('"+this.get_id()+"')._handleConfirmDialogCompletion(false);");mpe.show();return false;} else {
var result = window.confirm(this._ConfirmTextValue);this._handleConfirmDialogCompletion(result);return result;}
},
_handleConfirmDialogCompletion : function(result) {
this.raiseHidden(new AjaxControlToolkit.ConfirmButtonHiddenEventArgs(result));if (result) {
if (this._postBackScript ) {
eval(this._postBackScript);}
} else {
if (this._OnClientCancelValue) {
window[this._OnClientCancelValue]();}
}
},
get_OnClientCancel : function (){
return this._OnClientCancelValue;},
set_OnClientCancel : function (value) {
if (this._OnClientCancelValue != value) {
this._OnClientCancelValue = value;this.raisePropertyChanged('OnClientCancel');}
},
get_ConfirmText : function() {
return this._ConfirmTextValue;},
set_ConfirmText : function(value) {
if (this._ConfirmTextValue != value) {
this._ConfirmTextValue = value;this.raisePropertyChanged('ConfirmText');}
},
get_ConfirmOnFormSubmit : function() {
return this._ConfirmOnFormSubmit;},
set_ConfirmOnFormSubmit : function(value) {
if (this._ConfirmOnFormSubmit != value) {
this._ConfirmOnFormSubmit = value;this.raisePropertyChanged('ConfirmOnFormSubmit');}
},
get_displayModalPopupID : function() {
return this._displayModalPopupID;},
set_displayModalPopupID : function(value) {
if (this._displayModalPopupID != value) {
this._displayModalPopupID = value;this.raisePropertyChanged('displayModalPopupID');}
},
get_postBackScript : function() {
return this._postBackScript;},
set_postBackScript : function(value) {
if (this._postBackScript != value) {
this._postBackScript = value;this.raisePropertyChanged('postBackScript');}
},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.ConfirmButtonBehavior.registerClass('AjaxControlToolkit.ConfirmButtonBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.ConfirmButtonBehavior.WebForm_OnSubmit = function() {
var result = AjaxControlToolkit.ConfirmButtonBehavior._originalWebForm_OnSubmit();if (result && AjaxControlToolkit.ConfirmButtonBehavior._clickedBehavior) {
result = AjaxControlToolkit.ConfirmButtonBehavior._clickedBehavior._displayConfirmDialog();}
AjaxControlToolkit.ConfirmButtonBehavior._clickedBehavior = null;return result;}

Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DropShadowBehavior = function(element) {
AjaxControlToolkit.DropShadowBehavior.initializeBase(this, [element]);this._opacity = 1.0;this._width = 5;this._shadowDiv = null;this._trackPosition = null;this._trackPositionDelay = 50;this._timer = null;this._tickHandler = null;this._roundedBehavior = null;this._shadowRoundedBehavior = null;this._rounded = false;this._radius = 5;this._lastX = null;this._lastY = null;this._lastW = null;this._lastH = null;}
AjaxControlToolkit.DropShadowBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.DropShadowBehavior.callBaseMethod(this, 'initialize');var e = this.get_element();if ($common.getCurrentStyle(e, 'position', e.style.position) != "absolute") {
e.style.position = "relative";}
if (this._rounded) {
this.setupRounded();}
if (this._trackPosition) {
this.startTimer();}
this.setShadow();},
dispose : function() {
this.stopTimer();this.disposeShadowDiv();AjaxControlToolkit.DropShadowBehavior.callBaseMethod(this, 'dispose');},
buildShadowDiv : function() {
var e = this.get_element();if (!this.get_isInitialized() || !e || !this._width) return;var div = document.createElement("DIV");div.style.backgroundColor = "black";div.style.position= "absolute";if (e.id) {
div.id = e.id + "_DropShadow";}
this._shadowDiv = div;e.parentNode.appendChild(div);if (this._rounded ) {
this._shadowDiv.style.height = Math.max(0, e.offsetHeight - (2*this._radius)) + "px";if (!this._shadowRoundedBehavior) {
this._shadowRoundedBehavior = $create(AjaxControlToolkit.RoundedCornersBehavior, {"Radius": this._radius}, null, null, this._shadowDiv);} else {
this._shadowRoundedBehavior.set_Radius(this._radius);}
} else if (this._shadowRoundedBehavior) {
this._shadowRoundedBehavior.set_Radius(0);}
if (this._opacity != 1.0) {
this.setupOpacity();}
this.setShadow(false, true);this.updateZIndex();},
disposeShadowDiv : function() {
if (this._shadowDiv) {
if (this._shadowDiv.parentNode) {
this._shadowDiv.parentNode.removeChild(this._shadowDiv);} 
this._shadowDiv = null;}
if (this._shadowRoundedBehavior) {
this._shadowRoundedBehavior.dispose();this._shadowRoundedBehavior = null;}
},
onTimerTick : function() {
this.setShadow();},
startTimer : function() {
if (!this._timer) {
if (!this._tickHandler) {
this._tickHandler = Function.createDelegate(this, this.onTimerTick);}
this._timer = new Sys.Timer();this._timer.set_interval(this._trackPositionDelay);this._timer.add_tick(this._tickHandler);this._timer.set_enabled(true);}
},
stopTimer : function() {
if (this._timer) {
this._timer.remove_tick(this._tickHandler);this._timer.set_enabled(false);this._timer.dispose();this._timer = null;}
},
setShadow : function(force, norecurse) {
var e = this.get_element();if (!this.get_isInitialized() || !e || (!this._width && !force)) return;var existingShadow = this._shadowDiv;if (!existingShadow) {
this.buildShadowDiv();}
var location = $common.getLocation(e);if (force || this._lastX != location.x || this._lastY != location.y || !existingShadow) {
this._lastX = location.x;this._lastY = location.y;var w = this.get_Width();if((e.parentNode.style.position == "absolute") || (e.parentNode.style.position == "fixed") )
{
location.x = w;location.y = w;}
else if (e.parentNode.style.position == "relative")
{
location.x = w;var paddingTop = e.parentNode.style.paddingTop;paddingTop = paddingTop.replace("px", "");var intPaddingTop = 0;intPaddingTop = parseInt(paddingTop);location.y = w + intPaddingTop;}
else
{
location.x += w;location.y += w;}
$common.setLocation(this._shadowDiv, location);}
var h = e.offsetHeight;var w = e.offsetWidth;if (force || h != this._lastH || w != this._lastW || !existingShadow) {
this._lastW = w;this._lastH = h;if (!this._rounded || !existingShadow || norecurse) {
this._shadowDiv.style.width = w + "px";this._shadowDiv.style.height = h + "px";} else {
this.disposeShadowDiv();this.setShadow();}
}
if (this._shadowDiv) {
this._shadowDiv.style.visibility = $common.getCurrentStyle(e, 'visibility');}
},
setupOpacity : function() {
if (this.get_isInitialized() && this._shadowDiv) {
$common.setElementOpacity(this._shadowDiv, this._opacity);}
},
setupRounded : function() {
if (!this._roundedBehavior && this._rounded) {
this._roundedBehavior = $create(AjaxControlToolkit.RoundedCornersBehavior, null, null, null, this.get_element());}
if (this._roundedBehavior) {
this._roundedBehavior.set_Radius(this._rounded ? this._radius : 0);}
},
updateZIndex : function() {
if (!this._shadowDiv) return;var e = this.get_element();var targetZIndex = e.style.zIndex;var shadowZIndex = this._shadowDiv.style.zIndex;if (shadowZIndex && targetZIndex && targetZIndex > shadowZIndex) {
return;} else {
targetZIndex = Math.max(2, targetZIndex);shadowZIndex = targetZIndex - 1;}
e.style.zIndex = targetZIndex;this._shadowDiv.style.zIndex = shadowZIndex;},
updateRoundedCorners : function() {
if (this.get_isInitialized()) {
this.setupRounded();this.disposeShadowDiv();this.setShadow();}
},
get_Opacity : function() {
return this._opacity;},
set_Opacity : function(value) {
if (this._opacity != value) {
this._opacity = value;this.setupOpacity();this.raisePropertyChanged('Opacity');}
},
get_Rounded : function() {
return this._rounded;},
set_Rounded : function(value) {
if (value != this._rounded) {
this._rounded = value;this.updateRoundedCorners();this.raisePropertyChanged('Rounded');}
},
get_Radius : function() {
return this._radius;},
set_Radius : function(value) {
if (value != this._radius) {
this._radius = value;this.updateRoundedCorners();this.raisePropertyChanged('Radius');}
},
get_Width : function() {
return this._width;},
set_Width : function(value) {
if (value != this._width) {
this._width = value;if (this._shadowDiv) {
$common.setVisible(this._shadowDiv, value > 0);}
this.setShadow(true);this.raisePropertyChanged('Width');}
},
get_TrackPositionDelay : function() {
return this._trackPositionDelay;},
set_TrackPositionDelay : function(value) {
if (value != this._trackPositionDelay) {
this._trackPositionDelay = value;if (this._trackPosition) {
this.stopTimer();this.startTimer();}
this.raisePropertyChanged('TrackPositionDelay');}
},
get_TrackPosition : function() {
return this._trackPosition;},
set_TrackPosition : function(value) {
if (value != this._trackPosition) {
this._trackPosition = value;if (this.get_element()) {
if (value) {
this.startTimer();} else {
this.stopTimer();}
}
this.raisePropertyChanged('TrackPosition');}
}
}
AjaxControlToolkit.DropShadowBehavior.registerClass('AjaxControlToolkit.DropShadowBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.HoverMenuBehavior = function(element) {
AjaxControlToolkit.HoverMenuBehavior.initializeBase(this, [element]);this._hoverBehavior = null;this._popupBehavior = null;this._mouseEnterHandler = null;this._mouseLeaveHandler = null;this._unhoverHandler = null;this._hoverHandler = null;this._inHover = null;this._oldClass = null;this._popupElement = null;this._onShowJson = null;this._onHideJson = null;this._popupElement = null;this._hoverCssClass = null;this._offsetX = 0;this._offsetY = 0;this._popDelay = 100;this._popupPosition = null;}
AjaxControlToolkit.HoverMenuBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.HoverMenuBehavior.callBaseMethod(this, 'initialize');this._hoverHandler = Function.createDelegate(this, this._onHover);this._unhoverHandler = Function.createDelegate(this, this._onUnhover);this._mouseEnterHandler = Function.createDelegate(this, this._onmouseover);this._mouseLeaveHandler = Function.createDelegate(this, this._onmouseout);var e = this.get_element();$addHandler(e, "mouseover", this._mouseEnterHandler);$addHandler(e, "mouseout", this._mouseLeaveHandler);if (this._popupElement) {
this._popupBehavior = $create(AjaxControlToolkit.PopupBehavior, { "id":this.get_id()+"_PopupBehavior" }, null, null, this._popupElement);if (this._popupPosition) {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.HoverMenuPopupPosition.Absolute);} else {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.HoverMenuPopupPosition.Center);}
if (this._onShowJson) {
this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._popupBehavior.set_onHide(this._onHideJson);}
this._hoverBehavior = $create(AjaxControlToolkit.HoverBehavior, { "id":this.get_id()+"_HoverBehavior", "unhoverDelay":this._popDelay, "hoverElement":this._popupElement }, null, null, e);this._hoverBehavior.add_hover(this._hoverHandler);this._hoverBehavior.add_unhover(this._unhoverHandler);}
},
dispose : function() {
this._onShowJson = null;this._onHideJson = null;if (this._popupBehavior) {
this._popupBehavior.dispose();this._popupBehavior = null;}
if (this._popupElement) { 
this._popupElement = null;}
if (this._mouseEnterHandler) {
$removeHandler(this.get_element(), "mouseover", this._mouseEnterHandler);}
if (this._mouseLeaveHandler) { 
$removeHandler(this.get_element(), "mouseout", this._mouseLeaveHandler);} 
if (this._hoverBehavior) {
if (this._hoverHandler) {
this._hoverBehavior.remove_hover(this._hoverHandler);this._hoverHandler = null;}
if (this._unhoverHandler) {
this._hoverBehavior.remove_hover(this._unhoverHandler);this._unhoverHandler = null;}
this._hoverBehavior.dispose();this._hoverBehavior = null;} 
AjaxControlToolkit.HoverMenuBehavior.callBaseMethod(this, 'dispose');},
_getLeftOffset : function() {
var defaultLeft = $common.getLocation(this.get_element()).x;var offsetLeft = $common.getLocation(this.get_popupElement().offsetParent).x;var delta = 0;switch(this._popupPosition) {
case AjaxControlToolkit.HoverMenuPopupPosition.Left:
delta = (-1 * this._popupElement.offsetWidth);break;case AjaxControlToolkit.HoverMenuPopupPosition.Right:
delta = this.get_element().offsetWidth;break;}
return delta + defaultLeft - offsetLeft + this._offsetX;},
_getTopOffset : function() {
var defaultTop = $common.getLocation(this.get_element()).y;var offsetTop = $common.getLocation(this.get_popupElement().offsetParent).y;var delta = 0;switch(this._popupPosition) {
case AjaxControlToolkit.HoverMenuPopupPosition.Top:
delta = (-1 * this._popupElement.offsetHeight);break;case AjaxControlToolkit.HoverMenuPopupPosition.Bottom:
delta = this.get_element().offsetHeight;break;}
return defaultTop - offsetTop + delta + this._offsetY;},
_onHover : function() {
if (this._inHover) return;var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._inHover = true;this.populate();this._popupBehavior.show();if ($common.getCurrentStyle(this._popupElement, 'display') == 'none') {
this._popupElement.style.display = 'block';}
this._popupBehavior.set_x(this._getLeftOffset());this._popupBehavior.set_y(this._getTopOffset());this.raiseShown(Sys.EventArgs.Empty);},
_onUnhover : function() {
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._inHover = false;this._resetCssClass();this._popupBehavior.hide();this.raiseHidden(Sys.EventArgs.Empty);},
_onmouseover : function() {
var e = this.get_element();if (this._hoverCssClass && e.className != this._hoverCssClass) {
this._oldClass = e.className;e.className = this._hoverCssClass;} 
},
_onmouseout : function() {
this._resetCssClass();},
_resetCssClass : function() {
var e = this.get_element();if (!this._inHover && this._hoverCssClass && e.className == this._hoverCssClass) {
e.className = this._oldClass;}
},
get_onShow : function() {
return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._popupBehavior) {
this._popupBehavior.onShow();}
},
get_onHide : function() {
return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._popupBehavior) {
this._popupBehavior.onHide();}
},
get_popupElement : function() {
return this._popupElement;},
set_popupElement : function(value) {
if (this._popupElement != value) {
this._popupElement = value;if (this.get_isInitialized() && this._hoverBehavior) {
this._hoverBehavior.set_hoverElement(this._popupElement);}
this.raisePropertyChanged('popupElement');}
},
get_HoverCssClass : function() {
return this._hoverCssClass;},
set_HoverCssClass : function(value) {
if (this._hoverCssClass != value) {
this._hoverCssClass = value;this.raisePropertyChanged('HoverCssClass');}
},
get_OffsetX : function() {
return this._offsetX;},
set_OffsetX : function(value) {
if (this._offsetX != value) {
this._offsetX = value;this.raisePropertyChanged('OffsetX');}
},
get_OffsetY : function() {
return this._offsetY;},
set_OffsetY : function(value) {
if (this._offsetY != value) {
this._offsetY = value;this.raisePropertyChanged('OffsetY');}
},
get_PopupPosition : function() {
return this._popupPosition;},
set_PopupPosition : function(value) {
if (this._popupPosition != value) {
this._popupPosition = value;this.raisePropertyChanged('PopupPosition');}
},
get_PopDelay : function() {
return this._popDelay;},
set_PopDelay : function(value) {
if (this._popDelay != value) {
this._popDelay = value;this.raisePropertyChanged('PopDelay');}
},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler('shown', handler);},
remove_shown : function(handler) {
this.get_events().removeHandler('shown', handler);},
raiseShown : function(eventArgs) {
var handler = this.get_events().getHandler('shown');if (handler) {
handler(this, eventArgs);}
},
add_hiding : function(handler) {
this.get_events().addHandler('hiding', handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler('hiding', handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.HoverMenuBehavior.registerClass('AjaxControlToolkit.HoverMenuBehavior', AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.HoverMenuPopupPosition = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.HoverMenuPopupPosition.prototype = {
Center: 0,
Top: 1,
Left: 2,
Bottom: 3,
Right: 4
}
AjaxControlToolkit.HoverMenuPopupPosition.registerEnum('AjaxControlToolkit.HoverMenuPopupPosition');
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ModalPopupRepositionMode = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.ModalPopupRepositionMode.prototype = {
None : 0,
RepositionOnWindowResize : 1,
RepositionOnWindowScroll : 2,
RepositionOnWindowResizeAndScroll : 3
}
AjaxControlToolkit.ModalPopupRepositionMode.registerEnum('AjaxControlToolkit.ModalPopupRepositionMode');AjaxControlToolkit.ModalPopupBehavior = function(element) {
AjaxControlToolkit.ModalPopupBehavior.initializeBase(this, [element]);this._PopupControlID = null;this._PopupDragHandleControlID = null;this._BackgroundCssClass = null;this._DropShadow = false;this._Drag = false;this._OkControlID = null;this._CancelControlID = null;this._OnOkScript = null;this._OnCancelScript = null;this._xCoordinate = -1;this._yCoordinate = -1;this._repositionMode = AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll;this._backgroundElement = null;this._foregroundElement = null;this._relativeOrAbsoluteParentElement = null;this._popupElement = null;this._dragHandleElement = null;this._showHandler = null;this._okHandler = null;this._cancelHandler = null;this._scrollHandler = null;this._resizeHandler = null;this._windowHandlersAttached = false;this._dropShadowBehavior = null;this._dragBehavior = null;this._isIE6 = false;this._saveTabIndexes = new Array();this._saveDesableSelect = new Array();this._tagWithTabIndex = new Array('A','AREA','BUTTON','INPUT','OBJECT','SELECT','TEXTAREA','IFRAME');}
AjaxControlToolkit.ModalPopupBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this, 'initialize');this._isIE6 = (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7);if(this._PopupDragHandleControlID)
this._dragHandleElement = $get(this._PopupDragHandleControlID);this._popupElement = $get(this._PopupControlID);if(this._DropShadow)
{
this._foregroundElement = document.createElement('div');this._foregroundElement.id = this.get_id() + '_foregroundElement';this._popupElement.parentNode.appendChild(this._foregroundElement);this._foregroundElement.appendChild(this._popupElement);}
else
{
this._foregroundElement = this._popupElement;}
this._backgroundElement = document.createElement('div');this._backgroundElement.id = this.get_id() + '_backgroundElement';this._backgroundElement.style.display = 'none';this._backgroundElement.style.position = 'fixed';this._backgroundElement.style.left = '0px';this._backgroundElement.style.top = '0px';this._backgroundElement.style.zIndex = 10000;if (this._BackgroundCssClass) {
this._backgroundElement.className = this._BackgroundCssClass;}
this._foregroundElement.parentNode.appendChild(this._backgroundElement);this._foregroundElement.style.display = 'none';this._foregroundElement.style.position = 'fixed';this._foregroundElement.style.zIndex = $common.getCurrentStyle(this._backgroundElement, 'zIndex', this._backgroundElement.style.zIndex) + 1;this._showHandler = Function.createDelegate(this, this._onShow);$addHandler(this.get_element(), 'click', this._showHandler);if (this._OkControlID) {
this._okHandler = Function.createDelegate(this, this._onOk);$addHandler($get(this._OkControlID), 'click', this._okHandler);}
if (this._CancelControlID) {
this._cancelHandler = Function.createDelegate(this, this._onCancel);$addHandler($get(this._CancelControlID), 'click', this._cancelHandler);}
this._scrollHandler = Function.createDelegate(this, this._onLayout);this._resizeHandler = Function.createDelegate(this, this._onLayout);this.registerPartialUpdateEvents();},
dispose : function() {
this._hideImplementation();if (this._foregroundElement && this._foregroundElement.parentNode) {
this._foregroundElement.parentNode.removeChild(this._backgroundElement);if(this._DropShadow) {
this._foregroundElement.parentNode.appendChild(this._popupElement);this._foregroundElement.parentNode.removeChild(this._foregroundElement);}
}
this._scrollHandler = null;this._resizeHandler = null;if (this._cancelHandler && $get(this._CancelControlID)) {
$removeHandler($get(this._CancelControlID), 'click', this._cancelHandler);this._cancelHandler = null;}
if (this._okHandler && $get(this._OkControlID)) {
$removeHandler($get(this._OkControlID), 'click', this._okHandler);this._okHandler = null;}
if (this._showHandler) {
$removeHandler(this.get_element(), 'click', this._showHandler);this._showHandler = null;}
AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this, 'dispose');},
_attachPopup : function() {
if (this._DropShadow && !this._dropShadowBehavior) {
this._dropShadowBehavior = $create(AjaxControlToolkit.DropShadowBehavior, {}, null, null, this._popupElement);}
if (this._dragHandleElement && !this._dragBehavior) {
this._dragBehavior = $create(AjaxControlToolkit.FloatingBehavior, {"handle" : this._dragHandleElement}, null, null, this._foregroundElement);} 
$addHandler(window, 'resize', this._resizeHandler);$addHandler(window, 'scroll', this._scrollHandler);this._windowHandlersAttached = true;},
_detachPopup : function() {
if (this._windowHandlersAttached) {
if (this._scrollHandler) {
$removeHandler(window, 'scroll', this._scrollHandler);}
if (this._resizeHandler) {
$removeHandler(window, 'resize', this._resizeHandler);}
this._windowHandlersAttached = false;}
if (this._dragBehavior) {
this._dragBehavior.dispose();this._dragBehavior = null;} 
if (this._dropShadowBehavior) {
this._dropShadowBehavior.dispose();this._dropShadowBehavior = null;}
},
_onShow : function(e) {
if (!this.get_element().disabled) {
this.show();e.preventDefault();return false;}
},
_onOk : function(e) {
var element = $get(this._OkControlID);if (element && !element.disabled) {
if (this.hide() && this._OnOkScript) {
window.setTimeout(this._OnOkScript, 0);}
e.preventDefault();return false;}
},
_onCancel : function(e) {
var element = $get(this._CancelControlID);if (element && !element.disabled) {
if (this.hide() && this._OnCancelScript) {
window.setTimeout(this._OnCancelScript, 0);}
e.preventDefault();return false;}
},
_onLayout : function(e) {
var positioning = this.get_repositionMode();if (((positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowScroll) ||
(positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll)) && (e.type === 'scroll')) {
this._layout();} else if (((positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResize) ||
(positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll)) && (e.type === 'resize')) {
this._layout();} else {
this._layoutBackgroundElement();}
},
show : function() {
var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()) {
return;}
this.populate();this._attachPopup();this._backgroundElement.style.display = '';this._foregroundElement.style.display = '';this._popupElement.style.display = '';if (this._isIE6) {
this._foregroundElement.style.position = 'absolute';this._backgroundElement.style.position = 'absolute';var tempRelativeOrAbsoluteParent = this._foregroundElement.parentNode;while (tempRelativeOrAbsoluteParent && (tempRelativeOrAbsoluteParent != document.documentElement)) {
if((tempRelativeOrAbsoluteParent.style.position != 'relative') && (tempRelativeOrAbsoluteParent.style.position != 'absolute')) {
tempRelativeOrAbsoluteParent = tempRelativeOrAbsoluteParent.parentNode;} else {
this._relativeOrAbsoluteParentElement = tempRelativeOrAbsoluteParent;break;}
} 
} 
this.disableTab();this._layout();this._layout();this.raiseShown(Sys.EventArgs.Empty);},
disableTab : function() {
var i = 0;var tagElements;var tagElementsInPopUp = new Array();Array.clear(this._saveTabIndexes);for (var j = 0;j < this._tagWithTabIndex.length;j++) {
tagElements = this._foregroundElement.getElementsByTagName(this._tagWithTabIndex[j]);for (var k = 0 ;k < tagElements.length;k++) {
tagElementsInPopUp[i] = tagElements[k];i++;}
}
i = 0;for (var j = 0;j < this._tagWithTabIndex.length;j++) {
tagElements = document.getElementsByTagName(this._tagWithTabIndex[j]);for (var k = 0 ;k < tagElements.length;k++) {
if (Array.indexOf(tagElementsInPopUp, tagElements[k]) == -1) {
this._saveTabIndexes[i] = {tag: tagElements[k], index: tagElements[k].tabIndex};tagElements[k].tabIndex="-1";i++;}
}
}
i = 0;if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)) {
var tagSelectInPopUp = new Array();for (var j = 0;j < this._tagWithTabIndex.length;j++) {
tagElements = this._foregroundElement.getElementsByTagName('SELECT');for (var k = 0 ;k < tagElements.length;k++) {
tagSelectInPopUp[i] = tagElements[k];i++;}
}
i = 0;Array.clear(this._saveDesableSelect);tagElements = document.getElementsByTagName('SELECT');for (var k = 0 ;k < tagElements.length;k++) {
if (Array.indexOf(tagSelectInPopUp, tagElements[k]) == -1) {
this._saveDesableSelect[i] = {tag: tagElements[k], visib: $common.getCurrentStyle(tagElements[k], 'visibility')} ;tagElements[k].style.visibility = 'hidden';i++;}
}
}
},
restoreTab : function() {
for (var i = 0;i < this._saveTabIndexes.length;i++) {
this._saveTabIndexes[i].tag.tabIndex = this._saveTabIndexes[i].index;}
Array.clear(this._saveTabIndexes);if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)) {
for (var k = 0 ;k < this._saveDesableSelect.length;k++) {
this._saveDesableSelect[k].tag.style.visibility = this._saveDesableSelect[k].visib;}
Array.clear(this._saveDesableSelect);}
},
hide : function() {
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return false;}
this._hideImplementation();this.raiseHidden(Sys.EventArgs.Empty);return true;},
_hideImplementation : function() {
this._backgroundElement.style.display = 'none';this._foregroundElement.style.display = 'none';this.restoreTab();this._detachPopup();},
_layout : function() {
var scrollLeft = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);var scrollTop = (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);var clientBounds = $common.getClientBounds();var clientWidth = clientBounds.width;var clientHeight = clientBounds.height;this._layoutBackgroundElement();var xCoord = 0;var yCoord = 0;if(this._xCoordinate < 0) {
var foregroundelementwidth = this._foregroundElement.offsetWidth? this._foregroundElement.offsetWidth: this._foregroundElement.scrollWidth;xCoord = ((clientWidth-foregroundelementwidth)/2);if (this._foregroundElement.style.position == 'absolute') {
xCoord += scrollLeft;}
this._foregroundElement.style.left = xCoord + 'px';} else {
if(this._isIE6) {
this._foregroundElement.style.left = (this._xCoordinate + scrollLeft) + 'px';xCoord = this._xCoordinate + scrollLeft;}
else {
this._foregroundElement.style.left = this._xCoordinate + 'px';xCoord = this._xCoordinate;}
}
if(this._yCoordinate < 0) {
var foregroundelementheight = this._foregroundElement.offsetHeight? this._foregroundElement.offsetHeight: this._foregroundElement.scrollHeight;yCoord = ((clientHeight-foregroundelementheight)/2);if (this._foregroundElement.style.position == 'absolute') {
yCoord += scrollTop;}
this._foregroundElement.style.top = yCoord + 'px';} else {
if(this._isIE6) {
this._foregroundElement.style.top = (this._yCoordinate + scrollTop) + 'px';yCoord = this._yCoordinate + scrollTop;}
else {
this._foregroundElement.style.top = this._yCoordinate + 'px';yCoord = this._yCoordinate;}
}
this._layoutForegroundElement(xCoord, yCoord);if (this._dropShadowBehavior) {
this._dropShadowBehavior.setShadow();window.setTimeout(Function.createDelegate(this, this._fixupDropShadowBehavior), 0);}
this._layoutBackgroundElement();},
_layoutForegroundElement : function(xCoord, yCoord) {
if (this._isIE6 && this._relativeOrAbsoluteParentElement) {
var foregroundLocation = $common.getLocation(this._foregroundElement);var relativeParentLocation = $common.getLocation(this._relativeOrAbsoluteParentElement);var getLocationXCoord = foregroundLocation.x;if (getLocationXCoord != xCoord) {
this._foregroundElement.style.left = (xCoord - relativeParentLocation.x) + 'px';} 
var getLocationYCoord = foregroundLocation.y;if (getLocationYCoord != yCoord) {
this._foregroundElement.style.top = (yCoord - relativeParentLocation.y) + 'px';} 
}
},
_layoutBackgroundElement : function() {
if(this._isIE6) { 
var backgroundLocation = $common.getLocation(this._backgroundElement);var backgroundXCoord = backgroundLocation.x;if (backgroundXCoord != 0) {
this._backgroundElement.style.left = (-backgroundXCoord) + 'px';} 
var backgroundYCoord = backgroundLocation.y;if (backgroundYCoord != 0) {
this._backgroundElement.style.top = (-backgroundYCoord) + 'px';} 
}
var clientBounds = $common.getClientBounds();var clientWidth = clientBounds.width;var clientHeight = clientBounds.height;this._backgroundElement.style.width = Math.max(Math.max(document.documentElement.scrollWidth, document.body.scrollWidth), clientWidth)+'px';this._backgroundElement.style.height = Math.max(Math.max(document.documentElement.scrollHeight, document.body.scrollHeight), clientHeight)+'px';},
_fixupDropShadowBehavior : function() {
if (this._dropShadowBehavior) {
this._dropShadowBehavior.setShadow();}
},
_partialUpdateEndRequest : function(sender, endRequestEventArgs) {
AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this, '_partialUpdateEndRequest', [sender, endRequestEventArgs]);if (this.get_element()) {
var action = endRequestEventArgs.get_dataItems()[this.get_element().id];if ("show" == action) {
this.show();} else if ("hide" == action) {
this.hide();}
}
this._layout();},
_onPopulated : function(sender, eventArgs) {
AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this, '_onPopulated', [sender, eventArgs]);this._layout();},
get_PopupControlID : function() {
return this._PopupControlID;},
set_PopupControlID : function(value) {
if (this._PopupControlID != value) {
this._PopupControlID = value;this.raisePropertyChanged('PopupControlID');}
},
get_X: function() {
return this._xCoordinate;},
set_X: function(value) {
if (this._xCoordinate != value) {
this._xCoordinate = value;this.raisePropertyChanged('X');}
},
get_Y: function() {
return this._yCoordinate;},
set_Y: function(value) {
if (this._yCoordinate != value) {
this._yCoordinate = value;this.raisePropertyChanged('Y');}
},
get_PopupDragHandleControlID : function() {
return this._PopupDragHandleControlID;},
set_PopupDragHandleControlID : function(value) {
if (this._PopupDragHandleControlID != value) {
this._PopupDragHandleControlID = value;this.raisePropertyChanged('PopupDragHandleControlID');}
},
get_BackgroundCssClass : function() {
return this._BackgroundCssClass;},
set_BackgroundCssClass : function(value) {
if (this._BackgroundCssClass != value) {
this._BackgroundCssClass = value;this.raisePropertyChanged('BackgroundCssClass');}
},
get_DropShadow : function() {
return this._DropShadow;},
set_DropShadow : function(value) {
if (this._DropShadow != value) {
this._DropShadow = value;this.raisePropertyChanged('DropShadow');}
},
get_Drag : function() {
return this._Drag;},
set_Drag : function(value) {
if (this._Drag != value) {
this._Drag = value;this.raisePropertyChanged('Drag');}
},
get_OkControlID : function() {
return this._OkControlID;},
set_OkControlID : function(value) {
if (this._OkControlID != value) {
this._OkControlID = value;this.raisePropertyChanged('OkControlID');}
},
get_CancelControlID : function() {
return this._CancelControlID;},
set_CancelControlID : function(value) {
if (this._CancelControlID != value) {
this._CancelControlID = value;this.raisePropertyChanged('CancelControlID');}
},
get_OnOkScript : function() {
return this._OnOkScript;},
set_OnOkScript : function(value) {
if (this._OnOkScript != value) {
this._OnOkScript = value;this.raisePropertyChanged('OnOkScript');}
},
get_OnCancelScript : function() {
return this._OnCancelScript;},
set_OnCancelScript : function(value) {
if (this._OnCancelScript != value) {
this._OnCancelScript = value;this.raisePropertyChanged('OnCancelScript');}
},
get_repositionMode : function() {
return this._repositionMode;},
set_repositionMode : function(value) {
if (this._repositionMode !== value) {
this._repositionMode = value;this.raisePropertyChanged('RepositionMode');}
},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler('shown', handler);},
remove_shown : function(handler) {
this.get_events().removeHandler('shown', handler);},
raiseShown : function(eventArgs) {
var handler = this.get_events().getHandler('shown');if (handler) {
handler(this, eventArgs);}
},
add_hiding : function(handler) {
this.get_events().addHandler('hiding', handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler('hiding', handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.ModalPopupBehavior.registerClass('AjaxControlToolkit.ModalPopupBehavior', AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.ModalPopupBehavior.invokeViaServer = function(behaviorID, show) {
var behavior = $find(behaviorID);if (behavior) {
if (show) {
behavior.show();} else {
behavior.hide();}
}
}

Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.NumericUpDownBehavior = function(element) {
AjaxControlToolkit.NumericUpDownBehavior.initializeBase(this, [element]);this._currentValue = null;this._widthValue = null;this._targetButtonUpIDValue = null;this._targetButtonDownIDValue = null;this._serviceUpPathValue = null;this._serviceUpMethodValue = null;this._serviceDownPathValue = null;this._serviceDownMethodValue = null;this._refValuesValue = null;this._tagValue = null;this._elementTextBox = null;this._step = 1.0;this._min = -1.79769313486232e308;this._max = 1.79769313486232e308;this._bUp = null;this._bDown = null;this._stepPrecision = 0;this._valuePrecision = 0;this._clickUpHandler = null;this._clickDownHandler = null;this._changeHandler = null;}
AjaxControlToolkit.NumericUpDownBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.NumericUpDownBehavior.callBaseMethod(this, 'initialize');$common.prepareHiddenElementForATDeviceUpdate();var e = this.get_element();this._elementTextBox = e;if ((this._refValuesValue) || (this._serviceUpMethodValue) || (this._serviceDownMethodValue)) {
this._elementTextBox.readOnly = true;} else {
this._elementTextBox.readOnly = false;}
this.readValue();this._changeHandler = Function.createDelegate(this, this._onChange);$addHandler(e, 'blur',this._changeHandler);if ((this._targetButtonUpIDValue == '') || (this._targetButtonDownIDValue == '')) {
this._widthValue = Math.max(this._widthValue, 24);e.style.width = (this._widthValue - 24) + 'px';e.style.textAlign = 'center';var _divContent = document.createElement('DIV');_divContent.style.position = 'relative';_divContent.style.width = this._widthValue + 'px';_divContent.style.fontSize = e.clientHeight + 'px';_divContent.style.height = e.clientHeight + 'px';_divContent.style.paddingRight = '24px';_divContent.style.display = 'inline';e.parentNode.insertBefore(_divContent,e);e.parentNode.removeChild(e);_divContent.appendChild(e);}
if (this._targetButtonUpIDValue == '') {
this._bUp = document.createElement('input');this._bUp.type = 'button';this._bUp.id = e.id + '_bUp';this._bUp.style.border = 'outset 1px';if (Sys.Browser.agent == Sys.Browser.InternetExplorer) {
this._bUp.style.fontFamily = 'Webdings';this._bUp.style.fontSize = '9pt';this._bUp.value = '5';this._bUp.style.top = '0px';} else {
this._bUp.style.fontFamily = 'Tahoma, Arial, sans-serif';this._bUp.style.fontSize = '5pt';this._bUp.value = '\u25B2';this._bUp.style.top = '2px';this._bUp.style.fontWeight = 'bold';this._bUp.style.lineHeight = '3pt';}
this._bUp.style.height = '12px';this._bUp.style.left = (this._widthValue - 24) + 'px';this._bUp.style.width = '24px';this._bUp.style.overflow = 'hidden';this._bUp.style.lineHeight = '1em';this._bUp.style.position = 'absolute';_divContent.appendChild(this._bUp);}
if (this._targetButtonDownIDValue == '') {
this._bDown = document.createElement('input');this._bDown.type = 'button';this._bDown.id = e.id + '_bDown';this._bDown.style.border = 'outset 1px';if (Sys.Browser.agent == Sys.Browser.InternetExplorer) {
this._bDown.value = '6';this._bDown.style.fontFamily = 'Webdings';this._bDown.style.fontSize = '9pt';this._bDown.style.top = '12px';} else {
this._bDown.value = '\u25BC';this._bDown.style.fontFamily = 'Tahoma, Arial, sans-serif';this._bDown.style.fontSize = '5pt';this._bDown.style.fontWeight = 'bold';this._bDown.style.top = '13px';} 
this._bDown.style.height = '11px';this._bDown.style.lineHeight = '3pt';this._bDown.style.left = (this._widthValue - 24) + 'px';this._bDown.style.width = '24px';this._bDown.style.overflow = 'hidden';this._bDown.style.position = 'absolute';_divContent.appendChild(this._bDown);}
if (this._bUp == null) {
this._bUp = document.getElementById(this._targetButtonUpIDValue);}
if (this._bUp) {
this._clickUpHandler = Function.createDelegate(this, this._clickUp);$addHandler(this._bUp, 'click',this._clickUpHandler);}
if (this._bDown == null) {
this._bDown = document.getElementById(this._targetButtonDownIDValue);}
if (this._bDown) {
this._clickDownHandler = Function.createDelegate(this, this._clickDown);$addHandler(this._bDown, 'click',this._clickDownHandler);} 
},
dispose : function() {
if (this._changeHandler) {
$removeHandler(this.get_element(), 'blur', this._changeHandler);this._changeHandler = null;}
if (this._clickUpHandler) {
if (this._bUp) {
$removeHandler(this._bUp, 'click', this._clickUpHandler);this._clickUpHandler = null;}
}
if (this._clickDownHandler) {
if (this._bDown) {
$removeHandler(this._bDown, 'click', this._clickDownHandler);this._clickDownHandler = null;}
}
AjaxControlToolkit.NumericUpDownBehavior.callBaseMethod(this, 'dispose');},
add_currentChanged : function(handler) {
this.get_events().addHandler('currentChanged', handler);},
remove_currentChanged : function(handler) {
this.get_events().removeHandler('currentChanged', handler);},
raiseCurrentChanged : function(eventArgs) {
var handler = this.get_events().getHandler('currentChanged');if (handler) {
if (!eventArgs) {
eventArgs = Sys.EventArgs.Empty;}
handler(this, eventArgs);}
},
_onChange : function() {
this.readValue();if(this._refValuesValue) {
this.setCurrentToTextBox(this._refValuesValue[this._currentValue]);if (this._elementTextBox) {
this._elementTextBox.readOnly = true;}
} else {
this.setCurrentToTextBox(this._currentValue);if (this._elementTextBox) {
this._elementTextBox.readOnly = this._serviceUpMethodValue || this._serviceDownMethodValue;}
}
},
readValue : function() {
if (this._elementTextBox) {
var v = this._elementTextBox.value;if(!this._refValuesValue) {
if(!v) {
this._currentValue = this._min;} else {
try {
this._currentValue = parseFloat(v);} catch(ex) {
this._currentValue = this._min;}
}
if(isNaN(this._currentValue)) {
this._currentValue = this._min;}
this.setCurrentToTextBox(this._currentValue);this._valuePrecision = this._computePrecision(this._currentValue);} else {
if(!v) {
this._currentValue = 0;} else {
var find = 0;for (var i = 0;i < this._refValuesValue.length;i++) {
if (v.toLowerCase() == this._refValuesValue[i].toLowerCase()) {
find = i;}
}
this._currentValue = find;}
this.setCurrentToTextBox(this._refValuesValue[this._currentValue]);}
}
}, 
setCurrentToTextBox : function(value) {
if (this._elementTextBox) {
this._elementTextBox.value = value;this.raiseCurrentChanged(value);if (document.createEvent) {
var onchangeEvent = document.createEvent('HTMLEvents');onchangeEvent.initEvent('change', true, false);this._elementTextBox.dispatchEvent(onchangeEvent);} else if( document.createEventObject ) {
this._elementTextBox.fireEvent('onchange');}
}
},
_incrementValue : function(step) {
var tmp = parseFloat((this._currentValue + step).toFixed(Math.max(this._stepPrecision, this._valuePrecision)));if (step > 0) {
this._currentValue = Math.max(Math.min(tmp, this._max), this._min);} else {
this._currentValue = Math.min(Math.max(tmp, this._min), this._max);} 
},
_computePrecision : function(value) {
if (value == Number.Nan) {
return this._min;}
var str = value.toString();if (str) {
var fractionalPart = /\.(\d*)$/;var matches = str.match(fractionalPart);if (matches && matches.length == 2 && matches[1]) {
return matches[1].length;}
}
return this._min;},
get_Width : function() {
return this._widthValue;},
set_Width : function(value) {
if (this._widthValue != value) {
this._widthValue = value;this.raisePropertyChanged('Width');}
},
get_Tag : function() {
return this._tagValue;},
set_Tag : function(value) {
if (this._tagValue != value) {
this._tagValue = value;this.raisePropertyChanged('Tag');}
},
get_TargetButtonUpID : function() {
return this._targetButtonUpIDValue;},
set_TargetButtonUpID : function(value) {
if (this._targetButtonUpIDValue != value) {
this._targetButtonUpIDValue = value;this.raisePropertyChanged('TargetButtonUpID');}
},
get_TargetButtonDownID : function() {
return this._targetButtonDownIDValue;},
set_TargetButtonDownID : function(value) {
if (this._targetButtonDownIDValue != value) {
this._targetButtonDownIDValue = value;this.raisePropertyChanged('TargetButtonDownID');}
},
get_ServiceUpPath : function() {
return this._serviceUpPathValue;},
set_ServiceUpPath : function(value) {
if (this._serviceUpPathValue != value) {
this._serviceUpPathValue = value;this.raisePropertyChanged('ServiceUpPath');}
},
get_ServiceUpMethod : function() {
return this._serviceUpMethodValue;},
set_ServiceUpMethod : function(value) {
if (this._serviceUpMethodValue != value) {
this._serviceUpMethodValue = value;this.raisePropertyChanged('ServiceUpMethod');if (this._elementTextBox)
this._elementTextBox.readOnly = true;}
},
get_ServiceDownPath : function() {
return this._serviceDownPathValue;},
set_ServiceDownPath : function(value) {
if (this._serviceDownPathValue != value) {
this._serviceDownPathValue = value;this.raisePropertyChanged('ServiceDownPath');}
},
get_ServiceDownMethod : function() {
return this._serviceDownMethodValue;},
set_ServiceDownMethod : function(value) {
if (this._serviceDownMethodValue != value) {
this._serviceDownMethodValue = value;this.raisePropertyChanged('ServiceDownMethod');if (this._elementTextBox)
this._elementTextBox.readOnly = true;}
},
get_RefValues : function() {
return this._refValuesValue ? this._refValuesValue.join(";") : "";},
set_RefValues : function(value) {
if (value != '') {
this._refValuesValue = value.split(';');this._onChange();if (this._elementTextBox) {
this._elementTextBox.readOnly = true;}
} else {
this._refValuesValue = null;if (this._elementTextBox) {
this._elementTextBox.readOnly = false;}
}
this.raisePropertyChanged('RefValues');},
get_Step : function() {
return this._step;},
set_Step : function(value) {
if (value != this._step) {
this._step = value;this._stepPrecision = this._computePrecision(value);this.raisePropertyChanged('Step');}
},
get_Minimum : function() {
return this._min;},
set_Minimum : function(value) {
if (value != this._min) {
this._min = value;this.raisePropertyChanged('Minimum');}
},
get_Maximum : function() {
return this._max;},
set_Maximum : function(value) {
if (value != this._max) {
this._max = value;this.raisePropertyChanged('Maximum');}
},
_clickUp : function(evt) {
this.readValue();if (this._serviceUpPathValue && this._serviceUpMethodValue) {
Sys.Net.WebServiceProxy.invoke(this._serviceUpPathValue, this._serviceUpMethodValue, false,
{ current:this._currentValue, tag:this._tagValue },
Function.createDelegate(this, this._onMethodUpDownComplete));$common.updateFormToRefreshATDeviceBuffer();} else {
if (this._refValuesValue) {
if ((this._currentValue + 1) < this._refValuesValue.length) {
this._currentValue = this._currentValue + 1;this.setCurrentToTextBox(this._refValuesValue[this._currentValue]);}
} else {
this._incrementValue(this._step);this.setCurrentToTextBox(this._currentValue);}
}
if (evt) {
evt.preventDefault();} 
return false;}, 
_clickDown : function(evt) {
this.readValue();if (this._serviceDownPathValue && this._serviceDownMethodValue) {
Sys.Net.WebServiceProxy.invoke(this._serviceDownPathValue, this._serviceDownMethodValue, false,
{ current:this._currentValue, tag:this._tagValue },
Function.createDelegate(this, this._onMethodUpDownComplete));$common.updateFormToRefreshATDeviceBuffer();} else {
if (this._refValuesValue) {
if ((this._currentValue - 1) >= 0) {
this._currentValue = this._currentValue - 1;this.setCurrentToTextBox(this._refValuesValue[this._currentValue]);}
} else {
this._incrementValue(-this._step);this.setCurrentToTextBox(this._currentValue);}
} 
if (evt) {
evt.preventDefault();} 
return false;},
_onMethodUpDownComplete : function(result, userContext, methodName) {
this._currentValue = result;this.setCurrentToTextBox(this._currentValue);}
}
AjaxControlToolkit.NumericUpDownBehavior.registerClass('AjaxControlToolkit.NumericUpDownBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.PopupControlBehavior = function(element) {
AjaxControlToolkit.PopupControlBehavior.initializeBase(this, [element]);this._popupControlID = null;this._commitProperty = null;this._commitScript = null;this._position = null;this._offsetX = 0;this._offsetY = 0;this._extenderControlID = null;this._popupElement = null;this._popupBehavior = null;this._popupVisible = false;this._focusHandler = null;this._popupKeyDownHandler = null;this._popupClickHandler = null;this._bodyClickHandler = null;this._onShowJson = null;this._onHideJson = null;}
AjaxControlToolkit.PopupControlBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this, 'initialize');var e = this.get_element();this._popupElement = $get(this._popupControlID);this._popupBehavior = $create(AjaxControlToolkit.PopupBehavior, { 'id':this.get_id()+'PopupBehavior', 'parentElement':e }, null, null, this._popupElement);if (this._onShowJson) {
this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._popupBehavior.set_onHide(this._onHideJson);}
this._focusHandler = Function.createDelegate(this, this._onFocus);this._popupClickHandler = Function.createDelegate(this, this._onPopupClick);this._bodyClickHandler = Function.createDelegate(this, this._onBodyClick);this._popupKeyDownHandler = Function.createDelegate(this, this._onPopupKeyDown);$addHandler(e, 'focus', this._focusHandler);$addHandler(e, 'click', this._focusHandler);$addHandler(document.body, 'click', this._bodyClickHandler);$addHandler(this._popupElement, 'click', this._popupClickHandler);$addHandler(this._popupElement, 'keydown', this._popupKeyDownHandler);this.registerPartialUpdateEvents();if(AjaxControlToolkit.PopupControlBehavior.__VisiblePopup && (this.get_id() == AjaxControlToolkit.PopupControlBehavior.__VisiblePopup.get_id())) {
this._onFocus(null);}
},
dispose : function() {
var e = this.get_element();this._onShowJson = null;this._onHideJson = null;if (this._popupBehavior) {
this._popupBehavior.dispose();this._popupBehavior = null;}
if (this._focusHandler) {
$removeHandler(e, 'focus', this._focusHandler);$removeHandler(e, 'click', this._focusHandler);this._focusHandler = null;}
if (this._bodyClickHandler) {
$removeHandler(document.body, 'click', this._bodyClickHandler);this._bodyClickHandler = null;}
if (this._popupClickHandler) {
$removeHandler(this._popupElement, 'click', this._popupClickHandler);this._popupClickHandler = null;}
if (this._popupKeyDownHandler) {
$removeHandler(this._popupElement, 'keydown', this._popupKeyDownHandler);this._popupKeyDownHandler = null;}
AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this, 'dispose');},
showPopup : function() {
var old = AjaxControlToolkit.PopupControlBehavior.__VisiblePopup;if (old && old._popupBehavior) {
old.hidePopup();}
AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this, 'populate');this._popupBehavior.set_x(this._getLeftOffset());this._popupBehavior.set_y(this._getTopOffset());this._popupBehavior.show();this._popupVisible = true;AjaxControlToolkit.PopupControlBehavior.__VisiblePopup = this;},
hidePopup : function() {
this._popupBehavior.hide();this._popupVisible = false;AjaxControlToolkit.PopupControlBehavior.__VisiblePopup = null;},
_onFocus : function(e) {
if (!this._popupVisible) {
this.showPopup();}
if (e) {
e.stopPropagation();}
},
_onPopupKeyDown : function(e) {
if (this._popupVisible && e.keyCode == 27 ) {
this.get_element().focus();}
},
_onPopupClick : function(e) {
e.stopPropagation();},
_onBodyClick : function() {
if (this._popupVisible) {
this.hidePopup();}
},
_close : function(result) {
var e = this.get_element();if (null != result) {
if ('$$CANCEL$$' != result) {
if (this._commitProperty) {
e[this._commitProperty] = result;} else if ('text' == e.type) {
e.value = result;} else {
Sys.Debug.assert(false, String.format(AjaxControlToolkit.Resources.PopupControl_NoDefaultProperty, e.id, e.type));}
if (this._commitScript) {
eval(this._commitScript);}
}
this.hidePopup();}
},
_partialUpdateEndRequest : function(sender, endRequestEventArgs) {
AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this, '_partialUpdateEndRequest', [sender, endRequestEventArgs]);if (this.get_element()) {
var result = endRequestEventArgs.get_dataItems()[this.get_element().id];if ((undefined === result) &&
AjaxControlToolkit.PopupControlBehavior.__VisiblePopup &&
(this.get_id() == AjaxControlToolkit.PopupControlBehavior.__VisiblePopup.get_id())) {
result = endRequestEventArgs.get_dataItems()["_PopupControl_Proxy_ID_"];}
if (undefined !== result) {
this._close(result);}
}
},
_onPopulated : function(sender, eventArgs) {
AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this, '_onPopulated', [sender, eventArgs]);if (this._popupVisible) {
this._popupBehavior.show();}
},
_getLeftOffset : function() {
if (AjaxControlToolkit.PopupControlPopupPosition.Left == this._position) {
return (-1 * this.get_element().offsetWidth) + this._offsetX;} else if (AjaxControlToolkit.PopupControlPopupPosition.Right == this._position) {
return this.get_element().offsetWidth + this._offsetX;} else {
return this._offsetX;}
},
_getTopOffset : function() {
var yoffSet;if(AjaxControlToolkit.PopupControlPopupPosition.Top == this._position) {
yoffSet = (-1 * this.get_element().offsetHeight) + this._offsetY;} else if (AjaxControlToolkit.PopupControlPopupPosition.Bottom == this._position) {
yoffSet = this.get_element().offsetHeight + this._offsetY;} else {
yoffSet = this._offsetY;}
return yoffSet;},
get_onShow : function() {
return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._popupBehavior) {
this._popupBehavior.onShow();}
},
get_onHide : function() {
return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._popupBehavior) {
this._popupBehavior.onHide();}
},
get_PopupControlID : function() {
return this._popupControlID;},
set_PopupControlID : function(value) {
if (this._popupControlID != value) { 
this._popupControlID = value;this.raisePropertyChanged('PopupControlID');}
},
get_CommitProperty : function() {
return this._commitProperty;},
set_CommitProperty : function(value) {
if (this._commitProperty != value) {
this._commitProperty = value;this.raisePropertyChanged('CommitProperty');}
},
get_CommitScript : function() {
return this._commitScript;},
set_CommitScript : function(value) {
if (this._commitScript != value) {
this._commitScript = value;this.raisePropertyChanged('CommitScript');}
},
get_Position : function() {
return this._position;},
set_Position : function(value) {
if (this._position != value) {
this._position = value;this.raisePropertyChanged('Position');}
},
get_ExtenderControlID : function() {
return this._extenderControlID;},
set_ExtenderControlID : function(value) {
if (this._extenderControlID != value) {
this._extenderControlID = value;this.raisePropertyChanged('ExtenderControlID');}
},
get_OffsetX : function() {
return this._offsetX;},
set_OffsetX : function(value) {
if (this._offsetX != value) {
this._offsetX = value;this.raisePropertyChanged('OffsetX');}
},
get_OffsetY : function() {
return this._offsetY;},
set_OffsetY : function(value) {
if (this._offsetY != value) {
this._offsetY = value;this.raisePropertyChanged('OffsetY');}
},
get_PopupVisible : function() {
return this._popupVisible;}
}
AjaxControlToolkit.PopupControlBehavior.registerClass('AjaxControlToolkit.PopupControlBehavior', AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.PopupControlBehavior.__VisiblePopup = null;AjaxControlToolkit.PopupControlPopupPosition = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.PopupControlPopupPosition.prototype = {
Center : 0,
Top : 1,
Left : 2,
Bottom : 3,
Right : 4
}
AjaxControlToolkit.PopupControlPopupPosition.registerEnum("AjaxControlToolkit.PopupControlPopupPosition", false);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.RepeatDirection = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.RepeatDirection.prototype = {
Vertical: 0,
Horizontal: 1
}
AjaxControlToolkit.RepeatDirection.registerEnum('AjaxControlToolkit.RepeatDirection');AjaxControlToolkit.DragDropList = function(associatedElement) {
AjaxControlToolkit.DragDropList.initializeBase(this, [associatedElement]);this._acceptedDataTypes = [];this._isDragging = null;this._dataType = null;this._dragMode = AjaxControlToolkit.DragMode.Move;this._dragVisual = null;this._direction = AjaxControlToolkit.RepeatDirection.Vertical;this._emptyTemplate = null;this._emptyTemplateInstance = null;this._dropCueTemplate = null;this._dropCueTemplateInstance = null;this._floatContainerInstance = null;this._originalParent = null;this._originalNextSibling = null;this._originalZIndex = null;this._currentContext = null;this._data = null;}
AjaxControlToolkit.DragDropList.IsValidDataType = function(dataType) {
if (dataType && typeof(dataType) == 'string' && dataType.length >= 4) {
return dataType.substring(0, 4) === "HTML";}
return false;} 
AjaxControlToolkit.DragDropList.prototype = {
get_data: function() {
return this._data;},
set_data: function(value) {
this._data = value;},
initialize: function() {
AjaxControlToolkit.DragDropList.callBaseMethod(this, 'initialize');this.get_element().__dragDropList = this;AjaxControlToolkit.DragDropManager.registerDropTarget(this);},
startDragDrop: function(dragObject, context, dragVisual) {
if (!this._isDragging) {
this._isDragging = true;this._currentContext = context;if (!dragVisual) {
dragVisual = this.createDragVisual(dragObject);}
else {
this._dragVisual = dragVisual;}
AjaxControlToolkit.DragDropManager.startDragDrop(this, dragVisual, context);}
},
createDragVisual: function(dragObject) {
if (this._dragMode === AjaxControlToolkit.DragMode.Copy) {
this._dragVisual = dragObject.cloneNode(true);}
else {
this._dragVisual = dragObject;}
var oldOffset = AjaxControlToolkit.DragDropManager._getInstance().getScrollOffset(dragObject, true);this._dragVisual.preDragWidth = this._dragVisual.style.width;this._dragVisual.preDragHeight = this._dragVisual.style.height;this._dragVisual.style.width = dragObject.offsetWidth + "px";this._dragVisual.style.height = dragObject.offsetHeight + "px";this._dragVisual.style.opacity = "0.4";this._dragVisual.style.filter = "progid:DXImageTransform.Microsoft.BasicImage(opacity=0.4);";this._originalZIndex = this._dragVisual.style.zIndex;this._dragVisual.style.zIndex = 99999;this._originalParent = this._dragVisual.parentNode;this._originalNextSibling = AjaxControlToolkit.DragDropManager._getInstance().getNextSibling(this._dragVisual);var currentLocation = $common.getLocation(dragObject);var dragVisualContainer = this._getFloatContainer();$common.setLocation(dragVisualContainer, currentLocation);if (AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._dragVisual)) {
this._dragVisual.parentNode.removeChild(this._dragVisual);}
dragVisualContainer.appendChild(this._dragVisual);var newOffset = AjaxControlToolkit.DragDropManager._getInstance().getScrollOffset(dragObject, true);if (oldOffset.x !== newOffset.x || oldOffset.y !== newOffset.y) {
var diff = AjaxControlToolkit.DragDropManager._getInstance().subtractPoints(oldOffset, newOffset);var location = AjaxControlToolkit.DragDropManager._getInstance().subtractPoints(currentLocation, diff);$common.setLocation(dragVisualContainer, location);}
return dragVisualContainer;},
get_emptyTemplate: function() {
return this._emptyTemplate;},
set_emptyTemplate: function(value) {
this._emptyTemplate = value;},
get_dragDataType: function() {
return this._dataType;},
set_dragDataType: function(value) {
this._dataType = value;},
getDragData: function(context) {
return context;},
get_dragMode: function() {
return this._dragMode;},
set_dragMode: function(value) {
this._dragMode = value;},
dispose: function() {
AjaxControlToolkit.DragDropManager.unregisterDropTarget(this);this.get_element().__dragDropList = null;AjaxControlToolkit.DragDropList.callBaseMethod(this, 'dispose');},
onDragStart: function() {
this._validate();},
onDrag: function() {
},
onDragEnd: function(cancelled) {
if (this._floatContainerInstance) {
if (this._dragMode === AjaxControlToolkit.DragMode.Copy) {
this._floatContainerInstance.removeChild(this._dragVisual);}
else {
this._dragVisual.style.opacity = "0.999";this._dragVisual.style.filter = "";this._dragVisual.style.zIndex = this._originalZIndex ? this._originalZIndex : 0;if (this._dragVisual.preDragWidth != null) {
this._dragVisual.style.width = this._dragVisual.preDragWidth;this._dragVisual.preDragWidth = null;}
if (this._dragVisual.preDragHeight != null) {
this._dragVisual.style.height = this._dragVisual.preDragHeight;this._dragVisual.preDragHeight = null;} 
if (cancelled) {
this._dragVisual.parentNode.removeChild(this._dragVisual);if (this._originalNextSibling != null) {
this._originalParent.insertBefore(this._dragVisual, this._originalNextSibling);}
else {
this._originalParent.appendChild(this._dragVisual);}
}
else {
if (this._dragVisual.parentNode === this._floatContainerInstance) {
this._dragVisual.parentNode.removeChild(this._dragVisual);}
}
}
document.body.removeChild(this._floatContainerInstance);}
else {
this._dragVisual.parentNode.removeChild(this._dragVisual);}
if (!cancelled && this._data && this._dragMode === AjaxControlToolkit.DragMode.Move) {
var data = this.getDragData(this._currentContext);if (this._data && data) {
Array.remove(this._data, data);}
}
this._isDragging = false;this._validate();},
get_direction: function() {
return this._direction;},
set_direction: function(value) {
this._direction = value;},
get_acceptedDataTypes: function() {
return this._acceptedDataTypes;},
set_acceptedDataTypes: function(value) {
if (typeof(value) == "string") {
this._acceptedDataTypes = value.split(",");}
else {
this._acceptedDataTypes = value;}
},
get_dropCueTemplate: function() {
return this._dropCueTemplate;},
set_dropCueTemplate: function(value) {
this._dropCueTemplate = value;},
get_dropTargetElement: function() {
return this.get_element();},
canDrop: function(dragMode, dataType, data) {
for (var i = 0;i < this._acceptedDataTypes.length;i++) {
if (this._acceptedDataTypes[i] === dataType) {
return true;}
}
return false;},
drop: function(dragMode, dataType, data) {
if (AjaxControlToolkit.DragDropList.IsValidDataType(dataType) && dragMode === AjaxControlToolkit.DragMode.Move) {
dragVisual = data;var potentialNextSibling = this._findPotentialNextSibling(dragVisual);this._setDropCueVisible(false, dragVisual);dragVisual.parentNode.removeChild(dragVisual);if (potentialNextSibling) {
this.get_element().insertBefore(dragVisual, potentialNextSibling);}
else {
this.get_element().appendChild(dragVisual);}
}
else {
this._setDropCueVisible(false);}
},
onDragEnterTarget: function(dragMode, dataType, data) {
if (AjaxControlToolkit.DragDropList.IsValidDataType(dataType)) {
this._setDropCueVisible(true, data);this._validate();}
},
onDragLeaveTarget: function(dragMode, dataType, data) {
if (AjaxControlToolkit.DragDropList.IsValidDataType(dataType)) {
this._setDropCueVisible(false);this._validate();}
},
onDragInTarget: function(dragMode, dataType, data) {
if (AjaxControlToolkit.DragDropList.IsValidDataType(dataType)) {
this._setDropCueVisible(true, data);}
},
_setDropCueVisible: function(visible, dragVisual) {
if (this._dropCueTemplate) {
if (visible) {
if (!this._dropCueTemplateInstance) {
var documentContext = document.createDocumentFragment();this._dropCueTemplateInstance = this._dropCueTemplate.cloneNode(true);}
var potentialNextSibling = this._findPotentialNextSibling(dragVisual);if (!AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._dropCueTemplateInstance)) {
if (potentialNextSibling) {
this.get_element().insertBefore(this._dropCueTemplateInstance, potentialNextSibling);}
else {
this.get_element().appendChild(this._dropCueTemplateInstance);}
this._dropCueTemplateInstance.style.width = dragVisual.offsetWidth + "px";this._dropCueTemplateInstance.style.height = dragVisual.offsetHeight + "px";}
else {
if (AjaxControlToolkit.DragDropManager._getInstance().getNextSibling(this._dropCueTemplateInstance) !== potentialNextSibling) {
this.get_element().removeChild(this._dropCueTemplateInstance);if (potentialNextSibling) {
this.get_element().insertBefore(this._dropCueTemplateInstance, potentialNextSibling);}
else {
this.get_element().appendChild(this._dropCueTemplateInstance);}
}
}
}
else {
if (this._dropCueTemplateInstance && AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._dropCueTemplateInstance)) {
this.get_element().removeChild(this._dropCueTemplateInstance);}
}
}
},
_findPotentialNextSibling: function(dragVisual) {
var dragVisualRect = $common.getBounds(dragVisual);var isVertical = (this._direction === 0 );var nodeRect;for (var node = this.get_element().firstChild;node !== null;node = node.nextSibling) {
if (node.innerHTML && node !== this._dropCueTemplateInstance && node !== this._emptyTemplateInstance) {
nodeRect = $common.getBounds(node);if ((!isVertical && dragVisualRect.x <= nodeRect.x) || (isVertical && dragVisualRect.y <= nodeRect.y)) {
return node;}
}
}
return null;},
_validate: function() {
var visible = (this._dropCueTemplateInstance == null || !AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._dropCueTemplateInstance));var count = 0;for (var node = this.get_element().firstChild;node !== null;node = node.nextSibling) {
if (node.innerHTML && node !== this._emptyTemplateInstance && node !== this._dropCueTemplateInstance) {
count++;}
}
if (count > 0) {
visible = false;}
this._setEmptyTemplateVisible(visible);},
_setEmptyTemplateVisible: function(visible) {
if (this._emptyTemplate) {
if (visible) {
if (!this._emptyTemplateInstance) {
this._emptyTemplateInstance = this._emptyTemplate.createInstance(this.get_element()).instanceElement;}
else if (!AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._emptyTemplateInstance)) {
this.get_element().appendChild(this._emptyTemplateInstance);}
}
else {
if (this._emptyTemplateInstance && AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._emptyTemplateInstance)) {
this.get_element().removeChild(this._emptyTemplateInstance);}
}
}
},
_getFloatContainer: function() {
if (!this._floatContainerInstance) {
this._floatContainerInstance = document.createElement(this.get_element().tagName);var none = "0px 0px 0px 0px";this._floatContainerInstance.style.position = "absolute";this._floatContainerInstance.style.padding = none;this._floatContainerInstance.style.margin = none;document.body.appendChild(this._floatContainerInstance);}
else if (!AjaxControlToolkit.DragDropManager._getInstance().hasParent(this._floatContainerInstance)) {
document.body.appendChild(this._floatContainerInstance);}
return this._floatContainerInstance;}
}
AjaxControlToolkit.DragDropList.registerClass('AjaxControlToolkit.DragDropList', AjaxControlToolkit.BehaviorBase, AjaxControlToolkit.IDragSource, AjaxControlToolkit.IDropTarget, Sys.IDisposable);function callbackSuccessStub(response, context) {
var contextSplit = context.split(":");var id = contextSplit[0];var obj = $find(id);if (obj) {
obj._onCallbackSuccess(response, contextSplit[1]);}
}
function callbackErrorStub(response, context) {
var contextSplit = context.split(":");var id = contextSplit[0];var obj = $find(id);alert('error');if (obj) {
obj._onCallbackError(response, contextSplit[1]);}
}
AjaxControlToolkit.DragDropWatcher = function(e) {
AjaxControlToolkit.DragDropWatcher.initializeBase(this, [e]);this._childList = new Array();this._inProgressDrops = new Object();this._postbackCode = null;this._callbackCssStyle = null;this._argReplaceString = null;this._argContextString = null;this._argErrorString = null;this._argSuccessString = null;}
AjaxControlToolkit.DragDropWatcher.prototype = { 
dispose : function() {
AjaxControlToolkit.DragDropWatcher.callBaseMethod(this, 'dispose');},
initialize : function() {
AjaxControlToolkit.DragDropWatcher.callBaseMethod(this, 'initialize');this._saveChildOrder();},
add_reorderComplete : function(handler) {
this.get_events().addHandler("reorderComplete", handler);},
remove_reorderComplete : function(handler) {
this.get_events().removeHandler("reorderComplete", handler);},
raiseReorderComplete : function() {
var handler = this.get_events().getHandler("reorderComplete");if (handler) {
handler(this, Sys.EventArgs.Empty);}
},
findChild : function(parent, childId) {
var childIndex = 0;var nodes = parent.childNodes;for (var i = 0;i < nodes.length;i++) {
var item = nodes[i];if ((item != null) && (item.nodeName == "LI")) {
if (item.id == childId) {
return childIndex;}
childIndex++;}
}
return -1;},
canDrop : function(dragMode, dataType, data) {
if (this._inProgressDrops && this._inProgressDrops.length > 0) { 
return false;} 
var dropOk = AjaxControlToolkit.DragDropWatcher.callBaseMethod(this, 'canDrop',[dragMode,dataType,data]);if (dropOk) {
var dragVisualRect = $common.getBounds(data);var nodeRect;var hitInsertNode = false;var e = this.get_element();for (var node = e.firstChild;node != null && !hitInsertNode;node = node.nextSibling) {
if (!node.id) continue;nodeRect = $common.getBounds(node);if (dragVisualRect.y <= nodeRect.y) { 
break;}
hitInsertNode = (node.id.lastIndexOf("Insert", node.id.length - 6) != -1);} 
dropOk = !hitInsertNode;} 
return dropOk;},
drop : function(dragMode, dataType, data) {
AjaxControlToolkit.DragDropWatcher.callBaseMethod(this, 'drop',[dragMode,dataType,data]);var childId = data.id;if (!this._postbackCode || !childId) return;var newIndex = this.findChild(this.get_element(), childId);Sys.Debug.assert(newIndex != -1, String.format(AjaxControlToolkit.Resources.ReorderList_DropWatcherBehavior_NoChild, childId));var oldIndex = this._getSavedChildIndex(childId);if (newIndex != -1 && newIndex != oldIndex) { 
this._saveChildOrder();this.doPostBack(childId, newIndex, oldIndex);} 
} ,
_setupDropState : function(childId, newIndex, oldIndex) {
if (childId) {
var child = $get(childId);this._inProgressDrops[childId] = {"oldCss": child.className, "newIndex":newIndex, "oldIndex":oldIndex};if (this._callbackCssStyle) { 
child.className = this._callbackCssStyle;} 
}
},
_onDropCallback : function(childId) {
if (childId) {
this.set_ClientState("true");var item = this._inProgressDrops[childId];if (item) {
var child = $get(childId);if (this._callbackCssStyle) { 
child.className = item.oldCss;} 
delete this._inProgressDrops[childId];}
return item;}
},
doPostBack : function(childId, newIndex, oldIndex) {
var item = this._inProgressDrops[childId];if (item) {
return;}
var postbackArg = "reorder:" + childId + ":" + oldIndex.toString() + ":" + newIndex.toString();var postbackCode = this._postbackCode.replace(this._argReplaceString, postbackArg);if (this._argSuccessString) {
postbackCode = postbackCode.replace(this._argSuccessString, "callbackSuccessStub");}
if (this._argErrorString) {
postbackCode = postbackCode.replace(this._argErrorString, "callbackErrorStub");}
if (this._argContextString) {
postbackCode = postbackCode.replace(this._argContextString, this.get_id() + ":" + childId);}
this._setupDropState(childId, newIndex, oldIndex);window.setTimeout(postbackCode, 0);} ,
_onCallbackSuccess : function(response, context) {
if (response && response.length > 0) {
this._onCallbackError(response, context);}
else { 
this._onDropCallback(context);this.raiseReorderComplete();}
},
_onCallbackError : function(response, context) {
var item = this._onDropCallback(context);if (item.oldIndex || item.newIndex) {
this._saveChildOrder();this.doReorder(item.newIndex, item.oldIndex, true);} 
alert(String.format(AjaxControlToolkit.Resources.ReorderList_DropWatcherBehavior_CallbackError, response));},
doReorder : function(oldIndex, newIndex, skipPostback) { 
var e = this.get_element();var children = this._childList;if (oldIndex >= 0 && children.length > oldIndex && oldIndex != newIndex) {
var child = $get(children[oldIndex]);var item = this._inProgressDrops[child.id];if (item) {
return;} 
if (child) {
if (newIndex > oldIndex) {
newIndex++;}
var append = newIndex >= children.length;try {
e.removeChild(child);}
catch(e) {
} 
if (append) {
e.appendChild(child);}
else { 
var childAtNewIndex = $get(children[newIndex]);e.insertBefore(child, childAtNewIndex);}
if (!skipPostback) { 
this.doPostBack(child.id, newIndex, oldIndex);}
else {
this._saveChildOrder();this.raiseReorderComplete();}
}
}
} , 
getItem : function(index) {
if (!this._childList) {
this._saveChildOrder();}
return this._childList[index];},
_getSavedChildIndex : function(childId) {
if (this._childList && childId) { 
for (var i = 0;i < this._childList.length;i++) {
if (childId == this._childList[i]) { 
return i;}
}
}
return -1;},
_saveChildOrder : function() {
var e = this.get_element();if (!e) return;var children = e.childNodes;this._childList = [];var childCount = 0;for (var i = 0;i < children.length;i++) {
if (children[i] && children[i].parentNode === e && children[i].tagName && children[i].tagName.toLowerCase() == "li") {
this._childList[childCount++] = children[i].id;}
} 
},
get_argReplaceString : function() {
return this._argReplaceString;},
set_argReplaceString : function(value) { 
if (this._argReplaceString != value) {
this._argReplaceString = value;this.raisePropertyChanged('argReplaceString');}
},
get_argContextString : function() {
return this._argContextString;},
set_argContextString : function(value) { 
if (this._argContextString != value) {
this._argContextString = value;this.raisePropertyChanged('argContextString');}
},
get_argErrorString : function() {
return this._argErrorString;},
set_argErrorString : function(value) { 
if (this._argErrorString != value) {
this._argErrorString = value;this.raisePropertyChanged('argErrorString');}
},
get_argSuccessString : function() {
return this._argSuccessString;},
set_argSuccessString : function(value) { 
if (this._argSuccessString != value) {
this._argSuccessString = value;this.raisePropertyChanged('argSuccessString');}
},
get_postbackCode : function() {
return this._postbackCode;},
set_postbackCode : function(value) { 
if (this._postbackCode != value) {
this._postbackCode = value;this.raisePropertyChanged('postbackCode');}
},
get_callbackCssStyle : function() {
return this._callbackCssStyle;},
set_callbackCssStyle : function(value) { 
if (this._callbackCssStyle != value) { 
this._callbackCssStyle = value;this.raisePropertyChanged('callbackCssStyle');}
}
}
AjaxControlToolkit.DragDropWatcher.registerClass('AjaxControlToolkit.DragDropWatcher', AjaxControlToolkit.DragDropList);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ResizableControlBehavior = function(element) {
AjaxControlToolkit.ResizableControlBehavior.initializeBase(this, [element]);this._HandleCssClass = "";this._ResizableCssClass = "";this._HandleOffsetX = 0;this._HandleOffsetY = 0;this._MinimumWidth = 0;this._MinimumHeight = 0;this._MaximumWidth = 100000;this._MaximumHeight = 100000;this._frame = null;this._handle = null;this._handleHolder = null;this._lining = null;this._tracking = false;this._lastClientX = 0;this._lastClientY = 0;this._onmouseoverDelegate = null;this._onmouseoutDelegate = null;this._onmousedownDelegate = null;this._onmousemoveDelegate = null;this._onmouseupDelegate = null;this._onselectstartDelegate = null;}
AjaxControlToolkit.ResizableControlBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ResizableControlBehavior.callBaseMethod(this, 'initialize');this._frame = this.get_element();var savedSizeString = AjaxControlToolkit.ResizableControlBehavior.callBaseMethod(this, 'get_ClientState');if (savedSizeString && (-1 != savedSizeString.indexOf(','))) {
var savedSize = savedSizeString.split(',');this._frame.style.width = savedSize[0]+'px';this._frame.style.height = savedSize[1]+'px';}
this._lining = document.createElement('DIV');this._lining.style.width = $common.getCurrentStyle(this._frame, 'width');this._lining.style.height = $common.getCurrentStyle(this._frame, 'height');this._lining.style.position = 'absolute';this._lining.style.backgroundColor = 'black';this._lining.style.opacity = "0";this._lining.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=0)";this._lining.style.visibility = 'hidden';this._frame.insertBefore(this._lining, this._frame.firstChild);this._handleHolder = document.createElement('DIV');this._handleHolder.style.width = '0px';this._handleHolder.style.height = '0px';this._handleHolder.style.position = ((Sys.Browser.agent === Sys.Browser.Opera) ? 'relative' : 'absolute');this._frame.insertBefore(this._handleHolder, this._frame.firstChild);this._handle = document.createElement('DIV');this._handle.className = this._HandleCssClass;this._handle.style.position = 'absolute';this._handleHolder.appendChild(this._handle);this._onmouseoverDelegate = Function.createDelegate(this, this._onmouseover);$addHandler(this._handle, 'mouseover', this._onmouseoverDelegate);this._onmouseoutDelegate = Function.createDelegate(this, this._onmouseout);$addHandler(this._handle, 'mouseout', this._onmouseoutDelegate);this._onmousedownDelegate = Function.createDelegate(this, this._onmousedown);$addHandler(this._handle, 'mousedown', this._onmousedownDelegate);this._onmousemoveDelegate = Function.createDelegate(this, this._onmousemove);this._onmouseupDelegate = Function.createDelegate(this, this._onmouseup);this._onselectstartDelegate = Function.createDelegate(this, this._onselectstart);this._resizeControl(0, 0, 0, 0);this._rememberSize();},
dispose : function() {
if (this._onmouseoverDelegate) {
$removeHandler(this._handle, 'mouseover', this._onmouseoverDelegate);this._onmouseoverDelegate = null;}
if (this._onmouseoutDelegate) {
$removeHandler(this._handle, 'mouseout', this._onmouseoutDelegate);this._onmouseoutDelegate = null;}
if (this._onmousedownDelegate) {
$removeHandler(this._handle, 'mousedown', this._onmousedownDelegate);this._onmousedownDelegate = null;}
if (this._onmousemoveDelegate) {
if (this.tracking) {
$removeHandler(document, 'mousemove', this._onmousemoveDelegate);}
this._onmousemoveDelegate = null;}
if (this._onmouseupDelegate) {
if (this.tracking) {
$removeHandler(document, 'mouseup', this._onmouseupDelegate);}
this._onmouseupDelegate = null;}
if (this._onselectstartDelegate) {
if (this.tracking) {
$removeHandler(document, 'selectstart', this._onselectstartDelegate);if (Sys.Browser.agent === Sys.Browser.Opera) {
$removeHandler(document, 'mousedown', this._onselectstartDelegate);}
}
this._onselectstartDelegate = null;}
AjaxControlToolkit.ResizableControlBehavior.callBaseMethod(this, 'dispose');},
_onmouseover : function() {
Sys.UI.DomElement.addCssClass(this._frame, this._ResizableCssClass);},
_onmouseout : function() {
if (!this._tracking) {
Sys.UI.DomElement.removeCssClass(this._frame, this._ResizableCssClass);}
},
_onmousedown : function(e) {
if (!e) {
e = event;}
this._onmousedownImplementation(e.clientX, e.clientY);},
_onmousedownImplementation : function(clientX, clientY) {
this._tracking = true;this._resizeControl(clientX, clientY, 0, 0);this._lining.style.visibility = 'visible';$addHandler(document, 'mousemove', this._onmousemoveDelegate);$addHandler(document, 'mouseup', this._onmouseupDelegate);$addHandler(document, 'selectstart', this._onselectstartDelegate);if (Sys.Browser.agent === Sys.Browser.Opera) {
$addHandler(document, 'mousedown', this._onselectstartDelegate);}
this.raiseResizeBegin();},
_onmousemove : function(e) {
if (!e) {
e = event;}
this._onmousemoveImplementation(e.clientX, e.clientY);},
_onmousemoveImplementation : function(clientX, clientY) {
if (this._tracking) {
var deltaX = (clientX-this._lastClientX);var deltaY = (clientY-this._lastClientY);this._resizeControl(clientX, clientY, deltaX, deltaY);}
},
_onmouseup : function() {
this._tracking = false;this._rememberSize();this._lining.style.visibility = 'hidden';$removeHandler(document, 'mousemove', this._onmousemoveDelegate);$removeHandler(document, 'mouseup', this._onmouseupDelegate);$removeHandler(document, 'selectstart', this._onselectstartDelegate);if (Sys.Browser.agent === Sys.Browser.Opera) {
$removeHandler(document, 'mousedown', this._onselectstartDelegate);}
Sys.UI.DomElement.removeCssClass(this._frame, this._ResizableCssClass);},
_onselectstart : function(e) {
e.preventDefault();return false;},
_resizeControl : function(clientX, clientY, deltaX, deltaY) {
this._lastClientX = clientX;this._lastClientY = clientY;var _liningWidth = Math.min(Math.max(this._lining.offsetWidth+deltaX, Math.max(this._MinimumWidth, this._handle.offsetWidth)), this._MaximumWidth);var _liningHeight = Math.min(Math.max(this._lining.offsetHeight+deltaY, Math.max(this._MinimumHeight, this._handle.offsetHeight)), this._MaximumHeight);this._lining.style.width = _liningWidth+'px';this._lining.style.height = _liningHeight+'px';this._frame.style.width = _liningWidth+'px';this._frame.style.height = _liningHeight+'px';var _handleLeft = this._lining.offsetWidth-this._handle.offsetWidth+this._HandleOffsetX;var _handleTop = this._lining.offsetHeight-this._handle.offsetHeight+this._HandleOffsetY;this._handle.style.left = _handleLeft+'px';this._handle.style.top = _handleTop+'px';this.raiseResizing();},
_rememberSize : function() {
var size = this.get_Size();AjaxControlToolkit.ResizableControlBehavior.callBaseMethod(this, 'set_ClientState', [ size.width+','+size.height ]);this.raiseResize();},
_measurementToNumber : function(m) {
return m.replace('px', '');},
get_HandleCssClass : function() {
return this._HandleCssClass;},
set_HandleCssClass : function(value) {
if (this._HandleCssClass) {
throw String.format(AjaxControlToolkit.Resources.ResizableControlBehavior_CannotChangeProperty, 'HandleCssClass');}
this._HandleCssClass = value;this.raisePropertyChanged('HandleCssClass');},
get_ResizableCssClass : function() {
return this._ResizableCssClass;},
set_ResizableCssClass : function(value) {
if (this._ResizableCssClass) {
throw String.format(AjaxControlToolkit.Resources.ResizableControlBehavior_CannotChangeProperty, 'ResizableCssClass');}
this._ResizableCssClass = value;this.raisePropertyChanged('ResizableCssClass');},
get_HandleOffsetX : function() {
return this._HandleOffsetX;},
set_HandleOffsetX : function(value) {
if (this._HandleOffsetX != value) {
this._HandleOffsetX = value;this.raisePropertyChanged('HandleOffsetX');}
},
get_HandleOffsetY : function() {
return this._HandleOffsetY;},
set_HandleOffsetY : function(value) {
if (this._HandleOffsetY != value) {
this._HandleOffsetY = value;this.raisePropertyChanged('HandleOffsetY');}
},
get_MinimumWidth : function() {
return this._MinimumWidth;},
set_MinimumWidth : function(value) {
if (this._MinimumWidth != value) {
this._MinimumWidth = value;this.raisePropertyChanged('MinimumWidth');}
},
get_MinimumHeight : function() {
return this._MinimumHeight;},
set_MinimumHeight : function(value) {
if (this._MinimumHeight != value) {
this._MinimumHeight = value;this.raisePropertyChanged('MinimumHeight');}
},
get_MaximumWidth : function() {
return this._MaximumWidth;},
set_MaximumWidth : function(value) {
if (this._MaximumWidth != value) { 
this._MaximumWidth = value;this.raisePropertyChanged('MaximumWidth');}
},
get_MaximumHeight : function() {
return this._MaximumHeight;},
set_MaximumHeight : function(value) {
if (this._MaximumHeight != value) {
this._MaximumHeight = value;this.raisePropertyChanged('MaximumHeight');}
},
add_resizing : function(handler) {
this.get_events().addHandler("resizing", handler);},
remove_resizing : function(handler) {
this.get_events().removeHandler("resizing", handler);},
raiseResizing : function() {
var onResizingHandler = this.get_events().getHandler("resizing");if (onResizingHandler) {
onResizingHandler(this, Sys.EventArgs.Empty);}
},
get_resizing : function() {
return this.get_events().getHandler("resizing");},
set_resizing : function(value) {
if (value && (0 < value.length)) {
var func = $common.resolveFunction(value);if (func) { 
this.add_resizing(func);} else {
throw Error.argumentType('value', typeof(value), 'Function', String.format(AjaxControlToolkit.Resources.ResizableControlBehavior_InvalidHandler, 'resizing'));}
}
},
add_resize : function(handler) {
this.get_events().addHandler("resize", handler);},
remove_resize : function(handler) {
this.get_events().removeHandler("resize", handler);},
raiseResize : function() {
var onResizeHandler = this.get_events().getHandler("resize");if (onResizeHandler) {
onResizeHandler(this, Sys.EventArgs.Empty);}
},
get_resize : function() {
return this.get_events().getHandler("resize");},
set_resize : function(value) {
if (value && (0 < value.length)) {
var func = $common.resolveFunction(value);if (func) { 
this.add_resize(func);} else {
throw Error.argumentType('value', typeof(value), 'Function', String.format(AjaxControlToolkit.Resources.ResizableControlBehavior_InvalidHandler, 'resize'));}
}
},
add_resizebegin : function(handler) {
this.get_events().addHandler("resizebegin", handler);},
remove_resizebegin : function(handler) {
this.get_events().removeHandler("resizebegin", handler);},
raiseResizeBegin : function() {
var onresizebeginHandler = this.get_events().getHandler("resizebegin");if (onresizebeginHandler) {
onresizebeginHandler(this, Sys.EventArgs.Empty);}
},
get_resizebegin : function() {
return this.get_events().getHandler("resizebegin");},
set_resizebegin : function(value) {
if (value && (0 < value.length)) {
var func = $common.resolveFunction(value);if (func) { 
this.add_resizebegin(func);} else {
throw Error.argumentType('value', typeof(value), 'Function', String.format(AjaxControlToolkit.Resources.ResizableControlBehavior_InvalidHandler, 'resizebegin'));}
}
},
get_Size : function() {
return { width: this._measurementToNumber($common.getCurrentStyle(this._lining, 'width')),
height: this._measurementToNumber($common.getCurrentStyle(this._lining, 'height'))};},
set_Size : function(value) {
var deltaX = value.width-this._measurementToNumber($common.getCurrentStyle(this._lining, 'width'));var deltaY = value.height-this._measurementToNumber($common.getCurrentStyle(this._lining, 'height'));this._resizeControl(0, 0, deltaX, deltaY);this._rememberSize();this.raisePropertyChanged('Size');}
}
AjaxControlToolkit.ResizableControlBehavior.registerClass('AjaxControlToolkit.ResizableControlBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BoxCorners = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.BoxCorners.prototype = {
None : 0x00,
TopLeft : 0x01,
TopRight : 0x02,
BottomRight : 0x04,
BottomLeft : 0x08,
Top : 0x01 | 0x02,
Right : 0x02 | 0x04,
Bottom : 0x04 | 0x08,
Left : 0x08 | 0x01,
All : 0x01 | 0x02 | 0x04 | 0x08
}
AjaxControlToolkit.BoxCorners.registerEnum("AjaxControlToolkit.BoxCorners", true);AjaxControlToolkit.RoundedCornersBehavior = function(element) {
AjaxControlToolkit.RoundedCornersBehavior.initializeBase(this, [element]);this._corners = AjaxControlToolkit.BoxCorners.All;this._radius = 5;this._color = null;this._parentDiv = null;this._originalStyle = null;this._borderColor = null;}
AjaxControlToolkit.RoundedCornersBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.RoundedCornersBehavior.callBaseMethod(this, 'initialize');this.buildParentDiv();},
dispose : function() {
this.disposeParentDiv();AjaxControlToolkit.RoundedCornersBehavior.callBaseMethod(this, 'dispose');},
buildParentDiv : function() {
var e = this.get_element();if (!e) return;this.disposeParentDiv();var color = this.getBackgroundColor();var originalWidth = e.offsetWidth;var newParent = e.cloneNode(false);this.moveChildren(e, newParent);this._originalStyle = e.style.cssText;e.style.backgroundColor = "transparent";e.style.verticalAlign = "top";e.style.padding = "0";e.style.overflow = "";e.style.className = "";if (e.style.height) {
e.style.height = parseInt($common.getCurrentStyle(e, 'height')) + (this._radius * 2) + "px";} else {
if (!e.style.width && (0 < originalWidth)) {
e.style.width = originalWidth + "px";}
}
newParent.style.position = "";newParent.style.border = "";newParent.style.margin = "";newParent.style.width = "100%";newParent.id = "";newParent.removeAttribute("control");if (this._borderColor) {
newParent.style.borderTopStyle = "none";newParent.style.borderBottomStyle = "none";newParent.style.borderLeftStyle = "solid";newParent.style.borderRightStyle = "solid";newParent.style.borderLeftColor = this._borderColor;newParent.style.borderRightColor = this._borderColor;newParent.style.borderLeftWidth = "1px";newParent.style.borderRightWidth = "1px";if (this._radius == 0) {
newParent.style.borderTopStyle = "solid";newParent.style.borderBottomStyle = "solid";newParent.style.borderTopColor = this._borderColor;newParent.style.borderBottomColor = this._borderColor;newParent.style.borderTopWidth = "1px";newParent.style.borderBottomWidth = "1px";}
} else {
newParent.style.borderTopStyle = "none";newParent.style.borderBottomStyle = "none";newParent.style.borderLeftStyle = "none";newParent.style.borderRightStyle = "none";}
var lastDiv = null;var radius = this._radius;var lines = this._radius;var lastDelta = 0;for (var i = lines;i > 0;i--) {
var angle = Math.acos(i / radius);var delta = radius - Math.round(Math.sin(angle) * radius);var newDiv = document.createElement("DIV");newDiv.__roundedDiv = true;newDiv.style.backgroundColor = color;newDiv.style.marginLeft = delta + "px";newDiv.style.marginRight = (delta - (this._borderColor ? 2 : 0)) + "px";newDiv.style.height = "1px";newDiv.style.fontSize = "1px";newDiv.style.overflow = "hidden";if (this._borderColor) {
newDiv.style.borderLeftStyle = "solid";newDiv.style.borderRightStyle = "solid";newDiv.style.borderLeftColor = this._borderColor;newDiv.style.borderRightColor = this._borderColor;var offset = Math.max(0, lastDelta - delta - 1);newDiv.style.borderLeftWidth = (offset + 1) + "px";newDiv.style.borderRightWidth = (offset + 1) + "px";if (i == lines) {
newDiv.__roundedDivNoBorder = true;newDiv.style.backgroundColor = this._borderColor;}
}
e.insertBefore(newDiv, lastDiv);var topDiv = newDiv;newDiv = newDiv.cloneNode(true);newDiv.__roundedDiv = true;e.insertBefore(newDiv, lastDiv);var bottomDiv = newDiv;lastDiv = newDiv;lastDelta = delta;if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.TopLeft)) {
topDiv.style.marginLeft = "0";if (this._borderColor) {
topDiv.style.borderLeftWidth = "1px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.TopRight)) {
topDiv.style.marginRight = "0";if (this._borderColor) {
topDiv.style.borderRightWidth = "1px";topDiv.style.marginRight = "-2px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.BottomLeft)) {
bottomDiv.style.marginLeft = "0";if (this._borderColor) {
bottomDiv.style.borderLeftWidth = "1px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.BottomRight)) {
bottomDiv.style.marginRight = "0";if (this._borderColor) {
bottomDiv.style.borderRightWidth = "1px";bottomDiv.style.marginRight = "-2px";}
}
}
e.insertBefore(newParent, lastDiv);this._parentDiv = newParent;},
disposeParentDiv : function() {
if (this._parentDiv) {
var e = this.get_element();var children = e.childNodes;for (var i = children.length - 1;i >=0;i--) {
var child = children[i];if (child) {
if (child == this._parentDiv) {
this.moveChildren(child, e);}
try {
e.removeChild(child);} catch(e) {
}
}
}
if (this._originalStyle) {
e.style.cssText = this._originalStyle;this._originalStyle = null;}
this._parentDiv = null;}
},
getBackgroundColor : function() {
if (this._color) {
return this._color;}
return $common.getCurrentStyle(this.get_element(), 'backgroundColor');},
moveChildren : function(src, dest) {
var moveCount = 0;while (src.hasChildNodes()) {
var child = src.childNodes[0];child = src.removeChild(child);dest.appendChild(child);moveCount++;}
return moveCount;},
isCornerSet : function(corner) {
return (this._corners & corner) != AjaxControlToolkit.BoxCorners.None;},
setCorner : function(corner, value) {
if (value) {
this.set_Corners(this._corners | corner);} else {
this.set_Corners(this._corners & ~corner);}
},
get_Color : function() {
return this._color;},
set_Color : function(value) {
if (value != this._color) {
this._color = value;this.buildParentDiv();this.raisePropertyChanged('Color');}
},
get_Radius : function() {
return this._radius;},
set_Radius : function(value) {
if (value != this._radius) {
this._radius = value;this.buildParentDiv();this.raisePropertyChanged('Radius');}
},
get_Corners : function() {
return this._corners;},
set_Corners : function(value) {
if (value != this._corners) {
this._corners = value;this.buildParentDiv();this.raisePropertyChanged("Corners");}
},
get_BorderColor : function() {
return this._borderColor;},
set_BorderColor : function(value) {
if (value != this._borderColor) {
this._borderColor = value;this.buildParentDiv();this.raisePropertyChanged("BorderColor");}
}
}
AjaxControlToolkit.RoundedCornersBehavior.registerClass('AjaxControlToolkit.RoundedCornersBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.TextBoxWatermarkBehavior = function(element) {
AjaxControlToolkit.TextBoxWatermarkBehavior.initializeBase(this, [element]);this._watermarkText = null;this._watermarkCssClass = null;this._focusHandler = null;this._blurHandler = null;this._keyPressHandler = null;this._propertyChangedHandler = null;this._watermarkChangedHandler = null;this._oldClassName = null;this._clearedForSubmit = null;this._maxLength = null;if ((typeof(WebForm_OnSubmit) == 'function') && !AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit) {
AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit = WebForm_OnSubmit;WebForm_OnSubmit = AjaxControlToolkit.TextBoxWatermarkBehavior.WebForm_OnSubmit;}
}
AjaxControlToolkit.TextBoxWatermarkBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this, 'initialize');var e = this.get_element();var hasInitialFocus = false;var clientState = AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this, 'get_ClientState');if (clientState != null && clientState != "") {
hasInitialFocus = (clientState == "Focused");AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this, 'set_ClientState', null);}
this._oldClassName = e.className;this._focusHandler = Function.createDelegate(this, this._onFocus);this._blurHandler = Function.createDelegate(this, this._onBlur);this._keyPressHandler = Function.createDelegate(this, this._onKeyPress);$addHandler(e, 'focus', this._focusHandler);$addHandler(e, 'blur', this._blurHandler);$addHandler(e, 'keypress', this._keyPressHandler);this.registerPropertyChanged();var currentValue = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Current();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (("" == currentValue) || (this._watermarkText == currentValue)) {
wrapper.set_Watermark(this._watermarkText)
wrapper.set_IsWatermarked(true);}
if (hasInitialFocus) {
this._onFocus();} else {
e.blur();this._onBlur();}
this._clearedForSubmit = false;this.registerPartialUpdateEvents();this._watermarkChangedHandler = Function.createDelegate(this, this._onWatermarkChanged);wrapper.add_WatermarkChanged(this._watermarkChangedHandler);},
dispose : function() {
var e = this.get_element();if (this._watermarkChangedHandler) {
AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).remove_WatermarkChanged(this._watermarkChangedHandler);this._watermarkChangedHandler = null;}
if(e.control && this._propertyChangedHandler) {
e.control.remove_propertyChanged(this._propertyChangedHandler);this._propertyChangedHandler = null;}
if (this._focusHandler) {
$removeHandler(e, 'focus', this._focusHandler);this._focusHandler = null;}
if (this._blurHandler) {
$removeHandler(e, 'blur', this._blurHandler);this._blurHandler = null;}
if (this._keyPressHandler) {
$removeHandler(e, 'keypress', this._keyPressHandler);this._keyPressHandler = null;}
if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()) {
this.clearText(false);}
AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this, 'dispose');},
_onWatermarkChanged : function(sender, eventArgs) {
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()) {
this._onBlur();} else {
this._onFocus();}
},
clearText : function(focusing) {
var element = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(element);wrapper.set_Value("");wrapper.set_IsWatermarked(false);if(focusing) {
element.setAttribute("autocomplete","off");element.select();}
},
_onFocus : function(evt) {
var e = this.get_element();if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e).get_IsWatermarked()) {
this.clearText(evt ? true : false);}
e.className = this._oldClassName;if (this._maxLength > 0) {
this.get_element().maxLength = this._maxLength;this._maxLength = null;}
},
_onBlur : function() {
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if(("" == wrapper.get_Current()) || wrapper.get_IsWatermarked()) {
if (this.get_element().maxLength > 0 && this._watermarkText.length > this.get_element().maxLength) {
this._maxLength = this.get_element().maxLength;this.get_element().maxLength = this._watermarkText.length;}
this._applyWatermark();}
},
_applyWatermark : function() {
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());wrapper.set_Watermark(this._watermarkText);wrapper.set_IsWatermarked(true);if(this._watermarkCssClass) {
this.get_element().className = this._watermarkCssClass;}
},
_onKeyPress : function() {
AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_IsWatermarked(false);},
registerPropertyChanged : function() {
var e = this.get_element();if(e.control && !this._propertyChangedHandler) {
this._propertyChangedHandler = Function.createDelegate(this, this._onPropertyChanged);e.control.add_propertyChanged(this._propertyChangedHandler);}
},
_onPropertyChanged : function(sender, propertyChangedEventArgs) {
if("text" == propertyChangedEventArgs.get_propertyName()) {
this.set_Value(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Current());}
},
_onSubmit : function() {
if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()) {
this.clearText(false);this._clearedForSubmit = true;}
},
_partialUpdateEndRequest : function(sender, endRequestEventArgs) {
AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this, '_partialUpdateEndRequest', [sender, endRequestEventArgs]);if (this.get_element() && this._clearedForSubmit) {
this.get_element().blur();this._onBlur();this._clearedForSubmit = false;}
},
get_WatermarkText : function() {
return this._watermarkText;},
set_WatermarkText : function(value) {
if (this._watermarkText != value) {
this._watermarkText = value;if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()) {
this._applyWatermark();}
this.raisePropertyChanged('WatermarkText');}
},
get_WatermarkCssClass : function() {
return this._watermarkCssClass;},
set_WatermarkCssClass : function(value) {
if (this._watermarkCssClass != value) {
this._watermarkCssClass = value;if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()) {
this._applyWatermark();}
this.raisePropertyChanged('WatermarkCssClass');}
},
get_Text : function() {
return AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Value();},
set_Text : function(value) {
if ("" == value) {
AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_Current("");this.get_element().blur();this._onBlur();} else {
this._onFocus();AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_Current(value);}
}
}
AjaxControlToolkit.TextBoxWatermarkBehavior.registerClass('AjaxControlToolkit.TextBoxWatermarkBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.TextBoxWatermarkBehavior.WebForm_OnSubmit = function() {
var result = AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit();if (result) {
var components = Sys.Application.getComponents();for(var i = 0 ;i < components.length ;i++) {
var component = components[i];if (AjaxControlToolkit.TextBoxWatermarkBehavior.isInstanceOfType(component)) {
component._onSubmit();}
}
}
return result;}

Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ToggleButtonBehavior = function(element) {
AjaxControlToolkit.ToggleButtonBehavior.initializeBase(this, [element]);this._idDecoration = '_ToggleButton';this._ImageWidth = null;this._ImageHeight = null;this._UncheckedImageUrl = null;this._CheckedImageUrl = null;this._DisabledUncheckedImageUrl = null;this._DisabledCheckedImageUrl = null;this._UncheckedImageAlternateText = null;this._CheckedImageAlternateText = null;this._decoyElement = null;this._decoyElementClickHandler = null;this._checkChangedHandler = null;this._divContent = null;this._clickHandler = null;}
AjaxControlToolkit.ToggleButtonBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ToggleButtonBehavior.callBaseMethod(this, 'initialize');var e = this.get_element();this._divContent = document.createElement('div');this._divContent.style.position = 'relative';this._decoyElement = document.createElement('a');e.parentNode.insertBefore(this._divContent, e);this._decoyElement.id = e.id + this._idDecoration;this._decoyElement.href = '';this._divContent.appendChild(this._decoyElement);e.style.visibility = 'hidden';var decoyElementStyle = this._decoyElement.style;decoyElementStyle.position = 'absolute';decoyElementStyle.left = '0px';decoyElementStyle.top = '0px';decoyElementStyle.width = this._ImageWidth + 'px';decoyElementStyle.height = this._ImageHeight + 'px';decoyElementStyle.fontSize = this._ImageHeight + 'px';decoyElementStyle.backgroundRepeat = 'no-repeat';this._onClick();this._clickHandler = Function.createDelegate(this, this._onClick);this._checkChangedHandler = Function.createDelegate(this, this._onClick);this._decoyElementClickHandler = Function.createDelegate(this, this._onDecoyElementClick);$addHandler(e, "click", this._clickHandler);$addHandler(e, "change", this._checkChangedHandler);$addHandler(this._decoyElement, "click", this._decoyElementClickHandler);if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
var labels = this._divContent.parentNode.getElementsByTagName('label');for (i = 0 ;i < labels.length ;i++) {
if (e.id == labels[i].htmlFor) {
labels[i].htmlFor = e.id + this._idDecoration;}
}
}
},
dispose : function() {
if (this._decoyElementClickHandler) {
$removeHandler(this._decoyElement, "click", this._decoyElementClickHandler);this._decoyElementClickHandler = null;}
if(this._checkChangedHandler) {
$removeHandler(this.get_element(), "change", this._checkChangedHandler);this._checkChangedHandler = null;}
if (this._clickHandler) {
$removeHandler(this.get_element(), "click", this._clickHandler);this._clickHandler = null;}
AjaxControlToolkit.ToggleButtonBehavior.callBaseMethod(this, 'dispose');},
_onClick : function() {
if(this.get_element().checked) {
this._decoyElement.style.backgroundImage = 'url(' + (this.get_element().disabled ? this.get_DisabledCheckedImageUrl() : this._CheckedImageUrl) + ')';if (this._CheckedImageAlternateText) {
this._decoyElement.title = this._CheckedImageAlternateText;}
} else {
this._decoyElement.style.backgroundImage = 'url(' + (this.get_element().disabled ? this.get_DisabledUncheckedImageUrl() : this._UncheckedImageUrl) + ')';if (this._UncheckedImageAlternateText) {
this._decoyElement.title = this._UncheckedImageAlternateText;}
}
},
_onDecoyElementClick : function(e) {
this.get_element().click();e.preventDefault();return false;},
get_ImageWidth : function() {
return this._ImageWidth;},
set_ImageWidth : function(value) {
if (this._ImageWidth != value) {
this._ImageWidth = value;this.raisePropertyChanged('ImageWidth');}
},
get_ImageHeight : function() {
return this._ImageHeight;},
set_ImageHeight : function(value) {
if (this._ImageHeight != value) {
this._ImageHeight = value;this.raisePropertyChanged('ImageHeight');}
},
get_UncheckedImageUrl : function() {
return this._UncheckedImageUrl;},
set_UncheckedImageUrl : function(value) {
if (this._UncheckedImageUrl != value) {
this._UncheckedImageUrl = value;this.raisePropertyChanged('UncheckedImageUrl');}
},
get_CheckedImageUrl : function() {
return this._CheckedImageUrl;},
set_CheckedImageUrl : function(value) {
if (this._CheckedImageUrl != value) {
this._CheckedImageUrl = value;this.raisePropertyChanged('CheckedImageUrl');}
},
get_DisabledUncheckedImageUrl : function() {
return (this._DisabledUncheckedImageUrl != undefined) ?
this._DisabledUncheckedImageUrl : this._UncheckedImageUrl;},
set_DisabledUncheckedImageUrl : function(value) {
if (this._DisabledUncheckedImageUrl != value) {
this._DisabledUncheckedImageUrl = value;this.raisePropertyChanged('DisabledUncheckedImageUrl');}
},
get_DisabledCheckedImageUrl : function() {
return (this._DisabledUncheckedImageUrl != undefined) ?
this._DisabledCheckedImageUrl : this._CheckedImageUrl;},
set_DisabledCheckedImageUrl : function(value) {
if (this._DisabledCheckedImageUrl != value) {
this._DisabledCheckedImageUrl = value;this.raisePropertyChanged('DisabledCheckedImageUrl');}
},
get_UncheckedImageAlternateText : function() {
return this._UncheckedImageAlternateText;},
set_UncheckedImageAlternateText : function(value) {
if (this._UncheckedImageAlternateText != value) {
this._UncheckedImageAlternateText = value;this.raisePropertyChanged('UncheckedImageAlternateText');}
},
get_CheckedImageAlternateText : function() {
return this._CheckedImageAlternateText;},
set_CheckedImageAlternateText : function(value) {
if (this._CheckedImageAlternateText != value) {
this._CheckedImageAlternateText = value;this.raisePropertyChanged('CheckedImageAlternateText');}
}
}
AjaxControlToolkit.ToggleButtonBehavior.registerClass('AjaxControlToolkit.ToggleButtonBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.AutoSize = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.AutoSize.prototype = {
None : 0,
Fill : 1,
Limit : 2
}
AjaxControlToolkit.AutoSize.registerEnum("AjaxControlToolkit.AutoSize", false);AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs = function(oldIndex, selectedIndex) {
AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs.initializeBase(this);this._oldIndex = oldIndex;this._selectedIndex = selectedIndex;}
AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs.prototype = {
get_oldIndex : function() {
return this._oldIndex;},
set_oldIndex : function(value) {
this._oldIndex = value;},
get_selectedIndex : function() {
return this._selectedIndex;},
set_selectedIndex : function(value) {
this._selectedIndex = value;}
}
AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs.registerClass('AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs', Sys.CancelEventArgs);AjaxControlToolkit.AccordionBehavior = function(element) {
AjaxControlToolkit.AccordionBehavior.initializeBase(this, [element]);this._selectedIndex = 0;this._panes = [];this._fadeTransitions = false;this._duration = 0.25;this._framesPerSecond = 30;this._autoSize = AjaxControlToolkit.AutoSize.None;this._requireOpenedPane = true;this._suppressHeaderPostbacks = false;this._headersSize = 0;this._headerClickHandler = null;this._headerCssClass = '';this._headerSelectedCssClass = '';this._contentCssClass = '';this._resizeHandler = null;}
AjaxControlToolkit.AccordionBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.AccordionBehavior.callBaseMethod(this, 'initialize');this._headerClickHandler = Function.createDelegate(this, this._onHeaderClick);var state = this.get_ClientState();if (state !== null && state !== '') {
this._changeSelectedIndex(parseInt(state), false, true);}
var nodes = this.get_element().childNodes;var index = { };for (index.value = 0;index.value < nodes.length;index.value++) {
var header = this._getNextDiv(nodes, index);if (!header) {
break;}
var content = this._getNextDiv(nodes, index);if (content) {
this.addPane(header, content);index.value--;}
}
if (this._requireOpenedPane && !this.get_Pane() && this._panes.length > 0) {
this._changeSelectedIndex(0, false, true);}
this._initializeLayout();},
_getNextDiv : function(nodes, index) {
var div = null;while (index.value < nodes.length && (div = nodes[index.value++])) {
if (div.tagName && (div.tagName.toLowerCase() === 'div')) {
break;}
}
return div;},
addPane : function(header, content) {
var pane = { };pane.animation = null;pane.header = header;header._index = this._panes.length;$addHandler(header, "click", this._headerClickHandler);var accordion = this.get_element();var wrapper = document.createElement('div');accordion.insertBefore(wrapper, content);wrapper.appendChild(content);wrapper._original = content;pane.content = wrapper;wrapper.style.border = '';wrapper.style.margin = '';wrapper.style.padding = '';Array.add(this._panes, pane);this._initializePane(header._index);content.style.display = 'block';return pane;},
_getAnimation : function(pane) {
var animation = pane.animation;if (!animation) {
var length = null;var fade = null;if (!this._fadeTransitions) {
animation = length = new AjaxControlToolkit.Animation.LengthAnimation(pane.content, this._duration, this._framesPerSecond, "style", "height", 0, 0, "px");} else {
length = new AjaxControlToolkit.Animation.LengthAnimation(null, null, null, "style", "height", 0, 0, "px");fade = new AjaxControlToolkit.Animation.FadeAnimation(null, null, null, AjaxControlToolkit.Animation.FadeEffect.FadeOut, 0, 1, false);animation = new AjaxControlToolkit.Animation.ParallelAnimation(pane.content, this._duration, this._framesPerSecond, [fade, length]);}
pane.animation = animation;animation._length = length;animation._fade = fade;animation._pane = pane;animation._opening = true;animation._behavior = this;animation._ended = Function.createDelegate(pane.animation, this._onAnimationFinished);animation.add_ended(pane.animation._ended);animation.initialize();}
return animation;},
_onAnimationFinished : function() {
this._behavior._endPaneChange(this._pane, this._opening);},
_initializeLayout : function() {
for (var i = 0;i < this._panes.length;i++) {
var animation = this._panes[i].animation;if (animation && animation.get_isPlaying()) {
animation.stop();}
}
var accordion = this.get_element();this._initialHeight = accordion.offsetHeight;var style = accordion.style;if (this._autoSize === AjaxControlToolkit.AutoSize.None) {
this._disposeResizeHandler();var isIE7 = (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version >= 7)
if (!isIE7 || (isIE7 && style.height && style.height.length > 0)) {
style.height = 'auto';}
if (!isIE7 || (isIE7 && style.overflow && style.overflow.length > 0)) { 
style.overflow = 'auto';}
} else {
this._addResizeHandler();style.height = accordion.offsetHeight + 'px';style.overflow = 'hidden';}
for (var i = 0;i < this._panes.length;i++) {
this._initializePane(i);}
this._resizeSelectedPane();},
_initializePane : function(index) {
var pane = this.get_Pane(index);if (!pane) {
return;}
var wrapper = pane.content;var original = wrapper._original;var opened = (index === this._selectedIndex);wrapper.style.height = (opened || (this._autoSize === AjaxControlToolkit.AutoSize.Fill)) ? 'auto' : '0px';wrapper.style.overflow = opened ? 'auto' : 'hidden';wrapper.style.display = opened ? 'block' : 'none';original.style.height = 'auto';original.style.maxHeight = '';original.style.overflow = opened ? 'auto' : 'hidden';var opacity = (opened || !this._fadeTransitions) ? 1 : 0;if (this._autoSize === AjaxControlToolkit.AutoSize.Fill) {
if ($common.getElementOpacity(original) != opacity) {
$common.setElementOpacity(original, opacity);}
if ($common.getElementOpacity(wrapper) != 1) {
$common.setElementOpacity(wrapper, 1);}
} else {
if ($common.getElementOpacity(wrapper) != opacity) {
$common.setElementOpacity(wrapper, opacity);}
if ($common.getElementOpacity(original) != 1) {
$common.setElementOpacity(original, 1);}
}
},
_addResizeHandler : function() {
if (!this._resizeHandler) {
this._resizeHandler = Function.createDelegate(this, this._resizeSelectedPane);$addHandler(window, "resize", this._resizeHandler);}
},
dispose : function() {
this._disposeResizeHandler();this._disposeAnimations();for (var i = this._panes.length - 1;i >= 0;i--) {
var pane = this._panes[i];if (pane) {
if (pane.header) {
pane.header._index = null;$removeHandler(pane.header, "click", this._headerClickHandler);pane.header = null;}
if (pane.content) {
pane.content._original = null;pane.content = null;}
this._panes[i] = null;delete this._panes[i];}
}
this._panes = null;this._headerClickHandler = null;AjaxControlToolkit.AccordionBehavior.callBaseMethod(this, 'dispose');},
_disposeResizeHandler : function() {
if (this._resizeHandler) {
$removeHandler(window, "resize", this._resizeHandler);this._resizeHandler = null;}
},
_disposeAnimations : function() {
for (var i = 0;i < this._panes.length;i++) {
var animation = this._panes[i].animation;if (animation) {
if (animation.get_isPlaying()) {
animation.stop();}
if (animation._ended) {
animation.remove_ended(animation._ended);animation._ended = null;}
animation.dispose();animation._length = null;animation._fade = null;animation._pane = null;animation._opening = null;animation._behavior = null;this._panes[i].animation = null;}
}
},
_resizeSelectedPane : function() {
var pane = this.get_Pane();if (!pane) {
return;}
this._headersSize = this._getHeadersSize().height;var original = pane.content._original;switch (this._autoSize) {
case AjaxControlToolkit.AutoSize.None :
original.style.height = 'auto';original.style.maxHeight = '';break;case AjaxControlToolkit.AutoSize.Limit :
var remaining = this._getRemainingHeight(false);original.style.height = 'auto';original.style.maxHeight = remaining + 'px';break;case AjaxControlToolkit.AutoSize.Fill :
var remaining = this._getRemainingHeight(true);original.style.height = remaining + 'px';original.style.maxHeight = '';break;} 
},
_onHeaderClick : function(evt) {
var header = evt.target;var accordion = this.get_element();while (header && (header.parentNode !== accordion)) {
header = header.parentNode;}
evt.stopPropagation();if (this._suppressHeaderPostbacks) {
evt.preventDefault();}
var index = header._index;if ((index === this._selectedIndex) && !this._requireOpenedPane) {
index = -1;}
this._changeSelectedIndex(index, true);},
_changeSelectedIndex : function(index, animate, force) {
var lastIndex = this._selectedIndex;var currentPane=this.get_Pane(index);var lastPane=this.get_Pane(lastIndex);if (!force && (currentPane == lastPane)) {
return;}
var eventArgs = new AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs(lastIndex, index);this.raiseSelectedIndexChanging(eventArgs);if (eventArgs.get_cancel()) {
return;}
if(lastPane)
{
lastPane.header.className = this._headerCssClass;}
if(currentPane)
{
currentPane.header.className = (this._headerSelectedCssClass == '') ? 
this._headerCssClass : this._headerSelectedCssClass;}
this._selectedIndex = index;this.set_ClientState(this._selectedIndex);if (animate) {
this._changePanes(lastIndex);}
this.raiseSelectedIndexChanged(new AjaxControlToolkit.AccordionSelectedIndexChangeEventArgs(lastIndex, index));this.raisePropertyChanged('SelectedIndex');},
_changePanes : function(lastIndex) {
if (!this.get_isInitialized()) {
return;}
var open = null;var close = null;for (var i = 0;i < this._panes.length;i++) {
var pane = this._panes[i];var animation = this._getAnimation(pane);if (animation.get_isPlaying()) {
animation.stop();}
if (i == this._selectedIndex) {
animation._opening = true;open = animation;} else if (i == lastIndex) {
animation._opening = false;close = animation;} else {
continue;}
this._startPaneChange(pane, animation._opening);if (this._fadeTransitions) {
animation._fade.set_effect(animation._opening ? AjaxControlToolkit.Animation.FadeEffect.FadeIn : AjaxControlToolkit.Animation.FadeEffect.FadeOut );}
if (this._autoSize === AjaxControlToolkit.AutoSize.Fill) {
animation.set_target(pane.content._original);animation._length.set_startValue($common.getContentSize(pane.content._original).height);animation._length.set_endValue(animation._opening ? this._getRemainingHeight(true) : 0);} else {
animation.set_target(pane.content);animation._length.set_startValue(pane.content.offsetHeight);animation._length.set_endValue(animation._opening ? this._getRemainingHeight(false) : 0);}
}
if (close) {
close.play();}
if (open) {
open.play();}
},
_startPaneChange : function(pane, opening) {
var wrapper = pane.content;var original = wrapper._original;if (opening) {
wrapper.style.display = 'block';} else {
wrapper.style.overflow = 'hidden';original.style.overflow = 'hidden';if (this._autoSize === AjaxControlToolkit.AutoSize.Limit) {
wrapper.style.height = this._getTotalSize(original).height + 'px';original.style.maxHeight = '';}
}
},
_endPaneChange : function(pane, opening) {
var wrapper = pane.content;var original = wrapper._original;if (opening) {
if (this._autoSize === AjaxControlToolkit.AutoSize.Limit) {
var remaining = this._getRemainingHeight(true);original.style.maxHeight = remaining + 'px';}
original.style.overflow = 'auto';wrapper.style.height = 'auto';wrapper.style.overflow = 'auto';} else {
wrapper.style.display = 'none';}
},
_getHeadersSize : function() {
var total = { width: 0, height: 0 };for (var i = 0;i < this._panes.length;i++) {
var size = this._getTotalSize(this._panes[i].header);total.width = Math.max(total.width, size.width);total.height += size.height;}
return total;},
_getRemainingHeight : function(includeGutter) {
var height = 0;var pane = this.get_Pane();if (this._autoSize === AjaxControlToolkit.AutoSize.None) {
if (pane) { 
height = this._getTotalSize(pane.content._original).height;}
} else {
height = this._headersSize;if (includeGutter && pane) {
height += this._getGutterSize(pane.content._original).height;}
var accordion = this.get_element();height = Math.max(accordion.offsetHeight - height, 0);if (pane && (this._autoSize === AjaxControlToolkit.AutoSize.Limit)) {
var required = this._getTotalSize(pane.content._original).height;if (required > 0) {
height = Math.min(height, required);}
}
}
return height;},
_getTotalSize : function(element) {
var size = $common.getSize(element);var box = $common.getMarginBox(element);size.width += box.horizontal;size.height += box.vertical;return size;},
_getGutterSize : function(element) {
var gutter = { width: 0, height: 0 };try {
var box = $common.getPaddingBox(element);gutter.width += box.horizontal;gutter.height += box.vertical;} catch(ex) { }
try {
var box = $common.getBorderBox(element);gutter.width += box.horizontal;gutter.height += box.vertical;} catch(ex) { }
var box = $common.getMarginBox(element);gutter.width += box.horizontal;gutter.height += box.vertical;return gutter;},
add_selectedIndexChanging : function(handler) {
this.get_events().addHandler('selectedIndexChanging', handler);},
remove_selectedIndexChanging : function(handler) {
this.get_events().removeHandler('selectedIndexChanging', handler);},
raiseSelectedIndexChanging : function(eventArgs) {
var handler = this.get_events().getHandler('selectedIndexChanging');if (handler) {
handler(this, eventArgs);}
},
add_selectedIndexChanged : function(handler) {
this.get_events().addHandler('selectedIndexChanged', handler);},
remove_selectedIndexChanged : function(handler) {
this.get_events().removeHandler('selectedIndexChanged', handler);},
raiseSelectedIndexChanged : function(eventArgs) {
var handler = this.get_events().getHandler('selectedIndexChanged');if (handler) {
handler(this, eventArgs);}
},
get_Pane : function(index) {
if (index === undefined || index === null) {
index = this._selectedIndex;}
return (this._panes && index >= 0 && index < this._panes.length) ? this._panes[index] : null;}, 
get_Count : function() {
return this._panes ? this._panes.length : 0;},
get_TransitionDuration : function() {
return this._duration * 1000;},
set_TransitionDuration : function(value) {
if (this._duration != (value / 1000)) {
this._duration = value / 1000;for (var i = 0;i < this._panes.length;i++) {
var animation = this._panes[i].animation;if (animation) {
animation.set_duration(this._duration);}
}
this.raisePropertyChanged('TransitionDuration');}
},
get_FramesPerSecond : function() {
return this._framesPerSecond;},
set_FramesPerSecond : function(value) {
if (this._framesPerSecond != value) {
this._framesPerSecond = value;for (var i = 0;i < this._panes.length;i++) {
var animation = this._panes[i].animation;if (animation) {
animation.set_fps(this._framesPerSecond);}
}
this.raisePropertyChanged('FramesPerSecond');}
},
get_FadeTransitions : function() {
return this._fadeTransitions;},
set_FadeTransitions : function(value) {
if (this._fadeTransitions != value) {
this._fadeTransitions = value;this._disposeAnimations();if (!this._fadeTransitions) {
for (var i = 0;i < this._panes.length;i++) {
if ($common.getElementOpacity(this._panes[i].content) != 1) {
$common.setElementOpacity(this._panes[i].content, 1);}
if ($common.getElementOpacity(this._panes[i].content._original) != 1) {
$common.setElementOpacity(this._panes[i].content._original, 1);}
}
}
this.raisePropertyChanged('FadeTransitions');}
},
get_HeaderCssClass: function() {
return this._headerCssClass;},
set_HeaderCssClass: function(value) {
this._headerCssClass = value;this.raisePropertyChanged('HeaderCssClass');},
get_HeaderSelectedCssClass: function() {
return this._headerSelectedCssClass;},
set_HeaderSelectedCssClass: function(value) {
this._headerSelectedCssClass = value;this.raisePropertyChanged('HeaderSelectedCssClass');}, 
get_ContentCssClass: function() {
return this._contentCssClass;},
set_ContentCssClass: function(value) {
this._contentCssClass = value;this.raisePropertyChanged('ContentCssClass');}, 
get_AutoSize : function() {
return this._autoSize;},
set_AutoSize : function(value) {
if (Sys.Browser.agent === Sys.Browser.InternetExplorer && value === AjaxControlToolkit.AutoSize.Limit) {
value = AjaxControlToolkit.AutoSize.Fill;}
if (this._autoSize != value) {
this._autoSize = value;this._initializeLayout();this.raisePropertyChanged('AutoSize');}
},
get_SelectedIndex : function() {
return this._selectedIndex;},
set_SelectedIndex : function(value) {
this._changeSelectedIndex(value, true);},
get_requireOpenedPane : function() {
return this._requireOpenedPane;},
set_requireOpenedPane : function(value) {
if (this._requireOpenedPane != value) {
this._requireOpenedPane = value;this.raisePropertyChanged('requireOpenedPane');}
},
get_suppressHeaderPostbacks : function() {
return this._suppressHeaderPostbacks;},
set_suppressHeaderPostbacks : function(value) {
if (this._suppressHeaderPostbacks != value) {
this._suppressHeaderPostbacks = value;this.raisePropertyChanged('suppressHeaderPostbacks');}
}
}
AjaxControlToolkit.AccordionBehavior.registerClass('AjaxControlToolkit.AccordionBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DraggableListItem = function(e) {
AjaxControlToolkit.DraggableListItem.initializeBase(this, [e]);this._data = null;this._handle = null;this._dragVisualTemplate = null;this._dragVisualTemplateInstance = null;this._mouseDownHandler = null;}
AjaxControlToolkit.DraggableListItem.prototype = { 
dispose : function() {
var e = this.get_element();this.set_handle(null);AjaxControlToolkit.DraggableListItem.callBaseMethod(this, 'dispose');},
get_data : function() {
if (this._data == null) {
var dragSource = this._findDragSource();if (dragSource != null && AjaxControlToolkit.DragDropList.IsValidDataType(dragSource.get_dragDataType())) {
return this.get_element();}
}
return this._data;},
set_data : function(value) {
if (this._data != value) {
this._data = value;this.raisePropertyChanged('data');}
},
get_handle : function() {
return this._handle;},
set_handle : function(value) {
if (this._handle != null) {
$removeHandler(this._handle, "mousedown", this.get_mouseDownHandler());this._handle.__draggableBehavior = null;}
if (value) {
if (value.element) {
value = value.element;} 
this._handle = value;this.raisePropertyChanged('handle');this._handle.__draggableBehavior = this;$addHandler(this._handle, "mousedown", this.get_mouseDownHandler());this._handle.__draggableBehavior = this;}
else {
this._handle = null;}
},
get_mouseDownHandler : function() {
if (this._mouseDownHandler == null) {
this._mouseDownHandler = Function.createDelegate(this, this._onMouseDown);}
return this._mouseDownHandler;},
get_dragVisualTemplate : function() {
return this._dragVisualTemplate;},
set_dragVisualTemplate : function(value) {
if (this._dragVisualTemplate != value) {
this._dragVisualTemplate = value;this.raisePropertyChanged('dragVisualTemplate');}
},
_onMouseDown : function(ev) {
window._event = ev.rawEvent;this._handle.__draggableBehavior._mouseDownHandlerInternal(ev);},
_mouseDownHandlerInternal : function(ev) {
var ev = window.testEvent ? window.testEvent : ev;if (ev.button <= 1) {
var dragSource = this._findDragSource();if (dragSource != null) {
var dragVisual = this._createDragVisual();dragSource.startDragDrop(this.get_element(), this.get_data(), dragVisual);ev.returnValue = false;}
else {
}
}
else {
}
},
_createDragVisual : function() {
var ev = window.testEvent ? window.testEvent : window.event;if (this._dragVisualTemplate != null) {
if (this._dragVisualTemplateInstance == null) {
this._dragVisualTemplateInstance = this._dragVisualTemplate.cloneElement();}
else if (!Sys.UI.DragDropManager._getInstance().hasParent(this._dragVisualTemplateInstance)) {
this.get_element().appendChild(this._dragVisualTemplateInstance);}
var location = { x: ev.clientX, y: ev.clientY };location = Sys.UI.DragDropManager._getInstance().addPoints(location, Sys.UI.DragDropManager._getInstance().getScrollOffset(document.body, true));$common.setLocation(this._dragVisualTemplateInstance, location);}
return this._dragVisualTemplateInstance;},
_findDragSource : function() {
var element = this.get_element();while (element != null) {
if (element.__dragDropList != null) {
return element.__dragDropList;}
element = element.parentNode;}
return null;}
}
AjaxControlToolkit.DraggableListItem.registerClass('AjaxControlToolkit.DraggableListItem', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.PasswordStrengthExtenderBehavior = function(element) {
AjaxControlToolkit.PasswordStrengthExtenderBehavior.initializeBase(this, [element]);this._levelArray = new Array();this._styleArray = new Array();this._txtPwdStrengthCssClass = null;this._barBorderCssClass = null;this._barIndicatorCssClass = null;this._displayPosition = AjaxControlToolkit.DisplayPosition.RightSide;this._strengthIndicator = AjaxControlToolkit.StrengthIndicatorTypes.Text;this._preferredPasswordLength = 0;this._minimumNumericCharacters = 0;this._minimumSymbolCharacters = 0;this._requiresUpperAndLowerCaseCharacters = false;this._helpHandleCssClass = '';this._helpHandlePosition = AjaxControlToolkit.DisplayPosition.AboveRight;this._helpText = '';this._helpStatusLabelID = null;this._displayDiv = null;this._helpDiv = null;this._barOuterDiv = null;this._barInnerDiv = null;this._keyPressHandler = null;this._blurHandler = null;this._helpClickHandler = null;this._prefixText = AjaxControlToolkit.Resources.PasswordStrength_StrengthPrompt;this._txtStrengthDescriptions = AjaxControlToolkit.Resources.PasswordStrength_DefaultStrengthDescriptions;this._strengthStyles = '';this._barIndicatorStyles = '';this._txtseparator = ';';this._MIN_TXT_LEVEL_COUNT = 2;this._MAX_TXT_LEVEL_COUNT = 10;this._calcWeightings = "50;15;15;20";this._minLowerCaseChars = 0;this._minUpperCaseChars = 0;}
AjaxControlToolkit.PasswordStrengthExtenderBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.PasswordStrengthExtenderBehavior.callBaseMethod(this, 'initialize');this._createIndicatorDisplayElement();var e = this.get_element();this._keyPressHandler = Function.createDelegate(this, this._onKeyPress);this._blurHandler = Function.createDelegate(this, this._onBlur);$addHandler(e,'keyup', this._keyPressHandler);$addHandler(e,'blur', this._blurHandler);if (this._preferredPasswordLength == null || this._preferredPasswordLength == '' || this._preferredPasswordLength <= 0) {
this._preferredPasswordLength = 10;this.raisePropertyChanged('PreferredPasswordLength');}
if (this._calcWeightings == null || this._calcWeightings == "") {
this._calcWeightings = "50;15;15;20";this.raisePropertyChanged('CalculationWeightings');}
this._getPasswordStrength();},
_createIndicatorDisplayElement : function() {
if (this._strengthIndicator == AjaxControlToolkit.StrengthIndicatorTypes.BarIndicator)
this._createBarIndicatorDisplayElement();else
this._createTextDisplayElement();if (this._createHelpDisplayElement() == true)
{
$common.setVisible(this._helpDiv,true);var bounds = $common.getBounds(this.get_element());var helpBounds = $common.getBounds(this._helpDiv);var posY;var posX;var offset = 3;if (this._helpHandlePosition == "LeftSide")
{
posY = bounds.y + ((bounds.height / 2) - (helpBounds.height / 2));posX = bounds.x - helpBounds.width;} else if (this._helpHandlePosition == "BelowRight")
{
posY = bounds.y + bounds.height - offset;posX = bounds.x + bounds.width - offset;} else if (this._helpHandlePosition == "BelowLeft")
{
posY = bounds.y + bounds.height - offset;posX = bounds.x - helpBounds.width + offset;} else if (this._helpHandlePosition == "RightSide")
{
posY = bounds.y + ((bounds.height / 2) - (helpBounds.height / 2));posX = bounds.x + bounds.width;} else if (this._helpHandlePosition == "AboveLeft")
{
posY = bounds.y - helpBounds.height + offset;posX = bounds.x - helpBounds.width + offset;} else 
{
posY = bounds.y - helpBounds.height + offset;posX = bounds.x + bounds.width - offset;}
this._helpDiv.style.top = posY + 'px';this._helpDiv.style.left = posX + 'px';}
},
_createTextDisplayElement : function() {
var p = document.createElement("label");p.style.position= "absolute";p.style.visibility="hidden";p.style.display = "none";if (this.get_element().id) {
p.id = this.get_element().id + "_PasswordStrength";}
this._displayDiv = p;this._setTextDisplayLocation(p);document.body.appendChild(p);this._setTextDisplayStyle(0);},
_setTextDisplayStyle : function(index) {
if (this._styleArray.length == 0)
{
if (this._txtPwdStrengthCssClass != null && this._txtPwdStrengthCssClass != '')
this._displayDiv.className = this._txtPwdStrengthCssClass;else
this._displayDiv.style.backgroundColor = "yellow";} else
{
this._displayDiv.style.backgroundColor = "";if ( (this._txtPwdStrengthCssClass != null && this._txtPwdStrengthCssClass != '') &&
Sys.UI.DomElement.containsCssClass(this._displayDiv,this._txtPwdStrengthCssClass))
{
Sys.UI.DomElement.removeCssClass(this._displayDiv,this._txtPwdStrengthCssClass)
}
this._displayDiv.className = this._styleArray[index];}
},
_setBarDisplayStyle : function(index) {
if (this._barBorderCssClass != '')
this._barOuterDiv.className = this._barBorderCssClass;else
{
d1.style.width="200px";d1.style.borderStyle="solid";d1.style.borderWidth="1px";}
if (this._styleArray.length == 0)
{
if (this._barIndicatorCssClass != '')
this._barInnerDiv.className = this._barIndicatorCssClass;else
this._barInnerDiv.style.backgroundColor = "red";} else
{
if ( (this._barIndicatorCssClass != null && this._barIndicatorCssClass != '') &&
Sys.UI.DomElement.containsCssClass(this._barInnerDiv,this._barIndicatorCssClass))
{
Sys.UI.DomElement.removeCssClass(this._barInnerDiv,this._barIndicatorCssClass)
}
this._barInnerDiv.className = this._styleArray[index];}
},
_createBarIndicatorDisplayElement : function() {
var d1 = document.createElement("div");d1.style.position= "absolute";d1.style.visibility="hidden";d1.style.display = "none";var d2 = document.createElement("div");d2.style.position= "absolute";d2.style.visibility="hidden";d2.style.display = "none";d1.style.height = this.get_element().offsetHeight+4 + "px";if (this.get_element().id) {
d1.id = this.get_element().id + "_PasswordStrengthBar1";d2.id = this.get_element().id + "_PasswordStrengthBar2";}
this._barOuterDiv = d1;this._barInnerDiv = d2;this._extractStyles();this._setBarDisplayStyle(0);document.body.appendChild(d1);document.body.appendChild(d2);this._setBarDisplayLocation(d1,d2);},
_createHelpDisplayElement : function() {
if (this._helpHandleCssClass != '')
{
var req = document.createElement("a");req.style.position= "absolute";req.style.visibility="hidden";req.style.display = "none";req.href = "#";req.title = AjaxControlToolkit.Resources.PasswordStrength_GetHelpRequirements;if (this.get_element().id) {
req.id = this.get_element().id + "_PasswordStrengthReqDisplay";}
this._helpClickHandler = Function.createDelegate(this,this._onHelpClick);$addHandler(req,'click',this._helpClickHandler);this._helpDiv = req;this._helpDiv.className = this._helpHandleCssClass;if (this.get_element().parentElement != null && this.get_element().parentElement.canHaveChildren)
this.get_element().parentElement.appendChild(req);else
document.body.appendChild(req);return true;} else
return false;},
_setTextDisplayLocation : function(htmlElement) {
var location = $common.getLocation(this.get_element());var bounds = $common.getBounds(this.get_element());var offsetAmount = 15;if (this._displayPosition == AjaxControlToolkit.DisplayPosition.LeftSide)
{
htmlElement.style.top = location.y + "px";htmlElement.style.left = location.x - bounds.width - offsetAmount + "px";} else if (this._displayPosition == "BelowRight")
{
htmlElement.style.top = location.y + this.get_element().offsetHeight + "px";htmlElement.style.left = location.x + this.get_element().offsetWidth - (this.get_element().offsetWidth/4) + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.BelowLeft)
{
htmlElement.style.top = location.y + this.get_element().offsetHeight + "px";htmlElement.style.left = location.x - offsetAmount + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.AboveRight)
{
htmlElement.style.top = location.y - this.get_element().offsetHeight + "px";htmlElement.style.left = location.x + this.get_element().offsetWidth - (this.get_element().offsetWidth/4) + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.AboveLeft)
{
htmlElement.style.top = location.y - this.get_element().offsetHeight + "px";htmlElement.style.left = location.x - offsetAmount + "px";} else 
{
htmlElement.style.top = location.y + "px";htmlElement.style.left = location.x + this.get_element().offsetWidth + offsetAmount + "px";}
},
_setBarDisplayLocation : function(outerElement, innerElement) {
if (this.get_element().offsetHeight > 0) {
var outerBorder = $common.getBorderBox(outerElement);var outerPadding = $common.getPaddingBox(outerElement);var leftIndent = outerBorder.left + outerPadding.left;var topIndent = outerBorder.top + outerPadding.top;innerElement.style.height = this.get_element().offsetHeight + "px";outerElement.style.height = this.get_element().offsetHeight + "px";var location = $common.getLocation(this.get_element());var offsetAmount = 15;if (this._displayPosition == AjaxControlToolkit.DisplayPosition.LeftSide)
{
var initialVisibleState = $common.getVisible(this._barOuterDiv);$common.setVisible(this._barOuterDiv,true);var barBounds = $common.getContentSize(outerElement);$common.setVisible(this._barOuterDiv, initialVisibleState);var _barIndicatorWidth = barBounds.width;outerElement.style.top = location.y + "px";outerElement.style.left = location.x - parseInt(_barIndicatorWidth) - offsetAmount + "px";innerElement.style.top = location.y + topIndent + "px";innerElement.style.left = location.x - parseInt(_barIndicatorWidth) - offsetAmount + leftIndent + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.BelowRight)
{
outerElement.style.top = location.y + this.get_element().offsetHeight + "px";outerElement.style.left = location.x + this.get_element().offsetWidth + "px";innerElement.style.top = location.y + this.get_element().offsetHeight + topIndent + "px";innerElement.style.left = location.x + this.get_element().offsetWidth + leftIndent + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.BelowLeft)
{
outerElement.style.top = location.y + this.get_element().offsetHeight + "px";outerElement.style.left = location.x + "px";innerElement.style.top = location.y + this.get_element().offsetHeight + topIndent + "px";innerElement.style.left = location.x + leftIndent + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.AboveRight)
{
outerElement.style.top = location.y-this.get_element().offsetHeight + "px";outerElement.style.left = location.x + this.get_element().offsetWidth + "px";innerElement.style.top = location.y-this.get_element().offsetHeight + topIndent + "px";innerElement.style.left = location.x + this.get_element().offsetWidth + leftIndent + "px";} else if (this._displayPosition == AjaxControlToolkit.DisplayPosition.AboveLeft)
{
outerElement.style.top = location.y-this.get_element().offsetHeight + "px";outerElement.style.left = location.x + "px";innerElement.style.top = location.y-this.get_element().offsetHeight + topIndent + "px";innerElement.style.left = location.x + leftIndent + "px";} else 
{
outerElement.style.top = location.y + "px";outerElement.style.left = location.x + this.get_element().offsetWidth + offsetAmount + "px";innerElement.style.top = location.y + topIndent + "px";innerElement.style.left = location.x + this.get_element().offsetWidth + offsetAmount + leftIndent + "px";}
}
},
_showStrength : function() {
var e = this.get_element();if (e.readOnly == true)
return;var pwdStrength = this._getPasswordStrength();if (this._strengthIndicator == AjaxControlToolkit.StrengthIndicatorTypes.BarIndicator)
{
$common.setVisible(this._barOuterDiv , true);$common.setVisible(this._barInnerDiv, true);var index = 0;if (this._styleArray != null && this._styleArray.length > 0)
{
index = parseInt(pwdStrength/100 * (this._styleArray.length-1));}
this._setBarDisplayStyle(index);this._setBarDisplayLocation(this._barOuterDiv,this._barInnerDiv);this._showStrengthAsBarValue(pwdStrength);} else
{
this._createTextDescriptions(this._txtStrengthDescriptions);$common.setVisible(this._displayDiv, true);var index = parseInt(pwdStrength/100 * (this._levelArray.length-1));var pwdStrengthText = this._levelArray[index];this._setTextDisplayStyle(index);this._setTextDisplayLocation(this._displayDiv);this._showStrengthAsText(pwdStrengthText);}
},
_showStrengthAsText : function(pwdStrengthVal) {
this._displayDiv.innerHTML = this._prefixText + pwdStrengthVal;},
_showStrengthAsBarValue : function(strengthValue) {
var bounds = $common.getContentSize(this._barOuterDiv);var outerPadding = $common.getPaddingBox(this._barOuterDiv);var barLength = parseInt( bounds.width * (strengthValue / 100));this._barInnerDiv.style.width = barLength + "px";},
_getPasswordStrength : function() {
var pwd = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Value();var pwdRequirements = '';var percentTotal = 0;var weights = this._calcWeightings.split(';');if (weights.length != 4)
Sys.Debug.assert(null, AjaxControlToolkit.Resources.PasswordStrength_InvalidWeightingRatios);var _ratioLen = parseInt(weights[0]);var _ratioNum = parseInt(weights[1]);var _ratioCas = parseInt(weights[2]);var _ratioSym = parseInt(weights[3]);var ratio = pwd.length / this._preferredPasswordLength;if (ratio > 1)
ratio = 1;var lengthStrength = (ratio * _ratioLen);percentTotal += lengthStrength;if (ratio < 1)
pwdRequirements = String.format(AjaxControlToolkit.Resources.PasswordStrength_RemainingCharacters, this._preferredPasswordLength - pwd.length);if (this._minimumNumericCharacters > 0)
{
var numbersRegex = new RegExp("[0-9]", "g");var numCount = this._getRegexCount(numbersRegex,pwd);if ( numCount >= this._minimumNumericCharacters)
percentTotal += _ratioNum;if (numCount < this._minimumNumericCharacters)
{
if (pwdRequirements != '')
pwdRequirements += ', ';pwdRequirements += String.format(AjaxControlToolkit.Resources.PasswordStrength_RemainingNumbers, this._minimumNumericCharacters - numCount);}
} else
{
percentTotal += (ratio * _ratioNum);}
if (this._requiresUpperAndLowerCaseCharacters == true ||
(typeof(this._requiresUpperAndLowerCaseCharacters) == 'String' && Boolean.parse(this._requiresUpperAndLowerCaseCharacters) == true) )
{
var lowercaseRegex = new RegExp("[a-z]", "g");var uppercaseRegex = new RegExp("[A-Z]", "g");var numLower = this._getRegexCount(lowercaseRegex,pwd);var numUpper = this._getRegexCount(uppercaseRegex,pwd);if (numLower > 0 || numUpper > 0)
{
if (numLower >= this._minLowerCaseChars && numUpper >= this._minUpperCaseChars)
percentTotal += _ratioCas;else
{
if (this._minLowerCaseChars > 0 && (this._minLowerCaseChars - numLower) > 0)
{
if (pwdRequirements != '')
pwdRequirements += ', ';pwdRequirements += String.format(AjaxControlToolkit.Resources.PasswordStrength_RemainingLowerCase, this._minLowerCaseChars - numLower);}
if (this._minUpperCaseChars > 0 && (this._minUpperCaseChars - numUpper))
{
if (pwdRequirements != '')
pwdRequirements += ', ';pwdRequirements += String.format(AjaxControlToolkit.Resources.PasswordStrength_RemainingUpperCase, this._minUpperCaseChars - numUpper);}
}
}
else
{
if (pwdRequirements != '')
pwdRequirements += ', ';pwdRequirements += AjaxControlToolkit.Resources.PasswordStrength_RemainingMixedCase;}
} else
{
percentTotal += (ratio * _ratioCas);}
if (this._minimumSymbolCharacters > 0)
{
var symbolRegex = new RegExp("[^a-z,A-Z,0-9,\x20]", "g");var numCount = this._getRegexCount(symbolRegex,pwd);if (numCount >= this._minimumSymbolCharacters)
percentTotal += _ratioSym;if (numCount < this._minimumSymbolCharacters)
{
if (pwdRequirements != '')
pwdRequirements += ', ';pwdRequirements += String.format(AjaxControlToolkit.Resources.PasswordStrength_RemainingSymbols, this._minimumSymbolCharacters - numCount);}
} else
{
percentTotal += (ratio * _ratioSym);}
this.set_HelpText(pwdRequirements);return percentTotal;},
_getRegexCount : function(regex,testString) {
var cnt = 0;if (testString != null && testString != "")
{
var results = testString.match(regex);if (results != null)
cnt = results.length;}
return cnt;},
_extractStyles : function() {
if (this._strengthStyles != null && this._strengthStyles != "" )
this._styleArray = this._strengthStyles.split(this._txtseparator);},
_createTextDescriptions : function(descriptions) {
this._levelArray = this._txtStrengthDescriptions.split(this._txtseparator);this._extractStyles();if (this._styleArray.length > 0 && this._styleArray.length != this._levelArray.length)
{
Sys.Debug.assert(false, AjaxControlToolkit.Resources.PasswordStrength_InvalidStrengthDescriptionStyles);}
if (this._levelArray.length < this._MIN_TXT_LEVEL_COUNT || this._levelArray > this._MAX_TXT_LEVEL_COUNT)
{
Sys.Debug.assert(false, AjaxControlToolkit.Resources.PasswordStrength_InvalidStrengthDescriptions);}
},
_onKeyPress : function() {
this._showStrength();},
_onBlur : function() {
if (this._strengthIndicator == AjaxControlToolkit.StrengthIndicatorTypes.BarIndicator)
{
$common.setVisible(this._barOuterDiv, false);$common.setVisible(this._barInnerDiv, false);} else
{
$common.setVisible(this._displayDiv, false);}
},
_onHelpClick : function() {
if (this._helpText == '')
alert(AjaxControlToolkit.Resources.PasswordStrength_Satisfied);else
alert(this._helpText);},
dispose : function() {
var e = this.get_element();if (this._keyPressHandler) {
$removeHandler(e,'keyup', this._keyPressHandler);this._keyPressHandler = null;}
if (this._blurHandler) {
$removeHandler(e,'blur', this._blurHandler);this._blurHandler = null;}
if (this._helpClickHandler) {
$removeHandler(this._helpDiv, 'click', this._helpClickHandler);this._helpClickHandler = null;}
if(this._displayDiv) 
$common.setVisible(this._displayDiv, false);if (this._barOuterDiv)
$common.setVisible(this._barOuterDiv,false);if (this._barInnerDiv)
$common.setVisible(this._barInnerDiv, false);if (this._helpHandleCssClass != '' && this._helpDiv)
$common.setVisible(this._helpDiv ,false);AjaxControlToolkit.PasswordStrengthExtenderBehavior.callBaseMethod(this, 'dispose');},
get_PreferredPasswordLength : function() {
return this._preferredPasswordLength;},
set_PreferredPasswordLength : function(value) {
if (this._preferredPasswordLength != value) {
this._preferredPasswordLength = value;this.raisePropertyChanged('PreferredPasswordLength');}
},
get_MinimumNumericCharacters : function() {
return this._minimumNumericCharacters;},
set_MinimumNumericCharacters : function(value) {
if (this._minimumNumericCharacters != value) {
this._minimumNumericCharacters = value;this.raisePropertyChanged('MinimumNumericCharacters');}
},
get_MinimumSymbolCharacters : function() {
return this._minimumSymbolCharacters;},
set_MinimumSymbolCharacters : function(value) {
if (this._minimumSymbolCharacters != value) {
this._minimumSymbolCharacters = value;this.raisePropertyChanged('MinimumSymbolCharacters');}
},
get_RequiresUpperAndLowerCaseCharacters : function() {
return this._requiresUpperAndLowerCaseCharacters;},
set_RequiresUpperAndLowerCaseCharacters : function(value) {
if (this._requiresUpperAndLowerCaseCharacters != value) {
this._requiresUpperAndLowerCaseCharacters = value;this.raisePropertyChanged('RequiresUpperAndLowerCaseCharacters');}
},
get_TextCssClass : function() {
return this._txtPwdStrengthCssClass;},
set_TextCssClass : function(value) {
if (this._txtPwdStrengthCssClass != value) {
this._txtPwdStrengthCssClass = value;this.raisePropertyChanged('TextCssClass');}
},
get_BarBorderCssClass : function() {
return this._barBorderCssClass;},
set_BarBorderCssClass : function(value) {
if (this._barBorderCssClass != value) {
this._barBorderCssClass = value;this.raisePropertyChanged('BarBorderCssClass');}
},
get_BarIndicatorCssClass : function() {
return this._barIndicatorCssClass;},
set_BarIndicatorCssClass : function(value) {
if (this._barIndicatorCssClass != value) {
this._barIndicatorCssClass = value;this.raisePropertyChanged('BarIndicatorCssClass');}
},
get_DisplayPosition : function() {
return this._displayPosition;},
set_DisplayPosition : function(value) {
if (this._displayPosition != value) {
this._displayPosition = value;this.raisePropertyChanged('DisplayPosition');}
},
get_PrefixText : function() {
return this._prefixText;},
set_PrefixText : function(value) {
if (this._prefixText != value) {
this._prefixText = value;this.raisePropertyChanged('PrefixText');}
},
get_StrengthIndicatorType : function() {
return this._strengthIndicator;},
set_StrengthIndicatorType : function(value) {
if (this._strengthIndicator != value) {
this._strengthIndicator = value;this.raisePropertyChanged('StrengthIndicatorType');}
},
get_TextStrengthDescriptions : function() {
return this._txtStrengthDescriptions;},
set_TextStrengthDescriptions : function(value) {
if (value != null && value != '' && value != this._txtStrengthDescriptions) {
this._txtStrengthDescriptions = value;this.raisePropertyChanged('TextStrengthDescriptions');}
},
get_StrengthStyles : function() {
return this._strengthStyles;},
set_StrengthStyles : function(value) {
if (value != null && value != '' && value != this._strengthStyles) {
this._strengthStyles = value;this.raisePropertyChanged('StrengthStyles');}
},
get_TextStrengthDescriptionStyles : function() {
return this.get_StrengthStyles();},
set_TextStrengthDescriptionStyles : function(value) {
this.set_StrengthStyles(value);},
get_HelpHandleCssClass : function() {
return this._helpHandleCssClass;},
set_HelpHandleCssClass : function(value) {
if (this._helpHandleCssClass != value) {
this._helpHandleCssClass = value;this.raisePropertyChanged('HelpHandleCssClass');}
},
get_HelpHandlePosition : function() {
return this._helpHandlePosition;},
set_HelpHandlePosition : function(value) {
if (this._helpHandlePosition != value) {
this._helpHandlePosition = value;this.raisePropertyChanged('HelpHandlePosition');}
},
get_HelpText : function() {
return this._helpText;},
get_CalculationWeightings : function() {
return this._calcWeightings;},
set_CalculationWeightings : function(value) {
if (this._calcWeightings != value) {
this._calcWeightings = value;this.raisePropertyChanged('CalculationWeightings');}
},
set_HelpText : function(value) {
if (this._helpStatusLabelID) {
var label = $get(this._helpStatusLabelID);if (label) {
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Value().length > 0) { 
label.innerHTML = value;}
else {
label.innerHTML = "";}
}
}
if (this._helpText != value) {
this._helpText = value;this.raisePropertyChanged('HelpText');}
},
get_MinimumLowerCaseCharacters : function() {
return this._minLowerCaseChars;},
set_MinimumLowerCaseCharacters : function(value) {
this._minLowerCaseChars = value;},
get_MinimumUpperCaseCharacters : function() {
return this._minUpperCaseChars;},
set_MinimumUpperCaseCharacters : function(value) {
this._minUpperCaseChars = value;},
get_HelpStatusLabelID : function() {
return this._helpStatusLabelID;},
set_HelpStatusLabelID : function(value) {
if (this._helpStatusLabelID != value) {
this._helpStatusLabelID = value;this.raisePropertyChanged('HelpStatusLabelID');}
}
}
AjaxControlToolkit.PasswordStrengthExtenderBehavior.registerClass('AjaxControlToolkit.PasswordStrengthExtenderBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.StrengthIndicatorTypes = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.DisplayPosition = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.StrengthIndicatorTypes.prototype = {
Text: 0,
BarIndicator: 1
}
AjaxControlToolkit.DisplayPosition.prototype = {
RightSide: 0,
AboveRight: 1,
AboveLeft: 2,
LeftSide: 3,
BelowRight: 4,
BelowLeft: 5
}
AjaxControlToolkit.DisplayPosition.registerEnum('AjaxControlToolkit.DisplayPosition');AjaxControlToolkit.StrengthIndicatorTypes.registerEnum('AjaxControlToolkit.StrengthIndicatorTypes');
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.FilteredTextBoxBehavior = function(element) {
AjaxControlToolkit.FilteredTextBoxBehavior.initializeBase(this, [element]);this._keypressHandler = null;this._changeHandler = null;this._intervalID = null;this._filterType = AjaxControlToolkit.FilterTypes.Custom;this._filterMode = AjaxControlToolkit.FilterModes.ValidChars;this._validChars = null;this._invalidChars = null;this._filterInterval = 250;this.charTypes = { };this.charTypes.LowercaseLetters = "abcdefghijklmnopqrstuvwxyz";this.charTypes.UppercaseLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";this.charTypes.Numbers = "0123456789";}
AjaxControlToolkit.FilteredTextBoxBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.FilteredTextBoxBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();this._keypressHandler = Function.createDelegate(this, this._onkeypress);$addHandler(element, 'keypress', this._keypressHandler);this._changeHandler = Function.createDelegate(this, this._onchange);$addHandler(element, 'change', this._changeHandler);var callback = Function.createDelegate(this, this._intervalCallback);this._intervalID = window.setInterval(callback, this._filterInterval);},
dispose : function() {
var element = this.get_element();$removeHandler(element, 'keypress', this._keypressHandler);this._keypressHandler = null;$removeHandler(element, 'change', this._changeHandler);this._changeHandler = null;window.clearInterval(this._intervalID);AjaxControlToolkit.FilteredTextBoxBehavior.callBaseMethod(this, 'dispose');},
_getValidChars : function() {
if (this._validChars) return this._validChars;this._validChars = "";for (type in this.charTypes) {
var filterType = AjaxControlToolkit.FilterTypes.toString(this._filterType);if (filterType.indexOf(type) != -1) {
this._validChars += this.charTypes[type];}
}
return this._validChars;},
_getInvalidChars : function() {
if (!this._invalidChars) {
this._invalidChars = this.charTypes.Custom;}
return this._invalidChars;},
_onkeypress : function(evt) {
var scanCode;if ((evt.charCode == Sys.UI.Key.pageUp) ||
(evt.charCode == Sys.UI.Key.pageDown) ||
(evt.charCode == Sys.UI.Key.up) ||
(evt.charCode == Sys.UI.Key.down) ||
(evt.charCode == Sys.UI.Key.left) ||
(evt.charCode == Sys.UI.Key.right) ||
(evt.charCode == Sys.UI.Key.home) ||
(evt.charCode == Sys.UI.Key.end) ||
(evt.charCode == 46 ) ||
(evt.ctrlKey )) {
return;}
if (evt.rawEvent.keyIdentifier) {
if (evt.rawEvent.ctrlKey || evt.rawEvent.altKey || evt.rawEvent.metaKey) {
return;}
if (evt.rawEvent.keyIdentifier.substring(0,2) != "U+") {
return;}
scanCode = evt.rawEvent.charCode;if (scanCode == 63272 ) {
return;}
} else {
scanCode = evt.charCode;} 
if (scanCode && scanCode >= 0x20 ) {
var c = String.fromCharCode(scanCode);if(!this._processKey(c)) {
evt.preventDefault();}
}
},
_processKey : function(key) {
var filter = "";var shouldFilter = false;if (this._filterMode == AjaxControlToolkit.FilterModes.ValidChars) {
filter = this._getValidChars();shouldFilter = filter && (filter.length > 0) && (filter.indexOf(key) == -1);} else {
filter = this._getInvalidChars();shouldFilter = filter && (filter.length > 0) && (filter.indexOf(key) > -1);}
var eventArgs = new AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs(key, AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Value(), shouldFilter);this.raiseProcessKey(eventArgs);if (eventArgs.get_allowKey()) {
return true;}
this.raiseFiltered(new AjaxControlToolkit.FilteredTextBoxEventArgs(key));return false;},
_onchange : function() {
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var text = wrapper.get_Value() || '';var result = new Sys.StringBuilder();for (var i = 0;i < text.length;i++) {
var ch = text.substring(i, i+1);if (this._processKey(ch)) {
result.append(ch);}
}
if (wrapper.get_Value() != result.toString()) {
wrapper.set_Value(result.toString());}
},
_intervalCallback : function() {
this._changeHandler();},
get_ValidChars : function() {
return this.charTypes.Custom;},
set_ValidChars : function(value) {
if (this._validChars != null || this.charTypes.Custom != value) {
this.charTypes.Custom = value;this._validChars = null;this.raisePropertyChanged('ValidChars');}
},
get_InvalidChars : function() {
return this.charTypes.Custom;},
set_InvalidChars : function(value) {
if (this._invalidChars != null || this.charTypes.Custom != value) {
this.charTypes.Custom = value;this._invalidChars = null;this.raisePropertyChanged('InvalidChars');}
},
get_FilterType : function() {
return this._filterType;}, 
set_FilterType : function(value) {
if (this._validChars != null || this._filterType != value) {
this._filterType = value;this._validChars = null;this.raisePropertyChanged('FilterType');}
},
get_FilterMode : function() {
return this._filterMode;}, 
set_FilterMode : function(value) {
if (this._validChars != null || this._invalidChars != null || this._filterMode != value) {
this._filterMode = value;this._validChars = null;this._invalidChars = null;this.raisePropertyChanged('FilterMode');}
},
get_FilterInterval : function() {
return this._filterInterval;},
set_FilterInterval : function(value) {
if (this._filterInterval != value) {
this._filterInterval = value;this.raisePropertyChanged('FilterInterval');}
},
add_processKey : function(handler) {
this.get_events().addHandler('processKey', handler);},
remove_processKey : function(handler) {
this.get_events().removeHandler('processKey', handler);},
raiseProcessKey : function(eventArgs) {
var handler = this.get_events().getHandler('processKey');if (handler) {
handler(this, eventArgs);}
},
add_filtered : function(handler) {
this.get_events().addHandler('filtered', handler);},
remove_filtered : function(handler) {
this.get_events().removeHandler('filtered', handler);},
raiseFiltered : function(eventArgs) {
var handler = this.get_events().getHandler('filtered');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.FilteredTextBoxBehavior.registerClass('AjaxControlToolkit.FilteredTextBoxBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.FilterTypes = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.FilterTypes.prototype = {
Custom : 0x1,
Numbers : 0x2,
UppercaseLetters : 0x4,
LowercaseLetters : 0x8
}
AjaxControlToolkit.FilterTypes.registerEnum('AjaxControlToolkit.FilterTypes', true);AjaxControlToolkit.FilterModes = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.FilterModes.prototype = {
ValidChars : 0x1,
InvalidChars : 0x2
}
AjaxControlToolkit.FilterModes.registerEnum('AjaxControlToolkit.FilterModes', true);AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs = function(key, text, shouldFilter) {
AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs.initializeBase(this);this._key = key;this._text = text;this._shouldFilter = shouldFilter;this._allowKey = !shouldFilter;}
AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs.prototype = {
get_key : function() {
return this._key;},
get_text : function() {
return this._text;},
get_shouldFilter : function() {
return this._shouldFilter;},
get_allowKey : function() {
return this._allowKey;},
set_allowKey : function(value) {
this._allowKey = value;}
}
AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs.registerClass('AjaxControlToolkit.FilteredTextBoxProcessKeyEventArgs', Sys.EventArgs);AjaxControlToolkit.FilteredTextBoxEventArgs = function(key) {
AjaxControlToolkit.FilteredTextBoxEventArgs.initializeBase(this);this._key = key;}
AjaxControlToolkit.FilteredTextBoxEventArgs.prototype = {
get_key : function() {
return this._key;}
}
AjaxControlToolkit.FilteredTextBoxEventArgs.registerClass('AjaxControlToolkit.FilteredTextBoxEventArgs', Sys.EventArgs);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.RatingBehavior = function(element) {
AjaxControlToolkit.RatingBehavior.initializeBase(this, [element]);this._starCssClass = null;this._filledStarCssClass = null;this._emptyStarCssClass = null;this._waitingStarCssClass = null;this._readOnly = false;this._ratingValue = 0;this._currentRating = 0;this._maxRatingValue = 5;this._tag = "";this._ratingDirection = 0;this._stars = null;this._callbackID = null;this._mouseOutHandler = Function.createDelegate(this, this._onMouseOut);this._starClickHandler = Function.createDelegate(this, this._onStarClick);this._starMouseOverHandler = Function.createDelegate(this, this._onStarMouseOver);this._keyDownHandler = Function.createDelegate(this, this._onKeyDownBack);this._autoPostBack = false;}
AjaxControlToolkit.RatingBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.RatingBehavior.callBaseMethod(this, 'initialize');var elt = this.get_element();this._stars = [];for (var i = 1;i <= this._maxRatingValue;i++) {
starElement = $get(elt.id + '_Star_' + i);starElement.value = i;Array.add(this._stars, starElement);$addHandler(starElement, 'click', this._starClickHandler);$addHandler(starElement, 'mouseover', this._starMouseOverHandler);}
$addHandler(elt, 'mouseout', this._mouseOutHandler);$addHandler(elt, "keydown", this._keyDownHandler);this._update();},
dispose : function() {
var elt = this.get_element();if (this._stars) {
for (var i = 0;i < this._stars.length;i++) {
var starElement = this._stars[i];$removeHandler(starElement, 'click', this._starClickHandler);$removeHandler(starElement, 'mouseover', this._starMouseOverHandler);}
this._stars = null;}
$removeHandler(elt, 'mouseout', this._mouseOutHandler);$removeHandler(elt, "keydown", this._keyDownHandler);AjaxControlToolkit.RatingBehavior.callBaseMethod(this, 'dispose');},
_onError : function(message, context) {
alert(String.format(AjaxControlToolkit.Resources.Rating_CallbackError, message));},
_receiveServerData : function(arg, context) {
context._waitingMode(false);context.raiseEndClientCallback(arg);},
_onMouseOut : function(e) {
if (this._readOnly) {
return;}
this._currentRating = this._ratingValue;this._update();this.raiseMouseOut(this._currentRating);},
_onStarClick : function(e) {
if (this._readOnly) {
return;}
if (this._ratingValue != this._currentRating) {
this.set_Rating(this._currentRating);}
},
_onStarMouseOver : function(e) {
if (this._readOnly) {
return;}
if (this._ratingDirection == 0) {
this._currentRating = e.target.value;} else {
this._currentRating = this._maxRatingValue + 1 - e.target.value;}
this._update();this.raiseMouseOver(this._currentRating);},
_onKeyDownBack : function(ev){
if (this._readOnly) {
return;}
var k = ev.keyCode ? ev.keyCode : ev.rawEvent.keyCode;if ( (k == Sys.UI.Key.right) || (k == Sys.UI.Key.up) ) {
this._currentRating = Math.min(this._currentRating + 1, this._maxRatingValue);this.set_Rating(this._currentRating);ev.preventDefault();ev.stopPropagation();} else if ( (k == Sys.UI.Key.left) || (k == Sys.UI.Key.down) ) {
this._currentRating = Math.max(this._currentRating - 1, 1);this.set_Rating(this._currentRating);ev.preventDefault();ev.stopPropagation();}
},
_waitingMode : function(activated) {
for (var i = 0;i < this._maxRatingValue;i++) {
var starElement;if (this._ratingDirection == 0) {
starElement = this._stars[i];} else {
starElement = this._stars[this._maxRatingValue - i - 1];}
if (this._currentRating > i) {
if (activated)
{
Sys.UI.DomElement.removeCssClass(starElement, this._filledStarCssClass);Sys.UI.DomElement.addCssClass(starElement, this._waitingStarCssClass);} else {
Sys.UI.DomElement.removeCssClass(starElement, this._waitingStarCssClass);Sys.UI.DomElement.addCssClass(starElement, this._filledStarCssClass);}
} else {
Sys.UI.DomElement.removeCssClass(starElement, this._waitingStarCssClass);Sys.UI.DomElement.removeCssClass(starElement, this._filledStarCssClass);Sys.UI.DomElement.addCssClass(starElement, this._emptyStarCssClass);}
}
},
_update : function() {
var elt = this.get_element();$get(elt.id + "_A").title = this._currentRating;for (var i = 0;i < this._maxRatingValue;i++) {
var starElement;if (this._ratingDirection == 0) {
starElement = this._stars[i];} else {
starElement = this._stars[this._maxRatingValue - i - 1];}
if (this._currentRating > i) {
Sys.UI.DomElement.removeCssClass(starElement, this._emptyStarCssClass);Sys.UI.DomElement.addCssClass(starElement, this._filledStarCssClass);}
else {
Sys.UI.DomElement.removeCssClass(starElement, this._filledStarCssClass);Sys.UI.DomElement.addCssClass(starElement, this._emptyStarCssClass);}
}
},
add_Rated : function(handler) {
this.get_events().addHandler("Rated", handler);},
remove_Rated : function(handler) {
this.get_events().removeHandler("Rated", handler);},
raiseRated : function(rating) {
var handler = this.get_events().getHandler("Rated");if (handler) {
handler(this, new AjaxControlToolkit.RatingEventArgs(rating));}
},
add_MouseOver : function(handler) {
this.get_events().addHandler("MouseOver", handler);},
remove_MouseOver : function(handler) {
this.get_events().removeHandler("MouseOver", handler);},
raiseMouseOver : function(rating_tmp) {
var handler = this.get_events().getHandler("MouseOver");if (handler) {
handler(this, new AjaxControlToolkit.RatingEventArgs(rating_tmp));}
},
add_MouseOut : function(handler) {
this.get_events().addHandler("MouseOut", handler);},
remove_MouseOut : function(handler) {
this.get_events().removeHandler("MouseOut", handler);},
raiseMouseOut : function(rating_old) {
var handler = this.get_events().getHandler("MouseOut");if (handler) {
handler(this, new AjaxControlToolkit.RatingEventArgs(rating_old));}
},
add_EndClientCallback : function(handler) {
this.get_events().addHandler("EndClientCallback", handler);},
remove_EndClientCallback : function(handler) {
this.get_events().removeHandler("EndClientCallback", handler);},
raiseEndClientCallback : function(result) {
var handler = this.get_events().getHandler("EndClientCallback");if (handler) {
handler(this, new AjaxControlToolkit.RatingCallbackResultEventArgs(result));}
},
get_AutoPostBack : function() {
return this._autoPostBack;},
set_AutoPostBack : function(value) {
this._autoPostBack = value;},
get_Stars : function() {
return this._stars;},
get_Tag : function() {
return this._tag;},
set_Tag : function(value) {
if (this._tag != value) {
this._tag = value;this.raisePropertyChanged('Tag');}
},
get_CallbackID : function() {
return this._callbackID;},
set_CallbackID : function(value) {
this._callbackID = value;},
get_RatingDirection : function() {
return this._ratingDirection;},
set_RatingDirection : function(value) {
if (this._ratingDirection != value) {
this._ratingDirection = value;if (this.get_isInitialized()) {
this._update();}
this.raisePropertyChanged('RatingDirection');}
},
get_EmptyStarCssClass : function() {
return this._emptyStarCssClass;},
set_EmptyStarCssClass : function(value) {
if (this._emptyStarCssClass != value) {
this._emptyStarCssClass = value;this.raisePropertyChanged('EmptyStarCssClass');}
},
get_FilledStarCssClass : function() {
return this._filledStarCssClass;},
set_FilledStarCssClass : function(value) {
if (this._filledStarCssClass != value) {
this._filledStarCssClass = value;this.raisePropertyChanged('FilledStarCssClass');}
},
get_WaitingStarCssClass : function() {
return this._waitingStarCssClass;},
set_WaitingStarCssClass : function(value) {
if (this._waitingStarCssClass != value) {
this._waitingStarCssClass = value;this.raisePropertyChanged('WaitingStarCssClass');}
},
get_Rating : function() {
this._ratingValue = AjaxControlToolkit.RatingBehavior.callBaseMethod(this, 'get_ClientState');if (this._ratingValue == '') 
this._ratingValue = null;return this._ratingValue;},
set_Rating : function(value) {
if (this._ratingValue != value) {
this._ratingValue = value;this._currentRating = value;if (this.get_isInitialized()) {
if ((value < 0) || (value > this._maxRatingValue)) {
return;}
this._update();AjaxControlToolkit.RatingBehavior.callBaseMethod(this, 'set_ClientState', [ this._ratingValue ]);this.raisePropertyChanged('Rating');this.raiseRated(this._currentRating);this._waitingMode(true);var args = this._currentRating + ";" + this._tag;var id = this._callbackID;if (this._autoPostBack) { 
__doPostBack(id, args);}
else {
WebForm_DoCallback(id, args, this._receiveServerData, this, this._onError, true)
} 
}
}
},
get_MaxRating : function() {
return this._maxRatingValue;},
set_MaxRating : function(value) {
if (this._maxRatingValue != value) {
this._maxRatingValue = value;this.raisePropertyChanged('MaxRating');}
},
get_ReadOnly : function() {
return this._readOnly;},
set_ReadOnly : function(value) {
if (this._readOnly != value) {
this._readOnly = value;this.raisePropertyChanged('ReadOnly');}
},
get_StarCssClass : function() {
return this._starCssClass;},
set_StarCssClass : function(value) {
if (this._starCssClass != value) {
this._starCssClass = value;this.raisePropertyChanged('StarCssClass');}
}
}
AjaxControlToolkit.RatingBehavior.registerClass('AjaxControlToolkit.RatingBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.RatingEventArgs = function(rating) {
AjaxControlToolkit.RatingEventArgs.initializeBase(this);this._rating = rating;}
AjaxControlToolkit.RatingEventArgs.prototype = {
get_Rating : function() {
return this._rating;}
}
AjaxControlToolkit.RatingEventArgs.registerClass('AjaxControlToolkit.RatingEventArgs', Sys.EventArgs);AjaxControlToolkit.RatingCallbackResultEventArgs = function(result) {
AjaxControlToolkit.RatingCallbackResultEventArgs.initializeBase(this);this._result = result;}
AjaxControlToolkit.RatingCallbackResultEventArgs.prototype = {
get_CallbackResult : function() {
return this._result;}
}
AjaxControlToolkit.RatingCallbackResultEventArgs.registerClass('AjaxControlToolkit.RatingCallbackResultEventArgs', Sys.EventArgs);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.PagingBulletedListBehavior = function(element) {
AjaxControlToolkit.PagingBulletedListBehavior.initializeBase(this, [element]);this._indexSizeValue = 1;this._separatorValue = ' - ';this._heightValue = null;this._maxItemPerPage = null;this._clientSortValue = false;this._selectIndexCssClassValue = null;this._unselectIndexCssClassValue = null;this._tabValue = new Array();this._tabValueObject = new Array();this._tabIndex = new Array();this._divContent = null;this._divContentIndex = null;this._divContentUl = null;this._prevIndexSelected = null;this._indexSelected = 0;this._clickIndex = null;}
AjaxControlToolkit.PagingBulletedListBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.PagingBulletedListBehavior.callBaseMethod(this, 'initialize');var clientState = this.get_ClientState();if (clientState){
var stateItems = clientState.split(";");if (stateItems.length) {
this._indexSelected = stateItems[0];if (stateItems[1] == "null")
this._indexSizeValue = null;else
this._indexSizeValue = stateItems[1];if (stateItems[2] == "null")
this._maxItemPerPage = null;else
this._maxItemPerPage = stateItems[2];if (stateItems[3] == "true"){
this._clientSortValue = true;}else{
this._clientSortValue = false;} 
}
} 
var e = this.get_element();this._divContent = document.createElement('div');e.parentNode.insertBefore(this._divContent, e);var liElements = e.childNodes;this._clickIndex = Function.createDelegate(this, this._onIndexClick);var inner;var index;this._divContentIndex = document.createElement('DIV');this._divContentIndex.style.marginBottom = '5px';this._divContent.appendChild(this._divContentIndex);for (var i = 0 ;i < liElements.length;i++) {
if (liElements[i].nodeName == 'LI') {
if ((liElements[i].firstChild) && (liElements[i].firstChild.innerHTML)) {
inner = liElements[i].firstChild.innerHTML;} else {
inner = liElements[i].innerHTML;}
this._tabValueObject[this._tabValueObject.length] = {text : inner, obj : liElements[i], index : i};}
}
if(this._clientSortValue) {
this._tabValueObject.sort(this.liElementSortText);}
this._generateIndexAndTabForView();this._removeChilds(e.childNodes);this._divContentUl = document.createElement('DIV');this._changeHeightDivContent();this._divContentUl.appendChild(e);this._divContent.appendChild(this._divContentUl);this._updateIndexAndView(this._indexSelected);},
_changeHeightDivContent : function() {
if (this._heightValue) {
this._divContentUl.style.overflow = 'scroll';this._divContentUl.style.height = (this._heightValue) + 'px';} else {
this._divContentUl.style.overflow = '';this._divContentUl.style.height = '';}
},
_createAHrefIndex : function(indexText, indexNumber) {
var spanSeparator;var aIndex;aIndex = document.createElement('a');aIndex.href = '';Sys.UI.DomElement.addCssClass(aIndex, this._unselectIndexCssClassValue);aIndex.innerHTML = indexText;aIndex.tag = indexNumber;$addHandler(aIndex, 'click',this._clickIndex);this._tabIndex[this._tabIndex.length] = aIndex;this._divContentIndex.appendChild(aIndex);spanSeparator = document.createElement('SPAN');spanSeparator.innerHTML = '\uFEFF' + this._separatorValue + '\uFEFF';this._divContentIndex.appendChild(spanSeparator);return spanSeparator;},
liElementSortText : function(x, y) {
if (x.text.toLowerCase() == y.text.toLowerCase()) {
return 0;} else {
if (x.text.toLowerCase() < y.text.toLowerCase()) {
return -1;} else {
return 1;}
}
},
liElementSortIndex : function(x, y) {
return x.index - y.index;},
_generateIndexAndTabForView : function() {
this._deleteTabIndexAndTabValue();this._tabValue = new Array();this._tabIndex = new Array();var lastSpanSeparator;this._removeChilds(this._divContentIndex.childNodes);if(this._maxItemPerPage) {
if (this._maxItemPerPage > 0) {
var j = -1;for(var i = 0;i < this._tabValueObject.length;i++) {
if((i % this._maxItemPerPage) == 0) {
j++;index = this._tabValueObject[i].text;this._tabValue[j] = new Array();lastSpanSeparator = this._createAHrefIndex(index, j);}
this._tabValue[j][this._tabValue[j].length] = this._tabValueObject[i].obj;}
}
} else {
if (this._indexSizeValue > 0) {
var currentIndex = '';var j = -1;for(var i = 0;i < this._tabValueObject.length;i++) {
index = this._tabValueObject[i].text.substr(0, this._indexSizeValue).toUpperCase();if (currentIndex != index) {
j++;this._tabValue[j] = new Array();lastSpanSeparator = this._createAHrefIndex(index, j);currentIndex = index;}
this._tabValue[j][this._tabValue[j].length] = this._tabValueObject[i].obj;}
}
}
if (lastSpanSeparator) {
this._divContentIndex.removeChild(lastSpanSeparator);}
},
_deleteTabIndexAndTabValue : function() {
if (this._clickIndex) {
for(var i = 0;i < this._tabIndex.length;i++) {
var aIndex = this._tabIndex[i];if(aIndex) {
$removeHandler(aIndex, 'click', this._clickIndex);}
}
this._changeHandler = null;}
delete this._tabIndex;for(var i = 0;i < this._tabValue.length;i++) {
delete this._tabValue[i];}
delete this._tabValue;},
dispose : function() {
this._deleteTabIndexAndTabValue();delete this._tabValueObject;AjaxControlToolkit.PagingBulletedListBehavior.callBaseMethod(this, 'dispose');},
_removeChilds : function(eChilds) {
for(var i = 0;eChilds.length;i++) {
eChilds[0].parentNode.removeChild(eChilds[0]);}
},
_renderHtml : function(index) {
var e = this.get_element();this._removeChilds(e.childNodes);for(var i = 0;i<this._tabValue[index].length;i++) {
e.appendChild(this._tabValue[index][i]);}
this._divContentUl.scrollTop = 0;},
_selectIndex : function(index) {
if (this._tabIndex.length > 0) {
Sys.UI.DomElement.removeCssClass(this._tabIndex[index], this._unselectIndexCssClassValue);Sys.UI.DomElement.addCssClass(this._tabIndex[index], this._selectIndexCssClassValue);this._prevIndexSelected = this._tabIndex[index];this.raiseIndexChanged(this._tabIndex[index]);}
},
_onIndexClick : function(evt) {
var e = this.get_element();var aIndex = evt.target;Sys.UI.DomElement.removeCssClass(this._prevIndexSelected, this._selectIndexCssClassValue);Sys.UI.DomElement.addCssClass(this._prevIndexSelected, this._unselectIndexCssClassValue);Sys.UI.DomElement.removeCssClass(aIndex, this._unselectIndexCssClassValue);Sys.UI.DomElement.addCssClass(aIndex, this._selectIndexCssClassValue);this._prevIndexSelected = aIndex;this._renderHtml(aIndex.tag);this.raiseIndexChanged(aIndex);evt.preventDefault();},
add_indexChanged : function(handler) {
this.get_events().addHandler('indexChanged', handler);},
remove_indexChanged : function(handler) {
this.get_events().removeHandler('indexChanged', handler);},
raiseIndexChanged : function(eventArgs) {
this._indexSelected = eventArgs.tag;var handler = this.get_events().getHandler('indexChanged');if (handler) {
if (!eventArgs) {
eventArgs = Sys.EventArgs.Empty;}
handler(this, eventArgs);}
this.set_ClientState(eventArgs.tag+";"+this.get_IndexSize()+";"+this.get_MaxItemPerPage()+";"+this.get_ClientSort());},
get_tabIndex : function() {
return this._tabIndex;},
get_tabValue : function() {
return this._tabValue;},
_updateIndexAndView : function(index) {
this._generateIndexAndTabForView()
if (this._tabIndex.length > 0) {
if (index < this._tabIndex.length) {
this._renderHtml(this._tabIndex[index].tag);this._selectIndex(index);} else {
this._renderHtml(this._tabIndex[0].tag);this._selectIndex(0);}
}
},
get_Height : function() {
return this._heightValue;},
set_Height : function(value) {
if (this._heightValue != value) {
this._heightValue = value;if (this.get_isInitialized()) {
this._changeHeightDivContent();}
this.raisePropertyChanged('Height');}
},
get_IndexSize : function() {
return this._indexSizeValue;},
set_IndexSize : function(value) {
if (this._indexSizeValue != value) {
this.set_ClientState("0;"+value+";"+this.get_MaxItemPerPage()+";"+this.get_ClientSort());this._indexSizeValue = value;if (this.get_isInitialized()) {
this._updateIndexAndView(0);}
this.raisePropertyChanged('IndexSize');}
},
get_MaxItemPerPage : function() {
return this._maxItemPerPage;},
set_MaxItemPerPage : function(value) {
if(this._maxItemPerPage != value) {
this.set_ClientState("0;"+this.get_IndexSize()+";"+value+";"+this.get_ClientSort());this._maxItemPerPage = value;if (this.get_isInitialized()) {
this._updateIndexAndView(0);}
this.raisePropertyChanged('MaxItemPerPage');}
},
get_Separator : function() {
return this._separatorValue;},
set_Separator : function(value) {
if (this._separatorValue != value) {
if (value) {
this._separatorValue = value;} else {
this._separatorValue = '';} 
if (this.get_isInitialized()) {
this._updateIndexAndView(0);}
this.raisePropertyChanged('Separator');}
},
get_ClientSort : function() {
return this._clientSortValue;},
set_ClientSort : function(value) {
if (this._clientSortValue != value) {
this.set_ClientState("0;"+this.get_IndexSize()+";"+this.get_MaxItemPerPage()+";"+value);this._clientSortValue = value;if (this.get_isInitialized()) {
if (this._clientSortValue)
this._tabValueObject.sort(this.liElementSortText);else
this._tabValueObject.sort(this.liElementSortIndex);this._updateIndexAndView(0);} 
this.raisePropertyChanged('ClientSort');}
},
get_SelectIndexCssClass : function() {
return this._selectIndexCssClassValue;},
set_SelectIndexCssClass : function(value) {
if (this._selectIndexCssClassValue != value) {
this._selectIndexCssClassValue = value;this.raisePropertyChanged('SelectIndexCssClass');}
},
get_UnselectIndexCssClass : function() {
return this._unselectIndexCssClassValue;},
set_UnselectIndexCssClass : function(value) {
if (this._unselectIndexCssClassValue != value) {
this._unselectIndexCssClassValue = value;this.raisePropertyChanged('UnselectIndexCssClass');}
}
}
AjaxControlToolkit.PagingBulletedListBehavior.registerClass('AjaxControlToolkit.PagingBulletedListBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DynamicPopulateBehavior = function(element) {
AjaxControlToolkit.DynamicPopulateBehavior.initializeBase(this, [element]);this._servicePath = null;this._serviceMethod = null;this._contextKey = null;this._cacheDynamicResults = false;this._populateTriggerID = null;this._setUpdatingCssClass = null;this._clearDuringUpdate = true;this._customScript = null;this._clickHandler = null;this._callID = 0;this._currentCallID = -1;this._populated = false;}
AjaxControlToolkit.DynamicPopulateBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.DynamicPopulateBehavior.callBaseMethod(this, 'initialize');$common.prepareHiddenElementForATDeviceUpdate();if (this._populateTriggerID) {
var populateTrigger = $get(this._populateTriggerID);if (populateTrigger) {
this._clickHandler = Function.createDelegate(this, this._onPopulateTriggerClick);$addHandler(populateTrigger, "click", this._clickHandler);}
}
},
dispose : function() {
if (this._populateTriggerID && this._clickHandler) {
var populateTrigger = $get(this._populateTriggerID);if (populateTrigger) {
$removeHandler(populateTrigger, "click", this._clickHandler);}
this._populateTriggerID = null;this._clickHandler = null;}
AjaxControlToolkit.DynamicPopulateBehavior.callBaseMethod(this, 'dispose');},
populate : function(contextKey) {
if (this._populated && this._cacheDynamicResults) {
return;}
if (this._currentCallID == -1) {
var eventArgs = new Sys.CancelEventArgs();this.raisePopulating(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._setUpdating(true);}
if (this._customScript) {
var scriptResult = eval(this._customScript);this.get_element().innerHTML = scriptResult;this._setUpdating(false);} else {
this._currentCallID = ++this._callID;if (this._servicePath && this._serviceMethod) {
Sys.Net.WebServiceProxy.invoke(this._servicePath, this._serviceMethod, false,
{ contextKey:(contextKey ? contextKey : this._contextKey) },
Function.createDelegate(this, this._onMethodComplete), Function.createDelegate(this, this._onMethodError),
this._currentCallID);$common.updateFormToRefreshATDeviceBuffer();}
}
},
_onMethodComplete : function (result, userContext, methodName) {
if (userContext != this._currentCallID) return;var e = this.get_element();if (e) {
e.innerHTML = result;}
this._setUpdating(false);},
_onMethodError : function(webServiceError, userContext, methodName) {
if (userContext != this._currentCallID) return;var e = this.get_element();if (e) {
if (webServiceError.get_timedOut()) {
e.innerHTML = AjaxControlToolkit.Resources.DynamicPopulate_WebServiceTimeout;} else {
e.innerHTML = String.format(AjaxControlToolkit.Resources.DynamicPopulate_WebServiceError, webServiceError.get_statusCode());}
}
this._setUpdating(false);},
_onPopulateTriggerClick : function() {
this.populate(this._contextKey);},
_setUpdating : function(updating) {
this.setStyle(updating);if (!updating) {
this._currentCallID = -1;this._populated = true;this.raisePopulated(this, Sys.EventArgs.Empty);}
},
setStyle : function(updating) {
var e = this.get_element();if (this._setUpdatingCssClass) {
if (!updating) {
e.className = this._oldCss;this._oldCss = null;} else {
this._oldCss = e.className;e.className = this._setUpdatingCssClass;}
}
if (updating && this._clearDuringUpdate) {
e.innerHTML = "";}
},
get_ClearContentsDuringUpdate : function() {
return this._clearDuringUpdate;},
set_ClearContentsDuringUpdate : function(value) {
if (this._clearDuringUpdate != value) {
this._clearDuringUpdate = value;this.raisePropertyChanged('ClearContentsDuringUpdate');}
},
get_ContextKey : function() {
return this._contextKey;},
set_ContextKey : function(value) {
if (this._contextKey != value) {
this._contextKey = value;this.raisePropertyChanged('ContextKey');}
},
get_PopulateTriggerID : function() {
return this._populateTriggerID;},
set_PopulateTriggerID : function(value) {
if (this._populateTriggerID != value) {
this._populateTriggerID = value;this.raisePropertyChanged('PopulateTriggerID');}
},
get_ServicePath : function() {
return this._servicePath;},
set_ServicePath : function(value) {
if (this._servicePath != value) {
this._servicePath = value;this.raisePropertyChanged('ServicePath');}
},
get_ServiceMethod : function() {
return this._serviceMethod;},
set_ServiceMethod : function(value) {
if (this._serviceMethod != value) {
this._serviceMethod = value;this.raisePropertyChanged('ServiceMethod');}
},
get_cacheDynamicResults : function() {
return this._cacheDynamicResults;},
set_cacheDynamicResults : function(value) {
if (this._cacheDynamicResults != value) {
this._cacheDynamicResults = value;this.raisePropertyChanged('cacheDynamicResults');}
},
get_UpdatingCssClass : function() {
return this._setUpdatingCssClass;},
set_UpdatingCssClass : function(value) {
if (this._setUpdatingCssClass != value) {
this._setUpdatingCssClass = value;this.raisePropertyChanged('UpdatingCssClass');}
},
get_CustomScript : function() {
return this._customScript;}, 
set_CustomScript : function(value) {
if (this._customScript != value) {
this._customScript = value;this.raisePropertyChanged('CustomScript');}
},
add_populating : function(handler) {
this.get_events().addHandler('populating', handler);},
remove_populating : function(handler) {
this.get_events().removeHandler('populating', handler);},
raisePopulating : function(eventArgs) {
var handler = this.get_events().getHandler('populating');if (handler) {
handler(this, eventArgs);}
},
add_populated : function(handler) {
this.get_events().addHandler('populated', handler);},
remove_populated : function(handler) {
this.get_events().removeHandler('populated', handler);},
raisePopulated : function(eventArgs) {
var handler = this.get_events().getHandler('populated');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.DynamicPopulateBehavior.registerClass('AjaxControlToolkit.DynamicPopulateBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit.Animation');AjaxControlToolkit.Animation.AnimationBehavior = function(element) {
AjaxControlToolkit.Animation.AnimationBehavior.initializeBase(this, [element]);this._onLoad = null;this._onClick = null;this._onMouseOver = null;this._onMouseOut = null;this._onHoverOver = null;this._onHoverOut = null;this._onClickHandler = null;this._onMouseOverHandler = null;this._onMouseOutHandler = null;}
AjaxControlToolkit.Animation.AnimationBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.Animation.AnimationBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();if (element) {
this._onClickHandler = Function.createDelegate(this, this.OnClick);$addHandler(element, 'click', this._onClickHandler);this._onMouseOverHandler = Function.createDelegate(this, this.OnMouseOver);$addHandler(element, 'mouseover', this._onMouseOverHandler);this._onMouseOutHandler = Function.createDelegate(this, this.OnMouseOut);$addHandler(element, 'mouseout', this._onMouseOutHandler);}
},
dispose : function() {
var element = this.get_element();if (element) {
if (this._onClickHandler) {
$removeHandler(element, 'click', this._onClickHandler);this._onClickHandler = null;}
if (this._onMouseOverHandler) {
$removeHandler(element, 'mouseover', this._onMouseOverHandler);this._onMouseOverHandler = null;}
if (this._onMouseOutHandler) {
$removeHandler(element, 'mouseout', this._onMouseOutHandler);this._onMouseOutHandler = null;}
}
this._onLoad = null;this._onClick = null;this._onMouseOver = null;this._onMouseOut = null;this._onHoverOver = null;this._onHoverOut = null;AjaxControlToolkit.Animation.AnimationBehavior.callBaseMethod(this, 'dispose');},
get_OnLoad : function() {
return this._onLoad ? this._onLoad.get_json() : null;},
set_OnLoad : function(value) {
if (!this._onLoad) {
this._onLoad = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onLoad.initialize();}
this._onLoad.set_json(value);this.raisePropertyChanged('OnLoad');this._onLoad.play();},
get_OnLoadBehavior : function() {
return this._onLoad;},
get_OnClick : function() {
return this._onClick ? this._onClick.get_json() : null;},
set_OnClick : function(value) {
if (!this._onClick) {
this._onClick = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onClick.initialize();}
this._onClick.set_json(value);this.raisePropertyChanged('OnClick');},
get_OnClickBehavior : function() {
return this._onClick;},
OnClick : function() {
if (this._onClick) {
this._onClick.play();}
},
get_OnMouseOver : function() {
return this._onMouseOver ? this._onMouseOver.get_json() : null;},
set_OnMouseOver : function(value) {
if (!this._onMouseOver) {
this._onMouseOver = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onMouseOver.initialize();}
this._onMouseOver.set_json(value);this.raisePropertyChanged('OnMouseOver');},
get_OnMouseOverBehavior : function() {
return this._onMouseOver;},
OnMouseOver : function() {
if (this._onMouseOver) {
this._onMouseOver.play();}
if (this._onHoverOver) {
if (this._onHoverOut) {
this._onHoverOut.quit();}
this._onHoverOver.play();}
},
get_OnMouseOut : function() {
return this._onMouseOut ? this._onMouseOut.get_json() : null;},
set_OnMouseOut : function(value) {
if (!this._onMouseOut) {
this._onMouseOut = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onMouseOut.initialize();}
this._onMouseOut.set_json(value);this.raisePropertyChanged('OnMouseOut');},
get_OnMouseOutBehavior : function() {
return this._onMouseOut;},
OnMouseOut : function() {
if (this._onMouseOut) {
this._onMouseOut.play();}
if (this._onHoverOut) {
if (this._onHoverOver) {
this._onHoverOver.quit();}
this._onHoverOut.play();}
},
get_OnHoverOver : function() {
return this._onHoverOver ? this._onHoverOver.get_json() : null;},
set_OnHoverOver : function(value) {
if (!this._onHoverOver) {
this._onHoverOver = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHoverOver.initialize();}
this._onHoverOver.set_json(value);this.raisePropertyChanged('OnHoverOver');},
get_OnHoverOverBehavior : function() {
return this._onHoverOver;},
get_OnHoverOut : function() {
return this._onHoverOut ? this._onHoverOut.get_json() : null;},
set_OnHoverOut : function(value) {
if (!this._onHoverOut) {
this._onHoverOut = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHoverOut.initialize();}
this._onHoverOut.set_json(value);this.raisePropertyChanged('OnHoverOut');},
get_OnHoverOutBehavior : function() {
return this._onHoverOut;}
}
AjaxControlToolkit.Animation.AnimationBehavior.registerClass('AjaxControlToolkit.Animation.AnimationBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.Animation.GenericAnimationBehavior = function(element) {
AjaxControlToolkit.Animation.GenericAnimationBehavior.initializeBase(this, [element]);this._json = null;this._animation = null;}
AjaxControlToolkit.Animation.GenericAnimationBehavior.prototype = {
dispose : function() {
this.disposeAnimation();AjaxControlToolkit.Animation.GenericAnimationBehavior.callBaseMethod(this, 'dispose');},
disposeAnimation : function() {
if (this._animation) {
this._animation.dispose();}
this._animation = null;},
play : function() {
if (this._animation && !this._animation.get_isPlaying()) {
this.stop();this._animation.play();}
},
stop : function() {
if (this._animation) {
if (this._animation.get_isPlaying()) {
this._animation.stop(true);}
}
},
quit : function() {
if (this._animation) {
if (this._animation.get_isPlaying()) {
this._animation.stop(false);}
}
},
get_json : function() {
return this._json;},
set_json : function(value) {
if (this._json != value) {
this._json = value;this.raisePropertyChanged('json');this.disposeAnimation();var element = this.get_element();if (element) {
this._animation = AjaxControlToolkit.Animation.buildAnimation(this._json, element);if (this._animation) {
this._animation.initialize();}
this.raisePropertyChanged('animation');}
}
},
get_animation : function() {
return this._animation;}
}
AjaxControlToolkit.Animation.GenericAnimationBehavior.registerClass('AjaxControlToolkit.Animation.GenericAnimationBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit.Animation');var $AA = AjaxControlToolkit.Animation;$AA.registerAnimation = function(name, type) {
if (type && ((type === $AA.Animation) || (type.inheritsFrom && type.inheritsFrom($AA.Animation)))) {
if (!$AA.__animations) {
$AA.__animations = { };}
$AA.__animations[name.toLowerCase()] = type;type.play = function() {
var animation = new type();type.apply(animation, arguments);animation.initialize();var handler = Function.createDelegate(animation,
function() {
animation.remove_ended(handler);handler = null;animation.dispose();});animation.add_ended(handler);animation.play();}
} else {
throw Error.argumentType('type', type, $AA.Animation, AjaxControlToolkit.Resources.Animation_InvalidBaseType);}
}
$AA.buildAnimation = function(json, defaultTarget) {
if (!json || json === '') {
return null;}
var obj;json = '(' + json + ')';if (! Sys.Debug.isDebug) {
try { obj = Sys.Serialization.JavaScriptSerializer.deserialize(json);} catch (ex) { } 
} else {
obj = Sys.Serialization.JavaScriptSerializer.deserialize(json);}
return $AA.createAnimation(obj, defaultTarget);}
$AA.createAnimation = function(obj, defaultTarget) {
if (!obj || !obj.AnimationName) {
throw Error.argument('obj', AjaxControlToolkit.Resources.Animation_MissingAnimationName);}
var type = $AA.__animations[obj.AnimationName.toLowerCase()];if (!type) {
throw Error.argument('type', String.format(AjaxControlToolkit.Resources.Animation_UknownAnimationName, obj.AnimationName));}
var animation = new type();if (defaultTarget) {
animation.set_target(defaultTarget);}
if (obj.AnimationChildren && obj.AnimationChildren.length) {
if ($AA.ParentAnimation.isInstanceOfType(animation)) {
for (var i = 0;i < obj.AnimationChildren.length;i++) {
var child = $AA.createAnimation(obj.AnimationChildren[i]);if (child) {
animation.add(child);}
}
} else {
throw Error.argument('obj', String.format(AjaxControlToolkit.Resources.Animation_ChildrenNotAllowed, type.getName()));}
}
var properties = type.__animationProperties;if (!properties) {
type.__animationProperties = { };type.resolveInheritance();for (var name in type.prototype) {
if (name.startsWith('set_')) {
type.__animationProperties[name.substr(4).toLowerCase()] = name;}
}
delete type.__animationProperties['id'];properties = type.__animationProperties;}
for (var property in obj) {
var prop = property.toLowerCase();if (prop == 'animationname' || prop == 'animationchildren') {
continue;}
var value = obj[property];var setter = properties[prop];if (setter && String.isInstanceOfType(setter) && animation[setter]) {
if (! Sys.Debug.isDebug) {
try { animation[setter](value);} catch (ex) { }
} else {
animation[setter](value);}
} else {
if (prop.endsWith('script')) {
setter = properties[prop.substr(0, property.length - 6)];if (setter && String.isInstanceOfType(setter) && animation[setter]) {
animation.DynamicProperties[setter] = value;} else if ( Sys.Debug.isDebug) {
throw Error.argument('obj', String.format(AjaxControlToolkit.Resources.Animation_NoDynamicPropertyFound, property, property.substr(0, property.length - 5)));}
} else if ( Sys.Debug.isDebug) {
throw Error.argument('obj', String.format(AjaxControlToolkit.Resources.Animation_NoPropertyFound, property));}
}
}
return animation;}
$AA.Animation = function(target, duration, fps) {
$AA.Animation.initializeBase(this);this._duration = 1;this._fps = 25;this._target = null;this._tickHandler = null;this._timer = null;this._percentComplete = 0;this._percentDelta = null;this._owner = null;this._parentAnimation = null;this.DynamicProperties = { };if (target) {
this.set_target(target);}
if (duration) {
this.set_duration(duration);}
if (fps) { 
this.set_fps(fps);}
}
$AA.Animation.prototype = {
dispose : function() {
if (this._timer) {
this._timer.dispose();this._timer = null;}
this._tickHandler = null;this._target = null;$AA.Animation.callBaseMethod(this, 'dispose');},
play : function() {
if (!this._owner) {
var resume = true;if (!this._timer) {
resume = false;if (!this._tickHandler) {
this._tickHandler = Function.createDelegate(this, this._onTimerTick);}
this._timer = new Sys.Timer();this._timer.add_tick(this._tickHandler);this.onStart();this._timer.set_interval(1000 / this._fps);this._percentDelta = 100 / (this._duration * this._fps);this._updatePercentComplete(0, true);}
this._timer.set_enabled(true);this.raisePropertyChanged('isPlaying');if (!resume) {
this.raisePropertyChanged('isActive');}
}
},
pause : function() {
if (!this._owner) {
if (this._timer) {
this._timer.set_enabled(false);this.raisePropertyChanged('isPlaying');}
}
},
stop : function(finish) {
if (!this._owner) {
var t = this._timer;this._timer = null;if (t) {
t.dispose();if (this._percentComplete !== 100) {
this._percentComplete = 100;this.raisePropertyChanged('percentComplete');if (finish || finish === undefined) {
this.onStep(100);}
}
this.onEnd();this.raisePropertyChanged('isPlaying');this.raisePropertyChanged('isActive');}
}
},
onStart : function() {
this.raiseStarted();for (var property in this.DynamicProperties) {
try {
this[property](eval(this.DynamicProperties[property]));} catch(ex) {
if ( Sys.Debug.isDebug) {
throw ex;}
}
}
},
onStep : function(percentage) {
this.setValue(this.getAnimatedValue(percentage));},
onEnd : function() {
this.raiseEnded();},
getAnimatedValue : function(percentage) {
throw Error.notImplemented();},
setValue : function(value) {
throw Error.notImplemented();},
interpolate : function(start, end, percentage) {
return start + (end - start) * (percentage / 100);},
_onTimerTick : function() {
this._updatePercentComplete(this._percentComplete + this._percentDelta, true);},
_updatePercentComplete : function(percentComplete, animate) {
if (percentComplete > 100) {
percentComplete = 100;}
this._percentComplete = percentComplete;this.raisePropertyChanged('percentComplete');if (animate) {
this.onStep(percentComplete);}
if (percentComplete === 100) {
this.stop(false);}
},
setOwner : function(owner) {
this._owner = owner;},
raiseStarted : function() {
var handlers = this.get_events().getHandler('started');if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
add_started : function(handler) {
this.get_events().addHandler("started", handler);},
remove_started : function(handler) {
this.get_events().removeHandler("started", handler);},
raiseEnded : function() {
var handlers = this.get_events().getHandler('ended');if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
add_ended : function(handler) {
this.get_events().addHandler("ended", handler);},
remove_ended : function(handler) {
this.get_events().removeHandler("ended", handler);},
get_target : function() {
if (!this._target && this._parentAnimation) {
return this._parentAnimation.get_target();}
return this._target;},
set_target : function(value) {
if (this._target != value) {
this._target = value;this.raisePropertyChanged('target');}
},
set_animationTarget : function(id) {
var target = null;var element = $get(id);if (element) {
target = element;} else {
var ctrl = $find(id);if (ctrl) {
element = ctrl.get_element();if (element) {
target = element;}
}
}
if (target) { 
this.set_target(target);} else {
throw Error.argument('id', String.format(AjaxControlToolkit.Resources.Animation_TargetNotFound, id));}
},
get_duration : function() {
return this._duration;},
set_duration : function(value) {
value = this._getFloat(value);if (this._duration != value) {
this._duration = value;this.raisePropertyChanged('duration');}
},
get_fps : function() {
return this._fps;},
set_fps : function(value) {
value = this._getInteger(value);if (this.fps != value) {
this._fps = value;this.raisePropertyChanged('fps');}
},
get_isActive : function() {
return (this._timer !== null);},
get_isPlaying : function() {
return (this._timer !== null) && this._timer.get_enabled();},
get_percentComplete : function() {
return this._percentComplete;},
_getBoolean : function(value) {
if (String.isInstanceOfType(value)) {
return Boolean.parse(value);}
return value;},
_getInteger : function(value) {
if (String.isInstanceOfType(value)) {
return parseInt(value);}
return value;},
_getFloat : function(value) {
if (String.isInstanceOfType(value)) {
return parseFloat(value);}
return value;},
_getEnum : function(value, type) {
if (String.isInstanceOfType(value) && type && type.parse) {
return type.parse(value);}
return value;}
}
$AA.Animation.registerClass('AjaxControlToolkit.Animation.Animation', Sys.Component);$AA.registerAnimation('animation', $AA.Animation);$AA.ParentAnimation = function(target, duration, fps, animations) {
$AA.ParentAnimation.initializeBase(this, [target, duration, fps]);this._animations = [];if (animations && animations.length) {
for (var i = 0;i < animations.length;i++) {
this.add(animations[i]);}
}
}
$AA.ParentAnimation.prototype = {
initialize : function() {
$AA.ParentAnimation.callBaseMethod(this, 'initialize');if (this._animations) {
for (var i = 0;i < this._animations.length;i++) {
var animation = this._animations[i];if (animation && !animation.get_isInitialized) {
animation.initialize();}
}
}
},
dispose : function() {
this.clear();this._animations = null;$AA.ParentAnimation.callBaseMethod(this, 'dispose');},
get_animations : function() {
return this._animations;},
add : function(animation) {
if (this._animations) {
if (animation) {
animation._parentAnimation = this;}
Array.add(this._animations, animation);this.raisePropertyChanged('animations');}
},
remove : function(animation) {
if (this._animations) {
if (animation) {
animation.dispose();}
Array.remove(this._animations, animation);this.raisePropertyChanged('animations');}
},
removeAt : function(index) {
if (this._animations) {
var animation = this._animations[index];if (animation) {
animation.dispose();}
Array.removeAt(this._animations, index);this.raisePropertyChanged('animations');}
},
clear : function() {
if (this._animations) {
for (var i = this._animations.length - 1;i >= 0;i--) {
this._animations[i].dispose();this._animations[i] = null;}
Array.clear(this._animations);this._animations = [];this.raisePropertyChanged('animations');}
}
}
$AA.ParentAnimation.registerClass('AjaxControlToolkit.Animation.ParentAnimation', $AA.Animation);$AA.registerAnimation('parent', $AA.ParentAnimation);$AA.ParallelAnimation = function(target, duration, fps, animations) {
$AA.ParallelAnimation.initializeBase(this, [target, duration, fps, animations]);}
$AA.ParallelAnimation.prototype = {
add : function(animation) {
$AA.ParallelAnimation.callBaseMethod(this, 'add', [animation]);animation.setOwner(this);},
onStart : function() {
$AA.ParallelAnimation.callBaseMethod(this, 'onStart');var animations = this.get_animations();for (var i = 0;i < animations.length;i++) {
animations[i].onStart();}
},
onStep : function(percentage) {
var animations = this.get_animations();for (var i = 0;i < animations.length;i++) {
animations[i].onStep(percentage);}
},
onEnd : function() {
var animations = this.get_animations();for (var i = 0;i < animations.length;i++) {
animations[i].onEnd();}
$AA.ParallelAnimation.callBaseMethod(this, 'onEnd');}
}
$AA.ParallelAnimation.registerClass('AjaxControlToolkit.Animation.ParallelAnimation', $AA.ParentAnimation);$AA.registerAnimation('parallel', $AA.ParallelAnimation);$AA.SequenceAnimation = function(target, duration, fps, animations, iterations) {
$AA.SequenceAnimation.initializeBase(this, [target, duration, fps, animations]);this._handler = null;this._paused = false;this._playing = false;this._index = 0;this._remainingIterations = 0;this._iterations = (iterations !== undefined) ? iterations : 1;}
$AA.SequenceAnimation.prototype = {
dispose : function() {
this._handler = null;$AA.SequenceAnimation.callBaseMethod(this, 'dispose');},
stop : function() {
if (this._playing) {
var animations = this.get_animations();if (this._index < animations.length) {
animations[this._index].remove_ended(this._handler);for (var i = this._index;i < animations.length;i++) {
animations[i].stop();}
}
this._playing = false;this._paused = false;this.raisePropertyChanged('isPlaying');this.onEnd();}
},
pause : function() {
if (this.get_isPlaying()) {
var current = this.get_animations()[this._index];if (current != null) {
current.pause();}
this._paused = true;this.raisePropertyChanged('isPlaying');}
},
play : function() {
var animations = this.get_animations();if (!this._playing) {
this._playing = true;if (this._paused) {
this._paused = false;var current = animations[this._index];if (current != null) {
current.play();this.raisePropertyChanged('isPlaying');}
} else {
this.onStart();this._index = 0;var first = animations[this._index];if (first) {
first.add_ended(this._handler);first.play();this.raisePropertyChanged('isPlaying');} else {
this.stop();}
}
}
},
onStart : function() {
$AA.SequenceAnimation.callBaseMethod(this, 'onStart');this._remainingIterations = this._iterations - 1;if (!this._handler) {
this._handler = Function.createDelegate(this, this._onEndAnimation);}
},
_onEndAnimation : function() {
var animations = this.get_animations();var current = animations[this._index++];if (current) {
current.remove_ended(this._handler);}
if (this._index < animations.length) {
var next = animations[this._index];next.add_ended(this._handler);next.play();} else if (this._remainingIterations >= 1 || this._iterations <= 0) {
this._remainingIterations--;this._index = 0;var first = animations[0];first.add_ended(this._handler);first.play();} else {
this.stop();}
},
onStep : function(percentage) {
throw Error.invalidOperation(AjaxControlToolkit.Resources.Animation_CannotNestSequence);},
onEnd : function() {
this._remainingIterations = 0;$AA.SequenceAnimation.callBaseMethod(this, 'onEnd');},
get_isActive : function() {
return true;},
get_isPlaying : function() {
return this._playing && !this._paused;},
get_iterations : function() {
return this._iterations;},
set_iterations : function(value) {
value = this._getInteger(value);if (this._iterations != value) {
this._iterations = value;this.raisePropertyChanged('iterations');}
},
get_isInfinite : function() {
return this._iterations <= 0;}
}
$AA.SequenceAnimation.registerClass('AjaxControlToolkit.Animation.SequenceAnimation', $AA.ParentAnimation);$AA.registerAnimation('sequence', $AA.SequenceAnimation);$AA.SelectionAnimation = function(target, duration, fps, animations) {
$AA.SelectionAnimation.initializeBase(this, [target, duration, fps, animations]);this._selectedIndex = -1;this._selected = null;}
$AA.SelectionAnimation.prototype = { 
getSelectedIndex : function() {
throw Error.notImplemented();},
onStart : function() {
$AA.SelectionAnimation.callBaseMethod(this, 'onStart');var animations = this.get_animations();this._selectedIndex = this.getSelectedIndex();if (this._selectedIndex >= 0 && this._selectedIndex < animations.length) {
this._selected = animations[this._selectedIndex];if (this._selected) {
this._selected.setOwner(this);this._selected.onStart();}
}
},
onStep : function(percentage) {
if (this._selected) {
this._selected.onStep(percentage);}
},
onEnd : function() {
if (this._selected) {
this._selected.onEnd();this._selected.setOwner(null);}
this._selected = null;this._selectedIndex = null;$AA.SelectionAnimation.callBaseMethod(this, 'onEnd');}
}
$AA.SelectionAnimation.registerClass('AjaxControlToolkit.Animation.SelectionAnimation', $AA.ParentAnimation);$AA.registerAnimation('selection', $AA.SelectionAnimation);$AA.ConditionAnimation = function(target, duration, fps, animations, conditionScript) {
$AA.ConditionAnimation.initializeBase(this, [target, duration, fps, animations]);this._conditionScript = conditionScript;}
$AA.ConditionAnimation.prototype = { 
getSelectedIndex : function() {
var selected = -1;if (this._conditionScript && this._conditionScript.length > 0) {
try {
selected = eval(this._conditionScript) ? 0 : 1;} catch(ex) {
}
}
return selected;},
get_conditionScript : function() {
return this._conditionScript;},
set_conditionScript : function(value) {
if (this._conditionScript != value) {
this._conditionScript = value;this.raisePropertyChanged('conditionScript');}
}
}
$AA.ConditionAnimation.registerClass('AjaxControlToolkit.Animation.ConditionAnimation', $AA.SelectionAnimation);$AA.registerAnimation('condition', $AA.ConditionAnimation);$AA.CaseAnimation = function(target, duration, fps, animations, selectScript) {
$AA.CaseAnimation.initializeBase(this, [target, duration, fps, animations]);this._selectScript = selectScript;}
$AA.CaseAnimation.prototype = {
getSelectedIndex : function() {
var selected = -1;if (this._selectScript && this._selectScript.length > 0) {
try {
var result = eval(this._selectScript)
if (result !== undefined)
selected = result;} catch (ex) {
}
}
return selected;},
get_selectScript : function() {
return this._selectScript;},
set_selectScript : function(value) {
if (this._selectScript != value) {
this._selectScript = value;this.raisePropertyChanged('selectScript');}
}
}
$AA.CaseAnimation.registerClass('AjaxControlToolkit.Animation.CaseAnimation', $AA.SelectionAnimation);$AA.registerAnimation('case', $AA.CaseAnimation);$AA.FadeEffect = function() {
throw Error.invalidOperation();}
$AA.FadeEffect.prototype = {
FadeIn : 0,
FadeOut : 1
}
$AA.FadeEffect.registerEnum("AjaxControlToolkit.Animation.FadeEffect", false);$AA.FadeAnimation = function(target, duration, fps, effect, minimumOpacity, maximumOpacity, forceLayoutInIE) {
$AA.FadeAnimation.initializeBase(this, [target, duration, fps]);this._effect = (effect !== undefined) ? effect : $AA.FadeEffect.FadeIn;this._max = (maximumOpacity !== undefined) ? maximumOpacity : 1;this._min = (minimumOpacity !== undefined) ? minimumOpacity : 0;this._start = this._min;this._end = this._max;this._layoutCreated = false;this._forceLayoutInIE = (forceLayoutInIE === undefined || forceLayoutInIE === null) ? true : forceLayoutInIE;this._currentTarget = null;this._resetOpacities();}
$AA.FadeAnimation.prototype = {
_resetOpacities : function() {
if (this._effect == $AA.FadeEffect.FadeIn) {
this._start = this._min;this._end = this._max;} else {
this._start = this._max;this._end = this._min;}
},
_createLayout : function() {
var element = this._currentTarget;if (element) {
var originalWidth = $common.getCurrentStyle(element, 'width');var originalHeight = $common.getCurrentStyle(element, 'height');var originalBackColor = $common.getCurrentStyle(element, 'backgroundColor');if ((!originalWidth || originalWidth == '' || originalWidth == 'auto') &&
(!originalHeight || originalHeight == '' || originalHeight == 'auto')) {
element.style.width = element.offsetWidth + 'px';}
if (!originalBackColor || originalBackColor == '' || originalBackColor == 'transparent' || originalBackColor == 'rgba(0, 0, 0, 0)') {
element.style.backgroundColor = $common.getInheritedBackgroundColor(element);}
this._layoutCreated = true;}
},
onStart : function() {
$AA.FadeAnimation.callBaseMethod(this, 'onStart');this._currentTarget = this.get_target();this.setValue(this._start);if (this._forceLayoutInIE && !this._layoutCreated && Sys.Browser.agent == Sys.Browser.InternetExplorer) {
this._createLayout();}
},
getAnimatedValue : function(percentage) {
return this.interpolate(this._start, this._end, percentage);},
setValue : function(value) {
if (this._currentTarget) {
$common.setElementOpacity(this._currentTarget, value);}
},
get_effect : function() {
return this._effect;},
set_effect : function(value) {
value = this._getEnum(value, $AA.FadeEffect);if (this._effect != value) {
this._effect = value;this._resetOpacities();this.raisePropertyChanged('effect');}
},
get_minimumOpacity : function() {
return this._min;},
set_minimumOpacity : function(value) {
value = this._getFloat(value);if (this._min != value) {
this._min = value;this._resetOpacities();this.raisePropertyChanged('minimumOpacity');}
},
get_maximumOpacity : function() {
return this._max;},
set_maximumOpacity : function(value) {
value = this._getFloat(value);if (this._max != value) {
this._max = value;this._resetOpacities();this.raisePropertyChanged('maximumOpacity');}
},
get_forceLayoutInIE : function() {
return this._forceLayoutInIE;},
set_forceLayoutInIE : function(value) {
value = this._getBoolean(value);if (this._forceLayoutInIE != value) {
this._forceLayoutInIE = value;this.raisePropertyChanged('forceLayoutInIE');}
},
set_startValue : function(value) {
value = this._getFloat(value);this._start = value;}
}
$AA.FadeAnimation.registerClass('AjaxControlToolkit.Animation.FadeAnimation', $AA.Animation);$AA.registerAnimation('fade', $AA.FadeAnimation);$AA.FadeInAnimation = function(target, duration, fps, minimumOpacity, maximumOpacity, forceLayoutInIE) {
$AA.FadeInAnimation.initializeBase(this, [target, duration, fps, $AA.FadeEffect.FadeIn, minimumOpacity, maximumOpacity, forceLayoutInIE]);}
$AA.FadeInAnimation.prototype = {
onStart : function() {
$AA.FadeInAnimation.callBaseMethod(this, 'onStart');if (this._currentTarget) {
this.set_startValue($common.getElementOpacity(this._currentTarget));}
}
}
$AA.FadeInAnimation.registerClass('AjaxControlToolkit.Animation.FadeInAnimation', $AA.FadeAnimation);$AA.registerAnimation('fadeIn', $AA.FadeInAnimation);$AA.FadeOutAnimation = function(target, duration, fps, minimumOpacity, maximumOpacity, forceLayoutInIE) {
$AA.FadeOutAnimation.initializeBase(this, [target, duration, fps, $AA.FadeEffect.FadeOut, minimumOpacity, maximumOpacity, forceLayoutInIE]);}
$AA.FadeOutAnimation.prototype = {
onStart : function() {
$AA.FadeOutAnimation.callBaseMethod(this, 'onStart');if (this._currentTarget) {
this.set_startValue($common.getElementOpacity(this._currentTarget));}
}
}
$AA.FadeOutAnimation.registerClass('AjaxControlToolkit.Animation.FadeOutAnimation', $AA.FadeAnimation);$AA.registerAnimation('fadeOut', $AA.FadeOutAnimation);$AA.PulseAnimation = function(target, duration, fps, iterations, minimumOpacity, maximumOpacity, forceLayoutInIE) {
$AA.PulseAnimation.initializeBase(this, [target, duration, fps, null, ((iterations !== undefined) ? iterations : 3)]);this._out = new $AA.FadeOutAnimation(target, duration, fps, minimumOpacity, maximumOpacity, forceLayoutInIE);this.add(this._out);this._in = new $AA.FadeInAnimation(target, duration, fps, minimumOpacity, maximumOpacity, forceLayoutInIE);this.add(this._in);}
$AA.PulseAnimation.prototype = {
get_minimumOpacity : function() {
return this._out.get_minimumOpacity();},
set_minimumOpacity : function(value) {
value = this._getFloat(value);this._out.set_minimumOpacity(value);this._in.set_minimumOpacity(value);this.raisePropertyChanged('minimumOpacity');},
get_maximumOpacity : function() {
return this._out.get_maximumOpacity();},
set_maximumOpacity : function(value) {
value = this._getFloat(value);this._out.set_maximumOpacity(value);this._in.set_maximumOpacity(value);this.raisePropertyChanged('maximumOpacity');},
get_forceLayoutInIE : function() {
return this._out.get_forceLayoutInIE();},
set_forceLayoutInIE : function(value) {
value = this._getBoolean(value);this._out.set_forceLayoutInIE(value);this._in.set_forceLayoutInIE(value);this.raisePropertyChanged('forceLayoutInIE');},
set_duration : function(value) {
value = this._getFloat(value);$AA.PulseAnimation.callBaseMethod(this, 'set_duration', [value]);this._in.set_duration(value);this._out.set_duration(value);},
set_fps : function(value) {
value = this._getInteger(value);$AA.PulseAnimation.callBaseMethod(this, 'set_fps', [value]);this._in.set_fps(value);this._out.set_fps(value);}
}
$AA.PulseAnimation.registerClass('AjaxControlToolkit.Animation.PulseAnimation', $AA.SequenceAnimation);$AA.registerAnimation('pulse', $AA.PulseAnimation);$AA.PropertyAnimation = function(target, duration, fps, property, propertyKey) {
$AA.PropertyAnimation.initializeBase(this, [target, duration, fps]);this._property = property;this._propertyKey = propertyKey;this._currentTarget = null;}
$AA.PropertyAnimation.prototype = {
onStart : function() {
$AA.PropertyAnimation.callBaseMethod(this, 'onStart');this._currentTarget = this.get_target();},
setValue : function(value) {
var element = this._currentTarget;if (element && this._property && this._property.length > 0) { 
if (this._propertyKey && this._propertyKey.length > 0 && element[this._property]) {
element[this._property][this._propertyKey] = value;} else {
element[this._property] = value;}
}
},
getValue : function() {
var element = this.get_target();if (element && this._property && this._property.length > 0) { 
var property = element[this._property];if (property) {
if (this._propertyKey && this._propertyKey.length > 0) {
return property[this._propertyKey];}
return property;}
}
return null;},
get_property : function() {
return this._property;},
set_property : function(value) {
if (this._property != value) {
this._property = value;this.raisePropertyChanged('property');}
},
get_propertyKey : function() {
return this._propertyKey;},
set_propertyKey : function(value) {
if (this._propertyKey != value) {
this._propertyKey = value;this.raisePropertyChanged('propertyKey');}
}
}
$AA.PropertyAnimation.registerClass('AjaxControlToolkit.Animation.PropertyAnimation', $AA.Animation);$AA.registerAnimation('property', $AA.PropertyAnimation);$AA.DiscreteAnimation = function(target, duration, fps, property, propertyKey, values) {
$AA.DiscreteAnimation.initializeBase(this, [target, duration, fps, property, propertyKey]);this._values = (values && values.length) ? values : [];}
$AA.DiscreteAnimation.prototype = {
getAnimatedValue : function(percentage) {
var index = Math.floor(this.interpolate(0, this._values.length - 1, percentage));return this._values[index];},
get_values : function() {
return this._values;},
set_values : function(value) {
if (this._values != value) {
this._values = value;this.raisePropertyChanged('values');}
}
}
$AA.DiscreteAnimation.registerClass('AjaxControlToolkit.Animation.DiscreteAnimation', $AA.PropertyAnimation);$AA.registerAnimation('discrete', $AA.DiscreteAnimation);$AA.InterpolatedAnimation = function(target, duration, fps, property, propertyKey, startValue, endValue) {
$AA.InterpolatedAnimation.initializeBase(this, [target, duration, fps, ((property !== undefined) ? property : 'style'), propertyKey]);this._startValue = startValue;this._endValue = endValue;}
$AA.InterpolatedAnimation.prototype = {
get_startValue : function() {
return this._startValue;},
set_startValue : function(value) {
value = this._getFloat(value);if (this._startValue != value) {
this._startValue = value;this.raisePropertyChanged('startValue');}
},
get_endValue : function() {
return this._endValue;},
set_endValue : function(value) {
value = this._getFloat(value);if (this._endValue != value) {
this._endValue = value;this.raisePropertyChanged('endValue');}
} 
}
$AA.InterpolatedAnimation.registerClass('AjaxControlToolkit.Animation.InterpolatedAnimation', $AA.PropertyAnimation);$AA.registerAnimation('interpolated', $AA.InterpolatedAnimation);$AA.ColorAnimation = function(target, duration, fps, property, propertyKey, startValue, endValue) {
$AA.ColorAnimation.initializeBase(this, [target, duration, fps, property, propertyKey, startValue, endValue]);this._start = null;this._end = null;this._interpolateRed = false;this._interpolateGreen = false;this._interpolateBlue = false;}
$AA.ColorAnimation.prototype = {
onStart : function() {
$AA.ColorAnimation.callBaseMethod(this, 'onStart');this._start = $AA.ColorAnimation.getRGB(this.get_startValue());this._end = $AA.ColorAnimation.getRGB(this.get_endValue());this._interpolateRed = (this._start.Red != this._end.Red);this._interpolateGreen = (this._start.Green != this._end.Green);this._interpolateBlue = (this._start.Blue != this._end.Blue);},
getAnimatedValue : function(percentage) {
var r = this._start.Red;var g = this._start.Green;var b = this._start.Blue;if (this._interpolateRed)
r = Math.round(this.interpolate(r, this._end.Red, percentage));if (this._interpolateGreen)
g = Math.round(this.interpolate(g, this._end.Green, percentage));if (this._interpolateBlue)
b = Math.round(this.interpolate(b, this._end.Blue, percentage));return $AA.ColorAnimation.toColor(r, g, b);},
set_startValue : function(value) {
if (this._startValue != value) {
this._startValue = value;this.raisePropertyChanged('startValue');}
},
set_endValue : function(value) {
if (this._endValue != value) {
this._endValue = value;this.raisePropertyChanged('endValue');}
} 
}
$AA.ColorAnimation.getRGB = function(color) {
if (!color || color.length != 7) {
throw String.format(AjaxControlToolkit.Resources.Animation_InvalidColor, color);}
return { 'Red': parseInt(color.substr(1,2), 16),
'Green': parseInt(color.substr(3,2), 16),
'Blue': parseInt(color.substr(5,2), 16) };}
$AA.ColorAnimation.toColor = function(red, green, blue) {
var r = red.toString(16);var g = green.toString(16);var b = blue.toString(16);if (r.length == 1) r = '0' + r;if (g.length == 1) g = '0' + g;if (b.length == 1) b = '0' + b;return '#' + r + g + b;}
$AA.ColorAnimation.registerClass('AjaxControlToolkit.Animation.ColorAnimation', $AA.InterpolatedAnimation);$AA.registerAnimation('color', $AA.ColorAnimation);$AA.LengthAnimation = function(target, duration, fps, property, propertyKey, startValue, endValue, unit) {
$AA.LengthAnimation.initializeBase(this, [target, duration, fps, property, propertyKey, startValue, endValue]);this._unit = (unit != null) ? unit : 'px';}
$AA.LengthAnimation.prototype = {
getAnimatedValue : function(percentage) {
var value = this.interpolate(this.get_startValue(), this.get_endValue(), percentage);return Math.round(value) + this._unit;},
get_unit : function() {
return this._unit;},
set_unit : function(value) {
if (this._unit != value) {
this._unit = value;this.raisePropertyChanged('unit');}
}
}
$AA.LengthAnimation.registerClass('AjaxControlToolkit.Animation.LengthAnimation', $AA.InterpolatedAnimation);$AA.registerAnimation('length', $AA.LengthAnimation);$AA.MoveAnimation = function(target, duration, fps, horizontal, vertical, relative, unit) {
$AA.MoveAnimation.initializeBase(this, [target, duration, fps, null]);this._horizontal = horizontal ? horizontal : 0;this._vertical = vertical ? vertical : 0;this._relative = (relative === undefined) ? true : relative;this._horizontalAnimation = new $AA.LengthAnimation(target, duration, fps, 'style', 'left', null, null, unit);this._verticalAnimation = new $AA.LengthAnimation(target, duration, fps, 'style', 'top', null, null, unit);this.add(this._verticalAnimation);this.add(this._horizontalAnimation);}
$AA.MoveAnimation.prototype = {
onStart : function() {
$AA.MoveAnimation.callBaseMethod(this, 'onStart');var element = this.get_target();this._horizontalAnimation.set_startValue(element.offsetLeft);this._horizontalAnimation.set_endValue(this._relative ? element.offsetLeft + this._horizontal : this._horizontal);this._verticalAnimation.set_startValue(element.offsetTop);this._verticalAnimation.set_endValue(this._relative ? element.offsetTop + this._vertical : this._vertical);},
get_horizontal : function() {
return this._horizontal;},
set_horizontal : function(value) {
value = this._getFloat(value);if (this._horizontal != value) {
this._horizontal = value;this.raisePropertyChanged('horizontal');}
},
get_vertical : function() {
return this._vertical;},
set_vertical : function(value) {
value = this._getFloat(value);if (this._vertical != value) {
this._vertical = value;this.raisePropertyChanged('vertical');}
},
get_relative : function() {
return this._relative;},
set_relative : function(value) {
value = this._getBoolean(value);if (this._relative != value) {
this._relative = value;this.raisePropertyChanged('relative');}
},
get_unit : function() {
this._horizontalAnimation.get_unit();},
set_unit : function(value) {
var unit = this._horizontalAnimation.get_unit();if (unit != value) {
this._horizontalAnimation.set_unit(value);this._verticalAnimation.set_unit(value);this.raisePropertyChanged('unit');}
}
}
$AA.MoveAnimation.registerClass('AjaxControlToolkit.Animation.MoveAnimation', $AA.ParallelAnimation);$AA.registerAnimation('move', $AA.MoveAnimation);$AA.ResizeAnimation = function(target, duration, fps, width, height, unit) {
$AA.ResizeAnimation.initializeBase(this, [target, duration, fps, null]);this._width = width;this._height = height;this._horizontalAnimation = new $AA.LengthAnimation(target, duration, fps, 'style', 'width', null, null, unit);this._verticalAnimation = new $AA.LengthAnimation(target, duration, fps, 'style', 'height', null, null, unit);this.add(this._horizontalAnimation);this.add(this._verticalAnimation);}
$AA.ResizeAnimation.prototype = {
onStart : function() {
$AA.ResizeAnimation.callBaseMethod(this, 'onStart');var element = this.get_target();this._horizontalAnimation.set_startValue(element.offsetWidth);this._verticalAnimation.set_startValue(element.offsetHeight);this._horizontalAnimation.set_endValue((this._width !== null && this._width !== undefined) ?
this._width : element.offsetWidth);this._verticalAnimation.set_endValue((this._height !== null && this._height !== undefined) ?
this._height : element.offsetHeight);},
get_width : function() {
return this._width;},
set_width : function(value) {
value = this._getFloat(value);if (this._width != value) {
this._width = value;this.raisePropertyChanged('width');}
},
get_height : function() {
return this._height;},
set_height : function(value) {
value = this._getFloat(value);if (this._height != value) {
this._height = value;this.raisePropertyChanged('height');}
},
get_unit : function() {
this._horizontalAnimation.get_unit();},
set_unit : function(value) {
var unit = this._horizontalAnimation.get_unit();if (unit != value) {
this._horizontalAnimation.set_unit(value);this._verticalAnimation.set_unit(value);this.raisePropertyChanged('unit');}
}
}
$AA.ResizeAnimation.registerClass('AjaxControlToolkit.Animation.ResizeAnimation', $AA.ParallelAnimation);$AA.registerAnimation('resize', $AA.ResizeAnimation);$AA.ScaleAnimation = function(target, duration, fps, scaleFactor, unit, center, scaleFont, fontUnit) {
$AA.ScaleAnimation.initializeBase(this, [target, duration, fps]);this._scaleFactor = (scaleFactor !== undefined) ? scaleFactor : 1;this._unit = (unit !== undefined) ? unit : 'px';this._center = center;this._scaleFont = scaleFont;this._fontUnit = (fontUnit !== undefined) ? fontUnit : 'pt';this._element = null;this._initialHeight = null;this._initialWidth = null;this._initialTop = null;this._initialLeft = null;this._initialFontSize = null;}
$AA.ScaleAnimation.prototype = { 
getAnimatedValue : function(percentage) {
return this.interpolate(1.0, this._scaleFactor, percentage);},
onStart : function() {
$AA.ScaleAnimation.callBaseMethod(this, 'onStart');this._element = this.get_target();if (this._element) {
this._initialHeight = this._element.offsetHeight;this._initialWidth = this._element.offsetWidth;if (this._center) {
this._initialTop = this._element.offsetTop;this._initialLeft = this._element.offsetLeft;}
if (this._scaleFont) {
this._initialFontSize = parseFloat(
$common.getCurrentStyle(this._element, 'fontSize'));}
}
},
setValue : function(scale) {
if (this._element) {
var width = Math.round(this._initialWidth * scale);var height = Math.round(this._initialHeight * scale);this._element.style.width = width + this._unit;this._element.style.height = height + this._unit;if (this._center) {
this._element.style.top = (this._initialTop +
Math.round((this._initialHeight - height) / 2)) + this._unit;this._element.style.left = (this._initialLeft +
Math.round((this._initialWidth - width) / 2)) + this._unit;}
if (this._scaleFont) {
var size = this._initialFontSize * scale;if (this._fontUnit == 'px' || this._fontUnit == 'pt') {
size = Math.round(size);}
this._element.style.fontSize = size + this._fontUnit;}
}
},
onEnd : function() {
this._element = null;this._initialHeight = null;this._initialWidth = null;this._initialTop = null;this._initialLeft = null;this._initialFontSize = null;$AA.ScaleAnimation.callBaseMethod(this, 'onEnd');},
get_scaleFactor : function() {
return this._scaleFactor;},
set_scaleFactor : function(value) {
value = this._getFloat(value);if (this._scaleFactor != value) {
this._scaleFactor = value;this.raisePropertyChanged('scaleFactor');}
},
get_unit : function() {
return this._unit;},
set_unit : function(value) {
if (this._unit != value) {
this._unit = value;this.raisePropertyChanged('unit');}
},
get_center : function() {
return this._center;},
set_center : function(value) {
value = this._getBoolean(value);if (this._center != value) {
this._center = value;this.raisePropertyChanged('center');}
},
get_scaleFont : function() {
return this._scaleFont;},
set_scaleFont : function(value) {
value = this._getBoolean(value);if (this._scaleFont != value) {
this._scaleFont = value;this.raisePropertyChanged('scaleFont');}
},
get_fontUnit : function() {
return this._fontUnit;},
set_fontUnit : function(value) {
if (this._fontUnit != value) { 
this._fontUnit = value;this.raisePropertyChanged('fontUnit');}
}
}
$AA.ScaleAnimation.registerClass('AjaxControlToolkit.Animation.ScaleAnimation', $AA.Animation);$AA.registerAnimation('scale', $AA.ScaleAnimation);$AA.Action = function(target, duration, fps) {
$AA.Action.initializeBase(this, [target, duration, fps]);if (duration === undefined) {
this.set_duration(0);}
}
$AA.Action.prototype = {
onEnd : function() {
this.doAction();$AA.Action.callBaseMethod(this, 'onEnd');},
doAction : function() {
throw Error.notImplemented();},
getAnimatedValue : function() {
},
setValue : function() {
}
}
$AA.Action.registerClass('AjaxControlToolkit.Animation.Action', $AA.Animation);$AA.registerAnimation('action', $AA.Action);$AA.EnableAction = function(target, duration, fps, enabled) {
$AA.EnableAction.initializeBase(this, [target, duration, fps]);this._enabled = (enabled !== undefined) ? enabled : true;}
$AA.EnableAction.prototype = {
doAction : function() {
var element = this.get_target();if (element) {
element.disabled = !this._enabled;}
},
get_enabled : function() {
return this._enabled;},
set_enabled : function(value) {
value = this._getBoolean(value);if (this._enabled != value) {
this._enabled = value;this.raisePropertyChanged('enabled');}
}
}
$AA.EnableAction.registerClass('AjaxControlToolkit.Animation.EnableAction', $AA.Action);$AA.registerAnimation('enableAction', $AA.EnableAction);$AA.HideAction = function(target, duration, fps, visible) {
$AA.HideAction.initializeBase(this, [target, duration, fps]);this._visible = visible;}
$AA.HideAction.prototype = {
doAction : function() {
var element = this.get_target();if (element) {
$common.setVisible(element, this._visible);}
},
get_visible : function() {
return this._visible;},
set_visible : function(value) {
if (this._visible != value) {
this._visible = value;this.raisePropertyChanged('visible');}
}
}
$AA.HideAction.registerClass('AjaxControlToolkit.Animation.HideAction', $AA.Action);$AA.registerAnimation('hideAction', $AA.HideAction);$AA.StyleAction = function(target, duration, fps, attribute, value) {
$AA.StyleAction.initializeBase(this, [target, duration, fps]);this._attribute = attribute;this._value = value;}
$AA.StyleAction.prototype = {
doAction : function() {
var element = this.get_target();if (element) {
element.style[this._attribute] = this._value;}
},
get_attribute : function() {
return this._attribute;},
set_attribute : function(value) {
if (this._attribute != value) {
this._attribute = value;this.raisePropertyChanged('attribute');}
},
get_value : function() {
return this._value;},
set_value : function(value) {
if (this._value != value) {
this._value = value;this.raisePropertyChanged('value');}
}
}
$AA.StyleAction.registerClass('AjaxControlToolkit.Animation.StyleAction', $AA.Action);$AA.registerAnimation('styleAction', $AA.StyleAction);$AA.OpacityAction = function(target, duration, fps, opacity) {
$AA.OpacityAction.initializeBase(this, [target, duration, fps]);this._opacity = opacity;}
$AA.OpacityAction.prototype = {
doAction : function() {
var element = this.get_target();if (element) {
$common.setElementOpacity(element, this._opacity);}
},
get_opacity : function() {
return this._opacity;},
set_opacity : function(value) {
value = this._getFloat(value);if (this._opacity != value) {
this._opacity = value;this.raisePropertyChanged('opacity');}
}
}
$AA.OpacityAction.registerClass('AjaxControlToolkit.Animation.OpacityAction', $AA.Action);$AA.registerAnimation('opacityAction', $AA.OpacityAction);$AA.ScriptAction = function(target, duration, fps, script) {
$AA.ScriptAction.initializeBase(this, [target, duration, fps]);this._script = script;}
$AA.ScriptAction.prototype = {
doAction : function() {
try {
eval(this._script);} catch (ex) {
}
},
get_script : function() {
return this._script;},
set_script : function(value) {
if (this._script != value) {
this._script = value;this.raisePropertyChanged('script');}
}
}
$AA.ScriptAction.registerClass('AjaxControlToolkit.Animation.ScriptAction', $AA.Action);$AA.registerAnimation('scriptAction', $AA.ScriptAction);
Type.registerNamespace('AjaxControlToolkit.Animation');AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior = function(element) {
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.initializeBase(this, [element]);this._onUpdating = new AjaxControlToolkit.Animation.GenericAnimationBehavior(element);this._onUpdated = new AjaxControlToolkit.Animation.GenericAnimationBehavior(element);this._postBackPending = null;this._pageLoadedHandler = null;}
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.prototype = { 
initialize : function() {
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();var parentDiv = document.createElement(element.tagName);element.parentNode.insertBefore(parentDiv, element);parentDiv.appendChild(element);Array.remove(element._behaviors, this);Array.remove(element._behaviors, this._onUpdating);Array.remove(element._behaviors, this._onUpdated);if (parentDiv._behaviors) {
Array.add(parentDiv._behaviors, this);Array.add(parentDiv._behaviors, this._onUpdating);Array.add(parentDiv._behaviors, this._onUpdated);} else {
parentDiv._behaviors = [this, this._onUpdating, this._onUpdated];}
this._element = this._onUpdating._element = this._onUpdated._element = parentDiv;this._onUpdating.initialize();this._onUpdated.initialize();this.registerPartialUpdateEvents();this._pageLoadedHandler = Function.createDelegate(this, this._pageLoaded);this._pageRequestManager.add_pageLoaded(this._pageLoadedHandler);},
dispose : function() {
if (this._pageRequestManager && this._pageLoadedHandler) {
this._pageRequestManager.remove_pageLoaded(this._pageLoadedHandler);this._pageLoadedHandler = null;}
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.callBaseMethod(this, 'dispose');},
_partialUpdateBeginRequest : function(sender, beginRequestEventArgs) {
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.callBaseMethod(this, '_partialUpdateBeginRequest', [sender, beginRequestEventArgs]);if (!this._postBackPending) {
this._postBackPending = true;this._onUpdated.quit();this._onUpdating.play();}
},
_pageLoaded : function(sender, args) {
if (this._postBackPending) {
this._postBackPending = false;var element = this.get_element();var panels = args.get_panelsUpdated();for (var i = 0;i < panels.length;i++) {
if (panels[i].parentNode == element) {
this._onUpdating.quit();this._onUpdated.play();break;}
}
}
},
get_OnUpdating : function() {
return this._onUpdating.get_json();},
set_OnUpdating : function(value) {
this._onUpdating.set_json(value);this.raisePropertyChanged('OnUpdating');},
get_OnUpdatingBehavior : function() {
return this._onUpdating;},
get_OnUpdated : function() {
return this._onUpdated.get_json();},
set_OnUpdated : function(value) {
this._onUpdated.set_json(value);this.raisePropertyChanged('OnUpdated');},
get_OnUpdatedBehavior : function() {
return this._onUpdated;}
}
AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior.registerClass('AjaxControlToolkit.Animation.UpdatePanelAnimationBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.NoBotBehavior = function(element) {
AjaxControlToolkit.NoBotBehavior.initializeBase(this, [element]);this._ChallengeScript = "";}
AjaxControlToolkit.NoBotBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.NoBotBehavior.callBaseMethod(this, "initialize");var response = eval(this._ChallengeScript);AjaxControlToolkit.NoBotBehavior.callBaseMethod(this, "set_ClientState", [response]);},
dispose : function() {
AjaxControlToolkit.NoBotBehavior.callBaseMethod(this, "dispose");},
get_ChallengeScript : function() {
return this._ChallengeScript;},
set_ChallengeScript : function(value) {
if (this._ChallengeScript != value) { 
this._ChallengeScript = value;this.raisePropertyChanged('ChallengeScript');}
}
}
AjaxControlToolkit.NoBotBehavior.registerClass("AjaxControlToolkit.NoBotBehavior", AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit._SliderDragDropManagerInternal = function() {
AjaxControlToolkit._SliderDragDropManagerInternal.initializeBase(this);this._instance = null;}
AjaxControlToolkit._SliderDragDropManagerInternal.prototype = {
_getInstance : function() {
this._instance = new AjaxControlToolkit.GenericDragDropManager();this._instance.initialize();this._instance.add_dragStart(Function.createDelegate(this, this._raiseDragStart));this._instance.add_dragStop(Function.createDelegate(this, this._raiseDragStop));return this._instance;} 
}
AjaxControlToolkit._SliderDragDropManagerInternal.registerClass('AjaxControlToolkit._SliderDragDropManagerInternal', AjaxControlToolkit._DragDropManager);AjaxControlToolkit.SliderDragDropManagerInternal = new AjaxControlToolkit._SliderDragDropManagerInternal();AjaxControlToolkit.SliderOrientation = function() {
}
AjaxControlToolkit.SliderOrientation.prototype = {
Horizontal : 0,
Vertical : 1
}
AjaxControlToolkit.SliderOrientation.registerEnum('AjaxControlToolkit.SliderOrientation', false);AjaxControlToolkit.SliderBehavior = function(element) {
AjaxControlToolkit.SliderBehavior.initializeBase(this, [element]);this._minimum = 0;this._maximum = 100;this._value = null;this._steps = 0;this._decimals = 0;this._orientation = AjaxControlToolkit.SliderOrientation.Horizontal;this._railElement = null;this._railCssClass = null;this._isHorizontal = true;this._isUpdatingInternal = false;this._isInitializedInternal = false;this._enableHandleAnimation = false;this._handle = null;this._handleImage = null;this._handleAnimation = null;this._handleAnimationDuration = 0.1;this._handleImageUrl = null;this._handleCssClass = null;this._dragHandle = null;this._mouseupHandler = null;this._selectstartHandler = null;this._boundControlChangeHandler = null;this._boundControlKeyPressHandler = null;this._boundControlID = null;this._boundControl = null;this._length = null;this._raiseChangeOnlyOnMouseUp = true;this._animationPending = false;this._selectstartPending = false;this._tooltipText = '';}
AjaxControlToolkit.SliderBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.SliderBehavior.callBaseMethod(this, 'initialize');this._initializeLayout();},
dispose : function() {
this._disposeHandlers();this._disposeBoundControl();if(this._enableHandleAnimation && this._handleAnimation) {
this._handleAnimation.dispose();}
AjaxControlToolkit.SliderBehavior.callBaseMethod(this, 'dispose');},
_initializeLayout : function() {
this._railElement = document.createElement('DIV');this._railElement.id = this.get_id() + '_railElement';this._railElement.tabIndex = -1;this._railElement.innerHTML = '<div></div>';this._handle = this._railElement.childNodes[0];this._handle.style.overflow = 'hidden';this._handle.style.position = 'absolute';if(Sys.Browser.agent == Sys.Browser.Opera) {
this._handle.style.left = '0px';this._handle.style.top = '0px';}
var textBoxElement = this.get_element();var textBoxElementBounds = $common.getBounds(textBoxElement);textBoxElement.parentNode.insertBefore(this._railElement, textBoxElement);textBoxElement.style.display = 'none';this._isHorizontal = (this._orientation == AjaxControlToolkit.SliderOrientation.Horizontal);var defaultRailCssClass = (this._isHorizontal) ? 'ajax__slider_h_rail' : 'ajax__slider_v_rail';var defaultHandleCssClass = (this._isHorizontal) ? 'ajax__slider_h_handle' : 'ajax__slider_v_handle';var defaultHandleImageUrl = (this._isHorizontal) ? '<%= WebResource("AjaxControlToolkit.Slider.Images.slider_h_handle.gif") %>'
: '<%= WebResource("AjaxControlToolkit.Slider.Images.slider_v_handle.gif") %>';this._railElement.className = (this._railCssClass) ? this._railCssClass : defaultRailCssClass;this._handle.className = (this._handleCssClass) ? this._handleCssClass : defaultHandleCssClass;if(!this._handleImageUrl) this._handleImageUrl = defaultHandleImageUrl;if (this._isHorizontal) {
if(this._length) this._railElement.style.width = this._length;} 
else {
if(this._length) this._railElement.style.height = this._length;}
this._loadHandleImage();this._enforceTextBoxElementPositioning();this._initializeSlider();},
_enforceTextBoxElementPositioning : function() {
var tbPosition = 
{
position: this.get_element().style.position,
top: this.get_element().style.top,
right: this.get_element().style.right,
bottom: this.get_element().style.bottom,
left: this.get_element().style.left
};if(tbPosition.position != '') {
this._railElement.style.position = tbPosition.position;}
if(tbPosition.top != '') {
this._railElement.style.top = tbPosition.top;}
if(tbPosition.right != '') {
this._railElement.style.right = tbPosition.right;}
if(tbPosition.bottom != '') {
this._railElement.style.bottom = tbPosition.bottom;}
if(tbPosition.left != '') {
this._railElement.style.left = tbPosition.left;}
},
_loadHandleImage : function() {
this._handleImage = document.createElement('IMG');this._handleImage.id = this.get_id() + '_handleImage';this._handle.appendChild(this._handleImage);this._handleImage.src = this._handleImageUrl;},
_initializeSlider : function() {
this._initializeBoundControl();var _elementValue;try {
_elementValue = parseFloat(this.get_element().value);} catch(ex) {
_elementValue = Number.NaN;}
this.set_Value(_elementValue);this._setHandleOffset(this._value);this._initializeDragHandle();AjaxControlToolkit.SliderDragDropManagerInternal.registerDropTarget(this);this._initializeHandlers();this._initializeHandleAnimation();this._isInitializedInternal = true;this._raiseEvent('sliderInitialized');},
_initializeBoundControl : function() {
if(this._boundControl) {
var isInputElement = this._boundControl.nodeName == 'INPUT';if(isInputElement) {
this._boundControlChangeHandler = Function.createDelegate(this, this._onBoundControlChange);this._boundControlKeyPressHandler = Function.createDelegate(this, this._onBoundControlKeyPress);$addHandler(this._boundControl, 'change', this._boundControlChangeHandler);$addHandler(this._boundControl, 'keypress', this._boundControlKeyPressHandler);}
}
},
_disposeBoundControl : function() {
if(this._boundControl) {;var isInputElement = this._boundControl.nodeName == 'INPUT';if(isInputElement) {
$removeHandler(this._boundControl, 'change', this._boundControlChangeHandler);$removeHandler(this._boundControl, 'keypress', this._boundControlKeyPressHandler);}
}
},
_onBoundControlChange : function(evt) {
this._animationPending = true;this._setValueFromBoundControl();},
_onBoundControlKeyPress : function(evt) {
if(evt.charCode == 13) {
this._animationPending = true;this._setValueFromBoundControl();evt.preventDefault();}
},
_setValueFromBoundControl : function() {
this._isUpdatingInternal = true;if(this._boundControlID) {
this._calcValue($get(this._boundControlID).value);}
this._isUpdatingInternal = false;},
_initializeHandleAnimation : function() {
if(this._steps > 0) {
this._enableHandleAnimation = false;return;}
if(this._enableHandleAnimation) {
this._handleAnimation = new AjaxControlToolkit.Animation.LengthAnimation(
this._handle, this._handleAnimationDuration, 100, 'style');}
},
_ensureBinding : function() {
if(this._boundControl) {
var value = this._value;if(value >= this._minimum || value <= this._maximum) {
var isInputElement = this._boundControl.nodeName == 'INPUT';if(isInputElement) {
this._boundControl.value = value;}
else if(this._boundControl) {
this._boundControl.innerHTML = value;}
}
}
},
_getBoundsInternal : function(element) {
var bounds = $common.getBounds(element);function hasSize() { 
return bounds.width > 0 && bounds.height > 0;}
if(!hasSize()) {
bounds.width = parseInt($common.getCurrentStyle(element, 'width'));bounds.height = parseInt($common.getCurrentStyle(element, 'height'));if(!hasSize()) {
var tempNode = element.cloneNode(true);tempNode.visibility = 'hidden';document.body.appendChild(tempNode);bounds.width = parseInt($common.getCurrentStyle(tempNode, 'width'));bounds.height = parseInt($common.getCurrentStyle(tempNode, 'height'));document.body.removeChild(tempNode);if(!hasSize()) {
throw Error.argument('element size', AjaxControlToolkit.Resources.Slider_NoSizeProvided);}
}
}
if(this._orientation == AjaxControlToolkit.SliderOrientation.Vertical) {
bounds = { x : bounds.y, 
y : bounds.x, 
height : bounds.width, 
width : bounds.height, 
right : bounds.right,
bottom : bounds.bottom,
location : {x:bounds.y, y:bounds.x},
size : {width:bounds.height, height:bounds.width}
};}
return bounds;},
_getRailBounds : function() {
var bounds = this._getBoundsInternal(this._railElement);return bounds;},
_getHandleBounds : function() {
return this._getBoundsInternal(this._handle);},
_initializeDragHandle : function() {
var dh = this._dragHandle = document.createElement('DIV');dh.style.position = 'absolute';dh.style.width = '1px';dh.style.height = '1px';dh.style.overflow = 'hidden';dh.style.zIndex = '999';dh.style.background = 'none';document.body.appendChild(this._dragHandle);},
_resetDragHandle : function() {
var handleBounds = $common.getBounds(this._handle);$common.setLocation(this._dragHandle, {x:handleBounds.x, y:handleBounds.y});},
_initializeHandlers : function() {
this._selectstartHandler = Function.createDelegate(this, this._onSelectStart);this._mouseupHandler = Function.createDelegate(this, this._onMouseUp);$addHandler(document, 'mouseup', this._mouseupHandler);$addHandlers(this._handle, 
{
'mousedown': this._onMouseDown,
'dragstart': this._IEDragDropHandler,
'drag': this._IEDragDropHandler,
'dragend': this._IEDragDropHandler
},
this);$addHandlers(this._railElement,
{
'click': this._onRailClick
},
this);},
_disposeHandlers : function() {
$clearHandlers(this._handle);$clearHandlers(this._railElement);$removeHandler(document, 'mouseup', this._mouseupHandler);this._mouseupHandler = null;this._selectstartHandler = null;},
startDragDrop : function(dragVisual) {
this._resetDragHandle();AjaxControlToolkit.SliderDragDropManagerInternal.startDragDrop(this, dragVisual, null);},
_onMouseDown : function(evt) {
window._event = evt;evt.preventDefault();if(!AjaxControlToolkit.SliderBehavior.DropPending) {
AjaxControlToolkit.SliderBehavior.DropPending = this;$addHandler(document, 'selectstart', this._selectstartHandler);this._selectstartPending = true;this.startDragDrop(this._dragHandle);}
},
_onMouseUp : function(evt) {
var srcElement = evt.target;if(AjaxControlToolkit.SliderBehavior.DropPending == this) {
AjaxControlToolkit.SliderBehavior.DropPending = null;if(this._selectstartPending) {
$removeHandler(document, 'selectstart', this._selectstartHandler);}
}
},
_onRailClick : function(evt) {
if(evt.target == this._railElement) {
this._animationPending = true;this._onRailClicked(evt);}
},
_IEDragDropHandler : function(evt) {
evt.preventDefault();},
_onSelectStart : function(evt) {
evt.preventDefault();},
_calcValue : function(value, mouseOffset) {
var val;if(value != null) {
if(!Number.isInstanceOfType(value)) {
try {
value = parseFloat(value);} catch(ex) {
value = Number.NaN;}
}
if(isNaN(value)) {
value = this._minimum;}
val = (value < this._minimum) ? this._minimum
: (value > this._maximum) ? this._maximum
: value;}
else { 
var _minimum = this._minimum;var _maximum = this._maximum;var handleBounds = this._getHandleBounds();var sliderBounds = this._getRailBounds();var handleX = (mouseOffset) ? mouseOffset - handleBounds.width / 2 
: handleBounds.x - sliderBounds.x;var extent = sliderBounds.width - handleBounds.width;var percent = handleX / extent;val = (handleX == 0) ? _minimum
: (handleX == (sliderBounds.width - handleBounds.width)) ? _maximum
: _minimum + percent * (_maximum - _minimum);}
if(this._steps > 0) {
val = this._getNearestStepValue(val);}
val = (val < this._minimum) ? this._minimum
: (val > this._maximum) ? this._maximum
: val;this._isUpdatingInternal = true;this.set_Value(val);this._isUpdatingInternal = false;return val;},
_setHandleOffset : function(value, playHandleAnimation) {
var _minimum = this._minimum;var _maximum = this._maximum;var handleBounds = this._getHandleBounds();var sliderBounds = this._getRailBounds();var extent = _maximum - _minimum;var fraction = (value - _minimum) / extent;var hypOffset = Math.round(fraction * (sliderBounds.width - handleBounds.width));var offset = (value == _minimum) ? 0
: (value == _maximum) ? (sliderBounds.width - handleBounds.width)
: hypOffset;if(playHandleAnimation) {
this._handleAnimation.set_startValue(handleBounds.x - sliderBounds.x);this._handleAnimation.set_endValue(offset);this._handleAnimation.set_propertyKey((this._isHorizontal) ? 'left' : 'top');this._handleAnimation.play();this._animationPending = false;}
else {
if(this._isHorizontal) {
this._handle.style.left = offset + 'px';}
else {
this._handle.style.top = offset + 'px';}
}
},
_getNearestStepValue : function(value) {
if(this._steps == 0) return value;var extent = this._maximum - this._minimum;if (extent == 0) return value;var delta = extent / (this._steps - 1);return Math.round(value / delta) * delta;},
_onHandleReleased : function() {
if(this._raiseChangeOnlyOnMouseUp) {
this._fireTextBoxChangeEvent();}
this._raiseEvent('slideEnd');},
_onRailClicked : function(evt) {
var handleBounds = this._getHandleBounds();var sliderBounds = this._getRailBounds();var offset = (this._isHorizontal) ? evt.offsetX : evt.offsetY;var minOffset = handleBounds.width / 2;var maxOffset = sliderBounds.width - minOffset;offset = (offset < minOffset) ? minOffset 
: (offset > maxOffset) ? maxOffset
: offset;this._calcValue(null, offset, true);this._fireTextBoxChangeEvent();},
_fireTextBoxChangeEvent : function() {
if (document.createEvent) {
var onchangeEvent = document.createEvent('HTMLEvents');onchangeEvent.initEvent('change', true, false);this.get_element().dispatchEvent(onchangeEvent);} 
else if(document.createEventObject) {
this.get_element().fireEvent('onchange');}
},
get_dragDataType : function() { 
return 'HTML';},
getDragData : function() {
return this._handle;},
get_dragMode : function() { 
return AjaxControlToolkit.DragMode.Move;},
onDragStart : function() {
this._resetDragHandle();this._raiseEvent('slideStart');},
onDrag : function() {
var dragHandleBounds = this._getBoundsInternal(this._dragHandle);var handleBounds = this._getHandleBounds();var sliderBounds = this._getRailBounds();var handlePosition;if(this._isHorizontal) {
handlePosition = { x:dragHandleBounds.x - sliderBounds.x, y:0 };}
else {
handlePosition = { y:dragHandleBounds.x - sliderBounds.x, x:0 };}
$common.setLocation(this._handle, handlePosition);this._calcValue(null, null);if(this._steps > 1) {
this._setHandleOffset(this.get_Value(), false);}
},
onDragEnd : function() {
this._onHandleReleased();},
get_dropTargetElement : function() {
return document.body;},
canDrop : function(dragMode, dataType) {
return dataType == 'HTML';},
drop : Function.emptyMethod,
onDragEnterTarget : Function.emptyMethod,
onDragLeaveTarget : Function.emptyMethod,
onDragInTarget : Function.emptyMethod,
add_sliderInitialized : function(handler) {
this.get_events().addHandler('sliderInitialized', handler);},
remove_sliderInitialized : function(handler) {
this.get_events().removeHandler('sliderInitialized', handler);},
add_valueChanged : function(handler) {
this.get_events().addHandler('valueChanged', handler);},
remove_valueChanged : function(handler) {
this.get_events().removeHandler('valueChanged', handler);},
add_slideStart : function(handler) {
this.get_events().addHandler('slideStart', handler);},
remove_slideStart : function(handler) {
this.get_events().removeHandler('slideStart', handler);},
add_slideEnd : function(handler) {
this.get_events().addHandler('slideEnd', handler);},
remove_slideEnd : function(handler) {
this.get_events().removeHandler('slideEnd', handler);},
_raiseEvent : function(eventName, eventArgs) {
var handler = this.get_events().getHandler(eventName);if (handler) {
if (!eventArgs) {
eventArgs = Sys.EventArgs.Empty;}
handler(this, eventArgs);}
},
get_Value : function() {
return this._value;},
set_Value : function(value) {
var oldValue = this._value;var newValue = value;if(!this._isUpdatingInternal) {
newValue = this._calcValue(value);}
this.get_element().value = this._value = newValue.toFixed(this._decimals);this._ensureBinding();if(!Number.isInstanceOfType(this._value)) {
try {
this._value = parseFloat(this._value);} catch(ex) {
this._value = Number.NaN;}
}
if(this._tooltipText) {
this._handle.alt = this._handle.title = 
String.format(this._tooltipText, this._value);}
if(this._isInitializedInternal) {
this._setHandleOffset(newValue, this._enableHandleAnimation && this._animationPending);if(this._isUpdatingInternal) {
if(!this._raiseChangeOnlyOnMouseUp) {
this._fireTextBoxChangeEvent();}
}
if(this._value != oldValue) {
this._raiseEvent('valueChanged');}
}
},
get_RailCssClass : function() {
return this._railCssClass;},
set_RailCssClass : function(value) {
this._railCssClass = value;}, 
get_HandleImageUrl : function() {
return this._handleImageUrl;},
set_HandleImageUrl : function(value) {
this._handleImageUrl = value;},
get_HandleCssClass : function() {
return this._handleCssClass;},
set_HandleCssClass : function(value) {
this._handleCssClass = value;},
get_Minimum : function() {
return this._minimum;},
set_Minimum : function(value) {
this._minimum = value;}, 
get_Maximum : function() {
return this._maximum;},
set_Maximum : function(value) {
this._maximum = value;},
get_Orientation : function() {
return this._orientation;},
set_Orientation : function(value) {
this._orientation = value;},
get_Steps : function() {
return this._steps;},
set_Steps : function(value) {
this._steps = Math.abs(value);this._steps = (this._steps == 1) ? 2 : this._steps;},
get_Decimals : function() {
return this._decimals;},
set_Decimals : function(value) {
this._decimals = Math.abs(value);},
get_EnableHandleAnimation : function() {
return this._enableHandleAnimation;},
set_EnableHandleAnimation : function(value) {
this._enableHandleAnimation = value;},
get_HandleAnimationDuration : function() {
return this._handleAnimationDuration;},
set_HandleAnimationDuration : function(value) {
this._handleAnimationDuration = value;}, 
get_BoundControlID : function() {
return this._boundControlID;},
set_BoundControlID : function(value) {
this._boundControlID = value;if(this._boundControlID) {
this._boundControl = $get(this._boundControlID);} else {
this._boundControl = null;}
},
get_Length : function() {
return this._length;},
set_Length : function(value) {
this._length = value + 'px';},
get_SliderInitialized : function() {
return this._isInitializedInternal;},
get_RaiseChangeOnlyOnMouseUp : function() {
return this._raiseChangeOnlyOnMouseUp;},
set_RaiseChangeOnlyOnMouseUp : function(value) {
this._raiseChangeOnlyOnMouseUp = value;},
get_TooltipText : function() {
return this._tooltipText;},
set_TooltipText : function(value) {
this._tooltipText = value;},
getClientState : function() {
var value = AjaxControlToolkit.SliderBehavior.callBaseMethod(this, 'get_ClientState');if (value == '') value = null;return value;},
setClientState : function(value) {
return AjaxControlToolkit.SliderBehavior.callBaseMethod(this, 'set_ClientState',[value]);}
}
AjaxControlToolkit.SliderBehavior.DropPending = null;AjaxControlToolkit.SliderBehavior.registerClass('AjaxControlToolkit.SliderBehavior', AjaxControlToolkit.BehaviorBase, AjaxControlToolkit.IDragSource, AjaxControlToolkit.IDropTarget);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior = function(element) {
AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.initializeBase(this, [element]);this._key = "";this._clickHandler = Function.createDelegate(this, this._onclick);}
AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.callBaseMethod(this, 'initialize');$addHandler(this.get_element(), "click", this._clickHandler);},
dispose : function() {
if (this._key) {
var keys = AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.Keys;var ar = keys[this._key];Array.remove(ar, this);this._key = null;}
if (this._clickHandler) {
$removeHandler(this.get_element(), "click", this._clickHandler);this._clickHandler = null;}
AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.callBaseMethod(this, 'dispose');},
get_Key : function() {
return this._key;},
set_Key : function(value) {
var keys = AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.Keys;if(value != this._key) {
if(this._key) {
var ar = keys[this._key];Array.remove(ar, this._key);}
this._key = value;if(value) {
var ar = keys[this._key];if(ar == null) {
ar = keys[this._key] = [];}
Array.add(ar, this);}
}
},
_onclick : function() {
var element = this.get_element();var keys = AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.Keys;if(this._key && element.checked) {
var ar = keys[this._key];var t = this;Array.forEach(ar, function(b) {
if(b != t) {
b.get_element().checked = false;$common.tryFireEvent(b.get_element(), "change");}
});}
this.raiseChecked(new AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs(element, this._key));},
add_checked : function(handler) {
this.get_events().addHandler('checked', handler);},
remove_checked : function(handler) {
this.get_events().removeHandler('checked', handler);},
raiseChecked : function(eventArgs) {
var handler = this.get_events().getHandler('checked');if (handler) {
handler(this, eventArgs);}
}
} 
AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.registerClass('AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.MutuallyExclusiveCheckBoxBehavior.Keys = {};AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs = function(checkbox, key) {
AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs.initializeBase(this);this._key = key;this._checkbox = checkbox;}
AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs.prototype = {
get_checkbox : function() {
return this._checkbox;},
get_key : function() {
return this._key;}
}
AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs.registerClass('AjaxControlToolkit.MutuallyExclusiveCheckBoxEventArgs', Sys.EventArgs);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DropDownBehavior = function(element) {
AjaxControlToolkit.DropDownBehavior.initializeBase(this, [element]);this._dropDownControl = null;this._highlightBorderColor = "#2353B2";this._highlightBackgroundColor = "#FFF3DB";this._dropArrowBackgroundColor = "#C6E1FF";this._dropArrowImageUrl = null;this._dropArrowWidth = "16px";this._oldBackgroundColor = null;this._dropFrame = null;this._dropArrow = null;this._dropArrowImage = null;this._dropWrapper = null;this._isOpen = false;this._isOver = false;this._wasClicked = null;this._dropWrapperHoverBehavior = null;this._dropPopupPopupBehavior = null;this._onShowJson = null;this._onHideJson = null;this._dropDownControl$delegates = {
click : Function.createDelegate(this, this._dropDownControl_onclick),
contextmenu : Function.createDelegate(this, this._dropDownControl_oncontextmenu)
}
this._dropFrame$delegates = {
click : Function.createDelegate(this, this._dropFrame_onclick),
contextmenu : Function.createDelegate(this, this._dropFrame_oncontextmenu)
}
this._dropWrapper$delegates = {
click : Function.createDelegate(this, this._dropWrapper_onclick),
contextmenu : Function.createDelegate(this, this._dropWrapper_oncontextmenu)
}
this._document$delegates = {
click : Function.createDelegate(this, this._document_onclick),
contextmenu : Function.createDelegate(this, this._document_oncontextmenu)
}
this._dropWrapperHoverBehavior$delegates = {
hover : Function.createDelegate(this, this._dropWrapperHoverBehavior_onhover),
unhover : Function.createDelegate(this, this._dropWrapperHoverBehavior_onunhover)
}
}
AjaxControlToolkit.DropDownBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.DropDownBehavior.callBaseMethod(this, 'initialize');var elt = this.get_element();var parent = elt.parentNode;if (this._dropDownControl == null) {
$common.createElementFromTemplate({
parent : parent,
nameTable : this,
name : "_dropDownControl",
nodeName : "div",
visible : false,
cssClasses : this._dropDownControl ? null : ["ajax__dropdown_panel"],
properties : { 
__GENERATED : true 
}
});}
$addHandlers(this._dropDownControl, this._dropDownControl$delegates);var dropArrowImageProperties = {};if (this._dropArrowImageUrl) {
dropArrowImageProperties["src"] = this._dropArrowImageUrl;}
$common.createElementFromTemplate({
parent : parent,
nameTable : this,
name : "_dropFrame",
nodeName : "span",
visible : false,
children : [{
name : "_dropFrameTop",
nodeName : "div",
cssClasses : ["ajax__dropdown_frame_line"]
}, {
name : "_dropFrameRight",
nodeName : "div",
cssClasses : ["ajax__dropdown_frame_line"]
}, {
name : "_dropFrameBottom",
nodeName : "div",
cssClasses : ["ajax__dropdown_frame_line"]
}, {
name : "_dropFrameLeft",
nodeName : "div",
cssClasses : ["ajax__dropdown_frame_line"]
}, {
name : "_dropArrow",
nodeName : "div",
cssClasses : (!this._dropArrowImageUrl) ? ["ajax__dropdown_arrow", "ajax__dropdown_arrow_image"] : ["ajax__dropdown_arrow"],
properties : {
style : {
width : this._dropArrowWidth,
backgroundColor : this._dropArrowBackgroundColor
}
},
events : this._dropFrame$delegates,
children : [{
name : "_dropArrowWrapper",
nodeName : "div",
visible : !!this._dropArrowImageUrl,
cssClasses : ["ajax__dropdown_arrow_wrapper"],
children : [{
name : "_dropArrowImage",
nodeName : "img",
properties : dropArrowImageProperties
}]
}]
}]
});$common.createElementFromTemplate({
parent : null,
nameTable : this,
name : "_dropWrapper",
nodeName : "span",
properties : {
id : elt.id + "_dropWrapper",
style : {
cursor : "default"
}
},
events : this._dropWrapper$delegates,
content : elt
});this._dropPopupPopupBehavior = $create(AjaxControlToolkit.PopupBehavior, { 
positioningMode : AjaxControlToolkit.PositioningMode.BottomRight, 
parentElement : elt, 
y : -1 
}, null, null, this._dropDownControl);if (this._onShowJson) {
this._dropPopupPopupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._dropPopupPopupBehavior.set_onHide(this._onHideJson);}
this._dropWrapperHoverBehavior = $create(AjaxControlToolkit.HoverBehavior, { 
hoverElement : this._dropFrame 
}, this._dropWrapperHoverBehavior$delegates, null, this._dropWrapper);$addHandlers(document, this._document$delegates);},
dispose : function() {
var elt = this.get_element();if (this._isOpen) {
this.hide();this.unhover();this._isOpen = false;}
$common.removeHandlers(document, this._document$delegates);this._onShowJson = null;this._onHideJson = null;if (this._dropPopupPopupBehavior) {
this._dropPopupPopupBehavior.dispose();this._dropPopupPopupBehavior = null;}
if (this._dropWrapperHoverBehavior) {
this._dropWrapperHoverBehavior.dispose();this._dropWrapperHoverBehavior = null;}
if (this._dropFrame) {
$common.removeElement(this._dropFrame);this._dropFrame = null;this._dropFrameTop = null;this._dropFrameRight = null;this._dropFrameBottom = null;this._dropFrameLeft = null;this._dropArrow = null;this._dropArrowWrapper = null;this._dropArrowImage = null;}
if (this._dropWrapper) {
$common.removeHandlers(this._dropWrapper, this._dropWrapper$delegates);$common.unwrapElement(elt, this._dropWrapper);this._dropWrapper = null;}
if (this._dropDownControl) {
$common.removeHandlers(this._dropDownControl, this._dropDownControl$delegates);if (this._dropDownControl.__GENERATED) {
$common.removeElement(this._dropDownControl);}
this._dropDownControl = null;}
AjaxControlToolkit.DropDownBehavior.callBaseMethod(this, 'dispose');}, 
hover : function() {
var elt = this.get_element();if (!this._isOver) {
this._isOver = true;this.raiseHoverOver(Sys.EventArgs.Empty);var bounds = $common.getBounds(elt);$common.setLocation(this._dropFrame, {x:0, y:0});$common.setVisible(this._dropFrame, true);var offset = $common.getLocation(this._dropFrame);$common.setVisible(this._dropFrame, false);bounds.x -= offset.x;bounds.y -= offset.y;$common.setBounds(this._dropFrameTop, { 
x : bounds.x, 
y : bounds.y,
width : bounds.width,
height : 1
});$common.setBounds(this._dropFrameRight, {
x : bounds.x + bounds.width - 1,
y : bounds.y,
width : 1,
height : bounds.height
});$common.setBounds(this._dropFrameBottom, {
x : bounds.x,
y : bounds.y + bounds.height - 1,
width : bounds.width,
height : 1
});$common.setBounds(this._dropFrameLeft, {
x : bounds.x,
y : bounds.y,
width : 1,
height : bounds.height
});$common.setBounds(this._dropArrow, {
x : bounds.x + bounds.width - 17,
y : bounds.y + 1,
width : 16,
height : bounds.height - 2
});this._dropFrameTop.style.backgroundColor = this._highlightBorderColor;this._dropFrameRight.style.backgroundColor = this._highlightBorderColor;this._dropFrameBottom.style.backgroundColor = this._highlightBorderColor;this._dropFrameLeft.style.backgroundColor = this._highlightBorderColor;$common.setVisible(this._dropFrame, true);if (!this._oldBackgroundColor) { 
this._oldBackgroundColor = $common.getCurrentStyle(elt, 'backgroundColor');}
elt.style.backgroundColor = this._highlightBackgroundColor;}
},
unhover : function() {
var elt = this.get_element();if (this._isOver || !this._isOpen) {
this._isOver = false;if (!this._isOpen) { 
$common.setVisible(this._dropFrame, false);if (this._oldBackgroundColor) {
elt.style.backgroundColor = this._oldBackgroundColor;this._oldBackgroundColor = null;} else {
elt.style.backgroundColor = "transparent";}
}
this.raiseHoverOut(Sys.EventArgs.Empty);}
},
show : function() {
if (!this._isOpen) {
this.hover();var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);this.raisePopup(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._isOpen = true;this.populate();if (!this._dynamicPopulateBehavior || (this._dynamicPopulateBehavior._populated && this._cacheDynamicResults)) {
this._showPopup();}
}
},
_showPopup : function() {
this._dropPopupPopupBehavior.show();this.raiseShown(Sys.EventArgs.Empty);},
hide : function() {
if (this._isOpen) {
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._isOpen = false;this._dropPopupPopupBehavior.hide();this.raiseHidden(Sys.EventArgs.Empty);}
},
_dropWrapperHoverBehavior_onhover : function(sender, e) {
this.hover();},
_dropWrapperHoverBehavior_onunhover : function(sender, e) {
this.unhover();},
_dropWrapper_onclick : function(e) {
if(e.target.tagName != "A") {
if(!this._isOpen) {
this.show();} else {
this.hide();}
this._wasClicked = true;}
},
_dropWrapper_oncontextmenu : function(e) {
if(e.target.tagName != "A") {
this._wasClicked = true;e.preventDefault();this.show();}
},
_dropFrame_onclick : function(e) {
if(!this._isOpen) {
this.show();} else {
this.hide();}
this._wasClicked = true;},
_dropFrame_oncontextmenu : function(e) {
this._wasClicked = true;e.preventDefault();this.show();},
_dropDownControl_onclick : function(e) {
},
_dropDownControl_oncontextmenu : function(e) {
this._wasClicked = true;e.preventDefault();},
_document_onclick : function(e) { 
if(this._wasClicked) {
this._wasClicked = false;} else if(this._isOpen) {
this.hide();this.unhover();}
},
_document_oncontextmenu : function(e) {
if(this._wasClicked) {
this._wasClicked = false;} else if(this._isOpen) {
this.hide();this.unhover();}
},
_onPopulated : function(sender, eventArgs) {
AjaxControlToolkit.DropDownBehavior.callBaseMethod(this, '_onPopulated', [sender, eventArgs]);if (this._isOpen) {
this._showPopup();}
},
get_onShow : function() {
return this._dropPopupPopupBehavior ? this._dropPopupPopupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._dropPopupPopupBehavior) {
this._dropPopupPopupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._dropPopupPopupBehavior ? this._dropPopupPopupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._dropPopupPopupBehavior) {
this._dropPopupPopupBehavior.onShow();}
},
get_onHide : function() {
return this._dropPopupPopupBehavior ? this._dropPopupPopupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._dropPopupPopupBehavior) {
this._dropPopupPopupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._dropPopupPopupBehavior ? this._dropPopupPopupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._dropPopupPopupBehavior) {
this._dropPopupPopupBehavior.onHide();}
},
get_dropDownControl : function() {
return this._dropDownControl;},
set_dropDownControl : function(value) { 
if (this._dropDownControl != value) {
this._dropDownControl = value;this.raisePropertyChanged("dropDownControl");}
},
get_highlightBorderColor : function() {
return this._highlightBorderColor;},
set_highlightBorderColor : function(value) {
if (this._highlightBorderColor != value) {
this._highlightBorderColor = value;this.raisePropertyChanged("highlightBorderColor");}
},
get_highlightBackgroundColor : function() {
return this._highlightBackgroundColor;},
set_highlightBackgroundColor : function(value) {
if (this._highlightBackgroundColor != value) {
this._highlightBackgroundColor = value;if(this.get_isInitialized() && this._isOpen) {
this._dropWrapper.style.backgroundColor = value;}
this.raisePropertyChanged("highlightBackgroundColor");}
},
get_dropArrowBackgroundColor : function() {
return this._dropArrowBackgroundColor;},
set_dropArrowBackgroundColor : function(value) {
if (this._dropArrowBackgroundColor != value) {
this._dropArrowBackgroundColor = value;if(this.get_isInitialized()) {
this._dropArrow.style.backgroundColor = value;}
this.raisePropertyChanged("dropArrowBackgroundColor");}
},
get_dropArrowImageUrl : function() {
return this._dropArrowImageUrl;},
set_dropArrowImageUrl : function(value) {
if (this._dropArrowImageUrl != value) {
this._dropArrowImageUrl = value;if(this.get_isInitialized()) {
if (this._dropArrow.className) {
this._dropArrow.className = "";this._dropArrowWrapper.style.display = 'block';}
this._dropArrowImage.src = value;}
this.raisePropertyChanged("dropArrowImageUrl");}
},
get_dropArrowWidth : function() {
return this._dropArrowWidth;},
set_dropArrowWidth : function(value) {
if (this._dropArrowWidth != value) {
this._dropArrowWidth = value;if(this.get_isInitialized()) {
this._dropArrow.style.width = value;}
this.raisePropertyChanged("dropArrowWidth");}
},
get_isOver : function() {
return this._isOver;},
get_isOpen : function() {
return this._isOpen;},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler('shown', handler);},
remove_shown : function(handler) {
this.get_events().removeHandler('shown', handler);},
raiseShown : function(eventArgs) {
var handler = this.get_events().getHandler('shown');if (handler) {
handler(this, eventArgs);}
},
add_popup : function(handler) {
this.get_events().addHandler('popup', handler);},
remove_popup : function(handler) {
this.get_events().removeHandler('popup', handler);},
raisePopup : function(eventArgs) {
var handler = this.get_events().getHandler('popup');if (handler) {
handler(this, eventArgs);}
},
add_hiding : function(handler) {
this.get_events().addHandler('hiding', handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler('hiding', handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
}, 
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
},
add_hoverOver : function(handler) {
this.get_events().addHandler('hoverOver', handler);},
remove_hoverOver : function(handler) {
this.get_events().removeHandler('hoverOver', handler);},
raiseHoverOver : function(eventArgs) {
var handler = this.get_events().getHandler('hoverOver');if (handler) {
handler(this, eventArgs);}
},
add_hoverOut : function(handler) {
this.get_events().addHandler('hoverOut', handler);},
remove_hoverOut : function(handler) {
this.get_events().removeHandler('hoverOut', handler);},
raiseHoverOut : function(eventArgs) {
var handler = this.get_events().getHandler('hoverOut');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.DropDownBehavior.registerClass('AjaxControlToolkit.DropDownBehavior', AjaxControlToolkit.DynamicPopulateBehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ValidatorCalloutBehavior = function AjaxControlToolkit$ValidatorCalloutBehavior(element) {
AjaxControlToolkit.ValidatorCalloutBehavior.initializeBase(this, [element]);this._warningIconImageUrl = null;this._closeImageUrl = null;this._highlightCssClass = null;this._width = "200px";this._invalid = false;this._originalValidationMethod = null;this._validationMethodOverride = null;this._elementToValidate = null;this._popupTable = null;this._errorMessageCell = null;this._calloutArrowCell = null;this._warningIconImage = null;this._closeImage = null;this._popupBehavior = null;this._onShowJson = null;this._onHideJson = null;this._focusAttached = false;this._isOpen = false;this._isBuilt = false;this._focusHandler = Function.createDelegate(this, this._onfocus);this._closeClickHandler = Function.createDelegate(this, this._oncloseClick);}
AjaxControlToolkit.ValidatorCalloutBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ValidatorCalloutBehavior.callBaseMethod(this, 'initialize');var elt = this.get_element();if(elt.evaluationfunction) {
this._originalValidationMethod = Function.createDelegate(elt, elt.evaluationfunction);this._validationMethodOverride = Function.createDelegate(this, this._onvalidate);elt.evaluationfunction = this._validationMethodOverride;}
},
_ensureCallout : function() {
if (!this._isBuilt) {
var elt = this.get_element();var elementToValidate = this._elementToValidate = $get(elt.controltovalidate);var popupTableBody = document.createElement("tbody");var popupTableRow = document.createElement("tr");var calloutCell = document.createElement("td");var calloutTable = document.createElement("table");var calloutTableBody = document.createElement("tbody");var calloutTableRow = document.createElement("tr");var iconCell = document.createElement("td");var closeCell = document.createElement("td");var popupTable = this._popupTable = document.createElement("table");var calloutArrowCell = this._calloutArrowCell = document.createElement("td");var warningIconImage = this._warningIconImage = document.createElement("img");var closeImage = this._closeImage = document.createElement("img");var errorMessageCell = this._errorMessageCell = document.createElement("td");popupTable.id = this.get_id() + "_popupTable";popupTable.cellPadding = 0;popupTable.cellSpacing = 0;popupTable.border = 0;popupTable.width = this.get_width();popupTable.style.display = 'none';popupTableRow.vAlign = 'top';popupTableRow.style.height = "100%";calloutCell.width = 20;calloutCell.align = "right";calloutCell.style.height = "100%";calloutCell.style.verticalAlign = "top";calloutTable.cellPadding = 0;calloutTable.cellSpacing = 0;calloutTable.border = 0;calloutTable.style.height = "100%";calloutArrowCell.align = "right";calloutArrowCell.vAlign = "top";calloutArrowCell.style.fontSize = "1px";calloutArrowCell.style.paddingTop = "8px";iconCell.width = 20;iconCell.style.borderTop = "1px solid black";iconCell.style.borderLeft = "1px solid black";iconCell.style.borderBottom = "1px solid black";iconCell.style.padding = "5px";iconCell.style.backgroundColor = 'LemonChiffon';warningIconImage.border = 0;warningIconImage.src = this.get_warningIconImageUrl();errorMessageCell.style.backgroundColor = 'LemonChiffon';errorMessageCell.style.fontFamily = 'verdana';errorMessageCell.style.fontSize = '10px';errorMessageCell.style.padding = "5px";errorMessageCell.style.borderTop = "1px solid black";errorMessageCell.style.borderBottom = "1px solid black";errorMessageCell.width = '100%';errorMessageCell.innerHTML = this._getErrorMessage();closeCell.style.borderTop = "1px solid black";closeCell.style.borderRight = "1px solid black";closeCell.style.borderBottom = "1px solid black";closeCell.style.backgroundColor = 'lemonchiffon';closeCell.style.verticalAlign = 'top';closeCell.style.textAlign = 'right';closeCell.style.padding = '2px';closeImage.src = this.get_closeImageUrl();closeImage.style.cursor = 'pointer';elt.parentNode.appendChild(popupTable)
popupTable.appendChild(popupTableBody);popupTableBody.appendChild(popupTableRow);popupTableRow.appendChild(calloutCell);calloutCell.appendChild(calloutTable);calloutTable.appendChild(calloutTableBody);calloutTableBody.appendChild(calloutTableRow);calloutTableRow.appendChild(calloutArrowCell);popupTableRow.appendChild(iconCell);iconCell.appendChild(warningIconImage);popupTableRow.appendChild(errorMessageCell);popupTableRow.appendChild(closeCell);closeCell.appendChild(closeImage);var div = document.createElement("div");div.style.fontSize = "1px";div.style.position = "relative";div.style.left = "1px";div.style.borderTop = "1px solid black";div.style.width = "15px";calloutArrowCell.appendChild(div);for(var i = 14;i > 0;i--)
{
var line = document.createElement("div");line.style.width = i.toString() + "px";line.style.height = "1px";line.style.overflow = "hidden";line.style.backgroundColor = "LemonChiffon";line.style.borderLeft = "1px solid black";div.appendChild(line);}
this._popupBehavior = $create(
AjaxControlToolkit.PopupBehavior, 
{ 
positioningMode : AjaxControlToolkit.PositioningMode.Absolute,
parentElement : elementToValidate
}, 
{ }, 
null,
this._popupTable);if (this._onShowJson) {
this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._popupBehavior.set_onHide(this._onHideJson);}
$addHandler(this._closeImage, "click", this._closeClickHandler);this._isBuilt = true;}
},
dispose : function() {
if (this._isBuilt) {
this.hide();if (this._focusAttached) {
$removeHandler(this._elementToValidate, "focus", this._focusHandler);this._focusAttached = false;}
$removeHandler(this._closeImage, "click", this._closeClickHandler);this._onShowJson = null;this._onHideJson = null;if (this._popupBehavior) {
this._popupBehavior.dispose();this._popupBehavior = null;}
if (this._closeBehavior) {
this._closeBehavior.dispose();this._closeBehavior = null;}
if (this._popupTable) {
this._popupTable.parentNode.removeChild(this._popupTable);this._popupTable = null;this._errorMessageCell = null;this._elementToValidate = null;this._calloutArrowCell = null;this._warningIconImage = null;this._closeImage = null;}
this._isBuilt = false;}
AjaxControlToolkit.ValidatorCalloutBehavior.callBaseMethod(this, 'dispose');}, 
_getErrorMessage : function() {
return this.get_element().errormessage || AjaxControlToolkit.Resources.ValidatorCallout_DefaultErrorMessage;},
show : function(force) { 
if (force || !this._isOpen) {
this._isOpen = true;if(force && AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout) {
AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout.hide();}
if(AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout != null) {
return;}
AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout = this;this._popupBehavior.set_x($common.getSize(this._elementToValidate).width);this._popupBehavior.show();}
},
hide : function() {
if(AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout == this) {
AjaxControlToolkit.ValidatorCalloutBehavior._currentCallout = null;}
if (this._isOpen || $common.getVisible(this._popupTable)) {
this._isOpen = false;this._popupBehavior.hide();}
},
_onfocus : function(e) {
if(!this._originalValidationMethod(this.get_element())) {
this._ensureCallout();if(this._highlightCssClass) {
Sys.UI.DomElement.addCssClass(this._elementToValidate, this._highlightCssClass);}
this.show(true);return false;} else {
this.hide();return true;}
},
_oncloseClick : function(e) {
this.hide();},
_onvalidate : function(val) {
if(!this._originalValidationMethod(val)) {
this._ensureCallout();if(this._highlightCssClass) {
Sys.UI.DomElement.addCssClass(this._elementToValidate, this._highlightCssClass);}
if (!this._focusAttached) {
$addHandler(this._elementToValidate, "focus", this._focusHandler);this._focusAttached = true;}
this.show(false);this._invalid = true;return false;} else {
if(this._highlightCssClass && this._invalid) {
Sys.UI.DomElement.removeCssClass(this._elementToValidate, this._highlightCssClass)
}
this._invalid = false;this.hide();return true;}
},
get_onShow : function() {
return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._popupBehavior) {
this._popupBehavior.onShow();}
},
get_onHide : function() {
return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._popupBehavior) {
this._popupBehavior.onHide();}
},
get_warningIconImageUrl : function() {
return this._warningIconImageUrl;},
set_warningIconImageUrl : function(value) {
if (this._warningIconImageUrl != value) {
this._warningIconImageUrl = value;if (this.get_isInitialized()) {
this._warningIconImage.src = value;}
this.raisePropertyChanged("warningIconImageUrl");}
},
get_closeImageUrl : function() {
return this._closeImageUrl;},
set_closeImageUrl : function(value) {
if (this._closeImageUrl != value) {
this._closeImageUrl = value;if (this.get_isInitialized()) {
this._closeImage.src = value;}
this.raisePropertyChanged("closeImageUrl");}
},
get_width : function() {
return this._width;},
set_width : function(value) {
if (this._width != value) { 
this._width = value;if (this.get_isInitialized()) {
this._popupTable.style.width = _width;}
this.raisePropertyChanged("width");}
},
get_highlightCssClass : function() {
return this._highlightCssClass;},
set_highlightCssClass : function(value) {
if (this._highlightCssClass != value) {
this._highlightCssClass = value;this.raisePropertyChanged("highlightCssClass");}
},
get_isOpen : function() {
return this._isOpen;}
}
AjaxControlToolkit.ValidatorCalloutBehavior.registerClass('AjaxControlToolkit.ValidatorCalloutBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.HoverBehavior = function(element) {
AjaxControlToolkit.HoverBehavior.initializeBase(this, [element]);this._elementHandlers = null;this._hoverElementHandlers = null;this._hoverElement = null;this._hoverCount = 0;this._unhoverDelay = 0;this._hoverDelay = 0;this._hoverScript = null;this._unhoverScript = null;this._hoverFired = false;}
AjaxControlToolkit.HoverBehavior.prototype = {
_setupHandlersArray: function() {
var target = [];target[0] = Function.createDelegate(this, this._onHover);target[1] = Function.createDelegate(this, this._onUnhover);return target;},
get_elementHandlers: function() {
if (!this._elementHandlers) {
this._elementHandlers = this._setupHandlersArray();}
return this._elementHandlers;},
get_hoverElementHandlers: function() {
if (!this._hoverElementHandlers) {
this._hoverElementHandlers = this._setupHandlersArray();}
return this._hoverElementHandlers;},
get_hoverElement: function() { 
return this._hoverElement;},
set_hoverElement: function(element) {
if (element != this._hoverElement) {
if (this._hoverElement) {
this._setupHandlers(this._hoverElement, this.get_hoverElementHandlers(), false);}
this._hoverElement = element;if (this._hoverElement) {
this._setupHandlers(this._hoverElement, this.get_hoverElementHandlers(), true);} 
}
},
get_hoverDelay: function() {
return this._hoverDelay;},
set_hoverDelay: function(value) {
this._hoverDelay = value;this.raisePropertyChanged('hoverDelay');},
get_hoverScript: function() {
return this._hoverScript;},
set_hoverScript : function(script) {
this._hoverScript = script;},
get_unhoverDelay: function() {
return this._unhoverDelay;},
set_unhoverDelay: function(value) {
this._unhoverDelay = value;this.raisePropertyChanged('unhoverDelay');},
get_unhoverScript: function() {
return this._unhoverScript;},
set_unhoverScript : function(script) {
this._unhoverScript = script;},
dispose: function() {
var element = this.get_element();if (this._elementHandlers) {
var handlers = this.get_elementHandlers();this._setupHandlers(element, handlers, false);this._elementHandlers = null;}
if(this._hoverElement) {
var handlers = this.get_hoverElementHandlers();this._setupHandlers(this._hoverElement, handlers, false);this._hoverElement = null;} 
AjaxControlToolkit.HoverBehavior.callBaseMethod(this, 'dispose');},
initialize: function() {
AjaxControlToolkit.HoverBehavior.callBaseMethod(this, 'initialize');var handlers = this.get_elementHandlers();this._setupHandlers(this.get_element(), handlers, true);if (this._hoverElement) {
handlers = this.get_hoverElementHandlers();this._setupHandlers(this._hoverElement, handlers, true);}
},
add_hover: function(handler) {
this.get_events().addHandler("hover", handler);},
remove_hover: function(handler) {
this.get_events().removeHandler("hover", handler);},
_fireHover : function() {
if (!this._hoverCount || this._hoverFired) {
return;}
var handler = this.get_events().getHandler("hover");if (handler) {
handler(this, Sys.EventArgs.Empty);}
if (this._hoverScript) {
eval(this._hoverScript);}
this._hoverFired = true;},
_onHover: function() {
this._hoverCount++;if (!this._hoverDelay) {
this._fireHover();}
else {
window.setTimeout(Function.createDelegate(this, this._fireHover), this._hoverDelay);}
},
add_unhover: function(handler) {
this.get_events().addHandler("unhover", handler);},
remove_unhover: function(handler) {
this.get_events().removeHandler("unhover", handler);},
_fireUnhover : function() {
if (this._hoverFired && !this._hoverCount) {
this._hoverFired = false;var handler = this.get_events().getHandler("unhover");if (handler) {
handler(this, Sys.EventArgs.Empty);}
if (this._unhoverScript) {
eval(this._unhoverScript);} 
}
},
_onUnhover: function() {
this._hoverCount--;if (this._hoverCount <= 0) {
this._hoverCount = 0;if (!this._unhoverDelay) {
this._fireUnhover();}
else {
window.setTimeout(Function.createDelegate(this, this._fireUnhover), this._unhoverDelay);} 
}
},
_setupHandlers: function(element, handlers, hookup) { 
if (!this.get_isInitialized() || !element) return;if (hookup) {
$addHandler(element, "mouseover", handlers[0]);$addHandler(element, "focus", handlers[0]);$addHandler(element, "mouseout", handlers[1]);$addHandler(element, "blur", handlers[1]);}
else {
$removeHandler(element, "mouseover", handlers[0]);$removeHandler(element, "focus", handlers[0]);$removeHandler(element, "mouseout", handlers[1]);$removeHandler(element, "blur", handlers[1]);} 
}
}
AjaxControlToolkit.HoverBehavior.descriptor = {
properties: [ {name: 'hoverElement', isDomElement: true},
{name: 'unhoverDelay', type: Number} ],
events: [ {name: 'hover'},
{name: 'unhover'} ]
}
AjaxControlToolkit.HoverBehavior.registerClass('AjaxControlToolkit.HoverBehavior', AjaxControlToolkit.BehaviorBase);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.PopupBehavior = function(element) {
AjaxControlToolkit.PopupBehavior.initializeBase(this, [element]);this._x = 0;this._y = 0;this._positioningMode = AjaxControlToolkit.PositioningMode.Absolute;this._parentElement = null;this._parentElementID = null;this._moveHandler = null;this._firstPopup = true;this._originalParent = null;this._visible = false;this._onShow = null;this._onShowEndedHandler = null;this._onHide = null;this._onHideEndedHandler = null;}
AjaxControlToolkit.PopupBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.PopupBehavior.callBaseMethod(this, 'initialize');this._hidePopup();this.get_element().style.position = "absolute";this._onShowEndedHandler = Function.createDelegate(this, this._onShowEnded);this._onHideEndedHandler = Function.createDelegate(this, this._onHideEnded);},
dispose : function() {
var element = this.get_element();if (element) {
if (this._visible) {
this.hide();}
if (this._originalParent) {
element.parentNode.removeChild(element);this._originalParent.appendChild(element);this._originalParent = null;}
element._hideWindowedElementsIFrame = null;}
this._parentElement = null;if (this._onShow && this._onShow.get_animation() && this._onShowEndedHandler) {
this._onShow.get_animation().remove_ended(this._onShowEndedHandler);}
this._onShowEndedHandler = null;this._onShow = null;if (this._onHide && this._onHide.get_animation() && this._onHideEndedHandler) {
this._onHide.get_animation().remove_ended(this._onHideEndedHandler);}
this._onHideEndedHandler = null;this._onHide = null;AjaxControlToolkit.PopupBehavior.callBaseMethod(this, 'dispose');},
show : function() {
if (this._visible) {
return;}
var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._visible = true;var element = this.get_element();$common.setVisible(element, true);this.setupPopup();if (this._onShow) {
$common.setVisible(element, false);this.onShow();} else {
this.raiseShown(Sys.EventArgs.Empty);}
},
hide : function() {
if (!this._visible) {
return;}
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._visible = false;if (this._onHide) {
this.onHide();} else {
this._hidePopup();this._hideCleanup();}
},
getBounds : function() {
var element = this.get_element();var offsetParent = element.offsetParent || document.documentElement;var diff;var parentBounds;if (this._parentElement) {
parentBounds = $common.getBounds(this._parentElement);var offsetParentLocation = $common.getLocation(offsetParent);diff = {x: parentBounds.x - offsetParentLocation.x, y:parentBounds.y - offsetParentLocation.y};} else {
parentBounds = $common.getBounds(offsetParent);diff = {x:0, y:0};}
var width = element.offsetWidth - (element.clientLeft ? element.clientLeft * 2 : 0);var height = element.offsetHeight - (element.clientTop ? element.clientTop * 2 : 0);var position;switch (this._positioningMode) {
case AjaxControlToolkit.PositioningMode.Center:
position = {
x: Math.round(parentBounds.width / 2 - width / 2),
y: Math.round(parentBounds.height / 2 - height / 2)
};break;case AjaxControlToolkit.PositioningMode.BottomLeft:
position = {
x: 0,
y: parentBounds.height
};break;case AjaxControlToolkit.PositioningMode.BottomRight:
position = {
x: parentBounds.width - width,
y: parentBounds.height
};break;case AjaxControlToolkit.PositioningMode.TopLeft:
position = {
x: 0,
y: -element.offsetHeight
};break;case AjaxControlToolkit.PositioningMode.TopRight:
position = {
x: parentBounds.width - width,
y: -element.offsetHeight
};break;default:
position = {x: 0, y: 0};}
position.x += this._x + diff.x;position.y += this._y + diff.y;return new Sys.UI.Bounds(position.x, position.y, width, height);},
adjustPopupPosition : function(bounds) {
var element = this.get_element();if (!bounds) {
bounds = this.getBounds();}
if (this._firstPopup) {
element.style.width = bounds.width + "px";this._firstPopup = false;}
var newPosition = $common.getBounds(element);var updateNeeded = false;if (newPosition.x < 0) {
bounds.x -= newPosition.x;updateNeeded = true;}
if (newPosition.y < 0) {
bounds.y -= newPosition.y;updateNeeded = true;}
if (updateNeeded) {
$common.setLocation(element, bounds);}
},
addBackgroundIFrame : function() {
var element = this.get_element();if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)) {
var childFrame = element._hideWindowedElementsIFrame;if (!childFrame) {
childFrame = document.createElement("iframe");childFrame.src = "javascript:'<html></html>';";childFrame.style.position = "absolute";childFrame.style.display = "none";childFrame.scrolling = "no";childFrame.frameBorder = "0";childFrame.tabIndex = "-1";childFrame.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";element.parentNode.insertBefore(childFrame, element);element._hideWindowedElementsIFrame = childFrame;this._moveHandler = Function.createDelegate(this, this._onMove);Sys.UI.DomEvent.addHandler(element, "move", this._moveHandler);}
$common.setBounds(childFrame, $common.getBounds(element));childFrame.style.display = element.style.display;if (element.currentStyle && element.currentStyle.zIndex) {
childFrame.style.zIndex = element.currentStyle.zIndex;} else if (element.style.zIndex) {
childFrame.style.zIndex = element.style.zIndex;}
}
},
setupPopup : function() {
var element = this.get_element();var bounds = this.getBounds();$common.setLocation(element, bounds);this.adjustPopupPosition(bounds);element.zIndex = 1000;this.addBackgroundIFrame();},
_hidePopup : function() {
var element = this.get_element();$common.setVisible(element, false);if (element.originalWidth) {
element.style.width = element.originalWidth + "px";element.originalWidth = null;}
},
_hideCleanup : function() {
var element = this.get_element();if (this._moveHandler) {
Sys.UI.DomEvent.removeHandler(element, "move", this._moveHandler);this._moveHandler = null;}
if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
var childFrame = element._hideWindowedElementsIFrame;if (childFrame) {
childFrame.style.display = "none";}
}
this.raiseHidden(Sys.EventArgs.Empty);},
_onMove : function() {
var element = this.get_element();if (element._hideWindowedElementsIFrame) {
element.parentNode.insertBefore(element._hideWindowedElementsIFrame, element);element._hideWindowedElementsIFrame.style.top = element.style.top;element._hideWindowedElementsIFrame.style.left = element.style.left;}
},
get_onShow : function() {
return this._onShow ? this._onShow.get_json() : null;},
set_onShow : function(value) {
if (!this._onShow) {
this._onShow = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onShow.initialize();}
this._onShow.set_json(value);var animation = this._onShow.get_animation();if (animation) {
animation.add_ended(this._onShowEndedHandler);}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._onShow;},
onShow : function() {
if (this._onShow) {
if (this._onHide) {
this._onHide.quit();}
this._onShow.play();}
},
_onShowEnded : function() {
this.adjustPopupPosition();this.addBackgroundIFrame();this.raiseShown(Sys.EventArgs.Empty);},
get_onHide : function() {
return this._onHide ? this._onHide.get_json() : null;},
set_onHide : function(value) {
if (!this._onHide) {
this._onHide = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHide.initialize();}
this._onHide.set_json(value);var animation = this._onHide.get_animation();if (animation) {
animation.add_ended(this._onHideEndedHandler);}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._onHide;},
onHide : function() {
if (this._onHide) {
if (this._onShow) {
this._onShow.quit();}
this._onHide.play();}
},
_onHideEnded : function() {
this._hideCleanup();},
get_parentElement : function() {
if (!this._parentElement && this._parentElementID) {
this.set_parentElement($get(this._parentElementID));Sys.Debug.assert(this._parentElement != null, String.format(AjaxControlToolkit.Resources.PopupExtender_NoParentElement, this._parentElementID));} 
return this._parentElement;},
set_parentElement : function(element) {
this._parentElement = element;this.raisePropertyChanged('parentElement');},
get_parentElementID : function() {
if (this._parentElement) {
return this._parentElement.id
}
return this._parentElementID;},
set_parentElementID : function(elementID) {
this._parentElementID = elementID;if (this.get_isInitialized()) {
this.set_parentElement($get(elementID));}
},
get_positioningMode : function() {
return this._positioningMode;},
set_positioningMode : function(mode) {
this._positioningMode = mode;this.raisePropertyChanged('positioningMode');},
get_x : function() {
return this._x;},
set_x : function(value) {
if (value != this._x) {
this._x = value;if (this._visible) {
this.setupPopup();}
this.raisePropertyChanged('x');}
},
get_y : function() {
return this._y;},
set_y : function(value) {
if (value != this._y) {
this._y = value;if (this._visible) {
this.setupPopup();}
this.raisePropertyChanged('y');}
},
get_visible : function() {
return this._visible;},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler('shown', handler);},
remove_shown : function(handler) {
this.get_events().removeHandler('shown', handler);},
raiseShown : function(eventArgs) {
var handler = this.get_events().getHandler('shown');if (handler) {
handler(this, eventArgs);}
}, 
add_hiding : function(handler) {
this.get_events().addHandler('hiding', handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler('hiding', handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.PopupBehavior.registerClass('AjaxControlToolkit.PopupBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.PositioningMode = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.PositioningMode.prototype = {
Absolute: 0,
Center: 1,
BottomLeft: 2,
BottomRight: 3,
TopLeft: 4,
TopRight: 5
}
AjaxControlToolkit.PositioningMode.registerEnum('AjaxControlToolkit.PositioningMode');
AjaxControlToolkit.FloatingBehavior = function(element) {
AjaxControlToolkit.FloatingBehavior.initializeBase(this,[element]);var _handle;var _location;var _dragStartLocation;var _profileProperty;var _profileComponent;var _mouseDownHandler = Function.createDelegate(this, mouseDownHandler);this.add_move = function(handler) {
this.get_events().addHandler('move', handler);}
this.remove_move = function(handler) {
this.get_events().removeHandler('move', handler);}
this.get_handle = function() {
return _handle;}
this.set_handle = function(value) {
if (_handle != null) {
$removeHandler(_handle, "mousedown", _mouseDownHandler);}
_handle = value;$addHandler(_handle, "mousedown", _mouseDownHandler);}
this.get_profileProperty = function() {
return _profileProperty;}
this.set_profileProperty = function(value) {
_profileProperty = value;}
this.get_profileComponent = function() {
return _profileComponent;}
this.set_profileComponent = function(value) {
_profileComponent = value;}
this.get_location = function() {
return _location;}
this.set_location = function(value) {
if (_location != value) {
_location = value;if (this.get_isInitialized()) { 
$common.setLocation(this.get_element(), _location);}
this.raisePropertyChanged('location');}
}
this.initialize = function() {
AjaxControlToolkit.FloatingBehavior.callBaseMethod(this, 'initialize');AjaxControlToolkit.DragDropManager.registerDropTarget(this);var el = this.get_element();if (!_location) { 
_location = $common.getLocation(el);}
el.style.position = "fixed";$common.setLocation(el, _location);}
this.dispose = function() {
AjaxControlToolkit.DragDropManager.unregisterDropTarget(this);if (_handle && _mouseDownHandler) {
$removeHandler(_handle, "mousedown", _mouseDownHandler);}
_mouseDownHandler = null;AjaxControlToolkit.FloatingBehavior.callBaseMethod(this, 'dispose');}
this.checkCanDrag = function(element) {
var undraggableTagNames = ["input", "button", "select", "textarea", "label"];var tagName = element.tagName;if ((tagName.toLowerCase() == "a") && (element.href != null) && (element.href.length > 0)) {
return false;}
if (Array.indexOf(undraggableTagNames, tagName.toLowerCase()) > -1) {
return false;}
return true;}
function mouseDownHandler(ev) {
window._event = ev;var el = this.get_element();if (this.checkCanDrag(ev.target)) {
_dragStartLocation = $common.getLocation(el);ev.preventDefault();this.startDragDrop(el);}
}
this.get_dragDataType = function() {
return "_floatingObject";}
this.getDragData = function(context) {
return null;}
this.get_dragMode = function() {
return AjaxControlToolkit.DragMode.Move;}
this.onDragStart = function() { }
this.onDrag = function() { }
this.onDragEnd = function(canceled) {
if (!canceled) {
var handler = this.get_events().getHandler('move');if(handler) {
var cancelArgs = new Sys.CancelEventArgs();handler(this, cancelArgs);canceled = cancelArgs.get_cancel();} 
}
var el = this.get_element();if (canceled) {
$common.setLocation(el, _dragStartLocation);} else {
_location = $common.getLocation(el);this.raisePropertyChanged('location');}
}
this.startDragDrop = function(dragVisual) {
AjaxControlToolkit.DragDropManager.startDragDrop(this, dragVisual, null);}
this.get_dropTargetElement = function() {
return document.body;}
this.canDrop = function(dragMode, dataType, data) {
return (dataType == "_floatingObject");}
this.drop = function(dragMode, dataType, data) {}
this.onDragEnterTarget = function(dragMode, dataType, data) {}
this.onDragLeaveTarget = function(dragMode, dataType, data) {}
this.onDragInTarget = function(dragMode, dataType, data) {}
}
AjaxControlToolkit.FloatingBehavior.registerClass('AjaxControlToolkit.FloatingBehavior', AjaxControlToolkit.BehaviorBase, AjaxControlToolkit.IDragSource, AjaxControlToolkit.IDropTarget, Sys.IDisposable);
/////////////////////////////////////////////////////////////////////////////
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.IDragSource = function() {
}
AjaxControlToolkit.IDragSource.prototype = {
get_dragDataType: function() { throw Error.notImplemented();},
getDragData: function() { throw Error.notImplemented();},
get_dragMode: function() { throw Error.notImplemented();},
onDragStart: function() { throw Error.notImplemented();},
onDrag: function() { throw Error.notImplemented();},
onDragEnd: function() { throw Error.notImplemented();}
}
AjaxControlToolkit.IDragSource.registerInterface('AjaxControlToolkit.IDragSource');/////////////////////////////////////////////////////////////////////////////
AjaxControlToolkit.IDropTarget = function() {
}
AjaxControlToolkit.IDropTarget.prototype = {
get_dropTargetElement: function() { throw Error.notImplemented();},
canDrop: function() { throw Error.notImplemented();},
drop: function() { throw Error.notImplemented();},
onDragEnterTarget: function() { throw Error.notImplemented();},
onDragLeaveTarget: function() { throw Error.notImplemented();},
onDragInTarget: function() { throw Error.notImplemented();}
}
AjaxControlToolkit.IDropTarget.registerInterface('AjaxControlToolkit.IDropTarget');/////////////////////////////////////////////
AjaxControlToolkit.DragMode = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.DragMode.prototype = {
Copy: 0,
Move: 1
}
AjaxControlToolkit.DragMode.registerEnum('AjaxControlToolkit.DragMode');//////////////////////////////////////////////////////////////////
AjaxControlToolkit.DragDropEventArgs = function(dragMode, dragDataType, dragData) {
this._dragMode = dragMode;this._dataType = dragDataType;this._data = dragData;}
AjaxControlToolkit.DragDropEventArgs.prototype = {
get_dragMode: function() {
return this._dragMode || null;},
get_dragDataType: function() {
return this._dataType || null;},
get_dragData: function() {
return this._data || null;}
}
AjaxControlToolkit.DragDropEventArgs.registerClass('AjaxControlToolkit.DragDropEventArgs');AjaxControlToolkit._DragDropManager = function() {
this._instance = null;this._events = null;}
AjaxControlToolkit._DragDropManager.prototype = {
add_dragStart: function(handler) {
this.get_events().addHandler('dragStart', handler);},
remove_dragStart: function(handler) {
this.get_events().removeHandler('dragStart', handler);},
get_events: function() {
if (!this._events) {
this._events = new Sys.EventHandlerList();}
return this._events;},
add_dragStop: function(handler) {
this.get_events().addHandler('dragStop', handler);},
remove_dragStop: function(handler) {
this.get_events().removeHandler('dragStop', handler);},
_getInstance: function() {
if (!this._instance) {
if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
this._instance = new AjaxControlToolkit.IEDragDropManager();}
else {
this._instance = new AjaxControlToolkit.GenericDragDropManager();}
this._instance.initialize();this._instance.add_dragStart(Function.createDelegate(this, this._raiseDragStart));this._instance.add_dragStop(Function.createDelegate(this, this._raiseDragStop));}
return this._instance;},
startDragDrop: function(dragSource, dragVisual, context) {
this._getInstance().startDragDrop(dragSource, dragVisual, context);},
registerDropTarget: function(target) {
this._getInstance().registerDropTarget(target);},
unregisterDropTarget: function(target) {
this._getInstance().unregisterDropTarget(target);},
dispose: function() {
delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this);},
_raiseDragStart: function(sender, eventArgs) {
var handler = this.get_events().getHandler('dragStart');if(handler) {
handler(this, eventArgs);}
},
_raiseDragStop: function(sender, eventArgs) {
var handler = this.get_events().getHandler('dragStop');if(handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit._DragDropManager.registerClass('AjaxControlToolkit._DragDropManager');AjaxControlToolkit.DragDropManager = new AjaxControlToolkit._DragDropManager();AjaxControlToolkit.IEDragDropManager = function() {
AjaxControlToolkit.IEDragDropManager.initializeBase(this);this._dropTargets = null;this._radius = 10;this._activeDragVisual = null;this._activeContext = null;this._activeDragSource = null;this._underlyingTarget = null;this._oldOffset = null;this._potentialTarget = null;this._isDragging = false;this._mouseUpHandler = null;this._documentMouseMoveHandler = null;this._documentDragOverHandler = null;this._dragStartHandler = null;this._mouseMoveHandler = null;this._dragEnterHandler = null;this._dragLeaveHandler = null;this._dragOverHandler = null;this._dropHandler = null;}
AjaxControlToolkit.IEDragDropManager.prototype = {
add_dragStart : function(handler) {
this.get_events().addHandler("dragStart", handler);},
remove_dragStart : function(handler) {
this.get_events().removeHandler("dragStart", handler);},
add_dragStop : function(handler) {
this.get_events().addHandler("dragStop", handler);},
remove_dragStop : function(handler) {
this.get_events().removeHandler("dragStop", handler);},
initialize : function() {
AjaxControlToolkit.IEDragDropManager.callBaseMethod(this, 'initialize');this._mouseUpHandler = Function.createDelegate(this, this._onMouseUp);this._documentMouseMoveHandler = Function.createDelegate(this, this._onDocumentMouseMove);this._documentDragOverHandler = Function.createDelegate(this, this._onDocumentDragOver);this._dragStartHandler = Function.createDelegate(this, this._onDragStart);this._mouseMoveHandler = Function.createDelegate(this, this._onMouseMove);this._dragEnterHandler = Function.createDelegate(this, this._onDragEnter);this._dragLeaveHandler = Function.createDelegate(this, this._onDragLeave);this._dragOverHandler = Function.createDelegate(this, this._onDragOver);this._dropHandler = Function.createDelegate(this, this._onDrop);},
dispose : function() {
if(this._dropTargets) {
for (var i = 0;i < this._dropTargets;i++) {
this.unregisterDropTarget(this._dropTargets[i]);}
this._dropTargets = null;}
AjaxControlToolkit.IEDragDropManager.callBaseMethod(this, 'dispose');},
startDragDrop : function(dragSource, dragVisual, context) {
var ev = window._event;if (this._isDragging) {
return;}
this._underlyingTarget = null;this._activeDragSource = dragSource;this._activeDragVisual = dragVisual;this._activeContext = context;var mousePosition = { x: ev.clientX, y: ev.clientY };dragVisual.originalPosition = dragVisual.style.position;dragVisual.style.position = "absolute";document._lastPosition = mousePosition;dragVisual.startingPoint = mousePosition;var scrollOffset = this.getScrollOffset(dragVisual,  true);dragVisual.startingPoint = this.addPoints(dragVisual.startingPoint, scrollOffset);if (dragVisual.style.position == "absolute") {
dragVisual.startingPoint = this.subtractPoints(dragVisual.startingPoint, $common.getLocation(dragVisual));}
else {
var left = parseInt(dragVisual.style.left);var top = parseInt(dragVisual.style.top);if (isNaN(left)) left = "0";if (isNaN(top)) top = "0";dragVisual.startingPoint = this.subtractPoints(dragVisual.startingPoint, { x: left, y: top });}
this._prepareForDomChanges();dragSource.onDragStart();var eventArgs = new AjaxControlToolkit.DragDropEventArgs(
dragSource.get_dragMode(),
dragSource.get_dragDataType(),
dragSource.getDragData(context));var handler = this.get_events().getHandler('dragStart');if(handler) handler(this,eventArgs);this._recoverFromDomChanges();this._wireEvents();this._drag( true);},
_stopDragDrop : function(cancelled) {
var ev = window._event;if (this._activeDragSource != null) {
this._unwireEvents();if (!cancelled) {
cancelled = (this._underlyingTarget == null);}
if (!cancelled && this._underlyingTarget != null) {
this._underlyingTarget.drop(this._activeDragSource.get_dragMode(), this._activeDragSource.get_dragDataType(),
this._activeDragSource.getDragData(this._activeContext));}
this._activeDragSource.onDragEnd(cancelled);var handler = this.get_events().getHandler('dragStop');if(handler) handler(this,Sys.EventArgs.Empty);this._activeDragVisual.style.position = this._activeDragVisual.originalPosition;this._activeDragSource = null;this._activeContext = null;this._activeDragVisual = null;this._isDragging = false;this._potentialTarget = null;ev.preventDefault();}
},
_drag : function(isInitialDrag) {
var ev = window._event;var mousePosition = { x: ev.clientX, y: ev.clientY };document._lastPosition = mousePosition;var scrollOffset = this.getScrollOffset(this._activeDragVisual,  true);var position = this.addPoints(this.subtractPoints(mousePosition, this._activeDragVisual.startingPoint), scrollOffset);if (!isInitialDrag && parseInt(this._activeDragVisual.style.left) == position.x && parseInt(this._activeDragVisual.style.top) == position.y) {
return;}
$common.setLocation(this._activeDragVisual, position);this._prepareForDomChanges();this._activeDragSource.onDrag();this._recoverFromDomChanges();this._potentialTarget = this._findPotentialTarget(this._activeDragSource, this._activeDragVisual);var movedToOtherTarget = (this._potentialTarget != this._underlyingTarget || this._potentialTarget == null);if (movedToOtherTarget && this._underlyingTarget != null) {
this._leaveTarget(this._activeDragSource, this._underlyingTarget);}
if (this._potentialTarget != null) {
if (movedToOtherTarget) {
this._underlyingTarget = this._potentialTarget;this._enterTarget(this._activeDragSource, this._underlyingTarget);}
else {
this._moveInTarget(this._activeDragSource, this._underlyingTarget);}
}
else {
this._underlyingTarget = null;}
},
_wireEvents : function() {
$addHandler(document, "mouseup", this._mouseUpHandler);$addHandler(document, "mousemove", this._documentMouseMoveHandler);$addHandler(document.body, "dragover", this._documentDragOverHandler);$addHandler(this._activeDragVisual, "dragstart", this._dragStartHandler);$addHandler(this._activeDragVisual, "dragend", this._mouseUpHandler);$addHandler(this._activeDragVisual, "drag", this._mouseMoveHandler);},
_unwireEvents : function() {
$removeHandler(this._activeDragVisual, "drag", this._mouseMoveHandler);$removeHandler(this._activeDragVisual, "dragend", this._mouseUpHandler);$removeHandler(this._activeDragVisual, "dragstart", this._dragStartHandler);$removeHandler(document.body, "dragover", this._documentDragOverHandler);$removeHandler(document, "mousemove", this._documentMouseMoveHandler);$removeHandler(document, "mouseup", this._mouseUpHandler);},
registerDropTarget : function(dropTarget) {
if (this._dropTargets == null) {
this._dropTargets = [];}
Array.add(this._dropTargets, dropTarget);this._wireDropTargetEvents(dropTarget);},
unregisterDropTarget : function(dropTarget) {
this._unwireDropTargetEvents(dropTarget);if (this._dropTargets) {
Array.remove(this._dropTargets, dropTarget);}
},
_wireDropTargetEvents : function(dropTarget) {
var associatedElement = dropTarget.get_dropTargetElement();associatedElement._dropTarget = dropTarget;$addHandler(associatedElement, "dragenter", this._dragEnterHandler);$addHandler(associatedElement, "dragleave", this._dragLeaveHandler);$addHandler(associatedElement, "dragover", this._dragOverHandler);$addHandler(associatedElement, "drop", this._dropHandler);},
_unwireDropTargetEvents : function(dropTarget) {
var associatedElement = dropTarget.get_dropTargetElement();if(associatedElement._dropTarget)
{
associatedElement._dropTarget = null;$removeHandler(associatedElement, "dragenter", this._dragEnterHandler);$removeHandler(associatedElement, "dragleave", this._dragLeaveHandler);$removeHandler(associatedElement, "dragover", this._dragOverHandler);$removeHandler(associatedElement, "drop", this._dropHandler);}
},
_onDragStart : function(ev) {
window._event = ev;document.selection.empty();var dt = ev.dataTransfer;if(!dt && ev.rawEvent) dt = ev.rawEvent.dataTransfer;var dataType = this._activeDragSource.get_dragDataType().toLowerCase();var data = this._activeDragSource.getDragData(this._activeContext);if (data) {
if (dataType != "text" && dataType != "url") {
dataType = "text";if (data.innerHTML != null) {
data = data.innerHTML;}
}
dt.effectAllowed = "move";dt.setData(dataType, data.toString());}
},
_onMouseUp : function(ev) {
window._event = ev;this._stopDragDrop(false);},
_onDocumentMouseMove : function(ev) {
window._event = ev;this._dragDrop();},
_onDocumentDragOver : function(ev) {
window._event = ev;if(this._potentialTarget) ev.preventDefault();},
_onMouseMove : function(ev) {
window._event = ev;this._drag();},
_onDragEnter : function(ev) {
window._event = ev;if (this._isDragging) {
ev.preventDefault();}
else {
var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++) {
this._dropTarget.onDragEnterTarget(AjaxControlToolkit.DragMode.Copy, dataObjects[i].type, dataObjects[i].value);}
}
},
_onDragLeave : function(ev) {
window._event = ev;if (this._isDragging) {
ev.preventDefault();}
else {
var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++) {
this._dropTarget.onDragLeaveTarget(AjaxControlToolkit.DragMode.Copy, dataObjects[i].type, dataObjects[i].value);}
}
},
_onDragOver : function(ev) {
window._event = ev;if (this._isDragging) {
ev.preventDefault();}
else {
var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++) {
this._dropTarget.onDragInTarget(AjaxControlToolkit.DragMode.Copy, dataObjects[i].type, dataObjects[i].value);}
}
},
_onDrop : function(ev) {
window._event = ev;if (!this._isDragging) {
var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++) {
this._dropTarget.drop(AjaxControlToolkit.DragMode.Copy, dataObjects[i].type, dataObjects[i].value);}
}
ev.preventDefault();},
_getDropTarget : function(element) {
while (element) {
if (element._dropTarget != null) {
return element._dropTarget;}
element = element.parentNode;}
return null;},
_dragDrop : function() {
if (this._isDragging) {
return;}
this._isDragging = true;this._activeDragVisual.dragDrop();document.selection.empty();},
_moveInTarget : function(dragSource, dropTarget) {
this._prepareForDomChanges();dropTarget.onDragInTarget(dragSource.get_dragMode(), dragSource.get_dragDataType(), dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},
_enterTarget : function(dragSource, dropTarget) {
this._prepareForDomChanges();dropTarget.onDragEnterTarget(dragSource.get_dragMode(), dragSource.get_dragDataType(), dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},
_leaveTarget : function(dragSource, dropTarget) {
this._prepareForDomChanges();dropTarget.onDragLeaveTarget(dragSource.get_dragMode(), dragSource.get_dragDataType(), dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},
_findPotentialTarget : function(dragSource, dragVisual) {
var ev = window._event;if (this._dropTargets == null) {
return null;}
var type = dragSource.get_dragDataType();var mode = dragSource.get_dragMode();var data = dragSource.getDragData(this._activeContext);var scrollOffset = this.getScrollOffset(document.body,  true);var x = ev.clientX + scrollOffset.x;var y = ev.clientY + scrollOffset.y;var cursorRect = { x: x - this._radius, y: y - this._radius, width: this._radius * 2, height: this._radius * 2 };var targetRect;for (var i = 0;i < this._dropTargets.length;i++) {
targetRect = $common.getBounds(this._dropTargets[i].get_dropTargetElement());if ($common.overlaps(cursorRect, targetRect) && this._dropTargets[i].canDrop(mode, type, data)) {
return this._dropTargets[i];}
}
return null;},
_prepareForDomChanges : function() {
this._oldOffset = $common.getLocation(this._activeDragVisual);},
_recoverFromDomChanges : function() {
var newOffset = $common.getLocation(this._activeDragVisual);if (this._oldOffset.x != newOffset.x || this._oldOffset.y != newOffset.y) {
this._activeDragVisual.startingPoint = this.subtractPoints(this._activeDragVisual.startingPoint, this.subtractPoints(this._oldOffset, newOffset));scrollOffset = this.getScrollOffset(this._activeDragVisual,  true);var position = this.addPoints(this.subtractPoints(document._lastPosition, this._activeDragVisual.startingPoint), scrollOffset);$common.setLocation(this._activeDragVisual, position);}
},
addPoints : function(p1, p2) {
return { x: p1.x + p2.x, y: p1.y + p2.y };},
subtractPoints : function(p1, p2) {
return { x: p1.x - p2.x, y: p1.y - p2.y };},
getScrollOffset : function(element, recursive) {
var left = element.scrollLeft;var top = element.scrollTop;if (recursive) {
var parent = element.parentNode;while (parent != null && parent.scrollLeft != null) {
left += parent.scrollLeft;top += parent.scrollTop;if (parent == document.body && (left != 0 && top != 0))
break;parent = parent.parentNode;}
}
return { x: left, y: top };},
getBrowserRectangle : function() {
var width = window.innerWidth;var height = window.innerHeight;if (width == null) {
width = document.body.clientWidth;}
if (height == null) {
height = document.body.clientHeight;}
return { x: 0, y: 0, width: width, height: height };},
getNextSibling : function(item) {
for (item = item.nextSibling;item != null;item = item.nextSibling) {
if (item.innerHTML != null) {
return item;}
}
return null;},
hasParent : function(element) {
return (element.parentNode != null && element.parentNode.tagName != null);}
}
AjaxControlToolkit.IEDragDropManager.registerClass('AjaxControlToolkit.IEDragDropManager', Sys.Component);AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget = function(dropTarget) {
if (dropTarget == null) {
return [];}
var ev = window._event;var dataObjects = [];var dataTypes = [ "URL", "Text" ];var data;for (var i = 0;i < dataTypes.length;i++) {
var dt = ev.dataTransfer;if(!dt && ev.rawEvent) dt = ev.rawEvent.dataTransfer;data = dt.getData(dataTypes[i]);if (dropTarget.canDrop(AjaxControlToolkit.DragMode.Copy, dataTypes[i], data)) {
if (data) {
Array.add(dataObjects, { type : dataTypes[i], value : data });}
}
}
return dataObjects;}
AjaxControlToolkit.GenericDragDropManager = function() {
AjaxControlToolkit.GenericDragDropManager.initializeBase(this);this._dropTargets = null;this._scrollEdgeConst = 40;this._scrollByConst = 10;this._scroller = null;this._scrollDeltaX = 0;this._scrollDeltaY = 0;this._activeDragVisual = null;this._activeContext = null;this._activeDragSource = null;this._oldOffset = null;this._potentialTarget = null;this._mouseUpHandler = null;this._mouseMoveHandler = null;this._keyPressHandler = null;this._scrollerTickHandler = null;}
AjaxControlToolkit.GenericDragDropManager.prototype = {
initialize : function() {
AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this, "initialize");this._mouseUpHandler = Function.createDelegate(this, this._onMouseUp);this._mouseMoveHandler = Function.createDelegate(this, this._onMouseMove);this._keyPressHandler = Function.createDelegate(this, this._onKeyPress);this._scrollerTickHandler = Function.createDelegate(this, this._onScrollerTick);if (Sys.Browser.agent === Sys.Browser.Safari) {
AjaxControlToolkit.GenericDragDropManager.__loadSafariCompatLayer(this);}
this._scroller = new Sys.Timer();this._scroller.set_interval(10);this._scroller.add_tick(this._scrollerTickHandler);},
startDragDrop : function(dragSource, dragVisual, context) {
this._activeDragSource = dragSource;this._activeDragVisual = dragVisual;this._activeContext = context;AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this, "startDragDrop", [dragSource, dragVisual, context]);},
_stopDragDrop : function(cancelled) {
this._scroller.set_enabled(false);AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this, "_stopDragDrop", [cancelled]);},
_drag : function(isInitialDrag) {
AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this, "_drag", [isInitialDrag]);this._autoScroll();},
_wireEvents : function() {
$addHandler(document, "mouseup", this._mouseUpHandler);$addHandler(document, "mousemove", this._mouseMoveHandler);$addHandler(document, "keypress", this._keyPressHandler);},
_unwireEvents : function() {
$removeHandler(document, "keypress", this._keyPressHandler);$removeHandler(document, "mousemove", this._mouseMoveHandler);$removeHandler(document, "mouseup", this._mouseUpHandler);},
_wireDropTargetEvents : function(dropTarget) {
},
_unwireDropTargetEvents : function(dropTarget) {
},
_onMouseUp : function(e) {
window._event = e;this._stopDragDrop(false);},
_onMouseMove : function(e) {
window._event = e;this._drag();},
_onKeyPress : function(e) {
window._event = e;var k = e.keyCode ? e.keyCode : e.rawEvent.keyCode;if (k == 27) {
this._stopDragDrop( true);}
},
_autoScroll : function() {
var ev = window._event;var browserRect = this.getBrowserRectangle();if (browserRect.width > 0) {
this._scrollDeltaX = this._scrollDeltaY = 0;if (ev.clientX < browserRect.x + this._scrollEdgeConst) this._scrollDeltaX = -this._scrollByConst;else if (ev.clientX > browserRect.width - this._scrollEdgeConst) this._scrollDeltaX = this._scrollByConst;if (ev.clientY < browserRect.y + this._scrollEdgeConst) this._scrollDeltaY = -this._scrollByConst;else if (ev.clientY > browserRect.height - this._scrollEdgeConst) this._scrollDeltaY = this._scrollByConst;if (this._scrollDeltaX != 0 || this._scrollDeltaY != 0) {
this._scroller.set_enabled(true);}
else {
this._scroller.set_enabled(false);}
}
},
_onScrollerTick : function() {
var oldLeft = document.body.scrollLeft;var oldTop = document.body.scrollTop;window.scrollBy(this._scrollDeltaX, this._scrollDeltaY);var newLeft = document.body.scrollLeft;var newTop = document.body.scrollTop;var dragVisual = this._activeDragVisual;var position = { x: parseInt(dragVisual.style.left) + (newLeft - oldLeft), y: parseInt(dragVisual.style.top) + (newTop - oldTop) };$common.setLocation(dragVisual, position);}
}
AjaxControlToolkit.GenericDragDropManager.registerClass('AjaxControlToolkit.GenericDragDropManager', AjaxControlToolkit.IEDragDropManager);if (Sys.Browser.agent === Sys.Browser.Safari) {
AjaxControlToolkit.GenericDragDropManager.__loadSafariCompatLayer = function(ddm) {
ddm._getScrollOffset = ddm.getScrollOffset;ddm.getScrollOffset = function(element, recursive) {
return { x: 0, y: 0 };}
ddm._getBrowserRectangle = ddm.getBrowserRectangle;ddm.getBrowserRectangle = function() {
var browserRect = ddm._getBrowserRectangle();var offset = ddm._getScrollOffset(document.body, true);return { x: browserRect.x + offset.x, y: browserRect.y + offset.y,
width: browserRect.width + offset.x, height: browserRect.height + offset.y };}
}
}

/////////////////////////////////////////////////////////////////////////////
Sys.Timer = function() {
Sys.Timer.initializeBase(this);this._interval = 1000;this._enabled = false;this._timer = null;}
Sys.Timer.prototype = {
get_interval: function() {
return this._interval;},
set_interval: function(value) {
if (this._interval !== value) {
this._interval = value;this.raisePropertyChanged('interval');if (!this.get_isUpdating() && (this._timer !== null)) {
this._stopTimer();this._startTimer();}
}
},
get_enabled: function() {
return this._enabled;},
set_enabled: function(value) {
if (value !== this.get_enabled()) {
this._enabled = value;this.raisePropertyChanged('enabled');if (!this.get_isUpdating()) {
if (value) {
this._startTimer();}
else {
this._stopTimer();}
}
}
},
add_tick: function(handler) {
this.get_events().addHandler("tick", handler);},
remove_tick: function(handler) {
this.get_events().removeHandler("tick", handler);},
dispose: function() {
this.set_enabled(false);this._stopTimer();Sys.Timer.callBaseMethod(this, 'dispose');},
updated: function() {
Sys.Timer.callBaseMethod(this, 'updated');if (this._enabled) {
this._stopTimer();this._startTimer();}
},
_timerCallback: function() {
var handler = this.get_events().getHandler("tick");if (handler) {
handler(this, Sys.EventArgs.Empty);}
},
_startTimer: function() {
this._timer = window.setInterval(Function.createDelegate(this, this._timerCallback), this._interval);},
_stopTimer: function() {
window.clearInterval(this._timer);this._timer = null;}
}
Sys.Timer.descriptor = {
properties: [ {name: 'interval', type: Number},
{name: 'enabled', type: Boolean} ],
events: [ {name: 'tick'} ]
}
Sys.Timer.registerClass('Sys.Timer', Sys.Component);
Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.TimeSpan = function() {
if (arguments.length == 0) this._ctor$0.apply(this, arguments);else if (arguments.length == 1) this._ctor$1.apply(this, arguments);else if (arguments.length == 3) this._ctor$2.apply(this, arguments);else if (arguments.length == 4) this._ctor$3.apply(this, arguments);else if (arguments.length == 5) this._ctor$4.apply(this, arguments);else throw Error.parameterCount();}
AjaxControlToolkit.TimeSpan.prototype = {
_ctor$0 : function() {
this._ticks = 0;}, 
_ctor$1 : function(ticks) {
this._ctor$0();this._ticks = ticks;},
_ctor$2 : function(hours, minutes, seconds) {
this._ctor$0();this._ticks = 
(hours * AjaxControlToolkit.TimeSpan.TicksPerHour) +
(minutes * AjaxControlToolkit.TimeSpan.TicksPerMinute) +
(seconds * AjaxControlToolkit.TimeSpan.TicksPerSecond);},
_ctor$3 : function(days, hours, minutes, seconds) {
this._ctor$0();this._ticks = 
(days * AjaxControlToolkit.TimeSpan.TicksPerDay) +
(hours * AjaxControlToolkit.TimeSpan.TicksPerHour) +
(minutes * AjaxControlToolkit.TimeSpan.TicksPerMinute) +
(seconds * AjaxControlToolkit.TimeSpan.TicksPerSecond);},
_ctor$4 : function(days, hours, minutes, seconds, milliseconds) {
this._ctor$0();this._ticks = 
(days * AjaxControlToolkit.TimeSpan.TicksPerDay) +
(hours * AjaxControlToolkit.TimeSpan.TicksPerHour) +
(minutes * AjaxControlToolkit.TimeSpan.TicksPerMinute) +
(seconds * AjaxControlToolkit.TimeSpan.TicksPerSecond) +
(milliseconds * AjaxControlToolkit.TimeSpan.TicksPerMillisecond);},
getDays : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerDay);},
getHours : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerHour) % 24;},
getMinutes : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerMinute) % 60;},
getSeconds : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerSecond) % 60;},
getMilliseconds : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerMillisecond) % 1000;},
getDuration : function() { 
return new AjaxControlToolkit.TimeSpan(Math.abs(this._ticks));},
getTicks : function() { 
return this._ticks;},
getTotalDays : function() { 
Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerDay);},
getTotalHours : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerHour);},
getTotalMinutes : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerMinute);},
getTotalSeconds : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerSecond);},
getTotalMilliseconds : function() { 
return Math.floor(this._ticks / AjaxControlToolkit.TimeSpan.TicksPerMillisecond);},
add : function(value) { 
return new AjaxControlToolkit.TimeSpan(this._ticks + value.getTicks());},
subtract : function(value) { 
return new AjaxControlToolkit.TimeSpan(this._ticks - value.getTicks());},
negate : function() { 
return new AjaxControlToolkit.TimeSpan(-this._ticks);},
equals : function(value) { 
return this._ticks == value.getTicks();},
compareTo : function(value) { 
if(this._ticks > value.getTicks()) 
return 1;else if(this._ticks < value.getTicks()) 
return -1;else 
return 0;},
toString : function() { 
return this.format("F");},
format : function(format) { 
if (!format) {
format = "F";}
if (format.length == 1) {
switch (format) {
case "t": format = AjaxControlToolkit.TimeSpan.ShortTimeSpanPattern;break;case "T": format = AjaxControlToolkit.TimeSpan.LongTimeSpanPattern;break;case "F": format = AjaxControlToolkit.TimeSpan.FullTimeSpanPattern;break;default: throw Error.createError(String.format(AjaxControlToolkit.Resources.Common_DateTime_InvalidTimeSpan, format));}
}
var regex = /dd|d|hh|h|mm|m|ss|s|nnnn|nnn|nn|n/g;var builder = new Sys.StringBuilder();var ticks = this._ticks;if (ticks < 0) {
builder.append("-");ticks = -ticks;}
for (;;) {
var index = regex.lastIndex;var ar = regex.exec(format);builder.append(format.slice(index, ar ? ar.index : format.length));if (!ar) break;switch (ar[0]) {
case "dd":
case "d":
builder.append($common.padLeft(Math.floor(ticks / AjaxControlToolkit.TimeSpan.TicksPerDay, ar[0].length, '0')));break;case "hh":
case "h":
builder.append($common.padLeft(Math.floor(ticks / AjaxControlToolkit.TimeSpan.TicksPerHour) % 24, ar[0].length, '0'));break;case "mm":
case "m":
builder.append($common.padLeft(Math.floor(ticks / AjaxControlToolkit.TimeSpan.TicksPerMinute) % 60, ar[0].length, '0'));break;case "ss":
case "s":
builder.append($common.padLeft(Math.floor(ticks / AjaxControlToolkit.TimeSpan.TicksPerSecond) % 60, ar[0].length, '0'));break;case "nnnn":
case "nnn":
case "nn":
case "n":
builder.append($common.padRight(Math.floor(ticks / AjaxControlToolkit.TimeSpan.TicksPerMillisecond) % 1000, ar[0].length, '0', true));break;default:
Sys.Debug.assert(false);}
}
return builder.toString();}
}
AjaxControlToolkit.TimeSpan.parse = function(text) {
var parts = text.split(":");var d = 0;var h = 0;var m = 0;var s = 0;var n = 0;var ticks = 0;switch(parts.length) {
case 1:
if (parts[0].indexOf(".") != -1) {
var parts2 = parts[0].split(".");s = parseInt(parts2[0]);n = parseInt(parts2[1]);} else {
ticks = parseInt(parts[0]);}
break;case 2:
h = parseInt(parts[0]);m = parseInt(parts[1]);break;case 3:
h = parseInt(parts[0]);m = parseInt(parts[1]);if (parts[2].indexOf(".") != -1) {
var parts2 = parts[2].split(".");s = parseInt(parts2[0]);n = parseInt(parts2[1]);} else {
s = parseInt(parts[2]);}
break;case 4:
d = parseInt(parts[0]);h = parseInt(parts[1]);m = parseInt(parts[2]);if (parts[3].indexOf(".") != -1) {
var parts2 = parts[3].split(".");s = parseInt(parts2[0]);n = parseInt(parts2[1]);} else {
s = parseInt(parts[3]);}
break;}
ticks += (d * AjaxControlToolkit.TimeSpan.TicksPerDay) +
(h * AjaxControlToolkit.TimeSpan.TicksPerHour) +
(m * AjaxControlToolkit.TimeSpan.TicksPerMinute) +
(s * AjaxControlToolkit.TimeSpan.TicksPerSecond) +
(n * AjaxControlToolkit.TimeSpan.TicksPerMillisecond);if(!isNaN(ticks)) {
return new AjaxControlToolkit.TimeSpan(ticks);} 
throw Error.create(AjaxControlToolkit.Resources.Common_DateTime_InvalidFormat);}
AjaxControlToolkit.TimeSpan.fromTicks = function(ticks) { 
return new AjaxControlToolkit.TimeSpan(ticks);}
AjaxControlToolkit.TimeSpan.fromDays = function(days) { 
return new AjaxControlToolkit.TimeSpan(days * AjaxControlToolkit.TimeSpan.TicksPerDay);}
AjaxControlToolkit.TimeSpan.fromHours = function(hours) { 
return new AjaxControlToolkit.TimeSpan(hours * AjaxControlToolkit.TimeSpan.TicksPerHour);}
AjaxControlToolkit.TimeSpan.fromMinutes = function(minutes) { 
return new AjaxControlToolkit.TimeSpan(minutes * AjaxControlToolkit.TimeSpan.TicksPerMinute);}
AjaxControlToolkit.TimeSpan.fromSeconds = function(seconds) { 
return new AjaxControlToolkit.TimeSpan(minutes * AjaxControlToolkit.TimeSpan.TicksPerSecond);}
AjaxControlToolkit.TimeSpan.fromMilliseconds = function(milliseconds) { 
return new AjaxControlToolkit.TimeSpan(minutes * AjaxControlToolkit.TimeSpan.TicksPerMillisecond);}
AjaxControlToolkit.TimeSpan.TicksPerDay = 864000000000;AjaxControlToolkit.TimeSpan.TicksPerHour = 36000000000;AjaxControlToolkit.TimeSpan.TicksPerMinute = 600000000;AjaxControlToolkit.TimeSpan.TicksPerSecond = 10000000;AjaxControlToolkit.TimeSpan.TicksPerMillisecond = 10000;AjaxControlToolkit.TimeSpan.FullTimeSpanPattern = "dd:hh:mm:ss.nnnn";AjaxControlToolkit.TimeSpan.ShortTimeSpanPattern = "hh:mm";AjaxControlToolkit.TimeSpan.LongTimeSpanPattern = "hh:mm:ss";Date.prototype.getTimeOfDay = function Date$getTimeOfDay() {
return new AjaxControlToolkit.TimeSpan(
0, 
this.getHours(), 
this.getMinutes(), 
this.getSeconds(), 
this.getMilliseconds());}
Date.prototype.getDateOnly = function Date$getDateOnly() {
return new Date(this.getFullYear(), this.getMonth(), this.getDate());}
Date.prototype.add = function Date$add(span) {
return new Date(this.getTime() + span.getTotalMilliseconds());}
Date.prototype.subtract = function Date$subtract(span) {
return this.add(span.negate());}
Date.prototype.getTicks = function Date$getTicks() {
return this.getTime() * AjaxControlToolkit.TimeSpan.TicksPerMillisecond;}
AjaxControlToolkit.FirstDayOfWeek = function() {
}
AjaxControlToolkit.FirstDayOfWeek.prototype = {
Sunday : 0,
Monday : 1,
Tuesday : 2,
Wednesday : 3,
Thursday : 4,
Friday : 5,
Saturday : 6,
Default : 7
}
AjaxControlToolkit.FirstDayOfWeek.registerEnum("AjaxControlToolkit.FirstDayOfWeek");
Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.CalendarBehavior = function(element) {
AjaxControlToolkit.CalendarBehavior.initializeBase(this, [element]);this._textbox = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(element);this._format = "d";this._cssClass = "ajax__calendar";this._enabled = true;this._animated = true;this._buttonID = null;this._layoutRequested = 0;this._layoutSuspended = false;this._button = null;this._popupMouseDown = false;this._selectedDate = null;this._visibleDate = null;this._todaysDate = null;this._firstDayOfWeek = AjaxControlToolkit.FirstDayOfWeek.Default;this._container = null;this._popupDiv = null;this._header = null;this._prevArrow = null;this._nextArrow = null;this._title = null;this._body = null;this._today = null;this._days = null;this._daysTable = null;this._daysTableHeader = null;this._daysTableHeaderRow = null;this._daysBody = null;this._months = null;this._monthsTable = null;this._monthsBody = null;this._years = null;this._yearsTable = null;this._yearsBody = null;this._popupPosition = AjaxControlToolkit.CalendarPosition.BottomLeft;this._popupBehavior = null;this._modeChangeAnimation = null;this._modeChangeMoveTopOrLeftAnimation = null;this._modeChangeMoveBottomOrRightAnimation = null;this._mode = "days";this._selectedDateChanging = false;this._isOpen = false;this._isAnimating = false;this._width = 170;this._height = 139;this._modes = {"days" : null, "months" : null, "years" : null};this._modeOrder = {"days" : 0, "months" : 1, "years" : 2 };this._hourOffsetForDst = 12;this._blur = new AjaxControlToolkit.DeferredOperation(1, this, this.blur);this._button$delegates = {
click : Function.createDelegate(this, this._button_onclick),
keypress : Function.createDelegate(this, this._button_onkeypress),
blur : Function.createDelegate(this, this._button_onblur)
}
this._element$delegates = {
change : Function.createDelegate(this, this._element_onchange),
keypress : Function.createDelegate(this, this._element_onkeypress),
click : Function.createDelegate(this, this._element_onclick),
focus : Function.createDelegate(this, this._element_onfocus),
blur : Function.createDelegate(this, this._element_onblur)
}
this._popup$delegates = { 
mousedown: Function.createDelegate(this, this._popup_onmousedown),
mouseup: Function.createDelegate(this, this._popup_onmouseup),
drag: Function.createDelegate(this, this._popup_onevent),
dragstart: Function.createDelegate(this, this._popup_onevent),
select: Function.createDelegate(this, this._popup_onevent)
}
this._cell$delegates = {
mouseover : Function.createDelegate(this, this._cell_onmouseover),
mouseout : Function.createDelegate(this, this._cell_onmouseout),
click : Function.createDelegate(this, this._cell_onclick)
}
}
AjaxControlToolkit.CalendarBehavior.prototype = { 
get_animated : function() {
return this._animated;},
set_animated : function(value) {
if (this._animated != value) {
this._animated = value;this.raisePropertyChanged("animated");}
},
get_enabled : function() {
return this._enabled;},
set_enabled : function(value) {
if (this._enabled != value) {
this._enabled = value;this.raisePropertyChanged("enabled");}
},
get_button : function() {
return this._button;},
set_button : function(value) {
if (this._button != value) {
if (this._button && this.get_isInitialized()) {
$common.removeHandlers(this._button, this._button$delegates);}
this._button = value;if (this._button && this.get_isInitialized()) {
$addHandlers(this._button, this._button$delegates);}
this.raisePropertyChanged("button");}
},
get_popupPosition : function() {
return this._popupPosition;},
set_popupPosition : function(value) {
if (this._popupPosition != value) {
this._popupPosition = value;this.raisePropertyChanged('popupPosition');}
},
get_format : function() { 
return this._format;},
set_format : function(value) { 
if (this._format != value) {
this._format = value;this.raisePropertyChanged("format");}
},
get_selectedDate : function() {
if (this._selectedDate == null) {
var value = this._textbox.get_Value();if (value) {
value = this._parseTextValue(value);if (value) {
this._selectedDate = value.getDateOnly();}
}
}
return this._selectedDate;},
set_selectedDate : function(value) {
if(value && (String.isInstanceOfType(value)) && (value.length != 0)) {
value = new Date(value);}
if (value) value = value.getDateOnly();if (this._selectedDate != value) {
this._selectedDate = value;this._selectedDateChanging = true;var text = "";if (value) {
text = value.localeFormat(this._format);}
if (text != this._textbox.get_Value()) {
this._textbox.set_Value(text);this._fireChanged();}
this._selectedDateChanging = false;this.invalidate();this.raisePropertyChanged("selectedDate");}
},
get_visibleDate : function() {
return this._visibleDate;},
set_visibleDate : function(value) {
if (value) value = value.getDateOnly();if (this._visibleDate != value) {
this._switchMonth(value, !this._isOpen);this.raisePropertyChanged("visibleDate");}
},
get_isOpen : function() {
return this._isOpen;},
get_todaysDate : function() {
if (this._todaysDate != null) {
return this._todaysDate;}
return new Date().getDateOnly();},
set_todaysDate : function(value) {
if (value) value = value.getDateOnly();if (this._todaysDate != value) {
this._todaysDate = value;this.invalidate();this.raisePropertyChanged("todaysDate");}
},
get_firstDayOfWeek : function() {
return this._firstDayOfWeek;},
set_firstDayOfWeek : function(value) {
if (this._firstDayOfWeek != value) {
this._firstDayOfWeek = value;this.invalidate();this.raisePropertyChanged("firstDayOfWeek");}
},
get_cssClass : function() {
return this._cssClass;},
set_cssClass : function(value) {
if (this._cssClass != value) {
if (this._cssClass && this.get_isInitialized()) {
Sys.UI.DomElement.removeCssClass(this._container, this._cssClass);}
this._cssClass = value;if (this._cssClass && this.get_isInitialized()) {
Sys.UI.DomElement.addCssClass(this._container, this._cssClass);}
this.raisePropertyChanged("cssClass");}
},
get_todayButton : function() {
return this._today;},
get_dayCell : function(row, col) {
if (this._daysBody) {
return this._daysBody.rows[row].cells[col].firstChild;}
return null;},
add_showing : function(handler) {
this.get_events().addHandler("showing", handler);},
remove_showing : function(handler) {
this.get_events().removeHandler("showing", handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler("shown", handler);},
remove_shown : function(handler) {
this.get_events().removeHandler("shown", handler);},
raiseShown : function() {
var handlers = this.get_events().getHandler("shown");if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
add_hiding : function(handler) {
this.get_events().addHandler("hiding", handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler("hiding", handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler("hidden", handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler("hidden", handler);},
raiseHidden : function() {
var handlers = this.get_events().getHandler("hidden");if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
add_dateSelectionChanged : function(handler) {
this.get_events().addHandler("dateSelectionChanged", handler);},
remove_dateSelectionChanged : function(handler) {
this.get_events().removeHandler("dateSelectionChanged", handler);},
raiseDateSelectionChanged : function() {
var handlers = this.get_events().getHandler("dateSelectionChanged");if (handlers) {
handlers(this, Sys.EventArgs.Empty);}
},
initialize : function() {
AjaxControlToolkit.CalendarBehavior.callBaseMethod(this, "initialize");var elt = this.get_element();$addHandlers(elt, this._element$delegates);if (this._button) {
$addHandlers(this._button, this._button$delegates);}
this._modeChangeMoveTopOrLeftAnimation = new AjaxControlToolkit.Animation.LengthAnimation(null, null, null, "style", null, 0, 0, "px");this._modeChangeMoveBottomOrRightAnimation = new AjaxControlToolkit.Animation.LengthAnimation(null, null, null, "style", null, 0, 0, "px");this._modeChangeAnimation = new AjaxControlToolkit.Animation.ParallelAnimation(null, .25, null, [ this._modeChangeMoveTopOrLeftAnimation, this._modeChangeMoveBottomOrRightAnimation ]);var value = this.get_selectedDate();if (value) {
this.set_selectedDate(value);} 
},
dispose : function() {
if (this._popupBehavior) {
this._popupBehavior.dispose();this._popupBehavior = null;}
this._modes = null;this._modeOrder = null;if (this._modeChangeMoveTopOrLeftAnimation) {
this._modeChangeMoveTopOrLeftAnimation.dispose();this._modeChangeMoveTopOrLeftAnimation = null;}
if (this._modeChangeMoveBottomOrRightAnimation) {
this._modeChangeMoveBottomOrRightAnimation.dispose();this._modeChangeMoveBottomOrRightAnimation = null;}
if (this._modeChangeAnimation) {
this._modeChangeAnimation.dispose();this._modeChangeAnimation = null;}
if (this._container) {
if(this._container.parentNode) { 
this._container.parentNode.removeChild(this._container);}
this._container = null;}
if (this._popupDiv) {
$common.removeHandlers(this._popupDiv, this._popup$delegates);this._popupDiv = null;} 
if (this._prevArrow) {
$common.removeHandlers(this._prevArrow, this._cell$delegates);this._prevArrow = null;}
if (this._nextArrow) {
$common.removeHandlers(this._nextArrow, this._cell$delegates);this._nextArrow = null;}
if (this._title) {
$common.removeHandlers(this._title, this._cell$delegates);this._title = null;}
if (this._today) {
$common.removeHandlers(this._today, this._cell$delegates);this._today = null;}
if (this._button) {
$common.removeHandlers(this._button, this._button$delegates);this._button = null;}
if (this._daysBody) {
for (var i = 0;i < this._daysBody.rows.length;i++) {
var row = this._daysBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
$common.removeHandlers(row.cells[j].firstChild, this._cell$delegates);}
}
this._daysBody = null;}
if (this._monthsBody) {
for (var i = 0;i < this._monthsBody.rows.length;i++) {
var row = this._monthsBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
$common.removeHandlers(row.cells[j].firstChild, this._cell$delegates);}
}
this._monthsBody = null;}
if (this._yearsBody) {
for (var i = 0;i < this._yearsBody.rows.length;i++) {
var row = this._yearsBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
$common.removeHandlers(row.cells[j].firstChild, this._cell$delegates);}
}
this._yearsBody = null;} 
var elt = this.get_element();$common.removeHandlers(elt, this._element$delegates);AjaxControlToolkit.CalendarBehavior.callBaseMethod(this, "dispose");},
show : function() {
this._ensureCalendar();if (!this._isOpen) {
var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()) {
return;}
this._isOpen = true;this._switchMonth(null, true);this._popupBehavior.show();this.raiseShown();}
}, 
hide : function() {
if (this._isOpen) {
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return;}
if (this._container) {
this._popupBehavior.hide();this._switchMode("days", true);}
this._isOpen = false;this.raiseHidden();this._popupMouseDown = false;}
},
focus : function() {
if (this._button) {
this._button.focus();} else {
this.get_element().focus();}
},
blur : function(force) {
if (!force && Sys.Browser.agent === Sys.Browser.Opera) {
this._blur.post(true);} else {
if (!this._popupMouseDown) {
this.hide();} 
this._popupMouseDown = false;}
},
suspendLayout : function() {
this._layoutSuspended++;},
resumeLayout : function() {
this._layoutSuspended--;if (this._layoutSuspended <= 0) {
this._layoutSuspended = 0;if (this._layoutRequested) {
this._performLayout();}
}
},
invalidate : function() {
if (this._layoutSuspended > 0) {
this._layoutRequested = true;} else {
this._performLayout();}
},
_buildCalendar : function() {
var elt = this.get_element();var id = this.get_id();this._container = $common.createElementFromTemplate({
nodeName : "div",
properties : { id : id + "_container" },
cssClasses : [this._cssClass]
}, elt.parentNode);this._popupDiv = $common.createElementFromTemplate({ 
nodeName : "div",
events : this._popup$delegates, 
properties : {
id : id + "_popupDiv"
},
cssClasses : ["ajax__calendar_container"], 
visible : false 
}, this._container);},
_buildHeader : function() {
var id = this.get_id();this._header = $common.createElementFromTemplate({ 
nodeName : "div",
properties : { id : id + "_header" },
cssClasses : [ "ajax__calendar_header" ]
}, this._popupDiv);var prevArrowWrapper = $common.createElementFromTemplate({ nodeName : "div" }, this._header);this._prevArrow = $common.createElementFromTemplate({ 
nodeName : "div",
properties : {
id : id + "_prevArrow",
mode : "prev"
},
events : this._cell$delegates,
cssClasses : [ "ajax__calendar_prev" ] 
}, prevArrowWrapper);var nextArrowWrapper = $common.createElementFromTemplate({ nodeName : "div" }, this._header);this._nextArrow = $common.createElementFromTemplate({ 
nodeName : "div",
properties : {
id : id + "_nextArrow",
mode : "next"
},
events : this._cell$delegates, 
cssClasses : [ "ajax__calendar_next" ] 
}, nextArrowWrapper);var titleWrapper = $common.createElementFromTemplate({ nodeName : "div" }, this._header);this._title = $common.createElementFromTemplate({ 
nodeName : "div",
properties : {
id : id + "_title",
mode : "title"
},
events : this._cell$delegates, 
cssClasses : [ "ajax__calendar_title" ] 
}, titleWrapper);},
_buildBody : function() {
this._body = $common.createElementFromTemplate({ 
nodeName : "div",
properties : { id : this.get_id() + "_body" },
cssClasses : [ "ajax__calendar_body" ]
}, this._popupDiv);this._buildDays();this._buildMonths();this._buildYears();},
_buildFooter : function() {
var todayWrapper = $common.createElementFromTemplate({ nodeName : "div" }, this._popupDiv);this._today = $common.createElementFromTemplate({
nodeName : "div",
properties : {
id : this.get_id() + "_today",
mode : "today"
},
events : this._cell$delegates,
cssClasses : [ "ajax__calendar_footer", "ajax__calendar_today" ]
}, todayWrapper);},
_buildDays : function() {
var dtf = Sys.CultureInfo.CurrentCulture.dateTimeFormat;var id = this.get_id();this._days = $common.createElementFromTemplate({ 
nodeName : "div",
properties : { id : id + "_days" },
cssClasses : [ "ajax__calendar_days" ]
}, this._body);this._modes["days"] = this._days;this._daysTable = $common.createElementFromTemplate({ 
nodeName : "table",
properties : {
id : id + "_daysTable",
cellPadding : 0,
cellSpacing : 0,
border : 0,
style : { margin : "auto" }
} 
}, this._days);this._daysTableHeader = $common.createElementFromTemplate({ nodeName : "thead", properties : { id : id + "_daysTableHeader" } }, this._daysTable);this._daysTableHeaderRow = $common.createElementFromTemplate({ nodeName : "tr", properties : { id : id + "_daysTableHeaderRow" } }, this._daysTableHeader);for (var i = 0;i < 7;i++) {
var dayCell = $common.createElementFromTemplate({ nodeName : "td" }, this._daysTableHeaderRow);var dayDiv = $common.createElementFromTemplate({
nodeName : "div",
cssClasses : [ "ajax__calendar_dayname" ]
}, dayCell);}
this._daysBody = $common.createElementFromTemplate({ nodeName: "tbody", properties : { id : id + "_daysBody" } }, this._daysTable);for (var i = 0;i < 6;i++) {
var daysRow = $common.createElementFromTemplate({ nodeName : "tr" }, this._daysBody);for(var j = 0;j < 7;j++) {
var dayCell = $common.createElementFromTemplate({ nodeName : "td" }, daysRow);var dayDiv = $common.createElementFromTemplate({
nodeName : "div",
properties : {
mode : "day",
id : id + "_day_" + i + "_" + j,
innerHTML : "&nbsp;"
},
events : this._cell$delegates,
cssClasses : [ "ajax__calendar_day" ]
}, dayCell);}
}
},
_buildMonths : function() {
var dtf = Sys.CultureInfo.CurrentCulture.dateTimeFormat;var id = this.get_id();this._months = $common.createElementFromTemplate({
nodeName : "div",
properties : { id : id + "_months" },
cssClasses : [ "ajax__calendar_months" ],
visible : false
}, this._body);this._modes["months"] = this._months;this._monthsTable = $common.createElementFromTemplate({
nodeName : "table",
properties : {
id : id + "_monthsTable",
cellPadding : 0,
cellSpacing : 0,
border : 0,
style : { margin : "auto" }
}
}, this._months);this._monthsBody = $common.createElementFromTemplate({ nodeName : "tbody", properties : { id : id + "_monthsBody" } }, this._monthsTable);for (var i = 0;i < 3;i++) {
var monthsRow = $common.createElementFromTemplate({ nodeName : "tr" }, this._monthsBody);for (var j = 0;j < 4;j++) {
var monthCell = $common.createElementFromTemplate({ nodeName : "td" }, monthsRow);var monthDiv = $common.createElementFromTemplate({
nodeName : "div",
properties : {
id : id + "_month_" + i + "_" + j,
mode : "month",
month : (i * 4) + j,
innerHTML : "<br />" + dtf.AbbreviatedMonthNames[(i * 4) + j]
},
events : this._cell$delegates,
cssClasses : [ "ajax__calendar_month" ]
}, monthCell);}
}
},
_buildYears : function() {
var id = this.get_id();this._years = $common.createElementFromTemplate({
nodeName : "div",
properties : { id : id + "_years" },
cssClasses : [ "ajax__calendar_years" ],
visible : false
}, this._body);this._modes["years"] = this._years;this._yearsTable = $common.createElementFromTemplate({
nodeName : "table",
properties : {
id : id + "_yearsTable",
cellPadding : 0,
cellSpacing : 0,
border : 0,
style : { margin : "auto" }
}
}, this._years);this._yearsBody = $common.createElementFromTemplate({ nodeName : "tbody", properties : { id : id + "_yearsBody" } }, this._yearsTable);for (var i = 0;i < 3;i++) {
var yearsRow = $common.createElementFromTemplate({ nodeName : "tr" }, this._yearsBody);for (var j = 0;j < 4;j++) {
var yearCell = $common.createElementFromTemplate({ nodeName : "td" }, yearsRow);var yearDiv = $common.createElementFromTemplate({ 
nodeName : "div", 
properties : { 
id : id + "_year_" + i + "_" + j,
mode : "year",
year : ((i * 4) + j) - 1
},
events : this._cell$delegates,
cssClasses : [ "ajax__calendar_year" ]
}, yearCell);}
}
},
_performLayout : function() {
var elt = this.get_element();if (!elt) return;if (!this.get_isInitialized()) return;if (!this._isOpen) return;var dtf = Sys.CultureInfo.CurrentCulture.dateTimeFormat;var selectedDate = this.get_selectedDate();var visibleDate = this._getEffectiveVisibleDate();var todaysDate = this.get_todaysDate();switch (this._mode) {
case "days":
var firstDayOfWeek = this._getFirstDayOfWeek();var daysToBacktrack = visibleDate.getDay() - firstDayOfWeek;if (daysToBacktrack <= 0)
daysToBacktrack += 7;var startDate = new Date(visibleDate.getFullYear(), visibleDate.getMonth(), visibleDate.getDate() - daysToBacktrack, this._hourOffsetForDst);var currentDate = startDate;for (var i = 0;i < 7;i++) {
var dayCell = this._daysTableHeaderRow.cells[i].firstChild;if (dayCell.firstChild) {
dayCell.removeChild(dayCell.firstChild);}
dayCell.appendChild(document.createTextNode(dtf.ShortestDayNames[(i + firstDayOfWeek) % 7]));}
for (var week = 0;week < 6;week ++) {
var weekRow = this._daysBody.rows[week];for (var dayOfWeek = 0;dayOfWeek < 7;dayOfWeek++) {
var dayCell = weekRow.cells[dayOfWeek].firstChild;if (dayCell.firstChild) {
dayCell.removeChild(dayCell.firstChild);}
dayCell.appendChild(document.createTextNode(currentDate.getDate()));dayCell.title = currentDate.localeFormat("D");dayCell.date = currentDate;$common.removeCssClasses(dayCell.parentNode, [ "ajax__calendar_other", "ajax__calendar_active" ]);Sys.UI.DomElement.addCssClass(dayCell.parentNode, this._getCssClass(dayCell.date, 'd'));currentDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate() + 1, this._hourOffsetForDst);}
}
this._prevArrow.date = new Date(visibleDate.getFullYear(), visibleDate.getMonth() - 1, 1, this._hourOffsetForDst);this._nextArrow.date = new Date(visibleDate.getFullYear(), visibleDate.getMonth() + 1, 1, this._hourOffsetForDst);if (this._title.firstChild) {
this._title.removeChild(this._title.firstChild);}
this._title.appendChild(document.createTextNode(visibleDate.localeFormat("MMMM, yyyy")));this._title.date = visibleDate;break;case "months":
for (var i = 0;i < this._monthsBody.rows.length;i++) {
var row = this._monthsBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
var cell = row.cells[j].firstChild;cell.date = new Date(visibleDate.getFullYear(), cell.month, 1, this._hourOffsetForDst);$common.removeCssClasses(cell.parentNode, [ "ajax__calendar_other", "ajax__calendar_active" ]);Sys.UI.DomElement.addCssClass(cell.parentNode, this._getCssClass(cell.date, 'M'));}
}
if (this._title.firstChild) {
this._title.removeChild(this._title.firstChild);}
this._title.appendChild(document.createTextNode(visibleDate.localeFormat("yyyy")));this._title.date = visibleDate;this._prevArrow.date = new Date(visibleDate.getFullYear() - 1, 0, 1, this._hourOffsetForDst);this._nextArrow.date = new Date(visibleDate.getFullYear() + 1, 0, 1, this._hourOffsetForDst);break;case "years":
var minYear = (Math.floor(visibleDate.getFullYear() / 10) * 10);for (var i = 0;i < this._yearsBody.rows.length;i++) {
var row = this._yearsBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
var cell = row.cells[j].firstChild;cell.date = new Date(minYear + cell.year, 0, 1, this._hourOffsetForDst);if (cell.firstChild) {
cell.removeChild(cell.lastChild);} else {
cell.appendChild(document.createElement("br"));}
cell.appendChild(document.createTextNode(minYear + cell.year));$common.removeCssClasses(cell.parentNode, [ "ajax__calendar_other", "ajax__calendar_active" ]);Sys.UI.DomElement.addCssClass(cell.parentNode, this._getCssClass(cell.date, 'y'));}
}
if (this._title.firstChild) {
this._title.removeChild(this._title.firstChild);}
this._title.appendChild(document.createTextNode(minYear.toString() + "-" + (minYear + 9).toString()));this._title.date = visibleDate;this._prevArrow.date = new Date(minYear - 10, 0, 1, this._hourOffsetForDst);this._nextArrow.date = new Date(minYear + 10, 0, 1, this._hourOffsetForDst);break;}
if (this._today.firstChild) {
this._today.removeChild(this._today.firstChild);}
this._today.appendChild(document.createTextNode(String.format(AjaxControlToolkit.Resources.Calendar_Today, todaysDate.localeFormat("MMMM d, yyyy"))));this._today.date = todaysDate;},
_ensureCalendar : function() {
if (!this._container) {
var elt = this.get_element();this._buildCalendar();this._buildHeader();this._buildBody();this._buildFooter();this._popupBehavior = new $create(AjaxControlToolkit.PopupBehavior, { parentElement : elt }, {}, {}, this._popupDiv);if (this._popupPosition == AjaxControlToolkit.CalendarPosition.TopLeft) {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.TopLeft);} else if (this._popupPosition == AjaxControlToolkit.CalendarPosition.TopRight) {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.TopRight);} else if (this._popupPosition == AjaxControlToolkit.CalendarPosition.BottomRight) {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.BottomRight);} else {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.BottomLeft);}
}
},
_fireChanged : function() {
var elt = this.get_element();if (document.createEventObject) {
elt.fireEvent("onchange");} else if (document.createEvent) {
var e = document.createEvent("HTMLEvents");e.initEvent("change", true, true);elt.dispatchEvent(e);}
},
_switchMonth : function(date, dontAnimate) {
if (this._isAnimating) {
return;}
var visibleDate = this._getEffectiveVisibleDate();if ((date && date.getFullYear() == visibleDate.getFullYear() && date.getMonth() == visibleDate.getMonth())) {
dontAnimate = true;}
if (this._animated && !dontAnimate) {
this._isAnimating = true;var newElement = this._modes[this._mode];var oldElement = newElement.cloneNode(true);this._body.appendChild(oldElement);if (visibleDate > date) {
$common.setLocation(newElement, {x:-162,y:0});$common.setVisible(newElement, true);this._modeChangeMoveTopOrLeftAnimation.set_propertyKey("left");this._modeChangeMoveTopOrLeftAnimation.set_target(newElement);this._modeChangeMoveTopOrLeftAnimation.set_startValue(-this._width);this._modeChangeMoveTopOrLeftAnimation.set_endValue(0);$common.setLocation(oldElement, {x:0,y:0});$common.setVisible(oldElement, true);this._modeChangeMoveBottomOrRightAnimation.set_propertyKey("left");this._modeChangeMoveBottomOrRightAnimation.set_target(oldElement);this._modeChangeMoveBottomOrRightAnimation.set_startValue(0);this._modeChangeMoveBottomOrRightAnimation.set_endValue(this._width);} else {
$common.setLocation(oldElement, {x:0,y:0});$common.setVisible(oldElement, true);this._modeChangeMoveTopOrLeftAnimation.set_propertyKey("left");this._modeChangeMoveTopOrLeftAnimation.set_target(oldElement);this._modeChangeMoveTopOrLeftAnimation.set_endValue(-this._width);this._modeChangeMoveTopOrLeftAnimation.set_startValue(0);$common.setLocation(newElement, {x:162,y:0});$common.setVisible(newElement, true);this._modeChangeMoveBottomOrRightAnimation.set_propertyKey("left");this._modeChangeMoveBottomOrRightAnimation.set_target(newElement);this._modeChangeMoveBottomOrRightAnimation.set_endValue(0);this._modeChangeMoveBottomOrRightAnimation.set_startValue(this._width);}
this._visibleDate = date;this.invalidate();var endHandler = Function.createDelegate(this, function() { 
this._body.removeChild(oldElement);oldElement = null;this._isAnimating = false;this._modeChangeAnimation.remove_ended(endHandler);});this._modeChangeAnimation.add_ended(endHandler);this._modeChangeAnimation.play();} else {
this._visibleDate = date;this.invalidate();}
},
_switchMode : function(mode, dontAnimate) {
if (this._isAnimating || (this._mode == mode)) {
return;}
var moveDown = this._modeOrder[this._mode] < this._modeOrder[mode];var oldElement = this._modes[this._mode];var newElement = this._modes[mode];this._mode = mode;if (this._animated && !dontAnimate) { 
this._isAnimating = true;this.invalidate();if (moveDown) {
$common.setLocation(newElement, {x:0,y:-this._height});$common.setVisible(newElement, true);this._modeChangeMoveTopOrLeftAnimation.set_propertyKey("top");this._modeChangeMoveTopOrLeftAnimation.set_target(newElement);this._modeChangeMoveTopOrLeftAnimation.set_startValue(-this._height);this._modeChangeMoveTopOrLeftAnimation.set_endValue(0);$common.setLocation(oldElement, {x:0,y:0});$common.setVisible(oldElement, true);this._modeChangeMoveBottomOrRightAnimation.set_propertyKey("top");this._modeChangeMoveBottomOrRightAnimation.set_target(oldElement);this._modeChangeMoveBottomOrRightAnimation.set_startValue(0);this._modeChangeMoveBottomOrRightAnimation.set_endValue(this._height);} else {
$common.setLocation(oldElement, {x:0,y:0});$common.setVisible(oldElement, true);this._modeChangeMoveTopOrLeftAnimation.set_propertyKey("top");this._modeChangeMoveTopOrLeftAnimation.set_target(oldElement);this._modeChangeMoveTopOrLeftAnimation.set_endValue(-this._height);this._modeChangeMoveTopOrLeftAnimation.set_startValue(0);$common.setLocation(newElement, {x:0,y:139});$common.setVisible(newElement, true);this._modeChangeMoveBottomOrRightAnimation.set_propertyKey("top");this._modeChangeMoveBottomOrRightAnimation.set_target(newElement);this._modeChangeMoveBottomOrRightAnimation.set_endValue(0);this._modeChangeMoveBottomOrRightAnimation.set_startValue(this._height);}
var endHandler = Function.createDelegate(this, function() { 
this._isAnimating = false;this._modeChangeAnimation.remove_ended(endHandler);});this._modeChangeAnimation.add_ended(endHandler);this._modeChangeAnimation.play();} else {
this._mode = mode;$common.setVisible(oldElement, false);this.invalidate();$common.setVisible(newElement, true);$common.setLocation(newElement, {x:0,y:0});}
},
_isSelected : function(date, part) {
var value = this.get_selectedDate();if (!value) return false;switch (part) {
case 'd':
if (date.getDate() != value.getDate()) return false;case 'M':
if (date.getMonth() != value.getMonth()) return false;case 'y':
if (date.getFullYear() != value.getFullYear()) return false;break;}
return true;},
_isOther : function(date, part) {
var value = this._getEffectiveVisibleDate();switch (part) {
case 'd': 
return (date.getFullYear() != value.getFullYear() || date.getMonth() != value.getMonth());case 'M': 
return false;case 'y': 
var minYear = (Math.floor(value.getFullYear() / 10) * 10);return date.getFullYear() < minYear || (minYear + 10) <= date.getFullYear();}
return false;},
_getCssClass : function(date, part) {
if (this._isSelected(date, part)) {
return "ajax__calendar_active";} else if (this._isOther(date, part)) {
return "ajax__calendar_other";} else {
return "";}
},
_getEffectiveVisibleDate : function() {
var value = this.get_visibleDate();if (value == null) 
value = this.get_selectedDate();if (value == null)
value = this.get_todaysDate();return new Date(value.getFullYear(), value.getMonth(), 1, this._hourOffsetForDst);},
_getFirstDayOfWeek : function() {
if (this.get_firstDayOfWeek() != AjaxControlToolkit.FirstDayOfWeek.Default) {
return this.get_firstDayOfWeek();}
return Sys.CultureInfo.CurrentCulture.dateTimeFormat.FirstDayOfWeek;},
_parseTextValue : function(text) {
var value = null;if(text) {
value = Date.parseLocale(text, this.get_format());}
if(isNaN(value)) {
value = null;}
return value;},
_element_onfocus : function(e) {
if (!this._enabled) return;if (!this._button) {
this.show();this._popupMouseDown = false;}
},
_element_onblur : function(e) {
if (!this._enabled) return;if (!this._button) {
this.blur();}
},
_element_onchange : function(e) {
if (!this._selectedDateChanging) {
var value = this._parseTextValue(this._textbox.get_Value());if (value) value = value.getDateOnly();this._selectedDate = value;if (this._isOpen) {
this._switchMonth(this._selectedDate, this._selectedDate == null);} 
}
},
_element_onkeypress : function(e) {
if (!this._enabled) return;if (!this._button && e.charCode == Sys.UI.Key.esc) {
e.stopPropagation();e.preventDefault();this.hide();}
},
_element_onclick : function(e) {
if (!this._enabled) return;if (!this._button) {
this.show();this._popupMouseDown = false;}
},
_popup_onevent : function(e) {
e.stopPropagation();e.preventDefault();},
_popup_onmousedown : function(e) {
this._popupMouseDown = true;},
_popup_onmouseup : function(e) {
if (Sys.Browser.agent === Sys.Browser.Opera && this._blur.get_isPending()) {
this._blur.cancel();}
this._popupMouseDown = false;this.focus();},
_cell_onmouseover : function(e) {
e.stopPropagation();if (Sys.Browser.agent === Sys.Browser.Safari) {
for (var i = 0;i < this._daysBody.rows.length;i++) {
var row = this._daysBody.rows[i];for (var j = 0;j < row.cells.length;j++) {
Sys.UI.DomElement.removeCssClass(row.cells[j].firstChild.parentNode, "ajax__calendar_hover");}
}
}
var target = e.target;Sys.UI.DomElement.addCssClass(target.parentNode, "ajax__calendar_hover");},
_cell_onmouseout : function(e) {
e.stopPropagation();var target = e.target;Sys.UI.DomElement.removeCssClass(target.parentNode, "ajax__calendar_hover");},
_cell_onclick : function(e) {
e.stopPropagation();e.preventDefault();if (!this._enabled) return;var target = e.target;var visibleDate = this._getEffectiveVisibleDate();Sys.UI.DomElement.removeCssClass(target.parentNode, "ajax__calendar_hover");switch(target.mode) {
case "prev":
case "next":
this._switchMonth(target.date);break;case "title":
switch (this._mode) {
case "days": this._switchMode("months");break;case "months": this._switchMode("years");break;}
break;case "month":
if (target.month == visibleDate.getMonth()) {
this._switchMode("days");} else {
this._visibleDate = target.date;this._switchMode("days");}
break;case "year":
if (target.date.getFullYear() == visibleDate.getFullYear()) {
this._switchMode("months");} else {
this._visibleDate = target.date;this._switchMode("months");}
break;case "day":
this.set_selectedDate(target.date);this._switchMonth(target.date);this._blur.post(true);this.raiseDateSelectionChanged();break;case "today":
this.set_selectedDate(target.date);this._switchMonth(target.date);this._blur.post(true);this.raiseDateSelectionChanged();break;}
},
_button_onclick : function(e) {
e.preventDefault();e.stopPropagation();if (!this._enabled) return;if (!this._isOpen) {
this.show();} else {
this.hide();}
this.focus();this._popupMouseDown = false;},
_button_onblur : function(e) {
if (!this._enabled) return;if (!this._popupMouseDown) {
this.hide();}
this._popupMouseDown = false;},
_button_onkeypress : function(e) {
if (!this._enabled) return;if (e.charCode == Sys.UI.Key.esc) {
e.stopPropagation();e.preventDefault();this.hide();}
this._popupMouseDown = false;}
}
AjaxControlToolkit.CalendarBehavior.registerClass("AjaxControlToolkit.CalendarBehavior", AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.CalendarPosition = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.CalendarPosition.prototype = {
BottomLeft: 0,
BottomRight: 1,
TopLeft: 2,
TopRight: 3
}
AjaxControlToolkit.CalendarPosition.registerEnum('AjaxControlToolkit.CalendarPosition');
Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.ScrollBars = function() { }
AjaxControlToolkit.ScrollBars.prototype = {
None : 0x00,
Horizontal : 0x01,
Vertical : 0x02,
Both : 0x03,
Auto : 0x04
}
AjaxControlToolkit.ScrollBars.registerEnum("AjaxControlToolkit.ScrollBars", true);AjaxControlToolkit.TabContainer = function(element) {
AjaxControlToolkit.TabContainer.initializeBase(this, [element]);this._cachedActiveTabIndex = -1;this._activeTabIndex = -1;this._scrollBars = AjaxControlToolkit.ScrollBars.None;this._tabs = null;this._header = null;this._body = null;this._loaded = false;this._autoPostBackId = null;this._app_onload$delegate = Function.createDelegate(this, this._app_onload);}
AjaxControlToolkit.TabContainer.prototype = {
add_activeTabChanged : function(handler) {
this.get_events().addHandler("activeTabChanged", handler);},
remove_activeTabChanged : function(handler) {
this.get_events().removeHandler("activeTabChanged", handler);},
raiseActiveTabChanged : function() {
var eh = this.get_events().getHandler("activeTabChanged");if (eh) {
eh(this, Sys.EventArgs.Empty);}
if (this._autoPostBackId) {
__doPostBack(this._autoPostBackId, "activeTabChanged:" + this.get_activeTabIndex());}
},
get_activeTabIndex : function() { 
if (this._cachedActiveTabIndex > -1) {
return this._cachedActiveTabIndex;}
return this._activeTabIndex;},
set_activeTabIndex : function(value) {
if (!this.get_isInitialized()) {
this._cachedActiveTabIndex = value;} else {
if (value < -1 || value >= this.get_tabs().length) {
throw Error.argumentOutOfRange("value");}
if (this._activeTabIndex != -1) {
this.get_tabs()[this._activeTabIndex]._set_active(false);}
this._activeTabIndex = value;if (this._activeTabIndex != -1) {
this.get_tabs()[this._activeTabIndex]._set_active(true);}
if (this._loaded) {
this.raiseActiveTabChanged();}
this.raisePropertyChanged("activeTabIndex");}
},
get_tabs : function() { 
if (this._tabs == null) {
this._tabs = [];}
return this._tabs;},
get_activeTab : function() {
if (this._activeTabIndex > -1) {
return this.get_tabs()[this._activeTabIndex];}
return null;},
set_activeTab : function(value) {
var i = Array.indexOf(this.get_tabs(), value);if (i == -1) {
throw Error.argument("value", AjaxControlToolkit.Resources.Tabs_ActiveTabArgumentOutOfRange);}
this.set_activeTabIndex(i);},
get_autoPostBackId : function() {
return this._autoPostBackId;},
set_autoPostBackId : function(value) {
this._autoPostBackId = value;}, 
get_scrollBars : function() { 
return this._scrollBars;},
set_scrollBars : function(value) { 
if (this._scrollBars != value) {
this._scrollBars = value;this._invalidate();this.raisePropertyChanged("scrollBars");}
},
initialize : function() {
AjaxControlToolkit.TabContainer.callBaseMethod(this, "initialize");var elt = this.get_element();var header = this._header = $get(this.get_id() + "_header");var body = this._body = $get(this.get_id() + "_body");$common.addCssClasses(elt, [
"ajax__tab_container",
"ajax__tab_default"
]);Sys.UI.DomElement.addCssClass(header, "ajax__tab_header");Sys.UI.DomElement.addCssClass(body, "ajax__tab_body");this._invalidate();Sys.Application.add_load(this._app_onload$delegate);},
dispose : function() {
Sys.Application.remove_load(this._app_onload$delegate);AjaxControlToolkit.TabContainer.callBaseMethod(this, "dispose");},
getFirstTab : function(includeDisabled) {
var tabs = this.get_tabs();for(var i = 0;i < tabs.length;i++) {
if (includeDisabled || tabs[i].get_enabled()) {
return tabs[i];}
}
return null;},
getLastTab : function(includeDisabled) {
var tabs = this.get_tabs();for(var i = tabs.length -1;i >= 0;i--) {
if (includeDisabled || tabs[i].get_enabled()) {
return tabs[i];}
}
return null;},
getNextTab : function(includeDisabled) {
var tabs = this.get_tabs();var active = this.get_activeTabIndex();for (var i = 1;i < tabs.length;i++) {
var tabIndex = (active + i) % tabs.length;var tab = tabs[tabIndex];if (includeDisabled || tab.get_enabled()) 
return tab;}
return null;},
getPreviousTab : function(includeDisabled) {
var tabs = this.get_tabs();var active = this.get_activeTabIndex();for (var i = 1;i < tabs.length;i++) {
var tabIndex = (tabs.length + (active - i)) % tabs.length;var tab = tabs[tabIndex];if (includeDisabled || tab.get_enabled()) 
return tab;}
return null;},
getNearestTab : function() {
var prev = this.getPreviousTab(false);var next = this.getNextTab(false);if (prev && prev.get_tabIndex() < this._activeTabIndex) {
return prev;} else if(next && next.get_tabIndex() > this._activeTabIndex) {
return next;}
return null;},
saveClientState : function() {
var tabs = this.get_tabs();var tabState = [];for(var i = 0;i < tabs.length;i++) {
Array.add(tabState, tabs[i].get_enabled());} 
var state = {
ActiveTabIndex:this._activeTabIndex,
TabState:tabState
};return Sys.Serialization.JavaScriptSerializer.serialize(state);},
_invalidate : function() {
if (this.get_isInitialized()) {
$common.removeCssClasses(this._body, [
"ajax__scroll_horiz",
"ajax__scroll_vert",
"ajax__scroll_both",
"ajax__scroll_auto"
]);switch (this._scrollBars) {
case AjaxControlToolkit.ScrollBars.Horizontal: 
Sys.UI.DomElement.addCssClass(this._body, "ajax__scroll_horiz");break;case AjaxControlToolkit.ScrollBars.Vertical: 
Sys.UI.DomElement.addCssClass(this._body, "ajax__scroll_vert");break;case AjaxControlToolkit.ScrollBars.Both: 
Sys.UI.DomElement.addCssClass(this._body, "ajax__scroll_both");break;case AjaxControlToolkit.ScrollBars.Auto: 
Sys.UI.DomElement.addCssClass(this._body, "ajax__scroll_auto");break;}
}
},
_app_onload : function(sender, e) {
if (this._cachedActiveTabIndex != -1) {
this.set_activeTabIndex(this._cachedActiveTabIndex);this._cachedActiveTabIndex = -1;} 
this._loaded = true;}
}
AjaxControlToolkit.TabContainer.registerClass("AjaxControlToolkit.TabContainer", AjaxControlToolkit.ControlBase);AjaxControlToolkit.TabPanel = function(element) {
AjaxControlToolkit.TabPanel.initializeBase(this, [element]);this._active = false;this._tab = null;this._headerOuter = null;this._headerInner = null;this._header = null;this._owner = null;this._enabled = true;this._tabIndex = -1;this._dynamicContextKey = null;this._dynamicServicePath = null;this._dynamicServiceMethod = null;this._dynamicPopulateBehavior = null;this._scrollBars = AjaxControlToolkit.ScrollBars.None;this._header_onclick$delegate = Function.createDelegate(this, this._header_onclick);this._header_onmouseover$delegate = Function.createDelegate(this, this._header_onmouseover);this._header_onmouseout$delegate = Function.createDelegate(this, this._header_onmouseout);this._header_onmousedown$delegate = Function.createDelegate(this, this._header_onmousedown);this._dynamicPopulate_onpopulated$delegate = Function.createDelegate(this, this._dynamicPopulate_onpopulated);this._oncancel$delegate = Function.createDelegate(this, this._oncancel);}
AjaxControlToolkit.TabPanel.prototype = {
add_click : function(handler) {
this.get_events().addHandler("click", handler);},
remove_click : function(handler) {
this.get_events().removeHandler("click", handler);},
raiseClick : function() {
var eh = this.get_events().getHandler("click");if (eh) {
eh(this, Sys.EventArgs.Empty);}
},
add_populating : function(handler) {
this.get_events().addHandler("populating", handler);},
remove_populating : function(handler) {
this.get_events().removeHandler("populating", handler);},
raisePopulating : function() {
var eh = this.get_events().getHandler("populating");if (eh) {
eh(this, Sys.EventArgs.Empty);}
},
add_populated : function(handler) {
this.get_events().addHandler("populated", handler);},
remove_populated : function(handler) {
this.get_events().removeHandler("populated", handler);},
raisePopulated : function() {
var eh = this.get_events().getHandler("populated");if (eh) {
eh(this, Sys.EventArgs.Empty);}
},
get_headerText : function() { 
if (this.get_isInitialized()) {
return this._header.innerHTML;}
return "";},
set_headerText : function(value) { 
if (!this.get_isInitialized()) {
throw Error.invalidOperation(String.format(AjaxControlToolkit.Resources.Tabs_PropertySetBeforeInitialization, 'headerText'));}
if (this._headerText != value) {
this._headerTab.innerHTML = value;this.raisePropertyChanged("headerText");}
},
get_headerTab : function() {
return this._header;},
set_headerTab : function(value) {
if (this._header != value) {
if (this.get_isInitialized()) {
throw Error.invalidOperation(String.format(AjaxControlToolkit.Resources.Tabs_PropertySetAfterInitialization, 'headerTab'));}
this._header = value;this.raisePropertyChanged("value");}
},
get_enabled : function() {
return this._enabled;},
set_enabled : function(value) {
if (value != this._enabled) {
this._enabled = value;if (this.get_isInitialized()) {
if (!this._enabled) {
this._hide();} else {
this._show();}
}
this.raisePropertyChanged("enabled");}
},
get_owner : function() {
return this._owner;},
set_owner : function(value) {
if (this._owner != value) {
if (this.get_isInitialized()) {
throw Error.invalidOperation(String.format(AjaxControlToolkit.Resources.Tabs_PropertySetAfterInitialization, 'owner'));}
this._owner = value;this.raisePropertyChanged("owner");}
},
get_scrollBars : function() {
return this._scrollBars;},
set_scrollBars : function(value) {
if (this._scrollBars != value) {
this._scrollBars = value;this.raisePropertyChanged("scrollBars");}
},
get_tabIndex : function() {
return this._tabIndex;},
get_dynamicContextKey : function() {
return this._dynamicContextKey;},
set_dynamicContextKey : function(value) {
if (this._dynamicContextKey != value) {
this._dynamicContextKey = value;this.raisePropertyChanged('dynamicContextKey');}
},
get_dynamicServicePath : function() {
return this._dynamicServicePath;},
set_dynamicServicePath : function(value) {
if (this._dynamicServicePath != value) {
this._dynamicServicePath = value;this.raisePropertyChanged('dynamicServicePath');}
},
get_dynamicServiceMethod : function() {
return this._dynamicServiceMethod;},
set_dynamicServiceMethod : function(value) {
if (this._dynamicServiceMethod != value) {
this._dynamicServiceMethod = value;this.raisePropertyChanged('dynamicServiceMethod');}
},
_get_active : function() { 
return this._active;},
_set_active : function(value) { 
this._active = value;if (value) 
this._activate();else 
this._deactivate();},
initialize : function() {
AjaxControlToolkit.TabPanel.callBaseMethod(this, "initialize");var owner = this.get_owner();if (!owner) {
throw Error.invalidOperation(AjaxControlToolkit.Resources.Tabs_OwnerExpected);}
this._tabIndex = owner.get_tabs().length;Array.add(owner.get_tabs(), this);this._headerOuterWrapper = document.createElement('span');this._headerInnerWrapper = document.createElement('span');this._tab = document.createElement('span');this._tab.id = this.get_id() + "_tab";this._header.parentNode.replaceChild(this._tab, this._header);this._tab.appendChild(this._headerOuterWrapper);this._headerOuterWrapper.appendChild(this._headerInnerWrapper);this._headerInnerWrapper.appendChild(this._header);$addHandlers(this._header, {
click:this._header_onclick$delegate,
mouseover:this._header_onmouseover$delegate,
mouseout:this._header_onmouseout$delegate,
mousedown:this._header_onmousedown$delegate,
dragstart:this._oncancel$delegate,
selectstart:this._oncancel$delegate,
select:this._oncancel$delegate
});Sys.UI.DomElement.addCssClass(this._headerOuterWrapper, "ajax__tab_outer");Sys.UI.DomElement.addCssClass(this._headerInnerWrapper, "ajax__tab_inner");Sys.UI.DomElement.addCssClass(this._header, "ajax__tab_tab");Sys.UI.DomElement.addCssClass(this.get_element(), "ajax__tab_panel");if (!this._enabled) {
this._hide();}
},
dispose : function() { 
if (this._dynamicPopulateBehavior) {
this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior = null;}
$common.removeHandlers(this._header, {
click:this._header_onclick$delegate,
mouseover:this._header_onmouseover$delegate,
mouseout:this._header_onmouseout$delegate,
mousedown:this._header_onmousedown$delegate,
dragstart:this._oncancel$delegate,
selectstart:this._oncancel$delegate,
select:this._oncancel$delegate
});AjaxControlToolkit.TabPanel.callBaseMethod(this, "dispose");},
populate : function(contextKeyOverride) {
if (this._dynamicPopulateBehavior && (this._dynamicPopulateBehavior.get_element() != this.get_element())) {
this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior = null;}
if (!this._dynamicPopulateBehavior && this._dynamicServiceMethod) {
this._dynamicPopulateBehavior = $create(AjaxControlToolkit.DynamicPopulateBehavior,{"ContextKey":this._dynamicContextKey,"ServicePath":this._dynamicServicePath,"ServiceMethod":this._dynamicServiceMethod}, {"populated":this._dynamicPopulate_onpopulated$delegate}, null, this.get_element());}
if(this._dynamicPopulateBehavior) {
this.raisePopulating();this._dynamicPopulateBehavior.populate(contextKeyOverride ? contextKeyOverride : this._dynamicContextKey);}
},
_activate : function() {
var elt = this.get_element();$common.setVisible(elt, true);Sys.UI.DomElement.addCssClass(this._tab, "ajax__tab_active");this.populate();this._show();this._owner.get_element().style.visibility = 'visible';},
_deactivate : function() {
var elt = this.get_element();$common.setVisible(elt, false);Sys.UI.DomElement.removeCssClass(this._tab, "ajax__tab_active");},
_show : function() {
this._tab.style.display = '';},
_hide : function() {
this._tab.style.display = 'none';if (this._get_active()) {
var next = this._owner.getNearestTab(false);if (!!next) {
this._owner.set_activeTab(next);}
}
this._deactivate();},
_header_onclick : function(e) {
this.raiseClick();this.get_owner().set_activeTab(this);},
_header_onmouseover : function(e) {
Sys.UI.DomElement.addCssClass(this._tab, "ajax__tab_hover");},
_header_onmouseout : function(e) {
Sys.UI.DomElement.removeCssClass(this._tab, "ajax__tab_hover");},
_header_onmousedown : function(e) {
e.preventDefault();},
_oncancel : function(e) {
e.stopPropagation();e.preventDefault();},
_dynamicPopulate_onpopulated : function(sender, e) {
this.raisePopulated();}
}
AjaxControlToolkit.TabPanel.registerClass("AjaxControlToolkit.TabPanel", Sys.UI.Control);
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._ShowMessageErrorFloat = false;this._CssMessageErrorFloat = "";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 = "";this._UserDateFormat = AjaxControlToolkit.MaskedEditUserDateFormat.None;this._UserTimeFormat = AjaxControlToolkit.MaskedEditUserTimeFormat.None;this._CultureDatePlaceholder = "";this._CultureTimePlaceholder = "";this._CultureDecimalPlaceholder = "";this._CultureThousandsPlaceholder = "";this._CultureDateFormat = "";this._CultureCurrencySymbolPlaceholder = "";this._CultureAMPMPlaceholder = "";this._AMPMPlaceholderSeparator = ";";this._Century = 1900;this._AllowCopyPaste = true;this._ClipboardText = AjaxControlToolkit.Resources.Shared_BrowserSecurityPreventsPaste;this._CharsEditMask = "9L$CAN?";this._CharsSpecialMask = "/:.,";this._MaskConv = "";this._EmptyMask = "";this._maskvalid = "" 
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._LogicLastInt = -1;this._QtdValidInput = 0;this._InLostfocus = false;this._ExternalMessageError = "";this._CurrentMessageError = "";this._FiringOnChange = false;this._ErroOnEnter = false;this._charLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";this._charNumbers = "0123456789";this._charEscape = "\\";this._DelimitStartDup = "{";this._DelimitEndDup = "}";this._focusHandler = null;this._keypressdown = null;this._keypressHandler = null;this._blurHandler = null;this._mouseOutHandler = null;this._mouseOutHandler = null;this._mouseMoveHandler = null;this._mouseEnterHandler = null;this._changeHandler = null;this._timer = null;this._timerHandler = null;this._SaveSymb = "";this._SaveText = "";this._SavePosi = -1;this._SaveMask = "";this._SaveKeyDown = 0;} 
AjaxControlToolkit.MaskedEditBehavior.prototype = { 
initialize : function() 
{
var e = this.get_element();this._InLostfocus = true;AjaxControlToolkit.MaskedEditBehavior.callBaseMethod(this, 'initialize');this._createMask();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;}
}
if (this._ShowMessageErrorFloat)
{
this._mouseOutHandler = Function.createDelegate(this, this._onMouseOut);$addHandler(e, "mouseout", this._mouseOutHandler);this._mouseMoveHandler = Function.createDelegate(this, this._onMouseMove);$addHandler(e, "mousemove", this._mouseMoveHandler);this._mouseEnterHandler = Function.createDelegate(this, this._onMouseover);$addHandler(e, "mouseover", this._mouseEnterHandler);}
if (!e.readOnly)
{
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._focusHandler = Function.createDelegate(this, this._onFocus);$addHandler(e, "focus", this._focusHandler);this._blurHandler = Function.createDelegate(this, this._onBlur);$addHandler(e, "blur", this._blurHandler);this._changeHandler = Function.createDelegate(this, this._onChange);$addHandler(e, "change", this._changeHandler);if (Sys.Browser.agent == Sys.Browser.Opera)
{
this._timerHandler = Function.createDelegate(this, this._OnTimerTicket);this._timer = new Sys.Timer();this._timer.set_enabled(false);this._timer.set_interval(100);this._timer.add_tick(this._timerHandler);this._SaveText = "";this._SavePosi = -1;this._timer.set_enabled(true);}
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);if (this._ClearMaskOnLostfocus)
{
this._InitValue(wrapper.get_Value(),true);}
else
{
this._InitValue(wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1),true);}
if (hasInitialFocus) 
{
this._onFocus();}
else 
{
if (this._ClearMaskOnLostfocus)
{
wrapper.set_Value(this._getClearMask(wrapper.get_Value()));}
var IsValid = this._CaptureServerValidators();if (!IsValid)
{
if (this._OnInvalidCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnInvalidCssClass);}
}
}
}
, dispose : function() 
{
var e = this.get_element();if (this._mouseOutHandler) 
{
$removeHandler(e, "mouseout", this._mouseOutHandler);this._mouseOutHandler = null;}
if (this._mouseMoveHandler) 
{
$removeHandler(e, "mousemove", this._mouseMoveHandler);this._mouseMoveHandler = null;}
if (this._mouseEnterHandler) 
{
$removeHandler(e, "mouseover", this._mouseEnterHandler);this._mouseEnterHandler = null;}
if (this._focusHandler) 
{
$removeHandler(e, "focus", this._focusHandler);this._focusHandler = null;}
if (this._focusHandler) 
{
$removeHandler(e, "focus", this._focusHandler);this._focusHandler = null;}
if (this._blurHandler) 
{
$removeHandler(e, "blur", this._blurHandler);this._blurHandler = null;}
if (this._changeHandler) 
{
$removeHandler(e, "change", this._changeHandler);this._changeHandler = null;}
if (this._keypressdown) 
{
$removeHandler(e, "keydown", this._keypressdown);this._keypressdown = null;}
if (this._keypressHandler) 
{
$removeHandler(e, "keypress", this._keypressHandler);this._keypressHandler = null;}
if (this._timerHandler) {
this._timer.set_enabled(false);this._timerHandler = null;this._timer.dispose();this._timer = null;}
AjaxControlToolkit.MaskedEditBehavior.callBaseMethod(this, 'dispose');}
, _OnTimerTicket : function() 
{
this._SaveSymb = "";if (this._InLostfocus)
{
return;}
this._timer.set_enabled(false);var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (this._SaveText != "") 
{
wrapper.set_Value(this._SaveText);this.setSelectionRange(this._SavePosi,this._SavePosi);this._SaveText = "";this._SavePosi = -1;this._SaveMask = wrapper.get_Value();}
else
{
if (wrapper.get_Value().length != this._EmptyMask.length)
{
wrapper.set_Value(this._SaveMask);}
if (this._timer.get_interval() != 100)
{
this._timer.set_interval(100);}
}
this._timer.set_enabled(true);}
, _onChange : function() 
{
if (!this._FiringOnChange) {
this._onFocus();}
}
, _onFocus : function() 
{
this._InLostfocus = false;this._RemoveDivToolTip();if (this._OnFocusCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssClass);}
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);this._initialvalue = wrapper.get_Value();if (this._ClearMaskOnLostfocus)
{
this._InitValue(wrapper.get_Value(),false);}
else
{
this._InitValue(wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1),false);}
var ClearText = this._getClearMask();var hastip = false;if (this._MessageValidatorTip && ClearText == "")
{
hastip = true;}
if ( (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && this.get_CultureAMPMPlaceholder() != "" && ClearText == "")
{
if (this._AcceptAmPm)
{
this.InsertAMPM(this.get_CultureAMPMPlaceholder().substring(0,1));}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && ClearText != "")
{
if (this._LogicSymbol == "-" && this._OnFocusCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnFocusCssNegative);}
}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (this._LogicLastInt != -1)
{
this.setSelectionRange(this._LogicLastInt,this._LogicLastInt);}
else
{
this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);}
}
else
{
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && ClearText != "")
{
var pos = this._getLastEmptyPosition()+1;this.setSelectionRange(pos,pos);}
else
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);}
}
this.ShowTooltipMessage(false);if (hastip)
{
this.ShowTooltipMessage(true);}
}
, _PeforformValidLostFocus : function(isblur) 
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var ClearText = this._getClearMask(wrapper.get_Value());if (ClearText == "" && this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._LogicSymbol == "-")
{
this.InsertSignal("+");}
if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Date)
{
this.AutoFormatDate();}
else if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Time)
{
this.AutoFormatTime();}
else if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
this.AutoFormatDateTime();}
else if (ClearText != "" && this._AutoComplete && this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
this.AutoFormatNumber();}
if ((this._ClearMaskOnLostfocus && ClearText != "") || (isblur && this._ClearMaskOnLostfocus) )
{
wrapper.set_Value(this._getClearMask(wrapper.get_Value()));}
this.AddCssClassMaskedEdit("");if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._LogicSymbol == "-" && this._OnBlurCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnBlurCssNegative);}
this.ShowTooltipMessage(false);this._RemoveDivToolTip();var IsValid = this._CaptureClientsValidators();if (!IsValid)
{
if (this._OnInvalidCssClass != "")
{
this.AddCssClassMaskedEdit(this._OnInvalidCssClass);}
if (this._ClearTextOnInvalid)
{
this._createMask();wrapper.set_Value(this._EmptyMask);}
}
return IsValid;}
, _onBlur : function(evt) 
{
this._InLostfocus = true;var IsValid = this._PeforformValidLostFocus(true);if (IsValid)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (!this.get_element().readOnly && (this._initialvalue != wrapper.get_Value()) && evt) {
this._fireChanged();}
}
}
, _fireChanged : function() {
this._FiringOnChange = true;var elt = this.get_element();if (document.createEventObject) {
elt.fireEvent("onchange");} else if (document.createEvent) {
var e = document.createEvent("HTMLEvents");e.initEvent("change", true, true);elt.dispatchEvent(e);}
this._FiringOnChange = false;}
, _onKeyPress : function(evt) 
{
var scancode = this._KeyCode(evt);if (scancode == 9) 
{
return true;}
if (scanCode == 13)
{
var IsValid = this._PeforformValidLostFocus(false);this._ErroOnEnter = false;if (!IsValid)
{
this._ErroOnEnter = true;}
if (Sys.Browser.agent == Sys.Browser.Opera)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());this._SaveText = wrapper.get_Value();this._SavePosi = this._getCurrentPosition();this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
return IsValid;} 
if (this._OnFocusCssClass != "" && this._ErroOnEnter)
{
this.AddCssClassMaskedEdit(this._OnFocusCssClass);}
this._ErroOnEnter = false;if (!this._isNormalChar(evt,scancode)) 
{
this._ExecuteNav(evt,scancode);return false;}
curpos = this._deleteTextSelection();if (curpos == -1)
{
curpos = this._getCurrentPosition()
}
var c = String.fromCharCode(scanCode);if (this._MaskType == AjaxControlToolkit.MaskedEditType.Date && c == this.get_CultureDatePlaceholder())
{
this._AdjustElementDate();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && c == this.get_CultureTimePlaceholder())
{
this._AdjustElementTime();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime && (c == this.get_CultureTimePlaceholder() || c == this.get_CultureDatePlaceholder()) )
{
this._AdjustElementDateTime(c);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight && c == this.get_CultureDecimalPlaceholder() && curpos == this._LogicLastInt)
{
this._AdjustElementDecimalLTR();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && c == this.get_CultureDecimalPlaceholder() && curpos == this._LogicLastInt)
{
this._AdjustElementDecimalRTL();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && c == this.get_CultureDecimalPlaceholder() && curpos != this._LogicLastInt)
{
this._MoveDecimalPos();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight && c == this.get_CultureThousandsPlaceholder() )
{
this._MoveThousandLTR();}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && c == this.get_CultureThousandsPlaceholder() )
{
this._MoveThousandRTL();}
else if ( (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(c.toUpperCase()) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(c);this.setSelectionRange(curpos,curpos);}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(c) != -1)
{
if (Sys.Browser.agent != Sys.Browser.Opera)
{
this.InsertSignal(c);this.setSelectionRange(curpos,curpos);}
else
{
if (this._SaveSymb == "")
{
this.InsertSignal(c);this.setSelectionRange(curpos,curpos);this._SaveSymb = c;this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
else
{
this._SaveSymb = "";}
}
}
else
{
var OriPos = curpos;curpos = this._getNextPosition(curpos);var logiccur = curpos;if (this._LogicLastInt != -1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (OriPos == this._LogicLastInt)
{
logiccur = this._getLastEmptyPosition();}
}
else
{
if (curpos >= this._LogicLastPos+1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
logiccur = this._getLastEmptyPosition();}
}
if (this._processKey(logiccur,c)) 
{
if (this._MessageValidatorTip) 
{
this.ShowTooltipMessage(false);}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (this._LogicLastInt == -1)
{
if (curpos < this._LogicLastPos+1)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);}
else
{
this._insertContentRight(c);curpos = this._LogicLastPos+1;}
}
else
{
if (OriPos != this._LogicLastInt)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);}
else
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var ClearText = this._getClearMask(wrapper.get_Value());if (ClearText != "")
{
var pospt = ClearText.indexOf(this.get_CultureDecimalPlaceholder());if (pospt != -1) 
{
var intnum = ClearText.substring(0,pospt);if (intnum == "0" || intnum == "-0")
{
this.setSelectionRange(this._LogicLastInt-1,this._LogicLastInt);this._deleteTextSelection();curpos = this._LogicLastInt;this.setSelectionRange(curpos,curpos);}
}
}
if (ClearText == "" && c == "0")
{
curpos = this._LogicLastInt;}
else
{
this._insertContentRight(c);curpos = this._LogicLastInt;}
}
}
}
this.setSelectionRange(curpos,curpos);}
}
this._SetCancelEvent(evt);return false;}
, _onKeyPressdown : function(evt) 
{
if (this._InLostfocus)
{
this._onFocus(evt);}
var scancode = this._KeyCode(evt);if (scancode == 9) 
{
return true;}
if (scanCode == 13) 
{
return true;}
if (!this._isNormalChar(evt,scancode)) 
{
this._ExecuteNav(evt,scancode);}
else
{
if (Sys.Browser.agent == Sys.Browser.Opera)
{
if (evt.rawEvent.shiftKey && !evt.rawEvent.ctrlKey && !evt.rawEvent.altKey && evt.rawEvent.keyCode == 45) 
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());this._SaveText = wrapper.get_Value();this._SavePosi = this._getCurrentPosition();this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
}
}
}
, _onMouseOut : function(evt) 
{
this._RemoveDivToolTip();}
, _onMouseMove : function(evt) 
{
if ((this._InLostfocus || this._ErroOnEnter) && this._ExternalMessageError != "")
{
this._ShowDivToolTip(evt);}
}
,_onMouseover : function(evt) 
{
if (!$get("DivMaskedEditTip_" + this.get_element().id))
{
this._CaptureServerValidators();}
if ((this._InLostfocus || this._ErroOnEnter) && this._ExternalMessageError != "")
{
this._createDivToolTip(evt,this._ExternalMessageError);}
}
, _ShowDivToolTip : function(evt) {
var et = $get("DivMaskedEditTip_" + this.get_element().id);if (!et)
{
this._createDivToolTip(evt,this._ExternalMessageError);et = $get("DivMaskedEditTip_" + this.get_element().id);}
var mousepos = this._GetMousePos(evt);et.style.left = mousepos.x + 1 + "px";et.style.top = mousepos.y + 1 + "px";}
, _GetMousePos : function(evt) {
var scrOfX = 0, scrOfY = 0;if( typeof( window.pageYOffset ) == 'number' ) {
scrOfY = window.pageYOffset;scrOfX = window.pageXOffset;} 
else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
scrOfY = document.body.scrollTop;scrOfX = document.body.scrollLeft;} 
else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
scrOfY = document.documentElement.scrollTop;scrOfX = document.documentElement.scrollLeft;}
var posX = 0, posY = 0;if( typeof( evt.pageX ) == 'number' ) 
{
posX = evt.pageX;posY = evt.pageY;} 
else if( typeof( evt.clientX ) == 'number' ) 
{
posX = evt.clientX;posY = evt.clientY;}
return {x:posX+scrOfX,y:posY+scrOfY}
}
, _RemoveDivToolTip : function() {
var e = $get("DivMaskedEditTip_" + this.get_element().id);if (e)
{
document.body.removeChild(e);}
}
, _createDivToolTip : function(evt,Msg) {
var e = $get("DivMaskedEditTip_" + this.get_element().id);if (!e)
{
var DivTp;var mousepos = this._GetMousePos(evt);DivTp = document.createElement("div");DivTp.id = "DivMaskedEditTip_" + this.get_element().id;DivTp.style.position = "absolute";DivTp.style.left = mousepos.x + 2 + "px";DivTp.style.top = mousepos.y + 2 + "px";DivTp.style.zIndex = 99999;if (this._CssMessageErrorFloat == "")
{
DivTp.style.padding = "3px 3px 3px 3px";DivTp.style.border = "Solid 1px #000000";DivTp.style.backgroundColor = "#FFFFEA";DivTp.style.fontWeight = "normal";DivTp.style.fontSize = "12px";DivTp.style.fontFamily = "Arial";}
else
{
DivTp.className = this._CssMessageErrorFloat;}
DivTp.innerHTML = Msg;DivTp = document.body.insertBefore(DivTp, document.body.firstChild);}
}
, _ExecuteNav : function(evt,scanCode)
{
if (evt.type == "keydown")
{
if (Sys.Browser.agent == Sys.Browser.InternetExplorer) 
{
if ( (scanCode == 86 || scanCode == 118) && !evt.shiftKey && evt.ctrlKey && !evt.altKey) {
this._SetCancelEvent(evt);this._PasteFromClipBoard();return;}
if (evt.shiftKey && !evt.ctrlKey && !evt.altKey && evt.keyCode == 45) {
this._SetCancelEvent(evt);this._PasteFromClipBoard();return;}
}
}
if (Sys.Browser.agent != Sys.Browser.InternetExplorer || evt.type == "keypress") 
{
if (evt.rawEvent.shiftKey && !evt.rawEvent.ctrlKey && !evt.rawEvent.altKey && evt.rawEvent.keyCode == 45) {
this._SetCancelEvent(evt);this._PasteFromClipBoard();return;}
if (evt.type == "keypress" && (scanCode == 86 || scanCode == 118) && !evt.shiftKey && evt.ctrlKey && !evt.altKey) {
this._SetCancelEvent(evt);this._PasteFromClipBoard();return;}
}
if (Sys.Browser.agent == Sys.Browser.InternetExplorer || evt.type == "keypress") 
{
if (scanCode == 8) 
{
this._SetCancelEvent(evt);curpos = this._deleteTextSelection();if (curpos != -1)
{
this.setSelectionRange(curpos,curpos);}
else
{
curpos = this._getCurrentPosition();this._backspace(curpos);curpos = this._getPreviousPosition(curpos-1);this.setSelectionRange(curpos,curpos);}
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (this._MessageValidatorTip && wrapper.get_Value() == this._EmptyMask)
{
this.ShowTooltipMessage(true);}
if (Sys.Browser.agent == Sys.Browser.Opera)
{
this._SaveText = wrapper.get_Value();this._SavePosi = curpos;this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
}
else if (scanCode == 46 || scanCode == 127) 
{
this._SetCancelEvent(evt);var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());curpos = this._deleteTextSelection();if (curpos == -1)
{
curpos = this._getCurrentPosition();if (!this._isValidMaskedEditPosition(curpos))
{
if (curpos != this._LogicLastInt && this._InputDirection != AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
curpos = this._getNextPosition(curpos);}
}
this._deleteAtPosition(curpos,false);}
else
{
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
ClearText = this._getClearMask(wrapper.get_Value());if (ClearText != "")
{
ClearText = ClearText.replace(new RegExp("(\\" + this.get_CultureThousandsPlaceholder() + ")", "g"), "") + '';if (ClearText.substring(ClearText.length-1,ClearText.length) == this.get_CultureDecimalPlaceholder())
{
ClearText = ClearText.substring(0,ClearText.length-1);this.loadValue(ClearText,this._LogicLastInt);}
else
{
this.loadValue(ClearText,this._LogicLastPos);}
}
}
}
this.setSelectionRange(curpos,curpos);if (this._MessageValidatorTip && wrapper.get_Value() == this._EmptyMask)
{
this.ShowTooltipMessage(true);}
if (Sys.Browser.agent == Sys.Browser.Opera)
{
this._SaveText = wrapper.get_Value();this._SavePosi = curpos;this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
}
else if(evt.ctrlKey)
{
if (scanCode == 39 || scanCode == 35 || scanCode == 34) 
{
this._DirectSelText = "R";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);curpos = this._getCurrentPosition();this.setSelectionRange(curpos,this._LogicLastPos+1);}
else if (scanCode == 37 || scanCode == 36 || scanCode == 33) 
{
this._DirectSelText = "L";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);curpos = this._getCurrentPosition();this.setSelectionRange(this._LogicFirstPos,curpos);}
}
else if (scanCode == 35 || scanCode == 34) 
{
this._DirectSelText = "R";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);if (evt.shiftKey)
{
curpos = this._getCurrentPosition();this.setSelectionRange(curpos,this._LogicLastPos+1);}
else
{
this.setSelectionRange(this._LogicLastPos+1,this._LogicLastPos+1);}
}
else if (scanCode == 36 || scanCode == 33) 
{
this._DirectSelText = "L";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);if (evt.shiftKey)
{
curpos = this._getCurrentPosition();this.setSelectionRange(this._LogicFirstPos,curpos);}
else
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);}
}
else if (scanCode == 37) 
{
this._DirectSelText = "L";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);if (evt.shiftKey)
{
var BoundSel = this._GetBoundSelection();if (BoundSel)
{
if (BoundSel.left > this._LogicFirstPos)
{
BoundSel.left --;}
this.setSelectionRange(BoundSel.left,BoundSel.right);}
else
{
var pos = this._getCurrentPosition();if (pos > this._LogicFirstPos)
{
this.setSelectionRange(pos -1,pos);}
}
}
else
{
curpos = this._getCurrentPosition()-1;if (curpos < this._LogicFirstPos)
{
curpos = this._LogicFirstPos;}
this.setSelectionRange(curpos,curpos);}
if (Sys.Browser.agent == Sys.Browser.Opera)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());this._SaveText = wrapper.get_Value();this._SavePosi = curpos;this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
}
else if (scanCode == 39) 
{
this._DirectSelText = "R";if (Sys.Browser.agent == Sys.Browser.Opera)
{
return;}
this._SetCancelEvent(evt);if (evt.shiftKey)
{
var BoundSel = this._GetBoundSelection();if (BoundSel)
{
if (BoundSel.right < this._LogicLastPos+1)
{
BoundSel.right ++;}
this.setSelectionRange(BoundSel.left,BoundSel.right);}
else
{
pos = this._getCurrentPosition();if (pos < this._LogicLastPos+1)
{
this.setSelectionRange(pos,pos+1);}
}
}
else
{
curpos = this._getCurrentPosition()+1;if (curpos > this._LogicLastPos+1)
{
curpos = this._LogicLastPos+1;}
this.setSelectionRange(curpos,curpos);}
if (Sys.Browser.agent == Sys.Browser.Opera)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());this._SaveText = wrapper.get_Value();this._SavePosi = curpos;this._timer.set_enabled(false);this._timer.set_interval(1);this._timer.set_enabled(true);}
}
else if (scanCode == 27) 
{
this._SetCancelEvent(evt);var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (this._EmptyMask == this._initialvalue)
{
wrapper.set_Value("");}
else
{
wrapper.set_Value(this._initialvalue);}
this._onFocus();}
}
this._SetCancelEvent(evt);}
, _backspace : function(curpos) 
{
var exec = false;if (curpos > this._LogicFirstPos)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var masktext = wrapper.get_Value();curpos = this._getPreviousPosition(curpos-1);this._deleteAtPosition(curpos, true);exec = true;}
return exec;}
, _deleteAtPosition : function(curpos,isBS) 
{
var exec = false;var lastpos = this._LogicLastPos+1;if (this._LogicLastInt != -1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
lastpos = this._LogicLastInt;}
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if (isBS == false && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && curpos == lastpos)
{
ClearText = this._getClearMask(wrapper.get_Value());if (ClearText != "")
{
exec = true;ClearText = ClearText.replace(new RegExp("(\\" + this.get_CultureThousandsPlaceholder() + ")", "g"), "") + '';if (ClearText.substring(ClearText.length-1,ClearText.length) == this.get_CultureDecimalPlaceholder())
{
ClearText = ClearText.substring(0,ClearText.length-1);}
var arr_num = ClearText.split(this.get_CultureDecimalPlaceholder());if (this._LogicLastInt != -1 && arr_num[0] != "")
{
arr_num[0] = arr_num[0].substring(0,arr_num[0].length-1);ClearText = arr_num[0];if (arr_num.length = 2)
{
ClearText += this.get_CultureDecimalPlaceholder() + arr_num[1];}
}
else
{
ClearText = ClearText.substring(0,ClearText.length-1);}
ClearText += this._LogicSymbol;this.loadValue(ClearText,lastpos);}
}
else
{
var masktext = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);var logiTxt = this._LogicTextMask.substring(this._LogicFirstPos,this._LogicLastPos+1);var qtdDt = 0;var curvld = curpos - this._LogicFirstPos;if (this._isValidMaskedEditPosition(curpos))
{
exec = true;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
var arr_mask = masktext.split(" ");var posmask = curpos - this._LogicFirstPos;if (posmask > arr_mask[0].length)
{
masktext = arr_mask[1];qtdDt = arr_mask[0].length +1;logiTxt = logiTxt.substring(qtdDt);curvld -= qtdDt;}
else
{
masktext = arr_mask[0];logiTxt = logiTxt.substring(0,arr_mask[0].length);}
}
var resttext = masktext.substring(curvld+1);var restlogi = logiTxt.substring(curvld+1);masktext = masktext.substring(0,curvld) + this._PromptChar;logiTxt = logiTxt.substring(0,curvld) + this._LogicPrompt;for (i = 0 ;i < parseInt(resttext.length,10) ;i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i))
{
masktext += this._PromptChar;logiTxt += this._LogicPrompt;}
else
{
masktext += resttext.substring(i,i+1);logiTxt += 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- this._LogicFirstPos-qtdDt) + resttext.substring(i,i+1) + masktext.substring(posaux+1- this._LogicFirstPos-qtdDt);logiTxt = logiTxt.substring(0,posaux- this._LogicFirstPos-qtdDt) + restlogi.substring(i,i+1) + logiTxt.substring(posaux+1- this._LogicFirstPos-qtdDt);posaux = this._getNextPosition(posaux+1);}
} 
if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
var oritext = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);var orilogi = this._LogicTextMask.substring(this._LogicFirstPos,this._LogicLastPos+1)
var arr_mask = oritext.split(" ");var posmask = curpos - this._LogicFirstPos;if (posmask > arr_mask[0].length)
{
masktext = arr_mask[0] + " " + masktext;logiTxt = orilogi.substring(0, qtdDt) + logiTxt;}
else
{
masktext = masktext + " " + arr_mask[1];logiTxt = logiTxt + orilogi.substring(arr_mask[0].length);}
}
var currValue = wrapper.get_Value();masktext = currValue.substring(0,this._LogicFirstPos) + masktext + currValue.substring(this._LogicLastPos+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicFirstPos) + logiTxt + this._LogicTextMask.substring(this._LogicLastPos+1);wrapper.set_Value(masktext);}
}
return exec;}
,_ShowModalClipBoardInput : function()
{
var clip = prompt(this._ClipboardText,"");return clip;}
,_PasteFromClipBoard : function()
{
var value = null;var curpos;var iniSel = -1;var fimSel = -1;if (Sys.Browser.agent == Sys.Browser.InternetExplorer) 
{
value = window.clipboardData.getData("Text");}
else
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var oldvalue = wrapper.get_Value();var BoundSel = this._GetBoundSelection();var curpos = this._getCurrentPosition();var OldAuto = this._AutoComplete;var OldInv = this._ClearTextOnInvalid;var OldCls = this._ClearMaskOnLostfocus;var OldDir = this._DirectSelText;this._AutoComplete = false;this._ClearTextOnInvalid = false;this._ClearMaskOnLostfocus = false;value = this._ShowModalClipBoardInput();this._AutoComplete = OldAuto;this._ClearTextOnInvalid = OldInv;this._ClearMaskOnLostfocus = OldCls;wrapper.set_Value(oldvalue);if (BoundSel)
{
this.setSelectionRange(BoundSel.left,BoundSel.right);}
else
{
this.setSelectionRange(curpos,curpos);}
}
if (value == null || value == "")
{
return;}
if (value.length > this._maskvalid.length)
{
value = value.substring(0,this._maskvalid.length);}
curpos = this._deleteTextSelection();if (curpos == -1)
{
curpos = this._getCurrentPosition();if (BoundSel)
{
curpos = BoundSel.left;}
}
this.setSelectionRange(curpos,curpos);var ReturnPosDec = false;if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && this._LogicLastInt != -1)
{
ReturnPosDec = true;}
var i = 0;for (i = 0;i < value.length;i++)
{
var c = value.substring(i,i+1);var logiccur = curpos;if (ReturnPosDec)
{
logiccur = this._getLastEmptyPosition();}
if ( (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(c.toUpperCase()) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(c);this.setSelectionRange(curpos,curpos);}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(c) != -1)
{
this.InsertSignal(c);this.setSelectionRange(curpos,curpos);}
else
{
var OriPos = curpos;curpos = this._getNextPosition(curpos);var logiccur = curpos;if (this._LogicLastInt != -1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (OriPos == this._LogicLastInt)
{
logiccur = this._getLastEmptyPosition();}
}
else
{
if (curpos >= this._LogicLastPos+1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
logiccur = this._getLastEmptyPosition();}
}
if (this._processKey(logiccur,c)) 
{
if (this._MessageValidatorTip) 
{
this.ShowTooltipMessage(false);}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (this._LogicLastInt == -1)
{
if (curpos < this._LogicLastPos+1)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);}
else
{
this._insertContentRight(c);curpos = this._LogicLastPos+1;}
}
else
{
if (OriPos != this._LogicLastInt)
{
this._insertContent(c,logiccur);curpos = this._getNextPosition(logiccur+1);}
else
{
this._insertContentRight(c);curpos = this._LogicLastInt;}
}
}
this.setSelectionRange(curpos,curpos);}
}
}
if (ReturnPosDec)
{
this.setSelectionRange(this._LogicLastInt,this._LogicLastInt);}
}
, _MoveDecimalPos : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var curpos = this._LogicFirstPos;var max = this._LogicLastPos;var posDc = -1;while (curpos < max)
{
if (wrapper.get_Value().substring(curpos,curpos+1) == this.get_CultureDecimalPlaceholder())
{
posDc = curpos;break;}
curpos++;}
if (posDc == -1)
{
return;}
this.setSelectionRange(posDc,posDc);}
, _MoveThousandLTR : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var curpos = this._getCurrentPosition();var max = this._LogicLastPos;var cur = curpos+1;var posTh = -1;while (cur < max)
{
if (wrapper.get_Value().substring(cur,cur+1) == this.get_CultureThousandsPlaceholder())
{
posTh = cur;break;}
cur++;}
if (posTh == -1)
{
var cur = 0;max = curpos;while (cur < max)
{
if (wrapper.get_Value().substring(cur,cur+1) == this.get_CultureThousandsPlaceholder())
{
posTh = cur;break;}
cur++;}
if (posTh == -1)
{
return;}
}
this.setSelectionRange(posTh,posTh);}
, _MoveThousandRTL : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var curpos = this._getCurrentPosition();var min = this._LogicFirstPos;var cur = curpos-1;var posTh = -1;while (cur > min)
{
if (wrapper.get_Value().substring(cur,cur+1) == this.get_CultureThousandsPlaceholder())
{
posTh = cur;break;}
cur--;}
if (posTh == -1)
{
cur = this._LogicLastPos;min = curpos;while (cur > min)
{
if (wrapper.get_Value().substring(cur,cur+1) == this.get_CultureThousandsPlaceholder())
{
posTh = cur;break;}
cur--;}
if (posTh == -1)
{
return;}
}
this.setSelectionRange(posTh,posTh);}
, _AdjustElementDecimalLTR : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var curpos = this._getCurrentPosition();if (wrapper.get_Value().substring(curpos).indexOf(this.get_CultureDecimalPlaceholder()) == -1)
{
return;}
var value = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);var newcur = value.indexOf(this.get_CultureDecimalPlaceholder());if (newcur == -1)
{
return;}
var arr_num;ClearText = this._getClearMask(wrapper.get_Value());if (ClearText != "")
{
ClearText = ClearText.replace(new RegExp("(\\" + this.get_CultureThousandsPlaceholder() + ")", "g"), "") + '';arr_num = ClearText.split(this.get_CultureDecimalPlaceholder());}
else
{
arr_num = this.get_CultureDecimalPlaceholder().split(this.get_CultureDecimalPlaceholder());} 
if (arr_num[0] == "")
{
arr_num[0] = "0";}
var QtdDec = value.length - newcur - 1;while (arr_num[1].length < QtdDec)
{
arr_num[1] += "0";}
var OldDir = this._InputDirection;this._InputDirection = AjaxControlToolkit.MaskedEditInputDirections.RightToLeft;this.loadValue(arr_num[0] + this.get_CultureDecimalPlaceholder() + arr_num[1],this._LogicLastPos);this._InputDirection = OldDir;newcur += this._LogicFirstPos + 1;this.setSelectionRange(newcur,newcur);}
, _AdjustElementDecimalRTL : function()
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var value = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);var posdec = value.indexOf(this.get_CultureDecimalPlaceholder());if (posdec == -1)
{
return;}
var curpos = this._getCurrentPosition();if (posdec + this._LogicFirstPos >= curpos)
{
this._AdjustElementDecimalLTR();return;}
var arr_num;ClearText = this._getClearMask(wrapper.get_Value());if (ClearText != "")
{
ClearText = ClearText.replace(new RegExp("(\\" + this.get_CultureThousandsPlaceholder() + ")", "g"), "") + '';arr_num = ClearText.split(this.get_CultureDecimalPlaceholder());}
else
{
arr_num = this.get_CultureDecimalPlaceholder().split(this.get_CultureDecimalPlaceholder());} 
if (arr_num[0] == "")
{
arr_num[0] = "0";}
var QtdDec = value.length - posdec - 1;while (arr_num[1].length < QtdDec)
{
arr_num[1] += "0";}
var OldDir = this._InputDirection;this._InputDirection = AjaxControlToolkit.MaskedEditInputDirections.RightToLeft;this.loadValue(arr_num[0] + this.get_CultureDecimalPlaceholder() + arr_num[1],this._LogicLastPos);this._InputDirection = OldDir;posdec += this._LogicFirstPos + 1;this.setSelectionRange(posdec,posdec);}
, _AdjustTime : function(value,ValueDefault)
{
var emp = true;var i
for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
if (value.substring(i,i+1) != this._PromptChar)
{
emp = false;}
}
if (emp)
{
return ValueDefault;}
var max = value.length;value = value.replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';while (value.length < max)
{
value = "0" + value;}
return value;}
, _AdjustElementTime : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var type = "";var curpos = this._getCurrentPosition() - this._LogicFirstPos;var m_mask = this._maskvalid;var newcur = curpos + this._LogicFirstPos;var QtdDt = 0;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
QtdDt = m_mask.split(" ")[0].length+1;if (curpos < QtdDt)
{
newcur = QtdDt+this._LogicFirstPos;this.setSelectionRange(newcur,newcur);return;}
m_mask = m_mask.split(" ")[1];curpos -= QtdDt;}
m_mask = m_mask.split(":");if (curpos <= 1)
{
type = "H";newcur = 3 + this._LogicFirstPos + QtdDt;} 
else if (curpos >= 2 && curpos <= 4 && m_mask.length == 2)
{
type = "M";newcur = QtdDt+this._LogicFirstPos;}
else if (curpos >= 2 && curpos <= 4 && m_mask.length == 3)
{
type = "M";newcur = 6 + this._LogicFirstPos + QtdDt;}
else if (m_mask.length == 3)
{
type = "S";newcur = QtdDt+this._LogicFirstPos;} 
if (type == "")
{
return;}
var valueTM = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
valueTM = valueTM.split(" ")[1];}
var m_arrTime = valueTM.split(this.get_CultureTimePlaceholder());var elem = this._GetTimeElementText(type);var value;if (type == "H")
{
value = elem + this.get_CultureTimePlaceholder() + m_arrTime[1];if (m_arrTime.length == 3)
{
value += this.get_CultureTimePlaceholder() + m_arrTime[2];}
}
else if (type == "M")
{
value = m_arrTime[0] + this.get_CultureTimePlaceholder() + elem;if (m_arrTime.length == 3)
{
value += this.get_CultureTimePlaceholder() + m_arrTime[2];}
}
else if (type == "S")
{
value = m_arrTime[0] + this.get_CultureTimePlaceholder() + m_arrTime[1];value += this.get_CultureTimePlaceholder() + elem;}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
value = wrapper.get_Value().substring(this._LogicFirstPos,QtdDt) + value;}
this.loadMaskValue(value,this._LogicFirstPos,this._LogicSymbol);this.setSelectionRange(newcur,newcur);}
, _GetTimeElementText : function(Type)
{
var aux;var logiTxt = this._LogicTextMask.substring(this._LogicFirstPos,this._LogicLastPos+1);if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
logiTxt = logiTxt.substring(this._maskvalid.split(" ")[0].length+1);}
var m_arrTime = logiTxt.split(this.get_CultureTimePlaceholder());m_arrTime[0] = m_arrTime[0].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrTime[0].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrTime[0] = aux;}
m_arrTime[1] = m_arrTime[1].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrTime[1].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrTime[1] = aux;}
if (m_arrTime.length == 3)
{
m_arrTime[2] = m_arrTime[2].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrTime[2].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrTime[2] = aux;}
}
if (Type == "H")
{
return m_arrTime[0];}
else if (Type == "M")
{
return m_arrTime[1];}
return m_arrTime[2];}
, _AdjustElementDateTime : function(c)
{
if (c == this.get_CultureDatePlaceholder())
{
this._AdjustElementDate();}
if (c == this.get_CultureTimePlaceholder())
{
this._AdjustElementTime();}
}
, _AdjustElementDate : function()
{
var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);var input = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
input = input.split(" ")[0];}
var m_arrDate = input.split(this.get_CultureDatePlaceholder());var type = "";var curpos = this._getCurrentPosition() - this._LogicFirstPos;var newcur = curpos + this._LogicFirstPos;var QtdY = (this._maskvalid.indexOf("9999") != -1)?2:0;if (this.get_CultureDateFormat() == "DMY")
{
if (curpos <= 1)
{
type = "D";newcur = 3 + this._LogicFirstPos;} 
else if (curpos >= 2 && curpos <= 4)
{
type = "M";newcur = 6 + this._LogicFirstPos;}
else
{
if (curpos > 8 + QtdY && this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);return;}
type = "Y";newcur = this._LogicFirstPos;} 
}
else if (this.get_CultureDateFormat() == "MDY")
{
if (curpos <= 1)
{
type = "M";newcur = 3 + this._LogicFirstPos;} 
else if (curpos >= 2 && curpos <= 4)
{
type = "D";newcur = 6 + this._LogicFirstPos;}
else
{
if (curpos > 8 + QtdY && this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
this.setSelectionRange(this._LogicFirstPos,this._LogicFirstPos);return;}
type = "Y";newcur = this._LogicFirstPos;} 
}
else if (this.get_CultureDateFormat() == "DYM")
{
if (curpos <= 1)
{
type = "D";newcur = 3 + this._LogicFirstPos;} 
else if (curpos >= 2 && curpos <= 4+QtdY)
{
type = "Y";newcur = 6 + QtdY + this._LogicFirstPos;}
else
{
type = "M";newcur = this._LogicFirstPos;} 
}
else if (this.get_CultureDateFormat() == "MYD")
{
if (curpos <= 1)
{
type = "M";newcur = 3 + this._LogicFirstPos;} 
else if (curpos >= 2 && curpos <= 4+QtdY)
{
type = "Y";newcur = 6 + QtdY + this._LogicFirstPos;}
else
{
type = "D";newcur = this._LogicFirstPos;} 
}
else if (this.get_CultureDateFormat() == "YMD")
{
if (curpos <= 1+QtdY)
{
type = "Y";newcur = 3 + QtdY + this._LogicFirstPos;} 
else if (curpos >= 2+ QtdY && curpos <= 4+QtdY)
{
type = "M";newcur = 6 + QtdY + this._LogicFirstPos;}
else
{
type = "D";newcur = this._LogicFirstPos;} 
}
else if (this.get_CultureDateFormat() == "YDM")
{
if (curpos <= 1+QtdY)
{
type = "Y";newcur = 3 + QtdY + this._LogicFirstPos;} 
else if (curpos >= 2+ QtdY && curpos <= 4+QtdY)
{
type = "D";newcur = 6 + QtdY + this._LogicFirstPos;}
else
{
type = "M";newcur = this._LogicFirstPos;} 
} 
var elem = this._GetDateElementText(type);m_arrDate[this.get_CultureDateFormat().indexOf(type)] = elem;var value = m_arrDate[0] + this.get_CultureDatePlaceholder() + m_arrDate[1] + this._CultureDatePlaceholder + m_arrDate[2];if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
var aux = wrapper.get_Value().substring(this._LogicFirstPos,this._LogicLastPos+1);if (aux.split(" ").length == 3)
{
value += " " + aux.split(" ")[1] + " " + aux.split(" ")[2];}
else
{
value += " " + aux.split(" ")[1];}
}
this.loadMaskValue(value,this._LogicFirstPos,this._LogicSymbol);this.setSelectionRange(newcur,newcur);}
, _GetDateElementText : function(Type)
{
var aux;var m_arrDate;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
var auxdate = this._LogicTextMask.substring(this._LogicFirstPos,this._LogicLastPos+1).split(" ")[0];m_arrDate = auxdate.split(this.get_CultureDatePlaceholder());}
else
{
m_arrDate = this._LogicTextMask.substring(this._LogicFirstPos,this._LogicLastPos+1).split(this.get_CultureDatePlaceholder());}
m_arrDate[this.get_CultureDateFormat().indexOf("D")] = m_arrDate[this.get_CultureDateFormat().indexOf("D")].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrDate[this.get_CultureDateFormat().indexOf("D")].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrDate[this.get_CultureDateFormat().indexOf("D")] = aux
}
m_arrDate[this.get_CultureDateFormat().indexOf("M")] = m_arrDate[this.get_CultureDateFormat().indexOf("M")].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrDate[this.get_CultureDateFormat().indexOf("M")].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrDate[this.get_CultureDateFormat().indexOf("M")] = aux;}
var Y4 = (this._maskvalid.indexOf("9999") != -1)?true:false;m_arrDate[this.get_CultureDateFormat().indexOf("Y")] = m_arrDate[this.get_CultureDateFormat().indexOf("Y")].replace(new RegExp("(\\" + this._LogicPrompt + ")", "g"), this._PromptChar) + '';aux = m_arrDate[this.get_CultureDateFormat().indexOf("Y")].replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';if (Y4)
{
if (aux !="" && aux.length < 4)
{
while (aux.length < 4)
{
aux = "0" + aux;}
m_arrDate[this.get_CultureDateFormat().indexOf("Y")] = aux;}
}
else
{
if (aux !="" && aux.length < 2)
{
aux = "0" + aux;m_arrDate[this.get_CultureDateFormat().indexOf("Y")] = aux;}
}
return m_arrDate[this.get_CultureDateFormat().indexOf(Type)];}
, _GetBoundSelection : function()
{
var ret = null;var input = this.get_element();if (input.setSelectionRange) 
{
if (input.selectionStart != input.selectionEnd)
{
ret = {left: parseInt(input.selectionStart,10),right: parseInt(input.selectionEnd,10)};}
} 
else if (document.selection) 
{
sel = document.selection.createRange();if (sel.text != "")
{
var tam = parseInt(sel.text.length,10);sel.text = String.fromCharCode(3) + sel.text;var dummy = input.createTextRange();dummy.findText(String.fromCharCode(3));dummy.select();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(input);var pos = parseInt(wrapper.get_Value().indexOf(String.fromCharCode(3)),10);document.selection.clear();ret = {left: pos,right: pos+tam};}
}
return ret;}
, _deleteTextSelection : function()
{
var input = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(input);var masktext = wrapper.get_Value();var lenaux = -1;var begin = -1;var isDel = false;if (input.setSelectionRange) 
{
if (input.selectionStart != input.selectionEnd)
{
var ini = parseInt(input.selectionStart,10);var fim = parseInt(input.selectionEnd,10);isDel = true;lenaux = fim - ini;begin=input.selectionStart;input.selectionEnd = input.selectionStart;}
}
else if (document.selection) 
{
sel = document.selection.createRange();if (sel.text != "")
{
isDel = true;var aux = sel.text + String.fromCharCode(3);sel.text = aux;var dummy = input.createTextRange();dummy.findText(aux);dummy.select();begin = wrapper.get_Value().indexOf(aux);document.selection.clear();lenaux = parseInt(aux.length,10)-1;}
}
if (isDel)
{
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);}
}
wrapper.set_Value(masktext);if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
begin += lenaux;}
}
this._DirectSelText = "";return begin;}
, _isNormalChar : function(evt,scanCode) {
var ret = true;if (Sys.Browser.agent == Sys.Browser.Opera && evt.type == "keydown")
{
this._SaveKeyDown = scanCode;}
if (scanCode < 32) { 
ret = false;}
else if (Sys.Browser.agent != Sys.Browser.InternetExplorer || evt.type == "keydown") 
{
switch (scanCode) 
{
case 33: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 34: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 35: 
if (Sys.Browser.agent == Sys.Browser.Opera && evt.type == "keypress")
{
if (this._SaveKeyDown == 35) 
{
ret = false;}
}
else
{
ret = false;}
break;case 36: 
if (Sys.Browser.agent == Sys.Browser.Opera && evt.type == "keypress")
{
if (this._SaveKeyDown == 36)
{
ret = false;}
}
else
{
ret = false;}
break;case 37: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 38: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 39: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 40: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
break;case 45: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null && Sys.Browser.agent != Sys.Browser.Opera)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
else if (Sys.Browser.agent == Sys.Browser.Opera) 
{
ret = true;}
else
{
ret = false;}
break;case 86: 
case 118: 
if (!evt.rawEvent.shiftKey && evt.rawEvent.ctrlKey && !evt.rawEvent.altKey) 
{
ret = false;}
break;case 46: 
if (typeof(evt.rawEvent.which) != "undefined" && evt.rawEvent.which !=null && Sys.Browser.agent != Sys.Browser.Opera)
{
if (evt.rawEvent.which == 0)
{
ret = false;}
}
else if (Sys.Browser.agent == Sys.Browser.Opera && evt.type == "keypress")
{
if (this._SaveKeyDown == 127)
{
ret = false;}
}
else
{
ret = false;}
break;case 127: 
ret = false;break;}
} 
return ret;}
, _KeyCode : function(evt) {
scanCode = 0;if (evt.keyIdentifier) {
if (evt.charCode == 63272) { 
scanCode = 46;}
else if (evt.charCode == 63302) { 
scanCode = 45;}
else if (evt.charCode == 63233) { 
scanCode = 40;}
else if (evt.charCode == 63235) { 
scanCode = 39;}
else if (evt.charCode == 63232) { 
scanCode = 38;}
else if (evt.charCode == 63234) { 
scanCode = 37;}
else if (evt.charCode == 63273) { 
scanCode = 36;}
else if (evt.charCode == 63275) { 
scanCode = 35;}
else if (evt.charCode == 63277) { 
scanCode = 34;}
else if (evt.charCode == 63276) { 
scanCode = 33;}
else if (evt.charCode == 3) { 
scanCode = 13;}
} 
if (scanCode == 0) {
if (evt.charCode) {
scanCode = evt.charCode;}
}
if (scanCode == 0) {
scanCode = evt.keyCode;}
return scanCode;}
, _InitValue : function(value,loadFirst)
{
this._LogicSymbol = "";var e = this.get_element();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e);wrapper.set_Value(this._EmptyMask);if (value == this._EmptyMask || value == "")
{
this.loadValue("",this._LogicFirstPos);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Date && value != "")
{
value = this.ConvFmtDate(value,loadFirst);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time && value != "")
{
value = this.ConvFmtTime(value,loadFirst);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime && value != "")
{
value = this.ConvFmtDateTime(value,loadFirst);}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && value != "")
{
value = this.ConvFmtNumber(value,loadFirst);}
if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight && value != "")
{
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
this._InputDirection = AjaxControlToolkit.MaskedEditInputDirections.RightToLeft;this.loadValue(value,this._LogicLastPos);this._InputDirection = AjaxControlToolkit.MaskedEditInputDirections.LeftToRight;}
else
{
this.loadValue(value,this._LogicFirstPos);}
} 
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && value != "")
{
this.loadValue(value,this._LogicLastPos);}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
if (this._InLostfocus && this._LogicSymbol == "-" && this._OnBlurCssNegative != "")
{
this.AddCssClassMaskedEdit(this._OnBlurCssNegative);}
}
}
, loadMaskValue : function(value,logicPosition, Symb)
{
this._createMask();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());wrapper.set_Value(this._EmptyMask);if ( (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && this.get_CultureFirstLettersAMPM().toUpperCase().indexOf(Symb.toUpperCase().substring(0,1)) != -1)
{
if (this._AcceptAmPm)
{
this.InsertAMPM(Symb.toUpperCase().substring(0,1));}
}
else if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._AcceptNegative != AjaxControlToolkit.MaskedEditShowSymbol.None && "+-".indexOf(Symb) != -1)
{
this.InsertSignal(Symb);}
var i = 0;for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
var c = value.substring(i+logicPosition,i+logicPosition+1);if (this._processKey(logicPosition+i,c)) 
{
this._insertContent(c,logicPosition+i);}
}
}
, loadValue : function(value,logicPosition)
{
this._createMask();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());wrapper.set_Value(this._EmptyMask);if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.LeftToRight)
{
var i = 0;for (i = 0 ;i < parseInt(value.length,10) ;i++) 
{
var c = value.substring(i,i+1);if ( (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && 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);logicPosition = this._getNextPosition(logicPosition+1);}
}
}
else if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (logicPosition == this._LogicLastInt)
{
logicPosition = this._getPreviousPosition(logicPosition);var arr_num = value.split(this.get_CultureDecimalPlaceholder())
for (i = parseInt(arr_num[0].length,10) ;i > 0 ;i--) 
{
var c = arr_num[0].substring(i-1,i);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);logicPosition = this._getPreviousPosition(logicPosition-1);}
} 
if (arr_num.length > 1)
{
logicPosition = this._getNextPosition(this._LogicLastInt);for (i = 0 ;i < parseInt(arr_num[1].length,10) ;i++) 
{
var c = arr_num[1].substring(i,i+1);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);logicPosition = this._getNextPosition(logicPosition+1);}
}
}
}
else
{
for (i = parseInt(value.length,10) ;i > 0 ;i--) 
{
var c = value.substring(i-1,i);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);logicPosition = this._getPreviousPosition(logicPosition-1);}
} 
}
}
}
, AutoFormatNumber : function()
{
var i;var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());ValueText = wrapper.get_Value();var AutoComp = this._AutoCompleteValue;var okdgt = false;for (i = this._LogicFirstPos ;i <= this._LogicLastPos ;i++) 
{
if (this._LogicTextMask.substring(i,i+1) == this._LogicPrompt)
{
var CharComp = "0";if (AutoComp != "")
{
CharComp = AutoComp.substring(i-this._LogicFirstPos,i+1-this._LogicFirstPos);}
if (okdgt)
{
this._LogicTextMask = this._LogicTextMask.substring(0,i) + CharComp + this._LogicTextMask.substring(i+1);ValueText = ValueText.substring(0,i) + CharComp + 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;}
}
wrapper.set_Value(ValueText);return ValueText;}
, AutoFormatTime : function()
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());ValueText = wrapper.get_Value();var autocomp = this._AutoCompleteValue;if (autocomp.indexOf(this.get_CultureTimePlaceholder()) == -1)
{
autocomp = "";}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
if (ValueText.split(" ").length == 3)
{
ValueText = ValueText.split(" ")[1] + " " + ValueText.split(" ")[2];}
else
{
ValueText = ValueText.split(" ")[1];}
if (autocomp != "")
{
if (autocomp.indexOf(this.get_CultureDatePlaceholder()) == -1)
{
autocomp = " " + autocomp;}
if (autocomp.split(" ").length == 3)
{
autocomp = autocomp.split(" ")[1] + " " + autocomp.split(" ")[2];}
else
{
autocomp = autocomp.split(" ")[1];}
}
}
var CurDate = new Date();var Hcur = CurDate.getHours().toString();if (Hcur.length < 2)
{
Hcur = "0" + Hcur;}
if (autocomp != "")
{
Hcur = autocomp.substring(0,2);}
var SetAM = false;var SetPM = false;var LcAM = "";var LcPM = "";var Symb = "";if (this.get_CultureAMPMPlaceholder() != "")
{
var m_arrtm = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);LcAM = m_arrtm[0];LcPM = m_arrtm[1];if (autocomp == "")
{
var Symb = LcAM;if (Hcur > 12)
{
Hcur = (parseInt(Hcur,10) - 12).toString();if (Hcur.length < 2)
{
Hcur = "0" + Hcur;}
Symb = LcPM;}
}
else
{
Symb = LcAM;if (autocomp.indexOf(LcPM) != -1)
{
Symb = LcPM;}
}
SetAM = true;if (ValueText.indexOf(LcPM) != -1 && LcPM != "")
{
SetPM = true;}
if (!this._AcceptAmPm)
{
Symb = "";SetPM = false;SetAM = false;}
else
{
var emp = true;if (ValueText.substring(0,1) != this._PromptChar || ValueText.substring(1,2) != this._PromptChar)
{
emp = false;}
if (emp && Symb != "") 
{
SetAM = true;SetPM = false;if (LcPM == Symb)
{
SetPM = true;}
}
}
}
var Mcur = CurDate.getMinutes().toString();if (Mcur.length < 2)
{
Mcur = "0" + Mcur;}
if (autocomp != "" )
{
Mcur = autocomp.substring(3,5);}
var Scur = "00";var PH,PM;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
PH = ValueText.substring(0,2);PH = this._AdjustTime(PH,Hcur);PM = ValueText.substring(3,5);PM = this._AdjustTime(PM,Mcur);}
else
{
PH = ValueText.substring(this._LogicFirstPos,this._LogicFirstPos+2);PH = this._AdjustTime(PH,Hcur);PM = ValueText.substring(this._LogicFirstPos+3,this._LogicFirstPos+5);PM = this._AdjustTime(PM,Mcur);}
var maskvld = this._maskvalid;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
maskvld = maskvld.split(" ")[1];}
if (maskvld == "99:99:99")
{
if (autocomp != "" )
{
Scur = autocomp.substring(6);}
var PS;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
PS = ValueText.substring(6,8);PS = this._AdjustTime(PS,Scur);}
else
{
PS = ValueText.substring(this._LogicFirstPos+6,this._LogicFirstPos+8);PS = this._AdjustTime(PS,Scur);}
ValueText = PH + this.get_CultureTimePlaceholder() + PM + this.get_CultureTimePlaceholder() + PS;}
else
{
ValueText = PH + this.get_CultureTimePlaceholder() + PM;}
if (SetPM)
{
ValueText += " " + LcPM;}
else if (SetAM)
{
ValueText += " " + LcAM;}
if (this._MaskType != AjaxControlToolkit.MaskedEditType.DateTime)
{
this.loadValue(ValueText,this._LogicFirstPos);}
return ValueText;}
, AutoFormatDateTime : function()
{
var PartDt = this.AutoFormatDate();var PartTm = this.AutoFormatTime();this.loadValue(PartDt + " " + PartTm,this._LogicFirstPos);return PartDt + " " + PartTm;}
, AutoFormatDate : function()
{
var D = this._GetDateElementText("D").replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';var M = this._GetDateElementText("M").replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';var Y = this._GetDateElementText("Y").replace(new RegExp("(\\" + this._PromptChar + ")", "g"), "") + '';var Y4 = (this._maskvalid.indexOf("9999") != -1)?true:false;var autocomp = this._AutoCompleteValue;if (autocomp.indexOf(this.get_CultureDatePlaceholder()) == -1)
{
autocomp = "";}
var Dcur,Mcur,Ycur;if (autocomp == "")
{
var CurDate = new Date();Dcur = (CurDate.getUTCDate()).toString();if (Dcur.length < 2)
{
Dcur = "0" + Dcur;}
Mcur = (CurDate.getUTCMonth()+1).toString();if (Mcur.length < 2)
{
Mcur = "0" + Mcur;}
if (Y4)
{
Ycur = CurDate.getUTCFullYear().toString();}
else
{
Ycur = Ycur.substring(2);}
}
else
{
var m_arrDate;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
if (autocomp.indexOf(this.get_CultureTimePlaceholder()) == -1)
{
autocomp = autocomp + " ";}
var partdt = autocomp.split(" ")[0];m_arrDate = partdt.split(this.get_CultureDatePlaceholder());}
else
{
m_arrDate = autocomp.split(this.get_CultureDatePlaceholder());}
if (this.get_CultureDateFormat() == "DMY")
{
Dcur = m_arrDate[0];Mcur = m_arrDate[1];Ycur = m_arrDate[2];}
else if (this.get_CultureDateFormat() == "MDY")
{
Dcur = m_arrDate[1];Mcur = m_arrDate[0];Ycur = m_arrDate[2];}
else if (this.get_CultureDateFormat() == "DYM")
{
Dcur = m_arrDate[0];Mcur = m_arrDate[2];Ycur = m_arrDate[1];}
else if (this.get_CultureDateFormat() == "MYD")
{
Dcur = m_arrDate[2];Mcur = m_arrDate[0];Ycur = m_arrDate[1];}
else if (this.get_CultureDateFormat() == "YMD")
{
Dcur = m_arrDate[2];Mcur = m_arrDate[1];Ycur = m_arrDate[0];}
else if (this.get_CultureDateFormat() == "YDM")
{
Dcur = m_arrDate[1];Mcur = m_arrDate[2];Ycur = m_arrDate[0];} 
if (Dcur.length < 2)
{
Dcur = "0" + Dcur;}
if (Mcur.length < 2)
{
Mcur = "0" + Mcur;}
if (Y4)
{
while (Ycur.length < 4)
{
Ycur = "0" + Ycur;}
}
else
{
while (Ycur.length < 2)
{
Ycur = "0" + Ycur;}
}
}
if (D == "")
{
D = Dcur;}
if (M== "")
{
M = Mcur;}
if (Y == "")
{
Y = Ycur;}
var value;if (this.get_CultureDateFormat() == "DMY")
{
value = D + this.get_CultureDatePlaceholder() + M + this._CultureDatePlaceholder + Y;}
else if (this.get_CultureDateFormat() == "MDY")
{
value = M + this.get_CultureDatePlaceholder() + D + this._CultureDatePlaceholder + Y;}
else if (this.get_CultureDateFormat() == "DYM")
{
value = D + this.get_CultureDatePlaceholder() + Y + this._CultureDatePlaceholder + M;}
else if (this.get_CultureDateFormat() == "MYD")
{
value = M + this.get_CultureDatePlaceholder() + Y + this._CultureDatePlaceholder + D;}
else if (this.get_CultureDateFormat() == "YMD")
{
value = Y + this.get_CultureDatePlaceholder() + M + this._CultureDatePlaceholder + D;}
else if (this.get_CultureDateFormat() == "YDM")
{
value = Y + this.get_CultureDatePlaceholder() + D + this._CultureDatePlaceholder + M;}
if (this._MaskType != AjaxControlToolkit.MaskedEditType.DateTime)
{
this.loadValue(value,this._LogicFirstPos);}
return value;}
, ConvFmtNumber : function(input,loadFirst)
{
if (this._maskvalid.split(this.get_CultureDecimalPlaceholder()).length == 2)
{
if (input.substring(input.length-1,input.length) == this.get_CultureDecimalPlaceholder())
{
input = input.substring(0,input.length-1);}
if (input.indexOf(this.get_CultureDecimalPlaceholder()) == -1)
{
input += this.get_CultureDecimalPlaceholder();var i;var m_mask = this._maskvalid;for (i = 0;i < m_mask.length;i++)
{
input += "0";}
return input;}
}
return input;}
, ConvFmtTime : function(input,loadFirst)
{
var AddH = 0;var SetAM = false;var SetPM = false;var LcAM = "";var LcPM = "";if (this.get_CultureAMPMPlaceholder() != "")
{
LcAM = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator)[0];LcPM = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator)[1];}
if (loadFirst)
{
var LDLcAM = "";var LDLcPM = "";if (this._CultureAMPMPlaceholder != "")
{
LDLcAM = this._CultureAMPMPlaceholder.split(this._AMPMPlaceholderSeparator)[0];LDLcPM = this._CultureAMPMPlaceholder.split(this._AMPMPlaceholderSeparator)[1];}
if (this.get_UserTimeFormat() == AjaxControlToolkit.MaskedEditUserTimeFormat.TwentyFourHour)
{
input = input.replace(new RegExp("(\\" + LDLcAM + ")", "g"),"");if (input.indexOf(LDLcPM) != -1)
{
AddH = 12;}
input = input.replace(new RegExp("(\\" + LDLcPM + ")", "g"),"");}
} 
if (input.indexOf(LcAM) != -1 && LcAM != "")
{
SetAM = true;}
else if (input.indexOf(LcPM) != -1 && LcPM != "")
{
SetPM = true;}
if (LcAM != "")
{
input = input.replace(new RegExp("(\\" + LcAM + ")", "g"), "");}
if (LcPM != "")
{
input = input.replace(new RegExp("(\\" + LcPM + ")", "g"), "");}
input = input.replace(new RegExp("(\\" + " " + ")", "g"), "");var m_arrTime = input.split(this.get_CultureTimePlaceholder());var m_mask = this._maskvalid;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
m_mask = m_mask.split(" ")[1];}
m_mask = m_mask.split(":");if (parseInt(m_arrTime.length,10) < 2 || parseInt(m_arrTime.length,10) > 3)
{
return "";}
var H = parseInt(m_arrTime[0],10) + AddH;H = H.toString();if (H.length < m_mask[0].length)
{
while (H.length < m_mask[0].length)
{
H = "0" + H;}
}
m_arrTime[0] = H;var M = parseInt(m_arrTime[1],10) + '';if (M.length < m_mask[1].length)
{
while (M.length < m_mask[1].length)
{
M = "0" + M;}
}
m_arrTime[1] = M;var value = "";if (parseInt(m_arrTime.length,10) == 3)
{
var S = parseInt(m_arrTime[2],10) + '';if (S.length < m_mask[2].length)
{
while (S.length < m_mask[2].length)
{
S = "0" + S;}
}
m_arrTime[2] = S;value = m_arrTime[0] + this.get_CultureTimePlaceholder() + m_arrTime[1] + this.get_CultureTimePlaceholder() + m_arrTime[2];}
else
{
value = m_arrTime[0] + this.get_CultureTimePlaceholder() + m_arrTime[1];}
if (SetAM)
{
value += " " + LcAM;}
else if (SetPM)
{
value += " " + LcPM;}
return value;}
, ConvFmtDateTime : function(input,loadFirst)
{
var partdt = input.split(" ")[0];var parttm = input.split(" ")[1];if (input.split(" ").length == 3)
{
parttm += " " + input.split(" ")[2];}
partdt = this.ConvFmtDate(partdt,loadFirst);parttm = this.ConvFmtTime(parttm,loadFirst);return partdt + " " + parttm;}
, ConvFmtDate : function(input,loadFirst)
{
var m_arrDateLD;var m_arrDate;if (loadFirst)
{
m_arrDateLD = input.split(this.get_CultureDatePlaceholder());m_arrDate = input.split(this.get_CultureDatePlaceholder());if (this.get_UserDateFormat() != AjaxControlToolkit.MaskedEditUserDateFormat.None)
{
m_arrDate[this.get_CultureDateFormat().indexOf("D")] = m_arrDateLD[this._CultureDateFormat.indexOf("D")];m_arrDate[this.get_CultureDateFormat().indexOf("M")] = m_arrDateLD[this._CultureDateFormat.indexOf("M")];m_arrDate[this.get_CultureDateFormat().indexOf("Y")] = m_arrDateLD[this._CultureDateFormat.indexOf("Y")];}
}
else
{
m_arrDate = input.split(this.get_CultureDatePlaceholder());}
var m_mask = this._maskvalid;if (this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
m_mask = m_mask.split(" ")[0];}
m_mask = m_mask.split("/");if (parseInt(m_arrDate.length,10) != 3)
{
return "";}
var D = parseInt(m_arrDate[this.get_CultureDateFormat().indexOf("D")],10) + '';if (D.length < m_mask[this.get_CultureDateFormat().indexOf("D")].length)
{
while (D.length < m_mask[this.get_CultureDateFormat().indexOf("D")].length)
{
D = "0" + D;}
}
m_arrDate[this.get_CultureDateFormat().indexOf("D")] = D;var M = parseInt(m_arrDate[this.get_CultureDateFormat().indexOf("M")],10) + '' ;if (M.length < m_mask[this.get_CultureDateFormat().indexOf("M")].length)
{
while (M.length < m_mask[this.get_CultureDateFormat().indexOf("M")].length)
{
M = "0" + M;}
}
m_arrDate[this.get_CultureDateFormat().indexOf("M")] = M;var Y = parseInt(m_arrDate[this.get_CultureDateFormat().indexOf("Y")],10) + '';while (Y.length < m_mask[this.get_CultureDateFormat().indexOf("Y")].length)
{
Y = "0" + Y;}
m_arrDate[this.get_CultureDateFormat().indexOf("Y")] = Y;return m_arrDate[0] + this.get_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);}
}
, _SetCancelEvent : function(evt) {
if (typeof(evt.returnValue) !== "undefined") {
evt.returnValue = false;}
if (typeof(evt.cancelBubble) !== "undefined") {
evt.cancelBubble = true;}
if (typeof(evt.preventDefault) !== "undefined") {
evt.preventDefault();}
if (typeof(evt.stopPropagation) !== "undefined") {
evt.stopPropagation();}
}
,_CaptureServerValidators : function()
{
var ret = true;var msg = this._ExternalMessageError;if (typeof(Page_Validators) != "undefined")
{
var ctrval = null;var first = true;for (i = 0;i < Page_Validators.length;i++) 
{
ctrval = Page_Validators[i];if (typeof(ctrval.enabled) == "undefined" || ctrval.enabled != false) 
{
if (ctrval.TargetValidator == this.get_element().id)
{
if (!ctrval.isvalid)
{
if (first)
{
first = false;msg = "";}
if (typeof(ctrval.errormessage) == "string")
{
if (msg != "")
{
msg += ", ";}
msg += ctrval.errormessage;}
ret = false;}
}
}
}
}
this._ExternalMessageError = msg;return ret;}
,_CaptureClientsValidators : function()
{
var ret = true;var msg = "";this._ExternalMessageError = msg;if (typeof(Page_Validators) != "undefined")
{
var ctrval = null;for (i = 0;i < Page_Validators.length;i++) 
{
ctrval = Page_Validators[i];if (typeof(ctrval.enabled) == "undefined" || ctrval.enabled != false) 
{
if (ctrval.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.evaluationfunction) == "string") 
{
var crtret;eval("crtret = " + ctrval.evaluationfunction + "(" + ctrval.id + ")");if (!crtret)
{
ret = false;if (typeof(ctrval.errormessage) == "string")
{
if (msg != "")
{
msg += ", ";}
msg += ctrval.errormessage;}
}
}
}
}
}
}
this._ExternalMessageError = msg;return ret;}
,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.TargetValidator == this.get_element().id && ctrval.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;}
}
return;}
this._CurrentMessageError = ctrval.innerHTML;ctrval.innerHTML = ctrval.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;}
} 
}
, _insertContent : function(value,curpos) 
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var masktext = wrapper.get_Value();masktext = masktext.substring(0,curpos) + value + masktext.substring(curpos+1);this._LogicTextMask = this._LogicTextMask.substring(0,curpos) + value + this._LogicTextMask.substring(curpos+1);wrapper.set_Value(masktext);} 
, _insertContentRight : function(value) 
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var masktext = wrapper.get_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;if (this._LogicLastInt != -1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
var arr_num = resttext.split(this.get_CultureDecimalPlaceholder());var arr_log = restlogi.split(this.get_CultureDecimalPlaceholder());for (i = 0 ;i < parseInt(arr_num[0].length,10) ;i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i))
{
masktext += this._PromptChar;this._LogicTextMask += this._LogicPrompt;}
else
{
masktext += arr_num[0].substring(i,i+1);this._LogicTextMask += arr_log[0].substring(i,i+1);}
}
if (arr_num.length = 2) 
{
masktext += this.get_CultureDecimalPlaceholder() + arr_num[1];this._LogicTextMask += this.get_CultureDecimalPlaceholder() + arr_log[1];}
posaux = this._getNextPosition(curpos);for (i = 0 ;i < parseInt(arr_num[0].length,10);i++) 
{
if (this._isValidMaskedEditPosition(curpos+1+i) && arr_log[0].substring(i,i+1) != this._LogicPrompt)
{
masktext = masktext.substring(0,posaux) + arr_num[0].substring(i,i+1) + masktext.substring(posaux+1);this._LogicTextMask = this._LogicTextMask.substring(0,posaux) + arr_log[0].substring(i,i+1) + this._LogicTextMask.substring(posaux+1);posaux = this._getNextPosition(posaux+1);}
}
}
else
{
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);}
} 
}
var dif = 0;if (this._LogicLastInt != -1 && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
dif = this._LogicLastPos - this._LogicLastInt+1;}
masktext = masktext.substring(0,this._LogicLastPos-dif) + value + masktext.substring(this._LogicLastPos-dif+1);this._LogicTextMask = this._LogicTextMask.substring(0,this._LogicLastPos-dif) + value + this._LogicTextMask.substring(this._LogicLastPos-dif+1);wrapper.set_Value(masktext);} 
, InsertAMPM : function(value)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var masktext = wrapper.get_Value();var ASymMask = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);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);wrapper.set_Value(masktext);}
, InsertSignal : function(value)
{
var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());var masktext = wrapper.get_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);}
wrapper.set_Value(masktext);}
, setSelectionRange : function(selectionStart, selectionEnd) 
{
input = this.get_element();if (input.setSelectionRange) 
{
input.setSelectionRange(selectionStart, selectionEnd);}
else if (input.createTextRange) 
{
var range = input.createTextRange();range.collapse(true);range.moveEnd('character', selectionEnd);range.moveStart('character', selectionStart);range.select();}
}
, _getLastEmptyPosition : function()
{
var pos = this._LogicLastPos;if (this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft && this._LogicLastInt != -1)
{
var curpos = this._getCurrentPosition();if (curpos <= this._LogicLastInt)
{
pos = this._LogicLastInt;}
}
while (pos >= 0 && this._LogicTextMask.substring(pos, pos+1) != this._LogicPrompt)
{
pos--;}
return pos;}
, _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 == "";}
var dummy = input.createTextRange();dummy.findText(String.fromCharCode(3));dummy.select();var wrapper = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(input);begin = wrapper.get_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()
{
if (this._MaskConv == "" && this._Mask != "")
{
this._convertMask();} 
var text = this._MaskConv;var i = 0;var masktext = "";var maskvld = "";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);maskvld += 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.get_CultureDatePlaceholder();maskvld += "/";this._LogicTextMask += this.get_CultureDatePlaceholder();}
else if (text.substring(i, i+1) == ":")
{
masktext += this.get_CultureTimePlaceholder();maskvld += ":";this._LogicTextMask += this.get_CultureTimePlaceholder();}
else if (text.substring(i, i+1) == ",")
{
masktext += this.get_CultureThousandsPlaceholder();maskvld += ".";this._LogicTextMask += this.get_CultureThousandsPlaceholder();}
else if (text.substring(i, i+1) == ".")
{
masktext += this.get_CultureDecimalPlaceholder();maskvld += ",";this._LogicTextMask += this.get_CultureDecimalPlaceholder();}
}
else
{
masktext += text.substring(i,i+1);maskvld += text.substring(i,i+1);this._LogicTextMask += text.substring(i,i+1);}
}
} 
else 
{
if (flagescape == true)
{
flagescape = false;masktext += text.substring(i,i+1);maskvld += text.substring(i,i+1);this._LogicTextMask += this._LogicEscape;}
else
{
this._QtdValidInput ++;masktext += this._PromptChar;maskvld += text.substring(i,i+1);this._LogicTextMask += this._LogicPrompt;}
}
i++;}
this._LogicFirstPos = -1;this._LogicLastPos = -1;this._LogicLastInt = -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;}
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Number && this._InputDirection == AjaxControlToolkit.MaskedEditInputDirections.RightToLeft)
{
if (this._LogicMask.substring(i,i+1) == this.get_CultureDecimalPlaceholder())
{
this._LogicLastInt = i;}
}
}
this._maskvalid = maskvld.substring(this._LogicFirstPos,this._LogicLastPos+1);this._EmptyMask = masktext;}
, _getClearMask : function(masktext)
{
var i = 0;var clearmask = "";var qtdok = 0;var includedec = false;while (i < parseInt(this._LogicTextMask.length,10)) 
{
if (qtdok < this._QtdValidInput)
{
if (this._isValidMaskedEditPosition(i) && this._LogicTextMask.substring(i, i+1) != this._LogicPrompt)
{
if (clearmask == "" && includedec)
{
clearmask += "0" + this.get_CultureDecimalPlaceholder();includedec = false;}
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.get_CultureDatePlaceholder() && (this._MaskType == AjaxControlToolkit.MaskedEditType.Date || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime))
{
clearmask += (clearmask == "")?"":this.get_CultureDatePlaceholder();}
else if (this._LogicTextMask.substring(i,i+1) == this.get_CultureTimePlaceholder() && (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime))
{
clearmask += (clearmask == "")?"":this.get_CultureTimePlaceholder();}
else if (this._LogicTextMask.substring(i,i+1) == " " && this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
clearmask += (clearmask == "")?"":" ";}
else if (this._LogicTextMask.substring(i,i+1) == this.get_CultureThousandsPlaceholder() && this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
clearmask += (clearmask == "")?"":this.get_CultureThousandsPlaceholder();}
else if (this._LogicTextMask.substring(i,i+1) == this.get_CultureDecimalPlaceholder() && this._MaskType == AjaxControlToolkit.MaskedEditType.Number)
{
clearmask += (clearmask == "")?"":this.get_CultureDecimalPlaceholder();if (clearmask == "")
{
includedec = true;}
}
}
}
i++;}
if (this._LogicSymbol != "" && clearmask != "")
{
if (this._MaskType == AjaxControlToolkit.MaskedEditType.Time || this._MaskType == AjaxControlToolkit.MaskedEditType.DateTime)
{
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._MaskType == AjaxControlToolkit.MaskedEditType.DateTime) && this._AcceptAmPm)
{
var ASymMask = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);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.get_CultureCurrencySymbolPlaceholder().length,10) ;i++) 
{
if (this._CharsEditMask.indexOf(this.get_CultureCurrencySymbolPlaceholder().substring(i, i+1)) == -1)
{
SymMask += this.get_CultureCurrencySymbolPlaceholder().substring(i, i+1);}
else
{
SymMask += this._charEscape + this.get_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.get_CultureCurrencySymbolPlaceholder().length,10) ;i++) 
{
if (this._CharsEditMask.indexOf(this.get_CultureCurrencySymbolPlaceholder().substring(i, i+1)) == -1)
{
SymMask += this.get_CultureCurrencySymbolPlaceholder().substring(i, i+1);}
else
{
SymMask += this._charEscape + this.get_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() 
{
var ret = this._CultureDateFormat;switch (this.get_UserDateFormat()) 
{
case AjaxControlToolkit.MaskedEditUserDateFormat.DayMonthYear:
{
ret = "DMY";break;}
case AjaxControlToolkit.MaskedEditUserDateFormat.DayYearMonth:
{
ret = "DYM";break;}
case AjaxControlToolkit.MaskedEditUserDateFormat.MonthDayYear:
{
ret = "MDY";break;}
case AjaxControlToolkit.MaskedEditUserDateFormat.MonthYearDay:
{
ret = "MYD";break;}
case AjaxControlToolkit.MaskedEditUserDateFormat.YearDayMonth:
{
ret = "YDM";break;}
case AjaxControlToolkit.MaskedEditUserDateFormat.YearMonthDay:
{
ret = "YMD";break;}
}
return ret;} 
, 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() 
{
var value = this._CultureAMPMPlaceholder;if (value.split(this._AMPMPlaceholderSeparator).length != 2 || value == this._AMPMPlaceholderSeparator) 
{
value = "";}
if (this.get_UserTimeFormat() == AjaxControlToolkit.MaskedEditUserTimeFormat.TwentyFourHour)
{
value = "";}
return value;} 
, set_CultureAMPMPlaceholder : function(value) 
{
this._CultureAMPMPlaceholder = value;this.raisePropertyChanged('CultureAMPMPlaceholder');} 
, get_CultureFirstLettersAMPM : function() 
{
if (this.get_CultureAMPMPlaceholder() != "")
{
var ASymMask = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);return (ASymMask[0].substring(0,1) + ASymMask[1].substring(0,1));}
return "";}
, get_CultureFirstLetterAM : function() 
{
if (this.get_CultureAMPMPlaceholder() != "")
{
var ASymMask = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);return ASymMask[0].substring(0,1);}
return "";} 
, get_CultureFirstLetterPM : function() 
{
if (this.get_CultureAMPMPlaceholder() != "")
{
var ASymMask = this.get_CultureAMPMPlaceholder().split(this._AMPMPlaceholderSeparator);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');} 
, get_ClearTextOnInvalid : function()
{
return this._ClearTextOnInvalid;}
, set_ClearTextOnInvalid : function(value)
{
if(this._ClearTextOnInvalid !== value)
{
this._ClearTextOnInvalid = value;this.raisePropertyChanged('ClearTextOnInvalid');}
}
, get_ClipboardText : function() 
{
return this._ClipboardText;} 
, set_ClipboardText : function(value) 
{
this._ClipboardText = value;this.raisePropertyChanged('ClipboardText');} 
, get_ClipboardEnabled : function()
{
return this._AllowCopyPaste;}
, set_ClipboardEnabled : function(value)
{
this._AllowCopyPaste = value;this.raisePropertyChanged('ClipboardEnabled');}
, get_ErrorTooltipEnabled : function()
{
return this._ShowMessageErrorFloat;}
, set_ErrorTooltipEnabled : function(value)
{
this._ShowMessageErrorFloat = value;this.raisePropertyChanged('ErrorTooltipEnabled');}
, get_ErrorTooltipCssClass : function()
{
return this._CssMessageErrorFloat;}
, set_ErrorTooltipCssClass : function(value)
{
this._CssMessageErrorFloat = value;this.raisePropertyChanged('ErrorTooltipCssClass');}
, get_UserDateFormat : function() 
{
return this._UserDateFormat;} 
, set_UserDateFormat : function(value) 
{
this._UserDateFormat = value;this.raisePropertyChanged('UserDateFormat');}
, get_UserTimeFormat : function() 
{
return this._UserTimeFormat;} 
, set_UserTimeFormat : function(value) 
{
this._UserTimeFormat = value;this.raisePropertyChanged('UserTimeFormat');}
}
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.MaskedEditUserDateFormat = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.MaskedEditUserTimeFormat = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.MaskedEditType.prototype = {
None: 0,
Date: 1,
Number: 2,
Time: 3,
DateTime: 4
}
AjaxControlToolkit.MaskedEditInputDirections.prototype = {
LeftToRight: 0,
RightToLeft: 1
}
AjaxControlToolkit.MaskedEditShowSymbol.prototype = {
None: 0,
Left: 1,
Right: 2
}
AjaxControlToolkit.MaskedEditUserDateFormat.prototype = {
None: 0,
DayMonthYear: 1,
DayYearMonth: 2,
MonthDayYear: 3,
MonthYearDay: 4,
YearDayMonth: 5,
YearMonthDay: 6
}
AjaxControlToolkit.MaskedEditUserTimeFormat.prototype = {
None: 0,
TwentyFourHour: 1
}
AjaxControlToolkit.MaskedEditType.registerEnum('AjaxControlToolkit.MaskedEditType');AjaxControlToolkit.MaskedEditInputDirections.registerEnum('AjaxControlToolkit.MaskedEditInputDirections');AjaxControlToolkit.MaskedEditShowSymbol.registerEnum('AjaxControlToolkit.MaskedEditShowSymbol');AjaxControlToolkit.MaskedEditUserDateFormat.registerEnum('AjaxControlToolkit.MaskedEditUserDateFormat');AjaxControlToolkit.MaskedEditUserTimeFormat.registerEnum('AjaxControlToolkit.MaskedEditUserTimeFormat');
function MaskedEditSetMessage(value,msg,txt)
{
value.errormessage = msg;if (txt == "")
{
value.text = msg;}
else
{
value.text = txt;}
value.innerHTML = value.text;}
function MaskedEditMessageShow(value,IsValid)
{
if (typeof(value.display) == "string") 
{ 
if (value.display == "None") {
return;}
if (value.display == "Dynamic") {
value.style.display = IsValid ? "none" : "inline";return;}
}
value.style.visibility = IsValid ? "hidden" : "visible";}
function MaskedEditSetCssClass(value,Css)
{
var target = $get(value.TargetValidator);Sys.UI.DomElement.removeCssClass(target,value.InvalidValueCssClass);Sys.UI.DomElement.removeCssClass(target,value.CssBlurNegative);Sys.UI.DomElement.removeCssClass(target,value.CssFocus);Sys.UI.DomElement.removeCssClass(target,value.CssFocusNegative);if (Css != "")
{
Sys.UI.DomElement.addCssClass(target,Css);}
}
function MaskedEditValidatorDateTime(value)
{
MaskedEditSetMessage(value,"","");MaskedEditSetCssClass(value,"");MaskedEditMessageShow(value,true);if (value.IsMaskedEdit == "false")
{
return true;}
var target = $get(value.TargetValidator);if (value.ValidEmpty == "false")
{
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == value.InitialValue)
{
MaskedEditSetMessage(value,value.EmptyValueMessage,value.EmptyValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == "")
{
return true;}
var ret = true;var mask = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value();if (value.ValidationExpression != "" )
{
var rx = new RegExp(value.ValidationExpression);var matches = rx.exec(mask);ret = (matches != null && mask == matches[0]);if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
var PartDate = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value().split(" ")[0];var PartTime = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value().split(" ")[1];if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value().split(" ").length == 3)
{
PartTime += " " + AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value().split(" ")[2];}
var MinVlDt = "";var MinVlTm = "";if (value.MinimumValue != "")
{
MinVlDt = value.MinimumValue.split(" ")[0];MinVlTm = value.MinimumValue.split(" ")[1];}
var MaxVlDt = "";var MaxVlTm = "";if (value.MaximumValue != "")
{
MaxVlDt = value.MaximumValue.split(" ")[0];MaxVlTm = value.MaximumValue.split(" ")[1];}
ret = MaskedEditValidatorPartDate(value,PartDate,MinVlDt,MaxVlDt);if (ret)
{
ret = MaskedEditValidatorPartTime(value,PartTime,MinVlTm,MaxVlTm);}
if (ret && value.ClientValidationFunction != "")
{
var args = { Value:mask, IsValid:true };eval(value.ClientValidationFunction + "(value, args);");ret = args.IsValid;if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (!ret)
{
MaskedEditMessageShow(value,ret);}
return ret;}
function MaskedEditValidatorPartTime(value,mask,MinVl,MaxVl)
{
var ret = true;var AttibTmSep = value.TimeSeparator;var AttibTmSyb = value.AmPmSymbol;var SybTm = AttibTmSyb.split(";");var tm = AttibTmSyb.replace(";","|");var reg1 = "^(^([0][0-9]|[1][0-2])"+ AttibTmSep + "([0-5][0-9])" + AttibTmSep + "([0-5][0-9])\\s("+tm+")$)|(^([0][0-9]|[1][0-2])" + AttibTmSep + "([0-5][0-9])\\s("+tm+")$)$";var reg2 = "^(^([0-1][0-9]|[2][0-3])" + AttibTmSep + "([0-5][0-9])" + AttibTmSep + "([0-5][0-9])$)|(^([0-1][0-9]|[2][0-3])" + AttibTmSep + "([0-5][0-9])$)$";var H=-1;var M=-1;var S=-1;var aux = "";var m_arrValue = mask.split(AttibTmSep);var regex1 = new RegExp(reg1);var matches1 = regex1.exec(mask);var regex2 = new RegExp(reg2);var matches2 = regex2.exec(mask);if (matches1 && (matches1[0] == mask))
{
aux = mask.substring(mask.length-2).substring(0,1);H = parseInt(m_arrValue[0],10);if (aux.toUpperCase() == SybTm[1].substring(0,1).toUpperCase())
{
H += 12;if (H == 24)
{
H = 0;}
}
M = parseInt(m_arrValue[1],10);S = (value.length > 9?parseInt(m_arrValue[2].substring(0,2),10):0);}
else if (matches2 && (matches2[0] == mask))
{
H = parseInt(m_arrValue[0],10);M = parseInt(m_arrValue[1],10);S = (mask.length > 5?parseInt(m_arrValue[2],10):0);}
if (H==-1 || M==-1 || S==-1)
{
ret = false;}
if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
if(ret && (MaxVl != "" || MinVl != ""))
{
var Hr;var Mr;var Sr;var m_arr;if (MinVl != "" )
{
Hr=-1;Mr=-1;Sr=-1;m_arr = MinVl.split(AttibTmSep);matches1 = regex1.exec(MinVl);matches2 = regex2.exec(MinVl);if (matches1 && (matches1[0] == MinVl))
{
aux = MinVl.substring(MinVl.length-2).substring(0,1);Hr = parseInt(m_arr[0],10);if (aux.toUpperCase() == SybTm[1].substring(0,1).toUpperCase())
{
Hr += 12;if (Hr == 24)
{
Hr = 0;}
}
Mr = parseInt(m_arr[1],10);Sr = (MinVl.length > 9?parseInt(m_arr[2].substring(0,2),10):0);}
else if (matches2 && (matches2[0] == MinVl))
{
Hr = parseInt(m_arr[0],10);Mr = parseInt(m_arr[1],10);Sr = (MinVl.length > 5?parseInt(m_arr[2],10):0);}
ret = (H > Hr || (H == Hr && M > Mr) || (H == Hr && M == Mr && S >= Sr));if (!ret)
{
MaskedEditSetMessage(value,value.MinimumValueMessage,value.MinimumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (MaxVl != "" && ret)
{
Hr=-1;Mr=-1;Sr=-1;m_arr = MaxVl.split(AttibTmSep);matches1 = regex1.exec(MaxVl);matches2 = regex2.exec(MaxVl);if (matches1 && (matches1[0] == MaxVl))
{
aux = MaxVl.substring(MaxVl.length-2).substring(0,1);Hr = parseInt(m_arr[0],10);if (aux.toUpperCase() == SybTm[1].substring(0,1).toUpperCase())
{
Hr += 12;if (Hr == 24)
{
Hr = 0;}
}
Mr = parseInt(m_arr[1],10);Sr = (MaxVl.length > 9?parseInt(m_arr[2].substring(0,2),10):0);}
else if (matches2 && (matches2[0] == MaxVl))
{
Hr = parseInt(m_arr[0],10);Mr = parseInt(m_arr[1],10);Sr = (MaxVl.length > 5?parseInt(m_arr[2],10):0);}
ret = (H < Hr || (H == Hr && M < Mr) || (H == Hr && M == Mr && S <= Sr));if (!ret)
{
MaskedEditSetMessage(value,value.MaximumValueMessage,value.MaximumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
return ret;}
function MaskedEditValidatorPartDate(value,mask,MinVl,MaxVl)
{
var ret = true;var AttibDtFmt = value.DateFormat;var AttibDtSep = value.DateSeparator;var m_arrDate = mask.split(AttibDtSep);if (parseInt(m_arrDate.length,10) != 3)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);ret = false;}
if (AttibDtFmt.indexOf("D") == -1 || AttibDtFmt.indexOf("M") == -1 || AttibDtFmt.indexOf("Y") == -1)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);ret = false;}
var D = -1;var M = -1;var Y = -1;if (ret)
{
D = parseInt(m_arrDate[AttibDtFmt.indexOf("D")],10);M = parseInt(m_arrDate[AttibDtFmt.indexOf("M")],10);Y = parseInt(m_arrDate[AttibDtFmt.indexOf("Y")],10)
if (Y < 100)
{
Y = parseInt(Y + value.Century,10);}
else if (Y < 999)
{
Y += parseInt(value.Century.substring(0,1) + Y,10)
}
ret = (D>0 && M>0 && Y>0 && (D<=[,31,28,31,30,31,30,31,31,30,31,30,31][M] || D==29 && M==2 && Y%4==0 && (Y%100>0 || Y%400==0)));}
if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
if(ret && (MaxVl != "" || MinVl != ""))
{
var m_arr;var Dr=-1;var Mr=-1;var Yr=-1;if (MinVl != "")
{
m_arr = MinVl.split(AttibDtSep);Dr = parseInt(m_arr[AttibDtFmt.indexOf("D")],10);Mr = parseInt(m_arr[AttibDtFmt.indexOf("M")],10);Yr = parseInt(m_arr[AttibDtFmt.indexOf("Y")],10);if (Yr < 100)
{
Yr = parseInt(Yr + value.Century,10);}
else if (Yr < 999)
{
Yr += parseInt(value.Century.substring(0,1) + Yr,10)
}
ret = (Dr>0 && Mr>0 && Yr>0 && Y > Yr || (Y == Yr && M > Mr) || (Y == Yr && M == Mr && D >= Dr));if (!ret)
{
MaskedEditSetMessage(value,value.MinimumValueMessage,value.MinimumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (ret && MaxVl != "")
{
m_arr = MaxVl.split(AttibDtSep);Dr = parseInt(m_arr[AttibDtFmt.indexOf("D")],10);Mr = parseInt(m_arr[AttibDtFmt.indexOf("M")],10);Yr = parseInt(m_arr[AttibDtFmt.indexOf("Y")],10);if (Yr < 100)
{
Yr = parseInt(Yr + value.Century,10);}
else if (Yr < 999)
{
Yr += parseInt(value.Century.substring(0,1) + Yr,10)
}
ret = (Dr>0 && Mr>0 && Yr>0 && Y < Yr || (Y == Yr && M < Mr) || (Y == Yr && M == Mr && D <= Dr));if (!ret)
{
MaskedEditSetMessage(value,value.MaximumValueMessage,value.MaximumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
return ret;}
function MaskedEditValidatorDate(value)
{
MaskedEditSetMessage(value,"","");MaskedEditSetCssClass(value,"");MaskedEditMessageShow(value,true);if (value.IsMaskedEdit == "false")
{
return true;}
var target = $get(value.TargetValidator);if (value.ValidEmpty == "false")
{
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == value.InitialValue)
{
MaskedEditSetMessage(value,value.EmptyValueMessage,value.EmptyValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == "")
{
return true;}
var ret = true;var mask = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value();if (value.ValidationExpression != "" )
{
var rx = new RegExp(value.ValidationExpression);var matches = rx.exec(mask);ret = (matches != null && mask == matches[0]);if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
ret = MaskedEditValidatorPartDate(value,mask,value.MinimumValue,value.MaximumValue);if (ret && value.ClientValidationFunction != "")
{
var args = { Value:mask, IsValid:true };eval(value.ClientValidationFunction + "(value, args);");ret = args.IsValid;if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (!ret)
{
MaskedEditMessageShow(value,ret);}
return ret;}
function MaskedEditValidatorTime(value)
{
MaskedEditSetMessage(value,"","");MaskedEditSetCssClass(value,"");MaskedEditMessageShow(value,true);if (value.IsMaskedEdit == "false")
{
return true;}
var target = $get(value.TargetValidator);if (value.ValidEmpty == "false")
{
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == value.InitialValue)
{
MaskedEditSetMessage(value,value.EmptyValueMessage,value.EmptyValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == "")
{
return true;}
var ret = true;var mask = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value();if (value.ValidationExpression != "" )
{
var rx = new RegExp(value.ValidationExpression);var matches = rx.exec(mask);ret = (matches != null && mask == matches[0]);if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
ret = MaskedEditValidatorPartTime(value,mask,value.MinimumValue,value.MaximumValue);if (ret && value.ClientValidationFunction != "")
{
var args = { Value:mask, IsValid:true };eval(value.ClientValidationFunction + "(value, args);");ret = args.IsValid;if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (!ret)
{
MaskedEditMessageShow(value,ret);}
return ret;}
function MaskedEditValidatorNumber(value)
{
MaskedEditSetMessage(value,"","");MaskedEditSetCssClass(value,"");MaskedEditMessageShow(value,true);if (value.IsMaskedEdit == "false")
{
return true;}
var target = $get(value.TargetValidator);if (value.ValidEmpty == "false")
{
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == value.InitialValue)
{
MaskedEditSetMessage(value,value.EmptyValueMessage,value.EmptyValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == "")
{
return true;}
var ret = true;var AttibThSep = value.Thousands;var AttibDcSep = value.Decimal;var AttibCuSyb = value.Money;var AttibLastPos = value.LastMaskPosition + AttibCuSyb.length + 1;var mask = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value();if (value.ValidationExpression != "" )
{
var rx = new RegExp(value.ValidationExpression);var matches = rx.exec(mask);ret = (matches != null && mask == matches[0]);if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
ret = false;var cleanInput = null;var exp = null;var m = null;var num = null;var Compnum = null;mask = mask.replace(new RegExp("(\\" + AttibThSep + ")", "g"), "");mask = mask.replace(new RegExp("(\\" + AttibCuSyb + ")", "g"), "");m = mask.match(/^\s*(\S+(\s+\S+)*)\s*$/);if (m != null)
{
mask = m[1];}
exp = /^\s*[-\+]?\d+\s*$/;if (mask.match(exp) != null) 
{
num = parseInt(mask, 10);ret = (num == (isNaN(num) ? null : num));}
if (ret)
{
if (value.MaximumValue != "")
{
Compnum = parseInt(value.MaximumValue, 10);if (Compnum == (isNaN(Compnum) ? null : Compnum))
{
if (num > Compnum)
{
ret = false;MaskedEditSetMessage(value,value.MaximumValueMessage,value.MaximumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
if (ret && value.MinimumValue != "")
{
Compnum = parseInt(value.MinimumValue, 10);if (Compnum == (isNaN(Compnum) ? null : Compnum))
{
if (num < Compnum)
{
ret = false;MaskedEditSetMessage(value,value.MinimumValueMessage,value.MinimumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
}
else
{
exp = new RegExp("^\\s*([-\\+])?(\\d+)?(\\" + AttibDcSep + "(\\d+))?\\s*$");m = mask.match(exp);if (m != null)
{
cleanInput = null;if (typeof(m[1]) != "undefined")
{
cleanInput = m[1] + (m[2].length>0 ? m[2] : "0") + "." + m[4];}
else
{
cleanInput = (m[2].length>0 ? m[2] : "0") + "." + m[4];}
num = parseFloat(cleanInput);ret = (num == (isNaN(num) ? null : num));}
if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
if (ret)
{
if (value.MaximumValue != "")
{
Compnum = parseFloat(value.MaximumValue);if (Compnum == (isNaN(Compnum) ? null : Compnum))
{
if (num > Compnum)
{
ret = false;MaskedEditSetMessage(value,value.MaximumValueMessage,value.MaximumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
if (ret && value.MinimumValue != "")
{
Compnum = parseFloat(value.MinimumValue);if (Compnum == (isNaN(Compnum) ? null : Compnum))
{
if (num < Compnum)
{
ret = false;MaskedEditSetMessage(value,value.MinimumValueMessage,value.MinimumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
}
}
if (ret && value.ClientValidationFunction != "")
{
var args = { Value:mask, IsValid:true };eval(value.ClientValidationFunction + "(value, args);");ret = args.IsValid;if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (!ret)
{
MaskedEditMessageShow(value,ret);}
return ret;}
function MaskedEditValidatorNone(value)
{
MaskedEditSetMessage(value,"","");MaskedEditSetCssClass(value,"");MaskedEditMessageShow(value,true);if (value.IsMaskedEdit == "false")
{
return true;}
var target = $get(value.TargetValidator);if (value.ValidEmpty == "false")
{
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == value.InitialValue)
{
MaskedEditSetMessage(value,value.EmptyValueMessage,value.EmptyValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
if (AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value() == "")
{
return true;}
var ret = true;var mask = AjaxControlToolkit.TextBoxWrapper.get_Wrapper(target).get_Value();if (value.ValidationExpression != "" )
{
var rx = new RegExp(value.ValidationExpression);var matches = rx.exec(mask);ret = (matches != null && mask == matches[0]);if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);MaskedEditMessageShow(value,false);return false;}
}
var exp = /^\d+\s*$/;var num = null;if (value.MaximumValue != "")
{
if (value.MaximumValue.match(exp) != null) 
{
num = parseInt(value.MaximumValue, 10);if (num == (isNaN(num) ? null : num))
{
if (mask.length > num)
{
ret = false;MaskedEditSetMessage(value,value.MaximumValueMessage,value.MaximumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
}
if (ret && value.MinimumValue != "")
{
if (value.MinimumValue.match(exp) != null) 
{
num = parseInt(value.MinimumValue, 10);if (num == (isNaN(num) ? null : num))
{
if (mask.length < num)
{
ret = false;MaskedEditSetMessage(value,value.MinimumValueMessage,value.MinimumValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
}
}
if (ret && value.ClientValidationFunction != "")
{
var args = { Value:mask, IsValid:true };eval(value.ClientValidationFunction + "(value, args);");ret = args.IsValid;if (!ret)
{
MaskedEditSetMessage(value,value.InvalidValueMessage,value.InvalidValueText);MaskedEditSetCssClass(value,value.InvalidValueCssClass);}
}
if (!ret)
{
MaskedEditMessageShow(value,ret);}
return ret;}

Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.AutoCompleteBehavior = function(element) {
AjaxControlToolkit.AutoCompleteBehavior.initializeBase(this, [element]);this._servicePath = null;this._serviceMethod = null;this._contextKey = null;this._useContextKey = false;this._minimumPrefixLength = 3;this._completionSetCount = 10;this._completionInterval = 1000;this._completionListElementID = null;this._completionListElement = null;this._textColor = 'windowtext';this._textBackground = 'window';this._popupBehavior = null;this._popupBehaviorHiddenHandler = null;this._onShowJson = null;this._onHideJson = null;this._timer = null;this._cache = null;this._currentPrefix = null;this._selectIndex = -1;this._focusHandler = null;this._blurHandler = null;this._bodyClickHandler = null;this._completionListBlurHandler = null;this._keyDownHandler = null;this._mouseDownHandler = null;this._mouseUpHandler = null;this._mouseOverHandler = null;this._tickHandler = null;this._enableCaching = true;this._flyoutHasFocus = false;this._textBoxHasFocus = false;this._completionListCssClass = null;this._completionListItemCssClass = null;this._highlightedItemCssClass = null;this._delimiterCharacters = null;this._firstRowSelected = false;}
AjaxControlToolkit.AutoCompleteBehavior.prototype = {
initialize: function() {
AjaxControlToolkit.AutoCompleteBehavior.callBaseMethod(this, 'initialize');$common.prepareHiddenElementForATDeviceUpdate();this._popupBehaviorHiddenHandler = Function.createDelegate(this, this._popupHidden);this._tickHandler = Function.createDelegate(this, this._onTimerTick);this._focusHandler = Function.createDelegate(this, this._onGotFocus);this._blurHandler = Function.createDelegate(this, this._onLostFocus);this._keyDownHandler = Function.createDelegate(this, this._onKeyDown);this._mouseDownHandler = Function.createDelegate(this, this._onListMouseDown);this._mouseUpHandler = Function.createDelegate(this, this._onListMouseUp);this._mouseOverHandler = Function.createDelegate(this, this._onListMouseOver);this._completionListBlurHandler = Function.createDelegate(this, this._onCompletionListBlur);this._bodyClickHandler = Function.createDelegate(this, this._onCompletionListBlur);this._timer = new Sys.Timer();this.initializeTimer(this._timer);var element = this.get_element();this.initializeTextBox(element);if(this._completionListElementID !== null)
this._completionListElement = $get(this._completionListElementID);if (this._completionListElement == null ) {
this._completionListElement = document.createElement('ul');this._completionListElement.id = this.get_id() + '_completionListElem';if (Sys.Browser.agent === Sys.Browser.Safari) {
document.body.appendChild(this._completionListElement);} else {
element.parentNode.insertBefore(this._completionListElement, element.nextSibling);}
}
this.initializeCompletionList(this._completionListElement);this._popupBehavior = $create(AjaxControlToolkit.PopupBehavior, 
{ 'id':this.get_id()+'PopupBehavior', 'parentElement':element, "positioningMode": AjaxControlToolkit.PositioningMode.BottomLeft }, null, null, this._completionListElement);this._popupBehavior.add_hidden(this._popupBehaviorHiddenHandler);if (this._onShowJson) {
this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._popupBehavior.set_onHide(this._onHideJson);}
},
dispose: function() {
this._onShowJson = null;this._onHideJson = null;if (this._popupBehavior) {
if (this._popupBehaviorHiddenHandler) {
this._popupBehavior.remove_hidden(this._popupBehaviorHiddenHandler);}
this._popupBehavior.dispose();this._popupBehavior = null;}
if (this._timer) { 
this._timer.dispose();this._timer = null;}
var element = this.get_element();if (element) {
$removeHandler(element, "focus", this._focusHandler);$removeHandler(element, "blur", this._blurHandler);$removeHandler(element, "keydown", this._keyDownHandler);$removeHandler(this._completionListElement, 'blur', this._completionListBlurHandler);$removeHandler(this._completionListElement, 'mousedown', this._mouseDownHandler);$removeHandler(this._completionListElement, 'mouseup', this._mouseUpHandler);$removeHandler(this._completionListElement, 'mouseover', this._mouseOverHandler);}
if (this._bodyClickHandler) {
$removeHandler(document.body, 'click', this._bodyClickHandler);this._bodyClickHandler = null;}
this._popupBehaviorHiddenHandler = null;this._tickHandler = null;this._focusHandler = null;this._blurHandler = null;this._keyDownHandler = null;this._completionListBlurHandler = null;this._mouseDownHandler = null;this._mouseUpHandler = null;this._mouseOverHandler = null;AjaxControlToolkit.AutoCompleteBehavior.callBaseMethod(this, 'dispose');},
initializeTimer: function(timer) {
timer.set_interval(this._completionInterval);timer.add_tick(this._tickHandler);},
initializeTextBox: function(element) {
element.autocomplete = "off";$addHandler(element, "focus", this._focusHandler);$addHandler(element, "blur", this._blurHandler);$addHandler(element, "keydown", this._keyDownHandler);},
initializeCompletionList: function(element) {
if(this._completionListCssClass) {
Sys.UI.DomElement.addCssClass(element, this._completionListCssClass);} else {
var completionListStyle = element.style;completionListStyle.textAlign = 'left';completionListStyle.visibility = 'hidden';completionListStyle.cursor = 'default';completionListStyle.listStyle = 'none';completionListStyle.padding = '0px';completionListStyle.margin = '0px! important';if (Sys.Browser.agent === Sys.Browser.Safari) {
completionListStyle.border = 'solid 1px gray';completionListStyle.backgroundColor = 'white';completionListStyle.color = 'black';} else {
completionListStyle.border = 'solid 1px buttonshadow';completionListStyle.backgroundColor = this._textBackground;completionListStyle.color = this._textColor;}
}
$addHandler(element, "mousedown", this._mouseDownHandler);$addHandler(element, "mouseup", this._mouseUpHandler);$addHandler(element, "mouseover", this._mouseOverHandler);$addHandler(element, "blur", this._completionListBlurHandler);$addHandler(document.body, 'click', this._bodyClickHandler);},
_currentCompletionWord: function() {
var element = this.get_element();var elementValue = element.value;var word = elementValue;if (this.get_isMultiWord()) {
var startIndex = this._getCurrentWordStartIndex();var endIndex = this._getCurrentWordEndIndex(startIndex);if (endIndex <= startIndex) {
word = elementValue.substring(startIndex);} else {
word = elementValue.substring(startIndex, endIndex);}
}
return word;},
_getCursorIndex: function() {
return this.get_element().selectionStart;},
_getCurrentWordStartIndex: function() {
var element = this.get_element();var elementText = element.value.substring(0,this._getCursorIndex());var index = 0;var lastIndex = -1;for (var i = 0;i < this._delimiterCharacters.length;++i) {
var curIndex = elementText.lastIndexOf(this._delimiterCharacters.charAt(i));if (curIndex > lastIndex) {
lastIndex = curIndex;}
} 
index = lastIndex;if (index >= this._getCursorIndex()) {
index = 0;}
return index < 0 ? 0 : index + 1;},
_getCurrentWordEndIndex: function(wordStartIndex) {
var element = this.get_element();var elementText = element.value.substring(wordStartIndex);var index = 0;for (var i = 0;i < this._delimiterCharacters.length;++i) {
var curIndex = elementText.indexOf(this._delimiterCharacters.charAt(i));if (curIndex > 0 && (curIndex < index || index == 0)) {
index = curIndex;}
}
return index <= 0 ? element.value.length : index + wordStartIndex;},
get_isMultiWord : function() {
return (this._delimiterCharacters != null) && (this._delimiterCharacters != '');},
_getTextWithInsertedWord: function(wordToInsert) {
var text = wordToInsert;var replaceIndex = 0;var element = this.get_element();var originalText = element.value;if (this.get_isMultiWord()) {
var startIndex = this._getCurrentWordStartIndex();var endIndex = this._getCurrentWordEndIndex(startIndex);var prefix = '';var suffix = '';if (startIndex > 0) {
prefix = originalText.substring(0, startIndex);}
if (endIndex > startIndex) {
suffix = originalText.substring(endIndex);}
text = prefix + wordToInsert + suffix;}
return text;},
_hideCompletionList: function() {
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()) {
return;}
this.hidePopup();},
showPopup : function() {
this._popupBehavior.show();this.raiseShown(Sys.EventArgs.Empty);},
hidePopup : function() {
if (this._popupBehavior) {
this._popupBehavior.hide();} else {
this._popupHidden();}
},
_popupHidden : function() {
this._completionListElement.innerHTML = '';this._selectIndex = -1;this._flyoutHasFocus = false;this.raiseHidden(Sys.EventArgs.Empty);},
_highlightItem: function(item) {
var children = this._completionListElement.childNodes;for (var i = 0;i < children.length;i++) {
var child = children[i];if (child._highlighted) {
if (this._completionListItemCssClass) {
Sys.UI.DomElement.removeCssClass(child, this._highlightedItemCssClass);Sys.UI.DomElement.addCssClass(child, this._completionListItemCssClass);} else {
if (Sys.Browser.agent === Sys.Browser.Safari) {
child.style.backgroundColor = 'white';child.style.color = 'black';} else {
child.style.backgroundColor = this._textBackground;child.style.color = this._textColor;}
}
this.raiseItemOut(new AjaxControlToolkit.AutoCompleteItemEventArgs(child, child.firstChild.nodeValue, child._value));}
}
if(this._highlightedItemCssClass) {
Sys.UI.DomElement.removeCssClass(item, this._completionListItemCssClass);Sys.UI.DomElement.addCssClass(item, this._highlightedItemCssClass);} else {
if (Sys.Browser.agent === Sys.Browser.Safari) {
item.style.backgroundColor = 'lemonchiffon';} else {
item.style.backgroundColor = 'highlight';item.style.color = 'highlighttext';}
}
item._highlighted = true;this.raiseItemOver(new AjaxControlToolkit.AutoCompleteItemEventArgs(item, item.firstChild.nodeValue, item._value));},
_onCompletionListBlur: function(ev) {
this._hideCompletionList();},
_onListMouseDown: function(ev) {
if (ev.target !== this._completionListElement) {
this._setText(ev.target);this._flyoutHasFocus = false;} else { 
this._flyoutHasFocus = true;}
},
_onListMouseUp: function(ev) {
this.get_element().focus();},
_onListMouseOver: function(ev) {
var item = ev.target;if(item !== this._completionListElement) {
var children = this._completionListElement.childNodes;for (var i = 0;i < children.length;++i) {
if (item === children[i]) {
this._highlightItem(item);this._selectIndex = i;break;} 
}
}
},
_onGotFocus: function(ev) {
this._textBoxHasFocus = true;if (this._flyoutHasFocus) {
this._hideCompletionList();}
this._timer.set_enabled(true);},
_onKeyDown: function(ev) {
var k = ev.keyCode ? ev.keyCode : ev.rawEvent.keyCode;if (k === Sys.UI.Key.esc) {
this._hideCompletionList();ev.preventDefault();}
else if (k === Sys.UI.Key.up) {
if (this._selectIndex > 0) {
this._selectIndex--;this._handleScroll(this._completionListElement.childNodes[this._selectIndex], this._selectIndex);this._highlightItem(this._completionListElement.childNodes[this._selectIndex]);ev.stopPropagation();ev.preventDefault();}
}
else if (k === Sys.UI.Key.down) {
if (this._selectIndex < (this._completionListElement.childNodes.length - 1)) {
this._selectIndex++;this._handleScroll(this._completionListElement.childNodes[this._selectIndex], this._selectIndex);this._highlightItem(this._completionListElement.childNodes[this._selectIndex]);ev.stopPropagation();ev.preventDefault();}
}
else if (k === Sys.UI.Key.enter) {
if (this._selectIndex !== -1) {
this._setText(this._completionListElement.childNodes[this._selectIndex]);ev.preventDefault();} else {
this.hidePopup();}
}
else if (k === Sys.UI.Key.tab) {
if (this._selectIndex !== -1) {
this._setText(this._completionListElement.childNodes[this._selectIndex]);}
}
else {
this._timer.set_enabled(true);}
},
_handleScroll : function(element, index) {
var flyout = this._completionListElement;var elemBounds = $common.getBounds(element);var numItems = this._completionListElement.childNodes.length;if (((elemBounds.height * index) - (flyout.clientHeight + flyout.scrollTop)) >= 0) {
flyout.scrollTop += (((elemBounds.height * index) - (flyout.clientHeight + flyout.scrollTop)) + elemBounds.height);}
if (((elemBounds.height * (numItems - (index + 1))) - (flyout.scrollHeight - flyout.scrollTop)) >= 0) {
flyout.scrollTop -= (((elemBounds.height * (numItems - (index + 1))) - (flyout.scrollHeight - flyout.scrollTop)) + elemBounds.height);} 
if (flyout.scrollTop % elemBounds.height !== 0) { 
if (((elemBounds.height * (index + 1)) - (flyout.clientHeight + flyout.scrollTop)) >= 0) { 
flyout.scrollTop -= (flyout.scrollTop % elemBounds.height);} else { 
flyout.scrollTop += (elemBounds.height - (flyout.scrollTop % elemBounds.height));}
} 
},
_handleFlyoutFocus : function() {
if(!this._textBoxHasFocus) { 
if (!this._flyoutHasFocus) { 
this._hideCompletionList();} else {
}
}
}, 
_onLostFocus: function() {
this._textBoxHasFocus = false;this._timer.set_enabled(false);window.setTimeout(Function.createDelegate(this, this._handleFlyoutFocus), 500);}, 
_onMethodComplete: function(result, context) {
this._update(context, result,  true);},
_onMethodFailed: function(err, response, context) {
},
_onTimerTick: function(sender, eventArgs) {
if (this._servicePath && this._serviceMethod) {
var text = this._currentCompletionWord();if (text.trim().length < this._minimumPrefixLength) {
this._currentPrefix = null;this._update('', null,  false);return;}
if ((this._currentPrefix !== text) || ((text == "") && (this._minimumPrefixLength == 0))) {
this._currentPrefix = text;if ((text != "") && this._cache && this._cache[text]) {
this._update(text, this._cache[text],  false);return;}
var eventArgs = new Sys.CancelEventArgs();this.raisePopulating(eventArgs);if (eventArgs.get_cancel()) {
return;}
var params = { prefixText : this._currentPrefix, count: this._completionSetCount };if (this._useContextKey) {
params.contextKey = this._contextKey;}
Sys.Net.WebServiceProxy.invoke(this.get_servicePath(), this.get_serviceMethod(), false, params,
Function.createDelegate(this, this._onMethodComplete),
Function.createDelegate(this, this._onMethodFailed),
text);$common.updateFormToRefreshATDeviceBuffer();}
}
},
_setText: function(item) {
var text = (item && item.firstChild) ? item.firstChild.nodeValue : null;this._timer.set_enabled(false);var element = this.get_element();var control = element.control;if (control && control.set_text) {
control.set_text(text);$common.tryFireEvent(control, "change");}
else {
element.value = text;$common.tryFireEvent(element, "change");}
this.raiseItemSelected(new AjaxControlToolkit.AutoCompleteItemEventArgs(item, text, item ? item._value : null));this._currentPrefix = this._currentCompletionWord();this._hideCompletionList();},
_update: function(prefixText, completionItems, cacheResults) {
if (cacheResults && this.get_enableCaching()) {
if (!this._cache) {
this._cache = {};}
this._cache[prefixText] = completionItems;}
if ((!this._textBoxHasFocus) || (prefixText != this._currentCompletionWord())) {
this._hideCompletionList();return;} 
if (completionItems && completionItems.length) {
this._completionListElement.innerHTML = '';this._selectIndex = -1;var _firstChild = null;var text = null;var value = null;for (var i = 0;i < completionItems.length;i++) {
var itemElement = null;if (this._completionListElementID) { 
itemElement = document.createElement('div');} else {
itemElement = document.createElement('li');}
if( _firstChild == null ){
_firstChild = itemElement;}
try {
var pair = Sys.Serialization.JavaScriptSerializer.deserialize('(' + completionItems[i] + ')');if (pair && pair.First) {
text = pair.First;value = pair.Second;} else {
text = pair;value = pair;} 
} catch (ex) {
text = completionItems[i];value = completionItems[i];}
itemElement.appendChild(document.createTextNode(this._getTextWithInsertedWord(text)));itemElement._value = value;itemElement.__item = '';if (this._completionListItemCssClass) {
Sys.UI.DomElement.addCssClass(itemElement, this._completionListItemCssClass);} else {
var itemElementStyle = itemElement.style;itemElementStyle.padding = '0px';itemElementStyle.textAlign = 'left';itemElementStyle.textOverflow = 'ellipsis';if (Sys.Browser.agent === Sys.Browser.Safari) {
itemElementStyle.backgroundColor = 'white';itemElementStyle.color = 'black';} else {
itemElementStyle.backgroundColor = this._textBackground;itemElementStyle.color = this._textColor;}
}
this._completionListElement.appendChild(itemElement);}
var elementBounds = $common.getBounds(this.get_element());this._completionListElement.style.width = Math.max(1, elementBounds.width - 2) + 'px';this._completionListElement.scrollTop = 0;this.raisePopulated(Sys.EventArgs.Empty);var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (!eventArgs.get_cancel()) {
this.showPopup();if (this._firstRowSelected && (_firstChild != null)) {
this._highlightItem( _firstChild );this._selectIndex = 0;}
} 
} else {
this._hideCompletionList();}
},
get_onShow : function() {
return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._popupBehavior) {
this._popupBehavior.onShow();}
},
get_onHide : function() {
return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._popupBehavior) {
this._popupBehavior.onHide();}
},
get_completionInterval: function() {
return this._completionInterval;},
set_completionInterval: function(value) {
if (this._completionInterval != value) {
this._completionInterval = value;this.raisePropertyChanged('completionInterval');}
},
get_completionList: function() {
return this._completionListElement;},
set_completionList: function(value) {
if (this._completionListElement != value) {
this._completionListElement = value;this.raisePropertyChanged('completionList');}
},
get_completionSetCount: function() {
return this._completionSetCount;},
set_completionSetCount: function(value) {
if (this._completionSetCount != value) {
this._completionSetCount = value;this.raisePropertyChanged('completionSetCount');}
},
get_minimumPrefixLength: function() {
return this._minimumPrefixLength;},
set_minimumPrefixLength: function(value) {
if (this._minimumPrefixLength != value) {
this._minimumPrefixLength = value;this.raisePropertyChanged('minimumPrefixLength');}
},
get_serviceMethod: function() {
return this._serviceMethod;},
set_serviceMethod: function(value) {
if (this._serviceMethod != value) {
this._serviceMethod = value;this.raisePropertyChanged('serviceMethod');}
},
get_servicePath: function() {
return this._servicePath;},
set_servicePath: function(value) {
if (this._servicePath != value) {
this._servicePath = value;this.raisePropertyChanged('servicePath');}
},
get_contextKey : function() {
return this._contextKey;},
set_contextKey : function(value) {
if (this._contextKey != value) {
this._contextKey = value;this.set_useContextKey(true);this.raisePropertyChanged('contextKey');}
},
get_useContextKey : function() {
return this._useContextKey;},
set_useContextKey : function(value) {
if (this._useContextKey != value) {
this._useContextKey = value;this.raisePropertyChanged('useContextKey');}
},
get_enableCaching: function() {
return this._enableCaching;},
set_enableCaching: function(value) {
if (this._enableCaching != value) {
this._enableCaching = value;this.raisePropertyChanged('enableCaching');}
},
get_completionListElementID: function() {
return this._completionListElementID;},
set_completionListElementID: function(value) {
if (this._completionListElementID != value) {
this._completionListElementID = value;this.raisePropertyChanged('completionListElementID');}
}, 
get_completionListCssClass : function() {
return this._completionListCssClass;},
set_completionListCssClass : function(value) {
if (this._completionListCssClass != value) {
this._completionListCssClass = value;this.raisePropertyChanged('completionListCssClass');}
}, 
get_completionListItemCssClass : function() {
return this._completionListItemCssClass;},
set_completionListItemCssClass : function(value) {
if (this._completionListItemCssClass != value) {
this._completionListItemCssClass = value;this.raisePropertyChanged('completionListItemCssClass');}
},
get_highlightedItemCssClass : function() {
return this._highlightedItemCssClass;},
set_highlightedItemCssClass : function(value) {
if(this._highlightedItemCssClass != value) {
this._highlightedItemCssClass = value;this.raisePropertyChanged('highlightedItemCssClass');}
},
get_delimiterCharacters: function() {
return this._delimiterCharacters;},
set_delimiterCharacters: function(value) {
if (this._delimiterCharacters != value) {
this._delimiterCharacters = value;this.raisePropertyChanged('delimiterCharacters');}
},
get_firstRowSelected:function() {
return this._firstRowSelected;},
set_firstRowSelected:function(value) {
if(this._firstRowSelected != value) {
this._firstRowSelected = value;this.raisePropertyChanged('firstRowSelected');}
},
add_populating : function(handler) {
this.get_events().addHandler('populating', handler);},
remove_populating : function(handler) {
this.get_events().removeHandler('populating', handler);},
raisePopulating : function(eventArgs) {
var handler = this.get_events().getHandler('populating');if (handler) {
handler(this, eventArgs);}
},
add_populated : function(handler) {
this.get_events().addHandler('populated', handler);},
remove_populated : function(handler) {
this.get_events().removeHandler('populated', handler);},
raisePopulated : function(eventArgs) {
var handler = this.get_events().getHandler('populated');if (handler) {
handler(this, eventArgs);}
},
add_showing : function(handler) {
this.get_events().addHandler('showing', handler);},
remove_showing : function(handler) {
this.get_events().removeHandler('showing', handler);},
raiseShowing : function(eventArgs) {
var handler = this.get_events().getHandler('showing');if (handler) {
handler(this, eventArgs);}
},
add_shown : function(handler) {
this.get_events().addHandler('shown', handler);},
remove_shown : function(handler) {
this.get_events().removeHandler('shown', handler);},
raiseShown : function(eventArgs) {
var handler = this.get_events().getHandler('shown');if (handler) {
handler(this, eventArgs);}
},
add_hiding : function(handler) {
this.get_events().addHandler('hiding', handler);},
remove_hiding : function(handler) {
this.get_events().removeHandler('hiding', handler);},
raiseHiding : function(eventArgs) {
var handler = this.get_events().getHandler('hiding');if (handler) {
handler(this, eventArgs);}
},
add_hidden : function(handler) {
this.get_events().addHandler('hidden', handler);},
remove_hidden : function(handler) {
this.get_events().removeHandler('hidden', handler);},
raiseHidden : function(eventArgs) {
var handler = this.get_events().getHandler('hidden');if (handler) {
handler(this, eventArgs);}
},
add_itemSelected : function(handler) {
this.get_events().addHandler('itemSelected', handler);},
remove_itemSelected : function(handler) {
this.get_events().removeHandler('itemSelected', handler);},
raiseItemSelected : function(eventArgs) {
var handler = this.get_events().getHandler('itemSelected');if (handler) {
handler(this, eventArgs);}
},
add_itemOver : function(handler) {
this.get_events().addHandler('itemOver', handler);},
remove_itemOver : function(handler) {
this.get_events().removeHandler('itemOver', handler);},
raiseItemOver : function(eventArgs) {
var handler = this.get_events().getHandler('itemOver');if (handler) {
handler(this, eventArgs);}
},
add_itemOut : function(handler) {
this.get_events().addHandler('itemOut', handler);},
remove_itemOut : function(handler) {
this.get_events().removeHandler('itemOut', handler);},
raiseItemOut : function(eventArgs) {
var handler = this.get_events().getHandler('itemOut');if (handler) {
handler(this, eventArgs);}
}
}
AjaxControlToolkit.AutoCompleteBehavior.registerClass('AjaxControlToolkit.AutoCompleteBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.AutoCompleteBehavior.descriptor = {
properties: [ {name: 'completionInterval', type: Number},
{name: 'completionList', isDomElement: true},
{name: 'completionListElementID', type: String},
{name: 'completionSetCount', type: Number},
{name: 'minimumPrefixLength', type: Number},
{name: 'serviceMethod', type: String},
{name: 'servicePath', type: String},
{name: 'enableCaching', type: Boolean} ]
}
AjaxControlToolkit.AutoCompleteItemEventArgs = function(item, text, value) {
AjaxControlToolkit.AutoCompleteItemEventArgs.initializeBase(this);this._item = item;this._text = text;this._value = (value !== undefined) ? value : null;}
AjaxControlToolkit.AutoCompleteItemEventArgs.prototype = {
get_item : function() {
return this._item;},
set_item : function(value) {
this._item = value;},
get_text : function() {
return this._text;},
set_text : function(value) {
this._text = value;},
get_value : function() {
return this._value;},
set_value : function(value) {
this._value = value;}
}
AjaxControlToolkit.AutoCompleteItemEventArgs.registerClass('AjaxControlToolkit.AutoCompleteItemEventArgs', Sys.EventArgs);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DeferredOperation = function(delay, context, callback) {
this._delay = delay;this._context = context;this._callback = callback;this._completeCallback = null;this._errorCallback = null;this._timer = null;this._callArgs = null;this._isComplete = false;this._completedSynchronously = false;this._asyncResult = null;this._exception = null;this._throwExceptions = true;this._oncomplete$delegate = Function.createDelegate(this, this._oncomplete);this.post = Function.createDelegate(this, this.post);}
AjaxControlToolkit.DeferredOperation.prototype = {
get_isPending : function() { 
return (this._timer != null);},
get_isComplete : function() { 
return this._isComplete;},
get_completedSynchronously : function() {
return this._completedSynchronously;},
get_exception : function() {
return this._exception;},
get_throwExceptions : function() {
return this._throwExceptions;}, 
set_throwExceptions : function(value) {
this._throwExceptions = value;},
get_delay : function() { 
return this._delay;},
set_delay : function(value) { 
this._delay = value;},
post : function(args) {
var ar = [];for (var i = 0;i < arguments.length;i++) {
ar[i] = arguments[i];}
this.beginPost(ar, null, null);},
beginPost : function(args, completeCallback, errorCallback) {
this.cancel();this._callArgs = Array.clone(args || []);this._completeCallback = completeCallback;this._errorCallback = errorCallback;if (this._delay == -1) { 
try {
this._oncomplete();} finally {
this._completedSynchronously = true;}
} else { 
this._timer = setTimeout(this._oncomplete$delegate, this._delay);}
}, 
cancel : function() {
if (this._timer) {
clearTimeout(this._timer);this._timer = null;}
this._callArgs = null;this._isComplete = false;this._asyncResult = null;this._completeCallback = null;this._errorCallback = null;this._exception = null;this._completedSynchronously = false;},
call : function(args) {
var ar = [];for (var i = 0;i < arguments.length;i++) {
ar[i] = arguments[i];}
this.cancel();this._callArgs = ar;this._completeCallback = null;this._errorCallback = null;try {
this._oncomplete();} finally {
this._completedSynchronously = true;}
if (this._exception) {
throw this._exception;}
return this._asyncResult;},
complete : function() {
if (this._timer) {
try {
this._oncomplete();} finally {
this._completedSynchronously = true;}
return this._asyncResult;} else if (this._isComplete) {
return this._asyncResult;}
}, 
_oncomplete : function() {
var args = this._callArgs;var completeCallback = this._completeCallback;var errorCallback = this._errorCallback;this.cancel();try {
if (args) {
this._asyncResult = this._callback.apply(this._context, args);} else {
this._asyncResult = this._callback.call(this._context);}
this._isComplete = true;this._completedSynchronously = false;if (completeCallback) {
completeCallback(this);}
} catch (e) {
this._isComplete = true;this._completedSynchronously = false;this._exception = e;if (errorCallback) {
if (errorCallback(this)) {
return;}
} 
if (this._throwExceptions) {
throw e;}
}
}
}
AjaxControlToolkit.DeferredOperation.registerClass("AjaxControlToolkit.DeferredOperation");
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.SlideShowBehavior = function(element) {
AjaxControlToolkit.SlideShowBehavior.initializeBase(this, [element]);this._nextButtonID = null;this._previousButtonID = null;this._imageDescriptionLabelID = null;this._imageTitleLabelID = null;this._playButtonID = null;this._playButtonValue = '||>';this._stopButtonValue = '[]';this._slideShowServicePath = null;this._slideShowServiceMethod = null;this._contextKey = null;this._useContextKey = false;this._playInterval = 3000;this._tickHandler = null;this._loop = false;this._autoPlay = false;this._inPlayMode = false;this._elementImage = null;this._bNext = null;this._bPrevious = null;this._currentIndex = -1;this._currentValue = null;this._imageDescriptionLabel = null;this._imageTitleLabel = null;this._bPlay = null;this._slides = null;this._timer = null;this._currentImageElement = null;this._images = null;this._cachedImageIndex = -1;this._clickNextHandler = null;this._clickPreviousHandler = null;this._clickPlayHandler = null;this._tickHandler = null;this._imageLoadedHandler = null;}
AjaxControlToolkit.SlideShowBehavior.prototype = { 
initialize : function() {
AjaxControlToolkit.SlideShowBehavior.callBaseMethod(this, 'initialize');var e = this.get_element();this._elementImage = e;this._currentImageElement = document.createElement('IMG');this._currentImageElement.style.display = 'none';document.body.appendChild(this._currentImageElement);var _divContent = document.createElement('DIV');e.parentNode.insertBefore(_divContent, e);e.parentNode.removeChild(e);_divContent.appendChild(e);_divContent.align = 'center';this.controlsSetup();if (this._bNext) {
this._clickNextHandler = Function.createDelegate(this, this._onClickNext);$addHandler(this._bNext, 'click', this._clickNextHandler);}
if (this._bPrevious) {
this._clickPreviousHandler = Function.createDelegate(this, this._onClickPrevious);$addHandler(this._bPrevious, 'click', this._clickPreviousHandler);} 
if (this._bPlay) {
this._clickPlayHandler = Function.createDelegate(this, this._onClickPlay);$addHandler(this._bPlay, 'click', this._clickPlayHandler);} 
this._imageLoadedHandler = Function.createDelegate(this, this._onImageLoaded);$addHandler(this._currentImageElement, 'load', this._imageLoadedHandler);this._slideShowInit();},
dispose : function() {
if (this._clickNextHandler) {
$removeHandler(this._bNext, 'click', this._clickNextHandler);this._clickNextHandler = null;}
if (this._clickPreviousHandler) {
$removeHandler(this._bPrevious, 'click', this._clickPreviousHandler);this._clickPreviousHandler = null;}
if (this._clickPlayHandler) {
$removeHandler(this._bPlay, 'click', this._clickPlayHandler);this._clickPlayHandler = null;} 
if (this._imageLoadedHandler) {
$removeHandler(this._currentImageElement, 'load', this._imageLoadedHandler);this._imageLoadedHandler = null;}
if (this._timer) {
this._timer.dispose();this._timer = null;}
AjaxControlToolkit.SlideShowBehavior.callBaseMethod(this, 'dispose');},
add_slideChanged : function(handler) {
this.get_events().addHandler('slideChanged', handler);},
remove_slideChanged : function(handler) {
this.get_events().removeHandler('slideChanged', handler);},
raiseSlideChanged : function(eventArgs) {
var handler = this.get_events().getHandler('slideChanged');if (handler) {
if (!eventArgs) {
eventArgs = Sys.EventArgs.Empty;}
handler(this, eventArgs);}
},
add_slideChanging : function(handler) {
this.get_events().addHandler('slideChanging', handler);},
remove_slideChanging : function(handler) {
this.get_events().removeHandler('slideChanging', handler);},
raiseSlideChanging : function(previousSlide, newSlide) {
var handler = this.get_events().getHandler('slideChanging');if (handler) {
var eventArgs = new AjaxControlToolkit.SlideShowEventArgs(previousSlide, newSlide, this._currentIndex);handler(this, eventArgs);return eventArgs.get_cancel();}
return false;},
get_contextKey : function() {
return this._contextKey;},
set_contextKey : function(value) {
if (this._contextKey != value) {
this._contextKey = value;this.set_useContextKey(true);if(this._elementImage) {
this._slideShowInit();}
this.raisePropertyChanged('contextKey');}
},
get_useContextKey : function() {
return this._useContextKey;},
set_useContextKey : function(value) {
if (this._useContextKey != value) {
this._useContextKey = value;this.raisePropertyChanged('useContextKey');}
},
get_enableCaching: function() {
return this._enableCaching;},
set_enableCaching: function(value) {
this._enableCaching = value;},
get_completionListElementID: function() {
return this._completionListElementID;},
set_completionListElementID: function(value) {
this._completionListElementID = value;}, 
get_completionListCssClass : function() {
this._completionListCssClass;},
set_completionListCssClass : function(value) {
if(this._completionListCssClass != value) {
this._completionListCssClass = value;this.raisePropertyChanged('completionListCssClass');}
}, 
get_completionListItemCssClass : function() {
this._completionListItemCssClass;},
set_completionListItemCssClass : function(value) {
if(this._completionListItemCssClass != value) {
this._completionListItemCssClass = value;this.raisePropertyChanged('completionListItemCssClass');}
}, 
get_highlightedItemCssClass : function() {
this._highlightedItemCssClass;},
set_highlightedItemCssClass : function(value) {
if(this._highlightedItemCssClass != value) { 
this._highlightedItemCssClass = value;this.raisePropertyChanged('highlightedItemCssClass');}
}, 
get_delimiterCharacters: function() {
return this._delimiterCharacters;},
set_delimiterCharacters: function(value) {
this._delimiterCharacters = value;},
controlsSetup : function() {
if (this._previousButtonID) {
this._bPrevious = document.getElementById(this._previousButtonID);}
if (this._imageDescriptionLabelID) {
this._imageDescriptionLabel = document.getElementById(this._imageDescriptionLabelID);}
if (this._imageTitleLabelID) {
this._imageTitleLabel = document.getElementById(this._imageTitleLabelID);}
if (this._nextButtonID) {
this._bNext = document.getElementById(this._nextButtonID);}
if (this._playButtonID) {
this._bPlay = document.getElementById(this._playButtonID);this._bPlay.value = this._playButtonValue;}
},
resetButtons : function() {
if (!this._loop) {
if (this._slides.length <= this._currentIndex + 1 ) {
if (this._bNext) this._bNext.disabled = true;if (this._bPlay) this._bPlay.disabled = true;if (this._bPrevious) this._bPrevious.disabled = false;this._inPlayMode = false;if (this._timer) {
this._timer.set_enabled(false);}
if (this._bPlay) this._bPlay.value = this._playButtonValue;} else {
if (this._bNext) this._bNext.disabled = false;if (this._bPlay) this._bPlay.disabled = false;}
if (this._currentIndex <= 0) {
if (this._bPrevious) this._bPrevious.disabled = true;} else {
if (this._bPrevious) this._bPrevious.disabled = false;}
}
else {
if (this._slides.length == 0) {
if (this._bPrevious) this._bPrevious.disabled = true;if (this._bNext) this._bNext.disabled = true;if (this._bPlay) this._bPlay.disabled = true;}
} 
if (this._inPlayMode) {
this._timer.set_enabled(false);this._timer.set_enabled(true);}
},
resetSlideShowButtonState : function() {
if (this._inPlayMode) {
if (this._bPlay) this._bPlay.value = this._stopButtonValue;}
else {
this.resetButtons();if (this._bPlay) this._bPlay.value = this._playButtonValue;}
},
setCurrentImage : function() {
if (this._slides[this._currentIndex]) {
this._currentImageElement.src = this._slides[this._currentIndex].ImagePath;} else {
this._currentImageElement.src = '';}
if(Sys.Browser.agent == Sys.Browser.Opera) { 
this._onImageLoaded(true);}
},
updateImage : function(value) {
if (value) {
if (this.raiseSlideChanging(this._currentValue, value)) {
return;}
this._currentValue = value;this._elementImage.src = value.ImagePath;this._elementImage.alt = value.Name;if (this._imageDescriptionLabel) {
this._imageDescriptionLabel.innerHTML = value.Description ? value.Description : "";}
if (this._imageTitleLabel) {
this._imageTitleLabel.innerHTML = value.Name ? value.Name : "";}
this.raiseSlideChanged(value);this.resetButtons();}
},
get_imageDescriptionLabelID : function() {
return this._imageDescriptionLabelID;}, 
set_imageDescriptionLabelID : function(value) {
if (this._imageDescriptionLabelID != value) {
this._imageDescriptionLabelID = value;this.raisePropertyChanged('imageDescriptionLabelID');}
},
get_imageTitleLabelID : function() {
return this._imageTitleLabelID;},
set_imageTitleLabelID : function(value) {
if (this._imageTitleLabelID != value) {
this._imageTitleLabelID = value;this.raisePropertyChanged('imageTitleLabelID');}
},
get_nextButtonID : function() {
return this._nextButtonID;},
set_nextButtonID : function(value) {
if (this._nextButtonID != value) {
this._nextButtonID = value;this.raisePropertyChanged('nextButtonID');}
},
get_playButtonID : function() {
return this._playButtonID;},
set_playButtonID : function(value) {
if (this._playButtonID != value) {
this._playButtonID = value;this.raisePropertyChanged('playButtonID');}
},
get_playButtonText : function() {
return this._playButtonValue;},
set_playButtonText : function(value) {
if (this._playButtonValue != value) {
this._playButtonValue = value;this.raisePropertyChanged('playButtonText');}
}, 
get_stopButtonText : function() {
return this._stopButtonValue;},
set_stopButtonText : function(value) {
if (this._stopButtonValue != value) {
this._stopButtonValue = value;this.raisePropertyChanged('stopButtonText');}
},
get_playInterval : function() {
return this._playInterval;},
set_playInterval : function(value) {
if (this._playInterval != value) {
this._playInterval = value;this.raisePropertyChanged('playInterval');}
},
get_previousButtonID : function() {
return this._previousButtonID;},
set_previousButtonID : function(value) {
if (this._previousButtonID != value) {
this._previousButtonID = value;this.raisePropertyChanged('previousButtonID');}
},
get_slideShowServicePath : function() {
return this._slideShowServicePath;},
set_slideShowServicePath : function(value) {
if (this._slideShowServicePath != value) {
this._slideShowServicePath = value;this.raisePropertyChanged('slideShowServicePath');}
},
get_slideShowServiceMethod : function() {
return this._slideShowServiceMethod;},
set_slideShowServiceMethod : function(value) {
if (this._slideShowServiceMethod != value) {
this._slideShowServiceMethod = value;this.raisePropertyChanged('slideShowServiceMethod');}
},
get_loop : function() {
return this._loop;},
set_loop : function(value) {
if (this._loop != value) {
this._loop = value;this.raisePropertyChanged('loop');}
},
get_autoPlay : function() {
return this._autoPlay;},
set_autoPlay : function(value) {
if (this._autoPlay != value) {
this._autoPlay = value;this.raisePropertyChanged('autoPlay');}
},
_onClickNext : function(e) {
e.preventDefault();e.stopPropagation();this._clickNext();}, 
_onImageLoaded : function(e) {
this.updateImage(this._slides[this._currentIndex]);this.resetButtons();this._cacheImages();},
_clickNext : function() {
if (this._slides) {
if ((this._currentIndex + 1) < this._slides.length) {
++this._currentIndex;} else if (this._loop) {
this._currentIndex = 0;} else {
return false;}
this.setCurrentImage();return true;}
return false;},
_onClickPrevious : function(e) {
e.preventDefault();e.stopPropagation();this._clickPrevious();}, 
_clickPrevious : function() {
if (this._slides) {
if ((this._currentIndex - 1) >= 0) {
--this._currentIndex;}
else if (this._loop) {
this._currentIndex = this._slides.length - 1;} else {
return false;}
this.setCurrentImage();return true;}
return false;},
_onClickPlay : function(e) {
e.preventDefault();e.stopPropagation();this._play();}, 
_play : function() {
if (this._inPlayMode) {
this._inPlayMode = false;this._timer.set_enabled(false);this.resetSlideShowButtonState();} else {
this._inPlayMode = true;if (!this._timer) {
this._timer = new Sys.Timer();this._timer.set_interval(this._playInterval);this._tickHandler = Function.createDelegate(this, this._onPlay);this._timer.add_tick(this._tickHandler);}
this.resetSlideShowButtonState();this._timer.set_enabled(true);}
},
_onPlay : function(e) {
if (this._slides) {
if ((this._currentIndex + 1) < this._slides.length) {
++this._currentIndex;this.setCurrentImage();return true;} else if (this._loop) {
this._currentIndex = 0;this.setCurrentImage();return true;} else {
this._inPlayMode = false;this.resetSlideShowButtonState();}
}
return false;},
_slideShowInit : function() {
this._currentIndex = -1;this._cachedImageIndex = -1;this._inPlayMode = false;this._currentValue = null;this._images = null;var params = null;if (this._useContextKey) {
params = { contextKey : this._contextKey };}
Sys.Net.WebServiceProxy.invoke(
this._slideShowServicePath, 
this._slideShowServiceMethod, 
false,
params,
Function.createDelegate(this, this._initSlides), 
null, 
null);},
_initSlides : function(sender, eventArgs) {
this._slides = sender;if (this._slides) {
this._images = new Array();this._clickNext();if (this._autoPlay) {
this._play();}
}
},
_cacheImages : function() {
if ((this._currentIndex) % 3 == 0) {
var oldCachedImageIndex = this._cachedImageIndex;for (var i = this._cachedImageIndex + 1;i < this._slides.length;i++) {
if (this._slides[i]) {
this._images[i] = new Image();this._images[i].src = this._slides[i].ImagePath;this._cachedImageIndex = i;if((oldCachedImageIndex + 4) <= i ) {
break;}
}
}
}
}
}
AjaxControlToolkit.SlideShowBehavior.registerClass('AjaxControlToolkit.SlideShowBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.SlideShowEventArgs = function(previousSlide, nextSlide, slideIndex) {
AjaxControlToolkit.SlideShowEventArgs.initializeBase(this);this._previousSlide = previousSlide;this._nextSlide = nextSlide;this._slideIndex = slideIndex;}
AjaxControlToolkit.SlideShowEventArgs.prototype = {
get_previousSlide : function() {
return this._previousSlide;},
get_nextSlide : function() {
return this._nextSlide;},
get_slideIndex : function () {
return this._slideIndex;}
}
AjaxControlToolkit.SlideShowEventArgs.registerClass('AjaxControlToolkit.SlideShowEventArgs', Sys.CancelEventArgs);
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ListSearchBehavior = function(element) {
AjaxControlToolkit.ListSearchBehavior.initializeBase(this, [element]);this._promptCssClass = null;this._promptText = AjaxControlToolkit.Resources.ListSearch_DefaultPrompt;this._offsetX = 0;this._offsetY = 0;this._promptPosition = AjaxControlToolkit.ListSearchPromptPosition.Top;this._raiseImmediateOnChange = false;this._popupBehavior = null;this._onShowJson = null;this._onHideJson = null;this._originalIndex = 0;this._newIndex = -1;this._showingPromptText = false;this._searchText = '';this._ellipsis = String.fromCharCode(0x2026);this._binarySearch = false;this._applicationLoadDelegate = null;this._focusIndex = 0;this._focusHandler = null;this._blurHandler = null;this._keyDownHandler = null;this._keyUpHandler = null;this._keyPressHandler = null;}
AjaxControlToolkit.ListSearchBehavior.prototype = {
initialize : function() {
AjaxControlToolkit.ListSearchBehavior.callBaseMethod(this, 'initialize');var element = this.get_element();if(element && element.tagName === 'SELECT') {
this._focusHandler = Function.createDelegate(this, this._onFocus);this._blurHandler = Function.createDelegate(this, this._onBlur);this._keyDownHandler = Function.createDelegate(this, this._onKeyDown);this._keyUpHandler = Function.createDelegate(this, this._onKeyUp);this._keyPressHandler = Function.createDelegate(this, this._onKeyPress);$addHandler(element, "focus", this._focusHandler);$addHandler(element, "blur", this._blurHandler);$addHandler(element, "keydown", this._keyDownHandler);$addHandler(element, "keyup", this._keyUpHandler);$addHandler(element, "keypress", this._keyPressHandler);this._applicationLoadDelegate = Function.createDelegate(this, this._onApplicationLoad);Sys.Application.add_load(this._applicationLoadDelegate);}
},
dispose : function() {
var element = this.get_element();$removeHandler(element, "keypress", this._keyPressHandler);$removeHandler(element, "keyup", this._keyUpHandler);$removeHandler(element, "keydown", this._keyDownHandler);$removeHandler(element, "blur", this._blurHandler);$removeHandler(element, "focus", this._focusHandler);this._onShowJson = null;this._onHideJson = null;this._disposePopupBehavior();if(this._applicationLoadDelegate) {
Sys.Application.remove_load(this._applicationLoadDelegate);this._applicationLoadDelegate = null;}
AjaxControlToolkit.ListSearchBehavior.callBaseMethod(this, 'dispose');},
_onApplicationLoad : function(sender, applicationLoadEventArgs) {
var hasInitialFocus = false;var clientState = AjaxControlToolkit.ListSearchBehavior.callBaseMethod(this, 'get_ClientState');if (clientState != null && clientState != "") {
hasInitialFocus = (clientState === "Focused");AjaxControlToolkit.ListSearchBehavior.callBaseMethod(this, 'set_ClientState', null);}
if(hasInitialFocus) {
this._handleFocus();}
},
_isSorted : function(options) {
var previousOptionValue = null;var optionsLength = options.length;for(var index = 0;index < optionsLength;index++) {
var optionValue = options[index].text.toLowerCase();if(previousOptionValue && this._compareStrings(optionValue, previousOptionValue) < 0) {
return false;}
previousOptionValue = optionValue;}
return true;},
_onFocus : function(e) {
this._handleFocus();},
_handleFocus : function() {
var element = this.get_element();this._focusIndex = element.selectedIndex;this._promptDiv = document.createElement('div');this._promptDiv.id = element.id + '_promptDiv';this._promptDiv.innerHTML = this._promptText && this._promptText.length > 0 ? this._promptText : AjaxControlToolkit.Resources.ListSearch_DefaultPrompt;this._showingPromptText = true;if(this._promptCssClass) {
this._promptDiv.className = this._promptCssClass;}
element.parentNode.insertBefore(this._promptDiv, element.nextSibling);this._promptDiv.style.overflow = 'hidden';this._promptDiv.style.height = this._promptDiv.offsetHeight + 'px';this._promptDiv.style.width = element.offsetWidth + 'px';this._popupBehavior = $create(AjaxControlToolkit.PopupBehavior, { parentElement : element }, {}, {}, this._promptDiv);if (this._promptPosition && this._promptPosition == AjaxControlToolkit.ListSearchPromptPosition.Bottom) {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.BottomLeft);} else {
this._popupBehavior.set_positioningMode(AjaxControlToolkit.PositioningMode.TopLeft);}
if (this._onShowJson) {
this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson) {
this._popupBehavior.set_onHide(this._onHideJson);}
this._popupBehavior.show();this._updatePromptDiv(this._promptText);},
_onBlur : function() {
this._disposePopupBehavior();var promptDiv = this._promptDiv;var element = this.get_element();if(promptDiv) {
this._promptDiv = null;element.parentNode.removeChild(promptDiv);}
if(!this._raiseImmediateOnChange && this._focusIndex != element.selectedIndex) {
this._raiseOnChange(element);} 
},
_disposePopupBehavior : function() {
if (this._popupBehavior) {
this._popupBehavior.dispose();this._popupBehavior = null;}
},
_onKeyDown : function(e) {
var element = this.get_element();var promptDiv = this._promptDiv;if(!element || !promptDiv) {
return;}
this._originalIndex = element.selectedIndex;if(this._showingPromptText) {
promptDiv.innerHTML = '';this._searchText = '';this._showingPromptText = false;this._binarySearch = this._isSorted(element.options);} 
if(e.keyCode == Sys.UI.Key.backspace) {
e.preventDefault();e.stopPropagation();this._removeCharacterFromPromptDiv();this._searchForTypedText(element);} else if(e.keyCode == Sys.UI.Key.esc) {
e.preventDefault();e.stopPropagation();promptDiv.innerHTML = '';this._searchText = '';this._searchForTypedText(element);} else if(e.keyCode == Sys.UI.Key.enter && !this._raiseImmediateOnChange && this._focusIndex != element.selectedIndex) {
this._focusIndex = element.selectedIndex;this._raiseOnChange(element);}
},
_onKeyUp : function(e) {
var element = this.get_element();var promptDiv = this._promptDiv;if(!element || !promptDiv) {
return;}
if(this._newIndex == -1 || !element || !promptDiv || promptDiv.innerHTML == '') {
this._newIndex = -1;return;}
element.selectedIndex = this._newIndex;this._newIndex = -1;},
_onKeyPress : function(e) {
var element = this.get_element();var promptDiv = this._promptDiv;if(!element || !promptDiv) {
return;}
if(!this._isNormalChar(e)) {
if(e.charCode == Sys.UI.Key.backspace) {
e.preventDefault();e.stopPropagation();}
return;}
e.preventDefault();e.stopPropagation();this._addCharacterToPromptDiv(e.charCode);this._searchForTypedText(element);},
_isNormalChar : function(e) {
if (Sys.Browser.agent == Sys.Browser.Firefox && e.rawEvent.keyCode) {
return false;}
if (Sys.Browser.agent == Sys.Browser.Opera && e.rawEvent.which == 0) {
return false;}
if (e.charCode && (e.charCode < Sys.UI.Key.space || e.charCode > 6000)) {
return false;}
return true;},
_updatePromptDiv : function(newText) {
var promptDiv = this._promptDiv;var text = typeof(newText) === 'undefined' ? this._searchText : newText;var textNode = promptDiv.firstChild;if(!textNode) {
textNode = document.createTextNode(text);promptDiv.appendChild(textNode);} else {
textNode.nodeValue = text;}
if(promptDiv.scrollWidth <= promptDiv.offsetWidth && promptDiv.scrollHeight <= promptDiv.offsetHeight) {
return;}
for(var maxFit = text.length - 1;maxFit > 0 && (promptDiv.scrollWidth > promptDiv.offsetWidth || promptDiv.scrollHeight > promptDiv.offsetHeight);maxFit--) {
textNode.nodeValue = this._ellipsis + text.substring(text.length - maxFit, text.length);}
},
_addCharacterToPromptDiv : function (charCode) {
this._searchText += String.fromCharCode(charCode);this._updatePromptDiv();},
_removeCharacterFromPromptDiv : function () {
if(this._searchText && this._searchText != '') {
this._searchText = this._searchText.substring(0, this._searchText.length - 1);this._updatePromptDiv();}
},
_searchForTypedText : function(element) {
var searchText = this._searchText;var options = element.options;var text = searchText ? searchText.toLowerCase() : "";if(text.length == 0) { 
if(options.length > 0) {
element.selectedIndex = 0;this._newIndex = 0;}
} else {
var selectedIndex = -1;if(this._binarySearch) {
selectedIndex = this._doBinarySearch(options, text, 0, options.length - 1);} else {
selectedIndex = this._doLinearSearch(options, text, 0, options.length - 1);}
if(selectedIndex == -1) {
this._newIndex = this._originalIndex;} else { 
element.selectedIndex = selectedIndex;this._newIndex = selectedIndex;}
}
if(this._raiseImmediateOnChange && this._originalIndex != element.selectedIndex) {
this._raiseOnChange(element);}
},
_raiseOnChange : function(element) {
if (document.createEvent) {
var onchangeEvent = document.createEvent('HTMLEvents');onchangeEvent.initEvent('change', true, false);element.dispatchEvent(onchangeEvent);} else if( document.createEventObject ) {
element.fireEvent('onchange');}
},
_compareStrings : function(strA, strB) {
return ((strA == strB) ? 0 : ((strA < strB) ? -1 : 1))
},
_doBinarySearch : function(options, value, left, right) {
while (left <= right) {
var mid = Math.floor((left+right)/2);var option = options[mid].text.toLowerCase().substring(0, value.length);var compareResult = this._compareStrings(value, option);if (compareResult > 0) {
left = mid+1
} else if(compareResult < 0) {
right = mid-1;} else {
while(mid > 0 && options[mid - 1].text.toLowerCase().startsWith(value)) {
mid--;}
return mid;}
}
return -1;},
_doLinearSearch : function(options, value, left, right) {
for(var i = left;i <= right;i++) {
if(options[i].text.toLowerCase().startsWith(value)) {
return i;}
}
return -1;},
get_onShow : function() {
return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},
set_onShow : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onShow(value)
} else {
this._onShowJson = value;}
this.raisePropertyChanged('onShow');},
get_onShowBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},
onShow : function() {
if (this._popupBehavior) {
this._popupBehavior.onShow();}
},
get_onHide : function() {
return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},
set_onHide : function(value) {
if (this._popupBehavior) {
this._popupBehavior.set_onHide(value)
} else {
this._onHideJson = value;}
this.raisePropertyChanged('onHide');},
get_onHideBehavior : function() {
return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},
onHide : function() {
if (this._popupBehavior) {
this._popupBehavior.onHide();}
},
get_promptText : function() {
return this._promptText;}, 
set_promptText : function(value) {
if (this._promptText != value) {
this._promptText = value;this.raisePropertyChanged('promptText');}
}, 
get_promptCssClass : function() {
return this._promptCssClass;}, 
set_promptCssClass : function(value) {
if (this._promptCssClass != value) {
this._promptCssClass = value;this.raisePropertyChanged('promptCssClass');}
},
get_promptPosition : function() {
return this._promptPosition;},
set_promptPosition : function(value) {
if (this._promptPosition != value) {
this._promptPosition = value;this.raisePropertyChanged('promptPosition');}
},
get_raiseImmediateOnChange : function() {
return this._raiseImmediateOnChange;},
set_raiseImmediateOnChange : function(value) {
if (this._raiseImmediateOnChange != value) {
this._raiseImmediateOnChange = value;this.raisePropertyChanged('raiseImmediateOnChange');}
}
}
AjaxControlToolkit.ListSearchBehavior.registerClass('AjaxControlToolkit.ListSearchBehavior', AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.ListSearchPromptPosition = function() {
throw Error.invalidOperation();}
AjaxControlToolkit.ListSearchPromptPosition.prototype = {
Top: 0,
Bottom: 1
}
AjaxControlToolkit.ListSearchPromptPosition.registerEnum('AjaxControlToolkit.ListSearchPromptPosition');Type.registerNamespace('JobScout24.Templates.WebServices');
JobScout24.Templates.WebServices.VacancySearchHelper=function() {
JobScout24.Templates.WebServices.VacancySearchHelper.initializeBase(this);
this._timeout = 0;
this._userContext = null;
this._succeeded = null;
this._failed = null;
}
JobScout24.Templates.WebServices.VacancySearchHelper.prototype={
_get_path:function() {
 var p = this.get_path();
 if (p) return p;
 else return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_path();},
MemorizeVacancy:function(contextKey,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'MemorizeVacancy',false,{contextKey:contextKey},succeededCallback,failedCallback,userContext); },
SetSimilarVacancySearchVector:function(searchVector,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'SetSimilarVacancySearchVector',false,{searchVector:searchVector},succeededCallback,failedCallback,userContext); },
SaveVacancySearch:function(searchUrl,emailAddress,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'SaveVacancySearch',false,{searchUrl:searchUrl,emailAddress:emailAddress},succeededCallback,failedCallback,userContext); }}
JobScout24.Templates.WebServices.VacancySearchHelper.registerClass('JobScout24.Templates.WebServices.VacancySearchHelper',Sys.Net.WebServiceProxy);
JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance = new JobScout24.Templates.WebServices.VacancySearchHelper();
JobScout24.Templates.WebServices.VacancySearchHelper.set_path = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_path(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_path = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_path(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_timeout = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_timeout(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_timeout = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_timeout(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_defaultUserContext = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_defaultUserContext(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_defaultUserContext = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_defaultUserContext(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_defaultSucceededCallback = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_defaultSucceededCallback(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_defaultSucceededCallback = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_defaultSucceededCallback(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_defaultFailedCallback = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_defaultFailedCallback(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_defaultFailedCallback = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_defaultFailedCallback(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_enableJsonp = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_enableJsonp(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_enableJsonp = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_enableJsonp(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_jsonpCallbackParameter = function(value) { JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.set_jsonpCallbackParameter(value); }
JobScout24.Templates.WebServices.VacancySearchHelper.get_jsonpCallbackParameter = function() { return JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.get_jsonpCallbackParameter(); }
JobScout24.Templates.WebServices.VacancySearchHelper.set_path("/templates/WebServices/VacancySearchHelper.asmx");
JobScout24.Templates.WebServices.VacancySearchHelper.MemorizeVacancy= function(contextKey,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.MemorizeVacancy(contextKey,onSuccess,onFailed,userContext); }
JobScout24.Templates.WebServices.VacancySearchHelper.SetSimilarVacancySearchVector= function(searchVector,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.SetSimilarVacancySearchVector(searchVector,onSuccess,onFailed,userContext); }
JobScout24.Templates.WebServices.VacancySearchHelper.SaveVacancySearch= function(searchUrl,emailAddress,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.VacancySearchHelper._staticInstance.SaveVacancySearch(searchUrl,emailAddress,onSuccess,onFailed,userContext); }
Type.registerNamespace('JobScout24.Templates.WebServices');
JobScout24.Templates.WebServices.SearchHelperService=function() {
JobScout24.Templates.WebServices.SearchHelperService.initializeBase(this);
this._timeout = 0;
this._userContext = null;
this._succeeded = null;
this._failed = null;
}
JobScout24.Templates.WebServices.SearchHelperService.prototype={
_get_path:function() {
 var p = this.get_path();
 if (p) return p;
 else return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_path();},
GetDropDownModifiers:function(contextKey,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'GetDropDownModifiers',false,{contextKey:contextKey},succeededCallback,failedCallback,userContext); },
GetVacancySearchUrl:function(url,searchPhrase,international,zipOrCity,distance,flexible,countriesList,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'GetVacancySearchUrl',false,{url:url,searchPhrase:searchPhrase,international:international,zipOrCity:zipOrCity,distance:distance,flexible:flexible,countriesList:countriesList},succeededCallback,failedCallback,userContext); },
GetProfileSearchUrl:function(url,searchPhrase,zipOrCity,lastUpdate,reference,guildFilter,industryFilter,salaryFilter,availabilityFilter,languageFilter,languageLevelFilter,travelWillingnessFilter,actualStatusFilter,desiredStatusFilter,succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'GetProfileSearchUrl',false,{url:url,searchPhrase:searchPhrase,zipOrCity:zipOrCity,lastUpdate:lastUpdate,reference:reference,guildFilter:guildFilter,industryFilter:industryFilter,salaryFilter:salaryFilter,availabilityFilter:availabilityFilter,languageFilter:languageFilter,languageLevelFilter:languageLevelFilter,travelWillingnessFilter:travelWillingnessFilter,actualStatusFilter:actualStatusFilter,desiredStatusFilter:desiredStatusFilter},succeededCallback,failedCallback,userContext); }}
JobScout24.Templates.WebServices.SearchHelperService.registerClass('JobScout24.Templates.WebServices.SearchHelperService',Sys.Net.WebServiceProxy);
JobScout24.Templates.WebServices.SearchHelperService._staticInstance = new JobScout24.Templates.WebServices.SearchHelperService();
JobScout24.Templates.WebServices.SearchHelperService.set_path = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_path(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_path = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_path(); }
JobScout24.Templates.WebServices.SearchHelperService.set_timeout = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_timeout(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_timeout = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_timeout(); }
JobScout24.Templates.WebServices.SearchHelperService.set_defaultUserContext = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_defaultUserContext(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_defaultUserContext = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_defaultUserContext(); }
JobScout24.Templates.WebServices.SearchHelperService.set_defaultSucceededCallback = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_defaultSucceededCallback(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_defaultSucceededCallback = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_defaultSucceededCallback(); }
JobScout24.Templates.WebServices.SearchHelperService.set_defaultFailedCallback = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_defaultFailedCallback(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_defaultFailedCallback = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_defaultFailedCallback(); }
JobScout24.Templates.WebServices.SearchHelperService.set_enableJsonp = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_enableJsonp(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_enableJsonp = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_enableJsonp(); }
JobScout24.Templates.WebServices.SearchHelperService.set_jsonpCallbackParameter = function(value) { JobScout24.Templates.WebServices.SearchHelperService._staticInstance.set_jsonpCallbackParameter(value); }
JobScout24.Templates.WebServices.SearchHelperService.get_jsonpCallbackParameter = function() { return JobScout24.Templates.WebServices.SearchHelperService._staticInstance.get_jsonpCallbackParameter(); }
JobScout24.Templates.WebServices.SearchHelperService.set_path("/templates/WebServices/SearchHelperService.asmx");
JobScout24.Templates.WebServices.SearchHelperService.GetDropDownModifiers= function(contextKey,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.SearchHelperService._staticInstance.GetDropDownModifiers(contextKey,onSuccess,onFailed,userContext); }
JobScout24.Templates.WebServices.SearchHelperService.GetVacancySearchUrl= function(url,searchPhrase,international,zipOrCity,distance,flexible,countriesList,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.SearchHelperService._staticInstance.GetVacancySearchUrl(url,searchPhrase,international,zipOrCity,distance,flexible,countriesList,onSuccess,onFailed,userContext); }
JobScout24.Templates.WebServices.SearchHelperService.GetProfileSearchUrl= function(url,searchPhrase,zipOrCity,lastUpdate,reference,guildFilter,industryFilter,salaryFilter,availabilityFilter,languageFilter,languageLevelFilter,travelWillingnessFilter,actualStatusFilter,desiredStatusFilter,onSuccess,onFailed,userContext) {JobScout24.Templates.WebServices.SearchHelperService._staticInstance.GetProfileSearchUrl(url,searchPhrase,zipOrCity,lastUpdate,reference,guildFilter,industryFilter,salaryFilter,availabilityFilter,languageFilter,languageLevelFilter,travelWillingnessFilter,actualStatusFilter,desiredStatusFilter,onSuccess,onFailed,userContext); }
Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.Resources={"PasswordStrength_InvalidWeightingRatios":"Strength Weighting ratios must have 4 elements","Animation_ChildrenNotAllowed":"AjaxControlToolkit.Animation.createAnimation cannot add child animations to type \"{0}\" that does not derive from AjaxControlToolkit.Animation.ParentAnimation","PasswordStrength_RemainingSymbols":"{0} symbol characters","ExtenderBase_CannotSetClientStateField":"clientStateField can only be set before initialization","RTE_PreviewHTML":"Preview HTML","RTE_JustifyCenter":"Justify Center","PasswordStrength_RemainingUpperCase":"{0} more upper case characters","Animation_TargetNotFound":"AjaxControlToolkit.Animation.Animation.set_animationTarget requires the ID of a Sys.UI.DomElement or Sys.UI.Control.  No element or control could be found corresponding to \"{0}\"","RTE_FontColor":"Font Color","RTE_LabelColor":"Label Color","Common_InvalidBorderWidthUnit":"A unit type of \"{0}\"\u0027 is invalid for parseBorderWidth","RTE_Heading":"Heading","Tabs_PropertySetBeforeInitialization":"{0} cannot be changed before initialization","RTE_OrderedList":"Ordered List","ReorderList_DropWatcherBehavior_NoChild":"Could not find child of list with id \"{0}\"","CascadingDropDown_MethodTimeout":"[Method timeout]","RTE_Columns":"Columns","RTE_InsertImage":"Insert Image","RTE_InsertTable":"Insert Table","RTE_Values":"Values","RTE_OK":"OK","ExtenderBase_PageNotRegisteredForCallbacks":"This Page has not been registered for callbacks","Animation_NoDynamicPropertyFound":"AjaxControlToolkit.Animation.createAnimation found no property corresponding to \"{0}\" or \"{1}\"","Animation_InvalidBaseType":"AjaxControlToolkit.Animation.registerAnimation can only register types that inherit from AjaxControlToolkit.Animation.Animation","RTE_UnorderedList":"Unordered List","ResizableControlBehavior_InvalidHandler":"{0} handler not a function, function name, or function text","Animation_InvalidColor":"Color must be a 7-character hex representation (e.g. #246ACF), not \"{0}\"","RTE_CellColor":"Cell Color","PasswordStrength_RemainingMixedCase":"Mixed case characters","RTE_Italic":"Italic","CascadingDropDown_NoParentElement":"Failed to find parent element \"{0}\"","ValidatorCallout_DefaultErrorMessage":"This control is invalid","RTE_Indent":"Indent","ReorderList_DropWatcherBehavior_CallbackError":"Reorder failed, see details below.\\r\\n\\r\\n{0}","PopupControl_NoDefaultProperty":"No default property supported for control \"{0}\" of type \"{1}\"","RTE_Normal":"Normal","PopupExtender_NoParentElement":"Couldn\u0027t find parent element \"{0}\"","RTE_ViewValues":"View Values","RTE_Legend":"Legend","RTE_Labels":"Labels","RTE_CellSpacing":"Cell Spacing","PasswordStrength_RemainingNumbers":"{0} more numbers","RTE_Border":"Border","RTE_Create":"Create","RTE_BackgroundColor":"Background Color","RTE_Cancel":"Cancel","RTE_JustifyFull":"Justify Full","RTE_JustifyLeft":"Justify Left","RTE_Cut":"Cut","ResizableControlBehavior_CannotChangeProperty":"Changes to {0} not supported","RTE_ViewSource":"View Source","Common_InvalidPaddingUnit":"A unit type of \"{0}\" is invalid for parsePadding","RTE_Paste":"Paste","ExtenderBase_ControlNotRegisteredForCallbacks":"This Control has not been registered for callbacks","Calendar_Today":"Today: {0}","Common_DateTime_InvalidFormat":"Invalid format","ListSearch_DefaultPrompt":"Type to search","CollapsiblePanel_NoControlID":"Failed to find element \"{0}\"","RTE_ViewEditor":"View Editor","RTE_BarColor":"Bar Color","PasswordStrength_DefaultStrengthDescriptions":"NonExistent;Very Weak;Weak;Poor;Almost OK;Barely Acceptable;Average;Good;Strong;Excellent;Unbreakable!","RTE_Inserttexthere":"Insert text here","Animation_UknownAnimationName":"AjaxControlToolkit.Animation.createAnimation could not find an Animation corresponding to the name \"{0}\"","ExtenderBase_InvalidClientStateType":"saveClientState must return a value of type String","Rating_CallbackError":"An unhandled exception has occurred:\\r\\n{0}","Tabs_OwnerExpected":"owner must be set before initialize","DynamicPopulate_WebServiceTimeout":"Web service call timed out","PasswordStrength_RemainingLowerCase":"{0} more lower case characters","Animation_MissingAnimationName":"AjaxControlToolkit.Animation.createAnimation requires an object with an AnimationName property","RTE_JustifyRight":"Justify Right","Tabs_ActiveTabArgumentOutOfRange":"Argument is not a member of the tabs collection","RTE_CellPadding":"Cell Padding","RTE_ClearFormatting":"Clear Formatting","AlwaysVisible_ElementRequired":"AjaxControlToolkit.AlwaysVisibleControlBehavior must have an element","Slider_NoSizeProvided":"Please set valid values for the height and width attributes in the slider\u0027s CSS classes","DynamicPopulate_WebServiceError":"Web Service call failed: {0}","PasswordStrength_StrengthPrompt":"Strength: ","PasswordStrength_RemainingCharacters":"{0} more characters","PasswordStrength_Satisfied":"Nothing more required","RTE_Hyperlink":"Hyperlink","Animation_NoPropertyFound":"AjaxControlToolkit.Animation.createAnimation found no property corresponding to \"{0}\"","PasswordStrength_InvalidStrengthDescriptionStyles":"Text Strength description style classes must match the number of text descriptions.","PasswordStrength_GetHelpRequirements":"Get help on password requirements","PasswordStrength_InvalidStrengthDescriptions":"Invalid number of text strength descriptions specified","RTE_Underline":"Underline","Tabs_PropertySetAfterInitialization":"{0} cannot be changed after initialization","RTE_Rows":"Rows","RTE_Redo":"Redo","RTE_Size":"Size","RTE_Undo":"Undo","RTE_Bold":"Bold","RTE_Copy":"Copy","RTE_Font":"Font","CascadingDropDown_MethodError":"[Method error {0}]","RTE_BorderColor":"Border Color","RTE_Paragraph":"Paragraph","RTE_InsertHorizontalRule":"Insert Horizontal Rule","Common_UnitHasNoDigits":"No digits","RTE_Outdent":"Outdent","Common_DateTime_InvalidTimeSpan":"\"{0}\" is not a valid TimeSpan format","Animation_CannotNestSequence":"AjaxControlToolkit.Animation.SequenceAnimation cannot be nested inside AjaxControlToolkit.Animation.ParallelAnimation","Shared_BrowserSecurityPreventsPaste":"Your browser security settings don\u0027t permit the automatic execution of paste operations. Please use the keyboard shortcut Ctrl+V instead."};

