//----------------------------------------------------------------------- // Copyright (C) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------- // Atlas.js // Atlas Framework. //----------------------------------------------------------------------- // Copyright (C) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------- // AtlasRuntime.js // Atlas Runtime Framework. var RuntimeVersion ="2.021006.A";Function.abstractMethod =function(){throw 'Abstract method should be implemented';} Function.createCallback =function(method,context){return function(){return method(context);} } Function.createDelegate =function(instance,method){return function(){return method.apply(instance,arguments);} } Function.emptyFunction =Function.emptyMethod =function(){} Function.prototype.getBaseMethod =function(instance,methodName,baseTypeName){var baseType =baseTypeName ?Function.parse(baseTypeName):this.getBaseType();var baseMethod =null;if (baseType){var directBaseType =baseType;if (instance._baseMethods){while (baseType){var methodKey =baseType.getName()+'.'+methodName;var method =instance._baseMethods[methodKey];if (method){return method;} baseType =baseType._baseType;} } if (!baseMethod){return directBaseType.prototype[methodName];} } return null;} Function.prototype.getBaseType =function(){return this._baseType;} Function.prototype.getName =function(){return this._typeName;} Function.parse =function(functionName){if (!Function._htClasses){Function._htClasses ={};} var fn =Function._htClasses[functionName];if (!fn){try {eval('fn = '+functionName);if (typeof(fn)!='function'){fn =null;} else {Function._htClasses[functionName]=fn;} } catch (ex){} } return fn;} Function.prototype._copyProps =function(p_objFnc){for (var strName in p_objFnc.prototype){var vValue =p_objFnc.prototype[strName];if (!this.prototype[strName]){this.prototype[strName]=vValue;} } } Function.prototype._setBases =function(p_objRoot){if (p_objRoot._basePrototypePending){var astrPending =this.prototype._astrPendingInherits ||[];for (var i=0;i 0){this.splice(0,this.length);} } Array.prototype.clone =function(){var clonedArray =[];var length =this.length;for (var index =0;index =0);} Array.prototype.dequeue =function(){return this.shift();} if (!Array.prototype.indexOf){Array.prototype.indexOf =function(item,startIndex){var length =this.length;if (length !=0){startIndex =startIndex ||0;if (startIndex <0){startIndex =Math.max(0,length +startIndex);} for (var i =startIndex;i =0){this.splice(index,1);} return (index >=0);} Array.prototype.removeAt =function(index){this.splice(index,1);} Array._typeName ='Array';Array.parse =function(value){return eval('('+value +')');} RegExp.parse =function(value){if (value.startsWith('/')){var endSlashIndex =value.lastIndexOf('/');if (endSlashIndex >1){var expression =value.substring(1,endSlashIndex);var flags =value.substr(endSlashIndex +1);return new RegExp(expression,flags);} } return null;} RegExp._typeName ='RegExp';Date._typeName ='Date';Error.createError =function(message,details,innerError){var e =new Error(message);if (details &&details.length){e.details =details;} if (innerError){e.innerError =innerError;} return e;} Error._typeName ='Error';Type.registerNamespace('Sys');Type.createEnum =function(name){function getValues(){if (!enumeration._values){var values ={};for (var f in enumeration){if (typeof(enumeration[f])!='function'){values[f]=enumeration[f];} } enumeration._values =values;} return enumeration._values;} function valueFromString(s){if (s){for (var f in enumeration){if (f.toLowerCase()===s.toLowerCase()){return enumeration[f];} } } return null;} function valueToString(value){for (var i in enumeration){if (enumeration[i]===value){return i;} } throw Error.createError('Invalid Enumeration Value');} var enumeration ={};if (name){eval('enumeration='+name +'={};');} enumeration.getValues =getValues;enumeration.parse =valueFromString;enumeration.toString =valueToString;enumeration.getName =function(){return name;} enumeration.isEnum =function(){return true;} for (var i =1;i =0;i--){var part =parts[i].trim();var found =false;for (var f in flags){if (f ==part){value |=flags[f];found =true;break;} } if (found ==false){throw 'Invalid Enumeration Value';} } return value;} function valueToString(value){var sb =new Sys.StringBuilder();for (var i in flags){if ((flags[i]&value)!=0){if (sb.isEmpty()==false){sb.append(' | ');} sb.append(i);} } return sb.toString();} var flags ={};if (name){eval('flags='+name +'={};');} flags.parse =valueFromString;flags.toString =valueToString;flags.getName =function(){return name;} flags.isFlags =function(){return true;} for (var i =1;i =0)?'+':'-')+Math.floor(Math.abs(hour));break;case "zz":hour =this.getTimezoneOffset()/60;ret +=((hour >=0)?'+':'-')+addLeadingZero(Math.floor(Math.abs(hour)));break;case "zzz":hour =this.getTimezoneOffset()/60;ret +=((hour >=0)?'+':'-')+addLeadingZero(Math.floor(Math.abs(hour)))+dtf.TimeSeparator +addLeadingZero(Math.abs(this.getTimezoneOffset()%60));break;default:debug.assert(false);} } return ret;} Number.prototype.toFormattedString =function(format){var _percentPositivePattern =["n %","n%","%n"];var _percentNegativePattern =["-n %","-n%","-%n"];var _numberNegativePattern =["(n)","-n","- n","n-","n -"];var _currencyPositivePattern =["$n","n$","$ n","n $"];var _currencyNegativePattern =["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function expandNumber(number,precision,groupSizes,sep,decimalChar){var curSize =groupSizes[0];var curGroupIndex =1;var numberString =""+number;var decimalIndex =numberString.indexOf('.');var right ="";if (decimalIndex >0){right =numberString.slice(decimalIndex+1);numberString =numberString.slice(0,decimalIndex);} if (precision >0){var rightDifference =right.length -precision;if (rightDifference >0){right =right.slice(0,precision);} else if (rightDifference <0){for (var i=0;i=0){if (curSize ==0 ||curSize >stringIndex){if (ret.length >0)return numberString.slice(0,stringIndex +1)+sep +ret +right;else return numberString.slice(0,stringIndex +1)+right;} if (ret.length >0)ret =numberString.slice(stringIndex -curSize +1,stringIndex+1)+sep +ret;else ret =numberString.slice(stringIndex -curSize +1,stringIndex+1);stringIndex -=curSize;if (curGroupIndex 1)precision =parseInt(format.slice(1));var pattern;switch (format.charAt(0)){case "d":case "D":pattern ='n';if (precision !=-1){var numberStr =""+number;var zerosToAdd =precision -numberStr.length;if (zerosToAdd >0){for (var i=0;i=0;h--){_handlers[h]=null;} _handlers =null;} if (_actions){for (var i =_actions.length -1;i >=0;i--){_actions[i].dispose();} _actions =null;} _owner =null;} this._setInvoked =function(value){_invoked =true;} } Type.Event.registerSealedClass('Type.Event',null,Sys.IDisposable);Type.Event.prototype.add =function(handler){this._getHandlers().add(handler);if (this.get_autoInvoke()&&this.get_isInvoked()){handler(this._getOwner(),null);} } Type.Event.prototype.addAction =function(action){action.setOwner(this._getOwner());this._getActions().add(action);} Type.Event.prototype.remove =function(handler){this._getHandlers().remove(handler);} Type.Event.prototype.removeAction =function(action){action.dispose();this._getActions().remove(action);} Type.Event.prototype.invoke =function(sender,eventArgs){if (this.isActive()){var actions =this._getActions();var handlers =this._getHandlers();var hasPostActions =false;var i;for (i =0;i 0;i--){traceElement.removeChild(children[i]);} document.getElementById('__atlas_trace').style.display ='none';} } this.dump =function(object,name,recursive,indentationPadding,loopArray){name =name ?name :'';indentationPadding =indentationPadding ?indentationPadding :'';if (object ==null){this.trace(indentationPadding +name +': null');return;} switch(typeof(object)){case 'undefined':this.trace(indentationPadding +name +': Undefined');break;case 'number':case 'string':case 'boolean':this.trace(indentationPadding +name +': '+object);break;default:if (Date.isInstanceOfType(object)||RegExp.isInstanceOfType(object)){this.trace(indentationPadding +name +': '+object.toString());break;} if (!loopArray){loopArray =[];} else if (loopArray.contains(object)){this.trace(indentationPadding +name +': ...');return;} loopArray.add(object);var type =Object.getType(object);var tagName =object.tagName;var attributes =object.attributes;if ((type ==Object)&&tagName &&attributes){this.trace(indentationPadding +name +' {'+tagName +'}');indentationPadding +='+';length =attributes.length;for (var i =0;i 3){associatedAttributes ={};for (var i =3;i =0;a--){attr =attributes[a];attrName =attr.nodeName;propertyInfo =properties[attrName];if (propertyInfo){propertyType =propertyInfo.type;propertyValue =attr.nodeValue;var delayedSet =false;if (propertyType ==Object){var elementsOnly =(propertyInfo.attributes &&propertyInfo.attributes[Sys.Attributes.Element]);if (!elementsOnly){markupContext.addReference(instance,propertyInfo,propertyValue);delayedSet =true;} else {propertyValue =markupContext.findElement(propertyValue);} } if (!delayedSet){propertyName =propertyInfo.name;setter =instance['set_'+propertyName];if (propertyType !=Object){if (propertyType ==Array){propertyValue =Array.parse('['+propertyValue +']');} else if (propertyType !=String){propertyValue =propertyType.parse(propertyValue);} } setter.call(instance,propertyValue);} } else {eventInfo =events[attrName];if (eventInfo){var handler =Function.parse(attr.nodeValue);if (handler){eventValue =instance[eventInfo.name];eventValue.add(handler);} } } } } var childNodes =node.childNodes;if (childNodes &&(childNodes.length !=0)){for (i =childNodes.length -1;i >=0;i--){var childNode =childNodes[i];if (childNode.nodeType !=1){continue;} var nodeName =childNode.baseName;propertyInfo =properties[nodeName];if (propertyInfo){propertyName =propertyInfo.name;propertyType =propertyInfo.type;if (propertyInfo.isReadOnly){getter =instance['get_'+propertyName];var nestedObject =getter.call(instance);if (propertyType ==Array){if (childNode.childNodes.length !=0){var items =this.parseNodes(childNode.childNodes,markupContext);for (var itemIndex =0;itemIndex =0;a--){attr =attributes[a];nestedObject[attr.nodeName]=attr.nodeValue;} } else {this.initializeObject(nestedObject,childNode,markupContext);} } else {propertyValue =null;if (propertyType ==String){propertyValue =childNode.text;} else if (childNode.childNodes.length !=0){var valueNode;for (var childNodeIndex =0;childNodeIndex ');endIndex =scriptMarkup.lastIndexOf('>',endIndex -1);scriptMarkup =scriptMarkup.substring(startIndex,endIndex +1);} if (scriptMarkup.length ==0){continue;} var scriptDOM =new XMLDOM(scriptMarkup);var scriptDocumentNode =scriptDOM.childNodes[0];scripts.add(scriptDocumentNode);} } this.processDocumentScripts(markupContext,scripts,completionHandler);} this.processDocumentDelta =function(markupContext,scriptDocumentNode){var scriptDocumentItemNodes =scriptDocumentNode.childNodes;for (var i =scriptDocumentItemNodes.length -1;i >=0;i--){var node =scriptDocumentItemNodes[i];if (node.nodeType !=1){continue;} if (node.baseName =='components'){markupContext.open();this.parseNodes(node.childNodes,markupContext);markupContext.close();break;} } } this.processDocumentScripts =function(markupContext,scripts,completionHandler){var references =[];var componentNodes =[];for (var s =0;s =0;i--){var node =scriptDocumentItemNodes[i];if (node.nodeType !=1){continue;} if (node.baseName =='components'){for (var c =0;c 0){_dataPathParts =_dataPath.split('.');} } Sys.BindingBase.registerBaseMethod(this,'initialize');this._evaluateDataPath =function(){var object =_source;for (var i =0;i <_dataPathParts.length -1;i++){object =Sys.TypeDescriptor.getProperty(object,_dataPathParts[i]);if (!object){return null;} } return object;} this._get_dataPathParts =function(){return _dataPathParts;} this._getSource =function(){return _source;} this._getSourceValue =function(targetPropertyType){if (_dataPath &&_dataPath.length){var propertyObject =_source;var propertyName =_dataPath;if (_dataPathParts){propertyObject =this._evaluateDataPath();if (propertyObject ==null){return null;} propertyName =_dataPathParts[_dataPathParts.length -1];} return Sys.TypeDescriptor.getProperty(propertyObject,propertyName);} if (_source &&Sys.ICustomTypeDescriptor.isImplementedBy(_source)){return _source.getProperty('');} return _source;} Sys.BindingBase.registerBaseMethod(this,'_getSourceValue');this._getTarget =function(){return _target;} this._getTargetValue =function(destinationType){var value =Sys.TypeDescriptor.getProperty(_target,_property,_propertyKey);var canceled =false;if (this.transform.isActive()){var be =new Sys.BindingEventArgs(value,Sys.BindingDirection.Out,destinationType,_transformerArgument);this.transform.invoke(this,be);canceled =be.get_canceled();if (!canceled){value =be.get_value();} else {value =null;} } return value;} } Sys.BindingBase.registerAbstractClass('Sys.BindingBase',null,Sys.IDisposable,Sys.ITypeDescriptorProvider);Sys.BindingBase.parseFromMarkup =function(type,node,markupContext){var newBinding =new type();var builtInTransform;var transformAttribute =node.attributes.getNamedItem('transform');if (transformAttribute){var transformValue =transformAttribute.nodeValue;builtInTransform =Sys.BindingBase.Transformers[transformValue];} if (builtInTransform){newBinding.transform.add(builtInTransform);node.attributes.removeNamedItem('transform');} var binding =Sys.MarkupParser.initializeObject(newBinding,node,markupContext);if (builtInTransform){node.attributes.setNamedItem(transformAttribute)} if (binding){if (binding.get_id()){markupContext.addObject(binding.get_id(),binding);} return binding;} else {newBinding.dispose();} return null;} Sys.BindingBase.Transformers ={};Sys.BindingBase.Transformers.Invert =function(sender,eventArgs){eventArgs.set_value(!eventArgs.get_value());} Sys.BindingBase.Transformers.ToString =function(sender,eventArgs){var value =eventArgs.get_value();var newValue ='';var formatString =eventArgs.get_transformerArgument();var placeHolder =(formatString &&(formatString.length !=0))?formatString.indexOf('{0}'):-1;if (placeHolder !=-1){newValue =String.format(formatString,value);} else if (value){newValue =value.toString();} else {newValue =formatString;} eventArgs.set_value(newValue);} Sys.BindingBase.Transformers.ToLocaleString =function(sender,eventArgs){var value =eventArgs.get_value();var newValue ='';var formatString =eventArgs.get_transformerArgument();var placeHolder =(formatString &&(formatString.length !=0))?formatString.indexOf('{0}'):-1;if (placeHolder !=-1){newValue =String.localeFormat(formatString,value);} else if (value){newValue =value.toLocaleString();} else {newValue =formatString;} eventArgs.set_value(newValue);} Sys.BindingBase.Transformers.Add =function(sender,eventArgs){var value =eventArgs.get_value();if (typeof(value)!='number'){value =Number.parse(value);} var delta =eventArgs.get_transformerArgument();if (!delta){delta =1;} if (typeof(delta)!='number'){delta =Number.parse(delta);} if (eventArgs.get_direction()==Sys.BindingDirection.Out){delta =-delta;} var newValue =value +delta;if (eventArgs.get_targetPropertyType()!='number'){newValue =newValue.toString();} eventArgs.set_value(newValue);} Sys.BindingBase.Transformers.Multiply =function(sender,eventArgs){var value =eventArgs.get_value();if (typeof(value)!='number'){value =Number.parse(value);} var factor =eventArgs.get_transformerArgument();if (!factor){factor =1;} if (typeof(factor)!='number'){factor =Number.parse(factor);} var newValue;if (eventArgs.get_direction()==Sys.BindingDirection.Out){newValue =value /factor;} else {newValue =value *factor;} if (eventArgs.get_targetPropertyType()!='number'){newValue =newValue.toString();} eventArgs.set_value(newValue);} Sys.BindingBase.Transformers.Compare =function(sender,eventArgs){var value =eventArgs.get_value();var compareValue =eventArgs.get_transformerArgument();if (compareValue ===null){value =value ?true :false;} else {value =(value ===compareValue);} eventArgs.set_value(value);} Sys.BindingBase.Transformers.CompareInverted =function(sender,eventArgs){var value =eventArgs.get_value();var compareValue =eventArgs.get_transformerArgument();if (compareValue ===null){value =value ?false :true;} else {value =(value !==compareValue);} eventArgs.set_value(value);} Sys.BindingBase.Transformers.RSSTransform =function(sender,eventArgs){function getNodeValue(source,xPath){var node =source.selectSingleNode(xPath);if (node){return node.nodeValue;} return null;} var xmlNodes =eventArgs.get_value();if (!xmlNodes){return;} var dataItems =new Sys.Data.DataTable([new Sys.Data.DataColumn('title',String,null,false,true),new Sys.Data.DataColumn('description',String,null,false,true),new Sys.Data.DataColumn('link',String,null,false,true),new Sys.Data.DataColumn('author',String,null,false,true),new Sys.Data.DataColumn('category',String,null,false,true),new Sys.Data.DataColumn('comments',String,null,false,true),new Sys.Data.DataColumn('guid',String,null,true,true),new Sys.Data.DataColumn('pubDate',String,null,false,true),new Sys.Data.DataColumn('source',String,null,false,true)]);for (var i =0;i =0;e--){_events[e].dispose();_events[e]=null;} _events =null;} Sys.Runtime.unregisterDisposableObject(this);} Sys.Component.registerBaseMethod(this,'dispose');this.endUpdate =function(){_updating =false;if (!_initialized){this.initialize();} this.updated();} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('bindings',Array,true);td.addProperty('dataContext',Object);td.addProperty('id',String);td.addProperty('isInitialized',Boolean,true);td.addProperty('isUpdating',Boolean,true);td.addEvent('propertyChanged',true);return td;} Sys.Component.registerBaseMethod(this,'getDescriptor');this.initialize =function(){if (_bindings){for (var i =0;i <_bindings.length;i++){_bindings[i].initialize(this);} } _initialized =true;} Sys.Component.registerBaseMethod(this,'initialize');this.raisePropertyChanged =function(propertyName){this.propertyChanged.invoke(this,new Sys.PropertyChangedEventArgs(propertyName));} Sys.Component.registerBaseMethod(this,'raisePropertyChanged');this.updated =function(){} Sys.Component.registerBaseMethod(this,'updated');} Sys.Component.registerAbstractClass('Sys.Component',null,Sys.IDisposable,Sys.ITypeDescriptorProvider,Sys.ISupportBatchedUpdates,Sys.INotifyPropertyChanged);Sys.Component.parseFromMarkup =function(type,node,markupContext){var newComponent =Type.createInstance(type);var dataContextHidden =false;var dataContext =markupContext.get_dataContext();if (dataContext){dataContextHidden =markupContext.hideDataContext();} var component =Sys.MarkupParser.initializeObject(newComponent,node,markupContext);if (component){if (component.get_id()){markupContext.addObject(component.get_id(),component);} if (dataContext){component.set_dataContext(dataContext);} } else {newComponent.dispose();} if (dataContextHidden){markupContext.restoreDataContext();} return component;} Sys.Component.createCollection =function(component){var collection =[];collection._component =component;collection.collectionChanged =new Type.Event(collection);collection._add =collection.add;collection.add =function(item){this._add(item);item.setOwner(this._component);this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(Sys.NotifyCollectionChangedAction.Add,item));} collection._clear =collection.clear;collection.clear =function(){for (var i =this.length -1;i >=0;i--){this[i].dispose();this[i]=null;} this._clear();this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(Sys.NotifyCollectionChangedAction.Reset,null));} collection.dispose =function(){this.clear();this._component =null;} collection._remove =collection.remove;collection.remove =function(item){item.dispose();this._remove(item);this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(Sys.NotifyCollectionChangedAction.Remove,item));} collection._removeAt =collection.removeAt;collection.removeAt =function(index){var item =this[index];item.dispose();this._removeAt(index);this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(Sys.NotifyCollectionChangedAction.Remove,item));} return collection;} Sys.Reference =function(){var _component;var _onload;this.get_component =function(){return _component;} this.set_component =function(value){_component =value;} this.get_onscriptload =function(){return _onload;} this.set_onscriptload =function(value){_onload =value;} this.dispose =function(){_component =null;} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('component',Object);td.addProperty('onscriptload',String);return td;} } Sys.Reference.registerSealedClass('Sys.Reference',null,Sys.ITypeDescriptorProvider,Sys.IDisposable);Sys.TypeDescriptor.addType('script','reference',Sys.Reference);Sys.Reference.parseFromMarkup =function(type,node,markupContext){var newReference =new Sys.Reference();var reference =Sys.MarkupParser.initializeObject(newReference,node,markupContext);if (reference){return reference;} else {newReference.dispose();} return null;} Sys.Action =function(){Sys.Action.initializeBase(this,[false]);var _eventSource;var _eventArgs;var _result;var _target;var _sequence =Sys.ActionSequence.BeforeEventHandler;this.get_dataContext =function(){return this;} this.get_eventArgs =function(){return _eventArgs;} this.get_result =function(){return _result;} this.get_sequence =function(){return _sequence;} this.set_sequence =function(value){_sequence =value;} this.get_sender =function(){return _eventSource;} this.get_target =function(){return _target;} this.set_target =function(value){_target =value;} this.dispose =function(){_target =null;_eventSource =null;Sys.Action.callBaseMethod(this,'dispose');} Sys.Action.registerBaseMethod(this,'dispose');this.execute =function(sender,eventArgs){_eventArgs =eventArgs;var bindings =this.get_bindings();var i;for (i =0;i _lowerBound);} this.get_canIncrement =function(){return isNaN(_upperBound)||(_value <_upperBound);} this.get_lowerBound =function(){return _lowerBound;} this.set_lowerBound =function(value){if ((isNaN(value)&&isNaN(_lowerBound))||(value ==_lowerBound))return;var oldCanDecrement =this.get_canDecrement();_lowerBound =value;this.raisePropertyChanged('lowerBound');if (oldCanDecrement !=this.get_canDecrement()){this.raisePropertyChanged('canDecrement');} } this.get_upperBound =function(){return _upperBound;} this.set_upperBound =function(value){if ((isNaN(value)&&isNaN(_upperBound))||(value ==_upperBound))return;var oldCanIncrement =this.get_canIncrement();_upperBound =value;this.raisePropertyChanged('upperBound');if (oldCanIncrement !=this.get_canIncrement()){this.raisePropertyChanged('canIncrement');} } this.get_value =function(){return _value;} this.set_value =function(value){if ((isNaN(_lowerBound)||(value >=_lowerBound))&&(isNaN(_upperBound)||(value <=_upperBound))&&(_value !=value)){var oldCanDecrement =this.get_canDecrement();var oldCanIncrement =this.get_canIncrement();_value =value;this.raisePropertyChanged('value');if (oldCanDecrement !=this.get_canDecrement()){this.raisePropertyChanged('canDecrement');} if (oldCanIncrement !=this.get_canIncrement()){this.raisePropertyChanged('canIncrement');} } } this.decrement =function(){this.set_value(_value -1);} this.increment =function(){this.set_value(_value +1);} } Sys.Counter.registerSealedClass('Sys.Counter',Sys.Component);Sys.TypeDescriptor.addType('script','counter',Sys.Counter);Sys.ITask =function(){this.execute =Function.abstractMethod;} Sys.ITask.registerInterface('Sys.ITask');Sys._TaskManager =function(){var _tasks =[];var _timeoutCookie;var _timeoutHandler;Sys.Runtime.registerDisposableObject(this);this.addTask =function(task){_tasks.queue(task);this._startTimeout();} this.dispose =function(){if (_timeoutCookie){window.clearTimeout(_timeoutCookie);} if (_tasks &&_tasks.length){for (var i =_tasks.length -1;i >=0;i--){_tasks[i].dispose();} } _tasks =null;_timeoutHandler =null;Sys.Runtime.unregisterDisposableObject(this);} this._onTimeout =function(){_timeoutCookie =0;var task =_tasks.dequeue();if (!task.execute()){_tasks.queue(task);} if (_tasks.length){this._startTimeout();} } this._startTimeout =function(){if (!_timeoutCookie){if (!_timeoutHandler){_timeoutHandler =Function.createDelegate(this,this._onTimeout);} _timeoutCookie =window.setTimeout(_timeoutHandler,0);} } } Sys._TaskManager.registerSealedClass('Sys._TaskManager',null,Sys.IDisposable);Sys.TaskManager =new Sys._TaskManager();Type.registerNamespace('Sys.Serialization');Sys.Serialization.JSON =new function(){function serializeWithBuilder(object,stringBuilder){var i;switch (typeof object){case 'object':if (object){if (Array.isInstanceOfType(object)){stringBuilder.append('[');for (i =0;i 0){stringBuilder.append(',');} stringBuilder.append(serializeWithBuilder(object[i],stringBuilder));} stringBuilder.append(']');} else {if (typeof object.serialize =='function'){stringBuilder.append(object.serialize());break;} stringBuilder.append('{');var needComma =false;for (var name in object){if (name.startsWith('$')){continue;} var value =object[name];if (typeof value !='undefined'&&typeof value !='function'){if (needComma){stringBuilder.append(',');} else {needComma =true;} stringBuilder.append(serializeWithBuilder(name,stringBuilder));stringBuilder.append(':');stringBuilder.append(serializeWithBuilder(value,stringBuilder));} } stringBuilder.append('}');} } else {stringBuilder.append('null');} break;case 'number':if (isFinite(object)){stringBuilder.append(String(object));} else {stringBuilder.append('null');} break;case 'string':stringBuilder.append('"');var length =object.length;for (i =0;i =' '){if (curChar =='\\'||curChar =='"'){stringBuilder.append('\\');} stringBuilder.append(curChar);} else {switch (curChar){case '\b':stringBuilder.append('\\b');break;case '\f':stringBuilder.append('\\f');break;case '\n':stringBuilder.append('\\n');break;case '\r':stringBuilder.append('\\r');break;case '\t':stringBuilder.append('\\t');break;default:stringBuilder.append('\\u00');stringBuilder.append(curChar.charCodeAt().toString(16));} } } stringBuilder.append('"');break;case 'boolean':stringBuilder.append(object.toString());break;default:stringBuilder.append('null');break;} } this.serialize =function(object){var stringBuilder =new Sys.StringBuilder();serializeWithBuilder(object,stringBuilder);return stringBuilder.toString();} this.deserialize =function(data){return eval('('+data +')');} } Date.prototype.serialize =function(){var stringBuilder =new Sys.StringBuilder();stringBuilder.append('new Date(');stringBuilder.append(Date.UTC(this.getUTCFullYear(),this.getUTCMonth(),this.getUTCDate(),this.getUTCHours(),this.getUTCMinutes(),this.getUTCSeconds(),this.getUTCMilliseconds()));stringBuilder.append(')');return stringBuilder.toString();} Type.registerNamespace('Sys.Net');Sys.Net.WebRequestExecutor =function(){var _webRequest =null;var _resultObject =null;var _resultXml =null;this.get_webRequest =function(){return _webRequest;} this.set_webRequest =function(value){_webRequest =value;} this.get_userContext =function(){return _webRequest.get_userContext();} this.executeRequest =Function.abstractMethod;this.abort =Function.abstractMethod;this.get_isActive =Function.abstractMethod;this.get_isComplete =Function.abstractMethod;this.get_timedOut =Function.abstractMethod;this.get_data =Function.abstractMethod;this.get_statusCode =Function.abstractMethod;this.get_statusText =Function.abstractMethod;this.get_object =function(){if (!_resultObject){_resultObject =Sys.Serialization.JSON.deserialize(this.get_data());} return _resultObject;} this.get_xml =function(){if (!_resultXml){_resultXml =new XMLDOM(this.get_data());if (!_resultXml ||!_resultXml.documentElement)return null;} return _resultXml;} Sys.Net.WebRequestExecutor.registerBaseMethod(this,'get_xml');} Sys.Net.WebRequestExecutor.registerAbstractClass('Sys.Net.WebRequestExecutor');Type.createEnum('Sys.Net.WebRequestExecutorType','XmlHttp',0,'IFrame',1);Sys.Net.XMLHttpExecutor =function(){Sys.Net.XMLHttpExecutor.initializeBase(this);var _this =this;var _xmlHttpRequest =null;var _webRequest =null;var _isComplete =false;var _timedOut =false;var _timer =null;this.get_timedOut =function(){return _timedOut;} this.get_isActive =function(){return _xmlHttpRequest !=null;} this.get_isComplete =function(){return _isComplete;} this.executeRequest =function(){_webRequest =this.get_webRequest();var body =_webRequest.get_body();var headers =_webRequest.get_headers();_xmlHttpRequest =new XMLHttpRequest();_xmlHttpRequest.onreadystatechange =onReadyStateChange;if (body !=null){_xmlHttpRequest.open('POST',_webRequest.get_resolvedUrl(),true );if ((headers ==null)||!headers['Content-Type']){_xmlHttpRequest.setRequestHeader('Content-Type','application/x-www-form-urlencoded');} } else {_xmlHttpRequest.open('GET',_webRequest.get_resolvedUrl(),true );} if (headers !=null){for (var header in headers){var val =headers[header];if (typeof(val)!="function")_xmlHttpRequest.setRequestHeader(header,val);} } var timeoutInterval =_webRequest.get_timeoutInterval();if (timeoutInterval >0){_timer =window.setTimeout(Function.createDelegate(this,onTimeout),timeoutInterval);} _xmlHttpRequest.send(body);} this.get_data =function(){return _xmlHttpRequest.responseText;} this.get_statusCode =function(){return _xmlHttpRequest.status;} this.get_statusText =function(){return _xmlHttpRequest.statusText;} this.get_xml =function(){var xml =_xmlHttpRequest.responseXML;if (!xml ||!xml.documentElement){xml =new XMLDOM(_xmlHttpRequest.responseText);if (!xml ||!xml.documentElement)return null;} else if (Sys.Runtime.get_hostType()==Sys.HostType.InternetExplorer){xml.setProperty('SelectionLanguage','XPath');} return xml;} function onReadyStateChange(){if (_xmlHttpRequest.readyState ==4 ){ClearTimer();_isComplete =true;if (_webRequest.completed !=null)_webRequest.completed.invoke(_this,null);cleanupXmlHttpRequest();} } function ClearTimer(){if (_timer !=null){window.clearTimeout(_timer);_timer =null;} } function onTimeout(){if (!_isComplete){ClearTimer();_timedOut =true;_isComplete =true;_xmlHttpRequest.onreadystatechange =Function.emptyMethod;_xmlHttpRequest.abort();_webRequest.timeout.invoke(_webRequest,null);_xmlHttpRequest =null;} } this.abort =function(){ClearTimer();if (_xmlHttpRequest !=null &&!_isComplete){_xmlHttpRequest.onreadystatechange =Function.emptyMethod;_xmlHttpRequest.abort();_xmlHttpRequest =null;_webRequest.aborted.invoke(_webRequest,null);} } function cleanupXmlHttpRequest(){if (_xmlHttpRequest !=null){_xmlHttpRequest.onreadystatechange =Function.emptyMethod;_xmlHttpRequest =null;} } } Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor',Sys.Net.WebRequestExecutor);Sys.Net.IFrameExecutor =function(){Sys.Net.IFrameExecutor.initializeBase(this);if (!Sys.Net.IFrameManager){Sys.Net.IFrameManager =new Sys.Net._IFrameManager();} var _this =this;var _webRequest =null;var _isComplete =false;var _responseData;var _iframe;var _loaded =false;var _timer =null;var _base64Table =['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9','-','_','='];this.get_isActive =function(){return _iframe !=null;} this.get_isComplete =function(){return _isComplete;} this.executeRequest =function(){Sys.Net.IFrameManager.getAvailableIFrame(Function.createDelegate(this,executeRequestInternal));} function URLTokenEncode(input){var bytes =new Array();var result ="";for (var index =0;index >6);bytes.push(0x80 |charCode &0x3f);} else if (charCode <0x010000){bytes.push(0xe0 |charCode >>12);bytes.push(0x80 |((charCode &0xfff)>>6));bytes.push(0x80 |charCode &0x3f);} else {bytes.push(0xf0 |charCode >>18);bytes.push(0x80 |((charCode &0x3ffff)>>12));bytes.push(0x80 |((charCode &0xfff)>>6));bytes.push(0x80 |charCode &0x3f);} } var i =0;while (i >2];result +=_base64Table[(i1 &0x03)<<4 |i2 >>4];result +=_base64Table[(i2 &0x0f)<<2 |i3 >>6];result +=_base64Table[i3 &0x3f];} switch (bytes.length -i){case 2 :var i1 =bytes[i++];var i2 =bytes[i++];result +=_base64Table[i1 >>2];result +=_base64Table[(i1 &0x03)<<4 |i2 >>4];result +=_base64Table[(i2 &0x0f)<<2];result +='1';break;case 1:var i1 =bytes[i++];result +=_base64Table[i1 >>2];result +=_base64Table[(i1 &0x03)<<4];result +='2';break;case 0:result +='0';} return result;} function executeRequestInternal(iframe){_webRequest =this.get_webRequest();_iframe =iframe;var requestData ={headers:_webRequest.get_headers(),uri:_webRequest.get_resolvedUrl(),body:_webRequest.get_body()};var appUrl =Sys.Net.WebRequest.resolveUrl(_webRequest.get_appUrl());var queryString ={data:Sys.Serialization.JSON.serialize(requestData)};var url =appUrl +"iframecall.axd"+'?'+Sys.Net.WebRequest.createQueryString(queryString,URLTokenEncode);var frameDoc =_iframe.document;frameDoc.open("about:blank","_self","",true );frameDoc.write();_iframe.__exec =this;frameDoc.write('');var scriptElement =frameDoc.getElementById("script");var timeoutInterval =_webRequest.get_timeoutInterval();if (timeoutInterval >0){_timer =window.setTimeout(Function.createDelegate(this,onTimeout),timeoutInterval);} function onScriptLoaded(){if (scriptElement.readyState =='complete'||scriptElement.readyState =='loaded'){_loaded =true;if (!_isComplete){_this.onMethodComplete({content:"A web request made using the iframe executor failed. Make sure that the app's web.config registers iframecall.axd in its .",status:500});} } } if (Sys.Runtime.get_hostType()!=Sys.HostType.InternetExplorer){scriptElement.readyState ='loaded';scriptElement.onload =onScriptLoaded;} else {scriptElement.onreadystatechange =onScriptLoaded;} frameDoc.close();} this.get_data =function(){if (_responseData){return _responseData.content;} return null;} this.get_statusCode =function(){if (_responseData){return _responseData.status;} if (_timedOut){if (_loaded){return 500;} return 408;} } this.get_statusText =function(){return "Status text not available";} this.abort =function(){ClearTimer();if (_iframe !=null &&!_isComplete){releaseIFrame();_webRequest.aborted.invoke(_webRequest,null);} } this.onMethodComplete =function(responseData){if (!_iframe){return;} releaseIFrame();_responseData =responseData;_isComplete =true;if (_webRequest.completed !=null){_webRequest.completed.invoke(_this,null);} ClearTimer();} function ClearTimer(){if (_timer !=null){window.clearTimeout(_timer);_timer =null;} } function onTimeout(){releaseIFrame();if (!_isComplete){ClearTimer();_timedOut =true;_isComplete =true;_webRequest.timeout.invoke(_webRequest,null);} } function releaseIFrame(){if (_iframe !=null){Sys.Net.IFrameManager.releaseIFrame(_iframe);_iframe =null;} } } Sys.Net.IFrameExecutor.registerClass('Sys.Net.IFrameExecutor',Sys.Net.WebRequestExecutor);Sys.Net._IFrameManager =function(){var _iframes;var _waitingQueue =new Array();var _frames =2;this.get_frames =function(){return _frames;} this.set_frames =function(value){_frames =value;} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('frames',Number);return td;} this.getAvailableIFrame =function(callback){var iframe =findAvailableIFrame();if (iframe !=null){callback(iframe);return true;} _waitingQueue.add(callback);return false;} this.releaseIFrame =function(iframe){iframe._available =true;if (_waitingQueue.length >0){window.setTimeout(Function.createDelegate(this,processNextItemInQueue),0);} } function processNextItemInQueue(){if (_waitingQueue.length ==0)return;var iframe =findAvailableIFrame();if (iframe !=null){callback =_waitingQueue.dequeue();callback(iframe);} } function findAvailableIFrame(){ensureIFramesCreated();for (var i=0;i<_iframes.length;i++){if (_iframes[i]._available){_iframes[i]._available =false;return _iframes[i];} } return null;} function ensureIFramesCreated(){if (_iframes)return;_iframes =new Array();for (var i=0;i<_frames;i++){_iframes[i]=createIFrame();_iframes[i]._available =true;} } function createIFrame(){var iframe =document.createElement("iframe");iframe.setAttribute("width",0);iframe.setAttribute("height",0);iframe.style.visibility ="hidden";var frameCount =window.frames.length;document.body.appendChild(iframe);return window.frames[frameCount];} } Sys.Net._IFrameManager.registerSealedClass('Sys.Net._IFrameManager',null,Sys.ITypeDescriptorProvider);Sys.TypeDescriptor.addType('script','iframemanager',Sys.Net._IFrameManager);Sys.Net._IFrameManager.parseFromMarkup =function(type,node,markupContext){if (!markupContext.get_isGlobal()){return null;} if (!Sys.Net.IFrameManager){Sys.Net.IFrameManager =new Sys.Net._IFrameManager();} Sys.MarkupParser.initializeObject(Sys.Net.IFrameManager,node,markupContext);return Sys.Net.IFrameManager;} Sys.Net._WebRequestManager =function(){var _requestQueue =new Object();var _batchDelay =500;var _timeoutInterval =0;var _executorType =Sys.Net.XMLHttpExecutor;var _enableBatching =false;var _batchSize =5;var _defaultAppUrl =document.URL.substr(0,document.URL.lastIndexOf('/')+1);var _defaultDomain =getDomainFromUrl(document.URL);this.get_batchDelay =function(){return _batchDelay;} this.set_batchDelay =function(value){_batchDelay =value;} this.get_timeoutInterval =function(){return _timeoutInterval;} this.set_timeoutInterval =function(value){_timeoutInterval =value;} this.get_enableBatching =function(){return _enableBatching;} this.set_enableBatching =function(value){_enableBatching =value;} this.get_batchSize =function(){return _batchSize;} this.set_batchSize =function(value){_batchSize =value;} this.get_executorType =function(){return _executorType;} this.set_executorType =function(value){switch (value){case Sys.Net.WebRequestExecutorType.XmlHttp:_executorType =Sys.Net.XMLHttpExecutor;break;case Sys.Net.WebRequestExecutorType.IFrame:_executorType =Sys.Net.IFrameExecutor;break;default:} } this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('batchDelay',Number);td.addProperty('timeoutInterval',Number);td.addProperty('enableBatching',Boolean);td.addProperty('batchSize',Number);td.addProperty('executorType',Sys.Net.WebRequestExecutorType);return td;} this.enqueue =function(webRequest){if (webRequest.get_aborted()==true){return;} if (!_enableBatching ||webRequest.get_priority()==Sys.Net.WebRequestPriority.High){executeRequest(webRequest);} else {var appUrl =Sys.Net.WebRequest.resolveUrl(webRequest.get_appUrl());appUrl =appUrl.toLowerCase();var queueInfo =_requestQueue[appUrl];if (!queueInfo){queueInfo =new Object();queueInfo.queue =new Array();queueInfo.appUrl =appUrl;_requestQueue[appUrl]=queueInfo;} var queue =queueInfo.queue;queue.add(webRequest);if (queue.length >=_batchSize){sendBatchedRequests(queueInfo);} else if (queue.length ==1){function onTimer(){queueInfo.timer =null;if (queue.length >0){sendBatchedRequests(queueInfo);} } queueInfo.timer =window.setTimeout(onTimer,_batchDelay);} } } this.flush =function(){for (var appUrl in _requestQueue){var queueInfo =_requestQueue[appUrl];sendBatchedRequests(queueInfo);} } function containsHost(url){if (url.indexOf(':')!=-1){return true;} return false;} function isAbsoluteUrl(url){if (containsHost(url)){return true;} var firstChar =url.charAt(0);if (firstChar =='/'||firstChar =='\\'){return true;} return false;} function sendBatchedRequests(queueInfo){var queue =queueInfo.queue;if (queue.length ==0)return;var appUrl =queueInfo.appUrl;queue.sort(compareRequestPriority);var request;if (queue.length ==1 ||_batchSize ==1){request =queue[0];} else {request =createBatchRequest(appUrl,queue);} executeRequest(request);queueInfo.queue =new Array();if (queueInfo.timer){window.clearTimeout(queueInfo.timer);queueInfo.timer =null;} } function getDomainFromUrl(url){var i =url.indexOf('://');if (i ==-1 ||i >10){return null;} var j =url.indexOf('/',i +3);var host;if (j >-1){host =url.substring(i +3,j);} else {host =url.substring(i +3);} var parts =host.split('.');var length =parts.length;var domain =host;if (length >2){domain =parts[length -2]+'.'+parts[length -1];} return domain.toLowerCase();} function isCrossDomainRequest(webRequest){var domain;var url =webRequest.get_resolvedUrl();domain =getDomainFromUrl(url);if (!domain){return false;} return domain !=_defaultDomain;} function executeRequest(webRequest){if (webRequest.get_aborted()==true){return;} var executor =null;if (_executorType !=Sys.Net.IFrameExecutor &&!webRequest.get_forceXmlHttp()&&isCrossDomainRequest(webRequest)){executor =new Sys.Net.IFrameExecutor();} else {executor =new _executorType();} executor.set_webRequest(webRequest);if (Sys.Runtime.get_hostType()!=Sys.HostType.InternetExplorer){webRequest.get_headers().referer =document.URL;} webRequest.set_executor(executor);if (_timeoutInterval !=0 &&webRequest.get_timeoutInterval()==0){webRequest.set_timeoutInterval(_timeoutInterval);} executor.executeRequest();} function createBatchRequest(appUrl,requests){var batchRequestData =new Array();var batchRequest =new Sys.Net.WebRequest();var forceXmlHttp =false;for (var i=0;i=300){for (var i=0;i=0){request.set_priority(priority);} request.invoke();function onComplete(response,eventArgs){var statusCode =response.get_statusCode();var result =null;try {result =response.get_object();} catch (ex){try {result =response.get_xml();} catch (ex){} } if (((statusCode <200)||(statusCode >=300))||Sys.Net.MethodRequestError.isInstanceOfType(result)){if (onMethodError){onMethodError(result,response,userContext);} } else if (onMethodComplete){onMethodComplete(result,response,userContext);} } function onTimeout(request,eventArgs){if (onMethodTimeout){onMethodTimeout(request,userContext);} } function onAborted(request,eventArgs){if (onMethodAborted){onMethodAborted(request,userContext);} } return request;} } Sys.Net.WebMethod.registerAbstractClass('Sys.Net.WebMethod');Sys.Net.WebMethod.generateTypedConstructor =function(serverType){return function(properties){this.__serverType =serverType;if (properties !=null){for (var name in properties){this[name]=properties[name];} } } } Sys.Net.ServiceMethod =function(url,methodName,appUrl){Sys.Net.ServiceMethod.initializeBase(this);this.addHeaders =function(headers){headers['Content-Type']='application/json';} this.get_url =function(params,useGetMethod){if (!useGetMethod ||!params)params ={};params.mn =methodName;var fullUrl =Sys.Net.WebRequest.createUrl(url,params );delete params.mn;return fullUrl;} this.get_body =function(params,useGetMethod){if (useGetMethod)return null;var body =Sys.Serialization.JSON.serialize(params);if (body =="{}")return "";return body;} this.get_appUrl =function(){return appUrl;} } Sys.Net.ServiceMethod.registerClass('Sys.Net.ServiceMethod',Sys.Net.WebMethod);Sys.Net.ServiceMethod.invoke =function(methodURL,methodName,appUrl){var method =new Sys.Net.ServiceMethod(methodURL,methodName,appUrl);var callMethodArgs =new Array();for (var i=3;i=0;i--){_dataTable.remove(_rows[i]._get_row());} _rows =[];_indexToRow =null;_suspendNotifications =false;this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Reset,null);} this.getRow =function(index){return _rows[index];} this.getItem =this.getRow;this.remove =function(rowObject){_dataTable.remove(rowObject._get_row());} this.dispose =function(){if (_dataTable &&_tableCollectionChanged){_dataTable.collectionChanged.remove(_tableCollectionChanged);} if (this.collectionChanged){this.collectionChanged.dispose();this.collectionChanged =null;} if (this.propertyChanged){this.propertyChanged.dispose();this.propertyChanged =null;} _rows =null;_dataTable =null;} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('length',Number,true);td.addMethod('add');td.addMethod('clear');td.addMethod('remove');td.addEvent('collectionChanged',true);td.addEvent('propertyChanged',true);return td;} this.initialize =function(){if (_dataTable.collectionChanged){_tableCollectionChanged =Function.createDelegate(this,onTableCollectionChanged);_dataTable.collectionChanged.add(_tableCollectionChanged);} } this.collectionChanged =new Type.Event(null);this.propertyChanged =new Type.Event(null);this.raiseCollectionChanged =function(action,changedItem){this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(action,changedItem));} function ensureLookupTable(){if (!_indexToRow){_indexToRow =[];for (var j =_rows.length -1;j >=0;j--){var row =_rows[j];_indexToRow[row.get_dataIndex()]=row;} } } function onTableCollectionChanged(sender,args){if (_suspendNotifications)return;switch(args.get_action()){case Sys.NotifyCollectionChangedAction.Reset:_rows =[];_indexToRow =null;this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Reset,changedItem);return;case Sys.NotifyCollectionChangedAction.Remove:var changedItem =args.get_changedItem();ensureLookupTable();var idx =changedItem.get_index();if (_indexToRow[idx]){_rows.remove(_indexToRow[idx]);delete _indexToRow[idx];this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Remove,changedItem);} return;} } } Sys.Data.DataRowCollection.registerSealedClass('Sys.Data.DataRowCollection',null,Sys.Data.IData,Sys.IArray,Sys.INotifyPropertyChanged,Sys.INotifyCollectionChanged,Sys.ITypeDescriptorProvider,Sys.IDisposable);Type.createEnum('Sys.Data.DataRowState','Unchanged',0,'Added',1,'Deleted',2,'Detached',3,'Modified',4);Sys.Data.DataTable =function(columns,tableArray){var _array =Array.isInstanceOfType(tableArray)?tableArray :[];var _columns =Array.isInstanceOfType(columns)?columns :[];var _columnDictionary ={};var _keys =null;var _rows =[];var _deletedRows =[];var _newRows =[];var _updatedRows =[];this.get_columns =function(){return _columns;} this.get_keyNames =function(){if (!_keys){_keys =[];var len =_columns.length;for (var i =0;i =0;i--){var column =columns[i];if (typeof(rowObject[column.get_columnName()])=="undefined"){rowObject[column.get_columnName()]=column.get_defaultValue();} } } var oldIsDirty =this.get_isDirty();_array[index]=rowObject;_rows[index]=row;_newRows.add(rowObject);row._set_state(Sys.Data.DataRowState.Added);this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Add,row);this.raisePropertyChanged("length");if (!oldIsDirty){this.raisePropertyChanged("isDirty");} return row;} this.clear =function(){if (this.get_length()>0){var oldIsDirty =this.get_isDirty();for (var i =_array.length -1;i >=0;i--){var row =_array[i];if (row &&!_newRows.contains(row)){_deletedRows.add(row);_rows[i]._set_state(Sys.Data.DataRowState.Deleted);} } _rows =[];_array =[];_newRows =[];_updatedRows =[];this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Reset,null);this.raisePropertyChanged("length");if (!oldIsDirty){this.raisePropertyChanged("isDirty");} } } this.createRow =function(initialData){var obj ={};var undef ={};for (var i =_columns.length -1;i >=0;i--){var column =_columns[i];var columnName =column.get_columnName();var val =undef;if (initialData){val =Sys.TypeDescriptor.getProperty(initialData,columnName);} if ((val ==undef)||(typeof(val)=="undefined")){val =column.get_defaultValue();} obj[columnName]=val;} var row =new Sys.Data.DataRow(obj,this,-1);row._set_state(Sys.Data.DataRowState.Detached);return row;} this.getChanges =function(){return {updated :_updatedRows,inserted :_newRows,deleted :_deletedRows};} this.getColumn =function(name){var col =_columnDictionary[name];if (col){return col;} for (var c =_columns.length -1;c >=0;c--){var column =_columns[c];if (column.get_columnName()==name){_columnDictionary[name]=column;return column;} } return null;} this.getRow =function(index){var row =_rows[index];if (!row){var rowObject =_array[index];if (rowObject){row =Sys.Data.DataRow.isInstanceOfType(rowObject)?rowObject :new Sys.Data.DataRow(rowObject,this,index);_rows[index]=row;} } return row;} this.getItem =this.getRow;this.remove =function(rowObject){if (Sys.Data.DataRow.isInstanceOfType(rowObject)){rowObject =rowObject.get_rowObject();} var oldIsDirty =this.get_isDirty();var index =_array.indexOf(rowObject);var row =this.getItem(index);_array.removeAt(index);_rows.removeAt(index);index =_newRows.indexOf(rowObject);if (index !=-1){_newRows.removeAt(index);} else {_deletedRows.add(rowObject);} row._set_state(Sys.Data.DataRowState.Deleted);this.raiseCollectionChanged(Sys.NotifyCollectionChangedAction.Remove,row);this.raisePropertyChanged("length");if (oldIsDirty !=this.get_isDirty()){this.raisePropertyChanged("isDirty");} } this.dispose =function(){if (this.collectionChanged){this.collectionChanged.dispose();this.collectionChanged =null;} if (this.propertyChanged){this.propertyChanged.dispose();this.propertyChanged =null;} var i,row;if (_rows){for (i =_rows.length -1;i >=0;i--){row =_rows[i];if (row){_rows[i].dispose();} } } if (_deletedRows){for (i =_deletedRows.length -1;i >=0;i--){row =_deletedRows[i];if (row &&row.dispose){row.dispose();} } } if (_newRows){for (i =_newRows.length -1;i >=0;i--){row =_newRows[i];if (row &&row.dispose){row.dispose();} } } if (_updatedRows){for (i =_updatedRows.length -1;i >=0;i--){row =_updatedRows[i];if (row &&row.dispose){row.dispose();} } } _rows =null;_deletedRows =null;_newRows =null;_updatedRows =null;_columns =null;_array =null;_keys =null;} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('columns',Array,true);td.addProperty('keyNames',Array,true);td.addProperty('length',Number,true);td.addProperty('isDirty',Boolean,true);td.addMethod('add');td.addMethod('clear');td.addMethod('remove');td.addEvent('collectionChanged',true);td.addEvent('propertyChanged',true);return td;} this.collectionChanged =new Type.Event(null);this.propertyChanged =new Type.Event(null);this.raiseCollectionChanged =function(action,changedItem){this.collectionChanged.invoke(this,new Sys.CollectionChangedEventArgs(action,changedItem));} this.raiseRowChanged =function(changedItem){if ((_updatedRows.indexOf(changedItem)==-1)&&(_newRows.indexOf(changedItem)==-1)){var oldIsDirty =this.get_isDirty();_updatedRows.add(changedItem);if (!oldIsDirty){this.raisePropertyChanged("isDirty");} } } this.raisePropertyChanged =function(propertyName){this.propertyChanged.invoke(this,new Sys.PropertyChangedEventArgs(propertyName));} } Sys.Data.DataTable.registerSealedClass('Sys.Data.DataTable',null,Sys.Data.IData,Sys.IArray,Sys.INotifyPropertyChanged,Sys.INotifyCollectionChanged,Sys.ITypeDescriptorProvider,Sys.IDisposable);Sys.Data.DataView =function(){Sys.Data.DataView.initializeBase(this);var _data =null;var _filteredTable =null;var _filteredRows =null;var _paginatedRows =null;var _pageSize =0;var _pageIndex =0;var _sorted =false;var _sortColumn ='';var _sortDirection =Sys.Data.SortDirection.Ascending;var _filters;var _dataChangedDelegate;var _compareRowsDelegate;var _updating =false;this.get_data =function(){return _data;} this.set_data =function(data){_filteredTable =null;if (_data &&_data.collectionChanged){_data.collectionChanged.remove(_dataChangedDelegate);} _data =data;if (_data &&_data.collectionChanged){_data.collectionChanged.add(_dataChangedDelegate);} this.raisePropertyChanged('data');this.raisePropertyChanged('filteredData');} this.get_filteredData =function(){ensureFilteredData.call(this);return _filteredTable;} this.get_filters =function(){if (!_filters){_filters =Sys.Component.createCollection(this);_filters.collectionChanged.add(_dataChangedDelegate);} return _filters;} this.get_hasNextPage =function(){ensureFilteredData.call(this);return (this.get_pageIndex()0);} this.get_length =function(){ensureFilteredData.call(this);return _filteredTable ?_filteredTable.get_length():0;} this.get_pageCount =function(){if (_pageSize ==0){return 1;} ensureFilteredData.call(this);if (!_filteredRows)return 1;return Math.floor((_filteredRows.length -1)/_pageSize)+1;} this.get_pageIndex =function(){return _pageIndex;} this.set_pageIndex =function(value,dontRaiseFilteredDataChanged){var count =this.get_pageCount();if (value >=count){value =(count >0 ?count -1 :0);} if (value !=_pageIndex){var oldState =prepareChange.call(this);_pageIndex =value;_paginatedRows =null;triggerChangeEvents.call(this,oldState,false);if (!dontRaiseFilteredDataChanged){this.raisePropertyChanged('filteredData');} } } this.get_pageSize =function(){return _pageSize;} this.set_pageSize =function(value){if (_pageSize !=value){var oldState =prepareChange.call(this);_pageSize =value;_paginatedRows =null;triggerChangeEvents.call(this,oldState,true);this.raisePropertyChanged('filteredData');} } this.get_sortColumn =function(){return _sortColumn;} this.set_sortColumn =function(value){this.sort(value,_sortDirection);} this.get_sortDirection =function(){return _sortDirection;} this.set_sortDirection =function(value){this.sort(_sortColumn,value);} this.dispose =function(){if (_filters){_filters.dispose();_filters =null;} Sys.Data.DataView.callBaseMethod(this,'dispose');} Sys.Data.DataView.registerBaseMethod(this,'dispose');this.getDescriptor =function(){var td =Sys.Data.DataView.callBaseMethod(this,'getDescriptor');td.addProperty("data",Sys.Data.DataTable);td.addProperty("filteredData",Sys.Data.DataTable,true);td.addProperty("filters",Array,true);td.addProperty("hasNextPage",Boolean,true);td.addProperty("hasPreviousPage",Boolean,true);td.addProperty("length",Number,true);td.addProperty("pageCount",Number,true);td.addProperty("pageIndex",Number);td.addProperty("pageSize",Number);td.addProperty("sortColumn",String);td.addProperty("sortDirection",Sys.Data.SortDirection);td.addMethod("sort",[Sys.TypeDescriptor.createParameter('sortColumn',String),Sys.TypeDescriptor.createParameter('sortDirection',Sys.Data.SortDirection)]);return td;} Sys.Data.DataView.registerBaseMethod(this,'getDescriptor');this.getItem =function(index){return _filteredTable ?_filteredTable[index]:null;} this.initialize =function(){Sys.Data.DataView.callBaseMethod(this,'initialize');if (_filters){for (var i =0;i <_filters.length;i++){_filters[i].initialize(this);} } } Sys.Data.DataView.registerBaseMethod(this,'initialize');this.sort =function(sortColumn,sortDirection){var colChanged =(sortColumn !=_sortColumn);var dirChanged =(sortDirection !=_sortDirection);if (colChanged ||dirChanged){_sortColumn =sortColumn;_sortDirection =sortDirection;if (colChanged){this.raisePropertyChanged('sortColumn');} if (dirChanged){this.raisePropertyChanged('sortDirection');} _sorted =false;this.set_pageIndex(0,true);this.raisePropertyChanged('filteredData');} } this._raiseFilterChanged =function(filter){_dataChangedDelegate(this,Sys.EventArgs.Empty);} function compareRows(row1,row2){var sortColumn =this.get_sortColumn();var sortDirection =this.get_sortDirection();if (row1.getProperty(sortColumn)==row2.getProperty(sortColumn))return 0;if (row1.getProperty(sortColumn)=0;i--){_filteredRows[i]._set_index(i);} _sorted =true;_paginatedRows =null;_filteredTable =null;} if ((_pageSize >0)&&!_paginatedRows){_paginatedRows =[];_filteredTable =null;var len =_filteredRows.length;var start =_pageSize *_pageIndex;if (len &&(start >=len)){_pageIndex =Math.floor(len /_pageSize)-1;start =_pageSize *_pageIndex;} var end =start +_pageSize;for(var i =start;(i =count){pageIndex =(count >0 ?count -1 :0);this.set_pageIndex(pageIndex);} } else {count =oldState.pageCount;} if (pageIndex !=oldState.pageIndex){this.raisePropertyChanged('pageIndex');} if ((pageIndex 0)!=oldState.hasPreviousPage){this.raisePropertyChanged('hasPreviousPage');} } function prepareChange(){return {pageCount:this.get_pageCount(),pageIndex:this.get_pageIndex(),length:this.get_length(),hasNextPage:this.get_hasNextPage(),hasPreviousPage:this.get_hasPreviousPage()};} } Sys.Data.DataView.registerClass('Sys.Data.DataView',Sys.Component,Sys.IArray);Sys.TypeDescriptor.addType('script','dataView',Sys.Data.DataView);Sys.Data.DataFilter =function(){Sys.Data.DataFilter.initializeBase(this,[false]);this.filter =Function.abstractMethod;this.get_dataContext =function(){var dc =Sys.Data.DataFilter.callBaseMethod(this,'get_dataContext');if (!dc){if (this.owner){dc =this.owner.get_dataContext();} } return dc;} Sys.Data.DataFilter.registerBaseMethod(this,'get_dataContext');this.dispose =function(){this.owner =null;Sys.Data.DataFilter.callBaseMethod(this,'dispose');} Sys.Data.DataFilter.registerBaseMethod(this,'dispose');this.raisePropertyChanged =function(propertyName){Sys.Data.DataFilter.callBaseMethod(this,'raisePropertyChanged');if (this.owner){this.owner._raiseFilterChanged(this);} } Sys.Data.DataFilter.registerBaseMethod(this,'raisePropertyChanged');this.setOwner =function(owner){this.owner =owner;} } Sys.Data.DataFilter.registerAbstractClass('Sys.Data.DataFilter',Sys.Component);Sys.Data.PropertyFilter =function(){Sys.Data.PropertyFilter.initializeBase(this,[false]);var _property;var _value;this.get_property =function(){return _property;} this.set_property =function(name){_property =name;this.raisePropertyChanged('property');} this.get_value =function(){return _value;} this.set_value =function(value){_value =value;this.raisePropertyChanged('value');} this.filter =function(item){if (Sys.ITypeDescriptorProvider.isImplementedBy(item)){return Sys.TypeDescriptor.getProperty(item,_property)==_value;} return item[_property]==_value;} this.getDescriptor =function(){var td =Sys.Data.PropertyFilter.callBaseMethod(this,'getDescriptor');td.addProperty('property',String);td.addProperty('value',String);return td;} } Sys.Data.PropertyFilter.registerSealedClass('Sys.Data.PropertyFilter',Sys.Data.DataFilter);Sys.TypeDescriptor.addType('script','propertyFilter',Sys.Data.PropertyFilter);Sys.Data.DataSource =function(){Sys.Data.DataSource.initializeBase(this,[true]);var _data =null;var _initialData;var _autoLoad =false;var _serviceURL ="";var _loadMethod ="";var _serviceType =Sys.Data.ServiceType.DataService;var _parameters ={};var _isReady =true;var _dataChangedDelegate;this.get_autoLoad =function(){return _autoLoad;} this.set_autoLoad =function(value){_autoLoad =value;} this.get_data =function(){return _data;} this.set_data =function(data){var oldIsDirtyAndReady =this.get_isDirtyAndReady();var oldIsReady =this.get_isReady();var oldRowCount =this.get_rowCount();if (_data){_data.propertyChanged.remove(_dataChangedDelegate);} if (data instanceof Array){data =new Sys.Data.DataTable([],data);} _data =data;if (_data){_data.propertyChanged.add(_dataChangedDelegate);} this.raisePropertyChanged('data');if (oldIsDirtyAndReady !=this.get_isDirtyAndReady()){this.raisePropertyChanged('isDirtyAndReady');} if (oldIsReady !=this.get_isReady()){this.raisePropertyChanged('isReady');} if (oldRowCount !=this.get_rowCount()){this.raisePropertyChanged('rowCount');} } this.get_initialData =function(){return _initialData;} this.set_initialData =function(value){if (!_data){if (this.get_isInitialized()){var data =null;if (value &&(value.length)){data =Sys.Serialization.JSON.deserialize(value);} this.set_data(data);} else {_initialData =value;} } } this.get_isDirtyAndReady =function(){return _isReady &&_data &&_data.get_isDirty();} this.get_isReady =function(){return _isReady;} this._set_isReady =function(value){if (_isReady !=value){var oldDirtyAndReady =this.get_isDirtyAndReady();_isReady =value;this.raisePropertyChanged("isReady");if (this.get_isDirtyAndReady()!=oldDirtyAndReady){this.raisePropertyChanged("isDirtyAndReady");} } } this.get_loadMethod =function(){return _loadMethod;} this.set_loadMethod =function(value){_loadMethod =value;} this.get_parameters =function(){return _parameters;} this.get_serviceURL =function(){return _serviceURL;} this.set_serviceURL =function(url){_serviceURL =url;} this.get_serviceType =function(){return _serviceType;} this.set_serviceType =function(value){_serviceType =value;} this.get_rowCount =function(){if (_data){return _data.get_length();} return 0;} this.dispose =function(){if (_data){_data.dispose();} _data =null;Sys.Data.DataSource.callBaseMethod(this,'dispose');} this.getDescriptor =function(){var td =Sys.Data.DataSource.callBaseMethod(this,'getDescriptor');td.addProperty('data',Object);td.addProperty('autoLoad',Boolean);td.addProperty('initialData',String);td.addProperty('isDirtyAndReady',Boolean,true);td.addProperty('isReady',Boolean,true);td.addProperty('loadMethod',String);td.addProperty('rowCount',Number,true);td.addProperty('serviceURL',String);td.addProperty('parameters',Object,true);td.addProperty('serviceType',Sys.Data.ServiceType);td.addMethod('load');td.addMethod('save');td.addEvent('dataAvailable',true);return td;} this.dataAvailable =this.createEvent();this.initialize =function(){Sys.Data.DataSource.callBaseMethod(this,'initialize');if (_autoLoad ||_initialData){this.load();} } function onDataPropertyChanged(sender,args){switch(args.get_propertyName()){case "isDirty":this.raisePropertyChanged("isDirtyAndReady");break;case "length":this.raisePropertyChanged("rowCount");break;} } _dataChangedDelegate =Function.createDelegate(this,onDataPropertyChanged);function onRequestComplete(sender,eventArgs){onLoadComplete.call(this,sender.get_response().get_object());} function onLoadComplete(rawData){var oldDirtyAndReady =this.get_isDirtyAndReady();this.set_data(rawData);_isReady =true;this.raisePropertyChanged("isReady");if (this.get_isDirtyAndReady()!=oldDirtyAndReady){this.raisePropertyChanged("isDirtyAndReady");} this.dataAvailable.invoke(this,Sys.EventArgs.Empty);} function ready(){this._set_isReady(true);} this.load =function(){if (_initialData){this.set_data(Sys.Serialization.JSON.deserialize(_initialData));_initialData =null;return;} this._set_isReady(false);if (_serviceType ==Sys.Data.ServiceType.DataService){Sys.Net.ServiceMethod.invoke(_serviceURL,"GetData",null,{parameters:_parameters,loadMethod:_loadMethod},Function.createDelegate(this,onLoadComplete),Function.createDelegate(this,ready));} else {var url =Sys.Net.WebRequest.createUrl(_serviceURL,_parameters);var request =new Sys.Net.WebRequest();request.set_url(url);request.completed.add(Function.createDelegate(this,onRequestComplete));request.timeout.add(Function.createDelegate(this,ready));request.invoke();} } this.save =function(){if (_data &&_data.get_isDirty()){var changes =_data.getChanges();this._set_isReady(false);if (_serviceType ==Sys.Data.ServiceType.DataService){Sys.Net.ServiceMethod.invoke(_serviceURL,"SaveData",null,{changeList:changes,parameters:_parameters,loadMethod:_loadMethod},Function.createDelegate(this,onLoadComplete),Function.createDelegate(this,ready));} else {} } } } Sys.Data.DataSource.registerSealedClass('Sys.Data.DataSource',Sys.Component);Sys.TypeDescriptor.addType('script','dataSource',Sys.Data.DataSource);Type.createEnum('Sys.Data.ServiceType','DataService',0,'Handler',1);Type.createEnum('Sys.Data.SortDirection','Ascending',0,'Descending',1);Sys.Data.XMLDataSource =function(){Sys.Data.XMLDataSource.initializeBase(this,[true]);var _document =null;var _initialDocument =null;var _data =null;var _xpath ='';var _serviceURL;var _parameters ={};var _isReady =false;var _autoLoad =false;this.get_autoLoad =function(){return _autoLoad;} this.set_autoLoad =function(value){_autoLoad =value;} this.get_document =function(){return _document;} this.get_data =function(){return _data;} this.get_initialDocument =function(){return _initialDocument;} this.set_initialDocument =function(value){if (!_document){var document =new XMLDOM(value.trim());if (this.get_isInitialized()){this._setDocument(document);} else {_initialDocument =document;} } } this.get_isReady =function(){return _isReady;} this.get_parameters =function(){return _parameters;} this.get_serviceURL =function(){return _serviceURL;} this.set_serviceURL =function(value){_serviceURL =value;} this.get_xpath =function(){return _xpath;} this.set_xpath =function(value){if (_xpath !=value){_xpath =value;if (_document){this._updateData();} } } this.documentAvailable =this.createEvent();this.dispose =function(){_document =null;_initialDocument =null;_data =null;Sys.Data.XMLDataSource.callBaseMethod(this,'dispose');} this.getDescriptor =function(){var td =Sys.Data.DataSource.callBaseMethod(this,'getDescriptor');td.addProperty('autoLoad',Boolean);td.addProperty('data',Object,true);td.addProperty('document',Object,true);td.addProperty('initialDocument',String);td.addProperty('isReady',Boolean,true);td.addProperty('parameters',Object,true);td.addProperty('serviceURL',String);td.addProperty('xpath',String);td.addEvent('documentAvailable',true);td.addMethod('load');return td;} this.initialize =function(){Sys.Data.XMLDataSource.callBaseMethod(this,'initialize');if (_autoLoad){this.load();} } this.load =function(){if (_initialDocument){var document =_initialDocument;_initialDocument =null;this._setDocument(document);this._updateReady(true);} else {this._invokeService();} } this._invokeService =function(){var url =Sys.Net.WebRequest.createUrl(_serviceURL,_parameters);var request =new Sys.Net.WebRequest();request.set_url(url);request.completed.add(Function.createDelegate(this,this._serviceCompleted));request.timeout.add(Function.createDelegate(this,this._serviceTimeout));request.invoke();this._updateReady(false);} this._serviceCompleted =function(sender,eventArgs){if (sender.get_statusCode()==200){this._setDocument(sender.get_xml());} this._updateReady(true);} this._serviceTimeout =function(sender,eventArgs){this._updateReady(true);} this._setDocument =function(document){_document =document;this._updateData();this.raisePropertyChanged('document');this.documentAvailable.invoke(this,Sys.EventArgs.Empty);} this._updateData =function(){var xpath =_xpath;if (!xpath ||!xpath.length){xpath ='*/*';} var nodes =_document.selectNodes(xpath);var data =[];for (var i =0;i =r2.x &&r1.x <=(r2.x +r2.width));var xRight =((r1.x +r1.width)>=r2.x &&(r1.x +r1.width)<=r2.x +r2.width);var xComplete =((r1.x (r2.x +r2.height)));var yLeft =(r1.y >=r2.y &&r1.y <=(r2.y +r2.height));var yRight =((r1.y +r1.height)>=r2.y &&(r1.y +r1.height)<=r2.y +r2.height);var yComplete =((r1.y (r2.y +r2.height)));if ((xLeft ||xRight ||xComplete)&&(yLeft ||yRight ||yComplete)){return true;} return false;} Sys.UI.Control.getLocation =function(element){var offsetX =0;var offsetY =0;var parent;for (parent =element;parent;parent =parent.offsetParent){if (parent.offsetLeft){offsetX +=parent.offsetLeft;} if (parent.offsetTop){offsetY +=parent.offsetTop;} } return {x:offsetX,y:offsetY };} Sys.UI.Control.getBounds =function(element){var offset =Sys.UI.Control.getLocation(element);var width =element.offsetWidth;var height =element.offsetHeight;return {x:offset.x,y:offset.y,width:width,height:height };} Sys.UI.Control.removeCssClass =function(element,className){var currentClassName =' '+element.className +' ';var index =currentClassName.indexOf(' '+className +' ');if (index >=0){var newClassName =(currentClassName.substr(0,index)+' '+currentClassName.substring(index +className.length +1,currentClassName.length)).trim();if (element.control){element.control.set_cssClass(newClassName);} else {element.className =newClassName;} } } Sys.UI.Control.addCssClass =function(element,className){if (!Sys.UI.Control.containsCssClass(element,className)){if (element.control){element.control.addCssClass(className);} else {element.className +=' '+className;} } } Sys.UI.Control.containsCssClass =function(element,className){return element.className.split(' ').contains(className);} Sys.UI.CommandEventArgs =function(commandName,argument){Sys.UI.CommandEventArgs.initializeBase(this,[]);var _commandName =commandName;var _argument =argument;this.get_argument =function(){return _argument;} this.get_commandName =function(){return _commandName;} this.getDescriptor =function(){var td =Sys.UI.CommandEventArgs.callBaseMethod(this,'getDescriptor');td.addProperty('argument',String,true);td.addProperty('commandName',String,true);return td;} Sys.UI.CommandEventArgs.registerBaseMethod(this,'getDescriptor');} Sys.UI.CommandEventArgs.registerClass('Sys.UI.CommandEventArgs',Sys.EventArgs);Sys.UI.Behavior =function(){Sys.UI.Behavior.initializeBase(this,[false]);this.get_dataContext =function(){var dc =Sys.UI.Behavior.callBaseMethod(this,'get_dataContext');if (!dc){if (this.control){dc =this.control.get_dataContext();} } return dc;} this.dispose =function(){this.control =null;Sys.UI.Behavior.callBaseMethod(this,'dispose');} Sys.UI.Behavior.registerBaseMethod(this,'dispose');this.setOwner =function(control){this.control =control;} Sys.UI.Behavior.registerBaseMethod(this,'setOwner');} Sys.UI.Behavior.registerAbstractClass('Sys.UI.Behavior',Sys.Component);Sys.UI.IValidationTarget =function(){this.get_isInvalid =Function.abstractMethod;this.get_validationMessage =Function.abstractMethod;this.validated =null;this.validate =Function.abstractMethod;} Sys.UI.IValidationTarget.registerInterface('Sys.UI.IValidationTarget');Sys.UI.Validator =function(){Sys.UI.Validator.initializeBase(this);var _errorMessage;var _isInvalid =false;this.get_dataContext =function(){var dc =Sys.Component.callBaseMethod(this,'get_dataContext');if (!dc){if (this.control){dc =this.control.get_dataContext();} } return dc;} this.get_errorMessage =function(){return _errorMessage;} this.set_errorMessage =function(value){_errorMessage =value;} this.get_isInvalid =function(){return _isInvalid;} this.getDescriptor =function(){var td =Sys.UI.Validator.callBaseMethod(this,'getDescriptor');td.addProperty('errorMessage',String);td.addProperty('isInvalid',Boolean,true);return td;} Sys.UI.Validator.registerBaseMethod(this,'getDescriptor');this.dispose =function(){this.control =null;Sys.UI.Validator.callBaseMethod(this,'dispose');} Sys.UI.Validator.registerBaseMethod(this,'dispose');this.performValidation =function(value){_isInvalid =!this.validate(value);} this.setOwner =function(control){this.control =control;} this.validate =Function.abstractMethod;} Sys.UI.Validator.registerAbstractClass('Sys.UI.Validator',Sys.Component);Sys.UI.ValidationGroup =function(){Sys.UI.ValidationGroup.initializeBase(this);var _associatedControls =[];var _valid =true;var _validated =false;var _validatedHandler;this.get_associatedControls =function(){return _associatedControls;} this.get_isValid =function(){if (!_validated){this.validate();_validated =true;} return _valid;} this.dispose =function(){if (_associatedControls){for (var i =0;i <_associatedControls.length;i++){_associatedControls[i].get_component().validated.remove(_validatedHandler);_associatedControls[i].dispose();} _validatedHandler =null;_associatedControls =null;} Sys.UI.ValidationGroup.callBaseMethod(this,'dispose');} this.getDescriptor =function(){var td =Sys.UI.ValidationGroup.callBaseMethod(this,'getDescriptor');td.addProperty('isValid',Boolean,true);td.addProperty('associatedControls',Array,true);return td;} this.initialize =function(){Sys.UI.ValidationGroup.callBaseMethod(this,'initialize');_validatedHandler =Function.createDelegate(this,this._onControlValidated);for (var i =0;i <_associatedControls.length;i++){_associatedControls[i].get_component().validated.add(_validatedHandler);} } this.validate =function(){var valid =true;if (_associatedControls &&_associatedControls.length){for (var i =0;i <_associatedControls.length;i++){if (_associatedControls[i].get_component().get_isInvalid()){valid =false;break;} } } _valid =valid;} this._onControlValidated =function(sender,eventArgs){var isValid =_valid;this.validate();if (_valid !=isValid){this.raisePropertyChanged('isValid');} } } Sys.UI.ValidationGroup.registerSealedClass('Sys.UI.ValidationGroup',Sys.Component);Sys.TypeDescriptor.addType('script','validationGroup',Sys.UI.ValidationGroup);Sys.UI.InputControl =function(associatedElement){Sys.UI.InputControl.initializeBase(this,[associatedElement]);var _valuePropertyName;var _validators;var _invalid =false;var _validated =false;var _validationMessage;this.get_isInvalid =function(){if (!_validated){this.validate(false);_validated =true;} return _invalid;} this.get_validationMessage =function(){return this.get_isInvalid()?_validationMessage :'';} this.get_validators =function(){if (!_validators){_validators =Sys.Component.createCollection(this);} return _validators;} this.validated =this.createEvent();this.dispose =function(){if (_validators){_validators.dispose();_validators =null;} Sys.UI.InputControl.callBaseMethod(this,'dispose');} Sys.UI.InputControl.registerBaseMethod(this,'dispose');this.getDescriptor =function(){var td =Sys.UI.InputControl.callBaseMethod(this,'getDescriptor');td.addProperty('isInvalid',Boolean,true);td.addProperty('validationMessage',String,true);td.addProperty('validators',Array,true);return td;} Sys.UI.InputControl.registerBaseMethod(this,'getDescriptor');this.raisePropertyChanged =function(propertyName){if (_validators &&_validators.length){if (!_valuePropertyName){_valuePropertyName =Sys.TypeDescriptor.getAttribute(this,Sys.Attributes.ValueProperty);} if (_valuePropertyName ==propertyName){if (!this.validate(true)){return;} } } Sys.UI.InputControl.callBaseMethod(this,'raisePropertyChanged',[propertyName]);} Sys.UI.InputControl.registerBaseMethod(this,'raisePropertyChanged');this.validate =function(raiseEvent){if (!_validators ||!_validators.length){return true;} if (!_valuePropertyName){_valuePropertyName =Sys.TypeDescriptor.getAttribute(this,Sys.Attributes.ValueProperty);} var value =Sys.TypeDescriptor.getProperty(this,_valuePropertyName);var invalidValidator =null;for (var i =0;i <_validators.length;i++){var validator =_validators[i];validator.performValidation(value);if (validator.get_isInvalid()){invalidValidator =validator;_validationMessage =invalidValidator.get_errorMessage();_invalid =true;break;} } if (!invalidValidator){_invalid =false;} if (raiseEvent){this.validated.invoke(this,Sys.EventArgs.Empty);} return !_invalid;} } Sys.UI.InputControl.registerAbstractClass('Sys.UI.InputControl',Sys.UI.Control,Sys.UI.IValidationTarget);Sys.TemplateInstance =function(){this.instanceElement =null;this.callbackResult =null;} Sys.UI.ITemplate =function(){this.createInstance =Function.abstractMethod;this.initialize =Function.abstractMethod;} Sys.UI.ITemplate.registerInterface('Sys.UI.ITemplate');Sys.TypeDescriptor.addType('script','template',Sys.UI.ITemplate);Sys.UI.ITemplate.parseFromMarkup =function(type,node,markupContext){var layoutElementAttribute =node.attributes.getNamedItem('layoutElement');var layoutElementID =layoutElementAttribute.nodeValue;var layoutElement =markupContext.findElement(layoutElementID);return new Sys.UI.DeclarativeTemplate(layoutElement,node,markupContext);} Sys.UI.ITemplate.disposeInstance =function(container){if (container.markupContext){container.markupContext.dispose();container.markupContext =null;} } Sys.UI.DeclarativeTemplate =function(layoutElement,scriptNode,parentMarkupContext){Sys.UI.DeclarativeTemplate.initializeBase(this);var _layoutElement =layoutElement;var _scriptNode =scriptNode;var _parentMarkupContext =parentMarkupContext;this.createInstance =function(containerElement,dataContext,instanceElementCreatedCallback,callbackContext){var result =new Sys.TemplateInstance();result.instanceElement =_layoutElement.cloneNode(true);var documentFragment =document.createDocumentFragment();documentFragment.appendChild(result.instanceElement);var markupContext =Sys.MarkupContext.createLocalContext(documentFragment,_parentMarkupContext,dataContext);markupContext.open();Sys.MarkupParser.parseNodes(_scriptNode.childNodes,markupContext);if (instanceElementCreatedCallback){result.callbackResult =instanceElementCreatedCallback(result.instanceElement,markupContext,callbackContext);} result.instanceElement.markupContext =markupContext;containerElement.appendChild(result.instanceElement);markupContext.close();return result;} this.dispose =function(){_layoutElement =null;_scriptNode =null;_parentMarkupContext =null;} this.initialize =function(){if (_layoutElement.parentNode){_layoutElement.parentNode.removeChild(_layoutElement);} } } Sys.UI.DeclarativeTemplate.registerSealedClass('Sys.UI.DeclarativeTemplate',null,Sys.UI.ITemplate,Sys.IDisposable);Type.createEnum('Sys.UI.DialogResult','OK',0,'Cancel',1);Type.createEnum('Sys.UI.MessageBoxStyle','OK',0,'OKCancel',1);Sys.UI.Window =new function(){this.messageBox =function(text,style){if (!style){style =Sys.UI.MessageBoxStyle.OK;} var result =Sys.UI.DialogResult.OK;switch (style){case Sys.UI.MessageBoxStyle.OK:window.alert(text);break;case Sys.UI.MessageBoxStyle.OKCancel:if (window.confirm(text)==false){result =Sys.UI.DialogResult.Cancel;} break;} return result;} this.inputBox =function(promptText,defaultValue){if (!defaultValue){defaultValue ='';} return window.prompt(promptText,defaultValue);} } Type.createEnum('Sys.UI.Key',"Backspace",8,"Tab",9,"Return",13,"Esc",27,"Space",32,"PageUp",33,"PageDown",34,"End",35,"Home",36,"Left",37,"Up",38,"Right",39,"Down",40,"WindowsDelete",46,"Delete",127 );Sys.UI.Label =function(associatedElement){var _htmlEncode =false;Sys.UI.Label.initializeBase(this,[associatedElement]);this.get_htmlEncode =function(){return _htmlEncode;} this.set_htmlEncode =function(value){_htmlEncode =value;} this.get_text =function(){if (_htmlEncode){return this.element.innerText;} else {return this.element.innerHTML;} } this.set_text =function(value){if (_htmlEncode){if (this.element.innerText !==value){this.element.innerText =value;this.raisePropertyChanged('text');} } else {if (this.element.innerHTML !==value){this.element.innerHTML =value;this.raisePropertyChanged('text');} } } this.getDescriptor =function(){var td =Sys.UI.Label.callBaseMethod(this,'getDescriptor');td.addProperty('htmlEncode',Boolean);td.addProperty('text',String);return td;} Sys.UI.Label.registerBaseMethod(this,'getDescriptor');} Sys.UI.Label.registerClass('Sys.UI.Label',Sys.UI.Control);Sys.TypeDescriptor.addType('script','label',Sys.UI.Label);Sys.UI.Image =function(associatedElement){Sys.UI.Image.initializeBase(this,[associatedElement]);this.get_alternateText =function(){return this.element.alt;} this.set_alternateText =function(value){this.element.alt =value;} this.get_height =function(){return this.element.height;} this.set_height =function(value){this.element.height =value;} this.get_imageURL =function(){return this.element.src;} this.set_imageURL =function(value){this.element.src =value;} this.get_width =function(){return this.element.width;} this.set_width =function(value){this.element.width =value;} this.getDescriptor =function(){var td =Sys.UI.Image.callBaseMethod(this,'getDescriptor');td.addProperty('alternateText',String);td.addProperty('height',Number);td.addProperty('imageURL',String);td.addProperty('width',Number);return td;} Sys.UI.Image.registerBaseMethod(this,'getDescriptor');} Sys.UI.Image.registerClass('Sys.UI.Image',Sys.UI.Control);Sys.TypeDescriptor.addType('script','image',Sys.UI.Image);Sys.UI.HyperLink =function(associatedElement){Sys.UI.HyperLink.initializeBase(this,[associatedElement]);var _clickHandler;this.get_navigateURL =function(){return this.element.href;} this.set_navigateURL =function(value){this.element.href =value;} this.getDescriptor =function(){var td =Sys.UI.HyperLink.callBaseMethod(this,'getDescriptor');td.addProperty('navigateURL',String);td.addEvent('click',true);return td;} Sys.UI.HyperLink.registerBaseMethod(this,'getDescriptor');this.click =this.createEvent();this.dispose =function(){if (_clickHandler){this.element.detachEvent('onclick',_clickHandler);_clickHandler =null;} Sys.UI.HyperLink.callBaseMethod(this,'dispose');} this.initialize =function(){Sys.UI.HyperLink.callBaseMethod(this,'initialize');_clickHandler =Function.createDelegate(this,this._onClick);this.element.attachEvent('onclick',_clickHandler);} this._onClick =function(){this.click.invoke(this,Sys.EventArgs.Empty);} } Sys.UI.HyperLink.registerClass('Sys.UI.HyperLink',Sys.UI.Label);Sys.TypeDescriptor.addType('script','hyperLink',Sys.UI.HyperLink);Sys.UI.Button =function(associatedElement){Sys.UI.Button.initializeBase(this,[associatedElement]);var _clickHandler;var _command;var _arg;this.get_argument =function(){return _arg;} this.set_argument =function(value){if (_arg !=value){_arg =value;this.raisePropertyChanged('argument');} } this.get_command =function(){return _command;} this.set_command =function(value){if (_command !=value){_command =value;this.raisePropertyChanged('command');} } this.getDescriptor =function(){var td =Sys.UI.Button.callBaseMethod(this,'getDescriptor');td.addProperty('command',String);td.addProperty('argument',String);td.addEvent('click',true);return td;} Sys.UI.Button.registerBaseMethod(this,'getDescriptor');this.click =this.createEvent();this.dispose =function(){if (_clickHandler){this.element.detachEvent('onclick',_clickHandler);_clickHandler =null;} Sys.UI.Button.callBaseMethod(this,'dispose');} this.initialize =function(){Sys.UI.Button.callBaseMethod(this,'initialize');_clickHandler =Function.createDelegate(this,this._onClick);this.element.attachEvent('onclick',_clickHandler);} this._onClick =function(){this.click.invoke(this,Sys.EventArgs.Empty);if (_command){this.raiseBubbleEvent(this,new Sys.UI.CommandEventArgs(_command,_arg));} } } Sys.UI.Button.registerClass('Sys.UI.Button',Sys.UI.Control);Sys.TypeDescriptor.addType('script','button',Sys.UI.Button);Sys.UI.CheckBox =function(associatedElement){Sys.UI.CheckBox.initializeBase(this,[associatedElement]);var _clickHandler;this.get_checked =function(){return this.element.checked;} this.set_checked =function(value){if (value !=this.get_checked()){this.element.checked =value;this.raisePropertyChanged('checked');} } this.click =this.createEvent();this.getDescriptor =function(){var td =Sys.UI.CheckBox.callBaseMethod(this,'getDescriptor');td.addProperty('checked',Boolean);td.addEvent('click',true);return td;} Sys.UI.CheckBox.registerBaseMethod(this,'getDescriptor');this.dispose =function(){if (_clickHandler){this.element.detachEvent('onclick',_clickHandler);_clickHandler =null;} Sys.UI.CheckBox.callBaseMethod(this,'dispose');} this.initialize =function(){Sys.UI.CheckBox.callBaseMethod(this,'initialize');_clickHandler =Function.createDelegate(this,this._onClick);this.element.attachEvent('onclick',_clickHandler);} this._onClick =function(){this.raisePropertyChanged('checked');this.click.invoke(this,Sys.EventArgs.Empty);} } Sys.UI.CheckBox.registerClass('Sys.UI.CheckBox',Sys.UI.Control);Sys.TypeDescriptor.addType('script','checkBox',Sys.UI.CheckBox);Sys.UI.Select =function(associatedElement){Sys.UI.Select.initializeBase(this,[associatedElement]);var _selectionChangedHandler;var _data;var _dataChangedDelegate;var _textProperty;var _valueProperty;var _firstItemText;this.get_data =function(){return _data;} this.set_data =function(data){if (_data &&Sys.INotifyCollectionChanged.isImplementedBy(_data)){_data.collectionChanged.remove(_dataChangedDelegate);} _data =data;if (_data){if (!Sys.Data.DataTable.isInstanceOfType(_data)){_data =new Sys.Data.DataTable([],_data);} _data.collectionChanged.add(_dataChangedDelegate);} dataBind.call(this);this.raisePropertyChanged('data');} this.get_firstItemText =function(){return _firstItemText;} this.set_firstItemText =function(value){if (_firstItemText !=value){_firstItemText =value;this.raisePropertyChanged('firstItemText');dataBind.call(this);} } this.get_selectedValue =function(){return this.element.value;} this.set_selectedValue =function(value){this.element.value =value;} this.get_textProperty =function(){return _textProperty;} this.set_textProperty =function(name){_textProperty =name;this.raisePropertyChanged('textProperty');} this.get_valueProperty =function(){return _valueProperty;} this.set_valueProperty =function(name){_valueProperty =name;this.raisePropertyChanged('valueProperty');} this.selectionChanged =this.createEvent();function dataBind(){var options =this.element.options;var selectedValues =[];var i;for (i =options.length -1;i >=0;i--){if (options[i].selected){selectedValues.add(options[i].value);} options[i]=null;} var option;if (_firstItemText &&(_firstItemText.length !=0)){option =new Option(_firstItemText,"");options[this.element.length]=option;} if (_data){var length =_data.get_length();for (i =0;i documentWidth -5){position.x -=newPosition.x +newPosition.width -documentWidth +5;} if (newPosition.x <0){position.x -=newPosition.x;} if (newPosition.y <0){position.y -=newPosition.y;} Sys.UI.Control.setLocation(elt,position);if ((Sys.Runtime.get_hostType()==Sys.HostType.InternetExplorer)&&!window.opera){var childFrame =elt._hideWindowedElementsIFrame;if (!childFrame){childFrame =document.createElement("iframe");childFrame.src ="about:blank";childFrame.style.position ="absolute";childFrame.style.display ="none";childFrame.scrolling ="no";childFrame.frameBorder ="0";childFrame.style.filter ="progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";elt.parentNode.insertBefore(childFrame,elt);elt._hideWindowedElementsIFrame =childFrame;_moveHandler =Function.createDelegate(this,moveHandler);elt.attachEvent('onmove',_moveHandler);} childFrame.style.top =elt.style.top;childFrame.style.left =elt.style.left;childFrame.style.width =elt.offsetWidth +"px";childFrame.style.height =elt.offsetHeight +"px";childFrame.style.display =elt.style.display;if (elt.currentStyle &&elt.currentStyle.zIndex){childFrame.style.zIndex =elt.currentStyle.zIndex;} else if (elt.style.zIndex){childFrame.style.zIndex =elt.style.zIndex;} } } this.getDescriptor =function(){var td =Sys.UI.PopupBehavior.callBaseMethod(this,'getDescriptor');td.addProperty('parentElement',Object,false,Sys.Attributes.Element,true);td.addProperty('positioningMode',Sys.UI.PositioningMode);td.addProperty('x',Number);td.addProperty('y',Number);td.addMethod('show');td.addMethod('hide');return td;} Sys.UI.PopupBehavior.registerBaseMethod(this,'getDescriptor');this.initialize =function(){Sys.UI.PopupBehavior.callBaseMethod(this,'initialize');this.hide();this.control.element.style.position ="absolute";} Sys.UI.PopupBehavior.registerBaseMethod(this,'initialize');this.dispose =function(){if (_moveHandler &&this.control &&this.control.element){this.hide();this.control.element.detachEvent('onmove',_moveHandler);_moveHandler =null;} _parentElement =null;Sys.UI.PopupBehavior.callBaseMethod(this,'dispose');} Sys.UI.PopupBehavior.registerBaseMethod(this,'dispose');function moveHandler(){var elt =this.control.element;if (elt._hideWindowedElementsIFrame){elt.parentNode.insertBefore(elt._hideWindowedElementsIFrame,elt);elt._hideWindowedElementsIFrame.style.top =elt.style.top;elt._hideWindowedElementsIFrame.style.left =elt.style.left;} } } Sys.UI.PopupBehavior.registerClass('Sys.UI.PopupBehavior',Sys.UI.Behavior);Sys.TypeDescriptor.addType('script','popupBehavior',Sys.UI.PopupBehavior);Type.createEnum('Sys.UI.PositioningMode','Absolute',0,'Center',1,'BottomLeft',2,'BottomRight',3,'TopLeft',4,'TopRight',5);Sys.UI.ClickBehavior =function(){Sys.UI.ClickBehavior.initializeBase(this);var _clickHandler;this.click =this.createEvent();this.dispose =function(){this.control.element.detachEvent('onclick',_clickHandler);Sys.UI.ClickBehavior.callBaseMethod(this,'dispose');} this.initialize =function(){Sys.UI.ClickBehavior.callBaseMethod(this,'initialize');_clickHandler =Function.createDelegate(this,clickHandler);this.control.element.attachEvent('onclick',_clickHandler);} this.getDescriptor =function(){var td =Sys.UI.ClickBehavior.callBaseMethod(this,'getDescriptor');td.addEvent('click',true);return td;} function clickHandler(){this.click.invoke(this,Sys.EventArgs.Empty);} } Sys.UI.ClickBehavior.registerSealedClass('Sys.UI.ClickBehavior',Sys.UI.Behavior);Sys.TypeDescriptor.addType('script','clickBehavior',Sys.UI.ClickBehavior);Sys.UI.HoverBehavior =function(){Sys.UI.HoverBehavior.initializeBase(this);var _hoverHandler;var _unHoverHandler;var _hoverElement;var _unhoverDelay =0;var _hoverCount =0;this.get_hoverElement =function(){return _hoverElement;} this.set_hoverElement =function(element){_hoverElement =element;} this.get_unhoverDelay =function(){return _unhoverDelay;} this.set_unhoverDelay =function(ms){_unhoverDelay =ms;this.raisePropertyChanged('unhoverDelay');} this.getDescriptor =function(){var td =Sys.UI.HoverBehavior.callBaseMethod(this,'getDescriptor');td.addProperty('hoverElement',Object,false,Sys.Attributes.Element,true);td.addProperty('unhoverDelay',Number);td.addEvent('hover',true);td.addEvent('unhover',true);return td;} this.hover =this.createEvent();this.unhover =this.createEvent();this.dispose =function(){if (_hoverHandler){this.control.element.detachEvent('onmouseover',_hoverHandler);this.control.element.detachEvent('onfocus',_hoverHandler);if (_hoverElement){_hoverElement.detachEvent('onmouseover',_hoverHandler);_hoverElement.detachEvent('onfocus',_hoverHandler);} _hoverHandler =null;} if (_unHoverHandler){this.control.element.detachEvent('onmouseout',_unHoverHandler);this.control.element.detachEvent('onblur',_unHoverHandler);if (_hoverElement){_hoverElement.detachEvent('onmouseout',_unHoverHandler);_hoverElement.detachEvent('onblur',_unHoverHandler);} _unHoverHandler =null;} Sys.UI.HoverBehavior.callBaseMethod(this,'dispose');} this.initialize =function(){Sys.UI.HoverBehavior.callBaseMethod(this,'initialize');_hoverHandler =Function.createDelegate(this,hoverHandler);this.control.element.attachEvent('onmouseover',_hoverHandler);this.control.element.attachEvent('onfocus',_hoverHandler);_unHoverHandler =Function.createDelegate(this,_unhoverDelay ?delayedUnhoverHandler :unHoverHandler);this.control.element.attachEvent('onmouseout',_unHoverHandler);this.control.element.attachEvent('onblur',_unHoverHandler);if (_hoverElement){_hoverElement.attachEvent('onmouseover',_hoverHandler);_hoverElement.attachEvent('onfocus',_hoverHandler);_hoverElement.attachEvent('onmouseout',_unHoverHandler);_hoverElement.attachEvent('onblur',_unHoverHandler);} } function delayedUnhoverHandler(){window.setTimeout(Function.createDelegate(this,unHoverHandler),_unhoverDelay);} function hoverHandler(){_hoverCount++;this.hover.invoke(this,Sys.EventArgs.Empty);} function unHoverHandler(){_hoverCount--;if (_hoverCount ==0){this.unhover.invoke(this,Sys.EventArgs.Empty);} } } Sys.UI.HoverBehavior.registerSealedClass('Sys.UI.HoverBehavior',Sys.UI.Behavior);Sys.TypeDescriptor.addType('script','hoverBehavior',Sys.UI.HoverBehavior);Sys.UI.AutoCompleteBehavior =function(){Sys.UI.AutoCompleteBehavior.initializeBase(this);var _appURL;var _serviceURL;var _serviceMethod;var _minimumPrefixLength =3;var _completionSetCount =10;var _completionInterval =1000;var _completionListElement;var _popupBehavior;var _timer;var _cache;var _currentPrefix;var _selectIndex;var _focusHandler;var _blurHandler;var _keyDownHandler;var _mouseDownHandler;var _mouseUpHandler;var _mouseOverHandler;var _tickHandler;this.get_appURL =function(){return _appURL;} this.set_appURL =function(value){_appURL =value;} this.get_completionInterval =function(){return _completionInterval;} this.set_completionInterval =function(value){_completionInterval =value;} this.get_completionList =function(){return _completionListElement;} this.set_completionList =function(value){_completionListElement =value;} this.get_completionSetCount =function(){return _completionSetCount;} this.set_completionSetCount =function(value){_completionSetCount =value;} this.get_minimumPrefixLength =function(){return _minimumPrefixLength;} this.set_minimumPrefixLength =function(value){_minimumPrefixLength =value;} this.get_serviceMethod =function(){return _serviceMethod;} this.set_serviceMethod =function(value){_serviceMethod =value;} this.get_serviceURL =function(){return _serviceURL;} this.set_serviceURL =function(value){_serviceURL =value;} this.dispose =function(){if (_timer){_timer.tick.remove(_tickHandler);_timer.dispose();} var element =this.control.element;element.detachEvent('onfocus',_focusHandler);element.detachEvent('onblur',_blurHandler);element.detachEvent('onkeydown',_keyDownHandler);_completionListElement.detachEvent('onmousedown',_mouseDownHandler);_completionListElement.detachEvent('onmouseup',_mouseUpHandler);_completionListElement.detachEvent('onmouseover',_mouseOverHandler);_tickHandler =null;_focusHandler =null;_blurHandler =null;_keyDownHandler =null;_mouseDownHandler =null;_mouseUpHandler =null;_mouseOverHandler =null;Sys.UI.AutoCompleteBehavior.callBaseMethod(this,'dispose');} this.getDescriptor =function(){var td =Sys.UI.AutoCompleteBehavior.callBaseMethod(this,'getDescriptor');td.addProperty('completionInterval',Number);td.addProperty('completionList',Object,false,Sys.Attributes.Element,true);td.addProperty('completionSetCount',Number);td.addProperty('minimumPrefixLength',Number);td.addProperty('serviceMethod',String);td.addProperty('serviceURL',String);td.addProperty('appURL',String);return td;} this.initialize =function(){Sys.UI.AutoCompleteBehavior.callBaseMethod(this,'initialize');_tickHandler =Function.createDelegate(this,this._onTimerTick);_focusHandler =Function.createDelegate(this,this._onGotFocus);_blurHandler =Function.createDelegate(this,this._onLostFocus);_keyDownHandler =Function.createDelegate(this,this._onKeyDown);_mouseDownHandler =Function.createDelegate(this,this._onListMouseDown);_mouseUpHandler =Function.createDelegate(this,this._onListMouseUp);_mouseOverHandler =Function.createDelegate(this,this._onListMouseOver);_timer =new Sys.Timer();_timer.set_interval(_completionInterval);_timer.tick.add(_tickHandler);var element =this.control.element;element.autocomplete ="off";element.attachEvent('onfocus',_focusHandler);element.attachEvent('onblur',_blurHandler);element.attachEvent('onkeydown',_keyDownHandler);var elementBounds =Sys.UI.Control.getBounds(element);if (!_completionListElement){_completionListElement =document.createElement('DIV');document.body.appendChild(_completionListElement);} var completionListStyle =_completionListElement.style;completionListStyle.visibility ='hidden';completionListStyle.backgroundColor ='window';completionListStyle.color ='windowtext';completionListStyle.border ='solid 1px buttonshadow';completionListStyle.cursor ='default';completionListStyle.unselectable ='unselectable';completionListStyle.overflow ='hidden';completionListStyle.width =(elementBounds.width -2)+'px';_completionListElement.attachEvent('onmousedown',_mouseDownHandler);_completionListElement.attachEvent('onmouseup',_mouseUpHandler);_completionListElement.attachEvent('onmouseover',_mouseOverHandler);document.body.appendChild(_completionListElement);var popupControl =new Sys.UI.Control(_completionListElement);_popupBehavior =new Sys.UI.PopupBehavior();_popupBehavior.set_parentElement(element);_popupBehavior.set_positioningMode(Sys.UI.PositioningMode.BottomLeft);popupControl.get_behaviors().add(_popupBehavior);_popupBehavior.initialize();popupControl.initialize();} this._hideCompletionList =function(){_popupBehavior.hide();_completionListElement.innerHTML ='';_selectIndex =-1;} this._highlightItem =function(item){var children =_completionListElement.childNodes;for (var i =0;i 0){_selectIndex--;this._highlightItem(_completionListElement.childNodes[_selectIndex]);e.returnValue =false;} } else if (e.keyCode ==Sys.UI.Key.Down){if (_selectIndex <(_completionListElement.childNodes.length -1)){_selectIndex++;this._highlightItem(_completionListElement.childNodes[_selectIndex]);e.returnValue =false;} } else if (e.keyCode ==Sys.UI.Key.Return){if (_selectIndex !=-1){this._setText(_completionListElement.childNodes[_selectIndex].firstChild.nodeValue);e.returnValue =false;} } if (e.keyCode !=Sys.UI.Key.Tab){_timer.set_enabled(true);} } this._onLostFocus =function(){_timer.set_enabled(false);this._hideCompletionList();} function _onMethodComplete(result,response,context){var acBehavior =context[0];var prefixText =context[1];acBehavior._update(prefixText,result,true);} this._onTimerTick =function(sender,eventArgs){if (_serviceURL &&_serviceMethod){var text =this.control.element.value;if (text.trim().length <_minimumPrefixLength){this._update('',null,false);return;} if (_currentPrefix !=text){_currentPrefix =text;if (_cache &&_cache[text]){this._update(text,_cache[text],false);return;} Sys.Net.ServiceMethod.invoke(_serviceURL,_serviceMethod,_appURL,{prefixText :_currentPrefix,count:_completionSetCount },_onMethodComplete,null,null,null,[this,text ]);} } } this._setText =function(text){_timer.set_enabled(false);_currentPrefix =text;if (Sys.UI.TextBox.isInstanceOfType(this.control)){this.control.set_text(text);} else {this.control.element.value =text;} this._hideCompletionList();} this._update =function(prefixText,completionItems,cacheResults){if (cacheResults){if (!_cache){_cache ={};} _cache[prefixText]=completionItems;} _completionListElement.innerHTML ='';_selectIndex =-1;if (completionItems &&completionItems.length){for (var i =0;i =_lowerBound));} return true;} } Sys.UI.RangeValidator.registerSealedClass('Sys.UI.RangeValidator',Sys.UI.Validator);Sys.TypeDescriptor.addType('script','rangeValidator',Sys.UI.RangeValidator);Sys.UI.RegexValidator =function(){Sys.UI.RegexValidator.initializeBase(this);var _regex;this.get_regex =function(){return _regex;} this.set_regex =function(value){_regex =value;} this.getDescriptor =function(){var td =Sys.UI.RegexValidator.callBaseMethod(this,'getDescriptor');td.addProperty('regex',RegExp);return td;} this.validate =function(value){if (value &&value.length){var matches =_regex.exec(value);return (matches &&(matches[0]==value));} return true;} } Sys.UI.RegexValidator.registerSealedClass('Sys.UI.RegexValidator',Sys.UI.Validator);Sys.TypeDescriptor.addType('script','regexValidator',Sys.UI.RegexValidator);Sys.UI.CustomValidationEventArgs =function(value){Sys.UI.CustomValidationEventArgs.initializeBase(this);var _value =value;var _isValid =true;this.get_value =function(){return _value;} this.get_isValid =function(){return _isValid;} this.set_isValid =function(value){_isValid =value;} this.getDescriptor =function(){var td =Sys.UI.CustomValidationEventArgs.callBaseMethod(this,'getDescriptor');td.addProperty('isValid',Boolean);td.addProperty('value',Object,true);return td;} } Sys.UI.CustomValidationEventArgs.registerSealedClass('Sys.UI.CustomValidationEventArgs',Sys.EventArgs);Sys.UI.CustomValidator =function(){Sys.UI.CustomValidator.initializeBase(this);this.validateValue =this.createEvent();this.getDescriptor =function(){var td =Sys.UI.CustomValidator.callBaseMethod(this,'getDescriptor');td.addEvent('validateValue',false);return td;} this.validate =function(value){if (value &&value.length){var cve =new Sys.UI.CustomValidationEventArgs(value);this.validateValue.invoke(this,cve);return cve.get_isValid();} return true;} } Sys.UI.CustomValidator.registerSealedClass('Sys.UI.CustomValidator',Sys.UI.Validator);Sys.TypeDescriptor.addType('script','customValidator',Sys.UI.CustomValidator);Sys.UI.ValidationErrorLabel =function(associatedElement){Sys.UI.ValidationErrorLabel.initializeBase(this,[associatedElement]);var _associatedControl;var _validatedHandler;this.get_associatedControl =function(){return _associatedControl;} this.set_associatedControl =function(value){if (_associatedControl &&_validatedHandler){_associatedControl.validated.remove(_validatedHandler);} if (Sys.UI.IValidationTarget.isImplementedBy(value)){_associatedControl =value;} if (_associatedControl){if (!_validatedHandler){_validatedHandler =Function.createDelegate(this,this._onControlValidated);} _associatedControl.validated.add(_validatedHandler);} } this.dispose =function(){if (_associatedControl){if (_validatedHandler){_associatedControl.validated.remove(_validatedHandler);_validatedHandler =null;} _associatedControl =null;} Sys.UI.ValidationErrorLabel.callBaseMethod(this,'dispose');} this.getDescriptor =function(){var td =Sys.UI.ValidationErrorLabel.callBaseMethod(this,'getDescriptor');td.addProperty('associatedControl',Object);return td;} this.initialize =function(){Sys.UI.ValidationErrorLabel.callBaseMethod(this,'initialize');this.set_visible(false);} this._onControlValidated =function(sender,eventArgs){var isInvalid =_associatedControl.get_isInvalid();var tooltip ='';if (isInvalid){tooltip =_associatedControl.get_validationMessage();} this.set_visible(isInvalid);this.element.title =tooltip;} } Sys.UI.ValidationErrorLabel.registerSealedClass('Sys.UI.ValidationErrorLabel',Sys.UI.Label);Sys.TypeDescriptor.addType('script','validationErrorLabel',Sys.UI.ValidationErrorLabel);Type.registerNamespace('Sys.UI.Data');Sys.UI.Data.DataControl =function(associatedElement){Sys.UI.Data.DataControl.initializeBase(this,[associatedElement]);var _data;var _dataIndex =0;var _suspendChangeNotifications =false;var _dataChangedDelegate;function prepareChange(){return {dataIndex:this.get_dataIndex(),canMoveNext:this.get_canMoveNext(),canMovePrevious:this.get_canMovePrevious()};} function triggerChangeEvents(oldState){var dataIndex =this.get_dataIndex();if (oldState.dataIndex !=dataIndex){this.raisePropertyChanged('dataIndex');this.raisePropertyChanged('dataItem');oldState.dataIndex =dataIndex;} var canMoveNext =this.get_canMoveNext();if (oldState.canMoveNext !=canMoveNext){this.raisePropertyChanged('canMoveNext');oldState.canMoveNext =canMoveNext;} var canMovePrevious =this.get_canMovePrevious();if (oldState.canMovePrevious !=canMovePrevious){this.raisePropertyChanged('canMovePrevious');oldState.canMovePrevious =canMovePrevious;} } this.get_canMoveNext =function(){if (!_data)return false;return (_dataIndex <_data.get_length()-1);} this.get_canMovePrevious =function(){if (!_data)return false;return (_dataIndex >0);} this.get_data =function(){return _data;} this.set_data =function(value){var oldState =prepareChange.call(this);if (_data &&Sys.INotifyCollectionChanged.isImplementedBy(_data)){_data.collectionChanged.remove(_dataChangedDelegate);} _data =value;if (_data &&Sys.INotifyCollectionChanged.isImplementedBy(_data)){_data.collectionChanged.add(_dataChangedDelegate);} var newLength =_data ?_data.get_length():0;if (_dataIndex >=newLength){this.set_dataIndex(0);} if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('data');triggerChangeEvents.call(this,oldState);} this.get_dataContext =function(){return this.get_dataItem();} Sys.UI.Data.DataControl.registerBaseMethod(this,'get_dataContext');this.get_dataIndex =function(){return _dataIndex;} this.set_dataIndex =function(value){if (_dataIndex !=value){var oldState =prepareChange.call(this);_dataIndex =value;if (!_suspendChangeNotifications){triggerChangeEvents.call(this,oldState);} } } Sys.UI.Data.DataControl.registerBaseMethod(this,'set_dataIndex');this.get_dataItem =function(){if (_data){return _data.getItem(_dataIndex);} return null;} this.get_length =function(){return Sys.IArray.isImplementedBy(_data)?_data.get_length():0;} this.getDescriptor =function(){var td =Sys.UI.Data.DataControl.callBaseMethod(this,'getDescriptor');td.addProperty('canMoveNext',Boolean,true);td.addProperty('canMovePrevious',Boolean,true);td.addProperty('data',Sys.Data.DataTable);td.addProperty('dataIndex',Number);td.addProperty('dataItem',Object,true);td.addProperty("length",Number,true);td.addMethod('addItem');td.addMethod('deleteCurrentItem');td.addMethod('moveNext');td.addMethod('movePrevious');return td;} Sys.UI.Data.DataControl.registerBaseMethod(this,'getDescriptor');this.addItem =function(){if (_data){var oldState =prepareChange.call(this);_data.add({});this.set_dataIndex(_data.get_length()-1);triggerChangeEvents.call(this,oldState);} } this.deleteCurrentItem =function(){if (_data){var oldState =prepareChange.call(this);_suspendChangeNotifications =true;var item =this.get_dataItem();if (this.get_dataIndex()==_data.get_length()-1){this.set_dataIndex(Math.max(0,_data.get_length()-2));} _data.remove(item);_suspendChangeNotifications =false;triggerChangeEvents.call(this,oldState);} } this.getItem =function(index){if (_data){return _data.getItem(_dataIndex);} return null;} this.moveNext =function(){if (_data){var oldState =prepareChange.call(this);var newIndex =this.get_dataIndex()+1;if (newIndex <_data.get_length()){this.set_dataIndex(newIndex);} triggerChangeEvents.call(this,oldState);} } this.movePrevious =function(){if (_data){var oldState =prepareChange.call(this);var newIndex =this.get_dataIndex()-1;if (newIndex >=0){this.set_dataIndex(newIndex);} triggerChangeEvents.call(this,oldState);} } this.onBubbleEvent =function(source,args){if (args.get_commandName()=="select"){var arg =args.get_argument();if (!arg &&arg !=0){var dataContext =source.get_dataContext();if (dataContext){arg =dataContext.get_index();} } if (arg &&String.isInstanceOfType(arg)){arg =Number.parse(arg);} if (arg ||arg ==0){this.set_dataIndex(arg);return true;} } return false;} Sys.UI.Data.DataControl.registerBaseMethod(this,'onBubbleEvent');function onDataChanged(sender,args){this.render();} _dataChangedDelegate =Function.createDelegate(this,onDataChanged);} Sys.UI.Data.DataControl.registerClass('Sys.UI.Data.DataControl',Sys.UI.Control,Sys.IArray);Sys.UI.Data.DataNavigator =function(associatedElement){Sys.UI.Data.DataNavigator.initializeBase(this,[associatedElement]);var _data;this.get_dataView =function(){return _data;} this.set_dataView =function(value){_data =value;this.raisePropertyChanged('dataView');} this.get_dataContext =function(){return this.get_dataView();} Sys.UI.Data.DataNavigator.registerBaseMethod(this,'get_dataContext');this.getDescriptor =function(){var td =Sys.UI.Data.DataControl.callBaseMethod(this,'getDescriptor');td.addProperty('dataView',Object);return td;} Sys.UI.Data.DataNavigator.registerBaseMethod(this,'getDescriptor');this.onBubbleEvent =function(source,args){if (!_data)return false;var cmd =args.get_commandName().toLowerCase();switch(cmd){case "page":var arg =args.get_argument();if (arg &&String.isInstanceOfType(arg)){arg =Number.parse(arg);} if (arg ||arg ==0){_data.set_pageIndex(arg);return true;} break;case "nextpage":_data.set_pageIndex(_data.get_pageIndex()+1);return true;case "previouspage":var idx =_data.get_pageIndex()-1;if (idx >=0){_data.set_pageIndex(idx);} return true;case "firstpage":_data.set_pageIndex(0);return true;case "lastpage":_data.set_pageIndex(_data.get_pageCount()-1);return true;} return false;} Sys.UI.Control.registerBaseMethod(this,'onBubbleEvent');} Sys.UI.Data.DataNavigator.registerClass('Sys.UI.Data.DataNavigator',Sys.UI.Control);Sys.TypeDescriptor.addType('script','dataNavigator',Sys.UI.Data.DataNavigator);Sys.UI.Data.ItemView =function(associatedElement){Sys.UI.Data.ItemView.initializeBase(this,[associatedElement]);var _itemTemplate;var _emptyTemplate;var _keyDownHandler;var _layoutTemplateElement =null;this.set_dataIndex =function(value){if (this.get_dataIndex()!=value){Sys.UI.Data.ItemView.callBaseMethod(this,'set_dataIndex',[value]);if (!this.get_isUpdating()){this.render();} } } this.get_emptyTemplate =function(){return _emptyTemplate;} this.set_emptyTemplate =function(value){if (_emptyTemplate){_emptyTemplate.dispose();} _emptyTemplate =value;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('emptyTemplate');} this.get_itemTemplate =function(){return _itemTemplate;} this.set_itemTemplate =function(value){if (_itemTemplate){_itemTemplate.dispose();} _itemTemplate =value;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('itemTemplate');} this.dispose =function(){if (this.element){if (_keyDownHandler){this.element.detachEvent('onkeydown',_keyDownHandler);} if (this.element.childNodes.length){this.element.markupContext =null;Sys.UI.ITemplate.disposeInstance(this.element.firstChild);} } if (_itemTemplate){_itemTemplate.dispose();_itemTemplate =null;} if (_emptyTemplate){_emptyTemplate.dispose();_emptyTemplate =null;} _layoutTemplateElement =null;Sys.UI.Data.ItemView.callBaseMethod(this,'dispose');} Sys.UI.Data.ItemView.registerBaseMethod(this,'dispose');this.getDescriptor =function(){var td =Sys.UI.Data.ItemView.callBaseMethod(this,'getDescriptor');td.addProperty('itemTemplate',Sys.UI.ITemplate);td.addProperty('emptyTemplate',Sys.UI.ITemplate);return td;} Sys.UI.Data.ItemView.registerBaseMethod(this,'getDescriptor');this.initialize =function(){_keyDownHandler =Function.createDelegate(this,this._onKeyDown);Sys.UI.Data.ItemView.callBaseMethod(this,'initialize');this.element.attachEvent('onkeydown',_keyDownHandler);if (_itemTemplate){_itemTemplate.initialize();} if (_emptyTemplate){_emptyTemplate.initialize();} this.render();} this._onKeyDown =function(){var e =window.event;if (e.srcElement ==this.element){if ((e.keyCode ==Sys.UI.Key.Up)||(e.keyCode ==Sys.UI.Key.Left)){this.movePrevious();e.returnValue =false;} else if ((e.keyCode ==Sys.UI.Key.Down)||(e.keyCode ==Sys.UI.Key.Right)){this.moveNext();e.returnValue =false;} } } this.render =function(){if (this.element.childNodes.length){if (_layoutTemplateElement){Sys.UI.ITemplate.disposeInstance(_layoutTemplateElement);} } this.element.innerHTML ='';var template;var data =this.get_data();if (data &&data.get_length()){template =_itemTemplate;} else {template =_emptyTemplate;} if (template){var instance =template.createInstance(this.element,this.get_dataContext()).instanceElement;this.element.markupContext =instance.markupContext;_layoutTemplateElement =instance;} } } Sys.UI.Data.ItemView.registerClass('Sys.UI.Data.ItemView',Sys.UI.Data.DataControl);Sys.TypeDescriptor.addType('script','itemView',Sys.UI.Data.ItemView);Sys.UI.Data.ListView =function(associatedElement){Sys.UI.Data.ListView.initializeBase(this,[associatedElement]);var _itemClass;var _alternatingItemClass;var _separatorClass;var _selectedItemClass;var _focusHandler;var _keyDownHandler;var _itemFocusHandler;var _itemClickHandler;var _focusIndex;var _layoutTemplate =null;var _itemTemplate =null;var _separatorTemplate =null;var _emptyTemplate =null;var _itemTemplateParentElementId;var _itemElements =[];var _separatorElements =[];var _layoutTemplateElement =null;this.get_alternatingItemCssClass =function(){return _alternatingItemClass;} this.set_alternatingItemCssClass =function(value){if (value !=_alternatingItemClass){_alternatingItemClass =value;this.render();this.raisePropertyChanged('alternatingItemCssClass');} } this.set_dataIndex =function(value){var oldIndex =this.get_dataIndex();if (oldIndex !=value){var sel =this.getItemElement(oldIndex);if (sel &&_selectedItemClass){Sys.UI.Control.removeCssClass(sel,_selectedItemClass);} Sys.UI.Data.ListView.callBaseMethod(this,'set_dataIndex',[value]);sel =this.getItemElement(value);if (sel &&_selectedItemClass){Sys.UI.Control.addCssClass(sel,_selectedItemClass);} } } this.get_emptyTemplate =function(){return _emptyTemplate;} this.set_emptyTemplate =function(template){if (_emptyTemplate){_emptyTemplate.dispose();} _emptyTemplate =template;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('emptyTemplate');} this.get_itemCssClass =function(){return _itemClass;} this.set_itemCssClass =function(value){if (value !=_itemClass){_itemClass =value;this.render();this.raisePropertyChanged('itemCssClass');} } this.get_itemTemplate =function(){return _itemTemplate;} this.set_itemTemplate =function(template){if (_itemTemplate){_itemTemplate.dispose();} _itemTemplate =template;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('itemTemplate');} this.get_itemTemplateParentElementId =function(){return _itemTemplateParentElementId;} this.set_itemTemplateParentElementId =function(id){_itemTemplateParentElementId =id;this.raisePropertyChanged('itemTemplateParentElementId');} this.get_layoutTemplate =function(){return _layoutTemplate;} this.set_layoutTemplate =function(template){if (_layoutTemplate){_layoutTemplate.dispose();} _layoutTemplate =template;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('layoutTemplate');} this.get_selectedItemCssClass =function(){return _selectedItemClass;} this.set_selectedItemCssClass =function(value){if (value !=_selectedItemClass){_selectedItemClass =value;this.render();this.raisePropertyChanged('selectedItemCssClass');} } this.get_separatorCssClass =function(){return _separatorClass;} this.set_separatorCssClass =function(value){if (value !=_separatorClass){_separatorClass =value;this.render();this.raisePropertyChanged('separatorCssClass');} } this.get_separatorTemplate =function(){return _separatorTemplate;} this.set_separatorTemplate =function(template){if (_separatorTemplate){_separatorTemplate.dispose();} _separatorTemplate =template;if (!this.get_isUpdating()){this.render();} this.raisePropertyChanged('separatorTemplate');} this.getDescriptor =function(){var td =Sys.UI.Data.ListView.callBaseMethod(this,'getDescriptor');td.addProperty("alternatingItemCssClass",String);td.addProperty("layoutTemplate",Sys.UI.ITemplate);td.addProperty("itemCssClass",String);td.addProperty("itemTemplate",Sys.UI.ITemplate);td.addProperty("itemTemplateParentElementId",String);td.addProperty("selectedItemCssClass",String);td.addProperty("separatorCssClass",String);td.addProperty("separatorTemplate",Sys.UI.ITemplate);td.addProperty("emptyTemplate",Sys.UI.ITemplate);return td;} Sys.UI.Data.ListView.registerBaseMethod(this,'getDescriptor');this.getItemElement =function(index){return _itemElements[index];} this.initialize =function(){_focusHandler =Function.createDelegate(this,this._onGotFocus);_keyDownHandler =Function.createDelegate(this,this._onKeyDown);_itemFocusHandler =Function.createDelegate(this,this._onItemFocus);_itemClickHandler =Function.createDelegate(this,this._onItemClick);Sys.UI.Data.ListView.callBaseMethod(this,'initialize');this.element.attachEvent('onkeydown',_keyDownHandler);this.element.attachEvent('onfocus',_focusHandler);if (_itemTemplate){_itemTemplate.initialize();} if (_separatorTemplate){_separatorTemplate.initialize();} if (_emptyTemplate){_emptyTemplate.initialize();} if (_layoutTemplate){_layoutTemplate.initialize();} if (!this.get_tabIndex()){this.set_tabIndex(0);} this.render();} Sys.UI.Data.ListView.registerBaseMethod(this,'initialize');this.dispose =function(){if (this.element){if (_focusHandler){this.element.detachEvent('onfocus',_focusHandler);} if (_keyDownHandler){this.element.detachEvent('onkeydown',_keyDownHandler);} } if (_itemElements){for (var i =_itemElements.length -1;i >=0;i--){if (_itemFocusHandler){_itemElements[i].detachEvent('onfocus',_itemFocusHandler);} if (_itemClickHandler){_itemElements[i].detachEvent('onclick',_itemClickHandler);} } } if (_layoutTemplate){_layoutTemplate.dispose();_layoutTemplate =null;} if (_itemTemplate){_itemTemplate.dispose();_itemTemplate =null;} if (_separatorTemplate){_separatorTemplate.dispose();_separatorTemplate =null;} if (_emptyTemplate){_emptyTemplate.dispose();_emptyTemplate =null;} _itemElements =null;_separatorElements =null;_layoutTemplateElement =null;Sys.UI.Data.ListView.callBaseMethod(this,'dispose');} Sys.UI.Data.ListView.registerBaseMethod(this,'dispose');this._onGotFocus =function(){if (window.event.srcElement ==this.element){setFocus(this,this.getItemElement(this.get_dataIndex()));} } this._onKeyDown =function(){var e =window.event;if (e.srcElement ==this.getItemElement(_focusIndex)){if ((e.keyCode ==Sys.UI.Key.Up)||(e.keyCode ==Sys.UI.Key.Left)){if (_focusIndex >0){setFocus(this,this.getItemElement(_focusIndex -1));e.returnValue =false;} } else if ((e.keyCode ==Sys.UI.Key.Down)||(e.keyCode ==Sys.UI.Key.Right)){if (_focusIndex <(this.get_length()-1)){setFocus(this,this.getItemElement(_focusIndex +1));e.returnValue =false;} } else if ((e.keyCode ==Sys.UI.Key.Return)||(e.keyCode ==Sys.UI.Key.Space)){if (_focusIndex !=-1){this.set_dataIndex(_focusIndex);e.returnValue =false;} } } } this._onItemFocus =function(){if (typeof(window.event.srcElement.dataIndex)!="undefined"){_focusIndex =window.event.srcElement.dataIndex;} } this._onItemClick =function(){var s =window.event.srcElement;var srcTag =s.tagName.toUpperCase();while (s &&(typeof(s.dataIndex)=='undefined')){s =s.parentNode;} if (s){var idx =s.dataIndex;sel =this.getItemElement(idx);if (sel){this.set_dataIndex(idx);if ((srcTag !="INPUT")&&(srcTag !="TEXTAREA")&&(srcTag !="SELECT")&&(srcTag !="BUTTON")&&(srcTag !="A")){setFocus(this,sel);} } } } this.render =function(){var i,element;for (i =_itemElements.length -1;i >=0;i--){element =_itemElements[i];if (element){Sys.UI.ITemplate.disposeInstance(element);} } _itemElements =[];for (i =_separatorElements.length -1;i >=0;i--){element =_separatorElements[i];if (element){Sys.UI.ITemplate.disposeInstance(element);} } _separatorElements =[];if (this.element.childNodes.length){if (_layoutTemplateElement){Sys.UI.ITemplate.disposeInstance(_layoutTemplateElement);} } this.element.innerHTML ='';var tasksPending =false;var items =this.get_data();var itemLength =items ?items.get_length():0;if (itemLength >0){var template =this.get_layoutTemplate();if (template){var itemTemplate =this.get_itemTemplate();var separatorTemplate =this.get_separatorTemplate();var layoutTemplateInstance =template.createInstance(this.element,null,findItemTemplateParentCallback,_itemTemplateParentElementId);var itemTemplateParent =layoutTemplateInstance.callbackResult;_layoutTemplateElement =layoutTemplateInstance.instanceElement;tasksPending =true;var renderTask =new Sys.UI.Data.ListViewRenderTask(this,items,itemTemplate,itemTemplateParent,separatorTemplate,_itemElements,_separatorElements,_itemClass,_alternatingItemClass,_separatorClass,_itemFocusHandler,_itemClickHandler);Sys.TaskManager.addTask(renderTask);} } else {var emptyTemplate =this.get_emptyTemplate();if (emptyTemplate){emptyTemplate.createInstance(this.element);} } } function findItemTemplateParentCallback(instanceElement,markupContext,id){return markupContext.findElement(id);} function setFocus(owner,element){if (element.focus){for(var i =owner.get_length()-1;i >=0;i--){var sel =owner.getItemElement(i);if (sel){sel.tabIndex =-1;} } var t =owner.element.tabIndex;if (t ==-1){t =owner.element.__tabIndex;} element.tabIndex =t;setTimeout(Function.createCallback(focus,element),0);owner.element.__tabIndex =t;owner.element.tabIndex =-1;} } function focus(element){try {element.focus();} catch(e){} } } Sys.UI.Data.ListView.registerClass('Sys.UI.Data.ListView',Sys.UI.Data.DataControl);Sys.TypeDescriptor.addType('script','listView',Sys.UI.Data.ListView);Sys.UI.Data.ListViewRenderTask =function(listView,data,itemTemplate,itemTemplateParent,separatorTemplate,itemElements,separatorElements,itemClass,alternatingItemClass,separatorClass,itemFocusHandler,itemClickHandler){var _listView =listView;var _data =data;var _itemTemplate =itemTemplate;var _itemTemplateParent =itemTemplateParent;var _separatorTemplate =separatorTemplate;var _itemElements =itemElements;var _separatorElements =separatorElements;var _itemClass =itemClass;var _alternatingItemClass =alternatingItemClass;var _separatorClass =separatorClass;var _itemFocusHandler =itemFocusHandler;var _itemClickHandler =itemClickHandler;var _currentIndex =0;this.dispose =function(){_listView =null;_data =null;_itemTemplate =null;_itemTemplateParent =null;_separatorTemplate =null;_itemElements =null;_separatorElements =null;_itemClass =null;_alternatingItemClass =null;_separatorClass =null;_itemFocusHandler =null;_itemClickHandler =null;} this.execute =function(){var itemLength =_data.get_length();var lengthm1 =itemLength -1;var lastElementToRender =Math.min(itemLength,_currentIndex +5);for (;_currentIndex =0;i--){var node =children[i];destroyTree(node,markupContext);element.removeChild(node);} } } function disableElements(elements){for (var i =elements.length -1;i >=0;i--){var elmt =elements[i];if (!elmt.disabled){elmt.disabled =true;} else {elmt._wasDisabled =true;} } } this._disableFormElements =function(){disableElements(_form.getElementsByTagName("INPUT"));disableElements(_form.getElementsByTagName("SELECT"));disableElements(_form.getElementsByTagName("TEXTAREA"));disableElements(_form.getElementsByTagName("BUTTON"));disableElements(_form.getElementsByTagName("A"));} this.dispose =function(){if (_form){_form.detachEvent('onsubmit',_onFormSubmitHandler);_form.detachEvent('onclick',_onFormElementClickHandler);} if (_originalDoPostBack){window.__doPostBack =_originalDoPostBack;_originalDoPostBack =null;} _form =null;_scriptManagerID =null;_updatePanelIDs =null;_updatePanelClientIDs =null;_asyncPostbackControlIDs =null;Sys.Runtime.unregisterDisposableObject(this);} this._doPostBack =function(eventTarget,eventArgument){_additionalInput =null;if (this.get_inPostBack()){if (window.event){window.event.returnValue =false;} return;} _postbackSettings =null;var postbackElement =findNearestElement(eventTarget);if (postbackElement){_postbackSettings =getPostbackSettings(postbackElement);} else {_postbackSettings =createPostbackSettings(true,_scriptManagerID);} if (!_postbackSettings.async){_originalDoPostBack(eventTarget,eventArgument);return;} var form =_form;form.__EVENTTARGET.value =eventTarget;form.__EVENTARGUMENT.value =eventArgument;this._onFormSubmit();if (window.event){window.event.returnValue =false;} } function enableElements(elements){for (var i =elements.length -1;i >=0;i--){var elmt =elements[i];if (!elmt._wasDisabled){elmt.disabled =false;} else {elmt._wasDisabled =null;} } } this._enableFormElements =function(){enableElements(_form.getElementsByTagName("INPUT"));enableElements(_form.getElementsByTagName("SELECT"));enableElements(_form.getElementsByTagName("TEXTAREA"));enableElements(_form.getElementsByTagName("BUTTON"));enableElements(_form.getElementsByTagName("A"));} this._enterErrorMode =function(pageErrorMessage){this._onFormSubmitCompletedCallback();var errorContainer =null;if (_errorContainerID){errorContainer =document.getElementById(_errorContainerID);} if (errorContainer){if (!_errorModeGrayDiv){_errorModeGrayDiv =document.createElement('div');_errorModeGrayDiv.style.position ='absolute';_errorModeGrayDiv.style.top ='0px';_errorModeGrayDiv.style.left ='0px';_errorModeGrayDiv.style.width ='100%';_errorModeGrayDiv.style.height ='100%';_errorModeGrayDiv.style.backgroundColor ='#c1c0c0';_errorModeGrayDiv.style.opacity ='0.50';_errorModeGrayDiv.style.filter ='alpha(opacity=50)';_errorModeGrayDiv.style.zIndex ='30000';_errorModeTable =document.createElement('table');_errorModeTable.cellPadding ='0';_errorModeTable.cellSpacing ='0';_errorModeTable.style.top ='0px';_errorModeTable.style.left ='0px';_errorModeTable.style.position ='absolute';_errorModeTable.style.zIndex ='30001';var tbodyElement =document.createElement('tbody');var trElement =document.createElement('tr');var tdElement =document.createElement('td');tdElement.vAlign ='middle';tdElement.align ='center';_errorModeTable.appendChild(tbodyElement);tbodyElement.appendChild(trElement);trElement.appendChild(tdElement);tdElement.appendChild(errorContainer);document.body.appendChild(_errorModeGrayDiv);document.body.appendChild(_errorModeTable);} else {_errorModeGrayDiv.style.display ='';_errorModeTable.style.display ='';} this._disableFormElements();this._onWindowResize();if (!_onWindowResizeHandler){_onWindowResizeHandler =Function.createDelegate(this,this._onWindowResize);} window.attachEvent('onresize',_onWindowResizeHandler);_pageErrorMessage =pageErrorMessage;this.raisePropertyChanged('pageErrorMessage');_inErrorMode =true;this.raisePropertyChanged('inErrorMode');} else {alert(pageErrorMessage);} } function findNearestElement(uniqueID){while (uniqueID.length >0){var clientID =uniqueIDToClientID(uniqueID);var element =document.getElementById(clientID);if (element){return element;} var indexOfLastDollar =uniqueID.lastIndexOf('$');if (indexOfLastDollar ==-1){return null;} uniqueID =uniqueID.substring(0,indexOfLastDollar);} return null;} this.getDescriptor =function(){var td =new Sys.TypeDescriptor();td.addProperty('asyncPostbackControlIDs',String);td.addProperty('errorContainerID',String);td.addProperty('form',String);td.addProperty('id',String);td.addProperty('inPostBack',Boolean,true);td.addProperty('inErrorMode',Boolean,true);td.addProperty('pageErrorMessage',String,true);td.addProperty('scriptManagerID',String);td.addProperty('updatePanelIDs',String);td.addEvent('propertyChanged',false);td.addMethod('abortPostBack');td.addMethod('clearError');return td;} function getPostbackSettings(element){for (var j =_updatePanelClientIDs.length -1;j >=0;j--){var updatePanel =document.getElementById(_updatePanelClientIDs[j]);if (updatePanel &&updatePanel.contains(element)){return createPostbackSettings(true,_updatePanelIDs[j]);} } for (var i =0;i <_asyncPostbackControlIDs.length;i++){var asyncPostbackControl =document.getElementById(_asyncPostbackControlIDs[i]);if (element ==asyncPostbackControl){return createPostbackSettings(true,_scriptManagerID);} } return createPostbackSettings(false,null);} this._loadScript =function(){var currentScript =_currentLoadingScript;if (currentScript){if ((currentScript.readyState !='loaded')&&(currentScript.readyState !='complete')){return;} else {if (Sys.Runtime.get_hostType()!=Sys.HostType.InternetExplorer){currentScript.onload =null;} else {currentScript.onreadystatechange =null;} _currentLoadingScript =null;} } var scripts =_scriptsToLoad;if (scripts &&(scripts.length >1)){var scriptSrc =scripts.dequeue();var scriptElement =document.createElement('SCRIPT');_currentLoadingScript =scriptElement;if (Sys.Runtime.get_hostType()!=Sys.HostType.InternetExplorer){scriptElement.readyState ='loaded';scriptElement.onload =Function.createDelegate(this,this._loadScript);} else {scriptElement.onreadystatechange =Function.createDelegate(this,this._loadScript);} scriptElement.type ='text/javascript';scriptElement.src =scriptSrc;addScriptToDocument(scriptElement);return;} var scriptText =scripts[0];if (scriptText){var inlineScriptElement =document.createElement('SCRIPT');inlineScriptElement.type ='text/javascript';inlineScriptElement.text =scriptText;addScriptToDocument(inlineScriptElement);} this._onFormSubmitCompletedCallback();} this._onFormElementClick =function(){var element =window.event.srcElement;if (element.disabled){return;} if (this.get_inPostBack()){return;} _postbackSettings =getPostbackSettings(element);if (element.tagName =='INPUT'){var type =element.type;if (type =='submit'){_additionalInput =element.name +'='+encodeURIComponent(element.value);} else if (type =='image'){var x =window.event.offsetX;var y =window.event.offsetY;_additionalInput =element.name +'.x='+x +'&'+element.name +'.y='+y;} } else if ((element.tagName =='BUTTON')&&(element.name.length !=0)&&(element.type =='submit')){_additionalInput =element.name +'='+encodeURIComponent(element.value);} } this._onFormSubmit =function(){if (this.get_inPostBack()){if (window.event){window.event.returnValue =false;} return false;} var continueSubmit =true;if (_onsubmit){continueSubmit =_onsubmit();} if (!continueSubmit){if (window.event){window.event.returnValue =false;} return false;} var form =_form;if (form.action !=form._initialAction){return true;} if (!_postbackSettings.async){return true;} var formBody =new Sys.StringBuilder();formBody.append(_scriptManagerID +'='+_postbackSettings.panelID +'&');var count =form.elements.length;for (var i =0;i =0;i--){var scriptNode =existingScripts[i];var scriptSrcAttribute =scriptNode.attributes.getNamedItem('src');var scriptSrc =(scriptSrcAttribute)?scriptSrcAttribute.nodeValue :'';if (scriptSrc.length){if (scriptSrc.indexOf('/WebResource.axd?')>=0){var scriptIndexT =scriptSrc.indexOf('&t=');scriptSrc =scriptSrc.substring(0,scriptIndexT);} if (!_referencedScripts.contains(scriptSrc)){_referencedScripts.add(scriptSrc);} } } if (window.__theFormPostData){window.__theFormPostData ="";} if (window.__theFormPostCollection){window.__theFormPostCollection =[];} if (window.__rootMenuItem){window.__rootMenuItem =null;} if (window.__scrollPanel){window.__scrollPanel =null;} var scriptsToLoad =[];var scriptText ='';for (var j =0;j =0){var indexT =src.indexOf('&t=');src =src.substring(0,indexT);} if (_referencedScripts.contains(src)){continue;} scriptsToLoad.queue(src);} else {var text ='';if (xmlScriptNode.childNodes.length !=0){for (var c =xmlScriptNode.childNodes.length -1;c >=0;c--){var nodeType =xmlScriptNode.childNodes[c].nodeType;if ((nodeType ==3)||(nodeType ==4)||(nodeType ==8)){text +=xmlScriptNode.childNodes[c].nodeValue;} } } else {text =xmlScriptNode.nodeValue;} if (text){if (text.indexOf('function __doPostBack(')>=0){continue;} scriptText +=text;} } } scriptsToLoad.queue(Sys.UI._unescapeCData(scriptText));if (scriptsToLoad.length !=0){_scriptsToLoad =scriptsToLoad;_currentLoadingScript =null;this._loadScript();} else {this._onFormSubmitCompletedCallback();} } this._updateStyleSheet =function(cssText){var head =document.getElementsByTagName('HEAD')[0];var styles =document.styleSheets;var styleSheet =styles[styles.length -1];if (Sys.Runtime.get_hostType()==Sys.HostType.InternetExplorer){styleSheet.cssText =cssText;} else {for (var i =styleSheet.cssRules.length -1;i >=0;i--){styleSheet.deleteRule(i);} var ruleLines =cssText.split('}');for (var j =0;j