//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxTemplates.js
Type.registerNamespace("Sys.UI");Sys.Application.get_isDisposing=function(){return this._disposing};Sys.Application.disposeElement=function(a,b){this._disposeElementRecursive(a);if(!b&&a.nodeType===1)this._disposeElementInternal(a)};Sys.Application._disposeElementRecursive=function(d){if(d.nodeType===1){var c=d.childNodes;for(var b=c.length-1;b>=0;b--){var a=c[b];if(a.nodeType===1){Sys.Application._disposeElementInternal(a);this._disposeElementRecursive(a)}}}};Sys.Application._disposeElementInternal=function(a){var e=a.dispose;if(e&&typeof e==="function")a.dispose();else{var c=a.control;if(c&&typeof c.dispose==="function")c.dispose()}var b=a._behaviors;if(b)for(var d=b.length-1;d>=0;d--)b[d].dispose()};Sys.Application._resolveElement=function(a){if(!a)return null;var b=a;if(typeof a==="string")b=Sys.UI.DomElement.getElementById(a);return b};Sys.UI.DomElement._oldGetElementById=Sys.UI.DomElement.getElementById;Sys.UI.DomElement.getElementById=function(c,h){var a=Sys.UI.DomElement._oldGetElementById(c,h);if(!a&&!h&&Sys.UI.Template._contexts.length){var f=Sys.UI.Template._contexts;for(var d=0,i=f.length;d<i;d++){var g=f[d];for(var e=0,j=g.length;e<j;e++){var b=g[e];if(b.nodeType===1){if(b.id===c)return b;a=Sys.UI.DomElement._oldGetElementById(c,b);if(a)return a}}}}return a};if($get===Sys.UI.DomElement._oldGetElementById)$get=Sys.UI.DomElement.getElementById;Sys.UI.DomElement.isDomElement=function(a){var c=false;if(typeof a.nodeType!=="number"){var b=a.ownerDocument||a.document||a;if(b!=a){var d=b.defaultView||b.parentWindow;c=d!=a&&!(d.document&&a.document&&d.document===a.document)}else c=typeof b.body==="undefined"}return !c};Sys.UI.DomElement.raiseBubbleEvent=function(c,d){var b=c.parentNode;while(b){var a=b.control;if(a&&a.onBubbleEvent&&a.raiseBubbleEvent){if(a.onBubbleEvent(c,d))return;a.raiseBubbleEvent(c,d);return}b=b.parentNode}};Sys.Application.registerMarkupExtension=function(b,c,a){if(!this._extensions)this._extensions={};a=typeof a==="undefined"||a===true;this._extensions[b]={expression:a,extension:c}};Sys.Application._getMarkupExtension=function(b){var a=this._extensions?this._extensions[b]:null;if(!a)throw Error.invalidOperation(String.format(Sys.TemplateRes.cannotFindMarkupExtension,b));return a};Sys.Application._caseIndex={};Sys.Application._prototypeIndex={};Sys.Application.processNode=function(b,a,c){a={userContext:a,localContext:{}};return Sys.Application._processNodeWithMappings(Sys.Application._getNamespaceMappings(null,[b]),b,a,c)};Sys.Application.processNodes=function(e,a,f){var b,d=[];a={userContext:a,localContext:{}};for(var c=0,g=e.length;c<g;c++){b=e[c];Array.addRange(d,Sys.Application._processNodeWithMappings(Sys.Application._getNamespaceMappings(null,[b]),b,a,f))}return d};Sys.Application._processNodeWithMappings=function(d,g,f,e){var a=[];Sys.Application._processNodeInternal(g,d,a,f,e);for(var b=a.length-1;b>-1;b--){var c=a[b];if(Sys.Component.isInstanceOfType(c))c.endUpdate()}return a};Sys.Application._processNodeInternal=function(b,d,u,i,v){if(b.__msajaxactivated)return;var a,e,c,q=null,r=null,n=null;try{q=b.getAttribute(d.types)}catch(B){}try{r=b.getAttribute(d.sysKey)}catch(B){}if(r)i.localContext[r]=b;if(q){b.__msajaxactivated=true;var w=q.split(","),p={},l=[];for(a=0,e=w.length;a<e;a++){var h=w[a].trim();if(p[h])continue;var f=d.namespaces[h],s=f.inheritsFrom(Sys.Component);c=s&&(f.inheritsFrom(Sys.UI.Behavior)||f.inheritsFrom(Sys.UI.Control))?new f(b):new f;if(s){l.push(c);c.beginUpdate()}p[h]={instance:c,typeName:h,type:f};u.push(c)}for(a=0,e=b.attributes.length;a<e;a++){var g=b.attributes[a];if(!g.specified)continue;var m=g.nodeName;if(m===d.sysKey||m===d.types)continue;var o=Sys.Application._splitAttribute(m),y=o.ns;if(!y)continue;var j=p[y];if(!j)continue;if(o.name==="sys-key")i.localContext[g.nodeValue]=j.instance;else Sys.Application._setProperty(j.instance,j.type,o.name,g.nodeValue,i)}var k=Sys.Application,z=k.get_isCreatingComponents();for(a=0,e=l.length;a<e;a++){c=l[a];if(c.get_id())k.addComponent(c);if(z)k._createdComponents[k._createdComponents.length]=c}}try{n=b.getAttribute(d.sysCommand)}catch(B){}if(n){var t=null;try{t=b.getAttribute(d.sysCommandArgument)}catch(B){}Sys.UI.DomEvent.addHandler(b,"click",Sys.UI.Template._getCommandHandler(n,t))}if(v||typeof v==="undefined"){var A=b.className;if(!Sys.UI.Template._isTemplate(b))for(a=0,e=b.childNodes.length;a<e;a++){var x=b.childNodes[a];if(x.nodeType===1)Sys.Application._processNodeInternal(x,d,u,i,true)}}};Sys.Application._splitAttribute=function(c){var a=c.split(":"),b=a.length>1?a[0]:null,d=a[b?1:0];return {ns:b,name:d}};Sys.Application._getBodyNamespaceMapping=function(){if(Sys.Application._bodyNamespaceMapping)return Sys.Application._bodyNamespaceMapping;var a={sysNamespace:"sys",types:"sys:attach",sysId:"sys:id",sysKey:"sys:key",sysActivate:"sys:activate",sysChecked:"sys:checked",styleNamespace:"style",classNamespace:"class",namespaces:{},sysCommandArgument:"sys:commandargument",sysCommand:"sys:command"};Sys.Application._getNamespaceMapping(a,document.body);Sys.Application._bodyNamespaceMapping=a;return a};Sys.Application._getNamespaceMappings=function(d,c){var b=d||Sys.Application._getBodyNamespaceMapping();for(var a=0,e=c.length;a<e;a++)Sys.Application._getNamespaceMapping(b,c[a]);return b};Sys.Application._getNamespaceMapping=function(namespaceMapping,element){var attributes=element.attributes;for(var i=0,l=attributes.length;i<l;i++){var attribute=attributes[i];if(!attribute.specified)continue;var attrib=Sys.Application._splitAttribute(attribute.nodeName);if(attrib.ns!=="xmlns")continue;var name=attrib.name,value=attribute.nodeValue.trim();if(value.toLowerCase().startsWith("javascript:")){value=value.substr(11).trimStart();if(value==="Sys")with(namespaceMapping){sysNamespace=name;types=name+":attach";sysId=name+":id";sysChecked=name+":checked";sysActivate=name+":activate";sysKey=name+":key";sysCommandArgument=name+":commandargument";sysCommand=name+":command"}else namespaceMapping.namespaces[name]=Type.parse(value)}else if(value==="http://schemas.microsoft.com/aspnet/style")namespaceMapping.styleNamespace=name;else if(value==="http://schemas.microsoft.com/aspnet/class")namespaceMapping.classNamespace=name}};Sys.Application._getExtensionCode=function(c,l,k){var e,a,j={},g=c.indexOf(" ");if(g!==-1){e=c.substr(0,g);a=c.substr(g+1).trim();if(a){a=a.replace(/\\,/g,"\x00").split(",");for(var i=0,m=a.length;i<m;i++){var d=a[i].replace(/\u0000/g,","),f=d.indexOf("="),b,h;if(f!==-1){h=d.substr(0,f).trim();b=d.substr(f+1).trim();if(l)b=this._getPropertyValue(null,null,b,k,true)}else{h="$default";b=d.trim()}j[h]=b}}}else e=c;return {instance:Sys.Application._getMarkupExtension(e),name:e,properties:j}};Sys.Application._getPropertyValue=function(f,g,a,d,e){var b=a;if(a.startsWith("{{")&&a.endsWith("}}"))b=this._evaluateExpression(a.slice(2,-2),d);else if(!e&&a.startsWith("{")&&a.endsWith("}")){var c=this._getExtensionCode(a.slice(1,-1),true,d);b=c.instance.extension(f,g,c.properties)}return b};Sys.Application._setProperty=function(c,g,d,a,e){a=Sys.Application._getPropertyValue(c,d,a,e);if(typeof a==="undefined")return;var b=Sys.Application._translateName(d,g),f=b.name;if(b.type===1)b.setter.call(c,a);else if(b.type===2)b.setter.call(c,typeof a==="function"?a:new Function("sender","args",a));else c[f]=a};Sys.Application._tryName=function(a,f){var c=f.prototype,b="set_"+a,d=c[b];if(d)return {name:a,setterName:b,setter:d,type:1};if(a.startsWith("on")){b="add_"+a.substr(2);var e=c[b];if(e)return {name:a,setterName:b,setter:e,type:2}}if(typeof c[a]!=="undefined")return {name:a};return null};Sys.Application._translateName=function(b,c){var a,d=Sys.Application._prototypeIndex[c.__typeName];if(d){a=d[b];if(a)return a}else d={};c.resolveInheritance();a=Sys.Application._tryName(b,c);if(!a){var e=Sys.Application._mapToPrototype(b,c);if(e&&e!==b)a=Sys.Application._tryName(e,c);if(!a)a={name:b}}d[b]=a;return a};Sys.Application._mapToPrototype=function(d,e){var c,b=Sys.Application._caseIndex[e.__typeName];if(!b){b={};e.resolveInheritance();for(var a in e.prototype){if(a.startsWith("get_")||a.startsWith("set_")||a.startsWith("add_"))a=a.substr(4);else if(a.startsWith("remove_"))a=a.substr(7);b[a.toLowerCase()]=a}Sys.Application._caseIndex[e.__typeName]=b}d=d.toLowerCase();if(d.startsWith("on")){c=b[d.substr(2)];if(c)c="on"+c;else c=b[d]}else c=b[d];return c};Sys.Application._doEval=function($expression,$context){with($context.localContext)with($context.userContext||{})return eval("("+$expression+")")};Sys.Application._evaluateExpression=function(b,a){return Sys.Application._doEval.call(a.userContext,b,a)};Sys.Application._activateOnPartial=function(a,c){var f=Sys.Application._activateList,g=false;if(c.indexOf("<!--*")!==-1){c='<span style="display:none !important">&nbsp;</span>'+c;g=true}this._updatePanelOld(a,c);if(g){var d=a.childNodes[0];if(d&&d.nodeType===1&&d.tagName.toUpperCase()==="SPAN")a.removeChild(d)}var e=f==="*"||a.id&&Array.contains(f,a.id);if(!e){var b=a;do{b=b.parentNode;if(b&&b.id&&Array.contains(f,b.id)){e=true;break}}while(b)}if(e)Sys.Application.processNode(a)};Sys.Application._activateDOM=function(){var f=Sys.Application._getBodyNamespaceMapping(),a=document.body.getAttribute(f.sysActivate),b;if(!a)return;if(a==="*")Sys.Application.processNode(document.body);else{var e=[],b=a.split(",");for(var d=0,h=b.length;d<h;d++){var g=document.getElementById(b[d].trim());e.push(g)}Sys.Application.processNodes(e)}if(Sys.WebForms&&Sys.WebForms.PageRequestManager){Sys.Application._activateList=b||a;var c=Sys.WebForms.PageRequestManager.getInstance();c._updatePanelOld=c._updatePanel;c._updatePanel=Sys.Application._activateOnPartial}};Sys.Application.add_init(Sys.Application._activateDOM);Sys.UI.Template=function(a){this._element=a;this._instantiateIn=null;this._instanceId=0};Sys.UI.Template.prototype={get_element:function(){return this._element},dispose:function(){this._element=null;this._instantiateIn=null},_appendTextNode:function(b,a,c){b.push(a+"document.createTextNode("+Sys.Serialization.JavaScriptSerializer.serialize(c)+"));\n")},_appendAttributeSetter:function(j,a,k,e,b,f,g){var i=e.ns,c=e.name;switch(e.type){case 1:if(f)a.push("  $component = $element;\n  $element."+c+" = "+b+";\n;");else a.push("  $component = $element;\n  "+b+";\n;");return;case 2:c=Sys.Serialization.JavaScriptSerializer.serialize(c);a.push("  $component = $element;\n    ("+b+") ? Sys.UI.DomElement.addCssClass($element, "+c+") : Sys.UI.DomElement.removeCssClass($element, "+c+");\n");return;case 3:a.push("  $component = __componentIndex['"+i+"'];\n");a.push("  __context["+b+"] = $component;\n");return;case 4:a.push("  $component = __componentIndex['"+i+"'];\n");if(f){var d=e.map;if(d.type===1)a.push("  $component."+d.setterName+"("+b+");\n");else if(d.type===2){a.push("  __f = "+b+";\n");a.push("  $component."+d.setterName+'(typeof(__f) === "function" ? __f : new Function("sender", "args", __f));\n')}else a.push("  $component."+d.name+" = "+b+";\n")}else a.push("  "+b+";\n");return;case 5:this["_"+c]=b;return;default:if(f){var h=c.toLowerCase();if(h.startsWith("on"))a.push("  $component = $element;\n  $element."+c+" = new Function("+b+");\n");else if(h==="style")a.push("  $component = $element;\n  $element.style.cssText = "+b+";\n");else if(g)a.push("  $component = $element;\n  if ("+b+") {\n    __e = document.createAttribute('"+c+"');\n    __e.nodeValue = \""+g+'";\n    $element.setAttributeNode(__e);\n  }\n');else a.push("  $component = $element;\n  __e = document.createAttribute('"+c+"');\n  __e.nodeValue = "+b+";\n  $element.setAttributeNode(__e);\n")}else a.push("  $component = $element;\n  "+b+";\n");return}},_translateStyleName:function(b){if(b.indexOf("-")===-1)return b;var a=b.toLowerCase().split("-"),d=a[0];for(var c=1,f=a.length;c<f;c++){var e=a[c];d+=e.substr(0,1).toUpperCase()+e.substr(1)}return d},_processAttribute:function(c,f,e,b,a,d){a=this._getAttributeExpression(b,a);if(a)this._appendAttributeSetter(c,f,e,b,a.code,a.isExpression,d)},_getAttributeExpression:function(g,a){var i=typeof a;if(i==="undefined")return null;if(a===null)return {isExpression:true,code:"null"};if(i==="string")if(a.startsWith("{{")&&a.endsWith("}}"))return {isExpression:true,code:a.slice(2,-2).trim()};else if(a.startsWith("{")&&a.endsWith("}")){var e=Sys.Serialization.JavaScriptSerializer,d=Sys.Application._getExtensionCode(a.slice(1,-1)),f=d.properties,h="";for(var c in f){var b=this._getAttributeExpression(g,f[c]);if(b&&b.isExpression)h+=","+e.serialize(c)+":"+b.code}return {isExpression:d.instance.expression,code:"__app._getMarkupExtension("+e.serialize(d.name)+").extension($component, "+e.serialize(g.name)+", {$dataItem:$dataItem,$index:$index,$id:$id"+h+"})"}}return {isExpression:true,code:Sys.Serialization.JavaScriptSerializer.serialize(a)}},_processBooleanAttribute:function(e,d,g,f,c){var a,b=e.getAttributeNode(d.sysNamespace+":"+c);if(!b){b=e.getAttributeNode(c);if(b&&(b.specified||b.nodeValue===true))a=true;else return}else{a=b.nodeValue;if(a==="true")a=true;else if(a==="false")return}this._processAttribute(d,g,f,{name:c},a,c)},_processBooleanAttributes:function(e,c,f,d,b){var i,j,h;for(var a=0,g=b.length;a<g;a++)this._processBooleanAttribute(e,c,f,d,b[a])},_getExplicitAttribute:function(e,h,f,c,d,b){var a;try{a=c.getAttributeNode(d)}catch(i){return null}if(!a||!a.specified)return null;if(b){var g=d==="style"?c.style.cssText:a.nodeValue;this._processAttribute(e,h,f,{name:b},g)}return a.nodeValue},_buildTemplateCode:function(x,d,C,a,I){var u,i,J,v,h,r,F=Sys.UI.Template.expressionRegExp,j="  "+(I?"__p[__d-1].appendChild(":"__topElements.push(");a.push("  __d++;\n");for(u=0,J=C.childNodes.length;u<J;u++){var b=C.childNodes[u],f=b.nodeValue;if(b.nodeType===8)if(f.startsWith("*")&&f.endsWith("*"))a.push("  "+f.slice(1,-1)+"\n");else a.push(j+"document.createComment("+Sys.Serialization.JavaScriptSerializer.serialize(f)+"));\n");else if(b.nodeType===3){var q=f.trim();if(q.startsWith("{")&&q.endsWith("}")&&(!q.startsWith("{{")||!q.endsWith("}}"))){var A,w;if(C.tagName.toLowerCase()==="textarea"){A="value";w="$component=$element;\n"}else{A="nodeValue";w=j+'$element=$component=document.createTextNode(""));\n'}var E=this._getAttributeExpression({name:A},q);if(E.isExpression)a.push(j+"document.createTextNode("+E.code+"));\n");else a.push(w+"  "+E.code+";\n")}else{var l=F.exec(f),s=0;while(l){var G=f.substring(s,l.index);if(G)this._appendTextNode(a,j,G);a.push(j+"document.createTextNode("+l[1]+"));\n");s=l.index+l[0].length;l=F.exec(f)}if(s<f.length)this._appendTextNode(a,j,f.substr(s))}}else{var H=b.attributes,k=null,y=null,e={},D=b.tagName.toLowerCase(),o,Q=I+1;if(D==="script")continue;r=D==="input";if(r){var N=this._getAttributeExpression({name:"type"},b.getAttribute("type")),L=this._getAttributeExpression({name:"name"},b.getAttribute("name"));a.push("  $element=__p[__d]=Sys.UI.Template._createInput("+N.code+", "+L.code+");\n");o=Sys.UI.Template._inputBooleanAttributes;this._processBooleanAttributes(b,d,a,e,o)}else a.push("  $element=__p[__d]=document.createElement('"+b.nodeName+"');\n");k=this._getExplicitAttribute(d,a,e,b,d.types);if(k){k=k.split(",");a.push("  __componentIndex = {}\n");for(i=0,v=k.length;i<v;i++){h=k[i].trim();if(e[h])continue;var m=d.namespaces[h],z=m.inheritsFrom(Sys.Component),K=z&&(m.inheritsFrom(Sys.UI.Behavior)||m.inheritsFrom(Sys.UI.Control)),O=m.implementsInterface(Sys.UI.ITemplateContext);e[h]={type:m,isComponent:z};a.push("  __components.push(__componentIndex['"+h+"'] = $component = new "+m.getName());if(K)a.push("($element));\n");else a.push("());\n");if(z)a.push("  $component.beginUpdate();\n");if(O)a.push("  $component.set_templateContext(__tc);\n")}}y=this._getExplicitAttribute(d,a,e,b,d.sysKey);if(y)a.push("  __context["+Sys.Serialization.JavaScriptSerializer.serialize(y)+"] = $element;\n");this._getExplicitAttribute(d,a,e,b,d.sysId,"id");this._getExplicitAttribute(d,a,e,b,"style","style");this._getExplicitAttribute(d,a,e,b,"class","class");if(!r){o=Sys.UI.Template._booleanAttributes[D]||Sys.UI.Template._commonBooleanAttributes;this._processBooleanAttributes(b,d,a,e,o)}for(i=0,v=H.length;i<v;i++){var B=H[i],g=B.nodeName,p=g.toLowerCase();if(!B.specified&&(!r||p!=="value"))continue;if(p==="class"||p==="style")continue;if(Array.indexOf(o,p)!==-1)continue;if(r&&Array.indexOf(Sys.UI.Template._inputRequiredAttributes,p)!==-1)continue;var c=Sys.Application._splitAttribute(g),n=c.ns,P=B.nodeValue;g=c.name;if(n)if(n===d.sysNamespace){if(Array.indexOf(Sys.UI.Template._sysAttributes,g)!==-1)continue;if(g==="command"||g==="commandargument")c.type=5;c.ns=null}else if(n===d.styleNamespace){c.name="style."+this._translateStyleName(g);c.ns=null;c.type=1}else if(n===d.classNamespace)c.type=2;else{var t=e[n];if(t)if(g==="sys-key")c.type=3;else{c.type=4;c.map=Sys.Application._translateName(c.name,t.type);c.name=c.map.name}else{c.name=n+":"+g;c.ns=null}}this._processAttribute(d,a,e,c,P)}if(this._command){if(!this._commandargument)this._commandargument="null";a.push(" Sys.UI.DomEvent.addHandler($element, 'click', Sys.UI.Template._getCommandHandler("+this._command+", "+this._commandargument+"));\n");this._command=null}this._commandargument=null;a.push(j+"$element);\n");for(h in e){t=e[h];if(t.isComponent)a.push("  if (($component=__componentIndex['"+h+"']).get_id()) __app.addComponent($component);\nif (__creatingComponents) __app._createdComponents[__app._createdComponents.length] = $component;\n")}if(Sys.UI.Template._isTemplate(b)){var M=new Sys.UI.Template(b);M.compile();x.push(b._msajaxtemplate);a.push("  $element._msajaxtemplate = this.get_element()._msajaxtemplate[1]["+(x.length-1)+"];\n")}else{this._buildTemplateCode(x,d,b,a,Q);a.push("  $element=__p[__d];\n")}}}a.push("  --__d;\n")},compile:function(){if(!this._instantiateIn){var b=this.get_element();if(b._msajaxtemplate)this._instantiateIn=b._msajaxtemplate[0];else{var a=[" $index = (typeof($index) === 'number' ? $index : __instanceId);\n var __context = {}, $component, __app = Sys.Application, __creatingComponents = __app.get_isCreatingComponents(), __components = [], __componentIndex, __e, __f, __topElements = [], __d = 0, __p = [__containerElement], $id = Sys.UI.Template._getIdFunction($index), $element = __containerElement;\n  var __tc = new Sys.UI.TemplateContext();\n __tc.components = __components;\n __tc.elements = __topElements;\n __tc.dataItem = $dataItem;\n __tc.index = $index;\n __tc.parentContext = $parentContext;\n __tc.keys = __context;\n __tc.id = $id;\n __tc.container = __containerElement;\n__tc.template = this;\n  Sys.UI.Template._contexts.push(__topElements);\n with(__context) { with($dataItem || {}) {\n"],d=Sys.Application._getNamespaceMappings(null,[b]),c=[];this._buildTemplateCode(c,d,b,a,0);a.push("} }\n  for (var __i = 0, __l = __topElements.length; __i < __l; __i++) {\n  __containerElement.insertBefore(__topElements[__i], __referenceNode);\n }\n");a.push(" Sys.UI.Template._contexts.pop();\n");a.push(" return __tc;");a=a.join("");b._msajaxtemplate=[this._instantiateIn=new Function("__containerElement","$dataItem","$index","__referenceNode","$parentContext","__instanceId",a),c]}}},instantiateIn:function(b,e,d,a,c){b=Sys.Application._resolveElement(b);a=Sys.Application._resolveElement(a);this.compile();return this._instantiateIn(b,e,d,a,c,this._instanceId++)}};Sys.UI.Template._getCommandHandler=function(b,a){return function(){Sys.UI.DomElement.raiseBubbleEvent(this,new Sys.CommandEventArgs(b,a,this))}};Sys.UI.Template._getIdFunction=function(a){return function(b){return b+a}};Sys.UI.Template._createInput=function(c,b){var a,e=Sys.UI.Template._dynamicInputs;if(e===true){a=document.createElement("input");if(c)a.type=c;if(b)a.name=b}else{var d="<input ";if(c)d+="type='"+c+"' ";if(b)d+="name='"+b+"' ";d+="/>";try{a=document.createElement(d)}catch(f){Sys.UI.Template._dynamicInputs=true;return Sys.UI.Template._createInput(c,b)}if(e!==false)if(a.tagName.toLowerCase()==="input")Sys.UI.Template._dynamicInputs=false;else{Sys.UI.Template._dynamicInputs=true;return Sys.UI.Template._createInput(c,b)}}return a};Sys.UI.Template._isTemplate=function(b){var a=b.className;return a&&(a==="sys-template"||Array.contains(a.split(" "),"sys-template"))};Sys.UI.Template._contexts=[];Sys.UI.Template._inputRequiredAttributes=["type","name"];Sys.UI.Template._commonBooleanAttributes=["disabled"];Sys.UI.Template._inputBooleanAttributes=["disabled","checked","readonly"];Sys.UI.Template._booleanAttributes={"input":Sys.UI.Template._inputBooleanAttributes,"select":["disabled","multiple"],"option":["disabled","selected"],"img":["disabled","ismap"],"textarea":["disabled","readonly"]};Sys.UI.Template._sysAttributes=["attach","id","key","disabled","checked","readonly","ismap","multiple","selected"];Sys.UI.Template.expressionRegExp=/\{\{\s*([\w\W]*?)\s*\}\}/g;Sys.UI.Template.registerClass("Sys.UI.Template",null,Sys.IDisposable);Sys.UI.TemplateContext=function(){};Sys.UI.TemplateContext.prototype={dataItem:null,index:0,id:null,parentContext:null,container:null,components:null,elements:null,keys:null,dispose:function(){var a=this.elements;if(a)for(var b=0,d=a.length;b<d;b++){var c=a[b];if(c.nodeType===1)Sys.Application.disposeElement(c,false)}this.elements=this.dataItem=this.components=this.container=this.parentContext=this.keys=null},getElementById:function(e){var f=this.id(e),c=this.elements,a,b,d;for(b=0,d=c.length;b<d;b++){a=c[b];if(a.id===f)return a;a=Sys.UI.DomElement.getElementById(f,a);if(a)return a}for(b=0,d=c.length;b<d;b++){a=c[b];if(a.id===e)return a;a=Sys.UI.DomElement.getElementById(e,a);if(a)return a}return null},getItemByKey:function(a){if(!this.keys)return null;return this.keys[a]},initializeComponents:function(){var b=this.components;if(b)for(var c=b.length-1;c>-1;c--){var a=b[c];if(Sys.Component.isInstanceOfType(a))if(a.get_isUpdating())a.endUpdate();else if(!a.get_isInitialized())a.initialize()}}};Sys.UI.TemplateContext.registerClass("Sys.UI.TemplateContext",null,Sys.IDisposable);Sys.UI.ITemplateContext=function(){};Sys.UI.ITemplateContext.prototype={get_templateContext:function(){throw Error.notImplemented()},set_templateContext:function(){throw Error.notImplemented()}};Sys.UI.ITemplateContext.registerInterface("Sys.UI.ITemplateContext");Sys.CollectionChange=function(e,a,c,b,d){this.action=e;if(a)if(!(a instanceof Array))a=[a];this.newItems=a||null;if(typeof c!=="number")c=-1;this.newStartingIndex=c;if(b)if(!(b instanceof Array))b=[b];this.oldItems=b||null;if(typeof d!=="number")d=-1;this.oldStartingIndex=d};Sys.CollectionChange.registerClass("Sys.CollectionChange");Sys.NotifyCollectionChangedAction=function(){throw Error.notImplemented()};Sys.NotifyCollectionChangedAction.prototype={add:0,remove:1,reset:2};Sys.NotifyCollectionChangedAction.registerEnum("Sys.NotifyCollectionChangedAction");Sys.NotifyCollectionChangedEventArgs=function(a){this._changes=a};Sys.NotifyCollectionChangedEventArgs.prototype={get_changes:function(){return this._changes}};Sys.NotifyCollectionChangedEventArgs.registerClass("Sys.NotifyCollectionChangedEventArgs",Sys.EventArgs);Sys.Observer=function(){};Sys.Observer.registerClass("Sys.Observer");Sys.Observer.observe=function(a){var c=a instanceof Array,b=Sys.Observer;if(a.setValue===b._observeMethods.setValue)return a;b._addMethods(a,b._observeMethods);if(c)b._addMethods(a,b._arrayMethods);return a};Sys.Observer._addMethods=function(c,b){for(var a in b)c[a]=b[a]};Sys.Observer._addEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events.addHandler(a,b)};Sys.Observer.addEventHandler=function(c,a,b){Sys.Observer._addEventHandler(c,a,b)};Sys.Observer._removeEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events.removeHandler(a,b)};Sys.Observer.removeEventHandler=function(c,a,b){Sys.Observer._removeEventHandler(c,a,b)};Sys.Observer._raiseEvent=function(b,e,d){var c=Sys.Observer._getContext(b);if(!c)return;var a=c.events.getHandler(e);if(a)a(b,d)};Sys.Observer.raiseEvent=function(c,b,a){Sys.Observer._raiseEvent(c,b,a)};Sys.Observer.addPropertyChanged=function(b,a){Sys.Observer._addEventHandler(b,"propertyChanged",a)};Sys.Observer.removePropertyChanged=function(b,a){Sys.Observer._removeEventHandler(b,"propertyChanged",a)};Sys.Observer._beginUpdate=function(a){Sys.Observer._getContext(a,true).updating=true};Sys.Observer.beginUpdate=function(a){Sys.Observer._beginUpdate(a)};Sys.Observer._endUpdate=function(b){var a=Sys.Observer._getContext(b);if(!a||!a.updating)return;a.updating=false;var d=a.dirty;a.dirty=false;if(d){if(b instanceof Array){var c=a.changes;a.changes=null;Sys.Observer.raiseCollectionChanged(b,c)}Sys.Observer.raisePropertyChanged(b,"")}};Sys.Observer.endUpdate=function(a){Sys.Observer._endUpdate(a)};Sys.Observer._isUpdating=function(b){var a=Sys.Observer._getContext(b);return a?a.updating:false};Sys.Observer.isUpdating=function(a){return Sys.Observer._isUpdating(a)};Sys.Observer._setValue=function(a,e,i){var b=e.split(".");for(var d=0,k=b.length-1;d<k;d++){var j=b[d],g=a["get_"+j];if(typeof g==="function")a=g.call(a);else a=a[j];var l=typeof a;if(a===null||l==="undefined")throw Error.invalidOperation(String.format(Sys.TemplateRes.nullReferenceInPath,e))}var f=b[k],h=a["set_"+f];if(typeof h==="function")h.call(a,i);else a[f]=i;var c=Sys.Observer._getContext(a);if(c&&c.updating){c.dirty=true;return}Sys.Observer.raisePropertyChanged(a,b[0])};Sys.Observer.setValue=function(b,a,c){Sys.Observer._setValue(b,a,c)};Sys.Observer.raisePropertyChanged=function(b,a){Sys.Observer._raiseEvent(b,"propertyChanged",new Sys.PropertyChangedEventArgs(a))};Sys.Observer.addCollectionChanged=function(b,a){Sys.Observer._addEventHandler(b,"collectionChanged",a)};Sys.Observer.removeCollectionChanged=function(b,a){Sys.Observer._removeEventHandler(b,"collectionChanged",a)};Sys.Observer._collectionChange=function(d,c){var a=Sys.Observer._getContext(d);if(a&&a.updating){a.dirty=true;var b=a.changes;if(!b)a.changes=b=[c];else b.push(c)}else{Sys.Observer.raiseCollectionChanged(d,[c]);Sys.Observer.raisePropertyChanged(d,"length")}};Sys.Observer._add=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[b],a.length);Array.add(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.add=function(a,b){Sys.Observer._add(a,b)};Sys.Observer._addRange=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,b,a.length);Array.addRange(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.addRange=function(a,b){Sys.Observer._addRange(a,b)};Sys.Observer._clear=function(a){Array.clear(a);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.reset))};Sys.Observer.clear=function(a){Sys.Observer._clear(a)};Sys.Observer._insert=function(a,b,c){Array.insert(a,b,c);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[c],b))};Sys.Observer.insert=function(a,b,c){Sys.Observer._insert(a,b,c)};Sys.Observer._remove=function(a,b){var c=Array.indexOf(a,b);if(c!==-1){Array.remove(a,b);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[b],c));return true}return false};Sys.Observer.remove=function(a,b){return Sys.Observer._remove(a,b)};Sys.Observer._removeAt=function(b,a){if(a>-1&&a<b.length){var c=b[a];Array.removeAt(b,a);Sys.Observer._collectionChange(b,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[c],a))}};Sys.Observer.removeAt=function(a,b){Sys.Observer._removeAt(a,b)};Sys.Observer.raiseCollectionChanged=function(b,a){Sys.Observer._raiseEvent(b,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))};Sys.Observer._observeMethods={add_propertyChanged:function(a){Sys.Observer._addEventHandler(this,"propertyChanged",a)},remove_propertyChanged:function(a){Sys.Observer._removeEventHandler(this,"propertyChanged",a)},addEventHandler:function(a,b){Sys.Observer._addEventHandler(this,a,b)},removeEventHandler:function(a,b){Sys.Observer._removeEventHandler(this,a,b)},get_isUpdating:function(){return Sys.Observer._isUpdating(this)},beginUpdate:function(){Sys.Observer._beginUpdate(this)},endUpdate:function(){Sys.Observer._endUpdate(this)},setValue:function(b,a){Sys.Observer._setValue(this,b,a)},raiseEvent:function(b,a){Sys.Observer._raiseEvent(this,b,a)},raisePropertyChanged:function(a){Sys.Observer._raiseEvent(this,"propertyChanged",new Sys.PropertyChangedEventArgs(a))}};Sys.Observer._arrayMethods={add_collectionChanged:function(a){Sys.Observer._addEventHandler(this,"collectionChanged",a)},remove_collectionChanged:function(a){Sys.Observer._removeEventHandler(this,"collectionChanged",a)},add:function(a){Sys.Observer._add(this,a)},addRange:function(a){Sys.Observer._addRange(this,a)},clear:function(){Sys.Observer._clear(this)},insert:function(a,b){Sys.Observer._insert(this,a,b)},remove:function(a){return Sys.Observer._remove(this,a)},removeAt:function(a){Sys.Observer._removeAt(this,a)},raiseCollectionChanged:function(a){Sys.Observer._raiseEvent(this,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))}};Sys.Observer._getContext=function(b,c){var a=b._observerContext;if(a)return a();if(c)return (b._observerContext=Sys.Observer._createContext())();return null};Sys.Observer._createContext=function(){var a={events:new Sys.EventHandlerList};return function(){return a}};Sys.BindingMode=function(){};Sys.BindingMode.prototype={auto:0,oneTime:1,oneWay:2,twoWay:3,oneWayToSource:4};Sys.BindingMode.registerEnum("Sys.BindingMode");Sys.Binding=function(){Sys.Binding.initializeBase(this)};Sys.Binding.prototype={_convert:null,_convertBack:null,_convertFn:null,_convertBackFn:null,_handlers:null,_ignoreErrors:false,_mode:Sys.BindingMode.auto,_path:null,_targetProperty:null,_source:null,_target:null,_updateSource:false,_updateTarget:false,get_convert:function(){return this._convert||null},set_convert:function(a){this._convert=a;this._convertFn=this._resolveFunction(a)},get_convertBack:function(){return this._convertBack||null},set_convertBack:function(a){this._convertBack=a;this._convertBackFn=this._resolveFunction(a)},get_ignoreErrors:function(){return this._ignoreErrors},set_ignoreErrors:function(a){this._ignoreErrors=a},get_mode:function(){return this._mode},set_mode:function(a){this._mode=a},get_source:function(){return this._source||null},set_source:function(a){this._source=a},get_path:function(){return this._path||""},set_path:function(a){this._path=a;this._pathArray=a?a.split("."):null},get_target:function(){return this._target||null},set_target:function(a){this._target=a},get_targetProperty:function(){return this._targetProperty||""},set_targetProperty:function(a){this._targetProperty=a;this._targetPropertyArray=a?a.split("."):null},_addBinding:function(a){if(a.nodeType===3){a=a.parentNode;if(!a)return}var b=a._msajaxBindings;if(!b)a._msajaxBindings=[this];else b.push(this);if(typeof a.dispose!=="function")a.dispose=Sys.Binding._disposeBindings},_disposeHandlers:function(){for(var c=0,d=this._handlers.length;c<d;c++){var a=this._handlers[c],b=a[2];switch(a[0]){case "click":case "keyup":case "change":Sys.UI.DomEvent.removeHandler(b,a[0],a[1]);break;case "propertyChanged":if(b.remove_propertyChanged)b.remove_propertyChanged(a[1]);else Sys.Observer.removePropertyChanged(b,a[1]);break;case "disposing":b.remove_disposing(a[1])}}},dispose:function(){if(this._handlers){this._disposeHandlers();delete this._handlers}this._convert=null;this._convertBack=null;this._convertFn=null;this._convertBackFn=null;this._source=null;this._target=null;this._pathArray=null;this._targetPropertyArray=null;Sys.Binding.callBaseMethod(this,"dispose")},_getDefaultMode:function(a){if(Sys.UI.DomElement.isDomElement(a)){if(a.nodeType===1){var b=a.tagName?a.tagName.toLowerCase():null;if(b==="input"||b==="select"||b==="textarea")return Sys.BindingMode.twoWay}}else if(Sys.INotifyPropertyChange.isImplementedBy(a))return Sys.BindingMode.twoWay;return Sys.BindingMode.oneWay},_getPropertyFromIndex:function(a,c,d){for(var b=0;b<=d;b++){a=this._getPropertyData(a,c[b]);var e=typeof a;if(b<c.length-1&&(a===null||e==="undefined"))throw Error.invalidOperation(String.format(Sys.TemplateRes.nullReferenceInPath,c.join(".")))}return a},_getPropertyData:function(b,a){if(typeof b["get_"+a]==="function")return b["get_"+a]();else return b[a]},_hookEvent:function(a,c,e){var f;if(Sys.UI.DomElement.isDomElement(a)){thisHandler=Function.createDelegate(this,c);Array.add(this._handlers,["propertyChanged",thisHandler,a]);if(a.add_propertyChanged)a.add_propertyChanged(thisHandler);else Sys.Observer.addPropertyChanged(a,thisHandler);var b=a.tagName?a.tagName.toLowerCase():null;if(b==="input"||b==="select"||b==="textarea"){var d=a.type;if(b==="input"&&d&&(d.toLowerCase()==="checkbox"||d.toLowerCase()==="radio")){thisHandler=Function.createDelegate(this,c);Array.add(this._handlers,["click",thisHandler,a]);Sys.UI.DomEvent.addHandler(a,"click",thisHandler)}if(b==="select"){thisHandler=Function.createDelegate(this,c);Array.add(this._handlers,["click",thisHandler,a]);Sys.UI.DomEvent.addHandler(a,"click",thisHandler)}if(b==="select"){thisHandler=Function.createDelegate(this,c);Array.add(this._handlers,["keyup",thisHandler,a]);Sys.UI.DomEvent.addHandler(a,"keyup",thisHandler)}thisHandler=Function.createDelegate(this,c);Array.add(this._handlers,["change",thisHandler,a]);Sys.UI.DomEvent.addHandler(a,"change",thisHandler);this._addBinding(a)}}else{thisHandler=Function.createDelegate(this,e);Array.add(this._handlers,["propertyChanged",thisHandler,a]);if(a.add_propertyChanged)a.add_propertyChanged(thisHandler);else Sys.Observer.addPropertyChanged(a,thisHandler);if(Sys.INotifyDisposing.isImplementedBy(a)){thisHandler=Function.createDelegate(this,this._onDisposing);Array.add(this._handlers,["disposing",thisHandler,a]);a.add_disposing(thisHandler)}}},_onDisposing:function(){this.dispose()},_resolveFunction:function(a){var b;if(typeof a==="function")b=a;else try{b=Type.parse(a)}catch(c){throw Error.invalidOperation(String.format(Sys.TemplateRes.functionNotFound,a))}return b},update:function(a){a=a||this.get_mode();if(a===Sys.BindingMode.oneWayToSource){delete this._lastTarget;this._onTargetPropertyChanged()}else{delete this._lastSource;this._onSourcePropertyChanged()}},initialize:function(){var c=this.get_source(),b=this.get_target(),a=this.get_mode();Sys.Binding.callBaseMethod(this,"initialize");if(a===Sys.BindingMode.auto)a=this._getDefaultMode(b);this.update(a);if(a!=Sys.BindingMode.oneTime){this._handlers=[];if(a!==Sys.BindingMode.oneWayToSource)this._hookEvent(c,this._onSourcePropertyChanged,this._onComponentSourceChanged);else if(Sys.UI.DomElement.isDomElement(c))this._addBinding(c);if(a!==Sys.BindingMode.oneWay)this._hookEvent(b,this._onTargetPropertyChanged,this._onComponentTargetChanged);else if(Sys.UI.DomElement.isDomElement(b))this._addBinding(b)}},_onComponentSourceChanged:function(c,b){var a=b.get_propertyName();if(a===""||a===this._pathArray[0])this._onSourcePropertyChanged()},_onComponentTargetChanged:function(c,b){var a=b.get_propertyName();if(a===""||a===this._targetPropertyArray[0])this._onTargetPropertyChanged()},_onSourcePropertyChanged:function(){var a=this._getPropertyFromIndex(this.get_source(),this._pathArray,this._pathArray.length-1);if(!this._updateSource&&a!==this._lastSource)try{this._updateTarget=true;this._lastSource=this._lastTarget=a;if(this._convertFn)if(this._ignoreErrors)try{a=this._convertFn(a,this)}catch(d){}else a=this._convertFn(a,this);var b=this._targetPropertyArray.length,c=this._getPropertyFromIndex(this.get_target(),this._targetPropertyArray,b-2);Sys.Observer.setValue(c,this._targetPropertyArray[b-1],a)}finally{this._updateTarget=false}},_onTargetPropertyChanged:function(){var a=this._getPropertyFromIndex(this.get_target(),this._targetPropertyArray,this._targetPropertyArray.length-1);if(!this._updateTarget&&a!==this._lastTarget)try{this._updateSource=true;this._lastTarget=this._lastSource=a;if(this._convertBackFn)if(this._ignoreErrors)try{a=this._convertBackFn(a,this)}catch(d){}else a=this._convertBackFn(a,this);var b=this._pathArray.length,c=this._getPropertyFromIndex(this.get_source(),this._pathArray,b-2);Sys.Observer.setValue(c,this._pathArray[b-1],a)}finally{this._updateSource=false}}};Sys.Binding._disposeBindings=function(){var a=this._msajaxBindings;if(a)for(var b=0,c=a.length;b<c;b++)a[b].dispose();this._msajaxBindings=null;if(this.control&&typeof this.control.dispose==="function")this.control.dispose();if(this.dispose===Sys.Binding._disposeBindings)this.dispose=null};Sys.Binding.registerClass("Sys.Binding",Sys.Component);Sys.Application.registerMarkupExtension("binding",function(f,e,a){var d=a.mode,h=a.convert,g=a.convertBack,c=a.ignoreErrors,b=new Sys.Binding;if(d){if(typeof d==="string")d=Sys.BindingMode.parse(d)}else d=Sys.BindingMode.auto;b.set_source(a.source||a.$dataItem);b.set_path(a.path||a.$default);b.set_target(f);b.set_targetProperty(e);b.set_mode(d);if(a.convert)b.set_convert(a.convert);if(a.convertBack)b.set_convertBack(a.convertBack);if(c){if(typeof c==="string")c=Boolean.parse(c);else c=!!c;b.set_ignoreErrors(c)}b.initialize()},false);Sys.UI.DataView=function(a){Sys.UI.DataView.initializeBase(this,[a])};Sys.UI.DataView.prototype={_autoFetch:true,_changed:false,_container:null,_currentContainer:null,_currentRef:null,_currentSelectedData:null,_data:null,_dataSource:null,_dirty:false,_dsDefault:false,_dvTemplate:null,_eventType:0,_httpMethod:null,_initialSelectedIndex:0,_parameters:null,_parentContext:null,_placeholder:null,_query:null,_results:null,_selectedIndex:-1,_selectedItemClass:null,_serviceUri:null,_setData:false,_template:null,_timeout:0,_useRemove:false,add_command:function(a){this.get_events().addHandler("command",a)},remove_command:function(a){this.get_events().removeHandler("command",a)},add_itemCreated:function(a){this.get_events().addHandler("itemCreated",a)},remove_itemCreated:function(a){this.get_events().removeHandler("itemCreated",a)},get_data:function(){var a=this._dataSource;return a?a.get_data():this._data},set_data:function(a){if(!this._setData||this._data!==a){this._swapData(this._data,a);this._data=a;if(this._dataSource&&this._dataSource.get_data()!==a)this._dataSource.set_data(a);this._dirty=this._setData=true;if(this.get_isInitialized()){var b=this._resetSelectedIndex();if(!this.get_isUpdating()){this._render();this.raisePropertyChanged("data");if(!b){this.raisePropertyChanged("selectedData");return}}}this._changed=true}},get_dataSource:function(){if(!this._dataSource){this._dataSource=new Sys.Data.DataSource;this._defaultDs=true;this._captureDs()}return this._dataSource},set_dataSource:function(b){if(this._dataSource!==b){if(this._dataSource)this._releaseDs();if(b){this._dataSource=null;b.beginUpdate();var a=this.get_autoFetch();if(!a)b.set_autoFetch(a);a=this.get_httpMethod();if(a!=="POST")b.set_httpMethod(a);a=this.get_timeout();if(a!==0)b.set_timeout(a);a=this.get_serviceUri();if(a)b.set_serviceUri(a);a=this.get_query();if(a)b.set_query(a);a=this.get_parameters();if(a)b.set_parameters(a);a=this.get_data();if(a)b.set_data(a);this._dataSource=b;this._captureDs();b.endUpdate()}this._defaultDs=false}},get_autoFetch:function(){var a=this._dataSource;return a?a.get_autoFetch():this._autoFetch},set_autoFetch:function(a){this._autoFetch=a;this.get_dataSource().set_autoFetch(a)},get_httpMethod:function(){var a=this._dataSource;return (a?a.get_httpMethod():this._httpMethod)||"POST"},set_httpMethod:function(a){this._httpMethod=a;this.get_dataSource().set_httpMethod(a)},get_items:function(){return this._results},get_parameters:function(){var a=this._dataSource;return a?a.get_parameters():this._parameters},set_parameters:function(a){this._parameters=a;this.get_dataSource().set_parameters(a)},get_selectedData:function(){var a=this.get_selectedIndex();if(a>-1){var b=this.get_data();if(b instanceof Array&&a<b.length)return b[a]}return null},get_selectedIndex:function(){return this._selectedIndex},set_selectedIndex:function(a){a=this._validateIndexInput(a);var c=this.get_selectedIndex();if(a!==c){var b=this.get_data(),f=a<-1||a>(b instanceof Array?b.length-1:-1);this._selectedIndex=a;var e=this._currentSelectedData;this._currentSelectedData=a===-1||f?null:b[a];if(this.get_isInitialized()){var d=this.get_selectedItemClass();this._addRemoveCssClass(c,d,Sys.UI.DomElement.removeCssClass);this._addRemoveCssClass(a,d,Sys.UI.DomElement.addCssClass);if(!this.get_isUpdating()){this.raisePropertyChanged("selectedIndex");if(e!==this._currentSelectedData){this.raisePropertyChanged("selectedData");return}}}this._changed=true}},get_initialSelectedIndex:function(){return this._initialSelectedIndex},set_initialSelectedIndex:function(a){a=this._validateIndexInput(a);if(a!==this.get_initialSelectedIndex()){this._initialSelectedIndex=a;if(this._isActive())this.raisePropertyChanged("initialSelectedIndex");else this._changed=true}},get_selectedItemClass:function(){return this._selectedItemClass||""},set_selectedItemClass:function(a){var c=this.get_selectedItemClass();if(a!==c){var b=this.get_selectedIndex();this._addRemoveCssClass(b,c,Sys.UI.DomElement.removeCssClass);this._addRemoveCssClass(b,a,Sys.UI.DomElement.addCssClass);this._selectedItemClass=a}},get_serviceUri:function(){var a=this._dataSource;return (a?a.get_serviceUri():this._serviceUri)||""},set_serviceUri:function(a){this._serviceUri=a;this.get_dataSource().set_serviceUri(a)},get_timeout:function(){var a=this._dataSource;return a?a.get_timeout():this._timeout},set_timeout:function(a){this._timeout=a;this.get_dataSource().set_timeout(a)},get_query:function(){var a=this._dataSource;return (a?a.get_query():this._query)||""},set_query:function(a){this._query=a;this.get_dataSource().set_query(a)},get_itemPlaceholder:function(){return this._placeholder||null},set_itemPlaceholder:function(a){if(this._placeholder!==a){this._placeholder=a;this._container=null;this._dirty=true;this.raisePropertyChanged("itemPlaceholder")}},get_templateContext:function(){return this._parentContext||null},set_templateContext:function(a){if(this._parentContext!==a){this._parentContext=a;this._dirty=true;this.raisePropertyChanged("templateContext")}},get_itemTemplate:function(){return this._template||null},set_itemTemplate:function(a){if(this._template!==a){this._template=a;this._dirty=true;if(this._dvTemplate){this._dvTemplate.dispose();this._dvTemplate=null}if(this._isActive()){this.raisePropertyChanged("itemTemplate");if(this._setData)this._render()}else this._changed=true}},_addRemoveCssClass:function(b,e,h){if(e&&b>-1){var c=this.get_items(),g=c?c.length:-1;if(g&&b<g){var a=c[b].elements;if(a)for(var d=0,i=a.length;d<i;d++){var f=a[d];if(f.nodeType===1)h(f,e)}}}},_captureDs:function(){if(!this._dsChanged)this._dsChanged=Function.createDelegate(this,this._onDsChanged);this._dataSource.add_propertyChanged(this._dsChanged)},_releaseDs:function(){this._dataSource.remove_propertyChanged(this._dsChanged)},_clearContainer:function(b,a,c){if(a===0)this._clearElement(b);else this._removeChildren(b,a,c,true)},_clearElement:function(a){Sys.Application.disposeElement(a,true);if(this._useRemove)this._removeChildren(a);else try{a.innerHTML=""}catch(b){this._removeChildren(a);this._useRemove=true}},_collectionChanged:function(i,f){if(this._isActive()){this._render();var a=this.get_selectedIndex();if(a!==-1){var d=f?f.get_changes():null,g=a;for(var c=0,h=d.length;c<h;c++){var b=d[c];if(b.action===Sys.NotifyCollectionChangedAction.add){if(a>=b.newStartingIndex)a++}else if(b.action===Sys.NotifyCollectionChangedAction.remove){var e=b.oldStartingIndex;if(a>e)a--;else if(a===e){a=-1;break}}else if(b.action===Sys.NotifyCollectionChangedAction.reset){a=-1;break}}if(a!==g)this.set_selectedIndex(a)}}else this._dirty=true},_elementContains:function(b,a,c){if(b===a)return !c;do{a=a.parentNode;if(a===b)return true}while(a);return false},_onDsChanged:function(a){this.set_data(a.get_data())},_removeChildren:function(a,b,d,c){if(b===0||typeof d==="undefined")while(a.firstChild){if(c)Sys.Application.disposeElement(a.firstChild,false);a.removeChild(a.firstChild)}else while(d--){var e=b?b.previousSibling:a.lastChild;if(c)Sys.Application.disposeElement(e,false);a.removeChild(e)}},_getTemplate:function(){if(this._dvTemplate)return this._dvTemplate;var a=this.get_itemTemplate();if(!a)this._dvTemplate=a=new Sys.UI.Template(this.get_element());else if(!Sys.UI.Template.isInstanceOfType(a)){a=Sys.Application._resolveElement(a);this._dvTemplate=a=new Sys.UI.Template(a)}return a},_resetSelectedIndex:function(){var c=this.get_data(),a=this.get_initialSelectedIndex(),b=this.get_selectedIndex();if(!(c instanceof Array)||a>=c.length){if(b!==-1){this.set_selectedIndex(-1);return true}}else if(b!==a){this.set_selectedIndex(a);return true}return false},_resolveContainer:function(){if(!this._container){var d,b,a,c=Sys.Application._resolveElement(this.get_itemPlaceholder());if(c){a=c.parentNode;b=c.nextSibling}else{a=this.get_element();b=0}this._container=a;this._refNode=b}},_initializeResults:function(){for(var a=0,b=this._results.length;a<b;a++)this._results[a].initializeComponents()},_isActive:function(){return this.get_isInitialized()&&!this.get_isUpdating()},_raiseCommand:function(b){this.onCommand(b);var a=this.get_events().getHandler("command");if(a)a(this,b)},_raiseItemCreated:function(b){this.onItemCreated(b);var a=this.get_events().getHandler("itemCreated");if(a)a(this,b)},onBubbleEvent:function(d,a){if(Sys.CommandEventArgs.isInstanceOfType(a)){this._raiseCommand(a);if(a.get_cancel())return true;else{var c=a.get_commandName();if(c&&c.toLowerCase()==="select"){var b=this._getItemIndex(d);if(b!==-1){this.set_selectedIndex(b);return true}}}}return false},_getItemIndex:function(a){if(a&&this._currentContainer){var e=this.get_items();if(e){var b;if(typeof a==="string")b=Sys.UI.DomElement.getElementById(a);else if(Sys.UI.Control.isInstanceOfType(a)||Sys.UI.Behavior.isInstanceOfType(a))b=a.get_element();else if(Sys.UI.DomElement.isDomElement(a))b=a;if(b){var c=b.parentNode,f=this.get_element();while(c&&c!==this._currentContainer&&c!==f){b=c;c=c.parentNode}if(c===this._currentContainer)for(var d=0,g=e.length;d<g;d++)if(Array.contains(e[d].elements,b))return d}}}return -1},getItem:function(b){var a=this._getItemIndex(b);return a!==-1?this.get_items()[a]:null},_render:function(){this._dirty=false;this._resolveContainer();var e=this._getTemplate(),b=this.get_data(),k=this.get_templateContext(),i=this.get_element(),d=this._container,f=this._currentContainer,a;if(f)this._clearContainer(f,this._currentRef,this._currentCount);e.compile();if(f!==this._container){this._useRemove=false;this._clearContainer(d,this._refNode,1)}this._currentContainer=d;this._currentRef=this._refNode;this._currentCount=0;if(e.get_element()===i)Sys.UI.DomElement.removeCssClass(i,"sys-template");if(b===null||typeof b==="undefined")this._results=[];else if(b instanceof Array){var l=b.length;this._results=new Array(l);for(var c=0;c<l;c++){var j=b[c];a=e.instantiateIn(d,j,c,this._currentRef,k);if(this._currentRef!==0)this._currentCount+=a.elements.length;this._raiseItemCreated(new Sys.UI.DataViewItemEventArgs(j,a));this._results[c]=a}}else{a=e.instantiateIn(d,b,0,this._currentRef,k);if(this._currentRef!==0)this._currentCount=a.elements.length;this.onItemCreated(new Sys.UI.DataViewItemEventArgs(b,a));this._results=[a]}var g=this.get_selectedItemClass();if(g){var h=this.get_selectedIndex();if(h!==-1)this._addRemoveCssClass(h,g,Sys.UI.DomElement.addCssClass)}this._initializeResults()},_swapData:function(b,a){if(b)switch(this._eventType){case 1:b.remove_collectionChanged(this._changedHandler);break;case 2:Sys.Observer.removeCollectionChanged(b,this._changedHandler)}this._eventType=0;if(a){if(!this._changedHandler)this._changedHandler=Function.createDelegate(this,this._collectionChanged);if(typeof a.add_collectionChanged==="function"){a.add_collectionChanged(this._changedHandler);this._eventType=1}else if(a instanceof Array){Sys.Observer.addCollectionChanged(a,this._changedHandler);this._eventType=2}}},_validateIndexInput:function(a){var b=typeof a;if(b==="string")a=parseInt(a);return a},dispose:function(){if(this._currentContainer&&!Sys.Application.get_isDisposing())this._clearContainer(this._currentContainer,this._currentRef,this._currentCount);if(this._dvTemplate)this._dvTemplate.dispose();if(this._dataSource){if(this._dsDefault)this._dataSource.dispose();this._releaseDs();this._dataSource=null}this._swapData(this._data,null);this._currentSelectedData=this._currentContainer=this._currentRef=this._container=this._placeholder=this._results=this._parentContext=this._dvTemplate=this._data=this._parameters=this._query=null;Sys.UI.DataView.callBaseMethod(this,"dispose")},initialize:function(){this._resetSelectedIndex();Sys.UI.DataView.callBaseMethod(this,"initialize");if(this._dataSource&&this._defaultDs)this._dataSource.initialize();if(this._setData)this._render()},fetchData:function(){var a=this.get_dataSource();if(!a)throw Error.invalidOperation(Sys.TemplateRes.noDataSource);else a.fetchData()},onCommand:function(){},onItemCreated:function(){},updated:function(){if(this._dirty&&this._setData)this._render();if(this._changed){this.raisePropertyChanged("");this._changed=false}}};Sys.UI.DataView.registerClass("Sys.UI.DataView",Sys.UI.Control,Sys.UI.ITemplateContext);Sys.UI.DataViewItemEventArgs=function(b,a){Sys.UI.DataViewItemEventArgs.initializeBase(this);this._ctx=a||null;this._data=b||null};Sys.UI.DataViewItemEventArgs.prototype={get_dataItem:function(){return this._data},get_templateContext:function(){return this._ctx}};Sys.UI.DataViewItemEventArgs.registerClass("Sys.UI.DataViewItemEventArgs",Sys.EventArgs);Sys.TemplateRes={"cannotFindMarkupExtension":"A markup extension with the name '{0}' could not be found.","nullReferenceInPath":"Null reference while evaluating data path: '{0}'.","invalidHandler":"Trying to dispose an invalid handler: '{0}'.","noDataSource":"DataView cannot fetch data because there is no connected data source."};Boolean._oldParse=Boolean.parse;Boolean.parse=function(a){return Boolean._oldParse(a)};Date._oldParse=Date.parse;Date.parse=function(a){return Date._oldParse(a)};Number._oldParseLocale=Number.parseLocale;Number.parseLocale=function(a){return Number._oldParseLocale(a)};Number._oldParseInvariant=Number.parseInvariant;Number.parseInvariant=function(a){return Number._oldParseInvariant(a)};Sys.CommandEventArgs=function(c,a,b){Sys.CommandEventArgs.initializeBase(this);this._commandName=c;this._commandArgument=a;this._commandSource=b};Sys.CommandEventArgs.prototype={_commandName:null,_commandArgument:null,_commandSource:null,get_commandName:function(){return this._commandName},get_commandArgument:function(){return this._commandArgument},get_commandSource:function(){return this._commandSource}};Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs",Sys.CancelEventArgs);Type.registerNamespace("Sys.Data");Sys.Data.DataSource=function(){Sys.Data.DataSource.initializeBase(this)};Sys.Data.DataSource.prototype={_data:null,_request:null,_dirty:false,_stale:true,_serviceUri:null,_query:null,_fetching:false,_httpMethod:null,_timeout:0,_autoFetch:true,_parameters:null,_fetchDataMethod:null,_counter:0,get_autoFetch:function(){return this._autoFetch},set_autoFetch:function(a){var b=this._autoFetch;this._autoFetch=a;if(this._isActive()&&this._stale&&!b&&a)this.fetchData()},get_data:function(){return this._data||null},set_data:function(a){if(this._data!==a){this._data=a;if(this._data)this._stale=false;if(this._isActive())this.raisePropertyChanged("data");else this._dirty=true}},get_httpMethod:function(){return this._httpMethod||"POST"},set_httpMethod:function(a){this._httpMethod=a},get_fetching:function(){return this._fetching},get_fetchDataMethod:function(){return this._fetchDataMethod},set_fetchDataMethod:function(a){this._fetchDataMethod=a},get_parameters:function(){return this._parameters},set_parameters:function(a){if(this._parameters!==a){this._parameters=a;if(this.get_autoFetch()&&this._isActive())this.fetchData();else this._stale=true}},get_serviceUri:function(){return this._serviceUri||""},set_serviceUri:function(a){if(this._serviceUri!==a){this._serviceUri=a;if(this.get_autoFetch()&&this._isActive()){if(a)this.fetchData()}else this._stale=true}},get_timeout:function(){return this._timeout},set_timeout:function(a){this._timeout=a},get_query:function(){return this._query||""},set_query:function(a){if(this._query!==a){this._query=a;if(this.get_autoFetch()&&this._isActive()){if(a)this.fetchData()}else this._stale=true}},abort:function(){if(this._request){this._request.get_executor().abort();this._request=null}this._fetching=false;this._counter++},dispose:function(){if(this._fetching){this.abort();this._fetching=false}this._data=this._query=this._request=this._parameters=this._fetchDataMethod=null;Sys.Data.DataSource.callBaseMethod(this,"dispose")},initialize:function(){this.updated();Sys.Data.DataSource.callBaseMethod(this,"initialize")},fetchData:function(){var c=this.get_serviceUri(),b=this.get_query(),a=c&&b,d=this.get_httpMethod();if(!a)return;if(this._fetching)this.abort();this._fetching=true;this._stale=false;if(!this._completed){this._completed=Function.createDelegate(this,this._onCompleted);this._errored=Function.createDelegate(this,this._onError)}this._request=(this.get_fetchDataMethod()||this._fetchInternal)(this,this._completed,this._errored,this._counter)},_fetchInternal:function(a,b,c,d){return Sys.Net.WebServiceProxy.invoke(a.get_serviceUri(),a.get_query(),a.get_httpMethod()==="GET",a.get_parameters(),b,c,d,a.get_timeout())},updated:function(){if(this._stale&&this.get_autoFetch()){this._stale=false;this.fetchData()}if(this._dirty){this._dirty=false;this.raisePropertyChanged("")}},_isActive:function(){return this.get_isInitialized()&&!this.get_isUpdating()},_onCompleted:function(a,b){if(b===this._counter){this._counter++;this._fetching=false;this._request=null;this.set_data(a)}},_onError:function(b,a){if(a===this._counter){this._counter++;this._fetching=false;this._request=null}}};Sys.Data.DataSource.registerClass("Sys.Data.DataSource",Sys.Component);Sys.Data.AdoNetDataSource=function(){Sys.Data.AdoNetDataSource.initializeBase(this)};Sys.Data.AdoNetDataSource.prototype={_proxy:null,_puri:null,get_fetchDataMethod:function(){return Sys.Data.AdoNetDataSource.callBaseMethod(this,"get_fetchDataMethod")||this._fetchAdoNet},set_timeout:function(a){Sys.Data.AdoNetDataSource.callBaseMethod(this,"set_timeout",[a]);if(this._proxy)this._proxy.set_timeout(a)},_fetchAdoNet:function(a,b,c,d){var e=a._getProxy(a.get_serviceUri());return e.query(a.get_query(),b,c,d)},_getProxy:function(a){if(this._puri!==a){this._proxy=new Sys.Data.AdoNetServiceProxy(a);this._proxy.set_timeout(this.get_timeout());this._puri=a}return this._proxy}};Sys.Data.AdoNetDataSource.registerClass("Sys.Data.AdoNetDataSource",Sys.Data.DataSource);