/* START MicrosoftAjax.js */
//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjax.js
Function.__typeName="Function";Function.__class=true;Function.createCallback=function(b,a){return function(){var e=arguments.length;if(e>0){var d=[];for(var c=0;c<e;c++)d[c]=arguments[c];d[e]=a;return b.apply(this,d)}return b.call(this,a)}};Function.createDelegate=function(a,b){return function(){return b.apply(a,arguments)}};Function.emptyFunction=Function.emptyMethod=function(){};Function._validateParams=function(e,c){var a;a=Function._validateParameterCount(e,c);if(a){a.popStackFrame();return a}for(var b=0;b<e.length;b++){var d=c[Math.min(b,c.length-1)],f=d.name;if(d.parameterArray)f+="["+(b-c.length+1)+"]";a=Function._validateParameter(e[b],d,f);if(a){a.popStackFrame();return a}}return null};Function._validateParameterCount=function(e,a){var c=a.length,d=0;for(var b=0;b<a.length;b++)if(a[b].parameterArray)c=Number.MAX_VALUE;else if(!a[b].optional)d++;if(e.length<d||e.length>c){var f=Error.parameterCount();f.popStackFrame();return f}return null};Function._validateParameter=function(c,a,h){var b,g=a.type,l=!!a.integer,k=!!a.domElement,m=!!a.mayBeNull;b=Function._validateParameterType(c,g,l,k,m,h);if(b){b.popStackFrame();return b}var e=a.elementType,f=!!a.elementMayBeNull;if(g===Array&&typeof c!=="undefined"&&c!==null&&(e||!f)){var j=!!a.elementInteger,i=!!a.elementDomElement;for(var d=0;d<c.length;d++){var n=c[d];b=Function._validateParameterType(n,e,j,i,f,h+"["+d+"]");if(b){b.popStackFrame();return b}}}return null};Function._validateParameterType=function(a,c,n,m,k,d){var b;if(typeof a==="undefined")if(k)return null;else{b=Error.argumentUndefined(d);b.popStackFrame();return b}if(a===null)if(k)return null;else{b=Error.argumentNull(d);b.popStackFrame();return b}if(c&&c.__enum){if(typeof a!=="number"){b=Error.argumentType(d,Object.getType(a),c);b.popStackFrame();return b}if(a%1===0){var e=c.prototype;if(!c.__flags||a===0){for(var i in e)if(e[i]===a)return null}else{var l=a;for(var i in e){var f=e[i];if(f===0)continue;if((f&a)===f)l-=f;if(l===0)return null}}}b=Error.argumentOutOfRange(d,a,String.format(Sys.Res.enumInvalidValue,a,c.getName()));b.popStackFrame();return b}if(m){var h;if(typeof a.nodeType!=="number"){var g=a.ownerDocument||a.document||a;if(g!=a){var j=g.defaultView||g.parentWindow;h=j!=a&&!(j.document&&a.document&&j.document===a.document)}else h=typeof g.body==="undefined"}else h=a.nodeType===3;if(h){b=Error.argument(d,Sys.Res.argumentDomElement);b.popStackFrame();return b}}if(c&&!c.isInstanceOfType(a)){b=Error.argumentType(d,Object.getType(a),c);b.popStackFrame();return b}if(c===Number&&n)if(a%1!==0){b=Error.argumentOutOfRange(d,a,Sys.Res.argumentInteger);b.popStackFrame();return b}return null};Error.__typeName="Error";Error.__class=true;Error.create=function(d,b){var a=new Error(d);a.message=d;if(b)for(var c in b)a[c]=b[c];a.popStackFrame();return a};Error.argument=function(a,c){var b="Sys.ArgumentException: "+(c?c:Sys.Res.argument);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentException",paramName:a});d.popStackFrame();return d};Error.argumentNull=function(a,c){var b="Sys.ArgumentNullException: "+(c?c:Sys.Res.argumentNull);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentNullException",paramName:a});d.popStackFrame();return d};Error.argumentOutOfRange=function(c,a,d){var b="Sys.ArgumentOutOfRangeException: "+(d?d:Sys.Res.argumentOutOfRange);if(c)b+="\n"+String.format(Sys.Res.paramName,c);if(typeof a!=="undefined"&&a!==null)b+="\n"+String.format(Sys.Res.actualValue,a);var e=Error.create(b,{name:"Sys.ArgumentOutOfRangeException",paramName:c,actualValue:a});e.popStackFrame();return e};Error.argumentType=function(d,c,b,e){var a="Sys.ArgumentTypeException: ";if(e)a+=e;else if(c&&b)a+=String.format(Sys.Res.argumentTypeWithTypes,c.getName(),b.getName());else a+=Sys.Res.argumentType;if(d)a+="\n"+String.format(Sys.Res.paramName,d);var f=Error.create(a,{name:"Sys.ArgumentTypeException",paramName:d,actualType:c,expectedType:b});f.popStackFrame();return f};Error.argumentUndefined=function(a,c){var b="Sys.ArgumentUndefinedException: "+(c?c:Sys.Res.argumentUndefined);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentUndefinedException",paramName:a});d.popStackFrame();return d};Error.format=function(a){var c="Sys.FormatException: "+(a?a:Sys.Res.format),b=Error.create(c,{name:"Sys.FormatException"});b.popStackFrame();return b};Error.invalidOperation=function(a){var c="Sys.InvalidOperationException: "+(a?a:Sys.Res.invalidOperation),b=Error.create(c,{name:"Sys.InvalidOperationException"});b.popStackFrame();return b};Error.notImplemented=function(a){var c="Sys.NotImplementedException: "+(a?a:Sys.Res.notImplemented),b=Error.create(c,{name:"Sys.NotImplementedException"});b.popStackFrame();return b};Error.parameterCount=function(a){var c="Sys.ParameterCountException: "+(a?a:Sys.Res.parameterCount),b=Error.create(c,{name:"Sys.ParameterCountException"});b.popStackFrame();return b};Error.prototype.popStackFrame=function(){if(typeof this.stack==="undefined"||this.stack===null||typeof this.fileName==="undefined"||this.fileName===null||typeof this.lineNumber==="undefined"||this.lineNumber===null)return;var a=this.stack.split("\n"),c=a[0],e=this.fileName+":"+this.lineNumber;while(typeof c!=="undefined"&&c!==null&&c.indexOf(e)===-1){a.shift();c=a[0]}var d=a[1];if(typeof d==="undefined"||d===null)return;var b=d.match(/@(.*):(\d+)$/);if(typeof b==="undefined"||b===null)return;this.fileName=b[1];this.lineNumber=parseInt(b[2]);a.shift();this.stack=a.join("\n")};Object.__typeName="Object";Object.__class=true;Object.getType=function(b){var a=b.constructor;if(!a||typeof a!=="function"||!a.__typeName||a.__typeName==="Object")return Object;return a};Object.getTypeName=function(a){return Object.getType(a).getName()};String.__typeName="String";String.__class=true;String.prototype.endsWith=function(a){return this.substr(this.length-a.length)===a};String.prototype.startsWith=function(a){return this.substr(0,a.length)===a};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};String.prototype.trimEnd=function(){return this.replace(/\s+$/,"")};String.prototype.trimStart=function(){return this.replace(/^\s+/,"")};String.format=function(){return String._toFormattedString(false,arguments)};String.localeFormat=function(){return String._toFormattedString(true,arguments)};String._toFormattedString=function(l,j){var c="",e=j[0];for(var a=0;true;){var f=e.indexOf("{",a),d=e.indexOf("}",a);if(f<0&&d<0){c+=e.slice(a);break}if(d>0&&(d<f||f<0)){c+=e.slice(a,d+1);a=d+2;continue}c+=e.slice(a,f);a=f+1;if(e.charAt(a)==="{"){c+="{";a++;continue}if(d<0)break;var h=e.substring(a,d),g=h.indexOf(":"),k=parseInt(g<0?h:h.substring(0,g),10)+1,i=g<0?"":h.substring(g+1),b=j[k];if(typeof b==="undefined"||b===null)b="";if(b.toFormattedString)c+=b.toFormattedString(i);else if(l&&b.localeFormat)c+=b.localeFormat(i);else if(b.format)c+=b.format(i);else c+=b.toString();a=d+1}return c};Boolean.__typeName="Boolean";Boolean.__class=true;Boolean.parse=function(b){var a=b.trim().toLowerCase();if(a==="false")return false;if(a==="true")return true};Date.__typeName="Date";Date.__class=true;Date._appendPreOrPostMatch=function(e,b){var d=0,a=false;for(var c=0,g=e.length;c<g;c++){var f=e.charAt(c);switch(f){case "'":if(a)b.append("'");else d++;a=false;break;case "\\":if(a)b.append("\\");a=!a;break;default:b.append(f);a=false}}return d};Date._expandFormat=function(a,b){if(!b)b="F";if(b.length===1)switch(b){case "d":return a.ShortDatePattern;case "D":return a.LongDatePattern;case "t":return a.ShortTimePattern;case "T":return a.LongTimePattern;case "F":return a.FullDateTimePattern;case "M":case "m":return a.MonthDayPattern;case "s":return a.SortableDateTimePattern;case "Y":case "y":return a.YearMonthPattern;default:throw Error.format(Sys.Res.formatInvalidString)}return b};Date._expandYear=function(c,a){if(a<100){var b=(new Date).getFullYear();a+=b-b%100;if(a>c.Calendar.TwoDigitYearMax)return a-100}return a};Date._getParseRegExp=function(b,e){if(!b._parseRegExp)b._parseRegExp={};else if(b._parseRegExp[e])return b._parseRegExp[e];var c=Date._expandFormat(b,e);c=c.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var a=new Sys.StringBuilder("^"),j=[],f=0,i=0,h=Date._getTokenRegExp(),d;while((d=h.exec(c))!==null){var l=c.slice(f,d.index);f=h.lastIndex;i+=Date._appendPreOrPostMatch(l,a);if(i%2===1){a.append(d[0]);continue}switch(d[0]){case "dddd":case "ddd":case "MMMM":case "MMM":a.append("(\\D+)");break;case "tt":case "t":a.append("(\\D*)");break;case "yyyy":a.append("(\\d{4})");break;case "fff":a.append("(\\d{3})");break;case "ff":a.append("(\\d{2})");break;case "f":a.append("(\\d)");break;case "dd":case "d":case "MM":case "M":case "yy":case "y":case "HH":case "H":case "hh":case "h":case "mm":case "m":case "ss":case "s":a.append("(\\d\\d?)");break;case "zzz":a.append("([+-]?\\d\\d?:\\d{2})");break;case "zz":case "z":a.append("([+-]?\\d\\d?)")}Array.add(j,d[0])}Date._appendPreOrPostMatch(c.slice(f),a);a.append("$");var k=a.toString().replace(/\s+/g,"\\s+"),g={"regExp":k,"groups":j};b._parseRegExp[e]=g;return g};Date._getTokenRegExp=function(){return /dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z/g};Date.parseLocale=function(a){return Date._parse(a,Sys.CultureInfo.CurrentCulture,arguments)};Date.parseInvariant=function(a){return Date._parse(a,Sys.CultureInfo.InvariantCulture,arguments)};Date._parse=function(g,c,h){var e=false;for(var a=1,i=h.length;a<i;a++){var f=h[a];if(f){e=true;var b=Date._parseExact(g,f,c);if(b)return b}}if(!e){var d=c._getDateTimeFormats();for(var a=0,i=d.length;a<i;a++){var b=Date._parseExact(g,d[a],c);if(b)return b}}return null};Date._parseExact=function(s,y,j){s=s.trim();var m=j.dateTimeFormat,v=Date._getParseRegExp(m,y),x=(new RegExp(v.regExp)).exec(s);if(x===null)return null;var w=v.groups,f=null,c=null,h=null,g=null,d=0,n=0,o=0,e=0,k=null,r=false;for(var p=0,z=w.length;p<z;p++){var a=x[p+1];if(a)switch(w[p]){case "dd":case "d":h=parseInt(a,10);if(h<1||h>31)return null;break;case "MMMM":c=j._getMonthIndex(a);if(c<0||c>11)return null;break;case "MMM":c=j._getAbbrMonthIndex(a);if(c<0||c>11)return null;break;case "M":case "MM":var c=parseInt(a,10)-1;if(c<0||c>11)return null;break;case "y":case "yy":f=Date._expandYear(m,parseInt(a,10));if(f<0||f>9999)return null;break;case "yyyy":f=parseInt(a,10);if(f<0||f>9999)return null;break;case "h":case "hh":d=parseInt(a,10);if(d===12)d=0;if(d<0||d>11)return null;break;case "H":case "HH":d=parseInt(a,10);if(d<0||d>23)return null;break;case "m":case "mm":n=parseInt(a,10);if(n<0||n>59)return null;break;case "s":case "ss":o=parseInt(a,10);if(o<0||o>59)return null;break;case "tt":case "t":var u=a.toUpperCase();r=u===m.PMDesignator.toUpperCase();if(!r&&u!==m.AMDesignator.toUpperCase())return null;break;case "f":e=parseInt(a,10)*100;if(e<0||e>999)return null;break;case "ff":e=parseInt(a,10)*10;if(e<0||e>999)return null;break;case "fff":e=parseInt(a,10);if(e<0||e>999)return null;break;case "dddd":g=j._getDayIndex(a);if(g<0||g>6)return null;break;case "ddd":g=j._getAbbrDayIndex(a);if(g<0||g>6)return null;break;case "zzz":var q=a.split(/:/);if(q.length!==2)return null;var i=parseInt(q[0],10);if(i<-12||i>13)return null;var l=parseInt(q[1],10);if(l<0||l>59)return null;k=i*60+(a.startsWith("-")?-l:l);break;case "z":case "zz":var i=parseInt(a,10);if(i<-12||i>13)return null;k=i*60}}var b=new Date;if(f===null)f=b.getFullYear();if(c===null)c=b.getMonth();if(h===null)h=b.getDate();b.setFullYear(f,c,h);if(b.getDate()!==h)return null;if(g!==null&&b.getDay()!==g)return null;if(r&&d<12)d+=12;b.setHours(d,n,o,e);if(k!==null){var t=b.getMinutes()-(k+b.getTimezoneOffset());b.setHours(b.getHours()+parseInt(t/60,10),t%60)}return b};Date.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Date.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Date.prototype._toFormattedString=function(e,h){if(!e||e.length===0||e==="i")if(h&&h.name.length>0)return this.toLocaleString();else return this.toString();var d=h.dateTimeFormat;e=Date._expandFormat(d,e);var a=new Sys.StringBuilder,b;function c(a){if(a<10)return "0"+a;return a.toString()}function g(a){if(a<10)return "00"+a;if(a<100)return "0"+a;return a.toString()}var j=0,i=Date._getTokenRegExp();for(;true;){var l=i.lastIndex,f=i.exec(e),k=e.slice(l,f?f.index:e.length);j+=Date._appendPreOrPostMatch(k,a);if(!f)break;if(j%2===1){a.append(f[0]);continue}switch(f[0]){case "dddd":a.append(d.DayNames[this.getDay()]);break;case "ddd":a.append(d.AbbreviatedDayNames[this.getDay()]);break;case "dd":a.append(c(this.getDate()));break;case "d":a.append(this.getDate());break;case "MMMM":a.append(d.MonthNames[this.getMonth()]);break;case "MMM":a.append(d.AbbreviatedMonthNames[this.getMonth()]);break;case "MM":a.append(c(this.getMonth()+1));break;case "M":a.append(this.getMonth()+1);break;case "yyyy":a.append(this.getFullYear());break;case "yy":a.append(c(this.getFullYear()%100));break;case "y":a.append(this.getFullYear()%100);break;case "hh":b=this.getHours()%12;if(b===0)b=12;a.append(c(b));break;case "h":b=this.getHours()%12;if(b===0)b=12;a.append(b);break;case "HH":a.append(c(this.getHours()));break;case "H":a.append(this.getHours());break;case "mm":a.append(c(this.getMinutes()));break;case "m":a.append(this.getMinutes());break;case "ss":a.append(c(this.getSeconds()));break;case "s":a.append(this.getSeconds());break;case "tt":a.append(this.getHours()<12?d.AMDesignator:d.PMDesignator);break;case "t":a.append((this.getHours()<12?d.AMDesignator:d.PMDesignator).charAt(0));break;case "f":a.append(g(this.getMilliseconds()).charAt(0));break;case "ff":a.append(g(this.getMilliseconds()).substr(0,2));break;case "fff":a.append(g(this.getMilliseconds()));break;case "z":b=this.getTimezoneOffset()/60;a.append((b<=0?"+":"-")+Math.floor(Math.abs(b)));break;case "zz":b=this.getTimezoneOffset()/60;a.append((b<=0?"+":"-")+c(Math.floor(Math.abs(b))));break;case "zzz":b=this.getTimezoneOffset()/60;a.append((b<=0?"+":"-")+c(Math.floor(Math.abs(b)))+d.TimeSeparator+c(Math.abs(this.getTimezoneOffset()%60)))}}return a.toString()};Number.__typeName="Number";Number.__class=true;Number.parseLocale=function(a){return Number._parse(a,Sys.CultureInfo.CurrentCulture)};Number.parseInvariant=function(a){return Number._parse(a,Sys.CultureInfo.InvariantCulture)};Number._parse=function(b,o){b=b.trim();if(b.match(/^[+-]?infinity$/i))return parseFloat(b);if(b.match(/^0x[a-f0-9]+$/i))return parseInt(b);var a=o.numberFormat,g=Number._parseNumberNegativePattern(b,a,a.NumberNegativePattern),h=g[0],e=g[1];if(h===""&&a.NumberNegativePattern!==1){g=Number._parseNumberNegativePattern(b,a,1);h=g[0];e=g[1]}if(h==="")h="+";var j,d,f=e.indexOf("e");if(f<0)f=e.indexOf("E");if(f<0){d=e;j=null}else{d=e.substr(0,f);j=e.substr(f+1)}var c,k,m=d.indexOf(a.NumberDecimalSeparator);if(m<0){c=d;k=null}else{c=d.substr(0,m);k=d.substr(m+a.NumberDecimalSeparator.length)}c=c.split(a.NumberGroupSeparator).join("");var n=a.NumberGroupSeparator.replace(/\u00A0/g," ");if(a.NumberGroupSeparator!==n)c=c.split(n).join("");var l=h+c;if(k!==null)l+="."+k;if(j!==null){var i=Number._parseNumberNegativePattern(j,a,1);if(i[0]==="")i[0]="+";l+="e"+i[0]+i[1]}if(l.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/))return parseFloat(l);return Number.NaN};Number._parseNumberNegativePattern=function(a,d,e){var b=d.NegativeSign,c=d.PositiveSign;switch(e){case 4:b=" "+b;c=" "+c;case 3:if(a.endsWith(b))return ["-",a.substr(0,a.length-b.length)];else if(a.endsWith(c))return ["+",a.substr(0,a.length-c.length)];break;case 2:b+=" ";c+=" ";case 1:if(a.startsWith(b))return ["-",a.substr(b.length)];else if(a.startsWith(c))return ["+",a.substr(c.length)];break;case 0:if(a.startsWith("(")&&a.endsWith(")"))return ["-",a.substr(1,a.length-2)]}return ["",a]};Number.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Number.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Number.prototype._toFormattedString=function(d,j){if(!d||d.length===0||d==="i")if(j&&j.name.length>0)return this.toLocaleString();else return this.toString();var o=["n %","n%","%n"],n=["-n %","-n%","-%n"],p=["(n)","-n","- n","n-","n -"],m=["$n","n$","$ n","n $"],l=["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function g(a,c,d){for(var b=a.length;b<c;b++)a=d?"0"+a:a+"0";return a}function i(j,i,l,n,p){var h=l[0],k=1,o=Math.pow(10,i),m=Math.round(j*o)/o;if(!isFinite(m))m=j;j=m;var b=j.toString(),a="",c,e=b.split(/e/i);b=e[0];c=e.length>1?parseInt(e[1]):0;e=b.split(".");b=e[0];a=e.length>1?e[1]:"";var q;if(c>0){a=g(a,c,false);b+=a.slice(0,c);a=a.substr(c)}else if(c<0){c=-c;b=g(b,c+1,true);a=b.slice(-c,b.length)+a;b=b.slice(0,-c)}if(i>0){if(a.length>i)a=a.slice(0,i);else a=g(a,i,false);a=p+a}else a="";var d=b.length-1,f="";while(d>=0){if(h===0||h>d)if(f.length>0)return b.slice(0,d+1)+n+f+a;else return b.slice(0,d+1)+a;if(f.length>0)f=b.slice(d-h+1,d+1)+n+f;else f=b.slice(d-h+1,d+1);d-=h;if(k<l.length){h=l[k];k++}}return b.slice(0,d+1)+n+f+a}var a=j.numberFormat,e=Math.abs(this);if(!d)d="D";var b=-1;if(d.length>1)b=parseInt(d.slice(1),10);var c;switch(d.charAt(0)){case "d":case "D":c="n";if(b!==-1)e=g(""+e,b,true);if(this<0)e=-e;break;case "c":case "C":if(this<0)c=l[a.CurrencyNegativePattern];else c=m[a.CurrencyPositivePattern];if(b===-1)b=a.CurrencyDecimalDigits;e=i(Math.abs(this),b,a.CurrencyGroupSizes,a.CurrencyGroupSeparator,a.CurrencyDecimalSeparator);break;case "n":case "N":if(this<0)c=p[a.NumberNegativePattern];else c="n";if(b===-1)b=a.NumberDecimalDigits;e=i(Math.abs(this),b,a.NumberGroupSizes,a.NumberGroupSeparator,a.NumberDecimalSeparator);break;case "p":case "P":if(this<0)c=n[a.PercentNegativePattern];else c=o[a.PercentPositivePattern];if(b===-1)b=a.PercentDecimalDigits;e=i(Math.abs(this)*100,b,a.PercentGroupSizes,a.PercentGroupSeparator,a.PercentDecimalSeparator);break;default:throw Error.format(Sys.Res.formatBadFormatSpecifier)}var k=/n|\$|-|%/g,f="";for(;true;){var q=k.lastIndex,h=k.exec(c);f+=c.slice(q,h?h.index:c.length);if(!h)break;switch(h[0]){case "n":f+=e;break;case "$":f+=a.CurrencySymbol;break;case "-":f+=a.NegativeSign;break;case "%":f+=a.PercentSymbol}}return f};RegExp.__typeName="RegExp";RegExp.__class=true;Array.__typeName="Array";Array.__class=true;Array.add=Array.enqueue=function(a,b){a[a.length]=b};Array.addRange=function(a,b){a.push.apply(a,b)};Array.clear=function(a){a.length=0};Array.clone=function(a){if(a.length===1)return [a[0]];else return Array.apply(null,a)};Array.contains=function(a,b){return Array.indexOf(a,b)>=0};Array.dequeue=function(a){return a.shift()};Array.forEach=function(b,e,d){for(var a=0,f=b.length;a<f;a++){var c=b[a];if(typeof c!=="undefined")e.call(d,c,a,b)}};Array.indexOf=function(d,e,a){if(typeof e==="undefined")return -1;var c=d.length;if(c!==0){a=a-0;if(isNaN(a))a=0;else{if(isFinite(a))a=a-a%1;if(a<0)a=Math.max(0,c+a)}for(var b=a;b<c;b++)if(typeof d[b]!=="undefined"&&d[b]===e)return b}return -1};Array.insert=function(a,b,c){a.splice(b,0,c)};Array.parse=function(value){if(!value)return [];return eval(value)};Array.remove=function(b,c){var a=Array.indexOf(b,c);if(a>=0)b.splice(a,1);return a>=0};Array.removeAt=function(a,b){a.splice(b,1)};if(!window)this.window=this;window.Type=Function;Type.prototype.callBaseMethod=function(a,d,b){var c=this.getBaseMethod(a,d);if(!b)return c.apply(a);else return c.apply(a,b)};Type.prototype.getBaseMethod=function(d,c){var b=this.getBaseType();if(b){var a=b.prototype[c];return a instanceof Function?a:null}return null};Type.prototype.getBaseType=function(){return typeof this.__baseType==="undefined"?null:this.__baseType};Type.prototype.getInterfaces=function(){var a=[],b=this;while(b){var c=b.__interfaces;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Array.contains(a,e))a[a.length]=e}b=b.__baseType}return a};Type.prototype.getName=function(){return typeof this.__typeName==="undefined"?"":this.__typeName};Type.prototype.implementsInterface=function(d){this.resolveInheritance();var c=d.getName(),a=this.__interfaceCache;if(a){var e=a[c];if(typeof e!=="undefined")return e}else a=this.__interfaceCache={};var b=this;while(b){var f=b.__interfaces;if(f)if(Array.indexOf(f,d)!==-1)return a[c]=true;b=b.__baseType}return a[c]=false};Type.prototype.inheritsFrom=function(b){this.resolveInheritance();var a=this.__baseType;while(a){if(a===b)return true;a=a.__baseType}return false};Type.prototype.initializeBase=function(a,b){this.resolveInheritance();if(this.__baseType)if(!b)this.__baseType.apply(a);else this.__baseType.apply(a,b);return a};Type.prototype.isImplementedBy=function(a){if(typeof a==="undefined"||a===null)return false;var b=Object.getType(a);return !!(b.implementsInterface&&b.implementsInterface(this))};Type.prototype.isInstanceOfType=function(b){if(typeof b==="undefined"||b===null)return false;if(b instanceof this)return true;var a=Object.getType(b);return !!(a===this)||a.inheritsFrom&&a.inheritsFrom(this)||a.implementsInterface&&a.implementsInterface(this)};Type.prototype.registerClass=function(c,b,d){this.prototype.constructor=this;this.__typeName=c;this.__class=true;if(b){this.__baseType=b;this.__basePrototypePending=true}Sys.__upperCaseTypes[c.toUpperCase()]=this;if(d){this.__interfaces=[];for(var a=2,f=arguments.length;a<f;a++){var e=arguments[a];this.__interfaces.push(e)}}return this};Type.prototype.registerInterface=function(a){Sys.__upperCaseTypes[a.toUpperCase()]=this;this.prototype.constructor=this;this.__typeName=a;this.__interface=true;return this};Type.prototype.resolveInheritance=function(){if(this.__basePrototypePending){var b=this.__baseType;b.resolveInheritance();for(var a in b.prototype){var c=b.prototype[a];if(!this.prototype[a])this.prototype[a]=c}delete this.__basePrototypePending}};Type.getRootNamespaces=function(){return Array.clone(Sys.__rootNamespaces)};Type.isClass=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__class};Type.isInterface=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__interface};Type.isNamespace=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__namespace};Type.parse=function(typeName,ns){var fn;if(ns){fn=Sys.__upperCaseTypes[ns.getName().toUpperCase()+"."+typeName.toUpperCase()];return fn||null}if(!typeName)return null;if(!Type.__htClasses)Type.__htClasses={};fn=Type.__htClasses[typeName];if(!fn){fn=eval(typeName);Type.__htClasses[typeName]=fn}return fn};Type.registerNamespace=function(f){var d=window,c=f.split(".");for(var b=0;b<c.length;b++){var e=c[b],a=d[e];if(!a){a=d[e]={__namespace:true,__typeName:c.slice(0,b+1).join(".")};if(b===0)Sys.__rootNamespaces[Sys.__rootNamespaces.length]=a;a.getName=function(){return this.__typeName}}d=a}};window.Sys={__namespace:true,__typeName:"Sys",getName:function(){return "Sys"},__upperCaseTypes:{}};Sys.__rootNamespaces=[Sys];Sys.IDisposable=function(){};Sys.IDisposable.prototype={};Sys.IDisposable.registerInterface("Sys.IDisposable");Sys.StringBuilder=function(a){this._parts=typeof a!=="undefined"&&a!==null&&a!==""?[a.toString()]:[];this._value={};this._len=0};Sys.StringBuilder.prototype={append:function(a){this._parts[this._parts.length]=a},appendLine:function(a){this._parts[this._parts.length]=typeof a==="undefined"||a===null||a===""?"\r\n":a+"\r\n"},clear:function(){this._parts=[];this._value={};this._len=0},isEmpty:function(){if(this._parts.length===0)return true;return this.toString()===""},toString:function(a){a=a||"";var b=this._parts;if(this._len!==b.length){this._value={};this._len=b.length}var d=this._value;if(typeof d[a]==="undefined"){if(a!=="")for(var c=0;c<b.length;)if(typeof b[c]==="undefined"||b[c]===""||b[c]===null)b.splice(c,1);else c++;d[a]=this._parts.join(a)}return d[a]}};Sys.StringBuilder.registerClass("Sys.StringBuilder");if(!window.XMLHttpRequest)window.XMLHttpRequest=function(){var b=["Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP"];for(var a=0,c=b.length;a<c;a++)try{return new ActiveXObject(b[a])}catch(d){}return null};Sys.Browser={};Sys.Browser.InternetExplorer={};Sys.Browser.Firefox={};Sys.Browser.Safari={};Sys.Browser.Opera={};Sys.Browser.agent=null;Sys.Browser.hasDebuggerStatement=false;Sys.Browser.name=navigator.appName;Sys.Browser.version=parseFloat(navigator.appVersion);Sys.Browser.documentMode=0;if(navigator.userAgent.indexOf(" MSIE ")>-1){Sys.Browser.agent=Sys.Browser.InternetExplorer;Sys.Browser.version=parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);if(Sys.Browser.version>=8)if(document.documentMode>=7)Sys.Browser.documentMode=document.documentMode;Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" Firefox/")>-1){Sys.Browser.agent=Sys.Browser.Firefox;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Firefox\/(\d+\.\d+)/)[1]);Sys.Browser.name="Firefox";Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" AppleWebKit/")>-1){Sys.Browser.agent=Sys.Browser.Safari;Sys.Browser.version=parseFloat(navigator.userAgent.match(/AppleWebKit\/(\d+(\.\d+)?)/)[1]);Sys.Browser.name="Safari"}else if(navigator.userAgent.indexOf("Opera/")>-1)Sys.Browser.agent=Sys.Browser.Opera;Type.registerNamespace("Sys.UI");Sys._Debug=function(){};Sys._Debug.prototype={_appendConsole:function(a){if(typeof Debug!=="undefined"&&Debug.writeln)Debug.writeln(a);if(window.console&&window.console.log)window.console.log(a);if(window.opera)window.opera.postError(a);if(window.debugService)window.debugService.trace(a)},_appendTrace:function(b){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value+=b+"\n"},assert:function(c,a,b){if(!c){a=b&&this.assert.caller?String.format(Sys.Res.assertFailedCaller,a,this.assert.caller):String.format(Sys.Res.assertFailed,a);if(confirm(String.format(Sys.Res.breakIntoDebugger,a)))this.fail(a)}},clearTrace:function(){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value=""},fail:function(message){this._appendConsole(message);if(Sys.Browser.hasDebuggerStatement)eval("debugger")},trace:function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:function(a,b){var c=this._traceDump(a,b,true)},_traceDump:function(a,c,f,b,d){c=c?c:"traceDump";b=b?b:"";if(a===null){this.trace(b+c+": null");return}switch(typeof a){case "undefined":this.trace(b+c+": Undefined");break;case "number":case "string":case "boolean":this.trace(b+c+": "+a);break;default:if(Date.isInstanceOfType(a)||RegExp.isInstanceOfType(a)){this.trace(b+c+": "+a.toString());break}if(!d)d=[];else if(Array.contains(d,a)){this.trace(b+c+": ...");return}Array.add(d,a);if(a==window||a===document||window.HTMLElement&&a instanceof HTMLElement||typeof a.nodeName==="string"){var k=a.tagName?a.tagName:"DomElement";if(a.id)k+=" - "+a.id;this.trace(b+c+" {"+k+"}")}else{var i=Object.getTypeName(a);this.trace(b+c+(typeof i==="string"?" {"+i+"}":""));if(b===""||f){b+="    ";var e,j,l,g,h;if(Array.isInstanceOfType(a)){j=a.length;for(e=0;e<j;e++)this._traceDump(a[e],"["+e+"]",f,b,d)}else for(g in a){h=a[g];if(!Function.isInstanceOfType(h))this._traceDump(h,g,f,b,d)}}}Array.remove(d,a)}}};Sys._Debug.registerClass("Sys._Debug");Sys.Debug=new Sys._Debug;Sys.Debug.isDebug=false;function Sys$Enum$parse(c,e){var a,b,i;if(e){a=this.__lowerCaseValues;if(!a){this.__lowerCaseValues=a={};var g=this.prototype;for(var f in g)a[f.toLowerCase()]=g[f]}}else a=this.prototype;if(!this.__flags){i=e?c.toLowerCase():c;b=a[i.trim()];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c,this.__typeName));return b}else{var h=(e?c.toLowerCase():c).split(","),j=0;for(var d=h.length-1;d>=0;d--){var k=h[d].trim();b=a[k];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c.split(",")[d].trim(),this.__typeName));j|=b}return j}}function Sys$Enum$toString(c){if(typeof c==="undefined"||c===null)return this.__string;var d=this.prototype,a;if(!this.__flags||c===0){for(a in d)if(d[a]===c)return a}else{var b=this.__sortedValues;if(!b){b=[];for(a in d)b[b.length]={key:a,value:d[a]};b.sort(function(a,b){return a.value-b.value});this.__sortedValues=b}var e=[],g=c;for(a=b.length-1;a>=0;a--){var h=b[a],f=h.value;if(f===0)continue;if((f&c)===f){e[e.length]=h.key;g-=f;if(g===0)break}}if(e.length&&g===0)return e.reverse().join(", ")}return ""}Type.prototype.registerEnum=function(b,c){Sys.__upperCaseTypes[b.toUpperCase()]=this;for(var a in this.prototype)this[a]=this.prototype[a];this.__typeName=b;this.parse=Sys$Enum$parse;this.__string=this.toString();this.toString=Sys$Enum$toString;this.__flags=c;this.__enum=true};Type.isEnum=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__enum};Type.isFlags=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__flags};Sys.EventHandlerList=function(){this._list={}};Sys.EventHandlerList.prototype={addHandler:function(b,a){Array.add(this._getEvent(b,true),a)},removeHandler:function(c,b){var a=this._getEvent(c);if(!a)return;Array.remove(a,b)},getHandler:function(b){var a=this._getEvent(b);if(!a||a.length===0)return null;a=Array.clone(a);return function(c,d){for(var b=0,e=a.length;b<e;b++)a[b](c,d)}},_getEvent:function(a,b){if(!this._list[a]){if(!b)return null;this._list[a]=[]}return this._list[a]}};Sys.EventHandlerList.registerClass("Sys.EventHandlerList");Sys.EventArgs=function(){};Sys.EventArgs.registerClass("Sys.EventArgs");Sys.EventArgs.Empty=new Sys.EventArgs;Sys.CancelEventArgs=function(){Sys.CancelEventArgs.initializeBase(this);this._cancel=false};Sys.CancelEventArgs.prototype={get_cancel:function(){return this._cancel},set_cancel:function(a){this._cancel=a}};Sys.CancelEventArgs.registerClass("Sys.CancelEventArgs",Sys.EventArgs);Sys.INotifyPropertyChange=function(){};Sys.INotifyPropertyChange.prototype={};Sys.INotifyPropertyChange.registerInterface("Sys.INotifyPropertyChange");Sys.PropertyChangedEventArgs=function(a){Sys.PropertyChangedEventArgs.initializeBase(this);this._propertyName=a};Sys.PropertyChangedEventArgs.prototype={get_propertyName:function(){return this._propertyName}};Sys.PropertyChangedEventArgs.registerClass("Sys.PropertyChangedEventArgs",Sys.EventArgs);Sys.INotifyDisposing=function(){};Sys.INotifyDisposing.prototype={};Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");Sys.Component=function(){if(Sys.Application)Sys.Application.registerDisposableObject(this)};Sys.Component.prototype={_id:null,_initialized:false,_updating:false,get_events:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_id:function(){return this._id},set_id:function(a){this._id=a},get_isInitialized:function(){return this._initialized},get_isUpdating:function(){return this._updating},add_disposing:function(a){this.get_events().addHandler("disposing",a)},remove_disposing:function(a){this.get_events().removeHandler("disposing",a)},add_propertyChanged:function(a){this.get_events().addHandler("propertyChanged",a)},remove_propertyChanged:function(a){this.get_events().removeHandler("propertyChanged",a)},beginUpdate:function(){this._updating=true},dispose:function(){if(this._events){var a=this._events.getHandler("disposing");if(a)a(this,Sys.EventArgs.Empty)}delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this)},endUpdate:function(){this._updating=false;if(!this._initialized)this.initialize();this.updated()},initialize:function(){this._initialized=true},raisePropertyChanged:function(b){if(!this._events)return;var a=this._events.getHandler("propertyChanged");if(a)a(this,new Sys.PropertyChangedEventArgs(b))},updated:function(){}};Sys.Component.registerClass("Sys.Component",null,Sys.IDisposable,Sys.INotifyPropertyChange,Sys.INotifyDisposing);function Sys$Component$_setProperties(a,i){var d,j=Object.getType(a),e=j===Object||j===Sys.UI.DomElement,h=Sys.Component.isInstanceOfType(a)&&!a.get_isUpdating();if(h)a.beginUpdate();for(var c in i){var b=i[c],f=e?null:a["get_"+c];if(e||typeof f!=="function"){var k=a[c];if(!b||typeof b!=="object"||e&&!k)a[c]=b;else Sys$Component$_setProperties(k,b)}else{var l=a["set_"+c];if(typeof l==="function")l.apply(a,[b]);else if(b instanceof Array){d=f.apply(a);for(var g=0,m=d.length,n=b.length;g<n;g++,m++)d[m]=b[g]}else if(typeof b==="object"&&Object.getType(b)===Object){d=f.apply(a);Sys$Component$_setProperties(d,b)}}}if(h)a.endUpdate()}function Sys$Component$_setReferences(c,b){for(var a in b){var e=c["set_"+a],d=$find(b[a]);e.apply(c,[d])}}var $create=Sys.Component.create=function(h,f,d,c,g){var a=g?new h(g):new h,b=Sys.Application,i=b.get_isCreatingComponents();a.beginUpdate();if(f)Sys$Component$_setProperties(a,f);if(d)for(var e in d)a["add_"+e](d[e]);if(a.get_id())b.addComponent(a);if(i){b._createdComponents[b._createdComponents.length]=a;if(c)b._addComponentToSecondPass(a,c);else a.endUpdate()}else{if(c)Sys$Component$_setReferences(a,c);a.endUpdate()}return a};Sys.UI.MouseButton=function(){throw Error.notImplemented()};Sys.UI.MouseButton.prototype={leftButton:0,middleButton:1,rightButton:2};Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");Sys.UI.Key=function(){throw Error.notImplemented()};Sys.UI.Key.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127};Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.Point=function(a,b){this.x=a;this.y=b};Sys.UI.Point.registerClass("Sys.UI.Point");Sys.UI.Bounds=function(c,d,b,a){this.x=c;this.y=d;this.height=a;this.width=b};Sys.UI.Bounds.registerClass("Sys.UI.Bounds");Sys.UI.DomEvent=function(e){var a=e,b=this.type=a.type.toLowerCase();this.rawEvent=a;this.altKey=a.altKey;if(typeof a.button!=="undefined")this.button=typeof a.which!=="undefined"?a.button:a.button===4?Sys.UI.MouseButton.middleButton:a.button===2?Sys.UI.MouseButton.rightButton:Sys.UI.MouseButton.leftButton;if(b==="keypress")this.charCode=a.charCode||a.keyCode;else if(a.keyCode&&a.keyCode===46)this.keyCode=127;else this.keyCode=a.keyCode;this.clientX=a.clientX;this.clientY=a.clientY;this.ctrlKey=a.ctrlKey;this.target=a.target?a.target:a.srcElement;if(!b.startsWith("key"))if(typeof a.offsetX!=="undefined"&&typeof a.offsetY!=="undefined"){this.offsetX=a.offsetX;this.offsetY=a.offsetY}else if(this.target&&this.target.nodeType!==3&&typeof a.clientX==="number"){var c=Sys.UI.DomElement.getLocation(this.target),d=Sys.UI.DomElement._getWindow(this.target);this.offsetX=(d.pageXOffset||0)+a.clientX-c.x;this.offsetY=(d.pageYOffset||0)+a.clientY-c.y}this.screenX=a.screenX;this.screenY=a.screenY;this.shiftKey=a.shiftKey};Sys.UI.DomEvent.prototype={preventDefault:function(){if(this.rawEvent.preventDefault)this.rawEvent.preventDefault();else if(window.event)this.rawEvent.returnValue=false},stopPropagation:function(){if(this.rawEvent.stopPropagation)this.rawEvent.stopPropagation();else if(window.event)this.rawEvent.cancelBubble=true}};Sys.UI.DomEvent.registerClass("Sys.UI.DomEvent");var $addHandler=Sys.UI.DomEvent.addHandler=function(a,d,e){if(!a._events)a._events={};var c=a._events[d];if(!c)a._events[d]=c=[];var b;if(a.addEventListener){b=function(b){return e.call(a,new Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else if(a.attachEvent){b=function(){var b={};try{b=Sys.UI.DomElement._getWindow(a).event}catch(c){}return e.call(a,new Sys.UI.DomEvent(b))};a.attachEvent("on"+d,b)}c[c.length]={handler:e,browserHandler:b}},$addHandlers=Sys.UI.DomEvent.addHandlers=function(e,d,c){for(var b in d){var a=d[b];if(c)a=Function.createDelegate(c,a);$addHandler(e,b,a)}},$clearHandlers=Sys.UI.DomEvent.clearHandlers=function(a){if(a._events){var e=a._events;for(var b in e){var d=e[b];for(var c=d.length-1;c>=0;c--)$removeHandler(a,b,d[c].handler)}a._events=null}},$removeHandler=Sys.UI.DomEvent.removeHandler=function(a,e,f){var d=null,c=a._events[e];for(var b=0,g=c.length;b<g;b++)if(c[b].handler===f){d=c[b].browserHandler;break}if(a.removeEventListener)a.removeEventListener(e,d,false);else if(a.detachEvent)a.detachEvent("on"+e,d);c.splice(b,1)};Sys.UI.DomElement=function(){};Sys.UI.DomElement.registerClass("Sys.UI.DomElement");Sys.UI.DomElement.addCssClass=function(a,b){if(!Sys.UI.DomElement.containsCssClass(a,b))if(a.className==="")a.className=b;else a.className+=" "+b};Sys.UI.DomElement.containsCssClass=function(b,a){return Array.contains(b.className.split(" "),a)};Sys.UI.DomElement.getBounds=function(a){var b=Sys.UI.DomElement.getLocation(a);return new Sys.UI.Bounds(b.x,b.y,a.offsetWidth||0,a.offsetHeight||0)};var $get=Sys.UI.DomElement.getElementById=function(f,e){if(!e)return document.getElementById(f);if(e.getElementById)return e.getElementById(f);var c=[],d=e.childNodes;for(var b=0;b<d.length;b++){var a=d[b];if(a.nodeType==1)c[c.length]=a}while(c.length){a=c.shift();if(a.id==f)return a;d=a.childNodes;for(b=0;b<d.length;b++){a=d[b];if(a.nodeType==1)c[c.length]=a}}return null};switch(Sys.Browser.agent){case Sys.Browser.InternetExplorer:Sys.UI.DomElement.getLocation=function(a){if(a.self||a.nodeType===9)return new Sys.UI.Point(0,0);var b=a.getBoundingClientRect();if(!b)return new Sys.UI.Point(0,0);var d=a.ownerDocument.documentElement,e=b.left-2+d.scrollLeft,f=b.top-2+d.scrollTop;try{var c=a.ownerDocument.parentWindow.frameElement||null;if(c){var g=c.frameBorder==="0"||c.frameBorder==="no"?2:0;e+=g;f+=g}}catch(h){}return new Sys.UI.Point(e,f)};break;case Sys.Browser.Safari:Sys.UI.DomElement.getLocation=function(c){if(c.window&&c.window===c||c.nodeType===9)return new Sys.UI.Point(0,0);var f=0,g=0,j=null,e=null,b;for(var a=c;a;j=a,(e=b,a=a.offsetParent)){b=Sys.UI.DomElement._getCurrentStyle(a);var d=a.tagName?a.tagName.toUpperCase():null;if((a.offsetLeft||a.offsetTop)&&(d!=="BODY"||(!e||e.position!=="absolute"))){f+=a.offsetLeft;g+=a.offsetTop}}b=Sys.UI.DomElement._getCurrentStyle(c);var h=b?b.position:null;if(!h||h!=="absolute")for(var a=c.parentNode;a;a=a.parentNode){d=a.tagName?a.tagName.toUpperCase():null;if(d!=="BODY"&&d!=="HTML"&&(a.scrollLeft||a.scrollTop)){f-=a.scrollLeft||0;g-=a.scrollTop||0}b=Sys.UI.DomElement._getCurrentStyle(a);var i=b?b.position:null;if(i&&i==="absolute")break}return new Sys.UI.Point(f,g)};break;case Sys.Browser.Opera:Sys.UI.DomElement.getLocation=function(b){if(b.window&&b.window===b||b.nodeType===9)return new Sys.UI.Point(0,0);var d=0,e=0,i=null;for(var a=b;a;i=a,a=a.offsetParent){var f=a.tagName;d+=a.offsetLeft||0;e+=a.offsetTop||0}var g=b.style.position,c=g&&g!=="static";for(var a=b.parentNode;a;a=a.parentNode){f=a.tagName?a.tagName.toUpperCase():null;if(f!=="BODY"&&f!=="HTML"&&(a.scrollLeft||a.scrollTop)&&(c&&(a.style.overflow==="scroll"||a.style.overflow==="auto"))){d-=a.scrollLeft||0;e-=a.scrollTop||0}var h=a&&a.style?a.style.position:null;c=c||h&&h!=="static"}return new Sys.UI.Point(d,e)};break;default:Sys.UI.DomElement.getLocation=function(d){if(d.window&&d.window===d||d.nodeType===9)return new Sys.UI.Point(0,0);var e=0,f=0,i=null,g=null,b=null;for(var a=d;a;i=a,(g=b,a=a.offsetParent)){var c=a.tagName?a.tagName.toUpperCase():null;b=Sys.UI.DomElement._getCurrentStyle(a);if((a.offsetLeft||a.offsetTop)&&!(c==="BODY"&&(!g||g.position!=="absolute"))){e+=a.offsetLeft;f+=a.offsetTop}if(i!==null&&b){if(c!=="TABLE"&&c!=="TD"&&c!=="HTML"){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}if(c==="TABLE"&&(b.position==="relative"||b.position==="absolute")){e+=parseInt(b.marginLeft)||0;f+=parseInt(b.marginTop)||0}}}b=Sys.UI.DomElement._getCurrentStyle(d);var h=b?b.position:null;if(!h||h!=="absolute")for(var a=d.parentNode;a;a=a.parentNode){c=a.tagName?a.tagName.toUpperCase():null;if(c!=="BODY"&&c!=="HTML"&&(a.scrollLeft||a.scrollTop)){e-=a.scrollLeft||0;f-=a.scrollTop||0;b=Sys.UI.DomElement._getCurrentStyle(a);if(b){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}}}return new Sys.UI.Point(e,f)}}Sys.UI.DomElement.removeCssClass=function(d,c){var a=" "+d.className+" ",b=a.indexOf(" "+c+" ");if(b>=0)d.className=(a.substr(0,b)+" "+a.substring(b+c.length+1,a.length)).trim()};Sys.UI.DomElement.setLocation=function(b,c,d){var a=b.style;a.position="absolute";a.left=c+"px";a.top=d+"px"};Sys.UI.DomElement.toggleCssClass=function(b,a){if(Sys.UI.DomElement.containsCssClass(b,a))Sys.UI.DomElement.removeCssClass(b,a);else Sys.UI.DomElement.addCssClass(b,a)};Sys.UI.DomElement.getVisibilityMode=function(a){return a._visibilityMode===Sys.UI.VisibilityMode.hide?Sys.UI.VisibilityMode.hide:Sys.UI.VisibilityMode.collapse};Sys.UI.DomElement.setVisibilityMode=function(a,b){Sys.UI.DomElement._ensureOldDisplayMode(a);if(a._visibilityMode!==b){a._visibilityMode=b;if(Sys.UI.DomElement.getVisible(a)===false)if(a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none";a._visibilityMode=b}};Sys.UI.DomElement.getVisible=function(b){var a=b.currentStyle||Sys.UI.DomElement._getCurrentStyle(b);if(!a)return true;return a.visibility!=="hidden"&&a.display!=="none"};Sys.UI.DomElement.setVisible=function(a,b){if(b!==Sys.UI.DomElement.getVisible(a)){Sys.UI.DomElement._ensureOldDisplayMode(a);a.style.visibility=b?"visible":"hidden";if(b||a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none"}};Sys.UI.DomElement._ensureOldDisplayMode=function(a){if(!a._oldDisplayMode){var b=a.currentStyle||Sys.UI.DomElement._getCurrentStyle(a);a._oldDisplayMode=b?b.display:null;if(!a._oldDisplayMode||a._oldDisplayMode==="none")switch(a.tagName.toUpperCase()){case "DIV":case "P":case "ADDRESS":case "BLOCKQUOTE":case "BODY":case "COL":case "COLGROUP":case "DD":case "DL":case "DT":case "FIELDSET":case "FORM":case "H1":case "H2":case "H3":case "H4":case "H5":case "H6":case "HR":case "IFRAME":case "LEGEND":case "OL":case "PRE":case "TABLE":case "TD":case "TH":case "TR":case "UL":a._oldDisplayMode="block";break;case "LI":a._oldDisplayMode="list-item";break;default:a._oldDisplayMode="inline"}}};Sys.UI.DomElement._getWindow=function(a){var b=a.ownerDocument||a.document||a;return b.defaultView||b.parentWindow};Sys.UI.DomElement._getCurrentStyle=function(a){if(a.nodeType===3)return null;var c=Sys.UI.DomElement._getWindow(a);if(a.documentElement)a=a.documentElement;var b=c&&a!==c&&c.getComputedStyle?c.getComputedStyle(a,null):a.currentStyle||a.style;if(!b&&Sys.Browser.agent===Sys.Browser.Safari&&a.style){var g=a.style.display,f=a.style.position;a.style.position="absolute";a.style.display="block";var e=c.getComputedStyle(a,null);a.style.display=g;a.style.position=f;b={};for(var d in e)b[d]=e[d];b.display="none"}return b};Sys.IContainer=function(){};Sys.IContainer.prototype={};Sys.IContainer.registerInterface("Sys.IContainer");Sys._ScriptLoader=function(){this._scriptsToLoad=null;this._sessions=[];this._scriptLoadedDelegate=Function.createDelegate(this,this._scriptLoadedHandler)};Sys._ScriptLoader.prototype={dispose:function(){this._stopSession();this._loading=false;if(this._events)delete this._events;this._sessions=null;this._currentSession=null;this._scriptLoadedDelegate=null},loadScripts:function(d,b,c,a){var e={allScriptsLoadedCallback:b,scriptLoadFailedCallback:c,scriptLoadTimeoutCallback:a,scriptsToLoad:this._scriptsToLoad,scriptTimeout:d};this._scriptsToLoad=null;this._sessions[this._sessions.length]=e;if(!this._loading)this._nextSession()},notifyScriptLoaded:function(){if(!this._loading)return;this._currentTask._notified++;if(Sys.Browser.agent===Sys.Browser.Safari)if(this._currentTask._notified===1)window.setTimeout(Function.createDelegate(this,function(){this._scriptLoadedHandler(this._currentTask.get_scriptElement(),true)}),0)},queueCustomScriptTag:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,a)},queueScriptBlock:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{text:a})},queueScriptReference:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{src:a})},_createScriptElement:function(c){var a=document.createElement("script");a.type="text/javascript";for(var b in c)a[b]=c[b];return a},_loadScriptsInternal:function(){var b=this._currentSession;if(b.scriptsToLoad&&b.scriptsToLoad.length>0){var c=Array.dequeue(b.scriptsToLoad),a=this._createScriptElement(c);if(a.text&&Sys.Browser.agent===Sys.Browser.Safari){a.innerHTML=a.text;delete a.text}if(typeof c.src==="string"){this._currentTask=new Sys._ScriptLoaderTask(a,this._scriptLoadedDelegate);this._currentTask.execute()}else{document.getElementsByTagName("head")[0].appendChild(a);Sys._ScriptLoader._clearScript(a);this._loadScriptsInternal()}}else{this._stopSession();var d=b.allScriptsLoadedCallback;if(d)d(this);this._nextSession()}},_nextSession:function(){if(this._sessions.length===0){this._loading=false;this._currentSession=null;return}this._loading=true;var a=Array.dequeue(this._sessions);this._currentSession=a;if(a.scriptTimeout>0)this._timeoutCookie=window.setTimeout(Function.createDelegate(this,this._scriptLoadTimeoutHandler),a.scriptTimeout*1000);this._loadScriptsInternal()},_raiseError:function(a){var c=this._currentSession.scriptLoadFailedCallback,b=this._currentTask.get_scriptElement();this._stopSession();if(c){c(this,b,a);this._nextSession()}else{this._loading=false;throw Sys._ScriptLoader._errorScriptLoadFailed(b.src,a)}},_scriptLoadedHandler:function(a,b){if(b&&this._currentTask._notified)if(this._currentTask._notified>1)this._raiseError(true);else{Array.add(Sys._ScriptLoader._getLoadedScripts(),a.src);this._currentTask.dispose();this._currentTask=null;this._loadScriptsInternal()}else this._raiseError(false)},_scriptLoadTimeoutHandler:function(){var a=this._currentSession.scriptLoadTimeoutCallback;this._stopSession();if(a)a(this);this._nextSession()},_stopSession:function(){if(this._timeoutCookie){window.clearTimeout(this._timeoutCookie);this._timeoutCookie=null}if(this._currentTask){this._currentTask.dispose();this._currentTask=null}}};Sys._ScriptLoader.registerClass("Sys._ScriptLoader",null,Sys.IDisposable);Sys._ScriptLoader.getInstance=function(){var a=Sys._ScriptLoader._activeInstance;if(!a)a=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader;return a};Sys._ScriptLoader.isScriptLoaded=function(b){var a=document.createElement("script");a.src=b;return Array.contains(Sys._ScriptLoader._getLoadedScripts(),a.src)};Sys._ScriptLoader.readLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){var b=Sys._ScriptLoader._referencedScripts=[],c=document.getElementsByTagName("script");for(i=c.length-1;i>=0;i--){var d=c[i],a=d.src;if(a.length)if(!Array.contains(b,a))Array.add(b,a)}}};Sys._ScriptLoader._clearScript=function(a){if(!Sys.Debug.isDebug)a.parentNode.removeChild(a)};Sys._ScriptLoader._errorScriptLoadFailed=function(b,d){var a;if(d)a=Sys.Res.scriptLoadMultipleCallbacks;else a=Sys.Res.scriptLoadFailed;var e="Sys.ScriptLoadFailedException: "+String.format(a,b),c=Error.create(e,{name:"Sys.ScriptLoadFailedException","scriptUrl":b});c.popStackFrame();return c};Sys._ScriptLoader._getLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[];Sys._ScriptLoader.readLoadedScripts()}return Sys._ScriptLoader._referencedScripts};Sys._ScriptLoaderTask=function(b,a){this._scriptElement=b;this._completedCallback=a;this._notified=0};Sys._ScriptLoaderTask.prototype={get_scriptElement:function(){return this._scriptElement},dispose:function(){if(this._disposed)return;this._disposed=true;this._removeScriptElementHandlers();Sys._ScriptLoader._clearScript(this._scriptElement);this._scriptElement=null},execute:function(){this._addScriptElementHandlers();document.getElementsByTagName("head")[0].appendChild(this._scriptElement)},_addScriptElementHandlers:function(){this._scriptLoadDelegate=Function.createDelegate(this,this._scriptLoadHandler);if(Sys.Browser.agent!==Sys.Browser.InternetExplorer){this._scriptElement.readyState="loaded";$addHandler(this._scriptElement,"load",this._scriptLoadDelegate)}else $addHandler(this._scriptElement,"readystatechange",this._scriptLoadDelegate);if(this._scriptElement.addEventListener){this._scriptErrorDelegate=Function.createDelegate(this,this._scriptErrorHandler);this._scriptElement.addEventListener("error",this._scriptErrorDelegate,false)}},_removeScriptElementHandlers:function(){if(this._scriptLoadDelegate){var a=this.get_scriptElement();if(Sys.Browser.agent!==Sys.Browser.InternetExplorer)$removeHandler(a,"load",this._scriptLoadDelegate);else $removeHandler(a,"readystatechange",this._scriptLoadDelegate);if(this._scriptErrorDelegate){this._scriptElement.removeEventListener("error",this._scriptErrorDelegate,false);this._scriptErrorDelegate=null}this._scriptLoadDelegate=null}},_scriptErrorHandler:function(){if(this._disposed)return;this._completedCallback(this.get_scriptElement(),false)},_scriptLoadHandler:function(){if(this._disposed)return;var a=this.get_scriptElement();if(a.readyState!=="loaded"&&a.readyState!=="complete")return;var b=this;window.setTimeout(function(){b._completedCallback(a,true)},0)}};Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDisposable);Sys.ApplicationLoadEventArgs=function(b,a){Sys.ApplicationLoadEventArgs.initializeBase(this);this._components=b;this._isPartialLoad=a};Sys.ApplicationLoadEventArgs.prototype={get_components:function(){return this._components},get_isPartialLoad:function(){return this._isPartialLoad}};Sys.ApplicationLoadEventArgs.registerClass("Sys.ApplicationLoadEventArgs",Sys.EventArgs);Sys.HistoryEventArgs=function(a){Sys.HistoryEventArgs.initializeBase(this);this._state=a};Sys.HistoryEventArgs.prototype={get_state:function(){return this._state}};Sys.HistoryEventArgs.registerClass("Sys.HistoryEventArgs",Sys.EventArgs);Sys._Application=function(){Sys._Application.initializeBase(this);this._disposableObjects=[];this._components={};this._createdComponents=[];this._secondPassComponents=[];this._appLoadHandler=null;this._beginRequestHandler=null;this._clientId=null;this._currentEntry="";this._endRequestHandler=null;this._history=null;this._enableHistory=false;this._historyFrame=null;this._historyInitialized=false;this._historyInitialLength=0;this._historyLength=0;this._historyPointIsNew=false;this._ignoreTimer=false;this._initialState=null;this._state={};this._timerCookie=0;this._timerHandler=null;this._uniqueId=null;this._unloadHandlerDelegate=Function.createDelegate(this,this._unloadHandler);this._loadHandlerDelegate=Function.createDelegate(this,this._loadHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDelegate);Sys.UI.DomEvent.addHandler(window,"load",this._loadHandlerDelegate)};Sys._Application.prototype={_creatingComponents:false,_disposing:false,get_isCreatingComponents:function(){return this._creatingComponents},get_stateString:function(){var a=window.location.hash;if(this._isSafari2()){var b=this._getHistory();if(b)a=b[window.history.length-this._historyInitialLength]}if(a.length>0&&a.charAt(0)==="#")a=a.substring(1);if(Sys.Browser.agent===Sys.Browser.Firefox)a=this._serializeState(this._deserializeState(a,true));return a},get_enableHistory:function(){return this._enableHistory},set_enableHistory:function(a){this._enableHistory=a},add_init:function(a){if(this._initialized)a(this,Sys.EventArgs.Empty);else this.get_events().addHandler("init",a)},remove_init:function(a){this.get_events().removeHandler("init",a)},add_load:function(a){this.get_events().addHandler("load",a)},remove_load:function(a){this.get_events().removeHandler("load",a)},add_navigate:function(a){this.get_events().addHandler("navigate",a)},remove_navigate:function(a){this.get_events().removeHandler("navigate",a)},add_unload:function(a){this.get_events().addHandler("unload",a)},remove_unload:function(a){this.get_events().removeHandler("unload",a)},addComponent:function(a){this._components[a.get_id()]=a},addHistoryPoint:function(c,f){this._ensureHistory();var b=this._state;for(var a in c){var d=c[a];if(d===null){if(typeof b[a]!=="undefined")delete b[a]}else b[a]=d}var e=this._serializeState(b);this._historyPointIsNew=true;this._setState(e,f);this._raiseNavigate()},beginCreateComponents:function(){this._creatingComponents=true},dispose:function(){if(!this._disposing){this._disposing=true;if(this._timerCookie){window.clearTimeout(this._timerCookie);delete this._timerCookie}if(this._endRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);delete this._endRequestHandler}if(this._beginRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);delete this._beginRequestHandler}if(window.pageUnload)window.pageUnload(this,Sys.EventArgs.Empty);var c=this.get_events().getHandler("unload");if(c)c(this,Sys.EventArgs.Empty);var b=Array.clone(this._disposableObjects);for(var a=0,e=b.length;a<e;a++)b[a].dispose();Array.clear(this._disposableObjects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDelegate);if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null}var d=Sys._ScriptLoader.getInstance();if(d)d.dispose();Sys._Application.callBaseMethod(this,"dispose")}},endCreateComponents:function(){var b=this._secondPassComponents;for(var a=0,d=b.length;a<d;a++){var c=b[a].component;Sys$Component$_setReferences(c,b[a].references);c.endUpdate()}this._secondPassComponents=[];this._creatingComponents=false},findComponent:function(b,a){return a?Sys.IContainer.isInstanceOfType(a)?a.findComponent(b):a[b]||null:Sys.Application._components[b]||null},getComponents:function(){var a=[],b=this._components;for(var c in b)a[a.length]=b[c];return a},initialize:function(){if(!this._initialized&&!this._initializing){this._initializing=true;window.setTimeout(Function.createDelegate(this,this._doInitialize),0)}},notifyScriptLoaded:function(){var a=Sys._ScriptLoader.getInstance();if(a)a.notifyScriptLoaded()},registerDisposableObject:function(a){if(!this._disposing)this._disposableObjects[this._disposableObjects.length]=a},raiseLoad:function(){var b=this.get_events().getHandler("load"),a=new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!this._initializing);if(b)b(this,a);if(window.pageLoad)window.pageLoad(this,a);this._createdComponents=[]},removeComponent:function(b){var a=b.get_id();if(a)delete this._components[a]},setServerId:function(a,b){this._clientId=a;this._uniqueId=b},setServerState:function(a){this._ensureHistory();this._state.__s=a;this._updateHiddenField(a)},unregisterDisposableObject:function(a){if(!this._disposing)Array.remove(this._disposableObjects,a)},_addComponentToSecondPass:function(b,a){this._secondPassComponents[this._secondPassComponents.length]={component:b,references:a}},_deserializeState:function(a,i){var e={};a=a||"";var b=a.indexOf("&&");if(b!==-1&&b+2<a.length){e.__s=a.substr(b+2);a=a.substr(0,b)}var g=a.split("&");for(var f=0,k=g.length;f<k;f++){var d=g[f],c=d.indexOf("=");if(c!==-1&&c+1<d.length){var j=d.substr(0,c),h=d.substr(c+1);e[j]=i?h:decodeURIComponent(h)}}return e},_doInitialize:function(){Sys._Application.callBaseMethod(this,"initialize");var b=this.get_events().getHandler("init");if(b){this.beginCreateComponents();b(this,Sys.EventArgs.Empty);this.endCreateComponents()}if(Sys.WebForms){this._beginRequestHandler=Function.createDelegate(this,this._onPageRequestManagerBeginRequest);Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);this._endRequestHandler=Function.createDelegate(this,this._onPageRequestManagerEndRequest);Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler)}var a=this.get_stateString();if(a!==this._currentEntry)this._navigate(a);this.raiseLoad();this._initializing=false},_enableHistoryInScriptManager:function(){this._enableHistory=true},_ensureHistory:function(){if(!this._historyInitialized&&this._enableHistory){if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.documentMode<8){this._historyFrame=document.getElementById("__historyFrame");this._ignoreIFrame=true}if(this._isSafari2()){var a=document.getElementById("__history");this._setHistory([window.location.hash]);this._historyInitialLength=window.history.length}this._timerHandler=Function.createDelegate(this,this._onIdle);this._timerCookie=window.setTimeout(this._timerHandler,100);try{this._initialState=this._deserializeState(this.get_stateString())}catch(b){}this._historyInitialized=true}},_getHistory:function(){var a=document.getElementById("__history");if(!a)return "";var b=a.value;return b?Sys.Serialization.JavaScriptSerializer.deserialize(b,true):""},_isSafari2:function(){return Sys.Browser.agent===Sys.Browser.Safari&&Sys.Browser.version<=419.3},_loadHandler:function(){if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null}this.initialize()},_navigate:function(c){this._ensureHistory();var b=this._deserializeState(c);if(this._uniqueId){var d=this._state.__s||"",a=b.__s||"";if(a!==d){this._updateHiddenField(a);__doPostBack(this._uniqueId,a);this._state=b;return}}this._setState(c);this._state=b;this._raiseNavigate()},_onIdle:function(){delete this._timerCookie;var a=this.get_stateString();if(a!==this._currentEntry){if(!this._ignoreTimer){this._historyPointIsNew=false;this._navigate(a);this._historyLength=window.history.length}}else this._ignoreTimer=false;this._timerCookie=window.setTimeout(this._timerHandler,100)},_onIFrameLoad:function(a){this._ensureHistory();if(!this._ignoreIFrame){this._historyPointIsNew=false;this._navigate(a)}this._ignoreIFrame=false},_onPageRequestManagerBeginRequest:function(){this._ignoreTimer=true},_onPageRequestManagerEndRequest:function(e,d){var b=d.get_dataItems()[this._clientId],a=document.getElementById("__EVENTTARGET");if(a&&a.value===this._uniqueId)a.value="";if(typeof b!=="undefined"){this.setServerState(b);this._historyPointIsNew=true}else this._ignoreTimer=false;var c=this._serializeState(this._state);if(c!==this._currentEntry){this._ignoreTimer=true;this._setState(c);this._raiseNavigate()}},_raiseNavigate:function(){var c=this.get_events().getHandler("navigate"),b={};for(var a in this._state)if(a!=="__s")b[a]=this._state[a];var d=new Sys.HistoryEventArgs(b);if(c)c(this,d)},_serializeState:function(d){var b=[];for(var a in d){var e=d[a];if(a==="__s")var c=e;else b[b.length]=a+"="+encodeURIComponent(e)}return b.join("&")+(c?"&&"+c:"")},_setHistory:function(b){var a=document.getElementById("__history");if(a)a.value=Sys.Serialization.JavaScriptSerializer.serialize(b)},_setState:function(a,c){a=a||"";if(a!==this._currentEntry){if(window.theForm){var e=window.theForm.action,f=e.indexOf("#");window.theForm.action=(f!==-1?e.substring(0,f):e)+"#"+a}if(this._historyFrame&&this._historyPointIsNew){this._ignoreIFrame=true;this._historyPointIsNew=false;var d=this._historyFrame.contentWindow.document;d.open("javascript:'<html></html>'");d.write("<html><head><title>"+(c||document.title)+"</title><scri"+'pt type="text/javascript">parent.Sys.Application._onIFrameLoad(\''+a+"');</scri"+"pt></head><body></body></html>");d.close()}this._ignoreTimer=false;var h=this.get_stateString();this._currentEntry=a;if(a!==h){if(this._isSafari2()){var g=this._getHistory();g[window.history.length-this._historyInitialLength+1]=a;this._setHistory(g);this._historyLength=window.history.length+1;var b=document.createElement("form");b.method="get";b.action="#"+a;document.appendChild(b);b.submit();document.removeChild(b)}else window.location.hash=a;if(typeof c!=="undefined"&&c!==null)document.title=c}}},_unloadHandler:function(){this.dispose()},_updateHiddenField:function(b){if(this._clientId){var a=document.getElementById(this._clientId);if(a)a.value=b}}};Sys._Application.registerClass("Sys._Application",Sys.Component,Sys.IContainer);Sys.Application=new Sys._Application;var $find=Sys.Application.findComponent;Type.registerNamespace("Sys.Net");Sys.Net.WebRequestExecutor=function(){this._webRequest=null;this._resultObject=null};Sys.Net.WebRequestExecutor.prototype={get_webRequest:function(){return this._webRequest},_set_webRequest:function(a){this._webRequest=a},get_started:function(){throw Error.notImplemented()},get_responseAvailable:function(){throw Error.notImplemented()},get_timedOut:function(){throw Error.notImplemented()},get_aborted:function(){throw Error.notImplemented()},get_responseData:function(){throw Error.notImplemented()},get_statusCode:function(){throw Error.notImplemented()},get_statusText:function(){throw Error.notImplemented()},get_xml:function(){throw Error.notImplemented()},get_object:function(){if(!this._resultObject)this._resultObject=Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());return this._resultObject},executeRequest:function(){throw Error.notImplemented()},abort:function(){throw Error.notImplemented()},getResponseHeader:function(){throw Error.notImplemented()},getAllResponseHeaders:function(){throw Error.notImplemented()}};Sys.Net.WebRequestExecutor.registerClass("Sys.Net.WebRequestExecutor");Sys.Net.XMLDOM=function(d){if(!window.DOMParser){var c=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var b=0,f=c.length;b<f;b++)try{var a=new ActiveXObject(c[b]);a.async=false;a.loadXML(d);a.setProperty("SelectionLanguage","XPath");return a}catch(g){}}else try{var e=new window.DOMParser;return e.parseFromString(d,"text/xml")}catch(g){}return null};Sys.Net.XMLHttpExecutor=function(){Sys.Net.XMLHttpExecutor.initializeBase(this);var a=this;this._xmlHttpRequest=null;this._webRequest=null;this._responseAvailable=false;this._timedOut=false;this._timer=null;this._aborted=false;this._started=false;this._onReadyStateChange=function(){if(a._xmlHttpRequest.readyState===4){try{if(typeof a._xmlHttpRequest.status==="undefined")return}catch(b){return}a._clearTimer();a._responseAvailable=true;try{a._webRequest.completed(Sys.EventArgs.Empty)}finally{if(a._xmlHttpRequest!=null){a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest=null}}}};this._clearTimer=function(){if(a._timer!=null){window.clearTimeout(a._timer);a._timer=null}};this._onTimeout=function(){if(!a._responseAvailable){a._clearTimer();a._timedOut=true;a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest.abort();a._webRequest.completed(Sys.EventArgs.Empty);a._xmlHttpRequest=null}}};Sys.Net.XMLHttpExecutor.prototype={get_timedOut:function(){return this._timedOut},get_started:function(){return this._started},get_responseAvailable:function(){return this._responseAvailable},get_aborted:function(){return this._aborted},executeRequest:function(){this._webRequest=this.get_webRequest();var c=this._webRequest.get_body(),a=this._webRequest.get_headers();this._xmlHttpRequest=new XMLHttpRequest;this._xmlHttpRequest.onreadystatechange=this._onReadyStateChange;var e=this._webRequest.get_httpVerb();this._xmlHttpRequest.open(e,this._webRequest.getResolvedUrl(),true);if(a)for(var b in a){var f=a[b];if(typeof f!=="function")this._xmlHttpRequest.setRequestHeader(b,f)}if(e.toLowerCase()==="post"){if(a===null||!a["Content-Type"])this._xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");if(!c)c=""}var d=this._webRequest.get_timeout();if(d>0)this._timer=window.setTimeout(Function.createDelegate(this,this._onTimeout),d);this._xmlHttpRequest.send(c);this._started=true},getResponseHeader:function(b){var a;try{a=this._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a="";return a},getAllResponseHeaders:function(){return this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function(){return this._xmlHttpRequest.responseText},get_statusCode:function(){var a=0;try{a=this._xmlHttpRequest.status}catch(b){}return a},get_statusText:function(){return this._xmlHttpRequest.statusText},get_xml:function(){var a=this._xmlHttpRequest.responseXML;if(!a||!a.documentElement){a=Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);if(!a||!a.documentElement)return null}else if(navigator.userAgent.indexOf("MSIE")!==-1)a.setProperty("SelectionLanguage","XPath");if(a.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&a.documentElement.tagName==="parsererror")return null;if(a.documentElement.firstChild&&a.documentElement.firstChild.tagName==="parsererror")return null;return a},abort:function(){if(this._aborted||this._responseAvailable||this._timedOut)return;this._aborted=true;this._clearTimer();if(this._xmlHttpRequest&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=null;this._webRequest.completed(Sys.EventArgs.Empty)}}};Sys.Net.XMLHttpExecutor.registerClass("Sys.Net.XMLHttpExecutor",Sys.Net.WebRequestExecutor);Sys.Net._WebRequestManager=function(){this._defaultTimeout=0;this._defaultExecutorType="Sys.Net.XMLHttpExecutor"};Sys.Net._WebRequestManager.prototype={add_invokingRequest:function(a){this._get_eventHandlerList().addHandler("invokingRequest",a)},remove_invokingRequest:function(a){this._get_eventHandlerList().removeHandler("invokingRequest",a)},add_completedRequest:function(a){this._get_eventHandlerList().addHandler("completedRequest",a)},remove_completedRequest:function(a){this._get_eventHandlerList().removeHandler("completedRequest",a)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_defaultTimeout:function(){return this._defaultTimeout},set_defaultTimeout:function(a){this._defaultTimeout=a},get_defaultExecutorType:function(){return this._defaultExecutorType},set_defaultExecutorType:function(a){this._defaultExecutorType=a},executeRequest:function(webRequest){var executor=webRequest.get_executor();if(!executor){var failed=false;try{var executorType=eval(this._defaultExecutorType);executor=new executorType}catch(a){failed=true}webRequest.set_executor(executor)}if(executor.get_aborted())return;var evArgs=new Sys.Net.NetworkRequestEventArgs(webRequest),handler=this._get_eventHandlerList().getHandler("invokingRequest");if(handler)handler(this,evArgs);if(!evArgs.get_cancel())executor.executeRequest()}};Sys.Net._WebRequestManager.registerClass("Sys.Net._WebRequestManager");Sys.Net.WebRequestManager=new Sys.Net._WebRequestManager;Sys.Net.NetworkRequestEventArgs=function(a){Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=a};Sys.Net.NetworkRequestEventArgs.prototype={get_webRequest:function(){return this._webRequest}};Sys.Net.NetworkRequestEventArgs.registerClass("Sys.Net.NetworkRequestEventArgs",Sys.CancelEventArgs);Sys.Net.WebRequest=function(){this._url="";this._headers={};this._body=null;this._userContext=null;this._httpVerb=null;this._executor=null;this._invokeCalled=false;this._timeout=0};Sys.Net.WebRequest.prototype={add_completed:function(a){this._get_eventHandlerList().addHandler("completed",a)},remove_completed:function(a){this._get_eventHandlerList().removeHandler("completed",a)},completed:function(b){var a=Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");if(a)a(this._executor,b);a=this._get_eventHandlerList().getHandler("completed");if(a)a(this._executor,b)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_url:function(){return this._url},set_url:function(a){this._url=a},get_headers:function(){return this._headers},get_httpVerb:function(){if(this._httpVerb===null){if(this._body===null)return "GET";return "POST"}return this._httpVerb},set_httpVerb:function(a){this._httpVerb=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_userContext:function(){return this._userContext},set_userContext:function(a){this._userContext=a},get_executor:function(){return this._executor},set_executor:function(a){this._executor=a;this._executor._set_webRequest(this)},get_timeout:function(){if(this._timeout===0)return Sys.Net.WebRequestManager.get_defaultTimeout();return this._timeout},set_timeout:function(a){this._timeout=a},getResolvedUrl:function(){return Sys.Net.WebRequest._resolveUrl(this._url)},invoke:function(){Sys.Net.WebRequestManager.executeRequest(this);this._invokeCalled=true}};Sys.Net.WebRequest._resolveUrl=function(b,a){if(b&&b.indexOf("://")!==-1)return b;if(!a||a.length===0){var d=document.getElementsByTagName("base")[0];if(d&&d.href&&d.href.length>0)a=d.href;else a=document.URL}var c=a.indexOf("?");if(c!==-1)a=a.substr(0,c);c=a.indexOf("#");if(c!==-1)a=a.substr(0,c);a=a.substr(0,a.lastIndexOf("/")+1);if(!b||b.length===0)return a;if(b.charAt(0)==="/"){var e=a.indexOf("://"),g=a.indexOf("/",e+3);return a.substr(0,g)+b}else{var f=a.lastIndexOf("/");return a.substr(0,f+1)+b}};Sys.Net.WebRequest._createQueryString=function(d,b){if(!b)b=encodeURIComponent;var a=new Sys.StringBuilder,f=0;for(var c in d){var e=d[c];if(typeof e==="function")continue;var g=Sys.Serialization.JavaScriptSerializer.serialize(e);if(f!==0)a.append("&");a.append(c);a.append("=");a.append(b(g));f++}return a.toString()};Sys.Net.WebRequest._createUrl=function(a,b){if(!b)return a;var d=Sys.Net.WebRequest._createQueryString(b);if(d.length>0){var c="?";if(a&&a.indexOf("?")!==-1)c="&";return a+c+d}else return a};Sys.Net.WebRequest.registerClass("Sys.Net.WebRequest");Sys.Net.WebServiceProxy=function(){};Sys.Net.WebServiceProxy.prototype={get_timeout:function(){return this._timeout},set_timeout:function(a){if(a<0)throw Error.argumentOutOfRange("value",a,Sys.Res.invalidTimeout);this._timeout=a},get_defaultUserContext:function(){return this._userContext},set_defaultUserContext:function(a){this._userContext=a},get_defaultSucceededCallback:function(){return this._succeeded},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultFailedCallback:function(){return this._failed},set_defaultFailedCallback:function(a){this._failed=a},get_path:function(){return this._path},set_path:function(a){this._path=a},_invoke:function(d,e,g,f,c,b,a){if(c===null||typeof c==="undefined")c=this.get_defaultSucceededCallback();if(b===null||typeof b==="undefined")b=this.get_defaultFailedCallback();if(a===null||typeof a==="undefined")a=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout())}};Sys.Net.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebServiceProxy.invoke=function(k,a,j,d,i,c,f,h){var b=new Sys.Net.WebRequest;b.get_headers()["Content-Type"]="application/json; charset=utf-8";if(!d)d={};var g=d;if(!j||!g)g={};b.set_url(Sys.Net.WebRequest._createUrl(k+"/"+encodeURIComponent(a),g));var e=null;if(!j){e=Sys.Serialization.JavaScriptSerializer.serialize(d);if(e==="{}")e=""}b.set_body(e);b.add_completed(l);if(h&&h>0)b.set_timeout(h);b.invoke();function l(d){if(d.get_responseAvailable()){var g=d.get_statusCode(),b=null;try{var e=d.getResponseHeader("Content-Type");if(e.startsWith("application/json"))b=d.get_object();else if(e.startsWith("text/xml"))b=d.get_xml();else b=d.get_responseData()}catch(m){}var k=d.getResponseHeader("jsonerror"),h=k==="true";if(h){if(b)b=new Sys.Net.WebServiceError(false,b.Message,b.StackTrace,b.ExceptionType)}else if(e.startsWith("application/json"))b=b.d;if(g<200||g>=300||h){if(c){if(!b||!h)b=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,a),"","");b._statusCode=g;c(b,f,a)}}else if(i)i(b,f,a)}else{var j;if(d.get_timedOut())j=String.format(Sys.Res.webServiceTimedOut,a);else j=String.format(Sys.Res.webServiceFailedNoMsg,a);if(c)c(new Sys.Net.WebServiceError(d.get_timedOut(),j,"",""),f,a)}}return b};Sys.Net.WebServiceProxy._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};Sys.Net.WebServiceError=function(c,d,b,a){this._timedOut=c;this._message=d;this._stackTrace=b;this._exceptionType=a;this._statusCode=-1};Sys.Net.WebServiceError.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace},get_exceptionType:function(){return this._exceptionType}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebServiceError");Type.registerNamespace("Sys.Services");Sys.Services._ProfileService=function(){Sys.Services._ProfileService.initializeBase(this);this.properties={}};Sys.Services._ProfileService.DefaultWebServicePath="";Sys.Services._ProfileService.prototype={_defaultLoadCompletedCallback:null,_defaultSaveCompletedCallback:null,_path:"",_timeout:0,get_defaultLoadCompletedCallback:function(){return this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:function(a){this._defaultLoadCompletedCallback=a},get_defaultSaveCompletedCallback:function(){return this._defaultSaveCompletedCallback},set_defaultSaveCompletedCallback:function(a){this._defaultSaveCompletedCallback=a},get_path:function(){return this._path||""},load:function(c,d,e,f){var b,a;if(!c){a="GetAllPropertiesForCurrentUser";b={authenticatedUserOnly:false}}else{a="GetPropertiesForCurrentUser";b={properties:this._clonePropertyNames(c),authenticatedUserOnly:false}}this._invoke(this._get_path(),a,false,b,Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[d,e,f])},save:function(d,b,c,e){var a=this._flattenProperties(d,this.properties);this._invoke(this._get_path(),"SetPropertiesForCurrentUser",false,{values:a.value,authenticatedUserOnly:false},Function.createDelegate(this,this._onSaveComplete),Function.createDelegate(this,this._onSaveFailed),[b,c,e,a.count])},_clonePropertyNames:function(e){var c=[],d={};for(var b=0;b<e.length;b++){var a=e[b];if(!d[a]){Array.add(c,a);d[a]=true}}return c},_flattenProperties:function(a,i,j){var b={},e,d,g=0;if(a&&a.length===0)return {value:b,count:0};for(var c in i){e=i[c];d=j?j+"."+c:c;if(Sys.Services.ProfileGroup.isInstanceOfType(e)){var k=this._flattenProperties(a,e,d),h=k.value;g+=k.count;for(var f in h){var l=h[f];b[f]=l}}else if(!a||Array.indexOf(a,d)!==-1){b[d]=e;g++}}return {value:b,count:g}},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._ProfileService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoadComplete:function(a,e,g){if(typeof a!=="object")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,g,"Object"));var c=this._unflattenProperties(a);for(var b in c)this.properties[b]=c[b];var d=e[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(d){var f=e[2]||this.get_defaultUserContext();d(a.length,f,"Sys.Services.ProfileService.load")}},_onLoadFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.ProfileService.load")}},_onSaveComplete:function(a,b,f){var c=b[3];if(a!==null)if(a instanceof Array)c-=a.length;else if(typeof a==="number")c=a;else throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Array"));var d=b[0]||this.get_defaultSaveCompletedCallback()||this.get_defaultSucceededCallback();if(d){var e=b[2]||this.get_defaultUserContext();d(c,e,"Sys.Services.ProfileService.save")}},_onSaveFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.ProfileService.save")}},_unflattenProperties:function(e){var c={},d,f,h=0;for(var a in e){h++;f=e[a];d=a.indexOf(".");if(d!==-1){var g=a.substr(0,d);a=a.substr(d+1);var b=c[g];if(!b||!Sys.Services.ProfileGroup.isInstanceOfType(b)){b=new Sys.Services.ProfileGroup;c[g]=b}b[a]=f}else c[a]=f}e.length=h;return c}};Sys.Services._ProfileService.registerClass("Sys.Services._ProfileService",Sys.Net.WebServiceProxy);Sys.Services.ProfileService=new Sys.Services._ProfileService;Sys.Services.ProfileGroup=function(a){if(a)for(var b in a)this[b]=a[b]};Sys.Services.ProfileGroup.registerClass("Sys.Services.ProfileGroup");Sys.Services._AuthenticationService=function(){Sys.Services._AuthenticationService.initializeBase(this)};Sys.Services._AuthenticationService.DefaultWebServicePath="";Sys.Services._AuthenticationService.prototype={_defaultLoginCompletedCallback:null,_defaultLogoutCompletedCallback:null,_path:"",_timeout:0,_authenticated:false,get_defaultLoginCompletedCallback:function(){return this._defaultLoginCompletedCallback},set_defaultLoginCompletedCallback:function(a){this._defaultLoginCompletedCallback=a},get_defaultLogoutCompletedCallback:function(){return this._defaultLogoutCompletedCallback},set_defaultLogoutCompletedCallback:function(a){this._defaultLogoutCompletedCallback=a},get_isLoggedIn:function(){return this._authenticated},get_path:function(){return this._path||""},login:function(c,b,a,h,f,d,e,g){this._invoke(this._get_path(),"Login",false,{userName:c,password:b,createPersistentCookie:a},Function.createDelegate(this,this._onLoginComplete),Function.createDelegate(this,this._onLoginFailed),[c,b,a,h,f,d,e,g])},logout:function(c,a,b,d){this._invoke(this._get_path(),"Logout",false,{},Function.createDelegate(this,this._onLogoutComplete),Function.createDelegate(this,this._onLogoutFailed),[c,a,b,d])},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._AuthenticationService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoginComplete:function(e,c,f){if(typeof e!=="boolean")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Boolean"));var b=c[4],d=c[7]||this.get_defaultUserContext(),a=c[5]||this.get_defaultLoginCompletedCallback()||this.get_defaultSucceededCallback();if(e){this._authenticated=true;if(a)a(true,d,"Sys.Services.AuthenticationService.login");if(typeof b!=="undefined"&&b!==null)window.location.href=b}else if(a)a(false,d,"Sys.Services.AuthenticationService.login")},_onLoginFailed:function(d,b){var a=b[6]||this.get_defaultFailedCallback();if(a){var c=b[7]||this.get_defaultUserContext();a(d,c,"Sys.Services.AuthenticationService.login")}},_onLogoutComplete:function(f,a,e){if(f!==null)throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,e,"null"));var b=a[0],d=a[3]||this.get_defaultUserContext(),c=a[1]||this.get_defaultLogoutCompletedCallback()||this.get_defaultSucceededCallback();this._authenticated=false;if(c)c(null,d,"Sys.Services.AuthenticationService.logout");if(!b)window.location.reload();else window.location.href=b},_onLogoutFailed:function(c,b){var a=b[2]||this.get_defaultFailedCallback();if(a)a(c,b[3],"Sys.Services.AuthenticationService.logout")},_setAuthenticated:function(a){this._authenticated=a}};Sys.Services._AuthenticationService.registerClass("Sys.Services._AuthenticationService",Sys.Net.WebServiceProxy);Sys.Services.AuthenticationService=new Sys.Services._AuthenticationService;Sys.Services._RoleService=function(){Sys.Services._RoleService.initializeBase(this);this._roles=[]};Sys.Services._RoleService.DefaultWebServicePath="";Sys.Services._RoleService.prototype={_defaultLoadCompletedCallback:null,_rolesIndex:null,_timeout:0,_path:"",get_defaultLoadCompletedCallback:function(){return this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:function(a){this._defaultLoadCompletedCallback=a},get_path:function(){return this._path||""},get_roles:function(){return Array.clone(this._roles)},isUserInRole:function(a){var b=this._get_rolesIndex()[a.trim().toLowerCase()];return !!b},load:function(a,b,c){Sys.Net.WebServiceProxy.invoke(this._get_path(),"GetRolesForCurrentUser",false,{},Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[a,b,c],this.get_timeout())},_get_path:function(){var a=this.get_path();if(!a||!a.length)a=Sys.Services._RoleService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_get_rolesIndex:function(){if(!this._rolesIndex){var b={};for(var a=0;a<this._roles.length;a++)b[this._roles[a].toLowerCase()]=true;this._rolesIndex=b}return this._rolesIndex},_onLoadComplete:function(a,c,f){if(a&&!(a instanceof Array))throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Array"));this._roles=a;this._rolesIndex=null;var b=c[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(b){var e=c[2]||this.get_defaultUserContext(),d=Array.clone(a);b(d,e,"Sys.Services.RoleService.load")}},_onLoadFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.RoleService.load")}}};Sys.Services._RoleService.registerClass("Sys.Services._RoleService",Sys.Net.WebServiceProxy);Sys.Services.RoleService=new Sys.Services._RoleService;Type.registerNamespace("Sys.Serialization");Sys.Serialization.JavaScriptSerializer=function(){};Sys.Serialization.JavaScriptSerializer.registerClass("Sys.Serialization.JavaScriptSerializer");Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs=[];Sys.Serialization.JavaScriptSerializer._charsToEscape=[];Sys.Serialization.JavaScriptSerializer._dateRegEx=new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars={};Sys.Serialization.JavaScriptSerializer._escapeRegEx=new RegExp('["\\\\\\x00-\\x1F]',"i");Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal=new RegExp('["\\\\\\x00-\\x1F]',"g");Sys.Serialization.JavaScriptSerializer._jsonRegEx=new RegExp("[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]","g");Sys.Serialization.JavaScriptSerializer._jsonStringRegEx=new RegExp('"(\\\\.|[^"\\\\])*"',"g");Sys.Serialization.JavaScriptSerializer._serverTypeFieldName="__type";Sys.Serialization.JavaScriptSerializer._init=function(){var c=["\\u0000","\\u0001","\\u0002","\\u0003","\\u0004","\\u0005","\\u0006","\\u0007","\\b","\\t","\\n","\\u000b","\\f","\\r","\\u000e","\\u000f","\\u0010","\\u0011","\\u0012","\\u0013","\\u0014","\\u0015","\\u0016","\\u0017","\\u0018","\\u0019","\\u001a","\\u001b","\\u001c","\\u001d","\\u001e","\\u001f"];Sys.Serialization.JavaScriptSerializer._charsToEscape[0]="\\";Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs["\\"]=new RegExp("\\\\","g");Sys.Serialization.JavaScriptSerializer._escapeChars["\\"]="\\\\";Sys.Serialization.JavaScriptSerializer._charsToEscape[1]='"';Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"']=new RegExp('"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars['"']='\\"';for(var a=0;a<32;a++){var b=String.fromCharCode(a);Sys.Serialization.JavaScriptSerializer._charsToEscape[a+2]=b;Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b]=new RegExp(b,"g");Sys.Serialization.JavaScriptSerializer._escapeChars[b]=c[a]}};Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder=function(b,a){a.append(b.toString())};Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder=function(a,b){if(isFinite(a))b.append(String(a));else throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers)};Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder=function(a,c){c.append('"');if(Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(a)){if(Sys.Serialization.JavaScriptSerializer._charsToEscape.length===0)Sys.Serialization.JavaScriptSerializer._init();if(a.length<128)a=a.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,function(a){return Sys.Serialization.JavaScriptSerializer._escapeChars[a]});else for(var d=0;d<34;d++){var b=Sys.Serialization.JavaScriptSerializer._charsToEscape[d];if(a.indexOf(b)!==-1)if(Sys.Browser.agent===Sys.Browser.Opera||Sys.Browser.agent===Sys.Browser.FireFox)a=a.split(b).join(Sys.Serialization.JavaScriptSerializer._escapeChars[b]);else a=a.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b],Sys.Serialization.JavaScriptSerializer._escapeChars[b])}}c.append(a);c.append('"')};Sys.Serialization.JavaScriptSerializer._serializeWithBuilder=function(b,a,i,g){var c;switch(typeof b){case "object":if(b)if(Number.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);else if(Boolean.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);else if(String.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);else if(Array.isInstanceOfType(b)){a.append("[");for(c=0;c<b.length;++c){if(c>0)a.append(",");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b[c],a,false,g)}a.append("]")}else{if(Date.isInstanceOfType(b)){a.append('"\\/Date(');a.append(b.getTime());a.append(')\\/"');break}var d=[],f=0;for(var e in b){if(e.startsWith("$"))continue;if(e===Sys.Serialization.JavaScriptSerializer._serverTypeFieldName&&f!==0){d[f++]=d[0];d[0]=e}else d[f++]=e}if(i)d.sort();a.append("{");var j=false;for(c=0;c<f;c++){var h=b[d[c]];if(typeof h!=="undefined"&&typeof h!=="function"){if(j)a.append(",");else j=true;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(d[c],a,i,g);a.append(":");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(h,a,i,g)}}a.append("}")}else a.append("null");break;case "number":Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);break;case "string":Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);break;case "boolean":Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);break;default:a.append("null")}};Sys.Serialization.JavaScriptSerializer.serialize=function(b){var a=new Sys.StringBuilder;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b,a,false);return a.toString()};Sys.Serialization.JavaScriptSerializer.deserialize=function(data,secure){if(data.length===0)throw Error.argument("data",Sys.Res.cannotDeserializeEmptyString);try{var exp=data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx,"$1new Date($2)");if(secure&&Sys.Serialization.JavaScriptSerializer._jsonRegEx.test(exp.replace(Sys.Serialization.JavaScriptSerializer._jsonStringRegEx,"")))throw null;return eval("("+exp+")")}catch(a){throw Error.argument("data",Sys.Res.cannotDeserializeInvalidJson)}};Sys.CultureInfo=function(c,b,a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};Sys.CultureInfo.prototype={_getDateTimeFormats:function(){if(!this._dateTimeFormats){var a=this.dateTimeFormat;this._dateTimeFormats=[a.MonthDayPattern,a.YearMonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.LongTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePattern,a.UniversalSortableDateTimePattern]}return this._dateTimeFormats},_getMonthIndex:function(a){if(!this._upperMonths)this._upperMonths=this._toUpperArray(this.dateTimeFormat.MonthNames);return Array.indexOf(this._upperMonths,this._toUpper(a))},_getAbbrMonthIndex:function(a){if(!this._upperAbbrMonths)this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);return Array.indexOf(this._upperAbbrMonths,this._toUpper(a))},_getDayIndex:function(a){if(!this._upperDays)this._upperDays=this._toUpperArray(this.dateTimeFormat.DayNames);return Array.indexOf(this._upperDays,this._toUpper(a))},_getAbbrDayIndex:function(a){if(!this._upperAbbrDays)this._upperAbbrDays=this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);return Array.indexOf(this._upperAbbrDays,this._toUpper(a))},_toUpperArray:function(c){var b=[];for(var a=0,d=c.length;a<d;a++)b[a]=this._toUpper(c[a]);return b},_toUpper:function(a){return a.split("\u00a0").join(" ").toUpperCase()}};Sys.CultureInfo._parse=function(b){var a=Sys.Serialization.JavaScriptSerializer.deserialize(b);return new Sys.CultureInfo(a.name,a.numberFormat,a.dateTimeFormat)};Sys.CultureInfo.registerClass("Sys.CultureInfo");Sys.CultureInfo.InvariantCulture=Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00a4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}');if(typeof __cultureInfo==="undefined")var __cultureInfo='{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse(__cultureInfo);delete __cultureInfo;Sys.UI.Behavior=function(b){Sys.UI.Behavior.initializeBase(this);this._element=b;var a=b._behaviors;if(!a)b._behaviors=[this];else a[a.length]=this};Sys.UI.Behavior.prototype={_name:null,get_element:function(){return this._element},get_id:function(){var a=Sys.UI.Behavior.callBaseMethod(this,"get_id");if(a)return a;if(!this._element||!this._element.id)return "";return this._element.id+"$"+this.get_name()},get_name:function(){if(this._name)return this._name;var a=Object.getTypeName(this),b=a.lastIndexOf(".");if(b!=-1)a=a.substr(b+1);if(!this.get_isInitialized())this._name=a;return a},set_name:function(a){this._name=a},initialize:function(){Sys.UI.Behavior.callBaseMethod(this,"initialize");var a=this.get_name();if(a)this._element[a]=this},dispose:function(){Sys.UI.Behavior.callBaseMethod(this,"dispose");if(this._element){var a=this.get_name();if(a)this._element[a]=null;Array.remove(this._element._behaviors,this);delete this._element}}};Sys.UI.Behavior.registerClass("Sys.UI.Behavior",Sys.Component);Sys.UI.Behavior.getBehaviorByName=function(b,c){var a=b[c];return a&&Sys.UI.Behavior.isInstanceOfType(a)?a:null};Sys.UI.Behavior.getBehaviors=function(a){if(!a._behaviors)return [];return Array.clone(a._behaviors)};Sys.UI.Behavior.getBehaviorsByType=function(d,e){var a=d._behaviors,c=[];if(a)for(var b=0,f=a.length;b<f;b++)if(e.isInstanceOfType(a[b]))c[c.length]=a[b];return c};Sys.UI.VisibilityMode=function(){throw Error.notImplemented()};Sys.UI.VisibilityMode.prototype={hide:0,collapse:1};Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.Control=function(a){Sys.UI.Control.initializeBase(this);this._element=a;a.control=this};Sys.UI.Control.prototype={_parent:null,_visibilityMode:Sys.UI.VisibilityMode.hide,get_element:function(){return this._element},get_id:function(){if(!this._element)return "";return this._element.id},set_id:function(){throw Error.invalidOperation(Sys.Res.cantSetId)},get_parent:function(){if(this._parent)return this._parent;if(!this._element)return null;var a=this._element.parentNode;while(a){if(a.control)return a.control;a=a.parentNode}return null},set_parent:function(a){this._parent=a},get_visibilityMode:function(){return Sys.UI.DomElement.getVisibilityMode(this._element)},set_visibilityMode:function(a){Sys.UI.DomElement.setVisibilityMode(this._element,a)},get_visible:function(){return Sys.UI.DomElement.getVisible(this._element)},set_visible:function(a){Sys.UI.DomElement.setVisible(this._element,a)},addCssClass:function(a){Sys.UI.DomElement.addCssClass(this._element,a)},dispose:function(){Sys.UI.Control.callBaseMethod(this,"dispose");if(this._element){this._element.control=undefined;delete this._element}if(this._parent)delete this._parent},onBubbleEvent:function(){return false},raiseBubbleEvent:function(b,c){var a=this.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=a.get_parent()}},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(this._element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClass(this._element,a)}};Sys.UI.Control.registerClass("Sys.UI.Control",Sys.Component);
Type.registerNamespace('Sys');Sys.Res={
"argumentInteger":"Value must be an integer.","scriptLoadMultipleCallbacks":"The script \u0027{0}\u0027 contains multiple calls to Sys.Application.notifyScriptLoaded(). Only one is allowed.","invokeCalledTwice":"Cannot call invoke more than once.","webServiceFailed":"The server method \u0027{0}\u0027 failed with the following error: {1}","webServiceInvalidJsonWrapper":"The server method \u0027{0}\u0027 returned invalid data. The \u0027d\u0027 property is missing from the JSON wrapper.","argumentType":"Object cannot be converted to the required type.","argumentNull":"Value cannot be null.","controlCantSetId":"The id property can\u0027t be set on a control.","formatBadFormatSpecifier":"Format specifier was invalid.","webServiceFailedNoMsg":"The server method \u0027{0}\u0027 failed.","argumentDomElement":"Value must be a DOM element.","invalidExecutorType":"Could not create a valid Sys.Net.WebRequestExecutor from: {0}.","cannotCallBeforeResponse":"Cannot call {0} when responseAvailable is false.","actualValue":"Actual value was {0}.","enumInvalidValue":"\u0027{0}\u0027 is not a valid value for enum {1}.","scriptLoadFailed":"The script \u0027{0}\u0027 could not be loaded.","parameterCount":"Parameter count mismatch.","cannotDeserializeEmptyString":"Cannot deserialize empty string.","formatInvalidString":"Input string was not in a correct format.","invalidTimeout":"Value must be greater than or equal to zero.","cannotAbortBeforeStart":"Cannot abort when executor has not started.","argument":"Value does not fall within the expected range.","cannotDeserializeInvalidJson":"Cannot deserialize. The data does not correspond to valid JSON.","invalidHttpVerb":"httpVerb cannot be set to an empty or null string.","nullWebRequest":"Cannot call executeRequest with a null webRequest.","eventHandlerInvalid":"Handler was not added through the Sys.UI.DomEvent.addHandler method.","cannotSerializeNonFiniteNumbers":"Cannot serialize non finite numbers.","argumentUndefined":"Value cannot be undefined.","webServiceInvalidReturnType":"The server method \u0027{0}\u0027 returned an invalid type. Expected type: {1}","servicePathNotSet":"The path to the web service has not been set.","argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be converted to type \u0027{1}\u0027.","cannotCallOnceStarted":"Cannot call {0} once started.","badBaseUrl1":"Base URL does not contain ://.","badBaseUrl2":"Base URL does not contain another /.","badBaseUrl3":"Cannot find last / in base URL.","setExecutorAfterActive":"Cannot set executor after it has become active.","paramName":"Parameter name: {0}","cannotCallOutsideHandler":"Cannot call {0} outside of a completed event handler.","cannotSerializeObjectWithCycle":"Cannot serialize object with cyclic reference within child properties.","format":"One of the identified items was in an invalid format.","assertFailedCaller":"Assertion Failed: {0}\r\nat {1}","argumentOutOfRange":"Specified argument was out of the range of valid values.","webServiceTimedOut":"The server method \u0027{0}\u0027 timed out.","notImplemented":"The method or operation is not implemented.","assertFailed":"Assertion Failed: {0}","invalidOperation":"Operation is not valid due to the current state of the object.","breakIntoDebugger":"{0}\r\n\r\nBreak into debugger?"};
/* END MicrosoftAjax.js */
/* START Infragistics.Web.UI.Scripts.0_igControlMain.js */
Type.registerNamespace("Infragistics.Web.UI");

var $IG = Infragistics.Web.UI;

if (typeof ig_controls != "object")
	var ig_controls = new Object();


$IG.ControlMainProps = new function()
{
	/// <summary>For internal use only.</summary>
	this.Flags = [0, 0];
	this.Count = 1;
};



$IG.ControlMain = function(elem)
{
	///<summary>
	/// The client side base class for all Infragistics.Web.UI.Controls.
	///</summary>
	$IG.ControlMain.initializeBase(this, [elem]);
	this._elements = {};
	this._callbackManager = new $IG.ControlCallbackManager(this);
	this._callbackManager.setResponseComplete(this.__responseCompleteInternal, this);
}
$IG.ControlMain.prototype =
{
	
	initialize: function()
	{
		///<summary>
		/// For Internal Use Only.
		/// Called from the control's constructor, it sets up all information needed by the control.
		///</summary>	    
		this._setupCollections();
		//var now1  = new Date();

		this.__walkThrough(this._element, true);

		this._setupMarkerElements();
		$IG.ControlMain.callBaseMethod(this, 'initialize');
		this.__attachEvents();
		this.__attachOtherEvents();
		this._uniqueID = this._get_clientOnlyValue("uid");
		ig_controls[this._id] = this;

		var rm = null;
		try
		{
			rm = Sys.WebForms.PageRequestManager.getInstance();
		} catch (e) { }
		if (rm && !rm._ig_onsubmit)
		{
			rm._ig_onsubmit = rm._onsubmit;
			if (!rm._ig_onsubmit)
				rm._ig_onsubmit = 2;
			var form = rm._form;
			if (form && typeof theForm == 'object')
				form = theForm;
			if (form && !form._ig_submit)
			{
				form._ig_submit = form.submit;
				form.submit = function()
				{
					try
					{
						if (typeof ig_controls == 'object')
							for (var id in ig_controls)
							ig_controls[id]._onIgSubmit();
					} catch (e) { }
					if (this._ig_submit)
						this._ig_submit();
				}
			}
			rm._onsubmit = function()
			{
				if (typeof ig_controls == 'object')
					for (var id in ig_controls)
					ig_controls[id]._onIgSubmit();
				if (typeof this._ig_onsubmit == 'function') try
				{
					if (this._ig_onsubmit() === false)
						return false;
				} catch (id) { }
				return true;
			}
		}
	},

	dispose: function()
	{
		///<summary>
		/// For Internal Use Only.
		/// Disposes of all objects that belong to the control.
		///</summary>
		if (this._objectsManager)
			this._objectsManager.dispose();
		if (this._collectionsManager)
			this._collectionsManager.dispose();
		if (this._callbackManager)
			this._callbackManager.dispose();
		if (this.get_element())
			$clearHandlers(this.get_element());
		this.__clearOtherEvents();

		if (this._flags != null)
			this._flags.dispose();

		this._dataStore = null;
		for (var p in this._elements)
			delete this._elements[p];

		$IG.ControlMain.callBaseMethod(this, 'dispose');
	},
	

	
	__attachEvents: function()
	{
		this._addHandlers();
		var handlers = this._handlers;
		var i = handlers ? handlers.length : 0;
		if (i > 0)
		{
			var evnts = {};
			while (i-- > 0)
			{
				var evnt = handlers[i];
				evnts[evnt] = this._onEventHandler;
			}
			$addHandlers(this.get_element(), evnts, this);
		}
	},

	__clearOtherEvents: function()
	{
		var handlers = this._otherHandlers;
		var i = handlers ? handlers.length : 0;
		while (i-- > 0)
		{
			for (var evnt in handlers[i])
			{
				var element = handlers[i][evnt];
				if (element._events && element._events[evnt] && element._events[evnt].length > 0)
				{
					try
					{
						$removeHandler(element, evnt, this.__otherHandlerDelegate);
					}
					catch (exc) { }
				}
			}
		}
		this._otherHandlers = null;
	},

	__attachOtherEvents: function()
	{
		this._addOtherHandlers();
		
		this.__otherHandlerDelegate = Function.createDelegate(this, this._onOtherEventHandler);
		var handlers = this._otherHandlers;
		var i = handlers ? handlers.length : 0;
		while (i-- > 0)
			for (var evnt in handlers[i])
			$addHandler(handlers[i][evnt], evnt, this.__otherHandlerDelegate);
	},

	_handleEvent: function(elem, adrElement, adr, e)
	{
		var func = this["_on" + e.type.substring(0, 1).toUpperCase() + e.type.substring(1) + "Handler"];
		if (func)
			func.apply(this, [e.target, adr, e]);
	},

	__walkThrough: function(elem, topItem)
	{
		if ($util._initAttr(elem))
		
			if (!topItem)
			return;
		var adr = elem.getAttribute("adr");
		var mkr = elem.getAttribute("mkr");
		var obj = elem.getAttribute("obj");

		if (adr)
			this._createItem(elem, adr);
		else if (obj)
			this._createObject(elem, obj);
		else if (mkr)
		{
			
			var mkrAr = mkr.split(',');
			for (var i = 0; i < mkrAr.length; i++)
			{
				mkr = mkrAr[i];
				
				if (typeof (this._elements[mkr]) != "undefined")
				{
					var mkrElem = this._elements[mkr];
					if (typeof (mkrElem.length) == "undefined")
						mkrElem = this._elements[mkr] = [this._elements[mkr]];
					mkrElem[mkrElem.length] = elem;

				}
				else
					this._elements[mkr] = elem;
			}
		}

		// AK - moved down here. The element itself should be counted, but its children should not.
		// donp - added this check to ensure that we don't walk down into other controls using adr tags (as in templates)
		// control must define this attribute on an element that is not meant to be walked.
		var ctl = elem.getAttribute("nw");
		if (ctl)
			return;

		var children = elem.childNodes;
		for (var i = 0; i < children.length; i++)
		{
			var element = children[i];
			if (element.getAttribute)
				this.__walkThrough(element, false);
		}
	},

	__getViewStateEnabled: function()
	{
		var vse = this._get_clientOnlyValue("vse");
		if (vse == null)
			return true;
		else if (vse == 0)
			return false;
		else if (vse == 1)
			return true;
	},

	

	
	_onEventHandler: function(e)
	{
		var obj = $util.resolveMarkedElement(e.target, true);

		if (obj != null)
		{
			
			if (obj[2] == this)
				this._handleEvent(e.target, obj[0], obj[1], e);
		}
	},

	_onIgSubmit: function()
	{
		
		var oldT = this._ig_submit_time, newT = (new Date()).getTime();
		if (oldT && newT < oldT + 99)
			return;
		this._ig_submit_time = newT;
		this._onSubmitOtherHandler();
	},

	_onOtherEventHandler: function(e)
	{
		if (!e)
			return;
		if (e.type == 'submit')
		{
			this._onIgSubmit();
			return;
		}
		if (e.type != null)
		{
			var func = this["_on" + e.type.substring(0, 1).toUpperCase() + e.type.substring(1) + "OtherHandler"];
			if (func)
				func.apply(this, [e.target, e])
		}
	},

	_get_CS: function() { return $get(this._id + '_clientState'); },
	_onSubmitOtherHandler: function(e)
	{
		var clientState = this._get_CS();
		if (clientState)
		{
			var vse = this.__getViewStateEnabled();
			var state = [[this._clientStateManager.get_serverProps(vse), this._objectsManager.getServerObjects(vse), this._collectionsManager.getServerCollection(vse)]];

			state[1] = [this._clientStateManager.get_transactionList(),
	                     this._collectionsManager.get_allTransactionLists()];

			state[2] = this._saveAdditionalClientState();

			clientState.value = Sys.Serialization.JavaScriptSerializer.serialize(state);
		}

	},

	__bs: ['[[[[]],[],[]],[{},[]],"', '"]'],
	
	
	
	
	
	_setBackState: function(key, val)
	{
		var cs = this._ig_submit_time ? null : this._get_CS();
		if (!cs)
			return;
		key = key ? '' + key : '0';
		if (key.indexOf('|') >= 0)
			throw Error.invalidOperation('_setBackState: key can not contain | character');
		key = '|' + key + '|';
		val = '' + val;
		
		val = val.replace(/\|/g, '&tilda;').replace(/\"/g, '&qout;') + '|';
		var old = cs.value, len0 = this.__bs[0].length;
		var i = old.indexOf(key), empty = old.length < len0 + 3;
		if (empty || i < len0)
		{
			/* build new value or value which does not have key */
			/* new value is inserted as first item */
			cs.value = this.__bs[0] + key + val + (empty ? this.__bs[1] : old.substring(len0 + 1));
			return;
		}
		/* end of string (part behind existing key) */
		var str = old.substring(i += key.length);
		/* find end of value for existing key */
		var end = str.indexOf('|');
		if (end < 0)
			return;
		/* replace old value for existing key */
		cs.value = old.substring(0, i) + val + str.substring(end + 1);
	},
	/* get value for a key */
	/* key - identifier used in _setBackState. In case of null, the '0' is used. */
	/* returns: null or value as string */
	_getBackState: function(key)
	{
		var i = -1, cs = this._get_CS();
		if (cs)
			cs = cs.value;
		if (!cs || cs.indexOf(this.__bs[0]) != 0)
			return null;
		key = key ? '' + key : '0';
		/* remove dummy prefix which "protected from exception in JavaScriptSerializer.serialize" */
		cs = cs.replace(this.__bs[0], '').split('|');
		/* find key and value associated with it */
		/* string was saved in format "key|value|key|value|etc." */
		while ((i += 2) + 2 < cs.length)
			if (cs[i] == key)
		/* restore | and " characters */
			return cs[i + 1].replace(/&tilda;/g, '|').replace(/&qout;/g, '"');
		return null;
	},

	_onBeforeunloadOtherHandler: function(e)
	{
	},

	

	
	_setupMarkerElements: function()
	{

	},
	_addHandlers: function()
	{
		
	},

	_addOtherHandlers: function()
	{
		this._registerOtherHandlers([{ "submit": theForm, "beforeunload": window}]);
	},

	_createItem: function(element, adr)
	{

	},

	_createObject: function(element, obj)
	{

	},

	__responseCompleteInternal: function(callbackObject, responseObject, browserResponseObject)
	{
		var cssClasses = responseObject.context.shift();
		if (cssClasses)
		{
			var igStyles;
			if ($util.IsIE)
			{
				for (var i = 0; i < document.styleSheets.length; i++)
				{
					var ss = document.styleSheets[i];
					if (ss.id == "igStyles")
					{
						igStyles = ss;
						break;
					}
				}
				if (igStyles)
					igStyles.cssText += cssClasses;
			}
			else
			{
				igStyles = document.styleSheets[document.styleSheets.length - 1];
				var rules = cssClasses.split("}");
				for (var i = 0; i < rules.length - 1; i++)
				{
					igStyles.insertRule(rules[i] + "}", igStyles.cssRules.length);
				}
			}
		}
		this._responseComplete(callbackObject, responseObject, browserResponseObject);
	},

	_responseComplete: function(callbackObject, responseObject, browserResponseObject)
	{
	},

	_responseCompleteError: function(callbackObject, responseObject)
	{

	},

	_setupCollections: function()
	{
		this._itemCollection = this._collectionsManager.register_collection(0, $IG.ObjectCollection);
	},

	_saveAdditionalClientState: function()
	{
		return null;
	},

	


	

	_set_value: function(index, value)
	{
		this._clientStateManager.set_value(index, value);
	},

	_get_value: function(index, isBool)
	{
		return this._clientStateManager.get_value(index, isBool);
	},

	_get_clientOnlyValue: function(propName)
	{
		return this._clientStateManager.get_clientOnlyValue(propName);
	},

	_get_occasionalProperty: function(propName)
	{
		return this._clientStateManager.get_occasionalProperty(propName);
	},

	_set_occasionalProperty: function(propName, val)
	{
		this._clientStateManager.set_occasionalProperty(propName, val);
	},

	_cancelEvent: function(e)
	{
		e.stopPropagation();
		e.preventDefault();
	},

	_registerHandlers: function(handlers)
	{
		if (!this._handlers)
			this._handlers = [];

		this._handlers = this._handlers.concat(handlers);
	},

	_registerOtherHandlers: function(handlers)
	{
		if (!this._otherHandlers)
			this._otherHandlers = [];

		this._otherHandlers = this._otherHandlers.concat(handlers);
	},

	_add_item: function(adr, item)
	{
		this._items[adr] = item;
		this.__itemCount++;
	},

	_remove_item: function(adr)
	{
		if (adr in this._items)
		{
			delete this._items[adr];
			this.__itemCount--;
		}
	},

	_initClientEvents: function(vals)
	{
		this._initClientEventsForObject(this, vals);
	},
	_initClientEventsForObject: function(owner, vals)
	{
		owner._clientEvents = new Object();
		var i = vals ? vals.length : 0;
		while (i-- > 0)
		{
			var evt = vals[i].split(':');
			this.setClientEvent(owner, evt[0], evt[1], evt[2]);
		}
	},
	
	
	
	
	_postAction: function(args, evtName)
	{
		var act = args._props ? args._props[1] : args;
		if (act == 1)
		{
			
			// ??
			
			
			__doPostBack(this._id, evtName + (args._getPostArgs ? args._getPostArgs() : ''));
			this._posted = true;
		}
		if (act == 2)
		{
			
			// ??
			var cb = this._callbackManager.createCallbackObject();
			
			
			cb.serverContext.eventName = evtName;
			
			var i = args._props ? args._props.length : 0;
			while (--i > 1)
				eval('cb.serverContext.props' + (i - 2) + '="' + args._props[i] + '"');
			if (args._context)
			{
				for (var contextProp in args._context)
					cb.serverContext[contextProp] = args._context[contextProp];
			}
			
			if (this._filterAsyncPostBack)
				this._filterAsyncPostBack(cb.serverContext, evtName, args);
			this._callbackManager.execute(cb);
			this._posted = true;
		}
	},

	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	_raiseClientEventStart: function(param)
	{
		var params = param; 
		if (params.substring)
			params = arguments;
		return this._raiseCE_0(this, params[0], this.getClientEventPostBack(params[0]), params[1], params);
	},
	_raiseClientEvent: function(param)
	{
		var args = this._raiseClientEventStart(param.substring ? arguments : param);
		return args ? this._raiseClientEventEnd(args, args._name) : null;
	},
	_raiseClientEventEnd: function(args)
	{
		///<summary>Triggers possible post back to end client event processing.</summary>
		///<param name="args">Event arguments.</param>
		///<returns>First parameter</returns>
		if (args && args._props && !(args.get_cancel && args.get_cancel()))
			this._postAction(args, args._name);
		return args;
	},
	_raiseSenderClientEvent: function(sender, clientEvent, eventArgs)
	{
		///<summary>Raises and triggers post back for a notify event.</summary>
		///<param name="sender">Object that raises the event and contains the clientEvents array.</param>
		///<param name="clientEvent">Client event object.</param>
		///<param name="eventArgs">Event arguments. Generally an object derived from Infragistics.Web.UI.CancelEventArgs.</param>
		///<returns>Event arguments object, the same object that is passed as the third parameter.</returns>
		eventArgs = this._raiseSenderClientEventStart(sender, clientEvent, eventArgs);
		return this._raiseClientEventEnd(eventArgs);
	},
	_raiseSenderClientEventStart: function(sender, clientEvent, eventArgs)
	{
		///<summary>Raises a cancelable before event but does not trigger post back.</summary>
		///<param name="sender">Object that raises the event and contains the clientEvents array.</param>
		///<param name="clientEvent">Client event object.</param>
		///<param name="eventArgs">Event arguments. Generally an object derived from Infragistics.Web.UI.CancelEventArgs.</param>
		///<returns>Event arguments object, the same object that is passed as the third parameter.</returns>
		return this._raiseCE_0(sender, clientEvent.name, clientEvent.postBack, eventArgs);
	},
	_raiseCE_0: function(me, evtName, post, args, params)
	{
		var fnc = me.get_events().getHandler(evtName);
		var str = args && args.substring;
		
		if (!fnc && post == null)
			return str ? null : args;
		if (str)
			eval('try{args = new Infragistics.Web.UI.' + args + 'EventArgs();}catch(ex){args = null;}');
		var i = 1, len = params ? params.length : 0;
		if (!args)
			args = (len < 3) ? new Sys.EventArgs() : new $IG.EventArgs();
		
		if (args._props)
			while (++i < len) if (params[i] != null)
			args._props[i - 2] = params[i];
		
		if (post)
		{
			if (!args._props)
				args._props = new Array();
			if (!args._props[1] || args._props[1] == 0)
				args._props[1] = post;
		}
		
		if (fnc)
			fnc(this, args);
		if (args._props)
			delete args._props[0];
		args._name = evtName;
		return args;
	},

	_getFlags: function()
	{
		if (this._flags == null)
		{
			this.__flagHelper = new $IG.FlagsHelper();
			var key = [$IG.ObjectBaseProps.Count + 0, this.__getDefaultFlags()]
			this._flags = new $IG.FlagsObject(this._get_value(key), this);
		}
		return this._flags;
	},

	_updateFlags: function(flags)
	{
		var key = [$IG.ObjectBaseProps.Count + 0, this.__getDefaultFlags()]
		this._set_value(key, flags)
	},

	_ensureFlags: function()
	{
		this._ensureFlag($IG.ClientUIFlags.Visible, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Enabled, $IG.DefaultableBoolean.True);
	},

	__getDefaultFlags: function()
	{
		if (this.__defaultFlags == null)
		{
			this._ensureFlags();
			this.__defaultFlags = this.__flagHelper.calculateFlags();
		}
		return this.__defaultFlags;
	},

	_ensureFlag: function(flag, val)
	{
		this.__flagHelper.updateFlag(flag, val);
	},

	

	

	_get_clientStateManager: function() { return this._clientStateManager; },

	_get_item: function(adr)
	{
		return this._itemCollection._getObjectByAdr(adr);
	},

	

	
	set_id: function(id)
	{
		///<summary>Sets id of control.</summary>
		///<param name="id">Id of control.</param>
		this._id = id;
	},
	get_name: function(name)
	{
		///<summary>
		/// Return's the name of the control. 
		///</summary>
		return this.get_element().name;
	},
	set_name: function(value)
	{
		///<summary>Sets name of html element.</summary>
		///<param name="value">Name for element.</param>
		this.get_element().name = value;
	},
	get_uniqueID: function()
	{
		///<summary>
		/// Return's the Unique ID of the control. 
		///</summary>
		return this._uniqueID
	},

	
	
	addClientEventHandler: function(owner, evtName, fnc)
	{
		///<summary>
		/// Adds a function handler to process a ClientEvent.
		///</summary>
		$util.addClientEvent(owner, evtName, fnc);
	},
	removeClientEventHandler: function(owner, evtName, fnc)
	{
		///<summary>
		/// Removes a function handler of a ClientEvent.
		///</summary>
		$util.removeClientEvent(owner, evtName, fnc);
	},

	getClientEventPostBack: function(name)
	{
		/// <summary>For internal use only.</summary>
		/// <param name="name" type="String" mayBeNull="false">Name of ClienEvent.</param>
		/// <returns type="Number">Postback action.</returns>
		return this.getClientEventPostBackForObject(this, name);
	},
	getClientEventPostBackForObject: function(owner, name)
	{
		/// <summary>For internal use only.</summary>
		/// <param name="owner" type="Object">Reference to owner control.</param>
		/// <param name="name" type="String" mayBeNull="false">Name of ClienEvent.</param>
		/// <returns type="Number">Postback action.</returns>
		var ce = owner._clientEvents[name];
		return ce ? ce.postBack : null;
	},
	setClientEvent: function(owner, evtName, fnc, postBack)
	{
		/// <summary>For internal use only.</summary>
		/// <param name="owner" type="Object">Reference to owner control.</param>
		/// <param name="evtName" type="String" mayBeNull="false">Name of ClientEvent.</param>
		/// <param name="fnc" type="Object">Function to call.</param>
		/// <param name="postBack" type="Number">Postback action.</param>
		
		if (postBack)
			postBack = parseInt(postBack, 10);
		else
			postBack = 0;
		owner._clientEvents[evtName] = { name: evtName, fnc: fnc, postBack: postBack };
		if (evtName && fnc)
			this.addClientEventHandler(owner, evtName, fnc);
	},

	get_props: function()
	{
		///<summary>
		/// For Internal Use Only.
		/// Contains ClientState information for the control.
		///</summary>
		return this._props;
	},
	set_props: function(value)
	{
		/// <summary>Internal use only.</summary>
		/// <param name="value">Properties for subobjects.</param>
		this._dataStore = value;
		this._props = value[0];
		this._clientStateManager = new $IG.ObjectClientStateManager(this._props);
		this._objectsManager = new $IG.ObjectsManager(this, value[1]);
		this._collectionsManager = new $IG.CollectionsManager(this, value[2]);
		this._initClientEvents(value[3]);
	}
	
}
$IG.ControlMain.registerClass('Infragistics.Web.UI.ControlMain', Sys.UI.Control);



$IG.NavControlProps = new function()
{
	this.Count = $IG.ControlMainProps.Count + 0;
};




$IG.NavControl = function(elem)
{
	/// <summary>
	/// Represents a control class for hierarchical data controls. 
	/// </summary>
	$IG.NavControl.initializeBase(this, [elem]);
}

$IG.NavControl.prototype =
{
	initialize: function()
	{
		$IG.NavControl.callBaseMethod(this, 'initialize');
	},

	_setupCollections: function()
	{
		this._itemCollection = this._collectionsManager.register_collection(0, $IG.NavItemCollection);
		this._collectionsManager.registerUIBehaviors(this._itemCollection);
	},
	
    /// <summary>
    /// Translates an address string specifier into the resolved NavItem object that lives at the specified address.
    /// </summary>
    /// <param name="address">The full address specifier for an item.</param>
    /// <remarks>
    /// For Example: '0.3.2' specifies the item at index 2 whose parent is at index 3 of the collection
    /// who's parent is index 0 of the top-level collection.
    /// </remarks>
    /// <returns>The NavItem object that corresponds to the passed in address specifier.</returns>
	resolveItem: function(address)
	{
	    return this._itemCollection._getObjectByAdr(address);
	}
	
}

$IG.NavControl.registerClass('Infragistics.Web.UI.NavControl', $IG.ControlMain);



/* END Infragistics.Web.UI.Scripts.0_igControlMain.js */
/* START Infragistics.Web.UI.Scripts.2_igCollections.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.ObjectCollection = function(control, clientStateManager, index, manager)
{
    ///<summary>
    /// The base collection class for Infragistics.Web.UI.Controls.
    ///</summary> 
    this._control = control; 
    this._csm = clientStateManager;
    this._index = index;
    this._manager = manager;
    this._items = [];
    this._collectionType = $IG.ObjectCollection;
}

$IG.ObjectCollection.prototype =
{
	_addObject: function(objectType, element, adr)
	{
		var object = new objectType(adr, element, null, this._control, this._csm);

		this._items.push(object);
		this._manager.addObject(this._index, adr, object);
		return object;
	},
	_addExistingObject: function(object, adr, props)
	{
		this._items.push(object);
		this._manager.addObject(this._index, adr, object);
		object._csm = this._csm;
		object._address = adr;
		var currentClientState = this._csm.get_clientState();
		currentClientState[adr] = props;
		this._csm._items = currentClientState;
		return object;
	},
	_createObject: function(adr, element)
	{
	},

	_getObjectByAdr: function(adr)
	{
		return this._manager.getObject(this._index, adr);
	},

	_getObjectByIndex: function(index)
	{
		return this._items[index];
	},

	_getUIBehaviorsObj: function()
	{
		return this._manager.getUIBehaviorsObj(this._index);
	},

	get_length: function()
	{
		///<summary>
		/// The amount of objects in the collection.
		///</summary> 
		return this._manager.getItemCount(this._index);
	},

	get_indexOf: function(item)
	{
		///<summary>
		/// Returns the index of the specifed object.
		/// If the object doesn't exist in the collection, -1 will be returned.
		///</summary>         
		for (var i = 0; i < this._items.length; i++)
			if (this._items[i] == item)
			return i;
		return -1;
	},

	dispose: function()
	{
		///<summary>
		/// Disposes of all objects that belong to the collection.
		///</summary>

		this._control = null;
		this._manager = null;
		this._items = null;
		this._csm = null;
	}
};

$IG.ObjectCollection.registerClass('Infragistics.Web.UI.ObjectCollection');



$IG.NavItemCollection = function(control, clientStateManager, index, manager)
{
    ///<summary>
    /// A collection of Navigation Items.
    ///</summary> 
    $IG.NavItemCollection.initializeBase(this, [control, clientStateManager, index, manager]);
}

$IG.NavItemCollection.prototype = 
{
    _createNewCollection:function()
    {
        return new $IG.NavItemCollection(this._control, this._csm, this._index, this._manager);
    },
    
    _addObject:function(navItemType, element, adr)
    {
       var object = null;
       var newCollection = this._createNewCollection();
       var indexes = adr.split('.');
       if(indexes.length == 1)
       {
          var val = parseInt(adr);
          if(val.toString() != "NaN")
                 object = this._items[val] = new navItemType(adr, element,  null, this._control, this._csm, newCollection, null);
       }
       else
       {
           var parent = this._items[indexes[0]];
           for(var i = 1; i < indexes.length - 1; i++)
           {
               if(parent != null)
                   parent = parent.getItems()._getObjectByIndex(indexes[i]);
           }
             
           if(parent != null)
               object = parent.getItems()._items[indexes[indexes.length-1]] = new navItemType(adr, element, null, this._control, this._csm, newCollection, parent);
       }
       this._manager.addObject(this._index, adr, object);
       return object;
    }
};

$IG.NavItemCollection.registerClass('Infragistics.Web.UI.NavItemCollection', $IG.ObjectCollection);




/* END Infragistics.Web.UI.Scripts.2_igCollections.js */
/* START Infragistics.Web.UI.Scripts.3_igUIBehaviors.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.Behavior = function(element)
{
	/// <summary>Base class for behavior.</summary>
	/// <param name="element" type="Object" mayBeNull="false">Reference to html element.</param>
	$IG.Behavior.initializeBase(this, [element]);
	this._props = [];
}

$IG.Behavior.prototype =
{
	initialize: function()
	{
		/// <summary>Initializes instance of Behavior.</summary>
		$IG.Behavior.callBaseMethod(this, 'initialize');
		if (this._addHandlers)
			this._addHandlers();
	},

	get_owner: function()
	{
		/// <summary>Gets owner object of this behavior.</summary>
		/// <returns type="Object" mayBeNull="true">Reference to owner.</returns>
		return this._owner;
	},
	set_owner: function(value)
	{
		/// <summary>Sets owner object for this behavior. Internal use only.</summary>
		/// <param name="value" type="Object">Reference to owner.</param>
		this._owner = value;
	},

	dispose: function()
	{
		/// <summary>Disposes object and event handlers.</summary>
		ig_ui_timer(this, true);
		var elem = this.get_element();
		if (elem)
			$clearHandlers(elem);
		$IG.Behavior.callBaseMethod(this, 'dispose');
	},

	
	get_control: function()
	{
		/// <summary>Gets owner control of this behavior.</summary>
		/// <returns type="Object" mayBeNull="true">Reference to control.</returns>
		return this._control;
	},
	set_control: function(value)
	{
		/// <summary>Sets owner control for this behavior. Internal use only.</summary>
		/// <param name="value" type="Object">Reference to control.</param>
		this._control = value;
	},

	
	_prefix: '',

	
	getTargetElement: function()
	{
		/// <summary>Gets target html element of this behavior.</summary>
		/// <returns type="Object" mayBeNull="true">Reference to html element.</returns>
		var e = this._targetElem;
		if (!e)
			e = this._targetElem = this.get_element();
		return e;
	},
	get_targetHtmlElementID: function()
	{
		/// <summary>Gets id of target html element of this behavior.</summary>
		/// <returns type="String" mayBeNull="true">Id of html element.</returns>
		return this._elemID;
	},
	set_targetHtmlElementID: function(val)
	{
		/// <summary>Sets id of target html element.</summary>
		/// <param name="val" type="String">Id of element.</param>
		if (this._elemID)
			return;
		this._elemID = val;
		this._targetElem = document.getElementById(val);
	},
	get_stateID: function()
	{
		/// <summary>Gets id of html element used to persist state to server. Internal use only.</summary>
		/// <returns type="String" mayBeNull="true">Id of html element.</returns>
		return this._stateID;
	},
	set_stateID: function(val)
	{
		/// <summary>Sets id of html element used to persist state to server. Internal use only.</summary>
		/// <param name="val" type="String">Id of element.</param>
		if (!this._stateID)
			this._stateID = val;
	},
	get_stateValue: function()
	{
		/// <summary>Gets value of persistant state. Internal use only.</summary>
		/// <returns type="String" mayBeNull="true">Value which can be passed to server.</returns>
		return this._stateValue;
	},
	set_stateValue: function(val, save)
	{
		/// <summary>Sets value of persistant state. Internal use only.</summary>
		/// <param name="val" type="String">Value which can be passed to server.</param>
		/// <param name="save" type="Boolean">Request to pass value to server.</param>
		this._stateValue = val;
		if (!this._stateID || !save)
			return;
		var e = document.getElementById(this._stateID);
		if (e)
			e.value = val;
	},
	_get_: function(i)
	{
		return this._props[i];
	},
	_set_: function(i, val, evtName)
	{
		this._props[i] = val;
		if (evtName)
			$util.addClientEvent(this, evtName, val);
	},
	
	
	
	
	
	
	
	_raiseClientEvent: function()
	{
		if (this._control)
			return this._control._raiseClientEvent(arguments);
		var args = arguments[1];
		var fnc = this.get_events().getHandler(arguments[0]); 
		var str = args && args.substring;
		if (!fnc)
			return str ? null : args;
		if (str)
			eval('try{args = new Infragistics.Web.UI.' + args + 'EventArgs();}catch(ex){args = null;}');
		var i = 1, len = arguments.length;
		if (!args)
			args = (len < 3) ? new Sys.EventArgs() : new $IG.EventArgs();
		
		if (args._props) while (++i < len)
			args._props[i - 2] = arguments[i];
		
		fnc(this, args);
		if (args._props)
			delete args._props[0];
		return args;
	}
}
$IG.Behavior.registerClass('Infragistics.Web.UI.Behavior', Sys.UI.Behavior);



$IG.UIBehaviorsObject = function(control, collection)
{
	///<summary>
	/// This class is for Internal Use Only.
	/// A behavior that controls Selection, Hovering, Dragging, and Dropping, for a specified ObjectColection.
	///</summary> 
	this._control = control;
	this._collection = collection;
	this._selectedItems = [];
	this._handlers = { "mousedown": this.handleEvent, "mouseover": this.handleEvent, "mouseout": this.handleEvent };
	var flags = control._getFlags();
	var draggable = flags.getDraggable();
	var droppable = flags.getDroppable();
	if ((draggable || droppable) && $IG.DragDropBehavior)
	{
		var ddb = new $IG.DragDropBehavior();
		var events = ddb.get_events();
		if (draggable)
		{
			ddb.addSourceObject(control);
			events.addDragStartHandler(Function.createDelegate(this, this.dragStart));
		}
		if (droppable)
		{
			ddb.addTargetObject(control, true);
			events.addDropHandler(Function.createDelegate(this, this.drop));
			events.addDragCancelHandler(Function.createDelegate(this, this.dragCancel));
			events.addDragMoveHandler(Function.createDelegate(this, this.dragMove));
			events.addDragEnterHandler(Function.createDelegate(this, this.dragEnter));
			events.addDragLeaveHandler(Function.createDelegate(this, this.dragLeave));
		}
		events.addDragEndHandler(Function.createDelegate(this, this.dragEnd));
		this._ddb = ddb;
	}

	$addHandlers(control.get_element(), this._handlers, this);
}

$IG.UIBehaviorsObject.prototype =
{
	handleEvent: function(e)
	{
		///<summary>
		/// Handles all targeted browser events that are being listened to on the control's root element.
		/// It then determines if it should cause a behavior to occur. It it concludes that a behavior should occur, then
		/// it raises the correct functionality. 
		///</summary> 
		var item = this.getItemFromElem(e.target);
		if (item)
		{
			
			if (item._owner != this._control)
				return;
			else if (e.type == "mouseover")
				this.hover(item, e);
			else if (e.type == "mouseout")
				this.unhover(item, e);
			else if (e.type == "mousedown")
				this.select(item, e);
		}
	},

	getItemFromElem: function(elem)
	{
		///<summary>
		/// If there is an item asociated with the element, or a parent of the element, the item is returned.
		/// Otherwise null is returned.
		///</summary>
		var item = null;
		var adr = null;
		while (elem)
		{
			if (elem.getAttribute)
				adr = elem.getAttribute("adr");
			if (adr != null)
				break;
			elem = elem.parentNode;
		}
		if (elem != null)
		{
			item = elem._object;
			if (item == null)
			{
				item = this._collection._createObject(adr, elem);
				if (item == null)
					item = elem._object;
			}
		}
		return item;
	},

	select: function(item, e)
	{
		///<summary>
		/// If an item is selectable and enabled, it adds the item to it's internal selected items list, and
		/// calls the _selectItem method off of the associated control.
		///</summary>
		var itemFlags = item._getFlags();
		var selectable = itemFlags.getSelectable(this._control);
		var enabled = itemFlags.getEnabled(this._control);

		if (selectable && enabled)
		{
			if (this._control._shouldSelect != null && e)
				if (!this._control._shouldSelect(item, e))
					return;
			var old = this._selectedItems[0];
			if (old != item)
			{
				if (old)
				{
					old._getFlags().setSelected(false);
					this._control._selectItem(old, false);
				}
				this._selectedItems[0] = item;
				itemFlags.setSelected(true);
				this._control._selectItem(item, true);
			}
		}
		if (e)
		{
			this._mouseDown = true;
			$util.cancelEvent(e);
		}
	},

	unSelectAll: function()
	{
		///<summary>
		/// Removes the item from the internal selected items list, and 
		/// calls the _selectItem method off of the associated control, with a parameter of false
		///</summary>
		var items = this._selectedItems;
		var i = items ? items.length : 0;
		while (i-- > 0)
		{
			var item = items[i];
			item._getFlags().setSelected(false);
			this._control._selectItem(item, false);
		}
		this._selectedItems = [];
	},

	getSelectedItems: function()
	{
		///<summary>
		/// Returns an array of all selected items.
		///</summary>
		return this._selectedItems;
	},

	hover: function(item, e)
	{
		///<summary>
		/// Calls the associated control's _shouldHover method first. 
		/// If it returns true, or the control doesn't implement _shouldHover, then
		/// the _hoverItem method is called on the control with a parameter of true.
		///</summary>
		if (this._control._shouldHover != null && e)
			if (!this._control._shouldHover(item, e))
				return;
		this._hover(item, true);
	},

	unhover: function(item, e)
	{
		///<summary>
		/// Calls the associated control's _shouldHover method first. 
		/// If it returns true, or the control doesn't implement _shouldHover, then
		/// the _hoverItem method is called on the control with a parameter of false.
		///</summary>
		if (this._control._shouldHover != null && e)
			if (!this._control._shouldHover(item, e))
				return;
		this._hover(item, false);
	},

	setDragDropNotification: function(notify)
	{
		///<summary>
		/// Sets whether or not the control should be notified for each element that is dragged
		/// over in the control, or if it should just be notified the first time the mouse enters the control.
		///</summary>
		this._controlDDNotification = notify;
	},

	dragStart: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragStart event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragStart method. 
		///</summary> 
		if (this._control.__dragStart)
		{
			var manager = evntArgs.get_manager();
			var elem = manager.get_sourceElement();
			var item = this.getItemFromElem(elem);
			if (item != null)
			{
				manager.set_dataObject(item);
				this._control.__dragStart(this, item, behavior, evntArgs);
			}
			else
				evntArgs.set_cancel(true);
		}
	},

	dragEnter: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragEnter event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragEnter method. 
		///</summary> 
		this._fireDragDropEvnt(this._control.__dragEnter, behavior, evntArgs, true);
	},

	dragLeave: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragLeave event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragLeave method. 
		///</summary> 
		this._fireDragDropEvnt(this._control.__dragLeave, behavior, evntArgs, false);
	},

	dragMove: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragMove event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragMove method. 
		///</summary> 
		this._fireDragDropEvnt(this._control.__dragMove, behavior, evntArgs, false);
	},

	dragCancel: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragCancel event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragCancel method. 
		///</summary> 
		if (this._control.__dragCancel)
			this._control.__dragCancel(this, behavior, evntArgs);
	},

	dragEnd: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the DragEnd event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __dragEnd method. 
		///</summary>
		this._fireDragDropEvnt(this._control.__dragEnd, behavior, evntArgs, false);
	},

	drop: function(behavior, evntArgs)
	{
		///<summary>
		/// Handles the Drop event off the DragDropBehavior and passes the 
		/// information to the control, if the control implements the __drop method. 
		///</summary>
		this._fireDragDropEvnt(this._control.__drop, behavior, evntArgs, false);
	},

	_fireDragDropEvnt: function(method, behavior, evntArgs, cancelable)
	{
		if (method)
		{
			method = Function.createDelegate(this._control, method);
			var item = this.getItemFromElem(evntArgs.get_manager().get_targetElement());
			if (item != null || (item == null && this._controlDDNotification))
				method(this, item, behavior, evntArgs);
			else if (cancelable)
				evntArgs.set_cancel(true);
		}
	},

	_hover: function(item, val)
	{
		var itemFlags = item._getFlags();
		var hoverable = itemFlags.getHoverable(this._control);
		var enabled = itemFlags.getEnabled(this._control);

		if (hoverable == $IG.DefaultableBoolean.True && enabled == $IG.DefaultableBoolean.True)
		{
			itemFlags.setHovered(val);
			this._control._hoverItem(item, val);
		}
	},

	dispose: function()
	{
		///<summary>
		/// Disposes of any objects created by the behavior.
		///</summary>
		if (this._ddb)
			this._ddb.dispose();
		$clearHandlers(this._control.get_element());
	}


};
$IG.UIBehaviorsObject.registerClass("Infragistics.Web.UI.UIBehaviorsObject");





$IG.NotifySizeChangedBehavior = function(element, handler, interval)
{
	this._handlers = [];
	this._element = element;
	if (interval != null)
		this._interval = interval;
	else
		this._interval = 100;

	if (element != null)
	{
		this._prevOffsetHeight = this._element.offsetHeight;
		this._prevOffsetWidth = this._element.offsetWidth;
	}

	if (handler != null)
		this.addResizeHandler(handler);
}

$IG.NotifySizeChangedBehavior.prototype =
{
	addResizeHandler: function(handler)
	{
		if (handler != null)
		{
			if ($util.IsIE)
			{
				this._onResizeHandler = Function.createDelegate(this, this._onTick);
				$addHandler(this._element, "resize", this._onResizeHandler);
			}
			else if (this._intervalId == null)
				this._intervalId = window.setInterval(Function.createDelegate(this, this._onTick), this._interval);
			this._handlers.push(handler);
		}
	},

	removeResizeHandler: function(handler)
	{
		Array.remove(this._handlers, handler);
		if (this._handlers.length == 0)
		{
			window.clearInterval(this._intervalId);
			this._intervalId = null;
		}
	},

	dispose: function()
	{
		if (this._onResizeHandler)
		{
			$removeHandler(this._element, "resize", this._onResizeHandler);
			this._onResizeHandler = null;
		}
		else if (this._intervalId != null)
			window.clearInterval(this._intervalId);

		this._handlers = null;
		this._element = null;
	},

	_onTick: function()
	{		
		var elem = this._element, handlers = this._handlers;
		var i = handlers ? handlers.length : 0;
		if (!elem || i < 1)
			return;
		var height = elem.offsetHeight, width = elem.offsetWidth;
		if ((!height && !width) || (height == 0 && width == 0) || (height == this._prevOffsetHeight && width == this._prevOffsetWidth))
			return;
		var e = { oldOffsetHeight: this._prevOffsetHeight, oldOffsetWidth: this._prevOffsetWidth,
			offsetHeight: height, offsetWidth: width,
			clientHeight: elem.clientHeight, clientWidth: elem.clientWidth, element: elem
		};
		while (i-- > 0)
			handlers[i](e);
		this._prevOffsetHeight = elem.offsetHeight;
		this._prevOffsetWidth = elem.offsetWidth;
	}
};
$IG.NotifySizeChangedBehavior.registerClass("Infragistics.Web.UI.NotifySizeChangedBehavior");



/* END Infragistics.Web.UI.Scripts.3_igUIBehaviors.js */
/* START Infragistics.Web.UI.Scripts.4_igEnums.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.Orientation = function () 
{
    ///<summary>
    /// Specifies the type of Orientation that should be applied.
    ///</summary>
}
$IG.Orientation.prototype = 
{
   Horizontal:0, 
   Vertical:1
};
$IG.Orientation.registerEnum("Infragistics.Web.UI.Orientation");



$IG.PostBackAction = function()
{
    /// <summary>
    /// The type of action that should occur when listening to a client event.
    /// </summary>
}
$IG.PostBackAction.prototype =
{
	None:0,
	FullPostBack:1,
	AsyncPostBack:2
};
$IG.PostBackAction.registerEnum("Infragistics.Web.UI.PostBackAction");



$IG.DefaultableBoolean = function()
{
    ///<summary>
    /// Defaultable boolean values allow the user to either directly set the value to control a behavior or inherit from a parent object that 
    /// will be set.
    ///</summary>
}
$IG.DefaultableBoolean.prototype =
{
	NotSet:0,
	True:1,
	False:2
};
$IG.DefaultableBoolean.registerEnum("Infragistics.Web.UI.DefaultableBoolean");



$IG.ClientUIFlags = function()
{
    /// <summary>
    /// Indicates which state flags are set for rendering client state objects.
    /// </summary>
}
$IG.ClientUIFlags.prototype =
{    
	Visible : 0x2,
    Enabled : 0x8,
    Selectable : 0x20,
    Selected : 0x40,
    Hoverable : 0x100,
    Hovered : 0x200, 
    Editable : 0x800,
    Focusable : 0x2000,
    Focused : 0x4000,
    Draggable : 0x10000,
    Droppable : 0x40000,
    KBNavigable : 0x100000
	
};
$IG.ClientUIFlags.registerEnum("Infragistics.Web.UI.ClientUIFlags");



$IG.LayoutControlProps = new function()
{
    this.Count = $IG.ControlMainProps.Count + 0;
};




/* END Infragistics.Web.UI.Scripts.4_igEnums.js */
/* START Infragistics.Web.UI.Scripts.5_igObjects.js */
Type.registerNamespace("Infragistics.Web.UI");



$IG.ObjectBaseProps = new function()
{
	this.Count = 0;
};



$IG.ObjectBase = function(adr, element, props, owner, csm)
{
	/// <summary>
	/// The base object for all Infragistics.Web.UI objects.
	/// </summary>
	this._props = props;
	this._element = element;
	this._owner = owner;
	this._address = adr;
	if (element)
		element._object = this;
	this._csm = csm;
	$IG.ObjectBase.initializeBase(this);
}

$IG.ObjectBase.prototype =
{
	get_element: function()
	{
		/// <summary>
		/// Returns the element assoicated with the item.. 
		/// </summary>
		return this._element;
	},
	set_element: function(val)
	{
		/// <summary>Sets nhtml element associated with object.</summary>
		/// <param name="val" type="Object">Reference to html element.</param>
		this._element = val;
	},

	_get_owner: function() { return this._owner; },
	_set_owner: function(value) { this._owner = value; },

	_get_address: function() { return this._address; },
	_set_address: function(val) { this._address = val; },

	_createObjects: function(objectManager)
	{
	},

	_createCollections: function(collectionsManager)
	{
	},

	_set_value: function(index, value)
	{
		if (this._csm)
			this._csm.set_value(index, value, this._address);
	},

	_get_value: function(index, isBool)
	{
		return this._csm ? this._csm.get_value(index, isBool, this._address) : null;
	},

	_get_clientOnlyValue: function(propName)
	{
		return this._csm ? this._csm.get_clientOnlyValue(propName, this._address) : null;
	},

	_get_occasionalProperty: function(propName)
	{
		return this._csm ? this._csm.get_occasionalProperty(propName, this._address) : null;
	},

	_set_occasionalProperty: function(propName, val)
	{
		return this._csm ? this._csm.set_occasionalProperty(propName, val, this._address) : null;
	},


	_saveAdditionalClientState: function()
	{

	},

	dispose: function()
	{
		/// <summary>
		/// Prepares the object for deletion.
		/// </summary>
		if (this._element)
			this._element._object = null;
		this._element = null;
		this._owner = null;
		if (this._props)
		{
			if (this._props.objectsManager)
				this._props.objectsManager.dispose();

			if (this._props.collectionsManager)
				this._props.collectionsManager.dispose();

			this._props = null;
		}
		this._csm = null;
		$IG.ObjectBase.callBaseMethod(this, "dispose");
	}
}
$IG.ObjectBase.registerClass('Infragistics.Web.UI.ObjectBase', Sys.Component);



$IG.ControlObjectProps = new function()
{
	/// <summary>For internal use only.</summary>
	this.Flags = [$IG.ObjectBaseProps.Count + 0, 0];
	this.Count = $IG.ObjectBaseProps.Count + 1;
};



$IG.UIObject = function(adr, element, props, owner, csm)
{
	/// <summary>
	/// An object that has UIFlags associated with it. 
	/// </summary>
	this._flags = null;
	$IG.UIObject.initializeBase(this, [adr, element, props, owner, csm]);
}

$IG.UIObject.prototype =
{
	_getFlags: function()
	{
		if (this._flags == null)
		{
			this.__flagHelper = new $IG.FlagsHelper();
			var key = [$IG.ObjectBaseProps.Count + 0, this.__getDefaultFlags()]
			this._flags = new $IG.FlagsObject(this._get_value(key), this);
		}
		return this._flags;
	},

	__getDefaultFlags: function()
	{
		if (this.__defaultFlags == null)
		{
			this._ensureFlags();
			this.__defaultFlags = this.__flagHelper.calculateFlags();
		}
		return this.__defaultFlags;
	},

	_updateFlags: function(flags)
	{
		var key = [$IG.ObjectBaseProps.Count + 0, this.__getDefaultFlags()]
		this._set_value(key, flags)
	},

	_ensureFlags: function()
	{

	},

	_ensureFlag: function(flag, val)
	{
		this.__flagHelper.updateFlag(flag, val);
	},

	dispose: function()
	{
		if (this._flags != null)
			this._flags.dispose();
		$IG.UIObject.callBaseMethod(this, "dispose");
	}

}
$IG.UIObject.registerClass('Infragistics.Web.UI.UIObject', $IG.ObjectBase);



$IG.ListItemProps = new function()
{
	/// <summary>For internal use only.</summary>
	this.KeyTag = [$IG.ControlObjectProps.Count + 0, ""];
	this.NavigateUrl = [$IG.ControlObjectProps.Count + 1, ""];
	this.Target = [$IG.ControlObjectProps.Count + 2, ""];
	this.Tooltip = [$IG.ControlObjectProps.Count + 3, ""];
	this.Count = $IG.ControlObjectProps.Count + 4;

};



$IG.ListItem = function(adr, element, props, owner, csm, collection, parent)
{
	/// <summary>
	/// Represents an item for flat data controls. 
	/// </summary>
	$IG.ListItem.initializeBase(this, [adr, element, props, owner, csm]);
	this._parent = parent;
	this._itemCollection = collection
}

$IG.ListItem.prototype =
{
	_ensureFlags: function()
	{
		$IG.ListItem.callBaseMethod(this, "_ensureFlag");
		this._ensureFlag($IG.ClientUIFlags.Hoverable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Selectable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Draggable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Droppable, $IG.DefaultableBoolean.True);
	},
	set_key: function(value)
	{
		/// <summary>Sets key for item.</summary>
		/// <param name="value" type="String">Key for item.</param>
		this._set_value($IG.ListItemProps.KeyTag, value);
	},
	get_key: function()
	{
		/// <summary>
		/// Returns/sets a string value that can be used to store extra information on the item.
		/// </summary>
		return this._get_value($IG.ListItemProps.KeyTag);
	},

	set_navigateUrl: function(value)
	{
		/// <summary>Sets url for item.</summary>
		/// <param name="value" type="String">Url for item.</param>
		this._set_value($IG.ListItemProps.NavigateUrl, value);
	},
	get_navigateUrl: function()
	{
		/// <summary>
		/// Returns/sets a url that will be navigated to when an item is clicked.
		/// </summary>
		return this._get_value($IG.ListItemProps.NavigateUrl);
	},

	set_target: function(value)
	{
		/// <summary>Sets NavigateUrl for item.</summary>
		/// <param name="value" type="Object">Url for item.</param>
		this._set_value($IG.ListItemProps.Target, value);
	},
	get_target: function()
	{
		/// <summary>
		/// Returns/sets where the NavigateUrl will be navigated to when an item is clicked.
		/// </summary>         
		return this._get_value($IG.ListItemProps.Target);
	},

	set_tooltip: function(value)
	{
		/// <summary>Sets tooltip for item.</summary>
		/// <param name="value" type="String">Tooltip for item.</param>
		this._set_value($IG.ListItemProps.Tooltip, value);
	},
	get_tooltip: function()
	{
		/// <summary>
		/// Returns/sets the text that will be displayed when the mouse is over the item. 
		/// </summary>         
		return this._get_value($IG.ListItemProps.Tooltip);
	},

	dispose: function()
	{
		$IG.ListItem.callBaseMethod(this, "dispose");

		this._parent = null;
		this._itemCollection = null
	}
}
$IG.ListItem.registerClass('Infragistics.Web.UI.ListItem', $IG.UIObject);



$IG.DataItemProps = new function()
{
	/// <summary>For internal use only.</summary>
	this.DataPath = [$IG.ControlObjectProps.Count + 0, null];
	this.Populated = [$IG.ControlObjectProps.Count + 1, false];
	this.IsEmptyParent = [$IG.ControlObjectProps.Count + 2, false];
	this.Count = $IG.ControlObjectProps.Count + 3;

};



$IG.NavItemProps = new function()
{
	/// <summary>For internal use only.</summary>
	this.Text = [$IG.DataItemProps.Count + 0, ""];
	this.Value = [$IG.DataItemProps.Count + 1, ""];
	this.Key = [$IG.DataItemProps.Count + 2, ""];
	this.Count = $IG.DataItemProps.Count + 3;

};



$IG.NavItem = function(adr, element, props, owner, csm, collection, parent)
{
	/// <summary>
	/// Represents an item for hierarchical data controls. 
	/// </summary>
	$IG.NavItem.initializeBase(this, [adr, element, props, owner, csm]);
	this._parent = parent;
	this._itemCollection = collection

}

$IG.NavItem.prototype =
{

	//NavItem Properties
	_ensureFlags: function()
	{
		$IG.NavItem.callBaseMethod(this, "_ensureFlag");
		this._ensureFlag($IG.ClientUIFlags.Hoverable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Selectable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Draggable, $IG.DefaultableBoolean.True);
		this._ensureFlag($IG.ClientUIFlags.Droppable, $IG.DefaultableBoolean.True);
	},

	//DataItem properties
	set_dataPath: function(value)
	{
		/// <summary>Sets datapath for item.</summary>
		/// <param name="value" type="String">Datapath for item.</param>
		this._set_value($IG.DataItemProps.DataPath, value);
	},
	get_dataPath: function()
	{
		/// <summary>
		/// Sets or gets a string value representing the datapath into the data source used to popuplate the children of this item (if any).
		/// </summary>
		return this._get_value($IG.DataItemProps.DataPath);
	},
	set_populated: function(value)
	{
		/// <summary>Sets item state.</summary>
		/// <param name="value" type="Boolean">True: item was populated.</param>
		this._set_value($IG.DataItemProps.Populated, value);
	},
	get_populated: function()
	{
		/// <summary>
		/// Sets or gets a boolean value that indicates whether or not this item has been populated with children.
		/// </summary>
		return this._get_value($IG.DataItemProps.Populated, true);
	},

	set_isEmptyParent: function(value)
	{
		/// <summary>Sets state of item parent.</summary>
		/// <param name="value" type="Boolean">True: empty parent.</param>
		this._set_value($IG.DataItemProps.IsEmptyParent, value);
	},
	get_isEmptyParent: function()
	{
		/// <summary>
		/// Sets or gets a boolean value that indicates whether or not this item is a parent that has yet to be populated from an Ajax request to expand the node.
		/// </summary>
		return this._get_value($IG.DataItemProps.IsEmptyParent, true);
	},

	set_text: function(value)
	{
		/// <summary>Sets text for item.</summary>
		/// <param name="value" type="String">Text for item.</param>
		this._set_value($IG.NavItemProps.Text, value);
	},
	get_text: function()
	{
		/// <summary>
		/// Gets/Sets the text of the NavItem.
		/// </summary>
		return this._get_value($IG.NavItemProps.Text);
	},
	set_valueString: function(value)
	{
		/// <summary>Sets value for item.</summary>
		/// <param name="value" type="String">Value for item.</param>
		this._set_value($IG.NavItemProps.Value, value);
	},
	get_valueString: function()
	{
		/// <summary>
		/// Gets/Sets the value of the NavItem.
		/// </summary>
		return this._get_value($IG.NavItemProps.Value);
	},
	set_key: function(value)
	{
		/// <summary>Sets key for item.</summary>
		/// <param name="value">Key for item.</param>
		this._set_value($IG.NavItemProps.Key, value);
	},
	get_key: function()
	{
		/// <summary>
		/// Gets/Sets the key of the NavItem.
		/// </summary>
		return this._get_value($IG.NavItemProps.Key);
	},

	getItems: function()
	{
		/// <summary>
		/// Returns the collection of child items of a NavItem.
		/// </summary>
		return this._itemCollection;
    },
    
    get_selected: function() 
    {
		///<summary>
	    /// Returns a boolean value which indicates if this item is currently selected.
	    ///</summary>
        return this._getFlags().getSelected(this._owner);
    },
    
	set_selected: function(value)
	{
		///<summary>
	    /// Sets this item's selected state
	    ///</summary>
	    this._getFlags().setSelected(value);
	},
    
    get_enabled: function() 
    {
		///<summary>
	    /// Returns a boolean value which indicates if this item is currently enabled.
	    ///</summary>
        return this._getFlags().getEnabled(this._owner);
    },
    
	set_enabled: function(value)
	{
		///<summary>
	    /// Sets this item's enabled state
	    ///</summary>
	    this._getFlags().setEnabled(value);
	}
	
}
$IG.NavItem.registerClass('Infragistics.Web.UI.NavItem', $IG.UIObject);



$IG.FlagsHelper = function()
{
	/// <summary>
	/// This class is for internal use only.
	/// Provides helper methods for decoding and coding UIFlags.
	/// </summary>
	this._flagsHT = [];
};

$IG.FlagsHelper.prototype =
{
	updateFlag: function(flag, val)
	{
		/// <summary>
		/// Stores the ClientUIFlag in the private flags Hashtable.
		/// </summary>
		this._flagsHT[flag] = val;
	},
	getBoolFlag: function(flag)
	{
		/// <summary>
		/// Gets the bool value of a flag
		/// </summary>
		var obj = this._flagsHT[flag];
		if (obj == null)
			return false;
		else
			return obj;
	},

	getDBFlag: function(flag)
	{
		/// <summary>
		/// Gets the DefaultableBoolean value of a flag
		/// </summary>
		var obj = this._flagsHT[flag];
		if (obj == null)
			return $IG.DefaultableBoolean.NotSet;
		else
			return obj;
	},

	calcBoolFlag: function(flag)
	{
		/// <summary>
		/// Calculates the integer value for the specified ClientUIFlag based off of the passed in value.
		/// </summary>
		var val = this.getBoolFlag(flag);
		return (val) ? flag : 0;
	},

	calcDBFlag: function(flag)
	{
		/// <summary>
		/// Calculates the integer value for the specified ClientUIFlag based off of the passed in value.
		/// </summary>
		var val = this.getDBFlag(flag);
		return parseInt(flag * .5 * val);
	},

	calculateFlags: function()
	{
		/// <summary>
		/// Calculates the Flags property value of a UIObject based on the values of the list of passed in parameters.
		/// </summary
		var flags = 0;
		flags += this.calcDBFlag($IG.ClientUIFlags.Visible);
		flags += this.calcDBFlag($IG.ClientUIFlags.Enabled);
		flags += this.calcDBFlag($IG.ClientUIFlags.Selectable);
		flags += this.calcBoolFlag($IG.ClientUIFlags.Selected);
		flags += this.calcDBFlag($IG.ClientUIFlags.Hoverable);
		flags += this.calcBoolFlag($IG.ClientUIFlags.Hovered);
		flags += this.calcDBFlag($IG.ClientUIFlags.Editable);
		flags += this.calcDBFlag($IG.ClientUIFlags.Focusable);
		flags += this.calcBoolFlag($IG.ClientUIFlags.Focused);
		flags += this.calcDBFlag($IG.ClientUIFlags.Draggable);
		flags += this.calcDBFlag($IG.ClientUIFlags.Droppable);
		flags += this.calcDBFlag($IG.ClientUIFlags.KBNavigable);
		return flags;
	}
}

$IG.FlagsHelper.registerClass('Infragistics.Web.UI.FlagsHelper');



$IG.FlagsObject = function(flags, object)
{
	/// <summary>
	/// For internal use only.
	/// A helper object that manages UIFlags for a UIObject.
	/// </summary
	this._flags = flags;
	this._object = object
};

$IG.FlagsObject.prototype =
{
	dispose: function()
	{
		this._flags = null;
		this._object = null;
	},

	getVisible: function(parent)
	{
		/// <summary>
		/// Returns the resolved visibility of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Visible, parent);
	},
	setVisible: function(val)
	{
		/// <summary>Sets visibility.</summary>
		/// <param name="value" type="Boolean">True: visible.</param>
		this._setFlagValue($IG.ClientUIFlags.Visible, val);
	},

	getEnabled: function(parent)
	{
		/// <summary>
		/// Returns the resolved enabled state of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Enabled, parent);
	},
	setEnabled: function(val)
	{
		/// <summary>Sets enabled state.</summary>
		/// <param name="value" type="Boolean">True: enabled.</param>
		this._setFlagValue($IG.ClientUIFlags.Enabled, val);
	},

	getSelectable: function(parent)
	{
		/// <summary>
		/// Returns the resolved selectable property of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Selectable, parent);
	},
	setSelectable: function(val)
	{
		/// <summary>Sets ability to select.</summary>
		/// <param name="value" type="Boolean">True: selectable.</param>
		this._setFlagValue($IG.ClientUIFlags.Selectable, val);
	},

	getSelected: function()
	{
		/// <summary>
		/// Returns true if the UIObject is Selected.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Selected, null, true);
	},
	setSelected: function(val)
	{
		/// <summary>Sets selected state.</summary>
		/// <param name="value" type="Boolean">True: selected.</param>
		this._setFlagValue2($IG.ClientUIFlags.Selected, val);
	},

	getHoverable: function(parent)
	{
		/// <summary>
		/// Returns the resolved hoverability of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Hoverable, parent);
	},
	setHoverable: function(val)
	{
		/// <summary>Sets ability to hover.</summary>
		/// <param name="value" type="Boolean">True: hoverable.</param>
		this._setFlagValue($IG.ClientUIFlags.Hoverable, val);
	},

	getHovered: function()
	{
		/// <summary>
		/// Returns true if the UIObject is hovered.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Hovered, null, true);
	},
	setHovered: function(val)
	{
		/// <summary>Sets hover state.</summary>
		/// <param name="value" type="Boolean">True: mouse is over.</param>
		this._setFlagValue2($IG.ClientUIFlags.Hovered, val);
	},

	getEditable: function(parent)
	{
		/// <summary>
		/// Returns the resolved editablility of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Editable, parent);
	},
	setEditable: function(val)
	{
		/// <summary>Sets ability to edit.</summary>
		/// <param name="value" type="Boolean">True: editable.</param>
		this._setFlagValue($IG.ClientUIFlags.Editable, val);
	},

	getFocusable: function(parent)
	{
		/// <summary>
		/// Returns the resolved focuability of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Focusable, parent);
	},
	setFocusable: function(val)
	{
		/// <summary>Sets ability to get focus.</summary>
		/// <param name="value" type="Boolean">True: focusable.</param>
		this._setFlagValue($IG.ClientUIFlags.Focusable, val);
	},

	getFocused: function()
	{
		/// <summary>
		/// Returns true if the UIObject is focused.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Focused, null, true);
	},
	setFocused: function(val)
	{
		/// <summary>Sets focus state.</summary>
		/// <param name="value" type="Boolean">True: has focus.</param>
		this._setFlagValue2($IG.ClientUIFlags.Focused, val);
	},

	getDraggable: function(parent)
	{
		/// <summary>
		/// Returns the resolved dragability of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Draggable, parent);
	},
	setDraggable: function(val)
	{
		/// <summary>Sets ability to drag.</summary>
		/// <param name="value" type="Boolean">True: draggable.</param>
		this._setFlagValue($IG.ClientUIFlags.Draggable, val);
	},

	getDroppable: function(parent)
	{
		/// <summary>
		/// Returns the resolved dropability of a UIObject.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.Droppable, parent);
	},
	setDroppable: function(val)
	{
		/// <summary>Sets ability to drop.</summary>
		/// <param name="value" type="Boolean">True: droppable.</param>
		this._setFlagValue($IG.ClientUIFlags.Droppable, val);
	},

	getKBNavigable: function(parent)
	{
		/// <summary>
		/// Returns true if the UIObject and be navigated with the keyboard.
		/// </summary
		return this._getFlagValue($IG.ClientUIFlags.KBNavigable, parent);
	},
	setKBNavigable: function(val)
	{
		/// <summary>Sets ability to process keyboard.</summary>
		/// <param name="value" type="Boolean">True: process keyboard.</param>
		this._setFlagValue($IG.ClientUIFlags.KBNavigable, val);
	},

	// Returns a Bool
	_getFlagValue: function(flag, parent, isBoolFlag)
	{
		var returnDb = $IG.DefaultableBoolean.NotSet;
		var trueFlag = this._flags & (flag * .5);
		var falseFlag = this._flags & flag;

		if (trueFlag != 0 && falseFlag == 0)
			returnDb = $IG.DefaultableBoolean.True;
		else if (falseFlag != 0)
			returnDb = $IG.DefaultableBoolean.False;

		if (parent != null && returnDb == $IG.DefaultableBoolean.NotSet && parent._getFlags)
			returnDb = parent._getFlags()._getFlagValue(flag);

		if (isBoolFlag)
			return (returnDb == 2)
		else if (returnDb == $IG.DefaultableBoolean.True)
			return true;
		else
			return false;
	},


	// Sets a DefaultableBoolean
	_setFlagValue: function(flag, value)
	{
		if (typeof (value) == "boolean")
			value = (value) ? 1 : 2;

		var trueFlag = this._flags & (flag * .5);
		this._flags -= trueFlag;
		var falseFlag = this._flags & flag;
		this._flags -= falseFlag;

		this._flags += flag * (.5) * value;

		this._object._updateFlags(this._flags);
	},

	// Sets a Bool
	_setFlagValue2: function(flag, value)
	{
		if (typeof (val) == "boolean")
			val = (val) ? 1 : 0;

		this._flags -= this._flags & flag;
		this._flags += (value) ? flag : 0;
		this._object._updateFlags(this._flags);
	},

	_getFlags: function()
	{
		return this._flags;
	}
}

$IG.FlagsObject.registerClass('Infragistics.Web.UI.FlagsObject');




$IG.ImageObjectProps = new function() 
{
	this.Count = $IG.ObjectBaseProps.Count + 0;
};

$IG.ImageObject = function(obj, element, props, owner, csm)
{
	///<summary>
	/// An object that has an associated image element and the concept of different states, such as Normal, Hover, Pressed, and Disabled.
	///</summary>
	if (!csm)
		csm = new $IG.ObjectClientStateManager(props[0]);
	$IG.ImageObject.initializeBase(this, [obj, element, props, owner, csm]);

	this._currentState = this._get_clientOnlyValue("s");
}

$IG.ImageObject.prototype =
{
	setState: function(state)
	{
		/// <summary>
		/// Sets the ImageState of the ImageObject.
		/// </summary
		if (this._element == null)
			return;
		var url = this._get_clientOnlyValue(state);
		if (url == null || url.length == 0)
			url = this._get_clientOnlyValue($IG.ImageState.Normal);

		this._element.src = url;
		this._currentState = state;
	},

	getState: function()
	{
		/// <summary>
		/// Returns the ImageState of the ImageObject
		/// </summary
		return this._currentState;
	}
}
$IG.ImageObject.registerClass('Infragistics.Web.UI.ImageObject', $IG.ObjectBase);

$IG.ImageState = new function()
{
	this.Normal = 'i';
	this.Hover = 'h';
	this.Pressed = 'p';
	this.Disabled = 'd';
};





$IG.CheckBoxMode = new function() 
{
	this.Off = 0;
	this.BiState = 1;
	this.TriState = 2;
};

$IG.CheckBoxState = new function() 
{
	this.Unchecked = 0;
	this.Checked = 1;
	this.Partial = 2;
};

$IG.ImageCheckBoxProps = new function() 
{
	
	this.State = [$IG.ImageObjectProps.Count + 0, $IG.CheckBoxState.Unchecked];
	this.Count = $IG.ImageObjectProps.Count + 1;
};

$IG.ImageCheckBox = function(obj, element, props, owner, csm) 
{
	///<summary>
	/// Represents an Image CheckBox capable of display in tri-state or bi-state mode.
	/// In bi-state the checkbox offers two states - checked and unchecked.
	/// In tri-state the checkbox offers three states � checked, unchecked and partial.
	///</summary>
	$IG.ImageCheckBox.initializeBase(this, [obj, element, props, owner, csm]);
}

$IG.ImageCheckBox.prototype =
{
	set_uncheckedImageURL: function(value) 
	{
		/// <summary>Sets the unchecked image URL of the ImageCheckBox.</summary>
		this._uncheckedImageURL = value;
	},

	set_checkedImageURL: function(value) 
	{
		/// <summary>Sets the checked image URL of the ImageCheckBox.</summary>
		this._checkedImageURL = value;
	},

	set_partialImageURL: function(value) 
	{
		/// <summary>Sets the partial image URL of the ImageCheckBox.</summary>
		this._partialImageURL = value;
	},
	
	
	
	set_state: function(value) 
	{
		/// <summary>
		/// Sets the CheckBoxState of the ImageCheckBox.
		/// </summary>
		this._set_value($IG.ImageCheckBoxProps.State, value);
		
		if (this._element == null)
			return;

		switch(value)
		{
			case $IG.CheckBoxState.Unchecked:
				this._element.src = this._uncheckedImageURL;
				break;
			case $IG.CheckBoxState.Checked:
				this._element.src = this._checkedImageURL;
				break;
			case $IG.CheckBoxState.Partial:
				this._element.src = this._partialImageURL;
				break;
		}
	},

	get_state: function() 
	{
		/// <summary>
		/// Returns the CheckBoxState of the ImageCheckBox.
		/// </summary>
		return this._get_value($IG.ImageCheckBoxProps.State);
	}
}
$IG.ImageCheckBox.registerClass('Infragistics.Web.UI.ImageCheckBox', $IG.ImageObject);




Infragistics._Utility = function() { };

Infragistics._Utility.prototype =
{

	addCompoundClass: function(element, className)
	{
		
		if (element)
			Sys.UI.DomElement.addCssClass(element, className);
	},

	containsCompoundClass: function(element, className)
	{
		
		return (element && element.className.indexOf(className) >= 0);
	},

	removeCompoundClass: function(element, className)
	{
		
		if (!element)
			return;
		element.className = element.className.replace(className, "");
		element.className = element.className.replace("  ", " ");
	},

	toggleCompoundClass: function(element, className, apply)
	{
		if (apply)
		{
			if (!this.containsCompoundClass(element, className))
				this.addCompoundClass(element, className);
		}
		else
			this.removeCompoundClass(element, className);
	},

	
	
	addClientEvent: function(obj, evtName, val)
	{
		/// <summary>For internal use. Adds client event.</summary>
		/// <param name="obj" type="Object">Reference to object.</param>
		/// <param name="evtName">Name of client event.</param>
		/// <param name="fnc" type="Object">Reference to function.</param>
		var fnc = this.toFunction(val);
		if (fnc)
			obj.get_events().addHandler(evtName, fnc);
		else
			alert('The "' + val + '" for "' + evtName + '" should be a function, function name, or function text');
	},

	
	
	removeClientEvent: function(obj, evtName, fnc)
	{
		/// <summary>For internal use. Removes client event.</summary>
		/// <param name="obj" type="Object">Reference to object.</param>
		/// <param name="evtName">Name of client event.</param>
		/// <param name="fnc" type="Object">Reference to function.</param>
		obj.get_events().removeHandler(evtName, fnc);
	},

	
	
	getPosition: function(elem)
	{
		/// <summary>For internal use. Gets location of element on page.</summary>
		/// <param name="elem" type="Object">Reference to html element which position should be calculated.</param>
		/// <returns type="Object">Object which contains 4 numeric values: x-left position of elem, y-top position, scrollX-horizontal scroll, scrollY-vertical scroll.</returns>
		var htm, name, style, elem0 = elem;
		var first = true, noTD = true, ieRect = false, end = false;
		var o = { x: 0, y: 0, scrollX: 0, scrollY: 0 };
		var ie = document.all && elem.getBoundingClientRect;
		var body2 = !ie;
		while (elem)
		{
			name = elem.nodeName;
			style = this.getRuntimeStyle(elem);
			htm = name == 'HTML';
			if (end)
			{
				if (htm) break;
				elem = elem.parentNode;
				continue;
			}
			var body = name == 'BODY';
			var bdr = false;
			var pos = this.getStyleValue(style, 'position');
			var abs = pos == 'absolute', rel = pos == 'relative';
			if (ie && rel)
				ieRect = abs = true;
			end = body && !ie;
			if ((abs && body) || name == 'FORM')
				break;
			var v = elem.offsetTop;
			if (v)
			{
				if (elem.nodeName == 'TD' && elem.offsetParent != elem.parentNode)
					v = elem.parentNode.offsetTop;
				o.y += v;
			}
			v = elem.offsetLeft;
			if (v) o.x += v;
			if (!first && !htm)
			{
				var td = name == 'TD', tbl = name == 'TABLE';
				if (ie)
				{
					if (!tbl || (noTD && abs))
					{
						if (name != 'DIV' || !rel)
							bdr = true;
						if (td)
							noTD = false;
					}
					if (tbl || (!td && !tbl))
						noTD = true;
				}
				else if ((!tbl && !td) || (td && abs))
					bdr = true;
			}
			if (bdr)
			{
				
				v = body2 && body;
				
				if (!ie && !v && (abs || rel))
					v = this._isScroll(style, name);
				this._addBorder(style, o, false, v);
			}
			if (elem != elem0)
			
				this._addScroll(elem, o);
			if (abs)
				body2 = false;
			first = false;
			var pe = elem.parentNode;
			elem = elem.offsetParent;
			if (!elem && end)
			{
				elem = pe;
				continue;
			}
			
			if (!ie && !abs && elem) while (pe && pe != elem)
			{
				if (this._isScroll(style = this.getRuntimeStyle(pe), pe.nodeName))
				{
					this._addScroll(pe, o);
					this._addBorder(style, o);
				}
				pe = pe.parentNode;
			}
		}
		if (body2 && htm)
			this._addBorder(style, o, true);
		if (ieRect)
		{
			v = elem0.getBoundingClientRect();
			o.x = v.left + o.scrollX;
			o.y = v.top + o.scrollY;
			if (htm && style)
				this._addBorder(style, o, true);
		}
		o.absX = o.x - o.scrollX;
		o.absY = o.y - o.scrollY;
		return o;
	},
	_addScroll: function(elem, o)
	{
		var v = elem.scrollLeft;
		if (v) o.scrollX += v;
		v = elem.scrollTop;
		if (v) o.scrollY += v;
	},
	_addBorder: function(style, o, neg, twice)
	{
		var v = this.toIntPX(style, 'borderLeftWidth', 0);
		if (twice) v += v;
		o.x += neg ? -v : v;
		v = this.toIntPX(style, 'borderTopWidth', 0);
		if (twice) v += v;
		o.y += neg ? -v : v;
	},
	_isScroll: function(style, name)
	{
		var v = name == 'DIV' ? this.getStyleValue(style, 'overflow') : '';
		return v == 'auto' || v == 'scroll';
	},

	
	cancelEvent: function(e, type, raw)
	{
		/// <summary>For internal use. Cancels browser event.</summary>
		/// <param name="e" type="Object">Reference to event.</param>
		/// <param name="type" type="String" mayBeNull="true" optional="true">Name of event.</param>
		/// <param name="raw" type="Boolean" mayBeNull="true" optional="true">Cancel rawEvent.</param>
		if (!e && !raw) e = window.event;
		if (!e) return true;
		if (type && type.substring && e.type != type)
			return true;
		if (e.stopPropagation)
			e.stopPropagation();
		if (e.preventDefault)
			e.preventDefault();
		e.cancelBubble = true;
		e.returnValue = false;
		if (raw)
			return false;
		return this.cancelEvent(e.rawEvent, null, true);
	},

	
	getRuntimeStyle: function(elem)
	{
		/// <summary>For internal use. Gets reference to run time style of element.</summary>
		/// <param name="elem" type="Object">Reference to html element which position should be calculated.</param>
		/// <returns type="Object" mayBeNull="true">Style.</returns>
		if (!elem)
			return null;
		var s = elem.currentStyle;
		if (s)
			return s;
		var win = document.defaultView;
		if (!win)
			win = window;
		if (win.getComputedStyle)
			s = win.getComputedStyle(elem, '');
		return s ? s : elem.style;
	},

	
	
	
	getStyleValue: function(style, prop, elem)
	{
		/// <summary>For internal use. Gets reference to run time style of element.</summary>
		/// <param name="style" type="Object" mayBeNull="true" optional="true">Reference to style.</param>
		/// <param name="prop" type="String" mayBeNull="false" optional="false">Name of property, like borderTopWidth.</param>
		/// <param name="elem" type="Object" mayBeNull="true" optional="true">Reference to html element.</param>
		/// <returns type="String" mayBeNull="true">Value of property.</returns>
		if (!style)
			style = this.getRuntimeStyle(elem);
		if (!style)
			return null;
		var val = style[prop];
		if (!this.isEmpty(val) || !style.getPropertyValue)
			return val;
		return style.getPropertyValue(prop);
	},

	
	toInt: function(val, def)
	{
		/// <summary>For internal use. Gets integer from string.</summary>
		/// <param name="val" type="Object">String or numeric value.</param>
		/// <param name="def" type="Number" mayBeNull="true" optional="true">Value returned in case of failure.</param>
		/// <returns type="Number">Integer.</returns>
		var ok = false;
		var i = -1, len = val ? val.length : 0;
		while (++i < len)
		{
			var ch = val.charCodeAt(i);
			if (ch == 45 && i == 0)
				continue;
			if (ch < 48 || ch > 57)
			{
				val = val.substring(0, i);
				break;
			}
			ok = true;
		}
		return ok ? parseInt(val) : def;
	},

	
	
	
	
	toIntPX: function(style, prop, def, elem)
	{
		/// <summary>For internal use. Gets integer from string with validation for pixel units.</summary>
		/// <param name="style" type="Object" mayBeNull="true" optional="true">Reference to style.</param>
		/// <param name="prop" type="String" mayBeNull="false" optional="false">Name of property, like borderTopWidth.</param>
		/// <param name="def" type="Number" mayBeNull="true" optional="true">Value returned in case of failure.</param>
		/// <param name="elem" type="Object" mayBeNull="true" optional="true">Reference to html element.</param>
		/// <returns type="Number">Integer.</returns>
		var px = this.getStyleValue(style, prop, elem);
		return (px && px.indexOf('px') > 0) ? this.toInt(px, 0) : (def ? def : 0);
	},

	
	toFunction: function(val)
	{
		/// <summary>For internal use. Gets reference to function.</summary>
		/// <param name="val" type="Object">Reference to function, its text, etc.</param>
		/// <returns type="Number" mayBeNull="true">Reference to function.</returns>
		if (val instanceof Function)
			return val;
		if (!val || !val.length || !val.charCodeAt)
			return null;
		var fnc = window[val];
		if (fnc instanceof Function)
			return fnc;
		try { fnc = eval(val); } catch (val) { }
		return (fnc instanceof Function) ? fnc : null;
	},

	
	isEmpty: function(val)
	{
		/// <summary>For internal use. Checks if value is empty.</summary>
		/// <param name="val" type="Object">Object to test.</param>
		/// <returns type="Boolean">True: string or array is empty.</returns>
		if (!val)
			return true;
		val = val.length;
		return !val || val.length < 1;
	},
	
	getOpacity: function(elem)
	{
		/// <summary>For internal use. Gets opacity of element.</summary>
		/// <param name="elem" type="Object">Object to test.</param>
		/// <returns type="Number">Value in range of 0-100.</returns>
		var op = this.getStyleValue(null, 'opacity', elem);
		if (op)
		{
			op = parseFloat(op);
			if (op)
			{
				op = Math.floor(op * 100);
				return (op < 100 && op >= 0) ? op : 100;
			}
		}
		op = this.getStyleValue(null, 'filter', elem);
		if (!op)
			return 100;
		op = this.replace(op.toLowerCase(), ' ', '');
		var i = op.indexOf('opacity=');
		return (i < 0) ? 100 : this.toInt(op.substring(i + 8), 100);
	},

	
	
	
	findControl: function(id, prefix)
	{
		/// <summary>Find Infragistics control from partial match of its id.</summary>
		/// <param name="id" type="String">Trailing part of id (after undescore).</param>
		/// <param name="prefix" type="String" mayBeNull="true" optional="true">Prefix of id.</param>
		/// <returns type="Object" mayBeNull="true">Reference to control.</returns>
		for (var ig in ig_controls)
		{
			var ctl = ig_controls[ig];
			if (!ctl.get_id || (prefix && ig.indexOf(prefix) != 0))
				continue;
			var i = ig.lastIndexOf(id);
			if (i == 0 || (i > 0 && i + id.length == ig.length && ig.charAt(i - 1) == '_'))
				return ctl;
		}
	},

	
	
	
	findChild: function(elem, id)
	{
		/// <summary>Find html element with partial match of its id.</summary>
		/// <param name="elem" type="Object">Parent container.</param>
		/// <param name="id" type="String">Trailing part of id (after undescore).</param>
		/// <returns type="Object" mayBeNull="true">Reference to html element.</returns>
		var id0 = elem.id;
		var i = id0 ? id0.lastIndexOf(id) : -1;
		if (i >= 0 && i + id.length == id0.length && id0.charAt(i - 1) == '_')
			return elem;
		var elems = elem.childNodes;
		i = elems ? elems.length : 0;
		while (i-- > 0)
		{
			elem = this.findChild(elems[i], id);
			if (elem)
				return elem;
		}
	},

	
	addLayoutTarget: function(target)
	{
		/// <summary>For internal use only.</summary>
		
		var index = -1, elem = target._element;
		while ((elem = elem.parentNode) != null)
		{
			if (!elem.getAttribute)
				continue;
			
			var ctl = null, id = elem.getAttribute('mkr');
			if (id && id.length > 1 && id.substring(0, 1) == 'c')
				index = this.toInt(id.substring(1), -1);
			id = elem.getAttribute('CtlMain');
			if (!id)
				continue;
			if (id == 'layout')
			{
				id = elem.id;
				if (id)
					ctl = ig_controls[id];
			}
			if (!ctl || !ctl.getLayoutManager)
			{
				index = -1;
				continue;
			}
			
			ctl = ctl.getLayoutManager(index);
			if (!ctl) continue;
			
			var i = -1, ids = ctl._layoutListeners, id = target._id;
			if (!ids)
				ctl._layoutListeners = ids = new Array();
			
			while (++i < ids.length)
				if (ids[i] == id)
				break;
			ids[i] = id;
			
			target._layoutManager = ctl;
			return true;
		}
		return false;
	},

	
	
	
	raiseLayoutEvent: function(man)
	{
		/// <summary>For internal use only.</summary>
		
		
		var ctl, elem = man._element;
		var lsnrs = elem ? elem._ctlsForLayout : null;
		var i = lsnrs ? lsnrs.length : 0;
		while (i-- > 0)
		{
			ctl = lsnrs[i];
			if (ctl && ctl.layout)
			
				if (ctl.layout(man.getClientWidth ? man.getClientWidth(ctl) : null, man.getClientHeight ? man.getClientHeight(ctl) : null))
				if (!ctl._layoutManager)
			
				this.addLayoutTarget(ctl);
			lsnrs[i] = null;
		}
		if (lsnrs)
		{
			elem._ctlsForLayout = null;
			return;
		}
		lsnrs = man._layoutListeners;
		i = lsnrs ? lsnrs.length : 0;
		while (i-- > 0)
		{
			var ctl = ig_controls[lsnrs[i]];
			if (ctl && ctl.layout)
			{
				var width = man.getClientWidth ? man.getClientWidth(ctl) : null, height = man.getClientHeight ? man.getClientHeight(ctl) : null;
				ctl.layout(width, height);
			}
		}
	},
	
	
	
	
	
	
	
	
	
	checkLayoutManager: function(ctl)
	{
		/// <summary>For internal use only.</summary>
		var i = 0, elem = ctl._element;
		
		
		while (i++ < 10 && elem && (elem = elem.parentNode) != null)
		{
			
			var css = elem.id ? elem.className : null;
			if (css && css.indexOf(':=CtlMain:layout') == css.length - 16)
			{
				
				if ((i = elem._ctlsForLayout) == null)
					i = elem._ctlsForLayout = new Array();
				i[i.length] = ctl;
				return true;
			}
		}
		return false;
	},

	
	
	
	
	
	getOffset: function(style, width, noTrail, noLead)
	{
		/// <summary>For internal use only.</summary>
		var val = 0;
		if (style) while (!noLead || !noTrail)
		{
			var prop = noLead ? (width ? 'Right' : 'Bottom') : (width ? 'Left' : 'Top');
			if (noLead)
				noTrail = true;
			noLead = true;
			val += this.toIntPX(style, 'border' + prop + 'Width') + this.toIntPX(style, 'padding' + prop);
		}
		return val;
	},

	
	
	
	getMargin: function(style, horiz)
	{
		/// <summary>For internal use only.</summary>
		return this.toIntPX(style, 'margin' + (horiz ? 'Left' : 'Top')) + this.toIntPX(style, 'margin' + (horiz ? 'Right' : 'Bottom'));
	},

	
	
	
	display: function(elem, hide)
	{
		/// <summary>For internal use only.</summary>
		var style = elem ? elem.style : null;
		if (!style) return;
		style.display = hide ? 'none' : '';
		style.visibility = hide ? 'hidden' : 'visible';
	},

	
	
	isOut: function(e, elem)
	{
		var to = e.toElement;
		if (!to) to = e.relatedTarget;
		e = e.rawEvent;
		if (!to && e) if ((to = e.toElement) == null)
			to = e.relatedTarget;
		while (to)
		{
			if (to == elem)
				return false;
			to = to.parentNode;
		}
		return true;
	},

	
	
	
	
	
	
	
	
	replace: function(str, oldVal, newVal)
	{
		/// <summary>For internal use only.</summary>
		if (newVal == null)
			for (var i = 0; i < oldVal.length; i += 2)
			str = this.replace(str, oldVal[i], oldVal[i + 1]);
		else while (str.indexOf(oldVal) >= 0)
			str = str.replace(oldVal, newVal);
		return str;
	},

	
	htmlEscapeCharacters: function(str)
	{
		/// <summary>For internal use only.</summary>
		return (typeof (str) === "string") ? str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;") : str;
	},

	
	htmlUnescapeCharacters: function(str)
	{
		/// <summary>For internal use only.</summary>
		return (typeof (str) === "string") ? str.replace(/&amp;/g, "&").replace(/&lt;/g, "<").replace(/&gt;/g, ">") : str;
	},

	
	getHTML: function(win)
	{
		/// <summary>Find HTML element.</summary>
		/// <param name="win" type="Object" mayBeNull="true" optional="true">Reference to window.</param>
		/// <returns type="Object" mayBeNull="true">Reference to HTML.</returns>
		if (!win)
			win = window;
		var doc = win.document;
		var htm = doc.body;
		while (htm && htm.nodeName != 'HTML')
			htm = htm.parentNode;
		return htm ? htm : doc.body;
	},

	
	getWinRect: function(win)
	{
		/// <summary>For internal use only.</summary>
		if (!win)
			win = window;
		var doc = win.document;
		var body = doc.body, htm = this.getHTML(win), de = doc.documentElement;
		if (!de)
			de = htm;
		var x = de.scrollLeft, y = de.scrollTop, wi = win.innerWidth, hi = win.innerHeight, wd = de.clientWidth, hd = de.clientHeight, w = htm.clientWidth, h = htm.clientHeight;
		var maxWidth = w ? w : 0, maxHeight = h ? h : 0, w2 = htm.scrollWidth, h2 = htm.scrollHeight;
		if (wd)
		{
			maxWidth = Math.max(maxWidth, wd);
			maxHeight = Math.max(maxHeight, hd);
		}
		if (wi)
		{
			maxWidth = Math.max(maxWidth, wi);
			maxHeight = Math.max(maxHeight, hi);
		}
		if (w2 && h2)
		{
			maxWidth = Math.max(maxWidth, w2);
			maxHeight = Math.max(maxHeight, h2);
		}
		maxWidth = Math.max(maxWidth, body.scrollWidth);
		maxHeight = Math.max(maxHeight, body.scrollHeight);
		w2 = body.offsetWidth;
		h2 = body.offsetHeight
		maxWidth = Math.max(maxWidth, w2);
		maxHeight = Math.max(maxHeight, h2);
		var noClientSize = false;
		
		if (!x)
			x = htm.scrollLeft;
		if (!x)
			x = body.scrollLeft;
		if (!y)
			y = htm.scrollTop;
		if (!y)
			y = body.scrollTop;
		
		if (!wi || wi < 50)
			wi = 99999;
		if (!wd || wd < 50)
			wd = 99999;
		if (!w || w < 50)
			w = 99999;
		if (w > wd)
			w = wd;
		if (w > wi)
			w = wi;
		if (w == 99999)
		{
			w = w2;
			noClientSize = true;
		}
		
		if (!hi || hi < 50)
			hi = 99999;
		if (!hd || hd < 50)
			hd = 99999;
		if (!h || h < 50)
			h = 99999;
		if (h > hd)
			h = hd;
		if (h > hi)
			h = hi;
		if (h == 99999)
		{
			h = h2;
			noClientSize = true;
		}
		return { x: x, y: y, width: w, height: h, maxWidth: maxWidth, maxHeight: maxHeight, noClientSize: noClientSize };
	},

	
	setOpacity: function(element, opacity)
	{
		/// <summary>For internal use only.</summary>
		element.style.opacity = opacity / 100;
		if (element.filters)
		{
			if (!element.filters["alpha"] || element.style.filter.indexOf("alpha") == -1)
				element.style.filter += " alpha(opacity=" + opacity + ")";
			else
				element.filters["alpha"].opacity = opacity;
		}
	},

	
	
	_initAttr: function(elem)
	{
		var attr = elem.id;
		var j = 99, i = attr ? attr.length : 0;
		if (i < 1)
		
			return false;
		
		
		
		if (attr.length > 5 && attr.charAt(1) == ':' && attr.charAt(0) == 'x')
		{
			attr = attr.split(':');
			i = attr.length;
			if ((i >= 4 || (i % 2 == 0)) && attr[1].indexOf('.') > 0)
				j = 1;
		}
		
		if (j > 2)
		{
			
			
			
			var css = elem.className;
			j = (css && css.length > 5) ? css.indexOf(' :=') : -1;
			if (j < 0)
			
				return true;
			attr = css.substring(j + 3);
			if (attr.indexOf(' ') >= 0)
			
				return true;
			attr = attr.split(':');
			i = attr.length;
			if (i < 2 || (i & 1) != 0)
			
				return true;
			elem.className = css.substring(0, j);
			j = -1;
		}
		while ((i -= 2) > j)
			elem.setAttribute(attr[i], attr[i + 1]);
		
		return j < 0;
	},

	
	resolveMarkedElement: function(elem, checkControl)
	{
		/// <summary>For internal use only.</summary>
		var adr = null;
		var control = null;
		var secondWalkthrough = false;
		while (elem)
		{
			if (elem.getAttribute)
			{
				adr = elem.getAttribute("adr");
				if (adr == null)
					adr = elem.getAttribute("mkr");
				if (adr == null)
					adr = elem.getAttribute("obj");
				if (adr == null && !secondWalkthrough)
				{
					adr = elem.getAttribute("id");
					if (adr)
					{
						secondWalkthrough = true;
						if (!$util._initAttr(elem))
							continue;
						adr = null;
					}
				}
				else
					secondWalkthrough = false;
			}
			if (typeof (adr) == "string")
			{
				if (adr.length > 0)
					break;
			}
			else
				if (typeof (adr) != "undefined" && adr !== null)
				break;

			elem = elem.parentNode;
		}
		if (elem == null)
			return null;
		else if (checkControl)
		{
			var parent = elem.parentNode;
			while (parent)
			{
				if (parent.control != null)
				{
					control = parent.control;
					break;
				}
				parent = parent.parentNode;
			}
		}
		return [elem, adr, control];
	},

	compare: function(val1, val2)
	{
		/// <summary>For internal use only.</summary>
		if (val1 == val2)
			return true;
		else if (val1 != null && val2 != null)
		{
			var type1 = Object.getType(val1).__typeName;
			var type2 = Object.getType(val2).__typeName;
			if (type1 != type2 || type1 == "String" || type1 == "Number" || type1 == "Boolean")
				return false;

			if (type1 == "Array")
			{
				if (val1.length != val2.length)
					return false;

				for (var i in val1)
				{
					if (!$util.compare(val1[i], val2[i]))
						return false;
				}
				return true;
			}
			else if (type1 == "Date")
			{
				if (val1.getTime() == val2.getTime())
					return true;
			}
			else
			{
				for (var i in val1)
				{
					if (!$util.compare(val1[i], val2[i]))
						return false;
				}
				return true;
			}
		}
		return false;
	},

	ensureBrowserInfo: function()
	{
		/// <summary>For internal use only.</summary>
		try { this.AgentName = navigator.userAgent.toLowerCase(); } catch (e) { this.AgentName = ""; }
		this.MajorVersionNumber = parseInt(navigator.appVersion);
		this.IsWebKit = this.AgentName.indexOf("webkit") >= 0;
		this.IsSafari = this.IsWebKit || this.AgentName.indexOf("safari") >= 0;
		this.IsFireFox = this.AgentName.indexOf("firefox") >= 0;
		if (this.IsFireFox)
		{
			this.IsFireFox2 = this.AgentName.indexOf("firefox/2") >= 0;
			this.IsFireFox3 = this.AgentName.indexOf("firefox/3") >= 0;
		}
		this.IsOpera = this.AgentName.indexOf("opera") >= 0;
		this.IsMac = this.AgentName.indexOf("mac") >= 0;
		this.IsIE = document.all != null && !this.IsOpera && !this.IsSafari;
		if (this.IsIE)
		{
			this.IsIE8 = this.AgentName.indexOf("msie 8.0") >= 0;
		}
	},

	_getWidthMargin: function(element)
	{
		var style = this.getRuntimeStyle(element);
		var borderLeftWidth = 0;
		if (style.borderLeftStyle != "none")
		{
			if (style.borderLeftWidth == "thin")
				borderLeftWidth = 1;
			else if (style.borderLeftWidth == "medium")
				borderLeftWidth = 3;
			else if (style.borderLeftWidth == "thick")
				borderLeftWidth = 5;
			else
			{
				var w = parseInt(style.borderLeftWidth, 10);
				if (isNaN(w))
					w = 0;
				borderLeftWidth = w;
			}
		}

		var borderRightWidth = 0;
		if (style.borderRightStyle != "none")
		{
			if (style.borderRightWidth == "thin")
				borderRightWidth = 1;
			else if (style.borderRightWidth == "medium")
				borderRightWidth = 3;
			else if (style.borderRightWidth == "thick")
				borderRightWidth = 5;
			else
			{
				var w = parseInt(style.borderRightWidth, 10);
				if (isNaN(w))
					w = 0;
				borderRightWidth = w;
			}
		}

		var paddingLeft = parseInt(style.paddingLeft, 10);
		if (isNaN(paddingLeft))
			paddingLeft = 0;

		var paddingRight = parseInt(style.paddingRight, 10);
		if (isNaN(paddingRight))
			paddingRight = 0;

		return borderLeftWidth + borderRightWidth + paddingLeft + paddingRight;
	},

	_getHeightMargin: function(element)
	{
		var style = this.getRuntimeStyle(element);
		var borderTopWidth = 0;
		if (style.borderTopStyle != "none")
		{
			if (style.borderTopWidth == "thin")
				borderTopWidth = 1;
			else if (style.borderTopWidth == "medium")
				borderTopWidth = 3;
			else if (style.borderTopWidth == "thick")
				borderTopWidth = 5;
			else
			{
				var w = parseInt(style.borderTopWidth, 10);
				if (isNaN(w))
					w = 0;
				borderTopWidth = w;
			}
		}

		var borderBottomWidth = 0;
		if (style.borderBottomStyle != "none")
		{
			if (style.borderBottomWidth == "thin")
				borderBottomWidth = 1;
			else if (style.borderBottomWidth == "medium")
				borderBottomWidth = 3;
			else if (style.borderBottomWidth == "thick")
				borderBottomWidth = 5;
			else
			{
				var w = parseInt(style.borderBottomWidth, 10);
				if (isNaN(w))
					w = 0;
				borderBottomWidth = w;
			}
		}

		var paddingTop = parseInt(style.paddingTop, 10);
		if (isNaN(paddingTop))
			paddingTop = 0;

		var paddingBottom = parseInt(style.paddingBottom, 10);
		if (isNaN(paddingBottom))
			paddingBottom = 0;

		return borderTopWidth + borderBottomWidth + paddingTop + paddingBottom;
	},

	setAbsoluteWidth: function(element, width)
	{
		///<summary>
		///Sets the outer width on an element. The width includes in itself the borders
		///and the paddings.
		///</summary>


		width -= this._getWidthMargin(element);

		if (width < 0)
			width = 0;

		element.style.width = width + "px";

		
		
		if (element.offsetWidth != 0)
		{
			var adjustment = width + (width - element.offsetWidth + this._getWidthMargin(element));
			if (adjustment > 0)
				element.style.width = adjustment + "px";
		}

	},

	getAbsoluteWidth: function(element)
	{
		///<summary>
		///Sets the outer width on an element. The width includes in itself the borders
		///and the paddings.
		///</summary>


		var width = element.offsetWidth + this._getWidthMargin(element);

		if (width < 0)
			width = 0;

		return width;
	},

	setAbsoluteHeight: function(element, height)
	{
		///<summary>
		///Sets the outer height on an element. The height includes in itself the borders
		///and the paddings.
		///</summary>

		height -= this._getHeightMargin(element);

		if (height < 0)
			height = 0;

		element.style.height = height + "px";
	},

	getAbsoluteHeight: function(element)
	{
		///<summary>
		///Sets the outer height on an element. The height includes in itself the borders
		///and the paddings.
		///</summary>

		var height = element.offsetHeight - this._getHeightMargin(element);

		if (height < 0)
			height = 0;

		return height;
	},

	addHandler: function(element, eventName, handler)
	{
		/// <summary>For internal use only.</summary>
		if (!handler)
			return;
		var browserHandler;
		if (element.addEventListener)
		{
			browserHandler = function(e)
			{
				return handler.call(element, new Sys.UI.DomEvent(e));
			}
			element.addEventListener(eventName, browserHandler, false);
		}
		else if (element.attachEvent)
		{
			browserHandler = function(e)
			{
				return handler.call(element, new Sys.UI.DomEvent(e));
			}
			element.attachEvent('on' + eventName, browserHandler);
		}
	},

	removeHandler: function(element, eventName, handler)
	{
		if (!handler)
			return;
		if (element.removeEventListener)
			element.removeEventListener(eventName, handler, false);
		else if (element.detachEvent)
			element.detachEvent('on' + eventName, handler);
	},

	isChild: function(parent, child)
	{
		var p = child.parentNode;
		while (p != parent && p != document.body && p != null)
			p = p.parentNode;
		return (p == parent)
	},
	getRows: function(tbl)
	{
		if (!tbl)
			return null;
		try
		{
			if (typeof tbl.rows == 'object')
				return tbl.rows;
		} catch (e) { }
		
		if (tbl.nodeName == 'TABLE')
			tbl = tbl.firstChild;
		return (tbl.nodeName == 'TBODY') ? tbl.childNodes : null;
	},

	
	createDelegate: function(instance, method, args)
	{
		return function()
		{
			return method.apply(instance, args);
		}
	},
	
	
	
	_setMouseBlock: function(targetDIV)
	{
		
		
		var mouseBlock = this._mouseBlock;
		if (!targetDIV && !mouseBlock)
			return;
		if (!mouseBlock)
		{
			this._mouseBlock = mouseBlock = document.createElement('DIV');
			var style = mouseBlock.style;
			style.zIndex = 100000;
			style.position = 'absolute';
			style.background = 'white';
			style.filter = 'alpha(opacity:0)';
			style.opacity = 0.0;
		}
		if (targetDIV)
		{
			if (mouseBlock._targetDIV != targetDIV)
			{
				
				this._setMouseBlock();
				mouseBlock._targetDIV = targetDIV;
				targetDIV.insertBefore(mouseBlock, targetDIV.firstChild);
			}
			if (mouseBlock._w != targetDIV.offsetWidth)
				mouseBlock.style.width = (mouseBlock._w = targetDIV.offsetWidth) + 'px';
			if (mouseBlock._h != targetDIV.offsetHeight)
				mouseBlock.style.height = (mouseBlock._h = targetDIV.offsetHeight) + 'px';
			return;
		}
		if (!mouseBlock._targetDIV)
			return;
		mouseBlock._targetDIV = null;
		mouseBlock.parentNode.removeChild(mouseBlock);
	}
};
Infragistics._Utility.registerClass("Infragistics._Utility");

Infragistics.Utility = new Infragistics._Utility();
var $util = Infragistics.Utility;
$util.ensureBrowserInfo();

if ($util.IsIE8)
{
	Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element)
	{
		/// <param name="element" domElement="true"></param>
		/// <returns type="Sys.UI.Point"></returns>
		var e = Function._validateParams(arguments, [
        { name: "element", domElement: true }
    ]);
		if (e) throw e;

		if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0, 0);

		var offsetX = 0;
		var offsetY = 0;
		var previous = null;
		var previousStyle = null;
		var currentStyle = null;
		for (var parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent)
		{
			var tagName = parent.tagName;
			currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);

			if ((parent.offsetLeft || parent.offsetTop) &&
            !((tagName === "BODY") &&
            (!previousStyle || previousStyle.position !== "absolute")))
			{

				offsetX += parent.offsetLeft;
				offsetY += parent.offsetTop;
			}

			if (previous !== null && currentStyle)
			{
				if ((tagName !== "TABLE") && (tagName !== "TD") && (tagName !== "HTML"))
				{
					offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
					offsetY += parseInt(currentStyle.borderTopWidth) || 0;
				}
				if (tagName === "TABLE" &&
                (currentStyle.position === "relative" || currentStyle.position === "absolute"))
				{
					offsetX += parseInt(currentStyle.marginLeft) || 0;
					offsetY += parseInt(currentStyle.marginTop) || 0;
				}
			}
		}

		currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
		var elementPosition = currentStyle ? currentStyle.position : null;
		var elementPositioned = elementPosition && (elementPosition !== "static");
		if (!elementPosition || (elementPosition !== "absolute"))
		{
			for (var parent = element.parentNode; parent; parent = parent.parentNode)
			{
				tagName = parent.tagName;

				if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop))
				{

					offsetX -= (parent.scrollLeft || 0);
					offsetY -= (parent.scrollTop || 0);

					currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
					offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
					offsetY += parseInt(currentStyle.borderTopWidth) || 0;
				}
			}
		}

		return new Sys.UI.Point(offsetX, offsetY);
	}
}




var ig_ui_all = null; 
function ig_ui_timer(o, del)
{
	var all = ig_ui_all;
	var i, fn = all ? all._timerFn : null;
	
	if (typeof o != 'object')
		o = null;
	if (o)
	{
		if (!o._onTimer) return; 
		if (!all) ig_ui_all = all = new Array();
		i = all.length;
		while (i-- > 0) if (all[i] == o) break; 
		if (del)
		{
			if (i < 0) return;
			delete o._onTimer;
			delete all[i];
			o = null; 
			i = all.length;
			while (i-- > 0) if (all[i]) o = true; 
		}
		else
		{
			if (i < 0)
			{
				
				while (all[++i]);
				all[i] = o;
			}
			if (!fn) all._timerFn = fn = window.setInterval(ig_ui_timer, 200); 
		}
	}
	if (o) return;
	
	if (!del && fn) for (i = 0; i < all.length; i++)
	{
		o = all[i]; 
		if (o && o._onTimer)
		{
			if (!o._onTimer())
			{
				fn = null; 
				continue;
			}
			delete o._onTimer; 
			delete all[i];
		}
	}
	if (!fn) return; 
	window.clearInterval(fn); 
	delete all._timerFn;
	ig_ui_all = null;
}




$IG.EventArgs = function()
{
	/// <summary>Base class for object used as parameter while raising client events related to browser action.</summary>
	$IG.EventArgs.initializeBase(this);
	this._props = [null, 0];
}
$IG.EventArgs.prototype =
{
	get_browserEvent: function()
	{
		/// <summary>Gets reference to browser event.</summary>
		/// <returns type="Object" mayBeNull="true">Reference to browser event.</returns>
		return this._props[0];
	},
	dispose: function()
	{
		/// <summary>Disposes object.</summary>
		this._props[0] = null;
	}
}
$IG.EventArgs.registerClass('Infragistics.Web.UI.EventArgs', Sys.EventArgs);


$IG.PostBackEventArgs = function()
{
	/// <summary>Base class for object used as parameter while raising client events related to postback action.</summary>
	$IG.PostBackEventArgs.initializeBase(this);
}
$IG.PostBackEventArgs.prototype =
{
	
	get_postBack: function()
	{
		/// <summary>Gets postback flag.</summary>
		/// <returns type="Number">One of the following: 0 - do not trigger postback, 1 - trigger full postback, 2 - trigger async postback.</returns>
		return this._props[1];
	},
	
	set_postBack: function(val)
	{
		/// <summary>Sets postback flag.</summary>
		/// <param name="val" type="Number">One of the following: 0 - do not trigger postback, 1 - trigger full postback, 2 - trigger async postback.</param>
		this._props[1] = val;
	}
}
$IG.PostBackEventArgs.registerClass('Infragistics.Web.UI.PostBackEventArgs', $IG.EventArgs);


$IG.CancelEventArgs = function()
{
	/// <summary>Base class for object used as parameter while raising cancelable client events related to browser action.</summary>
	$IG.CancelEventArgs.initializeBase(this);
	this._cancel = false;
}
$IG.CancelEventArgs.prototype =
{
	
	get_cancel: function()
	{
		/// <summary>Checks if event was canceled.</summary>
		/// <returns type="Boolean">True: event was canceled.</returns>
		return this._cancel;
	},
	
	set_cancel: function(val)
	{
		/// <summary>Cancel event.</summary>
		/// <param name="val" type="Boolean">True: cancel event.</param>
		this._cancel = val;
	}
}
$IG.CancelEventArgs.registerClass('Infragistics.Web.UI.CancelEventArgs', $IG.EventArgs);


$IG.MoveEventArgs = function()
{
	/// <summary>Class for object used as parameter while raising Move events.</summary>
	$IG.MoveEventArgs.initializeBase(this);
}
$IG.MoveEventArgs.prototype =
{
	
	get_x: function()
	{
		/// <summary>Gets new left position.</summary>
		/// <returns type="Number">Left position in pixels.</returns>
		return this._props[2];
	},
	get_y: function()
	{
		/// <summary>Gets new top position.</summary>
		/// <returns type="Number">Top position in pixels.</returns>
		return this._props[3];
	},
	get_oldX: function()
	{
		/// <summary>Gets old left position.</summary>
		/// <returns type="Number">Left position in pixels.</returns>
		return this._props[4];
	},
	get_oldY: function()
	{
		/// <summary>Gets old top position.</summary>
		/// <returns type="Number">Top position in pixels.</returns>
		return this._props[5];
	},
	set_x: function(val)
	{
		/// <summary>Sets new left position.</summary>
		/// <param name="val" type="Number" integer="true">New left position in pixels.</param>
		this._props[2] = this._x = val;
	},
	set_y: function(val)
	{
		/// <summary>Sets new top position.</summary>
		/// <param name="val" type="Number" integer="true">New top position in pixels.</param>
		this._props[3] = this._y = val;
	}
}
$IG.MoveEventArgs.registerClass('Infragistics.Web.UI.MoveEventArgs', $IG.CancelEventArgs);





var _bugE = null;
function _bug4(v) { _bug3(v); _bugE.style.background = 'yellow'; }
function _bug3(v) { _bug("<br />" + v, true, "400px"); }
function _bug2(v) { _bug(v, true, "400px"); }
function _bug1(v) { _bug(v, false, "400px"); }
function _bug(v, a, l, t)
{
	if (!_bugE)
	{
		_bugE = document.createElement('DIV');
		document.body.insertBefore(_bugE, document.body.firstChild);
		var s = _bugE.style;
		s.position = 'absolute';
		s.zIndex = 10000;
		s.left = s.top = '0px';
		s.border = '1px dotted red';
		s.fontSize = '12px';
		s.fontFamily = 'courier';
	}
	if (l) _bugE.style.left = l;
	if (t) _bugE.style.top = t;
	_bugE.innerHTML = (a ? _bugE.innerHTML : '') + v;
}
//*/

/* END Infragistics.Web.UI.Scripts.5_igObjects.js */
/* START Infragistics.Web.UI.Scripts.7_igClientStateManager.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.ClientStateManagerBase = function(props)
{
    /// <summary>
    /// An object in charge of managing the ClientState of an Object.
    /// </summary>
    this._items = props;
    this._transactionList = null;
}

$IG.ClientStateManagerBase.prototype =
{	
    get_value:function(id)
    {
        /// <summary>
        /// Gets/Sets the value with the specified id.
        /// </summary>
    },
    set_value:function(id, value){},
    get_transactionList:function()
	{
	    /// <summary>
        /// Gets a json representation of the TranascationList
        /// </summary>
	    return this._transactionList.get_list();
	},
	
	get_clientState:function()
	{
	    /// <summary>
        /// Returns the original json ClientState that was passed down from the server.
        /// </summary>
	    return this._items;
	}
}

$IG.ClientStateManagerBase.registerClass('Infragistics.Web.UI.ClientStateManagerBase');



$IG.ObjectClientStateManager = function(props)
{
    /// <summary>
    /// A ClientStateManager that handles any object that derives from ObjectBase.
    /// </summary>
    $IG.ObjectClientStateManager.initializeBase(this, [props]);
    this._transactionList = new $IG.ObjectTransactionList();    
}

$IG.ObjectClientStateManager.prototype =
{	
    get_value:function(id, isBool)
    {
        var index = id[0];
        var defaultVal = id[1];
        
        var val = this._transactionList.get_value(index);
	    if(val == null)
	    {
	        val = this._items[0][index]
	        if(val == null)
	            val = defaultVal;
	    }
	    if(isBool)
	    {
	        if(val == 0)
	            val = false;
	        else if(val == 1)
	            val = true;
	    }
	    
	    return val;
    },
    
    get_clientOnlyValue:function(propName)
    {
        /// <summary>
        /// Returns the ClientOnlyProperty Value with the specified key.
        /// </summary>
        return this.__getExraProp(propName, "c");
    },
    
    get_occasionalProperty:function(propName)
    {
        /// <summary>
        /// Gets/Sets the OccasionalProperty value with the specified key.
        /// </summary>
        return this.__getExraProp(propName, "o");
    },
    
    set_occasionalProperty:function(propName, val)
    {
        var prop = this.__getExraProp(propName, "o");
         if(!$util.compare(prop, val))
            this._transactionList.add_transaction(val, propName);
        else
            this._transactionList.remove_transaction(propName);
    },
    
    __getExraProp:function(propName, key)
    {
        var item = this._items[1];
        if(item != null)
            item = item[key];
        return item ? item[propName] : null;
    },
    
    set_value:function(id, val)
    {
        var index = id[0];
        var defaultVal = id[1];
        
        if(typeof(val) == "boolean")
	        val = (val)?1:0;    
	    
	    var item = this._items[0][index];
        
        if(item == null)
            item =  defaultVal;
	    
        if(!$util.compare(item, val))
            this._transactionList.add_transaction( val, index);
        else
            this._transactionList.remove_transaction( index);
    },
    get_serverProps:function(vse)
	{
	    /// <summary>
        /// Returns a Server friendly array of ClientState.
        /// </summary>
	    if(vse)
	    {
	        var props = [];
	        props.push(this._items[0]);
	        if(this._items[1] != null && this._items[1]["o"] != null)
	            props.push(this._items[1]["o"]);    
	        return props;
	    }
	    else
	        return null;
	}
}

$IG.ObjectClientStateManager.registerClass('Infragistics.Web.UI.ObjectClientStateManager', $IG.ClientStateManagerBase);



$IG.CollectionClientStateManager = function(props)
{
    /// <summary>
    /// A ClientStateManager that handles any ObjectBase that belongs to an ObjectCollection.
    /// </summary>
    $IG.CollectionClientStateManager.initializeBase(this, [props]);   
    this._transactionList = new $IG.CollectionTransactionList(); 
}

$IG.CollectionClientStateManager.prototype =
{	 
    get_value:function(id, isBool, address)
    {
        var index = id[0];
        var defaultVal = id[1];
        
        var val = this._transactionList.get_value(address, index);
	    if(val == null)
	    {
	        val = this._items[address][0][index]
	        if(val == null)
	            val = defaultVal;
	    }
	    
	    if(isBool)
	    {
	        if(val == 0)
	            val = false;
	        else if(val == 1)
	            val = true;
	    }
	    return val;
    },
    
    get_clientOnlyValue:function(propName, adr)
    {
        /// <summary>
        /// Returns the ClientOnlyProperty Value with the specified key.
        /// </summary>
        return this.__getExraProp(propName, adr, "c");
    },
    
    get_occasionalProperty:function(propName, adr)
    {
        /// <summary>
        /// Gets/Sets the OccasionalProperty value with the specified key.
        /// </summary>
        var prop = this._transactionList.get_value(adr, propName);
        if(prop == null)
            prop = this.__getExraProp(propName, adr, "o");
        return prop;
    }, 
    
    set_occasionalProperty:function(propName, val, adr)
    {
        var prop = this.__getExraProp(propName, adr, "o");
         if(!$util.compare(prop, val))
            this._transactionList.add_transaction(adr, val, propName);
        else
            this._transactionList.remove_transaction(adr, propName);
    },
    
    __getExraProp:function(propName, adr, key)
    {
        var item = this._items[adr];
        if(item != null)
        {    item = item[1]
            if(item != null)
            {
                item = item[key];
            }
            if(item != null)
                return item[propName];
        }
        return null;
    },
    
    set_value:function(id, val, address)
    {
        var index = id[0];
        var defaultVal = id[1];
        
        if(typeof(val) == "boolean")
	        val = (val)?1:0;    
	    var item = this._items[address][0][index]
        
        if(item == null)
            item =  defaultVal;
            
        if(!$util.compare(item, val))
            this._transactionList.add_transaction(address, val, index);
        else
            this._transactionList.remove_transaction(address, index);
    }, 
    
    set_itemProps:function(adr, props)
    {
        /// <summary>
        /// Sets the original json ClientState from server to the ClientStateManager
        /// </summary>
        this._items[adr] = props;
    },
    
    get_serverProps:function(address)
	{
	    /// <summary>
        /// Returns a Server friendly array of ClientState.
        /// </summary>
        var props = [];
        var item = this._items[address];
        props.push(item[0]);
        if(item[1] != null && item[1]["o"] != null)
            props.push(item[1]["o"]);    
        return props;
	}
}

$IG.CollectionClientStateManager.registerClass('Infragistics.Web.UI.CollectionClientStateManager', $IG.ClientStateManagerBase);



$IG.TransactionListBase = function()
{
    /// <summary>
    /// An object in charge of managing any Transaction of ClientState.
    /// </summary>
    this._items = {};
    this._orderedList = {};
    this._count = 0; 
}
$IG.TransactionListBase.prototype =
{
    add_transaction:function()
    {
        /// <summary>
        /// Records a transaction in the Transaction list.
        /// </summary>
    },
    remove_transaction:function()
    {
        /// <summary>
        /// Removes a transaction from the Transaction list.
        /// </summary>
    },
    get_value:function()
    {
        /// <summary>
        /// Returns a value at the specified index, from the Transaction list.
        /// </summary>
    },
    get_list:function()
    {
        /// <summary>
        /// Returns a server friendly json object of the Transaction list.
        /// </summary>
        return this._orderedList;
    }  
}

$IG.TransactionListBase.registerClass('Infragistics.Web.UI.TransactionListBase');



$IG.ObjectTransactionList = function()
{
    /// <summary>
    /// A TransactionList targeted for ObjectBase objects.
    /// </summary>
    $IG.ObjectTransactionList.initializeBase(this);    
}
$IG.ObjectTransactionList.prototype =
{
    add_transaction:function(value, propsIndex)
    {
         if(this._items[propsIndex] != null && this._items[propsIndex].length > 0)
                delete this._orderedList[this._items[propsIndex][0]];
        this._items[propsIndex] = [this._count, value];
        this._orderedList[this._count] = [propsIndex, value];
        this._count++;
    },
    remove_transaction:function(propsIndex)
    {
        var item = this._items[propsIndex];
        if(item)
        {
            var index = item[0];
            delete this._orderedList[index];
            delete this._items[propsIndex];
        }
    }, 
    get_value:function(propsIndex)
    {
        var item = this._items[propsIndex];
        if(item != null)
            return item[1];
        return null;
    }
}

$IG.ObjectTransactionList.registerClass('Infragistics.Web.UI.ObjectTransactionList', $IG.TransactionListBase);



$IG.CollectionTransactionList = function()
{
    /// <summary>
    /// A Transaction list targeted for ObjectBase objects that belong to an ObjectCollection.
    /// </summary>
    $IG.CollectionTransactionList.initializeBase(this);    
}
$IG.CollectionTransactionList.prototype =
{
    add_transaction:function(adr, value, propsIndex)
    {
        var item = this._items[adr];
        if(!item)
            item = this._items[adr] = [];
        else
        {
            if(item[propsIndex] != null && item[propsIndex].length > 0)
                delete this._orderedList[item[propsIndex][0]];
        }
        
        item[propsIndex] = [this._count, value];
        this._orderedList[this._count] = [adr, propsIndex, value];
        this._count++;
    },
    
    remove_transaction:function(adr, propsIndex)
    {
        var item = this._items[adr]; 
        if(item != null)
        {
            item = item[propsIndex];
            if(item != null)
            {
                var index = item[0];
                delete this._orderedList[index];
                delete this._items[adr][propsIndex];
            }
        }
    }, 
    
    get_value:function(adr, propsIndex)
    {
        var item = this._items[adr];
        if(item != null)
        {
           item = item[propsIndex]
           if(item != null)
               return item[1];
        }
        return null;
    }
}

$IG.CollectionTransactionList.registerClass('Infragistics.Web.UI.CollectionTransactionList', $IG.TransactionListBase);



/* END Infragistics.Web.UI.Scripts.7_igClientStateManager.js */
/* START Infragistics.Web.UI.Scripts.8_igCallback.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.CallbackRequestHandler = function(manager, callbackObject, async)
{
	/// <summary>
	/// Handles a CallbackObject's request and resposne.
	/// </summary>
	var me = this;
	this._callbackObject = callbackObject;
	this._manager = manager;
	this._async = async;

	this._responseComplete = function()
	{
		if (me._request.readyState === 4 && me._request.status == "200")
		{
			window.clearTimeout(me._timerId);
			var response = me._request.responseText;
			if (response != null && response.length > 0)
			{
				var obj = Sys.Serialization.JavaScriptSerializer.deserialize(response)
				document.getElementById("__VIEWSTATE").value = obj[0];
				var eventValidation = document.getElementById("__EVENTVALIDATION");
				if (eventValidation)
					eventValidation.value = obj[1];
				me._manager._requestCompleted(me, me._callbackObject, obj[2]);
				for (var i in obj[3])
				{
					var item = obj[3][i];
					if (typeof item != 'object')
						continue;
					var id = item[0];
					var ctrlObj = $find(id);
					if (ctrlObj && ctrlObj.dispose)
						ctrlObj.dispose();
					if (item[1])
						var x = eval(item[1]);
				}
			}
			else
			{
				me._timedOut();
			}

			me._callbackObject = null;
			me._manager = null;
			me._request = null;
		}
		else if (me._request.readyState === 4)
			me._manager._requestFailed(me, me._callbackObject);		
	}
}

$IG.CallbackRequestHandler.prototype =
{
	execute: function()
	{
		/// <summary>
		/// Executes a XmlHttpRequest to the server
		/// </summary>
		this._request = null;
		if (typeof XMLHttpRequest != "undefined")
			this._request = new XMLHttpRequest();
		else if (typeof ActiveXObject != "undefined")
		{
			try { this._request = ig_createActiveXFromProgIDs(["MSXML2.XMLHTTP", "Microsoft.XMLHTTP"]); } catch (e) { }
		}

		if (this._request)
		{
			this._request.open(this._manager.getHttpVerb(), this._manager.getUrl(), this._async);
			this._request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			this._request.onreadystatechange = this._responseComplete;
			this._timerId = window.setTimeout(Function.createDelegate(this, this._timedOut), this._manager.getTimeout());
			this._request.send(this._getArgs());
		}
	},

	_getArgs: function()
	{
		var form = this._manager._getForm();
		if (!form) return;

		// Ensures that all Infragistics Controls have their PostData set.
		if (typeof ig_controls == 'object')
			for (var id in ig_controls)
				ig_controls[id]._onIgSubmit();

		var count = form.elements.length;
		var element;
		for (var i = 0; i < count; i++)
		{
			element = form.elements[i];
			if (element.tagName.toLowerCase() == "input" && (element.type == "hidden" || element.type == 'password' || element.type == 'text' || ((element.type == "checkbox" || element.type == 'radio') && element.checked)))
				this._addCallbackField(element.name, element.value);
			else if (element.tagName.toLowerCase() == "textarea")
				this._addCallbackField(element.name, element.value);
			else if (element.tagName.toLowerCase() == "select")
			{
				var o = element.options.length;
				while (o-- > 0)
				{
					if (element.options[o].selected)
						this._addCallbackField(element.name, element.options[o].value);
				}
			}
		}

		var args = this._postdata + "__EVENTTARGET=&__EVENTARGUMENT=&__IGCallback_" + this._manager._control._id + "=";
		args += Sys.Serialization.JavaScriptSerializer.serialize(this._callbackObject._getServerData());
		return args;
	},

	_addCallbackField: function(name, value)
	{
		if (!this._postdata)
			this._postdata = "";
		this._postdata += name + "=" + this._encodeValue(value) + "&";
	},

	_encodeValue: function(uri)
	{
		if (encodeURIComponent != null)
			return encodeURIComponent(uri);
		else
			return escape(parameter);
	},

	_timedOut: function()
	{
		this._manager._requestFailed(this, this._callbackObject, true);
	}
};
$IG.CallbackRequestHandler.registerClass("Infragistics.Web.UI.CallbackRequestHandler");



$IG.ControlCallbackManager = function(control)
{
	/// <summary>
	/// An object in charge of managin all Callbacks for an Infragistics.Web.UI.Control.
	/// </summary>
	this._control = control;
	this._httpVerb = "POST"
	this._async = true;
	this._timeout = 20000;
	this._url = this._getForm().action;

	this._currentRequests = 0;
	this._callbackQueue = [];
}

$IG.ControlCallbackManager.prototype =
{
	createCallbackObject: function(control)
	{
		/// <summary>
		/// Creates a new CallbackObject for the control.
		/// </summary>
		if (!control)
			control = this._control;
		return new $IG.CallbackObject(control);
	},

	execute: function(callback, queue, async)
	{
		/// <summary>
		/// Initiates an XmlHTTPRequest for the specified CallbackObject.
		/// </summary>
		if (callback)
		{
			if (async == null)
				async = this.getAsync();
			var requestHandler = new $IG.CallbackRequestHandler(this, callback, async);

			if (queue && this._currentRequests > 0)
				this._pushCallback(requestHandler)
			else
			{
				this._currentRequests++;
				requestHandler.execute();
			}
		}
	},

	_pushCallback: function(callback)
	{
		this._callbackQueue.push(callback);
	},

	_popCallback: function()
	{
		for (var i = 0; i < this._callbackQueue.length; i++)
		{
			var requestHandler = this._callbackQueue[i];
			if (requestHandler != null)
			{
				delete this._callbackQueue[i];
				this._currentRequests++;
				requestHandler.execute();
			}
		}
	},

	getAsync: function()
	{
		/// <summary>
		/// Get/Sets whether or not the Callback should be Async.
		/// The Default is true.
		/// </summary>
		return this._async;
	},
	setAsync: function(val) { return this._async; },

	getHttpVerb: function()
	{
		/// <summary>
		/// Get/Sets the HTTP Verb for the Callback.
		/// The Default is "Post"
		/// </summary>
		return this._httpVerb;
	},
	setHttpVerb: function(verb) { this._httpVerb = verb; },

	getUrl: function()
	{
		/// <summary>
		/// Get/Sets the url for the Callback. 
		/// The default is the current form's action.
		/// </summary>
		return this._url;
	},
	setUrl: function(url) { this._url = url; },

	getTimeout: function()
	{
		/// <summary>
		/// Get/Sets the amount of time (in ms) that is allowed to pass before failing the Callback.
		/// The default is 20000
		/// </summary>
		return this._timeout;
	},
	setTimeout: function(val) { this._timeout = val; },

	_getForm: function()
	{
		if (!this._form)
		{
			if (document.forms.length > 1)
			{
				for (var i = 0; i < document.forms.length; i++)
				{
					if (document.forms[i].method == "post" && document.forms[i].action != "")
					{
						this._form = document.forms[i];
						break;
					}
				}
				if (!this._form)
					this._form = document.forms[0];
			}
			else
				this._form = document.forms[0];
			if (!this._form)
				this._form = document.form1;
		}
		return this._form
	},

	_endRequest: function()
	{
		this._currentRequests--;
		if (this._callbackQueue.length > 0)
			this._popCallback();
	},

	setResponseComplete: function(func, context)
	{
		/// <summary>
		/// Sets the method that should be called when the Callback has returned from the server. 
		/// </summary>
		this._responseCompleteFunction = func;
		if (!context)
			context = this._control;
		this._responseCompleteContext = context;
	},

	_requestFailed: function(requestHandler, callbackObject, timedOut)
	{
		window.clearTimeout(requestHandler._timerId);
		if (requestHandler._request.readyState == 4)
			callbackObject._responseCompleteError(requestHandler._request, timedOut);
		this._endRequest();
		requestHandler._request.abort();
		requestHandler._request = null;
	},

	_requestCompleted: function(requestHandler, callbackObject, responseObject)
	{
		this._endRequest();
		this._recursiveResponseCompleted(callbackObject, responseObject, requestHandler._request);
	},

	_recursiveResponseCompleted: function(callbackObject, responseObject, browserResponseObject)
	{
		this._responseComplete(callbackObject, responseObject, browserResponseObject);
		for (var i = 0; i < callbackObject._childCallbacks.length; i++)
			this._recursiveResponseCompleted(callbackObject._childCallbacks[i], responseObject.children[i], browserResponseObject);
	},

	_responseComplete: function(callbackObject, responseObject, browserResponseObject)
	{
		if (!callbackObject._responseComplete(responseObject, browserResponseObject))
		{
			if (this._responseCompleteFunction)
				this._responseCompleteFunction.apply(this._responseCompleteContext, [callbackObject, responseObject, browserResponseObject]);
		}
		callbackObject.dispose();
	},

	dispose: function()
	{
		this._control = null;
		this._form = null;
		this._responseCompleteContext = null;
	}

};
$IG.ControlCallbackManager.registerClass("Infragistics.Web.UI.ControlCallbackManager");



$IG.CallbackObject = function(control)
{
	/// <summary>
	/// An object that contains information about a Callback that should be made to the server.
	/// </summary>
	this._control = control;
	this.serverContext = {};
	this.clientContext = {};
	this._childCallbacks = [];
}

$IG.CallbackObject.prototype =
{
	createCallbackObject: function(control)
	{
		/// <summary>
		/// Creates a child CallbackObject of the current CallbackObject
		/// </summary>
		if (!control)
			control = this._control;
		var callbackObject = new $IG.CallbackObject(control);
		this._childCallbacks.push(callbackObject);
		return callbackObject;
	},

	getId: function()
	{
		/// <summary>
		/// Returns the id of the control that is attached to the callback.
		/// </summary>
		return this._control._id;
	},

	getServerContext: function()
	{
		/// <summary>
		/// Returns the JSON object that will be used to pass infomration to the server about the specific Callback
		/// </summary>    
		return this.serverContext;
	},
	getClientContext: function()
	{
		/// <summary>
		/// Returns the JSON object that will be used to pass infomration to the ResponseComplete event of the Callback.
		/// </summary>    
		return this.clientContext;
	},

	setResponseComplete: function(func, context, funcError)
	{
		/// <summary>
		/// Sets an event listener for the ResponseComplete event of the CallbackObject
		/// </summary>    
		this._responseCompleteFunction = func;
		this._responseCompleteErrorFunction = funcError;
		if (!context)
			context = this._control;
		this._responseCompleteContext = context;
	},

	_responseComplete: function(responseObj, browserResponseObject)
	{
		if (this._responseCompleteFunction)
		{
			this._responseCompleteFunction.apply(this._responseCompleteContext, [this, responseObj, browserResponseObject]);
			return true;
		}
		else if (typeof (this._control.__responseCompleteInternal) != "undefined")
		{
			this._control.__responseCompleteInternal(this, responseObj, browserResponseObject);
			return true;
		}
		return false;
	},

	_responseCompleteError: function(responseObj, timedOut)
	{
		if (this._responseCompleteErrorFunction)
		{
			this._responseCompleteErrorFunction.apply(this._responseCompleteContext, [this, responseObj, timedOut]);
			return true;
		}
		else if (typeof (this._control._responseCompleteError) != "undefined")
		{
			this._control._responseCompleteError(this, responseObj, timedOut);
			return true;
		}
		return false;
	},

	_getServerData: function()
	{
		var data = { id: this._control.get_uniqueID(), context: this.serverContext, children: [] };
		for (var i = 0; i < this._childCallbacks.length; i++)
			data.children[i] = this._childCallbacks[i]._getServerData();
		return data;
	},

	dispose: function()
	{
		this._control = null;
		this.serverContext = null;
		this.clientContext = null;
	}

};
$IG.CallbackObject.registerClass("Infragistics.Web.UI.CallbackObject");


/* END Infragistics.Web.UI.Scripts.8_igCallback.js */
/* START Infragistics.Web.UI.Scripts.9_igPropertyManagers.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.CollectionsManager = function(control, collections)
{
	///<summary>
	/// For Internal Use Only.
	/// An object that manages all ObjectCollections of an Infragistics.Web.UI.Control.
	///</summary>
	this._control = control;
	this._collections = collections;
	this._count = collections ? collections.length : 0;
	this._itemCollections = [];
	this._clientStateManagers = [];
	this._items = [];
	this._itemCount = [];
	this._uiBehaviors = []; 
	for(var i = 0; i < this._count; i++)
	{
		this._itemCount[i] = 0;
		this._items[i] = {};
		this._clientStateManagers[i] = new $IG.CollectionClientStateManager(collections[i]);       
	}
}

$IG.CollectionsManager.prototype =
{
	get_collection: function(index)
	{
		///<summary>
		/// Gets the ObjectCollection at the specified index.
		///</summary>    
		return this._collections ? this._collections[index] : null;
	},

	get_count: function()
	{
		///<summary>
		/// Gets the amount of Collections that belong to the control.
		///</summary>    
		return this._count;
	},

	get_allTransactionLists: function()
	{
		///<summary>
		/// Returns all json Transaction Lists of all collections in a server friendly format.
		///</summary>    
		var state = [];
		for (var i = 0; i < this._count; i++)
			state[i] = this.get_transactionList(i);
		return state;
	},

	get_transactionList: function(index)
	{
		///<summary>
		/// Returns the json Transaction List of the collection at the specified index.
		///</summary>    
		return this._clientStateManagers[index].get_transactionList()
	},

	register_collection: function(index, collectionType, noBehavior)
	{
		///<summary>
		/// Registers a collection with the CollectionManager.
		///</summary>    
		var collection = this._itemCollections[index] = new collectionType(this._control, this._clientStateManagers[index], index, this);
		return collection;
	},

	registerUIBehaviors: function(collection)
	{
		///<summary>
		/// Creates a UIBehaviors object for the specified collection. 
		///</summary>    
		var index = collection._index;
		this._uiBehaviors[index] = new $IG.UIBehaviorsObject(this._control, collection)
	},

	getItemCount: function(index)
	{
		///<summary>
		/// Retunrs the number of items in the collection at the specified index. 
		///</summary>    
		return this._itemCount[index];
	},

	getUIBehaviorsObj: function(index)
	{
		///<summary>
		/// Returns the UIBehaviors object of the collection at the specified index.
		///</summary>    
		return this._uiBehaviors[index];
	},

	addObject: function(index, adr, object)
	{
		///<summary>
		/// Adds the specified item to the collection at the specified index.
		///</summary>    
		this._items[index][adr] = object;
		var uiBehaviorObj = this._uiBehaviors[index];
		if (uiBehaviorObj)
		{
			if (object._getFlags().getSelected())
				uiBehaviorObj.select(object);
		}
		this._itemCount[index]++;
	},

	getObject: function(index, adr)
	{
		///<summary>
		/// Returns the item at the specified address from the collection at the specified index.
		///</summary>    
		return this._items[index][adr];
	},

	getServerCollection: function(vse)
	{
		///<summary>
		/// Returns a server friendly array of all ClientState for all collections.
		///</summary>    
		if (vse)
		{
			var collections = [];
			var index = this._collections ? this._collections.length : 0;
			while (index-- > 0)
			{
				collections[index] = {};
				var csm = this._clientStateManagers[index];
				for (var adr in this._collections[index])
					collections[index][adr] = csm.get_serverProps(adr);
			}
			return collections;
		}
		return null;
	},

	dispose: function()
	{
		///<summary>
		/// Disposes of all objects created by the Collection manager.
		///</summary>
		if (!this._itemCollections)
			return;
		var count = this._itemCollections.length;
		for (var i = 0; i < count; i++)
		{
			if (this._uiBehaviors[i])
				this._uiBehaviors[i].dispose();
			this._itemCollections[i].dispose();
			var item = this._items[i]
			for (var adr in item)
			{
				
				
				
				var obj = item[adr];
				if (obj && obj.dispose)
					obj.dispose();
			}
		}
		this._control = null;
		this._collections = null;
		this._itemCollections = null;
		this._clientStateManagers = null;
		this._items = null;
		this._itemCount = null;
		this._uiBehaviors = null;
	}
};

$IG.CollectionsManager.registerClass('Infragistics.Web.UI.CollectionsManager');




$IG.ObjectsManager = function(control, objects)
{
    ///<summary>
    /// Manages all objects for a control. 
    ///</summary>    
	this._objects = objects;
	this._control = control;
	this._clientStateManagers = [];
	this._objectCollection = [];
	this._count = objects ? objects.length : 0;
}

$IG.ObjectsManager.prototype =
{
	get_objectProps: function(index)
	{
		///<summary>
		/// Returns the json ClientState from the server of the object at the specified index.
		///</summary>    
		return this._objects ? this._objects[index] : null;
	},

	get_count: function()
	{
		///<summary>
		/// Returns the amount of objects on the control. 
		///</summary>    
		return this._count;
	},

	register_object: function(index, object)
	{
		///<summary>
		/// Registers the object at the specified index with the ObjectManager.
		///</summary>    
		var objects = this._objects;
		if (!objects || !object)
			return;
		this._clientStateManagers[index] = object._csm;
		this._objectCollection[index] = (object);
		var objectProps = objects[index];

		objectProps.objectsManager = new $IG.ObjectsManager(object, objectProps[1]);
		objectProps.collectionsManager = new $IG.CollectionsManager(object, objectProps[2]);
		objectProps.registered = true;

		object._createObjects(objectProps.objectsManager);
		object._createCollections(objectProps.collectionsManager);
	},

	get_object: function(index)
	{
		///<summary>
		/// Returns the object at the specifeid index.
		///</summary>    
		return this._objectCollection[index];
	},

	get_allTransactionLists: function()
	{
		///<summary>
		/// Returns all json Transaction Lists in a Server Friendly format for all objects in the object manager.
		///</summary>    
		var state = [];
		for (var i = 0; i < this._count; i++)
			state[i] = this.get_transactionList(i);
		return state;
	},

	get_csm: function(index)
	{
		///<summary>
		/// Returns the ClientStateManager for the object at the specified index. 
		///</summary>    
		return this._clientStateManagers[index];
	},

	getServerObjects: function(vse)
	{
		///<summary>
		/// Returns the ClientState for all objects in a Server friendly format.
		///</summary>    
		var objects = [], index = this._objects ? this._objects.length : 0;
		while (index-- > 0)
		{
			var object = this._objects[index];
			if (object.registered)
			{
				var csm = this._clientStateManagers[index];
				var state = [[csm.get_serverProps(vse), object.objectsManager.getServerObjects(vse), object.collectionsManager.getServerCollection(vse)]];
				state[1] = [csm.get_transactionList(), object.collectionsManager.get_allTransactionLists()];
				state[2] = this._objectCollection[index]._saveAdditionalClientState();
				objects[index] = state;
			}
			else
			{
				

				
				objects[index] = this._getUnRegisteredServerObjects(object);
			}
		}
		return objects;
	},

	_getUnRegisteredServerObjects: function(obj)
	{
		var returnObjects = [];
		var objs = obj[1];
		for (var i = 0; objs && i < objs.length; i++)
		{
			returnObjects.push(this._getUnRegisteredServerObjects(objs[i]));
		}
		return [[obj[0], returnObjects, obj[2]], [null, null], [null]];
	},

	get_transactionList: function(index)
	{
		///<summary>
		/// Returns the json TransactionList for the Object at the specified index.
		///</summary>    
		var csm = this._clientStateManagers[index];
		if (csm)
			return csm.get_transactionList();
		return null;
	},

	dispose: function()
	{
		///<summary>
		/// Disposes of all objects created by the ObjectManager.
		///</summary>
		var items = this._objectCollection;
		if (!items)
			return;
		var i = items.length;
		while (i-- > 0)
		{
			if (items[i] && (!Sys.Component.isInstanceOfType(items[i]) || !Sys.Application._disposing))
				items[i].dispose();
		}
		this._control = null;
		this._objects = null;
		this._clientStateManagers = null;
		this._objectCollection = null;
	}

};

$IG.ObjectsManager.registerClass('Infragistics.Web.UI.ObjectsManager');

/* END Infragistics.Web.UI.Scripts.9_igPropertyManagers.js */
/* START Infragistics.Web.UI.ListControls.WebDropDown.js.igDropDown.js */
Type.registerNamespace('Infragistics.Web.UI');

$IG.WebDropDown = function(element)
{
    /// <summary>
    /// the WebDropDown is an AJAX-enabled control ASP.NET consisting of an input box and a dropdown list of items
    /// its main functionalities include auto-complete/suggest, selection, value editing, binding to many
    /// data sources out of the box, templating, and a rich client-side and server-side API
    /// </summary>
    $IG.WebDropDown.initializeBase(this, [element]);
}

$IG.WebDropDown.prototype =
{

    _thisType: 'dropDown',

    
    initialize: function() {
        $IG.WebDropDown.callBaseMethod(this, 'initialize');

        // we use the shared DropDown behavior for the dropdown control as well
        this.behavior = new $IG.DropDownBehavior(this._elements["Target"], this.get_dropDownIsChild());
        this.behavior.set_targetContainer(this._elements["DropDown"]);
        
       // this.resizeBehavior = new $IG.ResizeBehavior(this._elements["DropDown"]);
        
        this.behavior.set_position(this.get_dropDownOrientation());
        if (this.get_dropDownOrientation() != $IG.DropDownPopupPosition.Default) {
            this.behavior.set_enableAutomaticPositioning(false);
        }

        this.behavior.set_enableAnimations(this.get_enableAnimations());
        this.behavior.set_animationDurationMs(this.get_dropDownAnimationDuration());
        this.behavior.set_animationType(this.get_dropDownAnimationType());

        // set offsetX and offsetY if any
        if (this.get_offsetX() != 0)
        {
            this.behavior.set_offsetX(this.get_offsetX());
        }
        
        if (this.get_offsetY() != 0)
        {
            this.behavior.set_offsetY(this.get_offsetY());
        }
        // set dropdown container height
        // if (this.get_dropDownContainerHeight() && parseInt(this.get_dropDownContainerHeight()) > 0)
        // {
        //     var height =  parseInt(this.get_dropDownContainerHeight());
        //     $util.setAbsoluteHeight(this._elements["DropDown"], height);
        // }
        
        // this is used in case the EditorID property is set on the server-side control, and we want to use
        // out of the box Infragistics editors such as mask editors, percentage editors, etc
        // in that case we just set the reference of the editor to be our target and it is positioned correctly once the
        // dropdown behavior is initialized
        // we assume all editors we want to link to, are presented by HTML INPUT components
        if (this.get_editorID() !=null)
        {
            
            var editor = $get(this.get_editorID());
            if (editor!=null && editor.nodeName=="INPUT")
            {
               editor.className = this._elements["Input"].className;
                this._elements["Input"].parentNode.replaceChild(editor, this._elements["Input"]);
              //  this._elements["Input"].parentNode.appendChild(editor);
                this._elements["Input"] = editor; 
                
                var inputCustomDelegate = Function.createDelegate(this, this._onKeyupHandler);
                $addHandler(this._elements["Input"], 'keyup', inputCustomDelegate);
            }
            
            
        }
        
        // client cache can be configured and means that once we do a auto-suggest postback to fetch results, they are 
        // cached on the client, so if the user subsequently types the same string, we don't go to the server again
        this._clientCache = [];
        //this._activeItem = this.get_activeItemIndex() == -1 ? null : this.get_items()._getObjectByIndex(this.get_activeItemIndex());
        this._activeItem = this.get_activeItemIndex() == -1 ? null : this.get_items().getItem(this.get_activeItemIndex());

        // attach the delegate for selection
        var dropDownList = this._elements["List"];
        var selectDelegate = Function.createDelegate(this, this._select);
        $addHandler(dropDownList, 'mousedown', selectDelegate);

        var blurDelegate = Function.createDelegate(this, this._onBlurHandler);
        $addHandler(this._elements["Input"], 'blur', blurDelegate);

        var focusDelegate = Function.createDelegate(this, this._onFocusHandler);
        $addHandler(this._elements["Input"], 'focus', focusDelegate);
        
        var inputMouseOutDelegate = Function.createDelegate(this, this._onInputMouseOutHandler);
        $addHandler(this._elements["Input"], 'mouseout', inputMouseOutDelegate);
        
        var inputMouseOverDelegate = Function.createDelegate(this, this._onInputMouseOverHandler);
        $addHandler(this._elements["Input"], 'mouseover', inputMouseOverDelegate);

        var mouseOver = Function.createDelegate(this, this._mouseOverForBlur);
        $addHandler(this._elements["DropDown"], 'mouseover', mouseOver);
        
        var pasteHandler = Function.createDelegate(this, this._onPasteHandler);
        $addHandler(this._elements["Input"], 'paste', pasteHandler);
        
        var cutHandler = Function.createDelegate(this, this._onCutHandler);
        $addHandler(this._elements["Input"], 'cut', cutHandler);
        
        var changeHandler = Function.createDelegate(this, this._onChangeHandler);
        $addHandler(this._elements["Input"], 'change', changeHandler);
        
        // we have an option to show / hide the button next to the input box
        // if it is hidden we shouldn't attach any event handlers
        if (this.get_showDropDownButton())
        {
            $addHandler(this._elements["Button"], 'mouseover', mouseOver);
            $addHandler(this._elements["ButtonImage"], 'mouseover', mouseOver);
        }

        var mouseOut = Function.createDelegate(this, this._mouseOutForBlur);
        $addHandler(this._elements["DropDown"], 'mouseout', mouseOut);
        
        
        if (this.get_showDropDownButton())
        {
            $addHandler(this._elements["Button"], 'mouseout', mouseOut);
            $addHandler(this._elements["ButtonImage"], 'mouseout', mouseOut);
        }

        // we listen to browser scroll events for the LoadOnDemand feature - we check if the
        // current scrollTop value has reached a certain treshold (i.e. if the scrollbar is at the end of the container
        // and then invoke the load on demand postback
        if (this.get_enableLoadOnDemand()) {
            var loadOnDemandDelegate = Function.createDelegate(this, this._scrollingLoadOnDemand);
            $addHandler(this._elements["DropDownContents"], 'scroll', loadOnDemandDelegate);
        }

        // pager event
        if (this.get_enablePaging()) {
            //var pagerDelegate = Function.createDelegate(this, this._onPagerMoreResults);
            //$addHandler(this._elements["PagerLink"], 'mousedown', pagerDelegate);

            if (this.get_pagerMode() == $IG.DropDownPagerMode.NextPrevious)
            {
                var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                $addHandler(this._elements["PagerPrevLink"], 'mousedown', pagerPrevDelegate);

                var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                $addHandler(this._elements["PagerNextLink"], 'mousedown', pagerNextDelegate);
                
            } else if(this.get_pagerMode() == $IG.DropDownPagerMode.Numeric || this.get_pagerMode() == $IG.DropDownPagerMode.NumericFirstLast)
            {
                var numberDelegate = Function.createDelegate(this, this._onPagerNumberResults);
               // for (var i=0; i<this.get_pageCount(); i++)
               // {
               //     $addHandler(this._elements["PagerNumberLink"], 'mousedown', numberDelegate);
               // }
               // attach the handler on the pager itself
               $addHandler(this._elements["Pager"], 'mousedown', numberDelegate);
               
               // check if we have quick pages
               if (this._elements["PagerQPPrevLink"])
               {
                    var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                    $addHandler(this._elements["PagerQPPrevLink"], 'mousedown', pagerPrevDelegate);
               }
               
               if (this._elements["PagerQPNextLink"])
               {
                    var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                    $addHandler(this._elements["PagerQPNextLink"], 'mousedown', pagerNextDelegate);
               }
               
            } else if (this.get_pagerMode() == $IG.DropDownPagerMode.NextPreviousFirstLast)
            {
                var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                $addHandler(this._elements["PagerPrevLink"], 'mousedown', pagerPrevDelegate);

                var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                $addHandler(this._elements["PagerNextLink"], 'mousedown', pagerNextDelegate);
                
                var pagerFirstDelegate = Function.createDelegate(this, this._onPagerFirstResults);
                $addHandler(this._elements["PagerFirstLink"], 'mousedown', pagerFirstDelegate);

                var pagerLastDelegate = Function.createDelegate(this, this._onPagerLastResults);
                $addHandler(this._elements["PagerLastLink"], 'mousedown', pagerLastDelegate);
            }
        }
        
        // we need to detach the span element displaying the loading message and display it on top of the 
        // list, so that it doesn't take any space for the items, and we don't have unwanted visual effects
        // i mean the list popping up and down to accomodate the loading message element
        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__detachLoadingItemsMessage();
        }

        // attach the delegate for keyboard navigation
        var navDelegate = Function.createDelegate(this, this._navigateItems);
        $addHandler(dropDownList, 'keydown', navDelegate);

        var mouseOverDelegate = Function.createDelegate(this, this._onMouseoverListHandler);
        $addHandler(dropDownList, 'mouseover', mouseOverDelegate);
        
        var mouseOutDelegate = Function.createDelegate(this, this._onMouseoutListHandler);
        $addHandler(dropDownList, 'mouseout', mouseOutDelegate);
        
        // behavior.init();
        // var valueDisplay = this._elements["Input"];
        // $addHandler(valueDisplay, "keydown", Function.createDelegate(this, this._onInputKeyDownHandler) );

        this.behavior._setAnimationEndListener(this);

        // initialize the dropdown behavior
        this.behavior.init();
        
        if (this.get_valueListMaxHeight() > 0)
        {
            this.behavior.set_containerMaxHeight(this.get_valueListMaxHeight(), this._elements["List"], this._elements["DropDownContents"]);
        }
        
        if (this.get_enableDropDownContainerAutoWidth())
        {
            var height = this.get_valueListMaxHeight() > 0 ? this.get_valueListMaxHeight() : this.get_dropDownContainerHeight();
            this.behavior.set_containerAutoWidth(this._elements["List"], this._elements["DropDown"], height);
        }

        // restore value
        this._elements["Input"].value = this.get_currentValue();
        this.set_hoverItemIndex(-1);
        //this._elements["Input"].focus();

        // manage max drop down height property
      //  this._adjustMaxHeight();

        // fire the initialize client-side event
        this._raiseClientEvent('Initialize', 'DropDown', null, null);
        
        this.__blurFlag = true;
        
        this.__clearTextNodesFromUL();
        
        if (this.get_enableAutoFiltering() != $IG.DropDownAutoFiltering.Server)
        {
            this.__clientFilteringItemCount = this.get_items().getLength();
            
            for (i=0;i<this.get_items().getLength();i++)
            {
                // dummy, serves just to create every item, since lazy loading & client side filtering require some special attention
                this.get_items().getItem(i);
            }
        }
                    
        this.__keydowncount=0;
    },
    
    __clearTextNodesFromUL: function()
    {
       // clear text nodes: Firefox and other browsers consider text as a node, so the UL.childNodes.length is wrong !
        var initialLength = this._elements["List"].childNodes.length;
        for (i=0;i<initialLength;i++)
        {
            if (this._elements["List"].childNodes[i] && this._elements["List"].childNodes[i].tagName!='LI')
            {
                this._elements["List"].removeChild(this._elements["List"].childNodes[i]);
            }
        } 
    },

    // add global control event handlers 
    _addHandlers: function() {
        $IG.WebDropDown.callBaseMethod(this, '_addHandlers');
        this._registerHandlers([ "keydown", "keyup", "mouseup", "mousedown", "keypress", "mouseover", "mouseout"]);
    },

    dispose: function() {
    
        // very important - make sure we don't have any memory leaks 
        $clearHandlers(this.get_element());
        $IG.WebDropDown.callBaseMethod(this, 'dispose');
    },

    // if the ValueListMaxHeight property is set on the server-side control, we need to calculate whether to set explicit height style or not
    _adjustMaxHeight: function() {
    
        // do some hacks in order to circumvent flickering issues 
      //  this._elements["DropDownContents"].style.position = 'absolute';
      //  this._elements["DropDownContents"].style.left = -10000;
      //  this._elements["DropDownContents"].style.top = -10000;
      //  this._elements["DropDownContents"].style.display='';
      //  this._elements["DropDownContents"].style.visibility = 'visible';
        
      //  this._elements["List"].style.display='';
      //  this._elements["List"].style.visibility = 'visible';
        
        if (this.get_valueListMaxHeight() > 0) {
            if (this._elements["List"].offsetHeight > this.get_valueListMaxHeight()) {
                this._elements["DropDownContents"].style.height = this.get_valueListMaxHeight() + 'px';

            } else {

                this._elements["DropDownContents"].style.height = '';
            }
        }
        
      //  this._elements["DropDownContents"].style.position = '';
      //  this._elements["DropDownContents"].style.left = 0;
      //  this._elements["DropDownContents"].style.top =  0;
      //  this._elements["DropDownContents"].style.display='none';
      //  this._elements["DropDownContents"].style.visibility = 'hidden';
        
    },

    // this function allows a developer to programatically populate the dropdown with items, based on certain filtering criteria
    loadItems: function(text) {
        this._setLoadItemsText(text);
        var cbo = this._callbackManager.createCallbackObject();
        cbo.serverContext.type = "itemsRequested";
        this.__manualLoadItems=true;
        this.set_valueBeforeFilter(this.get_currentValue());
        // cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(this._clientStateManager.get_transactionList());

        this._callbackManager.execute(cbo, true);

    },

    // reset cache
    invalidateCache: function() {

        this._clientCache = [];
    },

    // opens the dropdown container and fires the associated events 
    openDropDown: function() {

        if (this.get_displayMode() != $IG.DropDownDisplayMode.ReadOnly) {
        
            if (this.behavior._dropDownAnimation && this.behavior._dropDownAnimation.get_isAnimating() && this.__isButtonClick)
            {
                this.__isButtonClick=false;
                this.behavior._dropDownAnimation.stop();
                this.behavior._dropDownAnimation.onEnd();
                this.closeDropDown();
                return;
            }
            
            var args = this._raiseClientEvent('DropDownOpening', 'DropDownContainer', null, null);
            var cancel = args ? args.get_cancel() : false;
            if (!cancel) {
            
                this.__willDoInternalFocus=true;
                this.behavior.set_visible(true);
                //this._adjustMaxHeight();
                
                if (!this.get_enableAnimations())
                {
                    this._raiseClientEvent('DropDownOpened', 'DropDownContainer', null, null);
                    
                } else 
                {
                    // will be handled in _onAnimationEnd
                    this.__isOpening = true;
                }
            }

        }
    },

    // closes the dropdown container and fires the associated events
    closeDropDown: function() {
    
                
        if (this.behavior._dropDownAnimation && this.behavior._dropDownAnimation.get_isAnimating())
        {
            this.behavior._dropDownAnimation.stop();
            this.behavior._dropDownAnimation.onEnd();
            this.openDropDown();
            return;
        }

        var args = this._raiseClientEvent('DropDownClosing', 'DropDownContainer', null, null);
        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {

            this.behavior.set_visible(false);

            if (!this.get_enableAnimations())
            {
                this._raiseClientEvent('DropDownClosed', 'DropDownContainer', null, null);
                
            } else {
                // will be handled in _onAnimationEnd
                this.__isClosing = true;
            }
        }
    },

    // overriden, called at initialization
    _createItem: function(element, adr) {
        this._itemCollection._addObject($IG.DropDownItem, element, adr);
    },
    
    // returns a reference to the current active item, if any
    get_activeItem: function()
    {
        return this._activeItem;
    },
    
    set_activeItem: function(item, cancelEvents)
    {
        var args = null;
        
        if (!cancelEvents) 
        {
            args = this._raiseClientEvent('ActivationChanging', 'DropDownActivation', null, null, item, this._activeItem);
        }

        var cancel = args ? args.get_cancel() : false;
        
        var oldActiveItem=null;
        
        if (!cancel || cancelEvents) {
                            
            if (this._activeItem)
            {
                this._activeItem.inactivate();
                oldActiveItem = this._activeItem;
                
            } else if (this.get_activeItemIndex() != -1)
            {
                // look up active item
               // var currentActiveItem = this.get_items()._getObjectByIndex(this.get_activeItemIndex());
               var currentActiveItem = this.get_items().getItem(this.get_activeItemIndex());
                if (currentActiveItem!=null)
                {
                    currentActiveItem.inactivate();
                    oldActiveItem = currentActiveItem;
                }
            }
            
            item.activate();
            this.set_activeItemIndex(item.get_index());
            this._activeItem = item;
       
            if (!cancelEvents) 
            {
                this._raiseClientEvent('ActivationChanged', 'DropDownActivation', null, null, item, oldActiveItem);
            }
       }
    },

    // this is the text -  filtering criteria , with which the load items postback was initiated (see loadItems)
    _setLoadItemsText: function(text) {
        this._set_value($IG.DropDownProps.LoadItemsText, text);
    },

    // overriden, called by Aikido automatically at initialization
    _setupCollections: function() {
        this._itemCollection = this._collectionsManager.register_collection(0, $IG.DropDownItemCollection);
        this._collectionsManager.registerUIBehaviors(this._itemCollection);
    },

    //_createItem:function(element, adr)
    //{
    //    this._itemCollection._addObject($IG.DropDownItem, element, adr);
    // },


    

    get_items: function() {
        /// <summary>
        /// The collection of DropDownItem in the WebDropDown.
        /// </summary>
        return this._itemCollection;
    },

    /// get item based on selectedItemIndex - this should be used only with single item selection
    get_selectedItem: function() {
        if (this.get_selectedItemIndex() < 0)
            return null;
        else
            //return this.get_items()._items[this.get_selectedItemIndex()];
            return this.get_items().getItem(this.get_selectedItemIndex());
    },
    
    __createSelectedItems: function()
    {
        if (this.get_enableMultipleSelection()) {
            var results = [];
            var count = 0;

            for (i = 0; i < this.get_items().getLength(); i++) {
                //if (this.get_items()._items[i].get_selected()) {
                //    results[count] = this.get_items()._items[i];
                if (this.get_items().getItem(i).get_selected()) {
                    results[count] = this.get_items().getItem(i);
                    count++;
                }
            }

            this.__selectedItemsArray = results;

        } else {
            this.__selectedItemsArray = [this.get_selectedItem()];
        }    
    },

    /// get an array of selected items, if multiple selection is enabled
    /// this is done by iterating through all items and checking if the "selected" property is enabled
    get_selectedItems: function() {
    
        
        if (this.get_enableMultipleSelection()) {
            var results = [];
            var count = 0;

            for (i = 0; i < this.get_items().getLength(); i++) {
               // if (this.get_items()._items[i].get_selected()) {
               //     results[count] = this.get_items()._items[i];
               if (this.get_items().getItem(i).get_selected()) {
                    results[count] = this.get_items().getItem(i);
                    count++;
                }
            }
            return results;

        } else {
            return this.get_selectedItem() == null ? [] : [this.get_selectedItem()];
        }
        
        //return this.__selectedItemsArray;
    },

    set_valueBeforeFilter: function(val) {
        this.__valueBeforeFilter = val;
    },

    get_valueBeforeFilter: function() {
        return this.__valueBeforeFilter;
    },

    get_closeDropDownOnSelect: function() {
        ///<summary>
        /// if the dropdown is opened, and we select an item, the dropdown container will be automatically closed
        /// if this property is enabled
        ///</summary>
        return this._get_value($IG.DropDownProps.CloseDropDownOnSelect);
    },

    set_closeDropDownOnSelect: function(closeDropDownOnSelect) {

        return this._set_value($IG.DropDownProps.CloseDropDownOnSelect, closeDropDownOnSelect);
    },

    /// <summary>
    /// the animation duration in milliseconds of the dropdown container 
    /// </summary>
    get_dropDownAnimationDuration: function() {
        return this._get_value($IG.DropDownProps.DropDownAnimationDuration);
    },

    /// <summary>
    /// orientation of the dropdown container relative to its target (input box)
    /// </summary>
    get_dropDownOrientation: function() {
        return this._get_value($IG.DropDownProps.DropDownOrientation);
    },
    
    get_dropDownIsChild: function() {
        return this._get_value($IG.DropDownProps.DropDownIsChild);
    },
    
    
    /// <summary>
    /// enables caching filtering results on the client, for that purpose a hashtable is used where the key is the search string
    /// </summary>
    get_enableCachingOnClient: function() {
    
        return this._get_value($IG.DropDownProps.EnableCachingOnClient);
    },
    
    /// <summary>
    /// enables caching filtering results on the client, for that purpose a hashtable is used where the key is the search string
    /// </summary>
    get_enableCustomValues: function() {
    
        return this._get_value($IG.DropDownProps.EnableCustomValues);
    },
    
    /// <summary>
    /// enables caching filtering results on the client, for that purpose a hashtable is used where the key is the search string
    /// </summary>
    get_enableMarkingMatchedText: function() {
    
        return this._get_value($IG.DropDownProps.EnableMarkingMatchedText);
    },
    
    get_enableDropDownContainerAutoWidth: function() {
    
        return this._get_value($IG.DropDownProps.EnableDropDownAutoWidth);
    },
    
    /// <summary>
    /// editorID is the client side ID of the editor control, if we have associated any Infragistics built-in editors and want to 
    /// use them in place of the vanilla input box
    /// </summary>
    get_editorID: function() {
    
        return this._get_value($IG.DropDownProps.EditorID);
    },

    /// <summary>
    /// if this property is enabled, when we type text in the dropdown input box, once a match is made, it will be automatically completed 
    /// and the remaining text will be highlighted
    /// </summary>
    get_enableAutoCompleteFirstMatch: function() {
        return this._get_value($IG.DropDownProps.EnableAutoCompleteFirstMatch);
    },

    set_enableAutoCompleteFirstMatch: function(autoComplete) {
        return this._set_value($IG.DropDownProps.EnableAutoCompleteFirstMatch, autoComplete);
    },

    /// <summary>
    /// if the control loses focus, and the dropdown container is opened, it will be automatically closed
    /// </summary>
    get_enableClosingDropDownOnBlur: function() {
        return this._get_value($IG.DropDownProps.EnableClosingDropDownOnBlur);
    },

    set_enableClosingDropDownOnBlur: function(close) {
        return this._set_value($IG.DropDownProps.EnableClosingDropDownOnBlur, close);
    },
    
    /// <summary>
    /// look at the $IG.AnimationEquationType enum, for the list of available enums 
    /// </summary>
    get_dropDownAnimationType: function() {
        return this._get_value($IG.DropDownProps.DropDownAnimationType);
    },
    
    /// <summary>
    /// shows a loading message while the AJAX postback to request more items is executing 
    /// </summary>
    get_loadingItemsMessageText: function() {
        return this._get_value($IG.DropDownProps.LoadingItemsMessageText);
    },

    /// <summary>
    /// display mode can be DropDown (full-blown), DropDownList(dropdown with selection), ReadOnlyList (dropdown readonly) and ReadOnly (only input box)
    /// </summary>
    get_displayMode: function() {
        return this._get_value($IG.DropDownProps.DisplayMode);
    },

    /// <summary>
    /// if not set this will be zero 
    /// </summary>
    get_valueListMaxHeight: function() {
        return this._get_value($IG.DropDownProps.ValueListMaxHeight);
    },

    set_valueListMaxHeight: function(value) {
        return this._set_value($IG.DropDownProps.ValueListMaxHeight, value);
    },

    /// <summary>
    /// horizontal offset in pixels of the dropdown container relative to the target (allows for manual adjustment of the source and target)
    /// </summary>
    get_offsetX: function() {
        return this._get_value($IG.DropDownProps.OffsetX);
    },

    get_offsetY: function() {
        return this._get_value($IG.DropDownProps.OffsetY);
    },

    set_offsetX: function(value) {
        return this._set_value($IG.DropDownProps.OffsetX, value);
    },

    set_offsetY: function(value) {
        return this._set_value($IG.DropDownProps.OffsetY, value);
    },

    get_enablePaging: function() {
        return this._get_value($IG.DropDownProps.EnablePaging);
    },

    get_pageSize: function() {
        return this._get_value($IG.DropDownProps.PageSize);
    },

    get_selectedItemIndex: function() {
        return this._get_value($IG.DropDownProps.SelectedItemIndex);
    },

    set_selectedItemIndex: function(index) {
        return this._set_value($IG.DropDownProps.SelectedItemIndex, index);
    },

    /// <summary>
    /// used when multiple selection is enabled
    /// </summary>
    get_selectedItemIndices: function() {
        return this._get_value($IG.DropDownProps.SelectedItemIndices);
    },

    set_selectedItemIndices: function(indices) {
        return this._set_value($IG.DropDownProps.SelectedItemIndices, indices);
    },

    /// <summary>
    /// this represents a single character that will automatically delimit in the input box the list of multiple-selected items
    /// </summary>
    get_multiSelectValueDelimiter: function() {
        return this._get_value($IG.DropDownProps.MultiSelectValueDelimiter);
    },

    /// <summary>
    /// items marked "Custom" will not be allowed for selection, if this property is turned on
    /// </summary>
    get_enableCustomValueSelection: function() {
        return this._get_value($IG.DropDownProps.EnableCustomValueSelection);
    },

    /// <summary>
    /// sets / enables multiple selection in general. Further, multiple selection can be either implemented with checkboxes
    /// or with 
    /// </summary>
    get_enableMultipleSelection: function() {
        return this._get_value($IG.DropDownProps.EnableMultipleSelection);
    },

    /// <summary>
    /// enables / disables persisting of custom values. If some value that doesn't exist in the list is typed, and we remove the
    /// focus from the control, a new item is created, and marked IsCustom=true, and persisted to the server
    /// persisting of custom values SHOULD NOT be enabled along with loadOnDemand or Paging ! 
    /// or with 
    /// </summary>
    get_persistCustomValues: function() {
        return this._get_value($IG.DropDownProps.PersistCustomValues);
    },
    
    /// <summary>
    /// milliseconds that will pass while the user is typing, until a postback will be made
    /// this means we don't do a postback on every keystroke in the input box, in order to fetch filtering results 
    /// </summary>
    get_autoFilterTimeoutMs: function () {
        
        return this._get_value($IG.DropDownProps.AutoFilterTimeoutMs); 
    },
   
    /// <summary>
    /// enables automatic filtering if items on the server. Also see EnableClientFilteringOnly
    /// </summary>
    get_enableAutoFiltering: function() {
        return this._get_value($IG.DropDownProps.EnableAutoFiltering);
    },

    /// <summary>
    /// We support a predefined set of automatic server-side filtering queries, such as StartsWith, EndsWith, Contains, etc.
    /// </summary>
    get_autoFilterQueryType: function() {
        return this._get_value($IG.DropDownProps.AutoFilterQueryType);
    },

    /// <summary>
    /// maximum number of resulting items that will be sent to the client, after automatic filtering is performed
    /// </summary>
    get_autoFilterResultSize: function() {
        return this._get_value($IG.DropDownProps.AutoFilterResultSize);
    },

    /// <summary>
    /// we support sorting of the resulting items (ascending and descending)
    /// </summary>
    get_autoFilterSortOrder: function() {
        return this._get_value($IG.DropDownProps.AutoFilterSortOrder);
    },
    
    /// <summary>
    /// type of multiple selection - Keyboard or Checkbox (if checkbox, checkboxes are automatically rendered in front of every item)
    /// </summary>
    get_multipleSelectionType: function() {
        return this._get_value($IG.DropDownProps.MultipleSelectionType);
    },
    
    /// <summary>
    /// PagerMode
    /// </summary>
    get_pagerMode: function() {
        return this._get_value($IG.DropDownProps.PagerMode);
    },
    
    get_lastPageIndex:function() {
        return this._get_value($IG.DropDownProps.LastPageIndex);
    },
    
    get_shouldFireMultipleSelect:function() {
        return this._get_value($IG.DropDownProps.ShouldFireMultipleSelect);
    },
    
    get_enableAnimations:function() {
        return this._get_value($IG.DropDownProps.EnableAnimations);
    },
    
    get_enableDropDownOpenOnClick:function() {
        return this._get_value($IG.DropDownProps.EnableDropDownOpenOnClick);
    },
    
    get_activeItemIndex:function() {
        
        return this._get_value($IG.DropDownProps.ActiveItemIndex);
    },
    
    set_activeItemIndex:function(value) {
    
        this._set_value($IG.DropDownProps.ActiveItemIndex, value);
    },
    
    set_shouldFireMultipleSelect:function(val) {
        return this._set_value($IG.DropDownProps.ShouldFireMultipleSelect, val);
    },

    /// <summary>
    /// load on demand is a kind of "virtual scrolling" where , once the user scrolls down to the bottom of the dropdown container
    /// new items are fetched from the server, if any
    /// </summary>
    get_enableLoadOnDemand: function() {
        return this._get_value($IG.DropDownProps.EnableLoadOnDemand);
    },

    /// <summary>
    /// as one types, filtering is only performed on the item collection which is on the client, and no postback is done
    /// </summary>
   // get_enableClientFilteringOnly: function() {
   //     return this._get_value($IG.DropDownProps.EnableClientFilteringOnly);
   // },

    get_dropDownContainerWidth: function() {
        return this._get_value($IG.DropDownProps.DropDownContainerWidth);
    },

    get_dropDownContainerHeight: function() {
        return this._get_value($IG.DropDownProps.DropDownContainerHeight);
    },

    get_enableCaseSensitivity: function() {
        return this._get_value($IG.DropDownProps.EnableCaseSensitivity);
    },

    get_showDropDownButton: function() {
        return this._get_value($IG.DropDownProps.ShowDropDownButton);
    },

    get_dropDownValueDisplayType: function() {
        return this._get_value($IG.DropDownProps.DropDownValueDisplayType);
    },

    get_inputFocusCssClass: function() {
        return this._get_clientOnlyValue("dropDownInputFocusClass");
    },

    get_inputHoverCssClass: function() {
        return this._get_clientOnlyValue("dropDownInputHoverClass");
    },

    get_inputCssClass: function() {
        return this._get_clientOnlyValue("dropDownInputClass");
    },

    get_dropDownFocusCssClass: function() {
        return this._get_clientOnlyValue("dropDownFocusClass");
    },

    get_dropDownHoverCssClass: function() {
        return this._get_clientOnlyValue("dropDownHoverClass");
    },

    get_controlAreaHoverCssClass: function() {
        return this._get_clientOnlyValue("controlAreaHoverClass");
    },

   // get_buttonFocusCssClass: function() {
   //     return this._get_clientOnlyValue("dropDownButtonFocusClass");
   // },

    get_buttonCssClass: function() {
        return this._get_clientOnlyValue("dropDownButtonClass");
    },

    get_controlAreaFocusCssClass: function() {
        return this._get_clientOnlyValue("controlAreaFocusClass");
    },


    get_controlAreaCssClass: function() {
        return this._get_clientOnlyValue("controlAreaClass");
    },
    
    get_pageCount: function() {
        return this._get_clientOnlyValue("pageCount");
    },

    /// <summary>
    /// 'currentValue' is the value in the input box of the dropdown control. It could be assumed to mean the "Display Value" 
    /// </summary>
    get_currentValue: function() {
        return this._get_value($IG.DropDownProps.CurrentValue);
    },

    /// <summary>
    /// programatically set the display value
    /// </summary>
    set_currentValue: function(val, copyToInputValue) {
        
        if (val != this.get_currentValue() || !this.__getViewStateEnabled())
        {
           if (copyToInputValue)
           {
                this._elements["Input"].value = val;
           }
            this._set_value($IG.DropDownProps.CurrentValue, val);
        }
    },


    set_previousValue: function(val) {
        this._previousValue = val;
    },

    get_previousValue: function() {
        return this._previousValue;
    },

    get_hoverItemIndex: function() {
        return this.__hoverItemIndex;
    },

    set_hoverItemIndex: function(index) {
        this.__hoverItemIndex = index;
    },

    _selectItem: function(item, val) {
        this.__selectItem(item, val, true);
    },

    __selectItem: function(item, val, fireEvent) {
        //  if(!this.__initializing)
        //  {
        //      $util.removeCompoundClass(item._element, this.get_selectedClass());
        //      $util.removeCompoundClass(item._element, item.get_selectedCssClass());
        //  }
        if (val) {
            //   $util.addCompoundClass(item._element, this.get_selectedClass());
            //   $util.addCompoundClass(item._element, item.get_selectedCssClass());
            if (fireEvent && !this.__initializing)
                this._raiseClientEvent('ItemSelected', 'DropDownControl', null, null, item);
        }

    },

    /// <summary>
    /// in case there is event, such as key up / down or mouse down / up , we don't automatically assume that the 
    /// target event element will be an item (i.e. <LI> tag), but we search up (bubble) in order to find the actual item 
    /// represented by the LI tag.
    /// </summary>
    __getNearestItem: function(elem) {
        if (elem == null) {
            return null;
        }

        var item = null;
        var adr = null;

        $util._initAttr(elem);
        
        if (elem.getAttribute) {

            adr = elem.getAttribute("adr");

            if (adr != null) {
                item = this.get_items().getItem(adr);

                if (item != null)
                    return item;
            }
        }

        if (elem.parentNode == null || elem.parentNode.id == this._elements["DropDown"].id)
            return null;
        else
            return this.__getNearestItem(elem.parentNode);

    },

    _select: function(event) {
        this.__isDropDownEvent = true;
        
        var navigate = true;

        // selection is not allowed when we are in read only list mode
        if (this.get_displayMode() == $IG.DropDownDisplayMode.ReadOnlyList)
            return;

        var item = this.__getNearestItem(event.target);
        
        if (item != null && !item.get_disabled()) {

            if (!this.get_enableMultipleSelection()) {
            
                // handle single item selection first 
                 var oldIndex = this.get_selectedItemIndex();
                // var oldItem = oldIndex == -1 ? null : this.get_items()._getObjectByIndex(oldIndex);
                var oldItem = oldIndex == -1 ? null : this.get_items().getItem(oldIndex);
                 
                if ((!item.get_custom() ) || (item.get_custom() && this.get_enableCustomValueSelection())) {

                    this.set_activeItem(item);
                    
                    var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, [item], [oldItem]);
                    var cancel = args ? args.get_cancel() : false;
                    if (!cancel) {
                    
                        if (this.get_enableMultipleSelection())
                        {
                            this.__unselectAllItems();
                        } else 
                        {
                            if (this.get_selectedItem()!=null)
                                this.get_selectedItem().unselect();
                        }
                        
                        item.select();
                       // this.set_selectedItemIndex(this.get_items().get_indexOf(item));
                       this.set_selectedItemIndex(item.get_index());
                        this.__lastSelectionWasContinuous=false;

                       // args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', event, null, this._elements["Input"].value, this.get_currentValue());
                       args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', event, null, item.get_text(), this.get_currentValue());

                        var cancel = args ? args.get_cancel() : false;
                        if (!cancel) {
                            var previousValue = this.get_currentValue();
                            this.set_currentValue(item.get_text(), true);
                            this._raiseClientEvent('ValueChanged', 'DropDownEdit', event, null, this.get_currentValue(), previousValue);
                        }
                        //} else {
                        //    item.select();
                        // }

                        var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, [item], [oldItem]);

                    }

                } else {
                    
                    
                }
            }
            // change value display
            // this._elements["Input"].value = item.get_text();
            if (this.get_enableMultipleSelection()) {
            
                if (this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Checkbox)
                {
                    var checked = item._element.childNodes[0].checked;
                    var isEventOnCheckbox = false;
                    var eventSource = event.target;
                    if (eventSource.getAttribute && eventSource.getAttribute("type") == "checkbox") {
                        isEventOnCheckbox = true;
                    }

                    if (!isEventOnCheckbox)
                        return;

                    if (!item.get_disabled() && (!item.get_custom() ) || (item.get_custom() && this.get_enableCustomValueSelection()))
                    {
                    
                        // fire the SelectionChanging event 
                        // 1. get current array of selected items
                        var oldSelectedItems = this.get_selectedItems();
                        
                        // construct newSelectedItems
                        if (checked)
                        {
                            // remove item 
                            var newSelectedItems = new Array();
                            for (var i=0; i < oldSelectedItems.length; i++)
                            {
                                if (oldSelectedItems[i].get_index() != item.get_index())
                                {
                                    newSelectedItems.push(oldSelectedItems[i]);
                                }   
                            }
                            
                        } else 
                        {
                            // add item
                            var newSelectedItems = Array.clone(oldSelectedItems);
                            newSelectedItems.push(item);
                        }
                        
                        // fire selection changing event
                        var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                        var cancel = args ? args.get_cancel() : false;
            
                        if (!cancel)
                        {
                            if (checked) {
                            
                                item.unselect();
                                
                            } else {
                                item.select();
                            }
                            
                            // fire selection changed event
                            this.set_shouldFireMultipleSelect(true);
                                 // set active item just in case Async Postback flags are used, because if we set it afterwards
                                // it will not get set if we set it in client code AFTER the event is fired 
                                this.set_activeItem(item);
                                
                            this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                            
                            this.__lastSelectionWasContinuous=false;
                        }
                        
                    }
                    
                } else {
                    
                    // keyboard multiple selection
                    var eventSource = event.target;
                    
                   if (event.ctrlKey)
                   {
                        //navigate = false;
                        
                        if (!item.get_disabled() && (!item.get_custom() ) || (item.get_custom() && this.get_enableCustomValueSelection()))
                        {
                        
                            // fire the SelectionChanging event 
                            // 1. get current array of selected items
                            var oldSelectedItems = this.get_selectedItems();
                                                    
                            // construct newSelectedItems
                            if (item.get_selected())
                            {
                                // remove item 
                                var newSelectedItems = new Array();
                                for (var i=0; i < oldSelectedItems.length; i++)
                                {
                                    if (oldSelectedItems[i].get_index() != item.get_index())
                                    {
                                        newSelectedItems.push(oldSelectedItems[i]);
                                    }   
                                }
                                
                            } else 
                            {
                                // add item
                                var newSelectedItems = Array.clone(oldSelectedItems);
                                newSelectedItems.push(item);
                            }
                        
                            // fire selection changing event
                            var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                            var cancel = args ? args.get_cancel() : false;
                
                            if (!cancel)
                            {
                                
                                if (!item.get_selected())
                                {
                                    item.select();
                                } else
                                {
                                    item.unselect();
                                }
                                                        
                                // fire selection changed event
                                this.set_shouldFireMultipleSelect(true);
                                     // set active item just in case Async Postback flags are used, because if we set it afterwards
                                // it will not get set if we set it in client code AFTER the event is fired 
                                this.set_activeItem(item);
                                this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                                
                                this.__lastSelectionWasContinuous=false;
                            }
                        }
                        
                   } else if (event.shiftKey)
                   {
                       // navigate = false;
                        
                       // var currentItemIndex = this.get_items().get_indexOf(item);
                       // var prevItemIndex = this.get_items().get_indexOf(this.get_activeItem());
                       
                       var currentItemIndex = item.get_index();
                       
                       if (!this.get_activeItem())
                        return;
                        
                       var prevItemIndex = this.get_activeItem().get_index();
                        
                        if (prevItemIndex < 0) 
                        {
                            return;
                        }
                        // construct selected items arrays
                         var oldSelectedItems = this.get_selectedItems();
                         var newSelectedItems = null;
                         
                         var itemsForUnselect = new Array();
                         
                         if (this.__lastSelectionWasContinuous)
                         {
                            newSelectedItems = Array.clone(oldSelectedItems);
                         } else 
                         {
                            newSelectedItems = new Array();
                         }
                        
                        if (currentItemIndex > prevItemIndex)
                        {
                            
                            //newSelectedItems.push( this.get_items().getItem(prevItemIndex));
                            if (!item.get_disabled() && this.__lastSelectionWasContinuous)
                            {
                                if (!Array.contains(newSelectedItems,item))
                                 newSelectedItems.push(item);
                            }
                            
                            for (i=prevItemIndex; i<= currentItemIndex; i++)
                            {
                               
                                if (!this.__lastSelectionWasContinuous)
                                {
                                     if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                    newSelectedItems.push(this.get_items().getItem(i));
                                } 
                                
                                if (this.get_items().getItem(i).get_activated() && !this.get_items().getItem(prevItemIndex+1).get_selected() && this.get_items().getItem(i).get_index()!= item.get_index())
                                {
                                   if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                    newSelectedItems.push(this.get_items().getItem(i));
                                }
                                
                                if (!this.get_items().getItem(i).get_disabled() && !this.get_items().getItem(i).get_selected() && this.get_items().getItem(i).get_index()!= item.get_index())
                                {
                                    if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                    newSelectedItems.push(this.get_items().getItem(i));
                                    
                                } //else 
                                //{
                                //    this.get_items().getItem(i).unselect();
                                //}
                                else if (this.__lastSelectionWasContinuous && this.get_items().getItem(i).get_index()!= item.get_index() && this.get_items().getItem(i).get_selected() && (!this.get_items().getItem(i).get_activated() || (this.get_items().getItem(i).get_activated() && this.get_items().getItem(prevItemIndex+1).get_selected())))
                                {
                                    itemsForUnselect.push(this.get_items().getItem(i));
                                    if (Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                    {
                                        Array.remove(newSelectedItems, this.get_items().getItem(i));
                                    }
                                }
                            }
                            
                            // fire 'ing' event
                            // fire selection changing event
                            var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                            var cancel = args ? args.get_cancel() : false;
                
                            if (!cancel)
                            {
                                // unselect all first
                                if (!this.__lastSelectionWasContinuous) 
                                    this.__unselectAllItems();
                                
                                for (i= 0; i < newSelectedItems.length; i++)
                                {
                                    var tmpItem = newSelectedItems[i];
                                    if (!tmpItem.get_disabled() && (!tmpItem.get_custom() ) || (tmpItem.get_custom() && this.get_enableCustomValueSelection()))
                                    {
                                        tmpItem.select();
                                    }
                                }
                                
                                for (i=0; i < itemsForUnselect.length;i++)
                                {
                                    itemsForUnselect[i].unselect();
                                }
                                
                                 // fire selection changed event
                                 this.set_shouldFireMultipleSelect(true);
                                      // set active item just in case Async Postback flags are used, because if we set it afterwards
                                // it will not get set if we set it in client code AFTER the event is fired 
                                this.set_activeItem(item);
                                this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                                
                                this.__lastSelectionWasContinuous=true;
                            
                            }
                            
                        } else if (currentItemIndex < prevItemIndex)
                        {
                          //  newSelectedItems.push( this.get_items().getItem(prevItemIndex));
                          
                            if (!item.get_disabled() && this.__lastSelectionWasContinuous)
                            {
                                if (!Array.contains(newSelectedItems, item))
                                newSelectedItems.push(item);
                            }
                            
                            for (i=currentItemIndex; i<= prevItemIndex; i++)
                            {
                                if (!this.__lastSelectionWasContinuous)
                                {
                                    if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                        newSelectedItems.push(this.get_items().getItem(i));
                                }
                                
                               if (this.get_items().getItem(i).get_activated() && !this.get_items().getItem(prevItemIndex-1).get_selected() && this.get_items().getItem(i).get_index()!= item.get_index())
                                {
                                    if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                        newSelectedItems.push(this.get_items().getItem(i));
                                }
                                
                                if (!this.get_items().getItem(i).get_disabled() && !this.get_items().getItem(i).get_selected() && this.get_items().getItem(i).get_index()!= item.get_index())
                                {
                                    if (!Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                        newSelectedItems.push(this.get_items().getItem(i));
                                    
                                } 
                                
                                // the item that will become active (CurrentItemIndex), must always be also selected
                                else if (this.__lastSelectionWasContinuous && this.get_items().getItem(i).get_index() != item.get_index() && this.get_items().getItem(i).get_selected() && (!this.get_items().getItem(i).get_activated() || (this.get_items().getItem(i).get_activated() && this.get_items().getItem(prevItemIndex-1).get_selected())))
                                {
                                    itemsForUnselect.push(this.get_items().getItem(i));
                                     if (Array.contains(newSelectedItems, this.get_items().getItem(i)))
                                    {
                                        Array.remove(newSelectedItems, this.get_items().getItem(i));
                                    }
                                }
                            }
                            
                            // fire 'ing' event
                            // fire selection changing event
                            var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                            var cancel = args ? args.get_cancel() : false;
                
                            if (!cancel)
                            {
                                // unselect all items first, if last selection was not of type multiple continuous
                                if (!this.__lastSelectionWasContinuous)
                                {
                                    this.__unselectAllItems();
                                }    
                                
                                for (i= 0; i < newSelectedItems.length; i++)
                                {
                                    var tmpItem = newSelectedItems[i];
                                    if (!tmpItem.get_disabled() && (!tmpItem.get_custom() ) || (tmpItem.get_custom() && this.get_enableCustomValueSelection()))
                                    {
                                        tmpItem.select();
                                    } 
                                }
                                
                                for (i=0; i < itemsForUnselect.length;i++)
                                {
                                    itemsForUnselect[i].unselect();
                                }
                                
                                // fire selection changed event
                                this.set_shouldFireMultipleSelect(true);
                                // set active item just in case Async Postback flags are used, because if we set it afterwards
                                // it will not get set if we set it in client code AFTER the event is fired 
                                this.set_activeItem(item);
                                this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, newSelectedItems, oldSelectedItems);
                                
                                this.__lastSelectionWasContinuous=true;
                            }
                        }
                        
                   } else 
                   {
                        if (!item.get_disabled() && (!item.get_custom() ) || (item.get_custom() && this.get_enableCustomValueSelection()))
                        {
                            // fire selection events !!! 
                            var oldSelectedIndex = this.get_selectedItemIndex();
                           // var oldItem = oldSelectedIndex == -1 ? null : this.get_items()._getObjectByIndex(oldSelectedIndex);
                           var oldItem = oldSelectedIndex == -1 ? null : this.get_items().getItem(oldSelectedIndex);
                            var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', event, null, [item], [oldItem]);
                            var cancel = args ? args.get_cancel() : false;
                            if (!cancel)
                            {
                                this.__unselectAllItems();
                                item.select();
                              //  this.set_selectedItemIndex(item.get_index());
                              this.set_selectedItemIndex(item.get_index());
                                // set active item just in case Async Postback flags are used, because if we set it afterwards
                                // it will not get set if we set it in client code AFTER the event is fired 
                                this.set_activeItem(item);
                                this.set_shouldFireMultipleSelect(true);
                                this.__lastSelectionWasContinuous=false;
                                this._raiseClientEvent('SelectionChanged', 'DropDownSelection', event, null, [item], [oldItem]);
                                
                            }
                        }
                   }
                }
                
                this.set_activeItem(item);
                //var currentVal = this.get_currentValue();
                //var delim = this.get_multiSelectValueDelimiter();
                //this.set_currentValue(currentVal+delim+item.get_text());
                
                this.__constructMultiSelectValue(event);
            }

            // close drop down

            if (this.get_closeDropDownOnSelect()) {

                var args = this._raiseClientEvent('DropDownClosing', 'DropDownContainer', event, null);
                var cancel = args ? args.get_cancel() : false;
                if (!cancel) {
                    this.behavior.set_visible(false);
                   // this._adjustMaxHeight();
                    this._raiseClientEvent('DropDownClosed', 'DropDownContainer', event, null);
                }
            }

            if (!this._elements["Input"].disabled) {
                setTimeout(Function.createDelegate(this, this.__focusInput) , 20); 

            } else {
                this._element.focus();
            }

        }
        
   //     event.cancelBubble = true;
   //     return false;
   
         // just don't do anything on mouse clicks ! 
        

    },
    
    __focusInput: function() {
        
        if (this._elements && this._elements["Input"])
        {
            this._elements["Input"].focus();
            this.__moveInputCursorToEnd();
            this.__isInternalFocus=true;
        }
    },

    __unselectAllItems: function() {

      //  var items = this.get_items()._items;
       //var items = this.get_selectedItems();
       var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
       
        for (i = 0; i < length; i++) {
           // if (!items[i].get_disabled()) {
               // items[i].unselect();
               this.get_items().getItem(i).unselect();
           // }
        }
    },
    
    __unselectAllItemsWithoutActiveItem: function() {
    
        //  var items = this.get_items()._items;
       //var items = this.get_selectedItems();
       var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
       
        for (i = 0; i < length; i++) {
           // if (!items[i].get_activated() && items[i].get_selected()) {
           //     items[i].unselect();
           // }
            if (!this.get_items().getItem(i).get_activated() && this.get_items().getItem(i).get_selected()) {
                this.get_items().getItem(i).unselect();
            }
        }
    },

    _navigateItems: function(event) {
        // item navigation
    },


    _onPagerMoreResults: function(event) {
        if (!this._noMoreResults) {
        
            if (this.get_loadingItemsMessageText()!=null)
            {
                this.__showLoadingItemsMessage();
            }
            var cbo = this._callbackManager.createCallbackObject();
            cbo.serverContext.type = "pagerMoreResults";
            //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
            this._callbackManager.execute(cbo, true);
        }

    },

    _onPagerPrevResults: function(event) {

        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }
        var cbo = this._callbackManager.createCallbackObject();
        cbo.serverContext.type = "prevPage";
        //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._callbackManager.execute(cbo, true);

    },

    _onPagerNextResults: function(event) {

        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }
        var cbo = this._callbackManager.createCallbackObject();
        cbo.serverContext.type = "nextPage";
        //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._callbackManager.execute(cbo, true);

    },
    
        _onPagerFirstResults: function(event) {

        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }
        var cbo = this._callbackManager.createCallbackObject();
        cbo.serverContext.type = "firstPage";
        //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._callbackManager.execute(cbo, true);

    },
    
        _onPagerLastResults: function(event) {

        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }
        var cbo = this._callbackManager.createCallbackObject();
        cbo.serverContext.type = "lastPage";
        //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._callbackManager.execute(cbo, true);

    },
    
    _onPagerNumberResults: function(event) {
    
        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }
        
         var cbo = this._callbackManager.createCallbackObject();
         cbo.serverContext.type = "gotoPage";
         cbo.serverContext.value = escape(event.target.innerHTML);
         //cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
         this._callbackManager.execute(cbo, true);
    },

    _scrollingLoadOnDemand: function(event) {
        var container = this._elements["DropDownContents"];

        //alert (container.scrollHeight + " ; " + container.clientHeight + " ; " + container.scrollTop);

        if (container.scrollHeight == container.clientHeight + container.scrollTop) {
            // trigger load on demand
            // store scroll top
            this._dropDownScrollTop = container.scrollTop;
            this._onPagerMoreResults(event);
        }
    },

    _mouseOverForBlur: function(evnt) {
        this.__mouseOver = true;
    },

    _mouseOutForBlur: function(evnt) {
        this.__mouseOver = false;
    },
    
    _onInputMouseOutHandler: function(evnt) {
    
         // if (this._elements["Input"].id == evnt.id) {
            // fire InputMouseDown event 
            this._raiseClientEvent('InputMouseOut', 'DropDownControl', evnt, null);
            
            // remove hover style
            $util.removeCompoundClass(this._elements["Input"], this.get_inputHoverCssClass());
        //}
        
    },
    
    _onInputMouseOverHandler: function(evnt) {
    
         // if (this._elements["Input"].id == evnt.id) {
            // fire InputMouseDown event 
            this._raiseClientEvent('InputMouseOver', 'DropDownControl', evnt, null);
            
            // add hover style
            $util.addCompoundClass(this._elements["Input"], this.get_inputHoverCssClass());
            
        //}
        
    },

    _onFocusHandler: function(evnt) {
    
        if (evnt.target.id == this._elements["Input"].id) {
            // change style to focused
            $util.addCompoundClass(this._elements["Input"], this.get_inputFocusCssClass());
            // this._elements["ButtonImage"].className =  this.get_buttonFocusCssClass();
            this._elements["TargetTable"].className = this.get_controlAreaFocusCssClass();
            // raise focus event on the control itself
           
           if (this.__blurFlag)
            this._raiseClientEvent('Focus', 'DropDownControl', evnt, null);
            
            this.__blurFlag = false;
        }
             
             
      //  this.__isInternalFocus=false;
        
    },

    // this handler is needed in order to set focus on the dropdown input element, as soon as the animation ends
    _onAnimationEnd: function() {
    
        // fire dropdown closing / opening events 
        if (this.__isClosing)
        {
            this._raiseClientEvent('DropDownClosed', 'DropDownContainer', null, null);
            this.__isClosing=false;
            
        } else if (this.__isOpening)
        {
            this._raiseClientEvent('DropDownOpened', 'DropDownContainer', null, null);
            this.__isOpening=false;
        }
        
        try {

            
            if (this.__isDropDownEvent) {
                this._elements["Input"].focus();
                //this.__moveInputCursorToEnd();
                this.__isInternalFocus=true;
                this.__isDropDownEvent = false;

            }
            
        } catch (err) {
            // die ... 
        }

    },

    _onBlurHandler: function(evnt) {
    
        if (evnt.target.id == this._elements["Input"].id && !this.__mouseOver) {
        
            this.__blurFlag = true;
            
            $util.removeCompoundClass(this._elements["Input"], this.get_inputFocusCssClass());
            //$util.removeCompoundClass(this._elements["ButtonImage"], this.get_buttonFocusCssClass());
            //$util.removeCompoundClass(this._elements["TargetTable"], this.get_controlAreaFocusCssClass());

            if (this.get_showDropDownButton())
            {
                this._elements["ButtonImage"].className = this.get_buttonCssClass();
            }
            this._elements["TargetTable"].className = this.get_controlAreaCssClass();

            // focus is somewhere else, therefore close this dropdown and fire blur even

            if (this.get_enableClosingDropDownOnBlur()) {
               // this.behavior.set_visible(false);
               if (this.behavior.get_visible())
               {
                    this.closeDropDown();
               }
            }
            //this._adjustMaxHeight();
            // blur event for the control itself
            this._raiseClientEvent('Blur', 'DropDownControl', evnt, null);
            
            // custom value persistence: if the current value in the input doesn't match any of the items text EXACTLY
            var shouldPersist=true;
            if (this.get_persistCustomValues())
            {
                for (i=0; i < this.get_items().getLength(); i++)
                {  
                   // if (this.get_currentValue() == this.get_items()._items[i].get_text())
                   if (this.get_currentValue() == this.get_items().getItem(i).get_text())
                    {
                        shouldPersist=false;
                        break;     
                    }
                }
                
                if (shouldPersist)
                {
                    // create a new item object
                    var newItem = this.get_items().createItem();
                    newItem.set_text(this.get_currentValue());
                    // mark the item as custom so that we can check the EnableCustomSelection later on 
                    newItem.set_custom(true);
                    // persist the item
                    this.get_items().add(newItem);
                }
            }

        } else {

            // find nearest item and raise blur event on it
            var item = this.__getNearestItem(evnt.target);

         //   if (item) {
         //       this._raiseClientEvent('BlurItem', 'DropDownItem', evnt.target, null, item);
         //   }
        }

    },

    _onSelectstartHandler: function(elem, adr, evnt) {
        //   $util.cancelEvent(evnt);
    },

    _onMouseoverListHandler: function(evnt) {
    
        clearTimeout(this._unhoverTimeoutID);
        
        var item = this.__getNearestItem(evnt.target);
            
        if (item != null && !item.get_disabled()) 
        {
           // if (this.__getHoveredItem()) {
           //     this.__getHoveredItem().unhover();

           // }
            item.hover();
        }

        if (this.__getHoveredItem() !=null && item!=null && item.get_index() == this.__getHoveredItem().get_index())
        {
            return;
        }
        
        if (item!=null)
        {
            if (this.__getHoveredItem())
            {
                this._raiseClientEvent('ItemMouseOut', 'DropDownControl', evnt, null, this.__getHoveredItem()); 
            }
            this._raiseClientEvent('ItemMouseOver', 'DropDownControl', evnt, null, item);
        } 
        
        if (item != null && !item.get_disabled()) 
        {           
            this.__setHoveredItem(item);
        }
    },

    __setHoveredItem: function(item) {
        this.__hoveredItem = item;
    },

    __getHoveredItem: function() {
        return this.__hoveredItem;
    },

   // __unhoverItems: function() {
   //     for (i = 0; i < this.get_items()._items.length; i++) {
   //         if (!this.get_items()._items[i].get_disabled()) {
   //             this.get_items()._items[i].unhover();
   //         }
   //     }
   // },

    // we support automatic postback when the dropdown is initially opened, if and only if there are no items
    // this enables us to support lazy loading scenarios, where we don't want any initial footprint, unless the user types or opens the dropdown
    __loadInitial: function(elem, adr, evnt) {
        if (this.get_items()._items.length == 0) {
        
            
            
            // go to the server, no items avaiiable
           // this.__autoFilterOnServer(elem, adr, evnt);
           this.loadItems();
        }
    },
    
    _onMousedownHandler: function(elem,adr,evnt) {
    
        var item = this.__getNearestItem(elem);
        
        if (item!=null)
        {
            this._raiseClientEvent('ItemMouseDown', 'DropDownControl', evnt, null, item);
        }
        
        // handle mouse down on the value display (Input is the marker / mkr of the input value display component)
        if (this._elements["Input"].id == elem.id) {
        
            // fire InputMouseDown event 
            this._raiseClientEvent('InputMouseDown', 'DropDownControl', evnt, null);
        }
            
    },

    _onMouseupHandler: function(elem, adr, evnt) {
    
    
        this.__isDropDownEvent = true;

        if (this.get_showDropDownButton() && (this._elements["Button"].id == elem.id || this._elements["ButtonImage"].id == elem.id)) {

        this.__isButtonClick=true;
        //    this._elements["Input"].focus();
            
            //this.__loadInitial(elem, adr, evnt);
            
            // trigger dropdown open / close
            // this.set_selectedItemIndex(0); // set the first item as the selected one
            if (this.behavior.get_visible()) {
            
                
                this.closeDropDown();

            } else {

                if (this.get_displayMode() != $IG.DropDownDisplayMode.ReadOnly) {
                    
                    

                    this.openDropDown();

                }
            }
            this._elements["Input"].focus();
            this.__moveInputCursorToEnd();
            this.__isInternalFocus = true;

        } else {

        }
        
        
    },
    
    _onPasteHandler: function(elem,adr,evnt) 
    {
        // detect whether value has changed, and if so , fire filtering
        if (evnt==null)
            evnt=elem;
            
        this._currentEvent = evnt;
        
        setTimeout(Function.createDelegate(this, this.filter), 20);
        this.__isPasteOperation = true;
    },
    
    _onCutHandler: function(evnt)
    {
        this._currentEvent = evnt;
        setTimeout(Function.createDelegate(this, this.filter), 20);
        this.__isPasteOperation = true;
    },
    
    filter: function()
    {
         args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', null, null, this._elements["Input"].value, this.get_currentValue());
         var cancel = args ? args.get_cancel() : false;
         
         if (!cancel && this.get_displayMode() == $IG.DropDownDisplayMode.DropDown) {
                
                // handle value display
            this.set_currentValue(this._elements["Input"].value, false);
            this._raiseClientEvent('ValueChanged', 'DropDownEdit', null, null, this.get_currentValue(), this.get_previousValue());


            if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client)
            {
                var args = this._raiseClientEvent('AutoFilterStarting', 'DropDownEdit', null, null, this.get_currentValue(), this.get_previousValue());
                var cancel = args ? args.get_cancel() : false;
                if (!cancel) {
                    this.__autoFilter();
                    this._raiseClientEvent('AutoFilterStarted', 'DropDownEdit', null, null, this.get_currentValue(), this.get_previousValue());
                    
                }
                
                if (this.get_enableAutoCompleteFirstMatch())
                {
                    this.__autoCompleteFirstMatch(this._elements["Input"]);
                }
                
            } else if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Server)
            {
                clearTimeout(this._timeoutID);
                this.__autoFilterOnServer();
                
            }
            else {
                // find and select first match
                this.__findAndSelectItem();
            }
        }   else {
                    // rollback old value
                    this._elements["Input"].value = this.get_currentValue();
            }
    },
    
    /// onchange event for the input box component
    /// this may be triggered whenever the user pastes text or sth
    _onChangeHandler: function(elem, adr, evnt) {
     
        

        //this.filter();
        //this.__isPasteOperation=true;
       
    },
    
    _onMouseoutHandler:function(elem,adr,evnt) {
    
        // remove hover class for control
        $util.removeCompoundClass(this._elements["TargetTable"], this.get_controlAreaHoverCssClass());
    
    },
    
    _onMouseoverHandler:function(elem,adr,evnt) {
    
        $util.addCompoundClass(this._elements["TargetTable"], this.get_controlAreaHoverCssClass());
    },
    
    _onMouseoutListHandler: function(elem,adr,evnt) {
    
        if (evnt==null) evnt = elem;
        
        var item = this.__getNearestItem(evnt.target);

      //  if (item==null) item = this.__getHoveredItem();
        
        if (item!=null)
        {
            // unhover item , if any
            if (this.__getHoveredItem()) {
                this.__getHoveredItem().unhover();

            }
        }
        this._currentUnhoverEvent = evnt;
        this._unhoverTimeoutID = setTimeout(Function.createDelegate(this, this.__realUnhover), 20);
    }, 
    
    __realUnhover: function()
    {
        this.__setHoveredItem(null);
        var item = this.__getNearestItem(this._currentUnhoverEvent.target);
        this._raiseClientEvent('ItemMouseOut', 'DropDownControl', this._currentUnhoverEvent, null, item);

    },
    
    _onKeypressHandler: function(elem,adr,evnt) {
    
        // check if there is a match, and if EnableCustomValues is false, and there is no match, set cancel to true
        if (!this.get_enableCustomValues())
        {
            if (this.__isDeleting)
            {
                this.__isDeleting=false;
                return;
            }
            
            var character = String.fromCharCode(evnt.charCode);
            if (!this.get_enableAutoCompleteFirstMatch())
            {
                this._cancelKeyUp = this.__checkIfValueIsCustom(this._elements["Input"].value+character);   
            } else
            {
                this._cancelKeyUp = this.__checkIfValueIsCustom(this.__get_valueBeforeAutoCompleteFirstMatch()+character);
            }
            
            if(this._cancelKeyUp)
            {
                evnt.preventDefault();
                $util.cancelEvent(evnt);
            }
        }
    },

    _onKeydownHandler: function(elem, adr, evnt) {

        // raise the keydown client event
       // this._raiseClientEvent('KeyDown', 'DropDownControl', evnt, null);
       this.__isButtonClick=false;
       this.__inKeyUp=false;

       if (evnt.keyCode==8)
       {
        this.__isDeleting=true;
       } else {
       
        this.__isDeleting=false;
       }
       
       // disallow F1 to F12 ; 
       if ((evnt.keyCode >= 112 && evnt.keyCode <= 123) || evnt.keyCode==20 || evnt.keyCode==19 || (evnt.keyCode==45 && !evnt.shiftKey) 
       || evnt.keyCode==93 || evnt.keyCode==92 || evnt.keyCode==145 || evnt.keyCode==99
       )
       {
            evnt.preventDefault();
            $util.cancelEvent(evnt);
            return;
       }

        if (evnt.keyCode == 40 || evnt.keyCode == 38 || evnt.keyCode == 13 || evnt.keyCode == 32 || 
        
        evnt.keyCode==33 || evnt.keyCode==34 || evnt.keyCode==35 || evnt.keyCode==36) {

            this.__handleKbNavigation(evnt);

        }

        if (this._elements["Input"].id == elem.id) {
        
            // fire InputKeyDown event 
            this._raiseClientEvent('InputKeyDown', 'DropDownControl', evnt, null);
            
            // store previous value
            this.set_previousValue(this._elements["Input"].value);
            
            // RETURN KEY
            if (evnt.keyCode == 13) {
                // cancel the form submission on Enter key
                evnt.preventDefault();
                $util.cancelEvent(evnt);
            }
        }

        if (evnt.keyCode == 27) // ESC key 
        {
            if (this.behavior.get_visible()) {
                var args = this._raiseClientEvent('DropDownClosing', 'DropDownContainer', evnt, null);
                var cancel = args ? args.get_cancel() : false;
                if (!cancel) {
                    this.behavior.set_visible(false);
                   // this._adjustMaxHeight();
                    this._raiseClientEvent('DropDownClosed', 'DropDownContainer', evnt, null);
                }
            }
        }
    },

    _onKeyupHandler: function(elem, adr, evnt) {

        if (this.__isPasteOperation)
        {
            this.__isPasteOperation=false;
            return;
            
        }
        
        if (this._cancelKeyUp)
        {
            this._cancelKeyUp=false;
            return;
            
        }
        
        // paste keyboard commands are handled by the onPasteHandler
        if ((evnt.keyCode==45 && evnt.shiftKey) || (evnt.ctrlKey && evnt.keyCode== 86))
        {
            return;
        }
        
        if (evnt==null) 
        {
            evnt = elem;
            elem = evnt.target;
        }
        
        if (evnt.event)
            evnt = evnt.event;
        
        if (this._elements["Input"].id == elem.id) 
        {
            // fire InputKeyUp event 
            this._raiseClientEvent('InputKeyUp', 'DropDownControl', evnt, null);
        }
        
        if (evnt.keyCode == 27 || evnt.keyCode == 9) // ESC key is handled in onKeydownHandler; Do nothing for TAB key
            return;
        
        // Fx keys
    // disallow F1 to F12 ; 
       if ((evnt.keyCode >= 112 && evnt.keyCode <= 123) || evnt.keyCode==20 || evnt.keyCode==19 || evnt.keyCode==45
       || evnt.keyCode==93 || evnt.keyCode==92 || evnt.keyCode==145
       )
       {
            return;
       }  
         
        if (evnt.keyCode == 16 || evnt.keyCode == 17 || evnt.keyCode == 18 || evnt.keyCode == 127
        || evnt.keyCode == 33 || evnt.keyCode == 34 || evnt.keyCode==35 || evnt.keyCode==36 || evnt.keyCode==99
        || evnt.keyCode == 91 || evnt.keyCode == 144 )
        {
            return;
        }

        // handle key up on the list -> up arrow and down arrow !

        // toggle dropdown (open or close)
        if (evnt.altKey && (evnt.keyCode == 40 || evnt.keyCode == 38)) {
            if (evnt.keyCode == 38) {

                

                this.closeDropDown();
                return;

            } else if (evnt.keyCode == 40) {

                 
                if (this.get_displayMode() != $IG.DropDownDisplayMode.ReadOnly) {
                    
                    this.openDropDown();
                    return;
                }
            }
        }

        // keycode 45 == INSERT key
        if (evnt.ctrlKey || evnt.altKey || (evnt.shiftKey && evnt.keyCode == 45))
            return;

        // if (evnt.keyCode== 40 || evnt.keyCode==38 || evnt.keyCode==13) 
        // {
        //     this.__handleKbNavigation(evnt);

        // } else 
        
        
        if (evnt.keyCode == 37 || evnt.keyCode == 39)
        {
            // we will do filtering if there was selected text in the input, and by moving
            // the left and right arrow keys, the selection is gone
            if (this.get_currentValue() == this.__get_valueBeforeAutoCompleteFirstMatch())
            {
                return;
            }
        }

        if (evnt.keyCode != 40 && evnt.keyCode != 38 && evnt.keyCode != 13) {
            var args;

            if (this._elements["Input"].id == elem.id || this._element == elem.id) {

                // check if custom selection is enabled
             //   if (this.get_enableCustomValueSelection() && this.get_enableClientFilteringOnly() && evnt.keyCode != 27 &&
             
                
               
               
               
                
                args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', evnt, null, this._elements["Input"].value, this.get_currentValue());

            }

            var cancel = args ? args.get_cancel() : false;
            
            if (!cancel && this.get_displayMode() == $IG.DropDownDisplayMode.DropDown) {
                
                // handle value display
                if (this._elements["Input"].id == elem.id) {

                    // no change
                   // if (this._elements["Input"].value.toLowerCase() == this.get_currentValue().toLowerCase())
                   // {
                   //     return;
                   // }
                    if (this.__inKeyUp)
                    {
                        return;
                    } else 
                    {
                        this.__inKeyUp=true;
                    }
                    
                    this.set_currentValue(this._elements["Input"].value, false);

                    this._raiseClientEvent('ValueChanged', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());

                    if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client) {

                    this._currentEvent = evnt;
                      //  if (this.get_enableAutoFiltering()) {
                            if (!(evnt.keyCode == 40 || evnt.keyCode == 38)) // up and down arrow keys are intercepted by another event
                            {
                                var args = this._raiseClientEvent('AutoFilterStarting', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());
                                var cancel = args ? args.get_cancel() : false;
                                if (!cancel) {
                                   // this.__autoFilter(elem, adr, evnt);
                                    clearTimeout(this._timeoutID);
                                    // this.__start1 = new Date().getTime();
                                    this._timeoutID = setTimeout(Function.createDelegate(this, this.__autoFilter), 50);
                                    this._raiseClientEvent('AutoFilterStarted', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());
                                }
                            }
                      //  }
                      // perform auto complete
                        if (this.get_enableAutoCompleteFirstMatch()) {
                            //this.__autoCompleteFirstMatch(elem, adr, evnt);
                             clearTimeout(this._autoCompleteTimeoutID);
                            // this.__start1 = new Date().getTime();
                            this._autoCompleteTimeoutID = setTimeout(Function.createDelegate(this, this.__autoCompleteFirstMatch), 50);
                        }


                    } else if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Server) {

                        // go to the server to fetch the items
                        // if (this.get_previousValue() != this.get_currentValue())
                        // {
                        this._currentEvent = evnt;
                        clearTimeout(this._timeoutID);
                       // this.__start1 = new Date().getTime();
                        this._timeoutID = setTimeout(Function.createDelegate(this, this.__autoFilterOnServer), this.get_autoFilterTimeoutMs());
                        // } 
                        
                    } else {
                    
                        this.__findAndSelectItem(elem,adr,evnt);
                    }
                }

            } else {
                    // rollback old value
                    this._elements["Input"].value = this.get_currentValue();
            }
        }
    },
    
    __get_valueBeforeAutoCompleteFirstMatch: function()
    {
        return (this.__valueBeforeAutoCompleteFirstMatch == null) ? this.get_currentValue() : this.__valueBeforeAutoCompleteFirstMatch;
    },
    
    __set_valueBeforeAutoCompleteFirstMatch: function(val)
    {
        this.__valueBeforeAutoCompleteFirstMatch = val;
    },
    
    __findAndSelectItem: function(elem,adr,evnt)
    {
        if (evnt!=null && evnt.keyCode != 27 && evnt.keyCode != 13 && evnt.keyCode != 40 && evnt.keyCode != 38) // also handle backspace ?
        {
            var hasMatch = false;
            var currentText = this._elements["Input"].value;
            
            var matchedItem=null;

            // check if the currentText exists
           // var items = this.get_items()._items;
           
            if (this.get_enableCaseSensitivity())
            {
                for (i = 0; i < this.get_items().getLength(); i++) {
                   // if (items[i].get_text() == currentText || items[i].get_text().startsWith(currentText)) {
                   if (this.get_items().getItem(i).get_text() == currentText || this.get_items().getItem(i).get_text().startsWith(currentText)) {
                        matchedItem = this.get_items().getItem(i);
                        hasMatch = true;
                        break;
                    }
                }
            } else 
            {
                for (i = 0; i < this.get_items().getLength(); i++) {
                   // if (items[i].get_text() == currentText.toLowerCase() || items[i].get_text().toLowerCase().startsWith(currentText.toLowerCase())) {
                   if (this.get_items().getItem(i).get_text() == currentText.toLowerCase() || this.get_items().getItem(i).get_text().toLowerCase().startsWith(currentText.toLowerCase())) {
                        matchedItem = this.get_items().getItem(i);
                        hasMatch = true;
                        break;
                    }
                }
            }

            if (hasMatch && matchedItem!=null && !matchedItem.get_disabled()) // select item and scroll to it 
            {
                 var oldIndex = this.get_selectedItemIndex();
                // var oldItem = oldIndex == -1 ? null : this.get_items()._getObjectByIndex(oldIndex);
                var oldItem = oldIndex == -1 ? null : this.get_items().getItem(oldIndex);
                 var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', evnt, null, [matchedItem], [oldItem]);
                 var cancel = args ? args.get_cancel() : false;
                 if (!cancel) {
                    this.__unselectAllItems();
                    matchedItem.select();
                    //this.set_selectedItemIndex(matchedItem.get_index());
                    this.set_selectedItemIndex(matchedItem.get_index());
                    
                    if (!this.behavior.get_visible() && !this.behavior.get_isAnimating())
                    {
                        this.openDropDown();
                    }
                    this.__scrollToItem(matchedItem);
                    // activate ? 
                    this.set_activeItem(matchedItem);
                    
                    this._raiseClientEvent('SelectionChanged', 'DropDownSelection', evnt, null, [matchedItem], [oldItem]);
                }
                
            } else {
                this.__unselectAllItems();
            }
        }
        
        if (this.get_enableAutoCompleteFirstMatch()) {
            if (elem==null)
                elem = this._elements["Input"];
            this.__autoCompleteFirstMatch(elem, adr, evnt);
        }     
    },
   
    __scrollToItem: function(item) {
        
       // var firstItem = this.get_items()._items[0];
      // var offset = Sys.UI.DomElement.getBounds(item._element).height* item.get_index();
        var offset = Math.abs($util.getPosition(item._element).y - $util.getPosition(this._elements["DropDownContents"]).y);
        this._elements["DropDownContents"].scrollTop = offset;
        
    },
    
    __checkIfValueIsCustom: function(val) 
    {
       // var items = this.get_items()._items;
        for (i=0;i<this.get_items().getLength();i++)
        {
           // if (items[i].get_text().toLowerCase().startsWith(val.toLowerCase()))
           if (this.get_items().getItem(i).get_text().toLowerCase().startsWith(val.toLowerCase()))
                return false;
        }
        return true;
    },

    __getNextVisibleItem: function(selectedIndex) {
    
        var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
       
        if (selectedIndex >= 0 && selectedIndex < length) {
            var index = selectedIndex + 1;

            while (index < length) {
              //  var nextItem = this.get_items()._getObjectByIndex(index);
               var nextItem = this.get_items().getItem(index);
                if (nextItem._get_visible() && !nextItem.get_disabled())
                    return nextItem;

                index++;
            }
        }

        return null;
    },

    __getPreviousVisibleItem: function(selectedIndex) {
    
        var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
       
        if (selectedIndex >= 0 && selectedIndex < length) {
            var index = selectedIndex - 1;
            while (index >= 0) {
                //var prevItem = this.get_items()._getObjectByIndex(index);
                var prevItem = this.get_items().getItem(index);
                if (prevItem._get_visible() && !prevItem.get_disabled())
                    return prevItem;

                index--;
            }
        }

        return null;
    },
    
    // e - event, newItem - item that will be selected, oldItem - currently selected item 
    __singleSelect: function(e, newItem, oldItem) 
    {
        var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', e, null, [newItem], [oldItem]);
        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {
           
           if (this.get_enableMultipleSelection())
           { 
                this.__unselectAllItems();
           } else 
           {
                if (this.get_selectedItem()!=null)
                {
                    this.get_selectedItem().unselect();
                }
           }
           newItem.select();

            //this.set_selectedItemIndex(newItem.get_index());
            this.set_selectedItemIndex(newItem.get_index());

            if (this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Checkbox) {
                newItem._element.childNodes[0].checked = true;
              //  if (currentItem)
                    newItem._element.childNodes[0].checked = false;
            }
        
            this._raiseClientEvent('SelectionChanged', 'DropDownSelection', e, null, [newItem], [oldItem]);        
        }
    },
    
    __multipleNoncontinuousSelect:function(e,newItem, allowUnselectActiveItem)
    {
    
        var oldSelectedItems = this.get_selectedItems();
        var newSelectedItems;
                          
        // construct newSelectedItems
        if (newItem.get_selected())
        {
            // remove item 
            newSelectedItems = new Array();
            for (var i=0; i < oldSelectedItems.length; i++)
            {
                if (oldSelectedItems[i].get_index() != newItem.get_index())
                {
                    newSelectedItems.push(oldSelectedItems[i]);
                }   
            }
            
        } else 
        {
            // add item
            newSelectedItems = Array.clone(oldSelectedItems);
            newSelectedItems.push(newItem);
        }
        
        var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', e, null, newSelectedItems, oldSelectedItems);
        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {
           
           if (newItem.get_selected() && (!newItem.get_activated() || allowUnselectActiveItem))
           { 
                newItem.unselect();
           }
           else if (!newItem.get_selected())
           {
                newItem.select();
                //this.set_selectedItemIndex(newItem.get_index());
                this.set_selectedItemIndex(newItem.get_index());
           }

            if (this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Checkbox) {
                newItem._element.childNodes[0].checked = true;
              //  if (currentItem)
                    newItem._element.childNodes[0].checked = false;
            }
        
            this._raiseClientEvent('SelectionChanged', 'DropDownSelection', e, null, newSelectedItems, oldSelectedItems);        
        }
    },
    
    __multipleContinuousSelect:function()
    {
    
    },

    // implements all of the keyboard navigation functionality
    __handleKbNavigation: function(e) {
        this.__isDropDownEvent = true;

        if (this.get_displayMode() == $IG.DropDownDisplayMode.ReadOnlyList)
            return;


        //var selectedIndex = this.get_selectedItemIndex();
        
        var activeItemIndex = 0;
        if (this.get_activeItem() !=null)
        {
            //activeItemIndex = this.get_items().get_indexOf(this.get_activeItem());
            activeItemIndex = this.get_activeItem().get_index();
        }

        //if (selectedIndex == null)
        //    selectedIndex=0;

        //var currentItem = this.get_items()._getObjectByIndex(activeItemIndex);
        var currentItem = this.get_items().getItem(activeItemIndex);
        
       // if (currentItem==null)
       //     return;
       
             // END KEY
      var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
       
      if (e.keyCode==35)
      {
      
        if (length==0)
            return;
            
       // var lastItem = this.get_items()._items[this.get_items()._items.length-1];
       var lastItem = this.get_items().getItem(length-1);
        if (lastItem!=null)
        {
            this.__scrollToItem(lastItem);
            this.set_activeItem(lastItem);
            this.__singleSelect(e,lastItem,currentItem);
        }
        return;
      }
      
      // HOME KEY
      if (e.keyCode == 36)
      {
        if (length<=0)
            return;
          
       // var firstItem = this.get_items()._items[0];
       var firstItem = this.get_items().getItem(0);
        if (firstItem!=null)
        {
            this.__scrollToItem(firstItem);
            this.set_activeItem(firstItem);
            this.__singleSelect(e,firstItem,currentItem);
        }
        return;
        
      }
      
      

        if (currentItem && currentItem._get_visible()) {

            //if (!currentItem.get_selected()) {
            //    currentItem.select();
            //    return;
            //}
            
            if (!currentItem.get_activated() && !e.altKey && !e.ctrlKey && !e.shiftKey && !currentItem.get_disabled())
            {
                this.set_activeItem(currentItem);
                this.__singleSelect(e, currentItem,null);
                return;
            }
            
        } else {

            // get the nearest item that is visible
            currentItem = this.__getNextVisibleItem(activeItemIndex);

            if (!currentItem)
                currentItem = this.__getPreviousVisibleItem(activeItemIndex);

          //  if (currentItem && !currentItem.get_selected()) {
          //      currentItem.select();
          //      return;
          //  }
            if (currentItem && !currentItem.get_activated() && !e.altKey && !e.ctrlKey && !e.shiftKey && !currentItem.get_disabled())
            {
                this.set_activeItem(currentItem);
                this.__singleSelect(e, currentItem,null);
                return;
            }

        }
        
       // if (currentItem==null)
       //     return;

        //if (currentItem && currentItem.get_disabled())
        //    return;

        var container = this._elements["DropDownContents"];
        var container_pos = $util.getPosition(container);
        
        // ENTER and SPACE key handling
      //  if ((e.keyCode == 13 || (e.keyCode == 32 && !this._elements["Input"].focused)) && currentItem!=null) 
      
      if (e.keyCode==32 && e.ctrlKey && currentItem!=null)
      {
          this.__multipleNoncontinuousSelect(e, currentItem, true);
          // rollback the old value, so that we avoid having an interval character in the input box 
          this.__constructMultiSelectValue(e);
          this.__moveInputCursorToEnd();
          this.__lastSelectionWasContinuous=false;
      }
      
      if (e.keyCode == 13  && currentItem!=null) 
        {
        
            //if (currentItem != null) {
            //    this._elements["Input"].value = currentItem.get_text();
            //}
            
            if (currentItem.get_selected())
            {

                if (this.get_closeDropDownOnSelect()) {
                    var args = this._raiseClientEvent('DropDownClosing', 'DropDownContainer', e, null);
                    var cancel = args ? args.get_cancel() : false;
                    if (!cancel) {
                        this.behavior.set_visible(false);
                        this._raiseClientEvent('DropDownClosed', 'DropDownContainer', e, null);
                    }
                }
                
                // navigate URL 
                var url = currentItem.get_navigateUrl();
                var targetFrame = currentItem.get_target();
                
                // TFS Bug # 15806: if the url is empty, set the target frame to self, so that
                // we don't get a blank new window. Instead the dropdown will be just closed 
                if (url==null || url=="") targetFrame="_self";
                
                if(targetFrame == "_self" 
					    || targetFrame == "_parent"
					    || targetFrame == "_media"
					    || targetFrame == "_top"
					    || targetFrame == "_blank"
					    || targetFrame == "_search")
					    window.open(url, targetFrame);
				    else
					    window.open(url);
    					
		    }
            
        }

        // down arrow and up arrows only change the activation, when we hit space or enter, selection happens for the active item !
        if (e.keyCode == 40 && !e.altKey) // down arrow
        {

            //var nextItem = this.get_items()._getObjectByIndex(++activeItemIndex);
            var nextItem = this.get_items().getItem(++activeItemIndex);

            if (nextItem && (!nextItem._get_visible() || nextItem.get_disabled()))
                
                nextItem = this.__getNextVisibleItem(activeItemIndex);
            
            if (nextItem) {

             //   this.set_activeItem(nextItem);
                
                if (!e.ctrlKey && !e.shiftKey)
                {
                    this.set_activeItem(nextItem);
                    // select item
                    var oldIndex = this.get_selectedItemIndex();
                    
                    // unselect old item
                   // var oldItem = this.get_items()._getObjectByIndex(oldIndex);
                   var oldItem = this.get_items().getItem(oldIndex);
                   
                    this.__singleSelect(e,nextItem,oldItem);
                    
                      // update value displ. && raise value changed event
                      //  args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, this._elements["Input"].value, this.get_currentValue());
                      args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, nextItem.get_text(), this.get_currentValue());

                    var cancel = args ? args.get_cancel() : false;
                    if (!cancel) {
                        var previousValue = this.get_currentValue();
                        this.set_currentValue(nextItem.get_text(), true);
                        this._raiseClientEvent('ValueChanged', 'DropDownEdit', e, null, this.get_currentValue(), previousValue);
                    }
                } else if (e.keyCode==40 && e.shiftKey && this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Keyboard)
                {

                    if (!this.__lastSelectionWasContinuous)
                    {
                        this.__unselectAllItemsWithoutActiveItem();
                    }
                    
                    this.set_activeItem(nextItem);
                    if (nextItem.get_selected()) 
                    {
                        currentItem.unselect();
                    }
                    
                    this.__multipleNoncontinuousSelect(e, nextItem);
                    
                    this.__lastSelectionWasContinuous=true;
                    
                } else if (e.keyCode==40 && e.ctrlKey && this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Keyboard)
                {
                    this.set_activeItem(nextItem);
                    this.__lastSelectionWasContinuous=false;
                   // this.__multipleNoncontinuousSelect(e,nextItem);
                }

            } else {

                
            }

            // this._elements["Input"].value = nextItem.get_text();

            if (nextItem) {

                var pos = $util.getPosition(nextItem._element);
             
                if (pos.y + Sys.UI.DomElement.getBounds(nextItem._element).height > container_pos.y + container.offsetHeight) {
                //    container.scrollTop = container.scrollTop + Sys.UI.DomElement.getBounds(nextItem._element).height;
                //   container.scrollTop =container.scrollTop +  pos.y - container_pos.y;
                 container.scrollTop = (pos.y + Sys.UI.DomElement.getBounds(nextItem._element).height) - (container_pos.y + container.offsetHeight);

                }

            }
            //  selectedIndex++;  

        } else if (e.keyCode == 38 && !e.altKey) // up arrow
        {

            // selectedIndex--;
            //var prevItem = this.get_items()._getObjectByIndex(--activeItemIndex);
            var prevItem = this.get_items().getItem(--activeItemIndex);

            if (prevItem && (!prevItem._get_visible() || prevItem.get_disabled()))
                prevItem = this.__getPreviousVisibleItem(activeItemIndex);

            if (prevItem) {
            
                //prevItem.activate();
                //this.set_activeItem(prevItem);
                    
                if (!e.ctrlKey && !e.shiftKey)
                {
                    this.set_activeItem(prevItem);
                    // select item
                    var oldIndex = this.get_selectedItemIndex();
                    
                    // unselect old item
                    //var oldItem = this.get_items()._getObjectByIndex(oldIndex);
                    var oldItem = this.get_items().getItem(oldIndex);
                    //if (oldItem!=null && oldItem.get_selected())
                    //{
                    //    oldItem.unselect();
                    //}
                    
                    this.__singleSelect(e,prevItem,oldItem);
                      // update value displ. && raise value changed event
                      //  args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, this._elements["Input"].value, this.get_currentValue());
                    args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, prevItem.get_text(), this.get_currentValue());

                    var cancel = args ? args.get_cancel() : false;
                    if (!cancel) {
                        var previousValue = this.get_currentValue();
                        this.set_currentValue(prevItem.get_text(),true);
                        this._raiseClientEvent('ValueChanged', 'DropDownEdit', e, null, this.get_currentValue(), previousValue);
                    }
                    
                } else if (e.keyCode==38 && e.shiftKey && this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Keyboard)
                {
                    if (!this.__lastSelectionWasContinuous)
                    {
                        this.__unselectAllItemsWithoutActiveItem();
                    }
                    this.set_activeItem(prevItem);
                    if (prevItem.get_selected()) 
                    {
                        currentItem.unselect();
                    }
                    this.__multipleNoncontinuousSelect(e, prevItem);
                    
                    this.__lastSelectionWasContinuous=true;
                    
                    
                } else if (e.keyCode==38 && e.ctrlKey && this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Keyboard)
                {
                    this.set_activeItem(prevItem);
                    this.__lastSelectionWasContinuous=false;
                   // this.__multipleNoncontinuousSelect(e,nextItem);
                }

            } else {

                
            }

            if (prevItem) {

                var pos = $util.getPosition(prevItem._element);

                if (pos.y < container_pos.y + container.scrollTop) {
                    if (container.scrollTop - Sys.UI.DomElement.getBounds(prevItem._element).height >= 0) {
                        container.scrollTop = container.scrollTop - Sys.UI.DomElement.getBounds(prevItem._element).height;
                     //  container.scrollTop =  container_pos.y - pos.y;
                    // container.scrollTop = pos.y  
                    }
                    else {
                    
                        container.scrollTop = 0;
                    }
                }

            }

            //    selectedIndex--;
        } 
        
        if (((e.keyCode==40 && (e.shiftKey)) || (e.keyCode==38 && (e.shiftKey))) && this.get_enableMultipleSelection() && this.get_multipleSelectionType() == $IG.DropDownMultipleSelectionType.Keyboard )
        {
            this.__constructMultiSelectValue(e);
        }
        
    },
    
    __constructMultiSelectValue: function(e)
    {
        // change value

        var currentVal = '';
        var delim = this.get_multiSelectValueDelimiter();

        // go through all items and check which are selected
        var isFirst = true;
        
        var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();

        for (var i = 0; i < length; i++) {
           // if (this.get_items()._items[i].get_selected()) {
           if (this.get_items().getItem(i).get_selected()) {
                if (!isFirst) {
                   // currentVal += delim + this.get_items()._items[i].get_text();
                   currentVal += delim + this.get_items().getItem(i).get_text();
                }
                else {
                    // first item, don't put delim in front
                   // currentVal += this.get_items()._items[i].get_text();
                   currentVal += this.get_items().getItem(i).get_text();
                    isFirst = false;
                }
            }
        }

       // args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, this._elements["Input"].value, this.get_currentValue());
       var args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', e, null, currentVal, this.get_currentValue());

        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {
            var previousValue = this.get_currentValue();
            this.set_currentValue(currentVal, true);
            this._raiseClientEvent('ValueChanged', 'DropDownEdit', e, null, this.get_currentValue(), previousValue);
        }
    },
    
    __findClosestSelected: function(index) 
    {
        
        var nextIndex=index;
        var prevIndex=index;
        
        var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
        
        for (i=index; i < length; i++)
        {
           // if (this.get_items()._getObjectByIndex(i).get_selected())
           if (this.get_items().getItem(i).get_selected())
                break;
            
            nextIndex++;
        }
        
        for (i=index; i >=0 ; i--)
        {
           // if (this.get_items()._getObjectByIndex(i).get_selected())
           if (this.get_items().getItem(i).get_selected())
                break;
            
            prevIndex--;
        }
        
        
        if (prevIndex <0 && nextIndex >=0) return nextIndex;
        if (nextIndex <0 && prevIndex >=0) return prevIndex;
        if (prevIndex <0 && nextIndex <0) return index;
        return  (nextIndex < prevIndex) ? nextIndex : prevIndex;
        
    },

    // handles async AJAX response
    _responseComplete: function(callbackObject, responseObject) {

        // hide loading items message if needed
        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__hideLoadingItemsMessage();
        }
        
        // handle results from the Items requested event
        var manualLoadItems = this.__manualLoadItems;
        var currentControl = this;
        var props = eval(responseObject.context[0]);
        var html = responseObject.context[1];
        var pagerHtml = responseObject.context[2];
        var type = callbackObject.serverContext.type;
        
        var eventName = callbackObject.serverContext.eventName;

        // replace Li items
        var list = this._elements["List"];

        var val = this.get_currentValue();

        if (this.get_enableCustomValueSelection()) {
            val = this._elements["Input"].value;
        }
        
        if ((type == "itemsRequested" || type == "itemsRequestedCustom") && this.get_valueBeforeFilter() != val) {
            if (this.get_enableCustomValueSelection())
                this.__autoFilterOnServerCustom();
            // initiate a new request
            else {
                 //   if (this.get_enableAutoCompleteFirstMatch() && this.__get_valueBeforeAutoCompleteFirstMatch() != this.get_valueBeforeFilter())
                   // {
                     //   this.set_currentValue(this.__get_valueBeforeAutoCompleteFirstMatch());
                      //  this.__autoFilterOnServer();
                    //} else if (!this.get_enableAutoCompleteFirstMatch())
                   // {
                    //    this.__autoFilterOnServer();
                   // }
                clearTimeout(this._timeoutID);
                this._timeoutID = setTimeout(Function.createDelegate(this, this.__autoFilterOnServer), this.get_autoFilterTimeoutMs());
            }

            return;
        }

        if (type == "itemsRequested" || type == "itemsRequestedCustom" || type == "remove" || type==null ||
        type == "nextPage" || type == "prevPage" || type=="gotoPage" ||  type=="firstPage" || type=="lastPage" || 
        type == "insert" || eventName == "SelectionChanged" || eventName == "ValueChanged") {
        
            if (type == "itemsRequestedCustom" && !html.toLowerCase().startsWith("<li")) // no items available
            {
                // no results
                this._elements["Input"].value = this.get_currentValue();
                return;

            }
            
            //LEAKS FIX
            for (i=0;i<this.get_items()._items.length;i++)
            {
                //this.get_items()._items[i].dispose();
                var item = this.get_items()._items[i];
                if (item!=null)
                {
                    this.get_items()._items[i].dispose();
                }
            }
            this.get_items().dispose();
            
            list.innerHTML = html; 

        } else if (type == "add") {
            //var span = document.createElement("span");
            list.innerHTML += html;
            //list.appendChild(span);
        } else if (type == "pagerMoreResults") {
            if (!html.toLowerCase().startsWith("<li")) {
                this._noMoreResults = true;
            }
            else {
                list.innerHTML += html;
            }
        }

        if (this.get_enablePaging()) {
            var pager = this._elements["PagerArea"];
            pager.innerHTML = pagerHtml;
        }
        //else if (type == "insert")
        //{
        //
        //}
        
        this.__clearTextNodesFromUL();
        // we need to re-attach the dropdown to the parent , before the initialization/walkThrough is done

        this._elements = []; // clear markers
        //this._events._list = []; // it's very important to clear the events !
        $clearHandlers(this._element);
        this.__clearOtherEvents();

        //this.set_props(props);
        // everything that's done in set_props, except setting again the client event handlers
        this._dataStore = props;
        this._props = props[0];
        this._clientStateManager = new $IG.ObjectClientStateManager(this._props);
        this._objectsManager = new $IG.ObjectsManager(this, props[1]);
        this._collectionsManager = new $IG.CollectionsManager(this, props[2]);
        
        //var items = responseObject.context[2];
        //var itemsCount = items.length;

        this.behavior._attach();
        
        $IG.WebDropDown.callBaseMethod(this, 'initialize');
        
        // we need to re-attach the paging event, since we have replaced the whole inner HTML
        // and have swiped out the handler

        

        if (this.get_enablePaging()) {
            //var pagerDelegate = Function.createDelegate(this, this._onPagerMoreResults);
            //$addHandler(this._elements["PagerLink"], 'mousedown', pagerDelegate);

            if (this.get_pagerMode() == $IG.DropDownPagerMode.NextPrevious)
            {
                var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                $addHandler(this._elements["PagerPrevLink"], 'mousedown', pagerPrevDelegate);

                var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                $addHandler(this._elements["PagerNextLink"], 'mousedown', pagerNextDelegate);
                
            } else if (this.get_pagerMode() == $IG.DropDownPagerMode.Numeric || this.get_pagerMode() == $IG.DropDownPagerMode.NumericFirstLast)
            {
                var numberDelegate = Function.createDelegate(this, this._onPagerNumberResults);
                $addHandler(this._elements["Pager"], 'mousedown', numberDelegate);
                
                 // check if we have quick pages
               if (this._elements["PagerQPPrevLink"])
               {
                    var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                    $addHandler(this._elements["PagerQPPrevLink"], 'mousedown', pagerPrevDelegate);
               }
               
               if (this._elements["PagerQPNextLink"])
               {
                    var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                    $addHandler(this._elements["PagerQPNextLink"], 'mousedown', pagerNextDelegate);
               }
                
            } else if (this.get_pagerMode() == $IG.DropDownPagerMode.NextPreviousFirstLast)
            {
                var pagerPrevDelegate = Function.createDelegate(this, this._onPagerPrevResults);
                $addHandler(this._elements["PagerPrevLink"], 'mousedown', pagerPrevDelegate);

                var pagerNextDelegate = Function.createDelegate(this, this._onPagerNextResults);
                $addHandler(this._elements["PagerNextLink"], 'mousedown', pagerNextDelegate);
                
                var pagerFirstDelegate = Function.createDelegate(this, this._onPagerFirstResults);
                $addHandler(this._elements["PagerFirstLink"], 'mousedown', pagerFirstDelegate);

                var pagerLastDelegate = Function.createDelegate(this, this._onPagerLastResults);
                $addHandler(this._elements["PagerLastLink"], 'mousedown', pagerLastDelegate);
            }
        }

        this.behavior._detach();

        // reattach handlers
        // var selectDelegate = Function.createDelegate(this, this._select);  
        // $addHandler(list, 'mousedown', selectDelegate);

        // attach the delegate for keyboard navigation
        // var navDelegate = Function.createDelegate(this, this._navigateItems);
        // $addHandler(list, 'keydown', navDelegate);

        // this._registerHandlers(["selectstart", "keydown", "keyup", "mousedown"]);
        
        if (type == "itemsRequestedCustom") {
            // update value
            args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', this._currentEvent, null, this._elements["Input"].value, this.get_currentValue());
            var cancel = args ? args.get_cancel() : false;
            if (!cancel) {
                var previousValue = this.get_currentValue();
                this.set_currentValue(this._elements["Input"].value, false);
                this._raiseClientEvent('ValueChanged', 'DropDownEdit', this._currentEvent, null, this.get_currentValue(), previousValue);
            }
        }

        // select the first item when there are results ; update the current value and fire value changing/ed events 
       // if (type=="itemsRequested"  && !manualLoadItems && this.get_items().getLength() > 0 && this._elements["Input"].value != this.get_currentValue() )
        if (type!="itemsRequested"  && !manualLoadItems && this._elements["Input"].value != this.get_currentValue() )
        {
           // fire value changing
            args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', this._currentEvent, null, this._elements["Input"].value, this.get_currentValue());
            var cancel = args ? args.get_cancel() : false;
            if (!cancel) {
                //var previousValue = this.get_currentValue();
               // this.set_currentValue(this._elements["Input"].value, false);
               var previousValue = this._elements["Input"].value;
                this._elements["Input"].value = this.get_currentValue();
                this._raiseClientEvent('ValueChanged', 'DropDownEdit', this._currentEvent, null, this.get_currentValue(), previousValue);
            }  
         }
         
         if (this.get_items().getLength() > 0 && type=="itemsRequested" && !manualLoadItems)
         {
           // fire selection events
           var oldIndex = this.get_selectedItemIndex();
          // var oldItem = oldIndex == -1 ? null : this.get_items()._getObjectByIndex(oldIndex);
          var oldItem = oldIndex == -1 ? null : this.get_items().getItem(oldIndex);
            // var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', this._currentEvent, null, [this.get_items()._getObjectByIndex(0)], [oldItem]);
            var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', this._currentEvent, null, [this.get_items().getItem(0)], [oldItem]);
            var cancel = args ? args.get_cancel() : false;
            if (!cancel) {
            
                var previousIndex = this.get_selectedItemIndex();
                //this.get_items()._getObjectByIndex(0).select();
                this.get_items().getItem(0).select();
                this.set_selectedItemIndex(0);
                
                //var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', this._currentEvent, null, [this.get_items()._getObjectByIndex(0)], [oldItem]);
                var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', this._currentEvent, null, [this.get_items().getItem(0)], [oldItem]);

                // also activate first item
              //  this.set_activeItem(this.get_items()._getObjectByIndex(0));
               this.set_activeItem(this.get_items().getItem(0));
            } 
         }          

        if (this._currentEvent && this.get_enableAutoCompleteFirstMatch()) {
            this.__autoCompleteFirstMatch(this._elements["Input"], 0, this._currentEvent);
        }
        
        // STORE IN CACHE, if enabled
        if (type == "itemsRequested" && this.get_enableCachingOnClient())
        {
            if (this.get_enableAutoCompleteFirstMatch())
            {
                this._clientCache[this.get_valueBeforeFilter().toLowerCase()] = [html,props];
            } else {
            
                this._clientCache[val.toLowerCase()] = [html, props];
            }
        }

        // this.set_selectedItemIndex(-1);

        // items requested is raised whenever the items arrive from the server
        // on the other hand, the AutoFilteringStarted is raised, without caring whether items have arrived or not

        if (type == "itemsRequested")
            this._raiseClientEvent('ItemsRequested', 'DropDownControl', this._currentEvent, null);
            
        // fire client events for items
        if (type=="add" || type == "insert")
        {
            var items;
            if (this.get_enablePaging())
            {
                items = responseObject.context[3];
                
            } else
            {
                items = responseObject.context[2];
            }
            
            //this._raiseClientEvent('ItemAdded', 'DropDownControl', null, null, item);
            if (items != null && items.length > 0)
			{
				for (var i = 0; i < items.length; i++)
				{
					//var item = this.get_items()._getObjectByAdr(items[i]);
					var item = this.get_items().getItem(items[i]);
					if (type == "add")
						this._raiseClientEvent('ItemAdded', 'DropDownControl', null, null, item);
					else if (type == "insert")
						this._raiseClientEvent('ItemInserted', 'DropDownControl', null, null, item);
				}
			}
        } 
        else if (type == "remove")
		{
			    var item = callbackObject.clientContext.item;
			    this._raiseClientEvent('ItemRemoved', 'DropDownControl', null, null, item);
		}
	
	    
        if (this.get_displayMode() != $IG.DropDownDisplayMode.ReadOnly) {
            if (this._currentEvent) {
                var args = this._raiseClientEvent('DropDownOpening', 'DropDownContainer', this._currentEvent, null);
                var cancel = args ? args.get_cancel() : false;
                if (!cancel) {
                    this.behavior.set_visible(true);
                    //this._adjustMaxHeight();
                    this._raiseClientEvent('DropDownOpened', 'DropDownContainer', this._currentEvent, null);
                }
            } else {

                if (this.get_items().getLength() > 0 && (type == "nextPage" || type == "prevPage" || type=="gotoPage" ||  type=="firstPage" || type=="lastPage"))
                {
                   // this.set_currentValue(this.get_items()._items[0].get_text(), true);
                   this.set_currentValue(this.get_items().getItem(0).get_text(), true);
                }

                var args = this._raiseClientEvent('DropDownOpening', 'DropDownContainer', null, null);
                var cancel = args ? args.get_cancel() : false;
                if (!cancel) {
                    this.behavior.set_visible(true);
                    //this._adjustMaxHeight();
                    this._raiseClientEvent('DropDownOpened', 'DropDownContainer', null, null);
                }

                this._elements["Input"].focus();
                this.__moveInputCursorToEnd();
                this.__isInternalFocus=true;
            }
        }

        // unhover any hanging items
        //this.__unhoverItems();

       // this._activeItem = this.get_activeItemIndex() == -1 ? null : this.get_items()._getObjectByIndex(this.get_activeItemIndex());
        this._activeItem = this.get_activeItemIndex() == -1 ? null : this.get_items().getItem(this.get_activeItemIndex());

        // restore drop down scroll top state
        if (this._dropDownScrollTop != null && this._dropDownScrollTop > 0) {
            this._elements["DropDownContents"].scrollTop = this._dropDownScrollTop;
        }

        // adjust max container height, if this property is set 
       // this._adjustMaxHeight();
            
        if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client)
        {
            for (i=0;i<this.get_items().getLength();i++)
            {
                // dummy, serves just to create every item, since lazy loading & client side filtering require some special attention
                this.get_items().getItem(i);
            }
            this.__clientFilteringItemCount = this.get_items().getLength();
        }
    },

    __autoFilterOnServer: function(elem, adr, evnt) {

        // check if the current value is the same as the value at the time at which the auto filtering
        // timeout was registered
        // if the values are not the same, don't proceed !

        // if (this.get_previousValue() == this.get_currentValue()) {
        
        // show loading items message if needed
        if (this.get_loadingItemsMessageText()!=null)
        {
            this.__showLoadingItemsMessage();
        }

        // will do ajax - items requested
        this._raiseClientEvent('ItemsRequesting', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());

        var args = this._raiseClientEvent('AutoFilterStarting', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());
        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {

            if (this.get_currentValue()!=null && this._clientCache[this.get_currentValue().toLowerCase()] != null && this.get_enableCachingOnClient()) 
            {

                //LEAKS FIX
                for (i=0;i<this.get_items()._items.length;i++)
                {
                    //this.get_items()._items[i].dispose();
                    var item = this.get_items()._items[i];
                    if (item!=null)
                    {
                        this.get_items()._items[i].dispose();
                    }
                }
                this.get_items().dispose();
                
                var html = this._clientCache[this.get_currentValue().toLowerCase()][0];
                
                var list = this._elements["List"];
                // remove the items 
                //while (list.childNodes[0]) {
                //    list.removeChild(list.childNodes[0]);
                //}

                list.innerHTML = html;
                this.__clearTextNodesFromUL();
                var props = this._clientCache[this.get_currentValue().toLowerCase()][1];
                
                this._elements = []; // clear markers
                $clearHandlers(this._element);
                this.__clearOtherEvents();
                
                this._dataStore = props;
                this._props = props[0];
                this._clientStateManager = new $IG.ObjectClientStateManager(this._props);
                this._objectsManager = new $IG.ObjectsManager(this, props[1]);
                this._collectionsManager = new $IG.CollectionsManager(this, props[2]);
                
                 this.behavior._attach();
                 $IG.WebDropDown.callBaseMethod(this, 'initialize');
                 this.behavior._detach();
        
                //this.get_items()._items = items[0];
                this.openDropDown();
                this._elements["Input"].focus();
                this.__moveInputCursorToEnd();
                this.__isInternalFocus=true;
                if (this._currentEvent) {
                     this.__autoCompleteFirstMatch(this._elements["Input"], 0, this._currentEvent);
                }
                
                // unhover any hanging items
                //this.__unhoverItems();

                   // fire selection events
                   var oldIndex = this.get_selectedItemIndex();
                  // var oldItem = oldIndex == -1 ? null : this.get_items()._getObjectByIndex(oldIndex);
                  var oldItem = oldIndex == -1 ? null : this.get_items().getItem(oldIndex);
                    // var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', this._currentEvent, null, [this.get_items()._getObjectByIndex(0)], [oldItem]);
                    var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', this._currentEvent, null, [this.get_items().getItem(0)], [oldItem]);
                    var cancel = args ? args.get_cancel() : false;
                    if (!cancel) {
                    
                        var previousIndex = this.get_selectedItemIndex();
                        //this.get_items()._getObjectByIndex(0).select();
                        this.get_items().getItem(0).select();
                        this.set_selectedItemIndex(0);
                        
                        //var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', this._currentEvent, null, [this.get_items()._getObjectByIndex(0)], [oldItem]);
                        var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', this._currentEvent, null, [this.get_items().getItem(0)], [oldItem]);

                        // also activate first item
                      //  this.set_activeItem(this.get_items()._getObjectByIndex(0));
                       this.set_activeItem(this.get_items().getItem(0));
                    }           
                
                this._activeItem = this.get_activeItemIndex() == -1 ? null : this.get_items().getItem(this.get_activeItemIndex());

                if (this._dropDownScrollTop != null && this._dropDownScrollTop > 0) {
                    this._elements["DropDownContents"].scrollTop = this._dropDownScrollTop;
                }
            }
            else 
            {
             
                var cbo = this._callbackManager.createCallbackObject();
                cbo.serverContext.type = "itemsRequested";
                cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(this._clientStateManager.get_transactionList());
                this.set_valueBeforeFilter(this.get_currentValue());
                this._callbackManager.execute(cbo, true);

            }
            // raise autoFilter started event
            this._raiseClientEvent('AutoFilterStarted', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());

        }

        // } 
    },

    __autoFilterOnServerCustom: function(elem, adr, evnt) {
        this._raiseClientEvent('ItemsRequesting', 'DropDownEdit', evnt, null, this._elements["Input"].value, this.get_currentValue());

        var args = this._raiseClientEvent('AutoFilterStarting', 'DropDownEdit', evnt, null, this._elements["Input"].value, this.get_currentValue());
        var cancel = args ? args.get_cancel() : false;
        if (!cancel) {
            this._setLoadItemsText(this._elements["Input"].value);
            var cbo = this._callbackManager.createCallbackObject();
            cbo.serverContext.type = "itemsRequestedCustom";
            cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(this._clientStateManager.get_transactionList());

            this.set_valueBeforeFilter(this._elements["Input"].value);

            this._callbackManager.execute(cbo, true);

            // raise autoFilter started event
            this._raiseClientEvent('AutoFilterStarted', 'DropDownEdit', evnt, null, this._elements["Input"].value, this.get_currentValue());

        }
    },

    __autoFilter: function(elem, adr, evnt) {
        // get input value
        // var text = this.get_autoFilterInputValue();
        var text = this.get_currentValue();
        
       //if (this.get_enableAutoCompleteFirstMatch())
       //{ 
       //     text = this.__get_valueBeforeAutoCompleteFirstMatch();
       //}

        //var items = this.get_items()._items;

        // if (this.get_enableClientFilteringOnly()) 
        // {

        // detach items 

        var list = this._elements["List"];
               
        // remove the items 
        while (list.childNodes[0]) {
            list.removeChild(list.childNodes[0]);
        }

        var tempResults = new Array();

        for (i = 0; i < this.__clientFilteringItemCount; i++) {
           // items[i]._set_visible(false);
           // var item_text = items[i].get_text();
           
           this.get_items().getItem(i)._set_visible(false);
           var item_text = this.get_items().getItem(i).get_text();

            if (this.get_autoFilterQueryType() == $IG.DropDownAutoFilterQueryTypes.StartsWith) {
            
            // check case sensitivity !!! 
                if (!this.get_enableCaseSensitivity())
                {
                    if (item_text.toLowerCase().startsWith(text.toLowerCase()) || text == "") {
                        // list.appendChild(items[i]._element);
                        
                        //tempResults.push(items[i]);
                        tempResults.push(this.get_items().getItem(i));
                    }
                } else 
                {
                    if (item_text.startsWith(text) || text == "") {
                        // list.appendChild(items[i]._element);
                        
                        //tempResults.push(items[i]);
                        tempResults.push(this.get_items().getItem(i));
                    }
                }
                
            } else if (this.get_autoFilterQueryType() == $IG.DropDownAutoFilterQueryTypes.EndsWith) {
            
            // check case sensitivity !!!
                if (!this.get_enableCaseSensitivity())
                {
                    if (item_text.toLowerCase().endsWith(text.toLowerCase()) || text == "") {
                        // list.appendChild(items[i]._element);
                        
                       // tempResults.push(items[i]);
                       tempResults.push(this.get_items().getItem(i));
                    }
                } else
                {
                    if (item_text.endsWith(text) || text == "") {
                        // list.appendChild(items[i]._element);
                        
                        //tempResults.push(items[i]);
                        tempResults.push(this.get_items().getItem(i));
                    }
                }

            } else {
                // contains
                if (item_text.toLowerCase().indexOf(text.toLowerCase()) != -1 || text == "") {
                    // list.appendChild(items[i]._element);
                    
                   // tempResults.push(items[i]);
                   tempResults.push(this.get_items().getItem(i));
                }
            }
        }

        // sort array if descending
        if (this.get_autoFilterSortOrder() == $IG.DropDownAutoFilterSortOrder.Descending)
        {
            tempResults.sort(function sortItems(item1, item2) { return (item1.get_text() > item2.get_text()) ? -1 : 1 ;}); 
        }
        
        // if (tempResults.length==0 && this.get_persistCustomValues())
        // {
        //    var customItem =  this.get_items().createItem();
        //    customItem.set_text(this.get_currentValue());
        //    this.get_items().add(customItem);

        // } else {
        
        if (this.get_autoFilterResultSize() > 0) {

            for (i = 0; i < this.get_autoFilterResultSize() && i < tempResults.length; i++) {
                list.appendChild(tempResults[i]._element);
                if (this.get_enableMarkingMatchedText())
                {
                    this.__markMatchedText(tempResults[i]._element, tempResults[i].get_text());
                }
                tempResults[i]._set_visible(true);
            }

        } else {

            for (i = 0; i < tempResults.length; i++) {
                list.appendChild(tempResults[i]._element);
                if (this.get_enableMarkingMatchedText())
                {
                    this.__markMatchedText(tempResults[i]._element,tempResults[i].get_text());
                }
                tempResults[i]._set_visible(true);
            }
        }
        //}
        
        if (list.childNodes.length > 0) {

           // fire selection events
             var args = this._raiseClientEvent('SelectionChanging', 'DropDownSelection', evnt, null, [tempResults[0]], [this.get_selectedItemIndex()]);
            var cancel = args ? args.get_cancel() : false;
            if (!cancel) {
                var previousIndex = this.get_selectedItemIndex();
                this.__unselectAllItems();
                tempResults[0].select();
                //this.set_selectedItemIndex(tempResults[0].get_index());
                this.set_selectedItemIndex(tempResults[0].get_index());
               
                var args = this._raiseClientEvent('SelectionChanged', 'DropDownSelection', evnt, null, [this.get_selectedItemIndex()], [previousIndex]);
                // also activate
                this.set_activeItem(tempResults[0]);
            }
         }           

       // this.behavior.set_targetContainerHeight(Sys.UI.DomElement.getBounds(this._elements["DropDown"]).height);

        if (list.childNodes.length > 0) {
        
            
            this.openDropDown();
        }

        //}
    },
    
    __markMatchedText:function (elem, elemText)
    {
        if (elem.childNodes[0]!=null && elem.childNodes[0].nodeName!="A")
            return;
        
        var val = this.get_currentValue();
        if (elemText.toLowerCase().startsWith(val.toLowerCase()))
        {
             elem.childNodes[0].innerHTML = "<em>" + elemText.substring(0, val.length) + "</em>" + elemText.substring(val.length);
        }
           
    },

    __autoCompleteFirstMatch: function(elem, adr, evnt) {
    
        //if (!elem)
            elem = this._elements["Input"];
            
        if (!evnt)
            evnt = this._currentEvent;
        // store current value, before auto complete
        //if (this.get_enableAutoFiltering() != $IG.DropDownAutoFiltering.Server) 
        //{
        //    this.__set_valueBeforeAutoCompleteFirstMatch(this.get_currentValue());
        //} else 
        //{
            this.__set_valueBeforeAutoCompleteFirstMatch(elem.value);
        //}
        
        // get items
        //var items = this.get_items()._items;

        var source = elem;
        var value;
        if (this.get_enableCaseSensitivity())
        {
            value = source.value;
        } else 
        {
            value = source.value.toLowerCase();
        }
        
        if (this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Server && (this.get_enableCachingOnClient() == false || (this.get_enableCachingOnClient() ==true && this._clientCache[value.toLowerCase()]==null)) )
        {
            
            if (this.get_currentValue()==null)
                return;
                
            // work on the currentValue
            if (this.get_enableCaseSensitivity())
            {
                if (this.get_currentValue().startsWith(value) && value.length < this.get_currentValue().length) {
                    
                     var args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', evnt, null, this.get_currentValue(), this._elements["Input"].value);
                     var cancel = args ? args.get_cancel() : false;
                     if (!cancel) {
                                
                        this._elements["Input"].value = this.get_currentValue();
                        
                        if (source.createTextRange && !$util.IsOpera) {
                            range = source.createTextRange();
                           // range.findText(item_text.substr(value.length));
                           range.findText(this.get_currentValue().substr(value.length));
                            range.select();

                        } else {
                            source.setSelectionRange(value.length, this.get_currentValue().length);
                        }
                        this._raiseClientEvent('ValueChanged', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());    
                    }
                }
                
             } else 
                {
                    if (this.get_currentValue().toLowerCase().startsWith(value) && value.length < this.get_currentValue().length) {
                       // source.value = item_text;
                        var args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', evnt, null, this.get_currentValue(), this._elements["Input"].value);
                        var cancel = args ? args.get_cancel() : false;
                        if (!cancel) {
                             
                           this._elements["Input"].value = this.get_currentValue();
                           
                            if (source.createTextRange && !$util.IsOpera) {
                                range = source.createTextRange();
                                range.findText(this.get_currentValue().substr(value.length),1,1);
                                range.select();

                            } else {
                                source.setSelectionRange(value.length, this.get_currentValue().length);
                            }
                            
                            this._raiseClientEvent('ValueChanged', 'DropDownEdit', evnt, null, this.get_currentValue(), this.get_previousValue());    
                        }
                    }
                }
            
        } else {

            // if (value.length==0)
            //     return;

            //   if (evnt.keyCode== 40 || evnt.keyCode==38) // up and down arrow are intercepted by another event
            //   {
            //       this.__handleKbNavigation(evnt);
            //   }

            if (evnt.keyCode == 40 || evnt.keyCode == 38)
                return;

            if (evnt.keyCode == 16)
                return;


            // RETURN key   
            

            //  if (e.keyCode == 8) // backspace {
            //value=value.substr(0, value.length-1);
            //    return;

            if (evnt.keyCode != 8) {
            
                var length = this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client ? this.__clientFilteringItemCount : this.get_items().getLength();
      
                for (i = 0; i < length; i++) {
                   // var item_text = items[i].get_text();
                   var item_text = this.get_items().getItem(i).get_text();

                    if (this.get_enableCaseSensitivity())
                    {
                        if (item_text.startsWith(value) && value.length < item_text.length) {
                            //source.value = item_text;
                            var args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', evnt, null, item_text, this.get_currentValue());

                            var cancel = args ? args.get_cancel() : false;
                            if (!cancel) {
                                
                                if (this.get_enableCachingOnClient()  && this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Server)
                                {
                                    var previousValue = value;
                                    this._elements["Input"].value = this.get_currentValue();
                                } else
                                
                                {
                                    var previousValue = this.get_currentValue();
                                    this.set_currentValue(item_text, true);
                                }
                                this._raiseClientEvent('ValueChanged', 'DropDownEdit', evnt, null, this.get_currentValue(), previousValue);
                            }
                            
                            if (source.createTextRange && !$util.IsOpera) {
                                range = source.createTextRange();
                                range.findText(item_text.substr(value.length));
                                range.select();

                            } else {
                                source.setSelectionRange(value.length, item_text.length);
                            }
                            break;
                        }
                    } else 
                    {

                        if (item_text.toLowerCase().startsWith(value.toLowerCase()) && value.length < item_text.length) {
                           // source.value = item_text;
                           var args = this._raiseClientEvent('ValueChanging', 'DropDownEdit', evnt, null, item_text, this.get_currentValue());
                            var cancel = args ? args.get_cancel() : false;
                            if (!cancel) {
                            
                                if (this.get_enableCachingOnClient() && this.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Server)
                                {
                                    var previousValue = value;
                                    this._elements["Input"].value = this.get_currentValue();
                                } else
                                
                                {
                                    var previousValue = this.get_currentValue();
                                    this.set_currentValue(item_text, true);
                                }
                                this._raiseClientEvent('ValueChanged', 'DropDownEdit', evnt, null, this.get_currentValue(), previousValue);
                            }
                            
                            if (source.createTextRange && !$util.IsOpera) {
                                range = source.createTextRange();
                                range.findText(item_text.toLowerCase().substr(value.length));
                                range.select();

                            } else {
                                source.setSelectionRange(value.length, item_text.length);
                            }
                            break;
                        }
                    }
                }

            }
        
        }
    },
    
    __moveInputCursorToEnd: function()
    {
    
        var input = this._elements["Input"];
        
        if (input.createTextRange && !$util.IsOpera) {
            range = input.createTextRange();
            range.move("character", input.value.length);
            range.select();
            
        } else {
            input.setSelectionRange(input.value.length, input.value.length);
        }
    },
    
    __showLoadingItemsMessage: function()
    {
        // lookup loading items message element
        var msgBox = this._elements["LoadingMessage"];
        var dropDownList = this._elements["List"];
        var left = dropDownList.offsetLeft;
        var top = dropDownList.offsetTop;
        msgBox.style.display="";
        msgBox.style.width = dropDownList.offsetWidth;
        msgBox.style.visibility="visible";
        msgBox.style.left=left;
        msgBox.style.top=top;
        
    },
    
    __hideLoadingItemsMessage: function()
    {
        
        var msgBox = this._elements["LoadingMessage"];
        msgBox.style.display="none";
        msgBox.style.visibility="hidden";
    },
    
    __detachLoadingItemsMessage: function()
    {
    
       // var msgBox = this._elements["LoadingMessage"];
        
    }

}

$IG.WebDropDown.registerClass('Infragistics.Web.UI.WebDropDown', $IG.ControlMain);

$IG.DropDownValueDisplayType  = function()
{

}

$IG.DropDownValueDisplayType.prototype = 
{  
   Simple:0,   
   WebTextEditor:1
   
};

$IG.DropDownValueDisplayType.registerEnum("Infragistics.Web.UI.DropDownValueDisplayType");

$IG.DropDownAutoFilterSortOrder  = function()
{

}

$IG.DropDownAutoFilterSortOrder.prototype = 
{  
   None:0,
   Ascending:1,   
   Descending:2
   
};


$IG.DropDownAutoFilterSortOrder.registerEnum("Infragistics.Web.UI.DropDownAutoFilterSortOrder");

$IG.DropDownMultipleSelectionType  = function()
{

}

$IG.DropDownMultipleSelectionType.prototype = 
{  
   Checkbox:0,   
   Keyboard:1
   
};

$IG.DropDownMultipleSelectionType.registerEnum("Infragistics.Web.UI.DropDownMultipleSelectionType");


$IG.DropDownPagerMode  = function()
{

}

$IG.DropDownPagerMode.prototype = 
{  
   Numeric:0,   
   NextPrevious:1,
   NextPreviousFirstLast:2,
   NumericFirstLast:3
   
};

$IG.DropDownPagerMode.registerEnum("Infragistics.Web.UI.DropDownPagerMode");

$IG.DropDownAutoFilterQueryTypes = function() {

}

$IG.DropDownAutoFilterQueryTypes.prototype =
{
    StartsWith:0,
    EndsWith:1,
    Contains:2,
    DoesNotContain:3,
    Equals:4,
    DoesNotEqual:5
    
};

$IG.DropDownAutoFilterQueryTypes.registerEnum("Infragistics.Web.UI.DropDownAutoFilterQueryTypes");

$IG.DropDownDisplayMode  = function()
{

}

$IG.DropDownDisplayMode.prototype = 
{  
    DropDownList:0,
    DropDown:1,
    ReadOnly:2,
    ReadOnlyList:3
   
};

$IG.DropDownDisplayMode.registerEnum("Infragistics.Web.UI.DropDownDisplayMode");

$IG.DropDownAutoFiltering  = function()
{

}

$IG.DropDownAutoFiltering.prototype = 
{  
    Server:0,
    Client:1,
    Off:2
   
};

$IG.DropDownAutoFiltering.registerEnum("Infragistics.Web.UI.DropDownAutoFiltering");


$IG.DropDownProps = new function() {
    this.DisplayMode = [$IG.ControlMainProps.Count + 0, $IG.DropDownDisplayMode.DropDown];
    this.ValueListMaxHeight = [$IG.ControlMainProps.Count + 1, 0];
    this.OffsetX = [$IG.ControlMainProps.Count + 2, 0];
    this.OffsetY = [$IG.ControlMainProps.Count + 3, 0];
    this.EnablePaging = [$IG.ControlMainProps.Count + 4, false];
    this.PageSize = [$IG.ControlMainProps.Count + 5, 0];
    this.SelectedItemIndex = [$IG.ControlMainProps.Count + 6, -1];
    this.SelectedItemIndices = [$IG.ControlMainProps.Count + 7, []];
    this.MultiSelectValueDelimiter = [$IG.ControlMainProps.Count + 8, ","];
    this.EnableCustomValueSelection = [$IG.ControlMainProps.Count + 9, false];
    this.EnableMultipleSelection = [$IG.ControlMainProps.Count + 10, false];
    this.CloseDropDownOnSelect = [$IG.ControlMainProps.Count + 11, true];
    this.PersistCustomValues = [$IG.ControlMainProps.Count + 12, false];
    this.EnableAutoFiltering = [$IG.ControlMainProps.Count + 13, $IG.DropDownAutoFiltering.Off];
    this.AutoFilterQueryType = [$IG.ControlMainProps.Count + 14, $IG.DropDownAutoFilterQueryTypes.StartsWith];
    this.AutoFilterResultSize = [$IG.ControlMainProps.Count + 15, 0];
    this.AutoFilterSortOrder = [$IG.ControlMainProps.Count + 16, $IG.DropDownAutoFilterSortOrder.None];
    this.EnableAutoCompleteFirstMatch = [$IG.ControlMainProps.Count + 17, true];
    this.EnableLoadOnDemand = [$IG.ControlMainProps.Count + 18, false];
    this.DropDownContainerWidth = [$IG.ControlMainProps.Count + 19, 0];
    this.DropDownContainerHeight = [$IG.ControlMainProps.Count + 20, 0];
    this.EnableCaseSensitivity = [$IG.ControlMainProps.Count + 21, false];
    this.CurrentValue = [$IG.ControlMainProps.Count + 22, null];
    this.ShowDropDownButton = [$IG.ControlMainProps.Count + 23, true];
    this.DropDownValueDisplayType = [$IG.ControlMainProps.Count + 24, $IG.DropDownValueDisplayType.Simple];
    //this.EnableClientFilteringOnly = [$IG.ControlMainProps.Count + 25, false];
    this.DropDownAnimationDuration = [$IG.ControlMainProps.Count + 25, 500];
    this.DropDownOrientation = [$IG.ControlMainProps.Count + 26, 6];
    this.LoadItemsText = [$IG.ControlMainProps.Count + 27, null];
    this.EnableClosingDropDownOnBlur = [$IG.ControlMainProps.Count + 28, true];
    this.AutoFilterTimeoutMs = [$IG.ControlMainProps.Count + 29, 200];
    this.EnableCachingOnClient = [$IG.ControlMainProps.Count + 30, false];
    this.MultipleSelectionType = [$IG.ControlMainProps.Count + 31, $IG.DropDownMultipleSelectionType.Checkbox];
    this.EditorID = [$IG.ControlMainProps.Count + 32, null];
    this.DropDownAnimationType = [$IG.ControlMainProps.Count + 33, 0];
    this.LoadingItemsMessageText =[$IG.ControlMainProps.Count + 34,null];
    this.PagerMode =[$IG.ControlMainProps.Count + 35,$IG.DropDownPagerMode.Numeric];
    this.LastPageIndex =[$IG.ControlMainProps.Count + 36,-1];
    this.ShouldFireMultipleSelect =[$IG.ControlMainProps.Count + 37,false];
    this.EnableAnimations =[$IG.ControlMainProps.Count + 38,true];
    this.EnableDropDownOpenOnClick =[$IG.ControlMainProps.Count + 39,true];
    this.ActiveItemIndex = [$IG.ControlMainProps.Count + 40, -1];
    this.DropDownIsChild = [$IG.ControlMainProps.Count + 41, true];
    this.EnableCustomValues = [$IG.ControlMainProps.Count + 42, true];
    this.EnableMarkingMatchedText = [$IG.ControlMainProps.Count + 43, false];
    this.EnableDropDownAutoWidth = [$IG.ControlMainProps.Count + 44, false];
    this.Count = $IG.ControlMainProps.Count + 45;

}

$IG.DropDownItemProps = new function()
{
    this.Text        =[$IG.ListItemProps.Count + 0, ""];
    this.Value          =[$IG.ListItemProps.Count + 1, ""];
    this.Selected    =[$IG.ListItemProps.Count + 2, false];
   this.Disabled = [$IG.ListItemProps.Count + 3, false];
    this.Activated = [$IG.ListItemProps.Count + 4, false];
    this.IsCustom = [$IG.ListItemProps.Count + 5, false];
    this.Count            = $IG.ListItemProps.Count + 6;
};



$IG.DropDownItem = function(adr, element, props, control, csm)
{    
    /// <summary>
    /// Represents an item in the WebImageViewer control. 
    /// </summary>
    this._control = control;
         
	$IG.DropDownItem.initializeBase(this, [adr, element, props, control,csm]);
	//this._element.className = this.get_cssClass();
	//this._cssClass = element.className;
	this.__visible = true;
	
	// attach item over / out handlers
	
}

$IG.DropDownItem.prototype =
{
	
	activate:function()
	{
	    ///<summary>
        ///Sets the DropDownItem as selected.
        ///</summary>
	    //this._owner.set_selectedItem(this);
	    if (this._element && this._element.className && this.get_activeCssClass() )
	    $util.addCompoundClass(this._element, this.get_activeCssClass());
	    
	    this._set_value($IG.DropDownItemProps.Activated, true);
	   // this._element.className = this.get_selectedCssClass();
	   // this.set_selected(true);
	    //this._element.focus();
	},
	
	inactivate:function()
	{
	    if (this._element && this._element.className && this.get_activeCssClass() )
	    $util.removeCompoundClass(this._element, this.get_activeCssClass());
	    this._set_value($IG.DropDownItemProps.Activated, false);
	},
	
	select:function()
	{
	    ///<summary>
        ///Sets the DropDownItem as selected.
        ///</summary>
	    //this._owner.set_selectedItem(this);
	    if (this._element && this._element.className && this.get_selectedCssClass() )
	    $util.addCompoundClass(this._element, this.get_selectedCssClass());
	   // this._element.className = this.get_selectedCssClass();
	    this.set_selected(true);
	    //this._element.focus();
	},
	
	unselect: function()
	{
	    if (this._element && this._element.className && this.get_selectedCssClass() )
	   $util.removeCompoundClass(this._element, this.get_selectedCssClass());
	   // this._element.className = this.get_cssClass();
	    this.set_selected(false);
	},
	
	hover: function()
	{
	    if (this._element && this._element.className && this.get_hoverCssClass() )
        $util.addCompoundClass(this._element, this.get_hoverCssClass());
	   // this._element.className = this.get_hoverCssClass();
	},
	
	unhover: function()
	{
	    if (this._element && this._element.className && this.get_hoverCssClass() )
	    $util.removeCompoundClass(this._element, this.get_hoverCssClass());
	    //this._element.className = this.get_cssClass();
	},
	
	_ensureFlags:function()
    {
        $IG.DropDownItem.callBaseMethod(this, "_ensureFlag");
        this._ensureFlag($IG.ClientUIFlags.Selectable, $IG.DefaultableBoolean.True);
        this._ensureFlag($IG.ClientUIFlags.Visible, $IG.DefaultableBoolean.True);
    },
    
    get_text:function() 
	{
	    ///<summary>
        ///Returns/sets the text of the DropDownItem.
        ///</summary>
	    return this._get_value($IG.DropDownItemProps.Text);
	},
	
	set_text:function(text)
	{	   
	    this._set_value($IG.DropDownItemProps.Text, text);
        // how do we set the inner item value !!!!
        
        // do we allow setting / modifying the text ???
        
        // what about templates ? 
	},
	
    get_value:function() 
	{
	    ///<summary>
        ///Returns/sets the text of the DropDownItem.
        ///</summary>
	    return this._get_value($IG.DropDownItemProps.Value);
	},
	
	set_value:function(val)
	{	   
	    this._set_value($IG.DropDownItemProps.Value, val);
        // how do we set the inner item value !!!!
        
        // do we allow setting / modifying the text ???
        
        // what about templates ? 
	},

	get_index:function()
	{
	    ///<summary>
        ///Returns the index of the item in the WebImageViewer's ImageItemCollection.
        ///</summary>
	    return parseInt(this._get_address());
	},
	
    get_selected:function() 
	{
	    ///<summary>
        ///Returns/sets the text of the DropDownItem.
        ///</summary>
	    return this._get_value($IG.DropDownItemProps.Selected);
	},
	
	get_activated:function() 
	{
	    ///<summary>
        /// 
        ///</summary>
	    return this._get_value($IG.DropDownItemProps.Activated);
	},
	
	get_custom:function() 
	{
	    ///<summary>
        /// 
        ///</summary>
	    return this._get_value($IG.DropDownItemProps.IsCustom);
	},
	
	set_custom:function(custom)
	{
	    this._set_value($IG.DropDownItemProps.IsCustom, custom);
	},
	
	get_disabled:function()
	{
	    return this._get_value($IG.DropDownItemProps.Disabled);
	},
	
	set_disabled:function(val)
	{
	    this._set_value($IG.DropDownItemProps.Disabled, val);
	   // this._element.className = this.get_disabledCssClass();
	    $util.addCompoundClass(this._element, this.get_disabledCssClass());
	},
	
	_get_visible: function()
	{
	    return this.__visible;
	},
	
	_set_visible: function(visible)
	{
	    this.__visible=visible;
	},
	
	set_selected:function(selected)
	{	   
	    this._set_value($IG.DropDownItemProps.Selected, selected);
        // how do we set the inner item value !!!!
        
        // do we allow setting / modifying the text ???
        
        // what about templates ? 
	},
		
	isSelected:function()
	{
	    ///<summary>
        /// Determines if the item is selected.
        ///</summary>
        ///<returns>True if the image is in selected. </returns>
	    return this._getFlags().getSelected();  
	},
	
	get_cssClass:function() 
	{ 
	    ///<summary>
        ///Returns/sets the CSS class that will be applied to the ImageItem when it is selected.
        ///</summary>
	   // return this._get_value($IG.DropDownItemProps.SelectedCssClass);
	   if (this._get_clientOnlyValue("cssClass")!= "")
	        return this._get_clientOnlyValue("cssClass");
	    else
	        return this._control._get_clientOnlyValue("dropDownItemClass");
	},
	
	get_activeCssClass: function()
	{
		   if (this._get_clientOnlyValue("activeCssClass")!= "")
	        return this._get_clientOnlyValue("cssClass");
	    else
	        return this._control._get_clientOnlyValue("dropDownItemActiveClass");
	},
	
    get_selectedCssClass:function() 
	{ 
	    ///<summary>
        ///Returns/sets the CSS class that will be applied to the ImageItem when it is selected.
        ///</summary>
	   // return this._get_value($IG.DropDownItemProps.SelectedCssClass);
   	   if (this._get_clientOnlyValue("selectedCssClass")!= "")
            return this._get_clientOnlyValue("selectedCssClass");
	    else
	        return this._control._get_clientOnlyValue("dropDownItemSelected");
	},
	
	get_disabledCssClass:function() 
	{ 
	    ///<summary>
        ///Returns/sets the CSS class that will be applied to the ImageItem when it is selected.
        ///</summary>
	   // return this._get_value($IG.DropDownItemProps.SelectedCssClass);
   	   if (this._get_clientOnlyValue("disabledCssClass")!= "")
            return this._get_clientOnlyValue("disabledCssClass");
	    else
	        return this._control._get_clientOnlyValue("dropDownItemDisabled");
	},
	
	get_hoverCssClass:function() 
	{ 
	    ///<summary>
        ///Returns/sets the CSS class that will be applied to the DropDownItem when it is selected.
        ///</summary>
	   // return this._get_value($IG.DropDownItemProps.SelectedCssClass);
	   if (this._get_clientOnlyValue("hoverCssClass")!= "")
	        return this._get_clientOnlyValue("hoverCssClass");
	    else
	     return this._control._get_clientOnlyValue("dropDownItemHover");
	}
	
}

$IG.DropDownItem.registerClass('Infragistics.Web.UI.DropDownItem', $IG.ListItem);


$IG.DropDownItemCollection = function(control, clientStateManager, index, manager)
{
    /// <summary>
    /// A collection of DropDownItems.
    /// </summary>
    $IG.DropDownItemCollection.initializeBase(this, [control, clientStateManager, index, manager]);
}

$IG.DropDownItemCollection.prototype = 
{
    add:function(item)
    {        
        ///<summary>
        ///Adds the specified DropDownItem via an AJAX callback.
        ///</summary>
        ///<param name="item">The DropDownItem that should be added</param>
        if(item == null)
            return;
        var cbo = this._control._callbackManager.createCallbackObject();
        cbo.serverContext.type = "add";
        cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._control._callbackManager.execute(cbo, true);
    },
    
    remove:function(item)
    {
        ///<summary>
        ///Removes the specified DropDownItem from the collection.
        ///</summary>
        ///<param name="dropDownItem">The DropDownItem that should be removed.</param>
        if(item != null)
	    {
	        var cbo = this._control._callbackManager.createCallbackObject();
            cbo.serverContext.type = "remove";
            cbo.clientContext.item = item;
            cbo.serverContext.index = item.get_index();
            this._control._callbackManager.execute(cbo, true);
        }
    },
    
       
    insert:function(index, item)
    {
        ///<summary>
        ///Creates an DropDownItem with the specified parameters an inserts the Item at the specified index. via an AJAX callback.
        ///</summary>
        ///<param name="index">The index in which to insert the DropDownItem.</param>
        ///<param name="item">The DropDownItem that should be added</param>
        if(item == null)
            return;
        var cbo = this._control._callbackManager.createCallbackObject();
        if(index >= 0 && index < this.get_length())
            cbo.serverContext.type = "insert";
        else
            cbo.serverContext.type = "add";        
        cbo.serverContext.index = index;
        cbo.serverContext.props = Sys.Serialization.JavaScriptSerializer.serialize(item._csm.get_transactionList())
        this._control._callbackManager.execute(cbo, true);
    }, 
    
    createItem:function()
    {
        ///<summary>
        ///Creates an empty item that can be used in the add, addRange, and insert methods.
        ///</summary>
        var props = new Array();
        var clientProps = new Array();
        var length = $IG.DropDownProps.Count;
        for(var i = 0; i < length; i++)
            clientProps.push(null);
        props.push(clientProps);
        var elem = document.createElement("li");
        var csm = new $IG.ObjectClientStateManager(props);
        var item = new $IG.DropDownItem("-1", elem, props, this._control, csm);
        return item;
    },
    
    getItem:function(index)
    {
        ///<summary>
        ///Returns the DropDownItem at the specified index. 
        ///</summary>
        var item=null;
        
        // IMPLEMENTS LAZY LOADING OF ITEMS
        //if(index >= 0 && index < this.get_length())
        var length = (this._control.get_enableAutoFiltering() == $IG.DropDownAutoFiltering.Client) ? this._control.__clientFilteringItemCount : this._control._elements["List"].childNodes.length;
        
        if(index >= 0 && index < length)
        {
           // item = this._items[index];
           // if (item==null && this._itemCollection !=null)
           // {
           if(this._getObjectByAdr(index) == null)
           {
                    return this._addObject($IG.DropDownItem, this._control._elements["List"].childNodes[index], index);
           } else
           {
                return this._getObjectByAdr(index);
           }
        }
        return item;
    },
    
    // USED IN LAZY LOADING
    getLength: function()
    {
        return this._control._elements["List"].childNodes.length;
    }
    
    
}

$IG.DropDownItemCollection.registerClass('Infragistics.Web.UI.DropDownItemCollection', $IG.ObjectCollection);

/// Register event arguments
$IG.DropDownControlEventArgs = function()
{

	$IG.DropDownControlEventArgs.initializeBase(this);
}

$IG.DropDownControlEventArgs.prototype =
{
    get_value: function()
    {
        return this._props[2];
    }
}
$IG.DropDownControlEventArgs.registerClass('Infragistics.Web.UI.DropDownControlEventArgs', $IG.CancelEventArgs);

/// Register selection event arguments
$IG.DropDownSelectionEventArgs = function()
{

	$IG.DropDownSelectionEventArgs.initializeBase(this);
}

$IG.DropDownSelectionEventArgs.prototype =
{
	getNewSelection: function()
	{
	    /// <summary>
        /// 
        /// </summary>
	    return this._props[2];
	},
	
	getOldSelection: function()
	{
		/// <summary>
        /// 
        /// </summary>
        return this._props[3];
	}
}
$IG.DropDownSelectionEventArgs.registerClass('Infragistics.Web.UI.DropDownSelectionEventArgs', $IG.DropDownControlEventArgs);

/// Register value changing event arguments
$IG.DropDownEditEventArgs = function()
{

	$IG.DropDownEditEventArgs.initializeBase(this);
}

$IG.DropDownEditEventArgs.prototype =
{
	getNewValue: function()
	{
	    /// <summary>
        /// 
        /// </summary>
	    return this._props[2];
	},
	
	getOldValue: function()
	{
		/// <summary>
        /// 
        /// </summary>
        return this._props[3];
	}
}
$IG.DropDownEditEventArgs.registerClass('Infragistics.Web.UI.DropDownEditEventArgs', $IG.DropDownControlEventArgs);


/// Register selection event arguments
$IG.DropDownActivationEventArgs = function()
{

	$IG.DropDownActivationEventArgs.initializeBase(this);
}

$IG.DropDownActivationEventArgs.prototype =
{
	getNewActiveItem: function()
	{
	    /// <summary>
        /// 
        /// </summary>
	    return this._props[2];
	},
	
	getOldActiveItem: function()
	{
		/// <summary>
        /// 
        /// </summary>
        return this._props[3];
	}
}
$IG.DropDownActivationEventArgs.registerClass('Infragistics.Web.UI.DropDownActivationEventArgs', $IG.DropDownControlEventArgs);



/// Register selection event arguments
$IG.DropDownContainerEventArgs = function()
{

	$IG.DropDownContainerEventArgs.initializeBase(this);
}

$IG.DropDownContainerEventArgs.prototype =
{
	getVisible: function()
	{
	    /// <summary>
        /// returns the state of the dropdown container - 0 = closed, = 1 opened
        /// </summary>
	    return this._props[2];
	}
}
$IG.DropDownContainerEventArgs.registerClass('Infragistics.Web.UI.DropDownContainerEventArgs', $IG.DropDownControlEventArgs);


/// Register selection event arguments
$IG.DropDownItemEventArgs = function()
{

	$IG.DropDownItemEventArgs.initializeBase(this);
}

$IG.DropDownItemEventArgs.prototype =
{
	getItem: function()
	{
	    /// <summary>
        /// returns current item on which the event has been raised
        /// </summary>
	    return this._props[1];
	}
}
$IG.DropDownItemEventArgs.registerClass('Infragistics.Web.UI.DropDownItemEventArgs', $IG.DropDownControlEventArgs);


/* END Infragistics.Web.UI.ListControls.WebDropDown.js.igDropDown.js */
/* START Infragistics.Web.UI.SharedScripts.igAnimation.js */
Type.registerNamespace("Infragistics.Web.UI");


$IG.AnimationBase = function(elem)
{
    ///<summary>
    /// A base class that provides the ability to create a custom animation.
    ///</summary>
    this._element = elem;
    this._duration = 35; 
    this._tickInterval = 21;
    this._curveDepth = 2;
    if($util.IsFireFox)
        this._tickInterval = 31;
};

$IG.AnimationBase.prototype =
{
	
	play: function()
	{
		///<summary>
		/// Starts the Animation
		///</summary>            
		this.onBegin();
		this._time = 1
		if (this._animating == true)
			this.stop();
		this._animating = true;

		this._init();
		if (this._animating)
			this.__tick(true);
	},

	stop: function()
	{
		///<summary>
		/// Ends the Animation.
		///</summary>    
		this._animating = false;
		clearInterval(this._timerId);
		this._timerId = undefined;
	},
	

	
	onBegin: function()
	{
		///<summary>
		/// Should be overriden on the base class.
		/// Notifies the Animation that it is about to Begin
		///</summary>    
	},
	onNext: function()
	{
		///<summary>
		/// Should be overriden on the base class.
		/// Fired for each tick of the Animation
		///</summary>    
	},
	onEnd: function()
	{
		///<summary>
		/// Should be overriden on the base class.
		/// Notifies the Animation that the animation has ended.
		///</summary>    
	},

	

	
	get_duration: function()
	{
		///<summary>
		/// Returns the duration of the animation in ticks.
		/// Meaning that the onNext method will be fired for each tick.
		/// The default Value is 35.
		///</summary>    
		return this._duration;
	},
	set_duration: function(ms)
	{
		this._duration = parseInt(ms / this._tickInterval);
		if (this._duration < 1 || ms <= 0)
			this._duration = 1;
	},
	get_isAnimating: function()
	{
		///<summary>
		/// Returns true if the animation is currently occurring.
		///</summary> 
		return this._animating;
	},
	

	
	__tick: function(firstTime)
	{
		this.onNext();
		this._next();
		if (this._animating)
		{
			this._time++;
			if ($util.IsFireFox && this._animating)
			{
				clearInterval(this._timerId);
				this._timerId = setInterval(Function.createDelegate(this, this.__tick), this._tickInterval);
			}

			if (firstTime && !$util.IsFireFox)
				this._timerId = setInterval(Function.createDelegate(this, this.__tick), this._tickInterval);
		}
		else
			this.onEnd();

	},
	

	
	_init: function()
	{
		
	},

	_next: function()
	{
		
	},

	_calc: function(type, t, s, e, d)
	{
		
		var cd = this._curveDepth;
		if (type == $IG.AnimationEquationType.Linear)
			return ((e - s) / d) * t + s;
		else if (type == $IG.AnimationEquationType.EaseIn)
			return (Math.pow(t, cd) * (e - s)) / Math.pow(d, cd) + s;
		else if (type == $IG.AnimationEquationType.EaseOut)
			return ((-Math.pow(t, cd) * (e - s)) / Math.pow(d, cd)) + ((2 * t * (e - s)) / d) + s;
		else if (type == $IG.AnimationEquationType.EaseInOut)
		{
			if (t < (d / 2)) // is halfway through?
				return (Math.pow(t, cd) * ((e - s) / 2)) / Math.pow((d / 2), cd) + s; // Ease In
			else
				return ((-Math.pow((t - (d / 2)), cd) * ((e - s) / 2)) / Math.pow((d / 2), cd)) + ((2 * (t - (d / 2)) * ((e - s) / 2)) / (d / 2)) + (s + e) / 2; // Ease out;
		}
		else if (type == $IG.AnimationEquationType.Bounce)
		{
			var ts = (t /= d) * t;
			var tc = ts * t;
			return (e - s) * (44.25 * tc * ts + -138.25 * ts * ts + 156.5 * tc + -76.5 * ts + 15 * t) + s;
		}
	},

	dispose: function()
	{
		this.stop();
		this._element = null;
	}

	

};
$IG.AnimationBase.registerClass("Infragistics.Web.UI.AnimationBase");



$IG.OpacityAnimation = function(elem)
{
    $IG.OpacityAnimation.initializeBase(this, [elem]);
    
};

$IG.OpacityAnimation.prototype = 
{
    play:function( startOpacity, endOpacity, removeOpacityAtEnd)
    {
        this._startOpacity = startOpacity; 
        this._endOpacity = endOpacity;     
        this.removeOpacityAtEnd = removeOpacityAtEnd;    
        $IG.OpacityAnimation.callBaseMethod(this, "play");     
    },
    
    _init:function()
    {
        this._opacity = this._startOpacity; 
        $util.setOpacity(this._element, this._opacity);            
    },
    
    _next:function()
    {
        if(this._startOpacity < this._endOpacity)
        {
            this._opacity += ((this._endOpacity - this._startOpacity)/this._duration);
            $util.setOpacity(this._element, this._opacity);
            
            if(this._opacity >= this._endOpacity)
                this.stop();
        }
        else
        {
            this._opacity -= ((this._startOpacity - this._endOpacity)/this._duration);
            $util.setOpacity(this._element, this._opacity);
            
            if(this._opacity <= this._endOpacity)
                this.stop();
        }
    },

    stop:function()
    {
        if (this.removeOpacityAtEnd) 
        {
            if(this._element != null && typeof(this._element) != undefined)
            {
                if(this._element.style.removeAttribute)
                    this._element.style.removeAttribute("filter")
                else
                    this._element.style.removeProperty("opacity")
           }
        }
        $IG.OpacityAnimation.callBaseMethod(this, "stop");
    }

};

$IG.OpacityAnimation.registerClass("Infragistics.Web.UI.OpacityAnimation", $IG.AnimationBase);




$IG.AnimationEquationType = function ()
{
    ///<summary>
    /// The type of calculation that an animation will use to determine it's next position..
    ///</summary> 
}
$IG.AnimationEquationType.prototype = 
{
    Linear: 0,
    EaseIn:1,
    EaseOut:2,
    EaseInOut:3,
    Bounce: 4

};
$IG.AnimationEquationType.registerEnum("Infragistics.Web.UI.AnimationEquationType");

/* END Infragistics.Web.UI.SharedScripts.igAnimation.js */
/* START Infragistics.Web.UI.SharedScripts.igDropDown.js */
Type.registerNamespace("Infragistics.Web.UI");
var $IG = Infragistics.Web.UI; 

$IG.DropDownPopupPosition = function () { 

    ///<summary>
    /// Enumeration for different dropdown container positions relative to the source element
    ///</summary>

}

$IG.DropDownPopupPosition.prototype = 
{
   Default:0, // Bottom Left. This is also the AUTO mode, which means that the container will be automatically positioned wherever there is visible space 
   Center:1, // (dropdown bottom center) - the source element will be centered above the dropdown container 
   Left:2, // the dropdown container will be positioned on the left of the source (not directly below it). They will be aligned in the same way on the y axis
   Right:3, // the dropdown container will be positioned on the right of the source (not directly below it). They will be aligned in the same way on the y axis
   TopLeft:4, // the dropdown container will be on top of the source, aligned on the left
   TopRight:5, // the dropdown container will be on top of the source, aligned on the right
   BottomLeft:6, // the dropdown container will be on the bottom of the source, aligned on the left
   BottomRight:7 // same as above, but alighed on the right
};

$IG.DropDownPopupPosition.registerEnum("Infragistics.Web.UI.DropDownPopupPosition");


$IG.DropDownBehavior = function(sourceElement, dropDownIsChild, outerContainer) {

    ///<summary>
    /// An object that allows the developer to specify elements and/or UIObjects that 
    /// should be source elements and/or target elements.  the Target element wll be the 
    /// drop down target (popup) while the source will be the element that receives 
    /// drop down events and which will cause the popup to show/hide
    ///</summary>

    // initializations
    if (!sourceElement) {
        throw Error.argumentNull('sourceElement');
    }

    this._sourceElement = sourceElement; // the source of the dropdown (it will receive the events and cause the dropdown to appear / dissappear)
    this._targetContainer = null; // dropdown container
    this._targetContent = null; //reference to the content in the target container - currently it is not used anywhere
    this._position = $IG.DropDownPopupPosition.Default; // $IG.DropDownPopupPosition (default is Bottom + Left + AUTO)

    this._outerContainer = outerContainer;
    
    this._offsetX = 0; // number of pixels by which the dropdown container will be offset from the source on the X axis
    this._offsetY = 0; // number of pixels by which the dropdown container will be offset from the source on the Y axis
    this._containerHeight = 0; // used to store the height of the dropdown container.
    this._offScreen = false; // if true, it means that IF and WHEN the dropdown is shown, it will be off the screen, therefore IF the positioning is AUTO, the position will be automatically adjusted

    // by default this is true, and in that case we will adjust the dropdown position if it is off screen (controllable by the user)
    this._enableAutomaticPositioning = true;
    this._enableMovingTargetWithSource = true;

    this._enableAnimations = true; // by default animations are enabled
    this._animationType = $IG.AnimationEquationType.EaseInOut; // see $IG.AnimationEquationType in igAnimation.js

    this._visible = false; // whether the popup container is currently visible or not ; by default the popup container is initially closed

    this._visibleOnFocus = false; // if true, the dropdown will appear when the source gains focus
    this._visibleOnBlur = false; // if true, the dropdown will disappear when the source loses focus
    this._visibleOnMouseOver = false; // if true, the dropdown will appear once the mouse is over the source
    this._visibleOnClick = false; // if true, the dropdown will appear once the source is clicked - it's probably better to be mouseDOWN instead !
    this._visibleOnKeyDown = false; // if true, the dropdown will appear once the keyDown event is invoked on the source

    this._dropDownAnimation = null; // a reference to the drop down animation object, which extends $IG.AnimationBase
    this._animationDurationMs = 300; // default 300 ms - number of milliseconds  during which the animation will be performed

    this._zIndex = 10000;
    
    this._animationsContainer = null;
    // we need to store the targetcontainer bounds and initially set its height to zero , when animations are enabled
    // otherwise there will be a flickering because its height will be originally set to the default (max) one
    this._targetBounds = null;

    // whether the drop down panel is a child of the target or not (by default it is not, and can be anywhere
    // on the page, we use absolute positioning in order to position it exactly where it should be. If it is set to be a child
    // then we set the targetContainer to be the first child of the source (see the init() function)
    this._dropDownIsChild = dropDownIsChild;

    // a reference to the object that manages drop down events: see $IG.DropDownEvents
    this._events = new $IG.DropDownEvents(this);

    this._animationEndListener = null;

    // hook delegates
    // mouse up on the source
    this._mouseUpDelegate = Function.createDelegate(this, this._mouseUpHandler);
    // mouse click on the source
    this._mouseClickDelegate = Function.createDelegate(this, this._mouseClickHandler);
    // mouse over on the source
    this._mouseOverDelegate = Function.createDelegate(this, this._mouseOverHandler);
    // mouse down on the source
    this._mouseDownDelegate = Function.createDelegate(this, this._mouseDownHandler);
    // key down on the source               
    this._keyDownDelegate = Function.createDelegate(this, this._keyDownHandler);
    // key up on the source
    this._keyUpDelegate = Function.createDelegate(this, this._keyUpHandler);
    // focus on the source
    this._focusDelegate = Function.createDelegate(this, this._focusHandler);
    // focus on the source
    this._blurDelegate = Function.createDelegate(this, this._blurHandler);

    // this is a special delegate which controls the iframe for the IE6.0 SELECT bug - so that it's always properly aligned behind the dropdown container
    this._moveDelegate = Function.createDelegate(this, this._onMove);

    // set interval to check periodically if the source's position is changed
    // if it is changed, we close the dropdown
    if (this._enableMovingTargetWithSource) {
    
        this._checkDelegate = Function.createDelegate(this, this._onCheckPosition);
        this._sourceLocation = Sys.UI.DomElement.getLocation(this._sourceElement);
        this._sourceBounds = Sys.UI.DomElement.getBounds(this._sourceElement);
        this._closeCheckID = setInterval(this._checkDelegate, 500);
    }

}

$IG.DropDownBehavior.prototype =
{

	
	get_sourceElement: function()
	{
		///<summary>
		/// Returns the dropdown source elemenet (DOM Element)
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._sourceElement;
	},

	get_targetContainer: function()
	{
		///<summary>
		/// returns the dropdown container (DOM Element)
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._targetContainer;
	},

	get_animationsContainer: function()
	{
		///<summary>
		/// returns the animations container (DOM Element)
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._animationsContainer;
	},

	set_targetContainer: function(container)
	{
		///<summary>
		/// 
		///</summary>
		///<param name="container" type="Sys.UI.DomElement" domElement="true">
		///<remarks>
		///
		///</remarks>
		if (!container)
		{
			throw Error.argumentNull('container');
		}
		this._targetContainer = container;
	},

	set_targetContainerHeight: function(height)
	{
		this._targetBounds.height = height; // was this._targetBounds = height; ????? 
		this._containerHeight = height;

		if (this.get_enableAnimations())
			$util.setAbsoluteHeight(this._animationsContainer, height);
	},

	get_targetContent: function()
	{
		///<summary>
		/// 
		///</summary>
		///<remarks>
		/// the target content is the first child of the targetContainer 
		///</remarks>
		return this._targetContent;
	},

	set_targetContent: function(content)
	{
		///<summary>
		/// 
		///</summary>
		///<param name="content" type="Sys.UI.DomElement" domElement="true">
		///<remarks>
		///
		///</remarks>
		this._targetContent = content;
	},

	get_zIndex: function()
	{

		return this._zIndex;

	},

	set_zIndex: function(zindex)
	{

		this._zIndex = zindex;

	},

	get_position: function()
	{
		///<summary>
		/// returns the $IG.DropDownPopupPosition that is currently used for the dropdown behavior
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._position;
	},

	set_position: function(position)
	{
		///<summary>
		/// position is of type $IG.DropDownPopupPosition
		///</summary>
		///<param name="position" type="$IG.DropDownPopupPosition" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._position = position;
	},

	get_enableAutomaticPositioning: function()
	{

		return this._enableAutomaticPositioning;
	},

	set_enableAutomaticPositioning: function(enabled)
	{

		this._enableAutomaticPositioning = enabled;
	},

	get_enableMovingTargetWithSource: function()
	{

		return this._enableMovingTargetWithSource;

	},

	set_enableMovingTargetWithSource: function(enabled)
	{

		this._enableMovingTargetWithSource = enabled;

		if (this._enableMovingTargetWithSource)
		{

			clearInterval(this._closeCheckID);
			this._checkDelegate = Function.createDelegate(this, this._onCheckPosition);
			this._sourceLocation = Sys.UI.DomElement.getLocation(this._sourceElement);
			this._sourceBounds = Sys.UI.DomElement.getBounds(this._sourceElement);
			this._closeCheckID = setInterval(this._checkDelegate, 200);

		} else
		{
			clearInterval(this._closeCheckID);
		}

	},

	get_enableAnimations: function()
	{
		///<summary>
		/// returns true/false depending on whether the dropdown's showing and hiding is animated or not
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._enableAnimations;
	},

	set_enableAnimations: function(enableAnimations)
	{
		///<summary>
		/// enables disables animations of the dropdown container - enableAnimations must be true or false
		///</summary>
		///<param name="enableAnimations" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._enableAnimations = enableAnimations;
	},

	get_animationType: function()
	{
		///<summary>
		/// returns $IG.AnimationEquationType
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._animationType;
	},

	set_animationType: function(animationType)
	{
		///<summary>
		/// sets the type of animation for the drop down container
		///</summary>
		///<param name="animationType" type="$IG.AnimationEquationType" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._animationType = animationType;
	},

	get_animationDurationMs: function()
	{
		///<summary>
		/// returns the number of milliseconds during which the animation will play
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._animationDurationMs;
	},

	set_animationDurationMs: function(duration)
	{
		///<summary>
		/// sets the number of milliseconds during which the animation will play
		///</summary>
		///<param name="duration" type="integer" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._animationDurationMs = duration;
	},

	get_offsetX: function()
	{
		///<summary>
		/// returns the number of pixels by which the dropdown container will be offset on the x axis
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._offsetX;
	},

	set_offsetX: function(offsetX)
	{
		///<summary>
		/// sets the number of pixels by which the dropdown container will be offset on the x axis
		///</summary>
		///<param name="offsetX" type="integer" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._offsetX = offsetX;
	},

	get_offsetY: function()
	{
		///<summary>
		/// returns the number of pixels by which the dropdown container will be offset on the y axis
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._offsetY;
	},

	set_offsetY: function(offsetY)
	{
		///<summary>
		/// returns the number of pixels by which the dropdown container will be offset on the y axis
		///</summary>
		///<param name="offsetY" type="integer" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._offsetY = offsetY;
	},

	get_offScreen: function()
	{
		///<summary>
		/// returns whether the dropdown container will be off the screen on its next appearance. If this is true, and the positioning is set to Default
		/// i.e. AUTO, then the position of the dropdown will be readjusted so that it is visible on the screen 
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._offScreen;
	},

	set_offScreen: function(offScreen)
	{
		///<summary>
		/// sets whether the drop down container is off the screen or not
		///</summary>
		///<param name="offScreen" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._offScreen = offScreen;
	},

	get_visibleOnFocus: function()
	{
		///<summary>
		/// returns whether the dropdown container should show if the source gains focus
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visibleOnFocus;
	},

	set_visibleOnFocus: function(visibleOnFocus)
	{
		///<summary>
		///  sets whether the dropdown container should show if the source gains focus
		///</summary>
		///<param name="visibleOnFocus" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._visibleOnFocus = visibleOnFocus;
	},

	get_visibleOnBlur: function()
	{
		///<summary>
		/// returns whether the dropdown container should hide if the source loses focus
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visibleOnBlur;
	},

	set_visibleOnBlur: function(visibleOnBlur)
	{
		///<summary>
		/// sets whether the dropdown container should hide if the source loses focus
		///</summary>
		///<param name="visibleOnBlur" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._visibleOnBlur = visibleOnBlur;
	},

	get_isAnimating: function()
	{
		if (this._dropDownAnimation)
			return this._dropDownAnimation.get_isAnimating();
		else
			return false;
	},

	get_visibleOnMouseOver: function()
	{
		///<summary>
		/// returns whether the dropdown container should show if mouse over is executed on the source
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visibleOnMouseOver;
	},

	set_visibleOnClick: function(visibleOnClick)
	{
		///<summary>
		/// sets whether the dropdown container should show if click is executed on the source
		///</summary>
		///<param name="visibleOnClick" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._visibleOnClick = visibleOnClick;
	},

	get_visibleOnClick: function()
	{
		///<summary>
		/// returns whether the dropdown container should show if click is executed on the source
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visibleOnClick;
	},

	set_visibleOnMouseOver: function(visibleOnMouseOver)
	{
		///<summary>
		/// sets whether the dropdown container should show if mouse over is executed on the source
		///</summary>
		///<param name="visibleOnMouseOver" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._visibleOnMouseOver = visibleOnMouseOver;
	},

	get_visibleOnKeyDown: function()
	{
		///<summary>
		/// returns whether the dropdown container should show if key down is executed on the source
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visibleOnKeyDown;
	},

	set_visibleOnKeyDown: function(visibleOnKeyDown)
	{
		///<summary>
		/// sets whether the dropdown container should show if key down is executed on the source
		///</summary>
		///<param name="visibleOnKeyDown" type="boolean" domElement="false">
		///<remarks>
		///
		///</remarks>
		this._visibleOnKeyDown = visibleOnKeyDown;
	},

	get_dropDownIsChild: function()
	{
		///<summary>
		/// returns whether or not the dropdown container is the first child of the source element, or whether it is absolutely positioned
		/// anywhere on the page (normally the appended to the form as a sibling)
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._dropDownIsChild;
	},

	get_visible: function()
	{
		///<summary>
		/// whether the dropdown container is currently visible (shown) or not
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._visible;
	},

	set_visible: function(visible)
	{
		///<summary>
		/// causes the dropdown container to show and hide
		/// NOTE: calling this function actually *CAUSES* the dropdown to show and hide
		/// it does not only modify the contents of the "_visible" variable
		///</summary>
		///<remarks>
		/// Do we fire these events if the dropdown is already visible / hidden ? 
		///</remarks>
		// denotes whether the "ing" event will be canceled or not

		var cancelEvent = false;

		this._sourceLocation = Sys.UI.DomElement.getLocation(this._sourceElement);

		// return immediately if there is an ongoing animation
		if (this._dropDownAnimation && this._dropDownAnimation.get_isAnimating())
		{
			return;
		}

		if (visible)
		{
			// fire setting visible event
			cancelEvent = this.get_Events()._fireEvent("SettingVisible", this);

		} else
		{
			// fire setting hidden event
			cancelEvent = this.get_Events()._fireEvent("SettingHidden", this);
		}

		// we need to be able to read both the current value as well as the new value
		// var tmpVisible = this._visible;
		// this._visible = visible;

		
		if (!cancelEvent)
		{
			// if the dropdown is hidden, and we want it to show, GO
			if (visible && !this._visible)
			{
				this.__showDropDown();

				// if the dropdown is currently visible, and we want it to hide, GO
			} else if (!visible && this._visible)
			{
				this.__hideDropDown();
			}

			// do we fire these events if the dropdown is already visible / hidden ? 
			if (visible)
			{
				// fire set visible event
				this.get_Events()._fireEvent("SetVisible", this); // event after the dropdown has appeared

			} else
			{
				// fire set hidden event
				this.get_Events()._fireEvent("SetHidden", this); // event after the dropdown has been hidden
			}

			// if animations are enabled then we flip the visible flag in the doEnd() method of the 
			// drop down animation object. Since the dropdown animation constantly reads this flag, and uses setTimeout/interval, if we change it here
			// it will pick the wrong value
			if (!this._enableAnimations)
			{
				this._visible = visible;
			}

		}
	},

	get_Events: function()
	{
		///<summary>
		/// Returns a reference to the Infragistics.Web.UI.DropDownEvents object, which contains all the events of the behavior.
		///</summary>
		return this._events;
	},

	


	

	// not currently used
	getBounds: function()
	{
		///<summary>
		/// 
		///</summary>
		///<remarks>
		///
		///</remarks>
		return this._bounds;
	},

	// if the dropdown is currently hidden, cause it to show. If it is shown, cause it to hide
	triggerVisibility: function()
	{
		if (this._visible)
		{
			this.set_visible(false);
		} else
		{
			this.set_visible(true);
		}

	},

	set_containerMaxHeight: function(maxHeight, containerContent, container)
	{
        
        var realContainer = this.get_enableAnimations() ? this._animationsContainer : this._targetContainer;
        
		realContainer.style.left = -10000;
		realContainer.style.top = -10000;
		realContainer.style.display = 'block';
		realContainer.style.visibility = 'visible';

		if (maxHeight <= containerContent.offsetHeight)
		{
			container.style.height = maxHeight + 'px';
		}

		realContainer.style.left = 0;
		realContainer.style.top = 0;
		realContainer.style.display = 'none';
		realContainer.style.visibility = 'hidden';

	},

	///<summary>
	///  registers event handlers, initializes animation object (and animation container), sets the initial styles on the animation and target containers
	/// if the dropDownIsChild flag is true, we attach the dropdown container as a direct first child of the source element
	/// if not, it is absolutely positioned anywhere on the page and its position is calculated and adjusted using marginTop and MarginLeft
	///</summary>
	///<remarks>
	///
	///</remarks>
	init: function()
	{

		// attach handlers for the actual element events


		$addHandler(this._sourceElement, 'mouseup', this._mouseUpDelegate);
		$addHandler(this._sourceElement, 'click', this._mouseClickDelegate);
		$addHandler(this._sourceElement, 'mouseover', this._mouseOverDelegate);
		$addHandler(this._sourceElement, 'mousedown', this._mouseDownDelegate);
		$addHandler(this._sourceElement, 'keydown', this._keyDownDelegate);

		$addHandler(this._sourceElement, 'keyup', this._keyUpDelegate);
		$addHandler(this._sourceElement, 'focus', this._focusDelegate);
		$addHandler(this._sourceElement, 'blur', this._blurDelegate);

		if (this._dropDownIsChild)
		{

			this._sourceElement.appendChild(this._targetContainer);
		} else
		{

			document.forms[0].appendChild(this._targetContainer);
		}

		this._targetContainer.style.display = 'block';
		this._targetContainer.style.visibility = 'visible';
		//this._targetContainer.style.position= 'relative'; 
		this._targetContainer.style.position = ''; // very important for IE overflow:hidden bug. We must not set relative positioning !
		// stores the targetContainer height, so that it can be used later on - in case the actual height gets modified by animations and so on
		this._targetBounds = Sys.UI.DomElement.getBounds(this._targetContainer);
		this._containerHeight = this._targetBounds.height; // for convenience

		this._dropDownAnimation = new $IG.DropDownAnimation(this);
		this._dropDownAnimation.set_duration(this._animationDurationMs); // animation duration in milliseconds

		// look in the variable declaration for _animationsContainer for more info
		if (this._enableAnimations)
		{
			this._animationsContainer = document.createElement("div");
			this._animationsContainer.id = this._targetContainer.id + "_animations";
			this._animationsContainer.style.display = 'none';
			this._animationsContainer.style.visibility = 'hidden';
			this._animationsContainer.style.overflow = 'hidden'; // very important: so that the actual contents get correctly displayed while animating
			this._animationsContainer.style.position = 'absolute';
		}

		// choose the correct container to manipulate depending on whether animations are enabled or not
		// remember that for animations we use the approach where we create a separate animations container that is inserted
		// as the parent of our targetContainer. The target container has no knowledge
		// of the animations container
		var container = (this._enableAnimations) ? this._animationsContainer : this._targetContainer;


		if (this._dropDownIsChild)
		{
			this._sourceElement.insertBefore(container, this._sourceElement.firstChild);
		} else
		{
			// append as a first element of the first form !!!
			// if we append directly after the source (as a sibling), and the two
			// elements are in a scrolling container, some elements can still display
			// above the container !!! i.e. the dropdown container must be outside the scrolling container
			// for this to work properly
			document.forms[0].appendChild(container);
		}


		if (this._enableAnimations)
		{

			$util.setAbsoluteHeight(this._animationsContainer, 0);
			// if animations are enabled, we don't need to change the style of the targetContainer every time
			// it will just be controlled indirectly by the animationContainer's style
			this._containerHeight = this._targetBounds.height;
			//$util.setAbsoluteHeight(this._animationsContainer, this._targetBounds.height); // inherit the target container's height and width
			$util.setAbsoluteWidth(this._animationsContainer, this._targetBounds.width);

			// finally add this move handler, once we have attached the animations container - if any
			// background iFrame move handler (so that the iframe behind the popup contianer always stays
			// properly positioned
			$addHandler(this._animationsContainer, 'move', this._moveDelegate);

			// insert the animations container as a parent of the targetContainer
			this._animationsContainer.appendChild(this._targetContainer);

		} else
		{

			// if animations are disabled, directly change the style of the target container so that it is initially hidden
			this._targetContainer.style.display = 'none';
			this._targetContainer.style.visibility = 'hidden';
			this._targetContainer.style.position = 'absolute';
			$addHandler(this._targetContainer, 'move', this._moveDelegate);
		}

	},

	dispose: function()
	{


		// A.T: Bug #9792 Bug first , stop the animation, if any
		this._dropDownAnimation.stop();
		this._dropDownAnimation.onEnd();

		// remove event handlers
		
		try
		{
			$removeHandler(this._sourceElement, 'mouseup', this._mouseUpDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'click', this._mouseClickDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'mouseover', this._mouseOverDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'mousedown', this._mouseDownDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'keydown', this._keyDownDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'keyup', this._keyUpDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'focus', this._focusDelegate);
		} catch (e) { }

		
		try
		{
			$removeHandler(this._sourceElement, 'blur', this._blurDelegate);
		} catch (e) { }

		try
		{ 
			$removeHandler(this._targetContainer, 'move', this._moveDelegate);
		} catch (e) { }

		delete this._mouseUpDelegate;
		delete this._mouseClickDelegate;
		delete this._mouseOverDelegate;
		delete this._mouseDownDelegate;
		delete this._keyDownDelegate;
		delete this._keyUpDelegate;
		delete this._focusDelegate;
		delete this._blurDelegate;
		delete this._moveDelegate;

		// reset height, reset the animations container
		delete this._events;
		delete this._containerHeight;
		delete this._dropDownAnimation;
		delete this._animationsContainer;

		// clears the timeout for the automatic repositioning of the target container
		clearInterval(this._closeCheckID);
		delete this._closeCheckID;
		delete this._checkDelegate;
		
		// breaking connection to sourceElement and targetContainter
		this._sourceElement = null;
		this._targetContainer = null;

		// clear all used variables as well 
		delete this._position;
		this._outerContainer = null;
		delete this._offsetX;
		delete this._offsetY;
		delete this._containerHeight;
		delete this._offScreen;
		delete this._enableAutomaticPositioning;
		delete this._enableMovingTargetWithSource;
		delete this._enableAnimations;
		delete this._animationType;
		delete this._visible;
		delete this._visibleOnFocus;
		delete this._visibleOnBlur;
		delete this._visibleOnMouseOver;
		delete this._visibleOnClick;
		delete this._visibleOnKeyDown;
		delete this._dropDownAnimation;
		delete this._animationDurationMs;
		delete this._zIndex;
		delete this._targetBounds;
		delete this._dropDownIsChild;

	},

	//adjustPopupPosition: function(bounds)
	//{
	//    
	//}

	

	_onCheckPosition: function()
	{

		var oldPos = this._sourceLocation;
		var oldBounds = this._sourceBounds;

		// A.T. if true, it means that the dropdown is opened for some element (source) that is movable within a scrolling container
		// i.e. imagine a row edit template, whose parent is the row itself - hence, while the row is scrolled, if the dropdown
		// container and its row go off the visible grid area, we should close the dropdown 
		var shouldHideFromContainer = false;


		try
		{
			var currentPos = Sys.UI.DomElement.getLocation(this._sourceElement);
			var currentBounds = Sys.UI.DomElement.getBounds(this._sourceElement);

			// if this._outerContainer is defined, check whether the source element falls in the boundaries of the outerContainer
			if (this._outerContainer)
			{
				var outerContainerBounds = Sys.UI.DomElement.getBounds(this._outerContainer);
				var outerContainerPos = Sys.UI.DomElement.getLocation(this._outerContainer);
				if (currentPos.y + currentBounds.height > outerContainerBounds.height + outerContainerPos.y || currentPos.y < outerContainerPos.y)
				{
					shouldHideFromContainer = true;
				}
			}

		}
		catch (e)
		{
			return;
		}

		if (oldPos.x != currentPos.x || oldPos.y != currentPos.y || currentBounds.width != oldBounds.width || currentBounds.height != oldBounds.height)
		{

			if ((currentBounds.width <= 0 && currentBounds.height <= 0) || shouldHideFromContainer)
			{

				// source element is hidden, set the target to hidden as well
				this._targetContainer.style.visibility = 'hidden';
				this._targetContainer.style.display = 'none';

			} else
			{
				// reopen the dropdown
				if (this.get_visible())
				{
					this.set_visible(false);
					this.set_visible(true);
				}
			}

			this._sourceLocation = currentPos;
			this._sourceBounds = currentBounds;
		}
	},

	

	_onMove: function()
	{
		/// <summary>
		/// Track the popup's movements so the hidden IFrame (IE6 only) can
		/// be moved along with it
		/// </summary>
		var container = (this._enableAnimations) ? this._animationsContainer : this._targetContainer;

		if (this._childFrame)
		{
			container.parentNode.insertBefore(this._childFrame, container);
			this._childFrame.style.top = container.style.top;
			this._childFrame.style.left = container.style.left;
		}
	},

	_mouseUpHandler: function(e)
	{
		// do we need this handler ? mouseClick should be enough
	},

	_mouseClickHandler: function(e)
	{
		// this.__handleTrigger(e);
	},

	_mouseOverHandler: function(e)
	{
		// cause the dropdown to show, if we have enabled this behavior via a set_visibleOnMouseOver(true) call
		if (this._visibleOnMouseOver)
		{
			this.__handleVisible(e);
		}
	},

	_mouseDownHandler: function(e)
	{
		// cause the dropdown to show, if we have enabled this behavior via a set_visibleOnMouseDown(true) call and mouseDown is invoked on the source
		if (this._visibleOnMouseDown)
		{
			this.__handleTrigger(e);
		}
	},

	_keyDownHandler: function(e)
	{
		// cause the dropdown to show, if we have enabled this behavior via a set_visibleOnKeyDown(true) call and keyDown is invoked on the source
		if (this._visibleOnKeyDown)
		{
			this.__handleVisible(e);
		}
	},

	_keyUpHandler: function(e)
	{
		// cause the dropdown to hide, if we have enabled this behavior via a set_visibleOnKeyDown(true) call and keyUp is invoked in the source
		if (this._visibleOnKeyDown)
		{
			this.__handleHidden(e);
		}
	},

	_focusHandler: function(e)
	{
		// cause the dropdown to show, if the source element gains focus
		if (this._visibleOnFocus)
		{
			this.__handleVisible(e);
		}
	},

	_blurHandler: function(e)
	{

		// cause the dropdown to hide, if the source element loses focus
		if (this._visibleOnBlur)
		{
			this.__handleHidden(e);
		}
	},

	


	

	_addBackgroundIFrame: function()
	{
		/// <summary>
		/// Add an empty IFRAME behind the popup (for IE6 only) so that SELECT, etc., won't
		/// show through the popup.
		/// </summary>

		// select the correct dropdown container depending on whether animations are enabled or not
		var container = (this._enableAnimations) ? this._animationsContainer : this._targetContainer;

		// Get the child frame
		if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7))
		{

			// Create the child frame if it wasn't found
			if (!this._childFrame)
			{
				this._childFrame = document.createElement("iframe");
				this._childFrame.src = "javascript:'<html></html>';";
				this._childFrame.style.position = "absolute";
				this._childFrame.style.display = "none";
				this._childFrame.scrolling = "no";
				this._childFrame.frameBorder = "0";
				this._childFrame.tabIndex = "-1";
				this._childFrame.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";
				container.parentNode.insertBefore(this._childFrame, container);
			}

			// Position the frame exactly behind the element
			this._setBounds(this._childFrame, this._getBounds(container));
			this._childFrame.style.display = container.style.display; //inherit the display property 
			if (container.currentStyle && container.currentStyle.zIndex)
			{
				this._childFrame.style.zIndex = container.currentStyle.zIndex; // inherit the zIndex
			} else if (container.style.zIndex)
			{
				this._childFrame.style.zIndex = container.style.zIndex; // in case if it is inlined
			}
		}
	},

	/// sets the drop down as a child of the target
	_attach: function()
	{

		if (!this._dropDownIsChild)
		{
			this._sourceElement.appendChild(this._targetContainer);
		}
	},

	/// moves back the drop down into the animations frame (if any)
	_detach: function()
	{

		if (!this._dropDownIsChild)
		{
			if (this.get_enableAnimations())
			{

				this._animationsContainer.appendChild(this._targetContainer);
			}
			else
			{
				document.forms[0].appendChild(this._targetContainer);
			}
		}

	},

	_setAnimationEndListener: function(element)
	{
		this._animationEndListener = element;
	},

	_getBounds: function(element)
	{
		/// <summary>Gets the coordinates, width and height of an element.</summary>
		/// <param name="element" domElement="true"/>
		/// <returns type="Sys.UI.Bounds">
		///   A Bounds object with four fields, x, y, width and height, which contain the pixel coordinates,
		///   width and height of the element.
		/// </returns>
		var offset = $util.getPosition(element);
		return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);
	},

	_setBounds: function(element, bounds)
	{
		/// <summary>
		/// Sets the "border-box" bounds of an element
		/// </summary>
		/// <param name="element" type="Sys.UI.DomElement" domElement="true">
		/// DOM element
		/// </param>
		/// <param name="bounds" type="Object">
		/// Bounds of the element (of the form {x,y,width,height})
		/// </param>
		/// <remarks>
		/// The "border-box" is the size of the content area *outside* of the borders and
		/// padding of an element.  The "border-box" size does not include the margins around
		/// the element.
		/// </remarks>

		if (!element)
		{
			throw Error.argumentNull('element');
		}
		if (!bounds)
		{
			throw Error.argumentNull('bounds');
		}
		$util.setAbsoluteHeight(element, bounds.height);
		$util.setAbsoluteWidth(element, bounds.width);

		this.__setLocation(element, bounds);
	},

	_adjustDropDownPosition: function(targetBounds, sourceBounds, currentX, currentY)
	{
		/// <summary>
		/// when the positioning is default/auto, and we detect that the dropdown 
		/// cannot be displayed below, we flip it to be displayed above the source element
		/// </summary>
		/// <param name="targetBounds" type="Sys.UI.Bounds" domElement="false">
		/// bounds of the target container
		/// </param>
		/// <param name="sourceBounds" type="Sys.UI.Bounds" domElement="false">
		/// bounds of the source element
		/// </param>
		/// <param name="currentX" type="int" domElement="false">
		/// current marginLeft offset
		/// </param>
		/// <param name="currentY" type="int" domElement="false">
		/// current marginTop offset
		/// </param>
		/// <remarks>
		/// </remarks>

		// whether the dropdown will be off the screen or not
		this._offScreen = false;
		var x = currentX, y = currentY;
		// target container bounds

		// retrieve the correct container reference depending on whether we have 
		// animations enabled or not
		var container = (this._enableAnimations) ? this._animationsContainer : this._targetContainer;

		// the current position (left,top) of the dropdown container
		// var targetContainerPosition = $util.getPosition(container);
		var targetContainerPosition = Sys.UI.DomElement.getLocation(container);

		//   var sourceElementPosition = $util.getPosition(this._sourceElement);
		var sourceElementPosition = Sys.UI.DomElement.getLocation(this._sourceElement);
		// x = targetContainerPosition.x;
		// y = sourceElementPosition.y - targetContainerPosition.y;

		// if reset is set to true, we will modify the container's marginTop property
		var reset = false;

		// detectoverflow on the bottom
		// note that it is very important that we account for the body scrollTop as well !!!
		var windowHeight = 0;
		var windowScrollTop = 0;

		if (document.compatMode == "BackCompat")
		{

			windowHeight = document.body.clientHeight;
			windowScrollTop = document.body.scrollTop;

		} else
		{
			// quirks
			windowHeight = window.innerHeight;
			windowScrollTop = window.pageYOffset;

			if ($util.IsIE)
			{
				windowHeight = document.documentElement.clientHeight;
				windowScrollTop = document.documentElement.scrollTop;
			}

		}

		// A.T. Bug #9407 - check if outerContainer was defined , in that case our boundaries
		// aren't the browser window or frame itself, but the container (i.e. grid fixed div)
		// so we should check the target location against these container bounds

		if (this._outerContainer)
		{

			// algorithm: 
			// 1. the target container is bigger than the outer container => show it below (always)

			// 2. the target container can be shown below (fully ) => show it below

			// 3. the target container cannot be shown below (will go off the bounds) , but: 
			// 3. a) will also go off the bounds if shown above => show it below
			// 3. b) will not go off the bounds if shown above => show it above

			// targetBounds
			// targetContainerPosition

			var outerContainerPos = Sys.UI.DomElement.getLocation(this._outerContainer);
			var outerContainerBounds = Sys.UI.DomElement.getBounds(this._outerContainer);

			if (targetBounds.height < outerContainerBounds.height)
			{
				if (targetContainerPosition.y + targetBounds.height > outerContainerPos.y + outerContainerBounds.height)
				{
					// try to show it above
					// 3.a)
					if (targetContainerPosition.y - targetBounds.height > outerContainerPos.y)
					{
						// flip the container position
						y -= targetBounds.height;

						if (this.get_position() != $IG.DropDownPopupPosition.Left && this.get_position() != $IG.DropDownPopupPosition.Right)
						{
							y -= sourceBounds.height;
						} else
						{
							y += sourceBounds.height;
						}

						reset = true;
						this._offScreen = true;
						y -= this._offsetY * 2; // account for the "Y" offset, but in the reverse direction
						// note that since we have already accounted for it, we need to do this twice now   
					}
				}
			}

		} else if (targetBounds.height > windowHeight - sourceElementPosition.y + windowScrollTop)
		{
			// flip the container position
			y -= targetBounds.height;

			if (this.get_position() != $IG.DropDownPopupPosition.Left && this.get_position() != $IG.DropDownPopupPosition.Right)
			{
				y -= sourceBounds.height;
			} else
			{
				y += sourceBounds.height;
			}

			reset = true;
			this._offScreen = true;
			y -= this._offsetY * 2; // account for the "Y" offset, but in the reverse direction
			// note that since we have already accounted for it, we need to do this twice now
		}

		if (reset)
		{
			container.style.marginTop = y + 'px';
		}

	},

	


	

	// helper method
	__handleHidden: function(e)
	{

		if (this._visible)
		{
			this.set_visible(false);
		}
	},

	// helper method
	__handleVisible: function(e)
	{
		if (!this._visible)
		{
			this.set_visible(true);
		}
	},

	// helper method
	__handleTrigger: function(e)
	{
		if (this._visible)
		{
			this.set_visible(false);
		} else
		{
			this.set_visible(true);
		}
	},

	__showDropDown: function()
	{
		/// <summary>
		/// Causes the dropdown to show
		/// </summary>

		// retrieve the correct container reference depending on whether we have animations enabled or not
		var container = (this._enableAnimations) ? this._animationsContainer : this._targetContainer;

		// initialize the container before we show it
		container.style.position = 'absolute';
		container.style.display = '';
		container.style.visibility = 'visible';
		container.style.zIndex = this._zIndex;

		
		var x = 0, y = 0; // marginLeft, marginTop

		// default is left bottom
		y = Sys.UI.DomElement.getBounds(this._sourceElement).height;

		var targetBounds = this._targetBounds;
		var sourceBounds = Sys.UI.DomElement.getBounds(this._sourceElement);

		// if we want the container to be positioned anywhere above the source element
		var isTop = this._position == $IG.DropDownPopupPosition.TopLeft || this._position == $IG.DropDownPopupPosition.TopRight;

		// handle positioning
		switch (this._position)
		{

			case $IG.DropDownPopupPosition.Default:
				// default is left bottom . Also handles AUTO
				break;
			case $IG.DropDownPopupPosition.Center: // default is bottom
				x += sourceBounds.width / 2;
				x -= targetBounds.width / 2;
				break;
			case $IG.DropDownPopupPosition.Left:
				x -= targetBounds.width;
				y -= sourceBounds.height;
				break;
			case $IG.DropDownPopupPosition.Right:
				x += sourceBounds.width;
				y -= sourceBounds.height;
				break;
			case $IG.DropDownPopupPosition.BottomLeft:
				// this is the default positioning
				//x = 
				//y = 
				break;
			case $IG.DropDownPopupPosition.BottomRight:
				x += sourceBounds.width;
				x -= targetBounds.width;
				//y = 
				break;
			case $IG.DropDownPopupPosition.TopLeft:
				// x = 0;
				y -= targetBounds.height;
				y -= sourceBounds.height;
				break;
			case $IG.DropDownPopupPosition.TopRight:
				x += sourceBounds.width;
				x -= targetBounds.width;
				y -= targetBounds.height;
				y -= sourceBounds.height;
				break;
			default:
				break;
		}

		//if(!this._dropDownIsChild)
		//{
		container.style.marginLeft = '';
		container.style.marginTop = '';

		//  var p0 = $util.getPosition(this._sourceElement), p1 = $util.getPosition(container);
		var p0 = Sys.UI.DomElement.getLocation(this._sourceElement), p1 = Sys.UI.DomElement.getLocation(container);

		// A.T. Fix for Bug 9553
		if (Sys.Browser.agent == Sys.Browser.Safari && this._sourceElement.nodeName == 'TD')
		{
			y -= this._sourceElement.offsetTop;
			y += this._sourceElement.parentNode.offsetTop;
		}

		if (this._outerContainer && Sys.Browser.agent == Sys.Browser.Opera)
		{
			y -= this._outerContainer.scrollTop;
		}

		x += p0.x - p1.x;
		y += p0.y - p1.y;

		// A.T: BR35639: Dropdown framework: scrollX and scrollY are not taken into account
		//x -= p0.scrollX;
		//y -= p0.scrollY;
		//}

		// account for offsetX and offsetY
		x += this._offsetX;
		if (isTop)
		{
			y -= this._offsetY;
		} else
		{
			y += this._offsetY;
		}

		container.style.marginLeft = x + 'px';
		container.style.marginTop = y + 'px';

		// adjust the dropdown position in case it will display off the screen
		if (!isTop && this._enableAutomaticPositioning)
		{
			this._adjustDropDownPosition(targetBounds, sourceBounds, x, y);
		}

		
		this._targetContainer.style.display = "";
		this._targetContainer.style.visibility = "visible";

		// in case the currentHeight was set when the container was in display:none mode
		// we want to make sure that the correct height is stored
		var currentHeight = Sys.UI.DomElement.getBounds(this._targetContainer).height;
		//if (currentHeight > this._containerHeight) {
		this._containerHeight = currentHeight;
		//}

		// adds an iframe on the back of the dropdown container in order to handle the SELECT bug with IE 6
		this._addBackgroundIFrame();

		// we need to know what is the max height towards which the animation will grow the container
		this._dropDownAnimation.set_maxHeight(this._containerHeight);

		if (this._enableAnimations)
		{
			this._dropDownAnimation.play(); // start the 'show' animation

		}

	},

	__hideDropDown: function()
	{
		if (this._enableAnimations)
		{
			this._dropDownAnimation.play(); // start the 'hide' animation

		} else
		{
			// if animations are enabled the stuff below will be done in the end() animation method
			this._targetContainer.style.display = 'none';
			this._targetContainer.style.visibility = 'hidden';
			// hide the background iframe
			if (this._childFrame)
			{
				this._childFrame.style.display = "none";
			}

		}

	},

	__notifyAnimationEnd: function()
	{
		if (this._animationEndListener != null && this._animationEndListener._onAnimationEnd)
			this._animationEndListener._onAnimationEnd();
	},

	__setLocation: function(element, point)
	{
		/// <summary>
		/// Sets the current location for an element.
		/// </summary>
		/// <param name="element" type="Sys.UI.DomElement" domElement="true">
		/// DOM element
		/// </param>
		/// <param name="point" type="Object">
		/// Point object (of the form {x,y})
		/// </param>
		/// <remarks>
		/// This method does not attempt to set the positioning mode of an element.
		/// The position is relative from the elements nearest position:relative or
		/// position:absolute element.
		/// </remarks>
		Sys.UI.DomElement.setLocation(element, point.x, point.y);
	}

	

};

$IG.DropDownBehavior.registerClass("Infragistics.Web.UI.DropDownBehavior");



$IG.UIObjectDropDownBehavior = function()
{
    ///<summary>
    /// An object that allows the developer to specify elements and/or UIObjects that 
    /// should be source elements and/or target elements.  the Target element wll be the 
    /// drop down target (popup) while the source will be the element that receives 
    /// drop down events
    ///</summary>
}

$IG.UIObjectDropDownBehavior.prototype = 
{

};

$IG.UIObjectDropDownBehavior.registerClass("Infragistics.Web.UI.UIObjectDropDownBehavior");


$IG.DropDownEvents = function (behavior) 
{

    ///<summary>
    /// An object that allows the developer to attach event listeners associated with a 
    /// Infragistics.Web.UI.DropDownBehavior. All handlers should have the following signature: 
    /// handler (behavior, evntArgs)
    ///</summary>
    this._handlers ={};
    this._behavior = behavior;
}

$IG.DropDownEvents.prototype = 
{
    // this will be invoked after the dropdown container has been shown
    addSetVisibleHandler:function(handler)
    {
        ///<summary>
        /// 
        ///</summary>
        ///<param name="handler" type="Function">
        /// The function that should be called when the event is fired.
        ///</param>
        ///<remarks>
        ///
        ///</remarks>
        this.__addHandler("SetVisible", handler, $IG.DropDownEventArgs);
    },
    
    // this will be invoked after the dropdown container has been hidden
    addSetHiddenHandler:function(handler)
    {
        ///<summary>
        /// 
        ///</summary>
        ///<param name="handler" type="Function">
        /// The function that should be called when the event is fired.
        ///</param>
        ///<remarks>
        ///
        ///</remarks>
        this.__addHandler("SetHidden", handler, $IG.DropDownEventArgs);
    },
    
    // this will be invoked before the dropdown is physically hidden on the screen
    addSettingHiddenHandler:function(handler)
    {
        ///<summary>
        /// 
        ///</summary>
        ///<param name="handler" type="Function">
        /// The function that should be called when the event is fired.
        ///</param>
        ///<remarks>
        ///
        ///</remarks>
        this.__addHandler("SettingHidden", handler, $IG.CancelDropDownEventArgs);
    },
    
    // this will be invoked before the dropdown is physically shown on the screen
    addSettingVisibleHandler:function(handler)
    {
        ///<summary>
        /// 
        ///</summary>
        ///<param name="handler" type="Function">
        /// The function that should be called when the event is fired.
        ///</param>
        ///<remarks>
        ///
        ///</remarks>
        this.__addHandler("SettingVisible", handler, $IG.CancelDropDownEventArgs);
    },
    
    removeSetVisibleHandler:function()
    {
        ///<summary>
        /// removes the handler
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        this.__removeHandler("SetVisible");
    },
    
    removeSettingVisibleHandler:function()
    {
        ///<summary>
        /// removes the handler
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        this.__removeHandler("SettingVisible");
    },
    
    removeSetHiddenHandler:function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        this.__removeHandler("SetHidden");
    },
    
    removeSettingHiddenHandler:function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        this.__removeHandler("SettingHidden");
    },
    
    // we keep a map of handlers that have been registered
    __addHandler:function(name, handler, args)
    {
		var handlers = this._handlers[name];
		if(!handlers)
			this._handlers[name] = handlers = [];
		
		var i = -1;
		while(++i < handlers.length)
			if(handlers[i])
				break;
		handlers[i] = [handler, args];
    },
    
    __removeHandler:function(name, handler, args)
    {
		var handlers = this._handlers[name];
		if(!handlers)
			return;
		var i = -1;
		while(++i < handlers.length)
		{
			var obj = handlers[i];
			if(obj && obj[0] == handler)
				handlers[i] = null;
		}
    },
    
    // fires an event using the registered handler for that event
    _fireEvent:function(name, evntArgs)
    {
		var handlers = this._handlers[name];
		var count = handlers ? handlers.length : 0;
		for(var i = 0; i < count; i++)
		{
			var handler = handlers[i];
			if(!handler)
				continue;
			var evnt = handler[0];
			var args = new handler[1](evntArgs);
			// if the cancel flag was set in the DropDown cancel event arguments
			// we will cancel this event
			evnt(this._behavior, args);
			if(args._cancel)
				return true; // will cancel
		}
		return false;
    }
}

$IG.DropDownEvents.registerClass("Infragistics.Web.UI.DropDownEvents");

$IG.DropDownEventArgs = function(behavior) 
{
    ///<summary>
    /// arguments class for dropdown events
    ///</summary>
    this._behavior = behavior;
}

$IG.DropDownEventArgs.prototype = 
{
    get_source: function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        return this._behavior.get_sourceElement();
    },
    
    get_targetContainer: function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        return this._behavior.get_targetContainer();
    },
    
    get_targetContent: function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        return this._behavior.get_targetContent();
    },
    
    get_dropDownBehavior: function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        return this._behavior;
    }
    
}

$IG.DropDownEventArgs.registerClass("Infragistics.Web.UI.DropDownEventArgs");


$IG.CancelDropDownEventArgs = function() 
{
    this._cancel = false; // to cancel the event
    $IG.CancelDropDownEventArgs.initializeBase(this);
}

$IG.CancelDropDownEventArgs.prototype = 
{
    get_cancel: function()
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        return this._cancel;
    },
    
    set_cancel: function(cancel)
    {
        ///<summary>
        /// 
        ///</summary>
        ///<remarks>
        ///
        ///</remarks>
        this._cancel = cancel;
    }
}

$IG.CancelDropDownEventArgs.registerClass("Infragistics.Web.UI.CancelDropDownEventArgs", $IG.DropDownEventArgs);


///------------- DROP DOWN ANIMATION ----------------------

$IG.DropDownAnimation = function(behavior)
{
    ///
    /// <summary>
    /// the drop down animation extends $IG.AnimationBase
    /// it is a very simple animation that manipulates the height of the animationContainer which is the parent of the target dropdown container
    /// in case the animation is performed from bottom to top, we also manipulate the marginTop property
    /// to create the effect that the container actually slides from bottom to top
    ///
    /// we change the animationContainer's height on every animation tick, in the onNext() method
    /// </summary>
    ///
    this._dropDownBehavior = behavior;
    this._increaseDelta = 0; // number of pixels by which we modify the height on every animation tick
    this._marginDelta=0;
    this._accumulatedHeight = 0; // currently accumulated height
    this._maxHeight = 0; // maximum height to which we will grow the container
    this._minHeight=0;
    this._maxMargin=0; // max margin if the animation is from bottom to top
    this._container = null;
    this._isTop = false;
    this._accumulatedMarginTop = 0; // if the animation is from bottom to top
    
    $IG.DropDownAnimation.initializeBase(this);
}

$IG.DropDownAnimation.prototype = 
{

    set_maxHeight:function(maxHeight) {
    
        this._maxHeight = maxHeight;
    },

    onBegin:function() {

        this._container = this._dropDownBehavior.get_animationsContainer();
        
        var pos = this._dropDownBehavior.get_position();
        
        // calculate the number of pixels to increase the container height
        // we don't really need this if we use calc() from $IG.AnimationBase
        //this._increaseDelta = this._maxHeight / this.get_duration();
        
        if (this._dropDownBehavior.get_visible())
        {
            this._accumulatedHeight = this._maxHeight;
            // since the dropdown is already shown, and we will be performing an top to bottom 
            // animation, we will actually decrease the height of the container
            // this is not needed if we use calc() from $IG.AnimationBase
            this._increaseDelta = -1*this._increaseDelta;
        }

        if (this._dropDownBehavior.get_offScreen() || pos == $IG.DropDownPopupPosition.TopLeft || pos == $IG.DropDownPopupPosition.TopRight)
        {
            // in the case when the drop down container is positioned above the source element
            // we need to also change the marginTop to create the visually correct animation effect
            this._isTop = true;        
            this._marginDelta = this._increaseDelta;
            // we will grow the margin until it reaches the initial margin as if 
            // there was no animation taking place
            this._maxMargin = parseInt(this._container.style.marginTop); 

            // initial marginTop
            this._accumulatedMarginTop = this._maxMargin + this._maxHeight;
            
            if (this._dropDownBehavior.get_visible()) {
                // in case the dropdown is positioned above, and is already shown and the
                // animation will be from top to bottom (hiding)
                this._accumulatedMarginTop = this._maxMargin;
            }
            
            this._container.style.marginTop = this._accumulatedMarginTop + 'px';

           // this._accumulatedMarginTop = $util.getPosition(this._dropDownBehavior.get_sourceElement()).y;
            

            
            
            //this._container.style.marginTop = this._accumulatedMarginTop + 'px';
        }

    },
    
    onNext:function() {
    
       // modify the height
      // if (this._dropDownBehavior.get_Visible()) {
      //  this._increaseDelta = this._calc($IG.AnimationEquationType.EaseInOut, this._time, this._maxHeight, 0, this.get_duration());
       //} else {
        this._increaseDelta = this._calc(this._dropDownBehavior.get_animationType(), this._time, 0, this._maxHeight, this.get_duration());
      // }

      if (this._dropDownBehavior.get_visible()) {
       this._increaseDelta = -1*this._increaseDelta;
      } 
      
      this._accumulatedHeight += this._increaseDelta;
       
       // stop the animation if we have surpassed the maximum height we can grow to
       if (this._accumulatedHeight >= this._maxHeight || this._accumulatedHeight <0 ) {
       
           if (this._accumulatedHeight<0)
                this._accumulatedHeight=0; 
           else if (this._accumulatedHeight>this._maxHeight)
                this._accumulatedHeight=this._maxHeight; // the accumulated height should never grow above the maximum height

           this.stop(); // stop the current animation -> onEnd will be called after this function exits
           
       } 
       if (this._isTop)
       {    
            this._accumulatedMarginTop -= this._increaseDelta;
            this._container.style.marginTop = parseInt(this._accumulatedMarginTop) + 'px';
           
       }
       
        $util.setAbsoluteHeight(this._container, parseInt(this._accumulatedHeight));
        
        // handle the background iFrame (IE6)
        if (this._dropDownBehavior._childFrame) {
            $util.setAbsoluteHeight(this._dropDownBehavior._childFrame, parseInt(this._accumulatedHeight));
        }
    },
    
    onEnd:function() {

        if (this._isTop) {
            // if the dropdown container is positioned on the top and we are changing the margins as well
            // we need to make sure that the current accumulated margin top doesn't surpass or goes below
            // the maximum initial margin, after the animation ends
            if (this._accumulatedMarginTop != this._maxMargin)
            {
                this._container.style.marginTop = this._maxMargin + 'px';
            }
        }
        
        //re-initialize these variables for the next animation play
        this._accumulatedHeight=0;
        this._accumulatedMarginTop = 0;
        this._increaseDelta=0;
        this._marginDelta=0;
        this._isTop=false;

        // the dropdown was visible, now we need to hide the container because 
        // it is hidden now
        
        // we must not call set_Visible as it will actually want to cause the popup
        // to show and hide
        // we just flip the _visible property in the dropdown behavior
        
        if (this._dropDownBehavior.get_visible()) {        

            this._container.style.display = 'none';
		    this._container.style.visibility = 'hidden';
		    // hide the iframe
		    if (this._dropDownBehavior._childFrame) {
                this._dropDownBehavior._childFrame.style.display = "none";
            }
            this._dropDownBehavior._visible = false;
         
        } else {
            this._dropDownBehavior._visible = true;
        }
        
        // notify listener for animation end event
        this._dropDownBehavior.__notifyAnimationEnd();

    }
}

$IG.DropDownAnimation.registerClass("Infragistics.Web.UI.DropDownAnimation", $IG.AnimationBase);
/* END Infragistics.Web.UI.SharedScripts.igDropDown.js */
/* START Telerik.Web.UI.Common.Core.js */
try{
document.execCommand("BackgroundImageCache",false,true);
}
catch(err){
}
Type.registerNamespace("Telerik.Web.UI");
window.$telerik=window.TelerikCommonScripts=Telerik.Web.CommonScripts={_rgbToHex:function(_1){
if(_1.toLowerCase().indexOf("rgb")!=-1){
var _2="#";
var _3=function(_4){
var _5=parseInt(_4,10).toString(16);
_2=_2+(_5.length==1?"0"+_5:_5);
return _4;
};
_1=_1.replace(/(\d+)/gi,_3);
_3=null;
return _2;
}else{
return _1;
}
},getOuterSize:function(_6){
var _7=$telerik.getBounds(_6);
var _8=$telerik.getMarginBox(_6);
return {width:_7.width+_8.left+_8.right,height:_7.height+_8.top+_8.bottom};
},getOuterBounds:function(_9){
var _a=$telerik.getBounds(_9);
var _b=$telerik.getMarginBox(_9);
return {x:_a.x-_b.left,y:_a.y-_b.top,width:_a.width+_b.left+_b.right,height:_a.height+_b.top+_b.bottom};
},getInvisibleParent:function(_c){
while(_c&&_c!=document){
if("none"==$telerik.getCurrentStyle(_c,"display","")){
return _c;
}
_c=_c.parentNode;
}
return null;
},addParentVisibilityChangeHandler:function(_d,_e){
if(_d){
if($telerik.isIE){
$addHandler(_d,"propertychange",_e);
}else{
_d.addEventListener("DOMAttrModified",_e,false);
}
}
},removeParentVisibilityChangeHandler:function(_f,_10){
if(_f&&_10){
if($telerik.isIE){
$removeHandler(_f,"propertychange",_10);
}else{
_f.removeEventListener("DOMAttrModified",_10,false);
}
}
},isRightToLeft:function(_11){
while(_11&&_11.nodeType!==9){
if(_11.dir=="rtl"||$telerik.getCurrentStyle(_11,"direction")=="rtl"){
return true;
}
_11=_11.parentNode;
}
return false;
},getCorrectScrollLeft:function(_12){
if($telerik.isRightToLeft(_12)){
return -(_12.scrollWidth-_12.offsetWidth-Math.abs(_12.scrollLeft));
}else{
return _12.scrollLeft;
}
},getNextHtmlNode:function(_13){
if(!_13||!_13.previousSibling){
return null;
}
while(_13.previousSibling){
if(_13.previousSibling.nodeType==1){
return _13.previousSibling;
}
_13=_13.nextSibling;
}
},getPreviousHtmlNode:function(_14){
if(!_14||!_14.nextSibling){
return null;
}
while(_14.nextSibling){
if(_14.nextSibling.nodeType==1){
return _14.nextSibling;
}
_14=_14.nextSibling;
}
},getTextContent:function(_15){
if(!_15){
return null;
}
if(_15.innerText!=null){
return _15.innerText;
}
if(_15.textContent!=null){
var _16=_15.textContent;
_16=_16.replace(/<!--(.|\s)*?-->/gi,"");
return _16;
}
return null;
},_borderStyleNames:["borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle"],_borderWidthNames:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],_paddingWidthNames:["paddingTop","paddingRight","paddingBottom","paddingLeft"],_marginWidthNames:["marginTop","marginRight","marginBottom","marginLeft"],radControls:[],registerControl:function(_17){
if(!Array.contains(this.radControls,_17)){
Array.add(this.radControls,_17);
}
},unregisterControl:function(_18){
Array.remove(this.radControls,_18);
},repaintChildren:function(_19){
var _1a=_19.get_element();
for(var i=0,_1c=this.radControls.length;i<_1c;i++){
var _1d=this.radControls[i];
if(_1d.repaint&&this.isDescendant(_1a,_1d.get_element())){
_1d.repaint();
}
}
},_borderThickness:function(){
$telerik._borderThicknesses={};
var _1e=document.createElement("div");
var _1f=document.createElement("div");
_1e.style.visibility="hidden";
_1e.style.position="absolute";
_1e.style.fontSize="1px";
_1f.style.height="0px";
_1f.style.overflow="hidden";
document.body.appendChild(_1e).appendChild(_1f);
var _20=_1e.offsetHeight;
_1f.style.borderTop="solid black";
_1f.style.borderTopWidth="thin";
$telerik._borderThicknesses["thin"]=_1e.offsetHeight-_20;
_1f.style.borderTopWidth="medium";
$telerik._borderThicknesses["medium"]=_1e.offsetHeight-_20;
_1f.style.borderTopWidth="thick";
$telerik._borderThicknesses["thick"]=_1e.offsetHeight-_20;
if(typeof (_1e.removeChild)!=="undefined"){
_1e.removeChild(_1f);
}
document.body.removeChild(_1e);
if(!$telerik.isSafari){
_1f.outerHTML=null;
}
if(!$telerik.isSafari){
_1e.outerHTML=null;
}
_1e=null;
_1f=null;
},getCurrentStyle:function(_21,_22,_23){
var _24=null;
if(_21){
if(_21.currentStyle){
_24=_21.currentStyle[_22];
}else{
if(document.defaultView&&document.defaultView.getComputedStyle){
var _25=document.defaultView.getComputedStyle(_21,null);
if(_25){
_24=_25[_22];
}
}
}
if(!_24&&_21.style.getPropertyValue){
_24=_21.style.getPropertyValue(_22);
}else{
if(!_24&&_21.style.getAttribute){
_24=_21.style.getAttribute(_22);
}
}
}
if((!_24||_24==""||typeof (_24)==="undefined")){
if(typeof (_23)!="undefined"){
_24=_23;
}else{
_24=null;
}
}
return _24;
},getInheritedBackgroundColor:function(_26){
if(!_26){
return "#FFFFFF";
}
var _27=$telerik.getCurrentStyle(_26,"backgroundColor");
try{
while(!_27||_27==""||_27=="transparent"||_27=="rgba(0, 0, 0, 0)"){
_26=_26.parentNode;
if(!_26){
_27="#FFFFFF";
}else{
_27=$telerik.getCurrentStyle(_26,"backgroundColor");
}
}
}
catch(ex){
_27="#FFFFFF";
}
return _27;
},getLocation:function(_28){
if(_28===document.documentElement){
return new Sys.UI.Point(0,0);
}
if(Sys.Browser.agent==Sys.Browser.InternetExplorer){
if(_28.window===_28||_28.nodeType===9||!_28.getClientRects||!_28.getBoundingClientRect){
return new Sys.UI.Point(0,0);
}
var _29=_28.getClientRects();
if(!_29||!_29.length){
return new Sys.UI.Point(0,0);
}
var _2a=_29[0];
var _2b=0;
var _2c=0;
var _2d=false;
try{
_2d=_28.ownerDocument.parentWindow.frameElement;
}
catch(ex){
_2d=true;
}
if(_2d){
var _2e=_28.getBoundingClientRect();
if(!_2e){
return new Sys.UI.Point(0,0);
}
var _2f=_2a.left;
var _30=_2a.top;
for(var i=1;i<_29.length;i++){
var r=_29[i];
if(r.left<_2f){
_2f=r.left;
}
if(r.top<_30){
_30=r.top;
}
}
_2b=_2f-_2e.left;
_2c=_30-_2e.top;
}
var _33=_28.document.documentElement;
var _34=new Sys.UI.Point(_2a.left-2-_2b+$telerik.getCorrectScrollLeft(_33),_2a.top-2-_2c+_33.scrollTop);
if($telerik.quirksMode){
_34.x+=$telerik.getCorrectScrollLeft(document.body);
_34.y+=document.body.scrollTop;
}
return _34;
}
var _34=Sys.UI.DomElement.getLocation(_28);
if($telerik.isOpera){
var _35=_28.offsetParent;
while(_35&&_35.tagName.toUpperCase()!="BODY"&&_35.tagName.toUpperCase()!="HTML"){
_34.x-=$telerik.getCorrectScrollLeft(_35);
_34.y-=_35.scrollTop;
_35=_35.offsetParent;
}
}
if($telerik.isSafari){
var _35=_28.parentNode;
var _36=null;
var _37=null;
if($telerik.isSafari3||$telerik.isSafari2){
while(_35&&_35.tagName.toUpperCase()!="BODY"&&_35.tagName.toUpperCase()!="HTML"){
if(_35.tagName.toUpperCase()=="TD"){
_36=_35;
}else{
if(_35.tagName.toUpperCase()=="TABLE"){
_37=_35;
}else{
var _38=$telerik.getCurrentStyle(_35,"position");
if(_38=="absolute"||_38=="relative"){
var _39=$telerik.getCurrentStyle(_35,"borderTopWidth",0);
var _3a=$telerik.getCurrentStyle(_35,"borderLeftWidth",0);
_34.x+=parseInt(_39);
_34.y+=parseInt(_3a);
}
}
}
var _38=$telerik.getCurrentStyle(_35,"position");
if(_38=="absolute"||_38=="relative"){
_34.x-=_35.scrollLeft;
_34.y-=_35.scrollTop;
}
if(_36&&_37){
_34.x+=parseInt($telerik.getCurrentStyle(_37,"borderTopWidth"));
_34.y+=parseInt($telerik.getCurrentStyle(_37,"borderLeftWidth"));
if($telerik.getCurrentStyle(_37,"borderCollapse")!="collapse"){
_34.x+=parseInt($telerik.getCurrentStyle(_36,"borderTopWidth"));
_34.y+=parseInt($telerik.getCurrentStyle(_36,"borderLeftWidth"));
}
_36=null;
_37=null;
}else{
if(_37){
if($telerik.getCurrentStyle(_37,"borderCollapse")!="collapse"){
_34.x+=parseInt($telerik.getCurrentStyle(_37,"borderTopWidth"));
_34.y+=parseInt($telerik.getCurrentStyle(_37,"borderLeftWidth"));
}
_37=null;
}
}
_35=_35.parentNode;
}
}
}
if($telerik.isIE&&$telerik.quirksMode){
_34.x+=$telerik.getCorrectScrollLeft(document.body);
_34.y+=document.body.scrollTop;
}
return _34;
},setLocation:function(_3b,_3c){
Sys.UI.DomElement.setLocation(_3b,_3c.x,_3c.y);
},findControl:function(_3d,id){
var _3f=_3d.getElementsByTagName("*");
for(var i=0,l=_3f.length;i<l;i++){
var _42=_3f[i].id;
if(_42&&_42.endsWith(id)){
return $find(_42);
}
}
return null;
},findElement:function(_43,id){
var _45=_43.getElementsByTagName("*");
for(var i=0,l=_45.length;i<l;i++){
var _48=_45[i].id;
if(_48&&_48.endsWith(id)){
return $get(_48);
}
}
return null;
},getContentSize:function(_49){
if(!_49){
throw Error.argumentNull("element");
}
var _4a=$telerik.getSize(_49);
var _4b=$telerik.getBorderBox(_49);
var _4c=$telerik.getPaddingBox(_49);
return {width:_4a.width-_4b.horizontal-_4c.horizontal,height:_4a.height-_4b.vertical-_4c.vertical};
},getSize:function(_4d){
if(!_4d){
throw Error.argumentNull("element");
}
return {width:_4d.offsetWidth,height:_4d.offsetHeight};
},setContentSize:function(_4e,_4f){
if(!_4e){
throw Error.argumentNull("element");
}
if(!_4f){
throw Error.argumentNull("size");
}
if($telerik.getCurrentStyle(_4e,"MozBoxSizing")=="border-box"||$telerik.getCurrentStyle(_4e,"BoxSizing")=="border-box"){
var _50=$telerik.getBorderBox(_4e);
var _51=$telerik.getPaddingBox(_4e);
_4f={width:_4f.width+_50.horizontal+_51.horizontal,height:_4f.height+_50.vertical+_51.vertical};
}
_4e.style.width=_4f.width.toString()+"px";
_4e.style.height=_4f.height.toString()+"px";
},setSize:function(_52,_53){
if(!_52){
throw Error.argumentNull("element");
}
if(!_53){
throw Error.argumentNull("size");
}
var _54=$telerik.getBorderBox(_52);
var _55=$telerik.getPaddingBox(_52);
var _56={width:_53.width-_54.horizontal-_55.horizontal,height:_53.height-_54.vertical-_55.vertical};
$telerik.setContentSize(_52,_56);
},getBounds:function(_57){
var _58=$telerik.getLocation(_57);
return new Sys.UI.Bounds(_58.x,_58.y,_57.offsetWidth||0,_57.offsetHeight||0);
},setBounds:function(_59,_5a){
if(!_59){
throw Error.argumentNull("element");
}
if(!_5a){
throw Error.argumentNull("bounds");
}
$telerik.setSize(_59,_5a);
$telerik.setLocation(_59,_5a);
},getClientBounds:function(){
var _5b;
var _5c;
switch(Sys.Browser.agent){
case Sys.Browser.InternetExplorer:
_5b=document.documentElement.clientWidth;
_5c=document.documentElement.clientHeight;
if(_5b==0&&_5c==0){
_5b=document.body.clientWidth;
_5c=document.body.clientHeight;
}
break;
case Sys.Browser.Safari:
_5b=window.innerWidth;
_5c=window.innerHeight;
break;
case Sys.Browser.Opera:
_5b=Math.min(window.innerWidth,document.body.clientWidth);
_5c=Math.min(window.innerHeight,document.body.clientHeight);
break;
default:
_5b=Math.min(window.innerWidth,document.documentElement.clientWidth);
_5c=Math.min(window.innerHeight,document.documentElement.clientHeight);
break;
}
return new Sys.UI.Bounds(0,0,_5b,_5c);
},getMarginBox:function(_5d){
if(!_5d){
throw Error.argumentNull("element");
}
var box={top:$telerik.getMargin(_5d,Telerik.Web.BoxSide.Top),right:$telerik.getMargin(_5d,Telerik.Web.BoxSide.Right),bottom:$telerik.getMargin(_5d,Telerik.Web.BoxSide.Bottom),left:$telerik.getMargin(_5d,Telerik.Web.BoxSide.Left)};
box.horizontal=box.left+box.right;
box.vertical=box.top+box.bottom;
return box;
},getPaddingBox:function(_5f){
if(!_5f){
throw Error.argumentNull("element");
}
var box={top:$telerik.getPadding(_5f,Telerik.Web.BoxSide.Top),right:$telerik.getPadding(_5f,Telerik.Web.BoxSide.Right),bottom:$telerik.getPadding(_5f,Telerik.Web.BoxSide.Bottom),left:$telerik.getPadding(_5f,Telerik.Web.BoxSide.Left)};
box.horizontal=box.left+box.right;
box.vertical=box.top+box.bottom;
return box;
},getBorderBox:function(_61){
if(!_61){
throw Error.argumentNull("element");
}
var box={top:$telerik.getBorderWidth(_61,Telerik.Web.BoxSide.Top),right:$telerik.getBorderWidth(_61,Telerik.Web.BoxSide.Right),bottom:$telerik.getBorderWidth(_61,Telerik.Web.BoxSide.Bottom),left:$telerik.getBorderWidth(_61,Telerik.Web.BoxSide.Left)};
box.horizontal=box.left+box.right;
box.vertical=box.top+box.bottom;
return box;
},isBorderVisible:function(_63,_64){
if(!_63){
throw Error.argumentNull("element");
}
if(_64<Telerik.Web.BoxSide.Top||_64>Telerik.Web.BoxSide.Left){
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,_64,"Telerik.Web.BoxSide"));
}
var _65=$telerik._borderStyleNames[_64];
var _66=$telerik.getCurrentStyle(_63,_65);
return _66!="none";
},getMargin:function(_67,_68){
if(!_67){
throw Error.argumentNull("element");
}
if(_68<Telerik.Web.BoxSide.Top||_68>Telerik.Web.BoxSide.Left){
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,_68,"Telerik.Web.BoxSide"));
}
var _69=$telerik._marginWidthNames[_68];
var _6a=$telerik.getCurrentStyle(_67,_69);
try{
return $telerik.parsePadding(_6a);
}
catch(ex){
return 0;
}
},getBorderWidth:function(_6b,_6c){
if(!_6b){
throw Error.argumentNull("element");
}
if(_6c<Telerik.Web.BoxSide.Top||_6c>Telerik.Web.BoxSide.Left){
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,_6c,"Telerik.Web.BoxSide"));
}
if(!$telerik.isBorderVisible(_6b,_6c)){
return 0;
}
var _6d=$telerik._borderWidthNames[_6c];
var _6e=$telerik.getCurrentStyle(_6b,_6d);
return $telerik.parseBorderWidth(_6e);
},getPadding:function(_6f,_70){
if(!_6f){
throw Error.argumentNull("element");
}
if(_70<Telerik.Web.BoxSide.Top||_70>Telerik.Web.BoxSide.Left){
throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,_70,"Telerik.Web.BoxSide"));
}
var _71=$telerik._paddingWidthNames[_70];
var _72=$telerik.getCurrentStyle(_6f,_71);
return $telerik.parsePadding(_72);
},parseBorderWidth:function(_73){
if(_73){
switch(_73){
case "thin":
case "medium":
case "thick":
return $telerik._borderThicknesses[_73];
case "inherit":
return 0;
}
var _74=$telerik.parseUnit(_73);
return _74.size;
}
return 0;
},parsePadding:function(_75){
if(_75){
if(_75=="auto"||_75=="inherit"){
return 0;
}
var _76=$telerik.parseUnit(_75);
return _76.size;
}
return 0;
},parseUnit:function(_77){
if(!_77){
throw Error.argumentNull("value");
}
_77=_77.trim().toLowerCase();
var l=_77.length;
var s=-1;
for(var i=0;i<l;i++){
var ch=_77.substr(i,1);
if((ch<"0"||ch>"9")&&ch!="-"&&ch!="."&&ch!=","){
break;
}
s=i;
}
if(s==-1){
throw Error.create("No digits");
}
var _7c;
var _7d;
if(s<(l-1)){
_7c=_77.substring(s+1).trim();
}else{
_7c="px";
}
_7d=parseFloat(_77.substr(0,s+1));
if(_7c=="px"){
_7d=Math.floor(_7d);
}
return {size:_7d,type:_7c};
},containsPoint:function(_7e,x,y){
return x>=_7e.x&&x<=(_7e.x+_7e.width)&&y>=_7e.y&&y<=(_7e.y+_7e.height);
},isDescendant:function(_81,_82){
for(var n=_82.parentNode;n!=null;n=n.parentNode){
if(n==_81){
return true;
}
}
return false;
},isDescendantOrSelf:function(_84,_85){
if(_84===_85){
return true;
}
return $telerik.isDescendant(_84,_85);
},setOuterHeight:function(_86,_87){
if(_87<=0||_87==""){
_86.style.height="";
}else{
_86.style.height=_87+"px";
var _88=_86.offsetHeight-_87;
var _89=_87-_88;
if(_89>0){
_86.style.height=_89+"px";
}else{
_86.style.height="";
}
}
},setOpacity:function(_8a,_8b){
if(!_8a){
throw Error.argumentNull("element");
}
try{
if(_8a.filters){
var _8c=_8a.filters;
var _8d=true;
if(_8c.length!==0){
var _8e=_8c["DXImageTransform.Microsoft.Alpha"];
if(_8e){
_8d=false;
_8e.opacity=_8b*100;
}
}
if(_8d){
_8a.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity="+(_8b*100)+")";
}
}else{
_8a.style.opacity=_8b;
}
}
catch(ex){
}
},getOpacity:function(_8f){
if(!_8f){
throw Error.argumentNull("element");
}
var _90=false;
var _91;
try{
if(_8f.filters){
var _92=_8f.filters;
if(_92.length!==0){
var _93=_92["DXImageTransform.Microsoft.Alpha"];
if(_93){
_91=_93.opacity/100;
_90=true;
}
}
}else{
_91=$telerik.getCurrentStyle(_8f,"opacity",1);
_90=true;
}
}
catch(ex){
}
if(_90===false){
return 1;
}
return parseFloat(_91);
},addCssClasses:function(_94,_95){
for(var i=0;i<_95.length;i++){
Sys.UI.DomElement.addCssClass(_94,_95[i]);
}
},removeCssClasses:function(_97,_98){
for(var i=0;i<_98.length;i++){
Sys.UI.DomElement.removeCssClass(_97,_98[i]);
}
},setOuterWidth:function(_9a,_9b){
if(_9b<=0||_9b==""){
_9a.style.width="";
}else{
_9a.style.width=_9b+"px";
var _9c=_9a.offsetWidth-_9b;
var _9d=_9b-_9c;
if(_9d>0){
_9a.style.width=_9d+"px";
}else{
_9a.style.width="";
}
}
},getScrollOffset:function(_9e,_9f){
var _a0=0;
var top=0;
var _a2=_9e;
while(_a2!=null&&_a2.scrollLeft!=null){
_a0+=$telerik.getCorrectScrollLeft(_a2);
top+=_a2.scrollTop;
if(!_9f||(_a2==document.body&&(_a2.scrollLeft!=0||_a2.scrollTop!=0))){
break;
}
_a2=_a2.parentNode;
}
return {x:_a0,y:top};
},getElementByClassName:function(_a3,_a4,_a5){
var _a6=null;
if(_a5){
_a6=_a3.getElementsByTagName(_a5);
}else{
_a6=_a3.getElementsByTagName("*");
}
for(var i=0,_a8=_a6.length;i<_a8;i++){
var _a9=_a6[i];
if(Sys.UI.DomElement.containsCssClass(_a9,_a4)){
return _a9;
}
}
return null;
},addExternalHandler:function(_aa,_ab,_ac){
if(_aa.addEventListener){
_aa.addEventListener(_ab,_ac,false);
}else{
if(_aa.attachEvent){
_aa.attachEvent("on"+_ab,_ac);
}
}
},removeExternalHandler:function(_ad,_ae,_af){
if(_ad.addEventListener){
_ad.removeEventListener(_ae,_af,false);
}else{
if(_ad.detachEvent){
_ad.detachEvent("on"+_ae,_af);
}
}
},cancelRawEvent:function(e){
if(!e){
return false;
}
if(e.preventDefault){
e.preventDefault();
}
if(e.stopPropagation){
e.stopPropagation();
}
e.cancelBubble=true;
e.returnValue=false;
return false;
},getOuterHtml:function(_b1){
if(_b1.outerHTML){
return _b1.outerHTML;
}else{
var _b2=_b1.cloneNode(true);
var _b3=_b1.ownerDocument.createElement("DIV");
_b3.appendChild(_b2);
return _b3.innerHTML;
}
},setVisible:function(e,_b5){
if(!e){
return;
}
if(_b5!=$telerik.getVisible(e)){
if(_b5){
if(e.style.removeAttribute){
e.style.removeAttribute("display");
}else{
e.style.removeProperty("display");
}
}else{
e.style.display="none";
}
e.style.visibility=_b5?"visible":"hidden";
}
},getVisible:function(e){
if(!e){
return false;
}
return (("none"!=$telerik.getCurrentStyle(e,"display"))&&("hidden"!=$telerik.getCurrentStyle(e,"visibility")));
},getViewPortSize:function(){
var _b7=0;
var _b8=0;
var _b9=document.body;
if(!$telerik.quirksMode&&!$telerik.isSafari){
_b9=document.documentElement;
}
if(window.innerWidth){
_b7=window.innerWidth;
_b8=window.innerHeight;
}else{
_b7=_b9.clientWidth;
_b8=_b9.clientHeight;
}
_b7+=_b9.scrollLeft;
_b8+=_b9.scrollTop;
return {width:_b7-6,height:_b8-6};
},elementOverflowsTop:function(_ba){
return $telerik.getLocation(_ba).y<0;
},elementOverflowsLeft:function(_bb){
return $telerik.getLocation(_bb).x<0;
},elementOverflowsBottom:function(_bc,_bd){
var _be=$telerik.getLocation(_bd).y+_bd.offsetHeight;
return _be>_bc.height;
},elementOverflowsRight:function(_bf,_c0){
var _c1=$telerik.getLocation(_c0).x+_c0.offsetWidth;
return _c1>_bf.width;
},getDocumentRelativeCursorPosition:function(e){
var _c3=document.documentElement.scrollLeft||document.body.scrollLeft;
var _c4=document.documentElement.scrollTop||document.body.scrollTop;
var _c5=e.clientX+_c3;
var top=e.clientY+_c4;
return {left:_c5,top:top};
},getFirstChildByTagName:function(_c7,_c8,_c9){
if(!_c7||!_c7.childNodes){
return null;
}
var _ca=_c7.childNodes[_c9]||_c7.firstChild;
while(_ca){
if(_ca.nodeType==1&&_ca.tagName.toLowerCase()==_c8){
return _ca;
}
_ca=_ca.nextSibling;
}
return null;
},getChildByClassName:function(_cb,_cc,_cd){
var _ce=_cb.childNodes[_cd]||_cb.firstChild;
while(_ce){
if(_ce.nodeType==1&&_ce.className.indexOf(_cc)>-1){
return _ce;
}
_ce=_ce.nextSibling;
}
return null;
},getChildrenByTagName:function(_cf,_d0){
var _d1=new Array();
var _d2=_cf.childNodes;
if($telerik.isIE){
_d2=_cf.children;
}
for(var i=0,_d4=_d2.length;i<_d4;i++){
var _d5=_d2[i];
if(_d5.nodeType==1&&_d5.tagName.toLowerCase()==_d0){
Array.add(_d1,_d5);
}
}
return _d1;
},getChildrenByClassName:function(_d6,_d7){
var _d8=new Array();
var _d9=_d6.childNodes;
if($telerik.isIE){
_d9=_d6.children;
}
for(var i=0,_db=_d9.length;i<_db;i++){
var _dc=_d9[i];
if(_dc.nodeType==1&&_dc.className.indexOf(_d7)>-1){
Array.add(_d8,_dc);
}
}
return _d8;
},isMouseOverElement:function(_dd,e){
var _df=$telerik.getBounds(_dd);
var _e0=$telerik.getDocumentRelativeCursorPosition(e);
return $telerik.containsPoint(_df,_e0.left,_e0.top);
},isMouseOverElementEx:function(_e1,e){
var _e3=null;
try{
_e3=$telerik.getOuterBounds(_e1);
}
catch(e){
return false;
}
if(e&&e.target){
var _e4=e.target.tagName;
if(_e4=="SELECT"||_e4=="OPTION"){
return true;
}
if(e.clientX<0||e.clientY<0){
return true;
}
}
var _e5=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;
var x=e.clientX+_e5.scrollLeft;
var y=e.clientY+_e5.scrollTop;
_e3.x+=2;
_e3.y+=2;
_e3.width-=4;
_e3.height-=4;
var _e8=$telerik.containsPoint(_e3,x,y);
return _e8;
}};
if(typeof (Sys.Browser.WebKit)=="undefined"){
Sys.Browser.WebKit={};
}
if(typeof (Sys.Browser.Chrome)=="undefined"){
Sys.Browser.Chrome={};
}
if(navigator.userAgent.indexOf("Chrome")>-1){
Sys.Browser.version=parseFloat(navigator.userAgent.match(/WebKit\/(\d+(\.\d+)?)/)[1]);
Sys.Browser.agent=Sys.Browser.Chrome;
Sys.Browser.name="Chrome";
}else{
if(navigator.userAgent.indexOf("WebKit/")>-1){
Sys.Browser.version=parseFloat(navigator.userAgent.match(/WebKit\/(\d+(\.\d+)?)/)[1]);
if(Sys.Browser.version<500){
Sys.Browser.agent=Sys.Browser.Safari;
Sys.Browser.name="Safari";
}else{
Sys.Browser.agent=Sys.Browser.WebKit;
Sys.Browser.name="WebKit";
}
}
}
$telerik.isChrome=Sys.Browser.agent==Sys.Browser.Chrome;
$telerik.isSafari3=Sys.Browser.agent==Sys.Browser.WebKit||Sys.Browser.agent==Sys.Browser.Chrome;
$telerik.isSafari2=Sys.Browser.agent==Sys.Browser.Safari;
$telerik.isSafari=$telerik.isSafari2||$telerik.isSafari3;
$telerik.isIE=Sys.Browser.agent==Sys.Browser.InternetExplorer;
$telerik.isIE7=$telerik.isIE&&Sys.Browser.version==7;
$telerik.isIE6=$telerik.isIE&&Sys.Browser.version<7;
$telerik.isOpera=Sys.Browser.agent==Sys.Browser.Opera;
$telerik.isFirefox=Sys.Browser.agent==Sys.Browser.Firefox;
$telerik.quirksMode=$telerik.isIE&&document.compatMode!="CSS1Compat";
$telerik.standardsMode=!$telerik.quirksMode;
try{
$telerik._borderThickness();
}
catch(err){
}
Telerik.Web.UI.Orientation=function(){
throw Error.invalidOperation();
};
Telerik.Web.UI.Orientation.prototype={Horizontal:0,Vertical:1};
Telerik.Web.UI.Orientation.registerEnum("Telerik.Web.UI.Orientation",false);
Telerik.Web.UI.RadWebControl=function(_e9){
Telerik.Web.UI.RadWebControl.initializeBase(this,[_e9]);
this._clientStateFieldID=null;
};
Telerik.Web.UI.RadWebControl.prototype={initialize:function(){
Telerik.Web.UI.RadWebControl.callBaseMethod(this,"initialize");
$telerik.registerControl(this);
if(!this.get_clientStateFieldID()){
return;
}
var _ea=$get(this.get_clientStateFieldID());
if(!_ea){
return;
}
_ea.setAttribute("autocomplete","off");
},dispose:function(){
$telerik.unregisterControl(this);
var _eb=this.get_element();
Telerik.Web.UI.RadWebControl.callBaseMethod(this,"dispose");
if(_eb){
_eb.control=null;
var _ec=true;
if(_eb._events){
for(var e in _eb._events){
if(_eb._events[e].length>0){
_ec=false;
break;
}
}
if(_ec){
_eb._events=null;
}
}
}
},raiseEvent:function(_ee,_ef){
var _f0=this.get_events().getHandler(_ee);
if(_f0){
if(!_ef){
_ef=Sys.EventArgs.Empty;
}
_f0(this,_ef);
}
},updateClientState:function(){
this.set_clientState(this.saveClientState());
},saveClientState:function(){
return null;
},get_clientStateFieldID:function(){
return this._clientStateFieldID;
},set_clientStateFieldID:function(_f1){
if(this._clientStateFieldID!=_f1){
this._clientStateFieldID=_f1;
this.raisePropertyChanged("ClientStateFieldID");
}
},get_clientState:function(){
if(this._clientStateFieldID){
var _f2=document.getElementById(this._clientStateFieldID);
if(_f2){
return _f2.value;
}
}
return null;
},set_clientState:function(_f3){
if(this._clientStateFieldID){
var _f4=document.getElementById(this._clientStateFieldID);
if(_f4){
_f4.value=_f3;
}
}
},_getChildElement:function(id){
return $get(this.get_id()+"_"+id);
},_findChildControl:function(id){
return $find(this.get_id()+"_"+id);
}};
Telerik.Web.UI.RadWebControl.registerClass("Telerik.Web.UI.RadWebControl",Sys.UI.Control);
Telerik.Web.Timer=function(){
Telerik.Web.Timer.initializeBase(this);
this._interval=1000;
this._enabled=false;
this._timer=null;
this._timerCallbackDelegate=Function.createDelegate(this,this._timerCallback);
};
Telerik.Web.Timer.prototype={get_interval:function(){
return this._interval;
},set_interval:function(_f7){
if(this._interval!==_f7){
this._interval=_f7;
this.raisePropertyChanged("interval");
if(!this.get_isUpdating()&&(this._timer!==null)){
this._stopTimer();
this._startTimer();
}
}
},get_enabled:function(){
return this._enabled;
},set_enabled:function(_f8){
if(_f8!==this.get_enabled()){
this._enabled=_f8;
this.raisePropertyChanged("enabled");
if(!this.get_isUpdating()){
if(_f8){
this._startTimer();
}else{
this._stopTimer();
}
}
}
},add_tick:function(_f9){
this.get_events().addHandler("tick",_f9);
},remove_tick:function(_fa){
this.get_events().removeHandler("tick",_fa);
},dispose:function(){
this.set_enabled(false);
this._stopTimer();
Telerik.Web.Timer.callBaseMethod(this,"dispose");
},updated:function(){
Telerik.Web.Timer.callBaseMethod(this,"updated");
if(this._enabled){
this._stopTimer();
this._startTimer();
}
},_timerCallback:function(){
var _fb=this.get_events().getHandler("tick");
if(_fb){
_fb(this,Sys.EventArgs.Empty);
}
},_startTimer:function(){
this._timer=window.setInterval(this._timerCallbackDelegate,this._interval);
},_stopTimer:function(){
window.clearInterval(this._timer);
this._timer=null;
}};
Telerik.Web.Timer.registerClass("Telerik.Web.Timer",Sys.Component);
Telerik.Web.BoxSide=function(){
};
Telerik.Web.BoxSide.prototype={Top:0,Right:1,Bottom:2,Left:3};
Telerik.Web.BoxSide.registerEnum("Telerik.Web.BoxSide",false);
if(Sys.CultureInfo.prototype._getAbbrMonthIndex){
try{
Sys.CultureInfo.prototype._getAbbrMonthIndex("");
}
catch(ex){
Sys.CultureInfo.prototype._getAbbrMonthIndex=function(_fc){
if(!this._upperAbbrMonths){
this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
}
return Array.indexOf(this._upperAbbrMonths,this._toUpper(_fc));
};
Sys.CultureInfo.CurrentCulture._getAbbrMonthIndex=Sys.CultureInfo.prototype._getAbbrMonthIndex;
Sys.CultureInfo.InvariantCulture._getAbbrMonthIndex=Sys.CultureInfo.prototype._getAbbrMonthIndex;
}
}
Telerik.Web.UI.EditorCommandEventArgs=function(_fd,_fe,_ff){
Telerik.Web.UI.EditorCommandEventArgs.initializeBase(this);
this._name=this._commandName=_fd;
this._tool=_fe;
this._value=_ff;
this.value=_ff;
this._callbackFunction=null;
};
Telerik.Web.UI.EditorCommandEventArgs.prototype={get_name:function(){
return this._name;
},get_commandName:function(){
return this._commandName;
},get_tool:function(){
return this._tool;
},get_value:function(){
return this._value;
},set_value:function(val){
this.value=val;
this._value=val;
},set_callbackFunction:function(val){
this._callbackFunction=val;
}};
Telerik.Web.UI.EditorCommandEventArgs.registerClass("Telerik.Web.UI.EditorCommandEventArgs",Sys.CancelEventArgs);
Telerik.Web.IParameterConsumer=function(){
};
Telerik.Web.IParameterConsumer.prototype={clientInit:function(_102){
throw Error.notImplemented();
}};
Telerik.Web.IParameterConsumer.registerInterface("Telerik.Web.IParameterConsumer");
Type.registerNamespace("Telerik.Web.UI.Dialogs");
Telerik.Web.UI.Dialogs.CommonDialogScript=function(){
};
Telerik.Web.UI.Dialogs.CommonDialogScript.get_windowReference=function(){
if(window.radWindow){
return window.radWindow;
}
if(window.frameElement&&window.frameElement.radWindow){
return window.frameElement.radWindow;
}
if(!window.__localRadEditorRadWindowReference&&window.opener.__getCurrentRadEditorRadWindowReference){
window.__localRadEditorRadWindowReference=window.opener.__getCurrentRadEditorRadWindowReference();
}
return window.__localRadEditorRadWindowReference;
};
Telerik.Web.UI.Dialogs.CommonDialogScript.registerClass("Telerik.Web.UI.Dialogs.CommonDialogScript",null);
Telerik.Web.UI.WebServiceLoaderEventArgs=function(_103){
Telerik.Web.UI.WebServiceLoaderEventArgs.initializeBase(this);
this._context=_103;
};
Telerik.Web.UI.WebServiceLoaderEventArgs.prototype={get_context:function(){
return this._context;
}};
Telerik.Web.UI.WebServiceLoaderEventArgs.registerClass("Telerik.Web.UI.WebServiceLoaderEventArgs",Sys.EventArgs);
Telerik.Web.UI.WebServiceLoaderSuccessEventArgs=function(data,_105){
Telerik.Web.UI.WebServiceLoaderSuccessEventArgs.initializeBase(this,[_105]);
this._data=data;
};
Telerik.Web.UI.WebServiceLoaderSuccessEventArgs.prototype={get_data:function(){
return this._data;
}};
Telerik.Web.UI.WebServiceLoaderSuccessEventArgs.registerClass("Telerik.Web.UI.WebServiceLoaderSuccessEventArgs",Telerik.Web.UI.WebServiceLoaderEventArgs);
Telerik.Web.UI.WebServiceLoaderErrorEventArgs=function(_106,_107){
Telerik.Web.UI.WebServiceLoaderErrorEventArgs.initializeBase(this,[_107]);
this._message=_106;
};
Telerik.Web.UI.WebServiceLoaderErrorEventArgs.prototype={get_message:function(){
return this._message;
}};
Telerik.Web.UI.WebServiceLoaderErrorEventArgs.registerClass("Telerik.Web.UI.WebServiceLoaderErrorEventArgs",Telerik.Web.UI.WebServiceLoaderEventArgs);
Telerik.Web.UI.WebServiceLoader=function(_108){
this._webServiceSettings=_108;
this._events=null;
this._onWebServiceSuccessDelegate=Function.createDelegate(this,this._onWebServiceSuccess);
this._onWebServiceErrorDelegate=Function.createDelegate(this,this._onWebServiceError);
this._currentRequest=null;
};
Telerik.Web.UI.WebServiceLoader.prototype={get_webServiceSettings:function(){
return this._webServiceSettings;
},get_events:function(){
if(!this._events){
this._events=new Sys.EventHandlerList();
}
return this._events;
},loadData:function(_109,_10a){
var _10b=this.get_webServiceSettings();
this.invokeMethod(this._webServiceSettings.get_method(),_109,_10a);
},invokeMethod:function(_10c,_10d,_10e){
var _10f=this.get_webServiceSettings();
if(_10f.get_isEmpty()){
alert("Please, specify valid web service and method.");
return;
}
this._raiseEvent("loadingStarted",new Telerik.Web.UI.WebServiceLoaderEventArgs(_10e));
var _110=_10f.get_path();
var _111=_10f.get_useHttpGet();
this._currentRequest=Sys.Net.WebServiceProxy.invoke(_110,_10c,_111,_10d,this._onWebServiceSuccessDelegate,this._onWebServiceErrorDelegate,_10e);
},add_loadingStarted:function(_112){
this.get_events().addHandler("loadingStarted",_112);
},add_loadingError:function(_113){
this.get_events().addHandler("loadingError",_113);
},add_loadingSuccess:function(_114){
this.get_events().addHandler("loadingSuccess",_114);
},_onWebServiceSuccess:function(data,_116){
var _117=new Telerik.Web.UI.WebServiceLoaderSuccessEventArgs(data,_116);
this._raiseEvent("loadingSuccess",_117);
},_onWebServiceError:function(_118,_119){
var _11a=new Telerik.Web.UI.WebServiceLoaderErrorEventArgs(_118.get_message(),_119);
this._raiseEvent("loadingError",_11a);
},_raiseEvent:function(_11b,_11c){
var _11d=this.get_events().getHandler(_11b);
if(_11d){
if(!_11c){
_11c=Sys.EventArgs.Empty;
}
_11d(this,_11c);
}
}};
Telerik.Web.UI.WebServiceLoader.registerClass("Telerik.Web.UI.WebServiceLoader");
Telerik.Web.UI.WebServiceSettings=function(_11e){
this._path=null;
this._method=null;
this._useHttpGet=false;
if(!_11e){
_11e={};
}
if(typeof (_11e.path)!="undefined"){
this._path=_11e.path;
}
if(typeof (_11e.method)!="undefined"){
this._method=_11e.method;
}
if(typeof (_11e.useHttpGet)!="undefined"){
this._useHttpGet=_11e.useHttpGet;
}
};
Telerik.Web.UI.WebServiceSettings.prototype={get_path:function(){
return this._path;
},set_path:function(_11f){
this._path=_11f;
},get_method:function(){
return this._method;
},set_method:function(_120){
this._method=_120;
},get_useHttpGet:function(){
return this._useHttpGet;
},set_useHttpGet:function(_121){
this._useHttpGet=_121;
},get_isEmpty:function(){
var path=this.get_path();
var _123=this.get_method();
return (!(path&&_123));
}};
Telerik.Web.UI.WebServiceSettings.registerClass("Telerik.Web.UI.WebServiceSettings");
Telerik.Web.UI.AnimationType=function(){
};
Telerik.Web.UI.AnimationType.toEasing=function(_124){
return "ease"+Telerik.Web.UI.AnimationType.toString(_124);
};
Telerik.Web.UI.AnimationType.prototype={None:0,Linear:1,InQuad:2,OutQuad:3,InOutQuad:4,InCubic:5,OutCubic:6,InOutCubic:7,InQuart:8,OutQuart:9,InOutQuart:10,InQuint:11,OutQuint:12,InOutQuint:13,InSine:14,OutSine:15,InOutSine:16,InExpo:17,OutExpo:18,InOutExpo:19,InBack:20,OutBack:21,InOutBack:22,InBounce:23,OutBounce:24,InOutBounce:25,InElastic:26,OutElastic:27,InOutElastic:28};
Telerik.Web.UI.AnimationType.registerEnum("Telerik.Web.UI.AnimationType");
Telerik.Web.UI.AnimationSettings=function(_125){
this._type=Telerik.Web.UI.AnimationType.OutQuart;
this._duration=300;
if(typeof (_125.type)!="undefined"){
this._type=_125.type;
}
if(typeof (_125.duration)!="undefined"){
this._duration=_125.duration;
}
};
Telerik.Web.UI.AnimationSettings.prototype={get_type:function(){
return this._type;
},set_type:function(_126){
this._type=_126;
},get_duration:function(){
return this._duration;
},set_duration:function(_127){
this._duration=_127;
}};
Telerik.Web.UI.AnimationSettings.registerClass("Telerik.Web.UI.AnimationSettings");
Telerik.Web.UI.ActionsManager=function(_128){
Telerik.Web.UI.ActionsManager.initializeBase(this);
this._actions=[];
this._currentActionIndex=-1;
};
Telerik.Web.UI.ActionsManager.prototype={get_actions:function(){
return this._actions;
},shiftPointerLeft:function(){
this._currentActionIndex--;
},shiftPointerRight:function(){
this._currentActionIndex++;
},get_currentAction:function(){
return this.get_actions()[this._currentActionIndex];
},get_nextAction:function(){
return this.get_actions()[this._currentActionIndex+1];
},addAction:function(_129){
if(_129){
var args=new Telerik.Web.UI.ActionsManagerEventArgs(_129);
this.raiseEvent("executeAction",args);
this._clearActionsToRedo();
Array.add(this._actions,_129);
this._currentActionIndex=this._actions.length-1;
return true;
}
return false;
},undo:function(_12b){
if(_12b==null){
_12b=1;
}
if(_12b>this._actions.length){
_12b=this._actions.length;
}
var _12c=0;
var _12d=null;
while(0<_12b--&&0<=this._currentActionIndex&&this._currentActionIndex<this._actions.length){
_12d=this._actions[this._currentActionIndex--];
if(_12d){
var args=new Telerik.Web.UI.ActionsManagerEventArgs(_12d);
this.raiseEvent("undoAction",args);
_12c++;
}
}
},redo:function(_12f){
if(_12f==null){
_12f=1;
}
if(_12f>this._actions.length){
_12f=this._actions.length;
}
var _130=0;
var _131=null;
var _132=this._currentActionIndex+1;
while(0<_12f--&&0<=_132&&_132<this._actions.length){
_131=this._actions[_132];
if(_131){
var args=new Telerik.Web.UI.ActionsManagerEventArgs(_131);
this.raiseEvent("redoAction",args);
this._currentActionIndex=_132;
_130++;
}
_132++;
}
},removeActionAt:function(_134){
this._actions.splice(_134,1);
if(this._currentActionIndex>=_134){
this._currentActionIndex--;
}
},canUndo:function(){
return (-1<this._currentActionIndex);
},canRedo:function(){
return (this._currentActionIndex<this._actions.length-1);
},getActionsToUndo:function(){
if(this.canUndo()){
return (this._actions.slice(0,this._currentActionIndex+1)).reverse();
}
return [];
},getActionsToRedo:function(){
if(this.canRedo()){
return this._actions.slice(this._currentActionIndex+1);
}
return [];
},_clearActionsToRedo:function(){
if(this.canRedo()){
this._actions.splice(this._currentActionIndex+1,this._actions.length-this._currentActionIndex);
}
},add_undoAction:function(_135){
this.get_events().addHandler("undoAction",_135);
},remove_undoAction:function(_136){
this.get_events().removeHandler("undoAction",_136);
},add_redoAction:function(_137){
this.get_events().addHandler("redoAction",_137);
},remove_redoAction:function(_138){
this.get_events().removeHandler("redoAction",_138);
},add_executeAction:function(_139){
this.get_events().addHandler("executeAction",_139);
},remove_executeAction:function(_13a){
this.get_events().removeHandler("executeAction",_13a);
},raiseEvent:function(_13b,args){
var _13d=this.get_events().getHandler(_13b);
if(_13d){
_13d(this,args);
}
}};
Telerik.Web.UI.ActionsManager.registerClass("Telerik.Web.UI.ActionsManager",Sys.Component);
Telerik.Web.UI.ActionsManagerEventArgs=function(_13e){
Telerik.Web.UI.ActionsManagerEventArgs.initializeBase(this);
this._action=_13e;
};
Telerik.Web.UI.ActionsManagerEventArgs.prototype={get_action:function(){
return this._action;
}};
Telerik.Web.UI.ActionsManagerEventArgs.registerClass("Telerik.Web.UI.ActionsManagerEventArgs",Sys.CancelEventArgs);
Telerik.Web.StringBuilder=function(){
this._buffer=[];
},Telerik.Web.StringBuilder.prototype={append:function(_13f){
this._buffer[this._buffer.length]=_13f;
return this;
},toString:function(){
return this._buffer.join("");
}};


/* END Telerik.Web.UI.Common.Core.js */
/* START Telerik.Web.UI.Common.jQuery.js */
/*
 * jQuery JavaScript Library v1.3.2
 * http://jquery.com/
 *
 * Copyright (c) 2009 John Resig
 * Dual licensed under the MIT and GPL licenses.
 * http://docs.jquery.com/License
 *
 * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
 * Revision: 6246
 */
(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
/*
 * Sizzle CSS Selector Engine - v0.9.3
 *  Copyright 2009, The Dojo Foundation
 *  Released under the MIT, BSD, and GPL Licenses.
 *  More information: http://sizzlejs.com/
 */
(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();

// Move jQuery to $telerik
$telerik.$ = jQuery.noConflict(true);

/* END Telerik.Web.UI.Common.jQuery.js */
/* START Telerik.Web.UI.Common.jQueryPlugins.js */
if(typeof $telerik.$==="undefined"){
$telerik.$=jQuery;
}
(function(_1){
_1.easing["jswing"]=_1.easing["swing"];
_1.extend(_1.easing,{def:"easeOutQuad",swing:function(x,t,b,c,d){
return _1.easing[_1.easing.def](x,t,b,c,d);
},easeLinear:function(x,t,b,c,d){
return c*t/d+b;
},easeInQuad:function(x,t,b,c,d){
return c*(t/=d)*t+b;
},easeOutQuad:function(x,t,b,c,d){
return -c*(t/=d)*(t-2)+b;
},easeInOutQuad:function(x,t,b,c,d){
if((t/=d/2)<1){
return c/2*t*t+b;
}
return -c/2*((--t)*(t-2)-1)+b;
},easeInCubic:function(x,t,b,c,d){
return c*(t/=d)*t*t+b;
},easeOutCubic:function(x,t,b,c,d){
return c*((t=t/d-1)*t*t+1)+b;
},easeInOutCubic:function(x,t,b,c,d){
if((t/=d/2)<1){
return c/2*t*t*t+b;
}
return c/2*((t-=2)*t*t+2)+b;
},easeInQuart:function(x,t,b,c,d){
return c*(t/=d)*t*t*t+b;
},easeOutQuart:function(x,t,b,c,d){
return -c*((t=t/d-1)*t*t*t-1)+b;
},easeInOutQuart:function(x,t,b,c,d){
if((t/=d/2)<1){
return c/2*t*t*t*t+b;
}
return -c/2*((t-=2)*t*t*t-2)+b;
},easeInQuint:function(x,t,b,c,d){
return c*(t/=d)*t*t*t*t+b;
},easeOutQuint:function(x,t,b,c,d){
return c*((t=t/d-1)*t*t*t*t+1)+b;
},easeInOutQuint:function(x,t,b,c,d){
if((t/=d/2)<1){
return c/2*t*t*t*t*t+b;
}
return c/2*((t-=2)*t*t*t*t+2)+b;
},easeInSine:function(x,t,b,c,d){
return -c*Math.cos(t/d*(Math.PI/2))+c+b;
},easeOutSine:function(x,t,b,c,d){
return c*Math.sin(t/d*(Math.PI/2))+b;
},easeInOutSine:function(x,t,b,c,d){
return -c/2*(Math.cos(Math.PI*t/d)-1)+b;
},easeInExpo:function(x,t,b,c,d){
return (t==0)?b:c*Math.pow(2,10*(t/d-1))+b;
},easeOutExpo:function(x,t,b,c,d){
return (t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;
},easeInOutExpo:function(x,t,b,c,d){
if(t==0){
return b;
}
if(t==d){
return b+c;
}
if((t/=d/2)<1){
return c/2*Math.pow(2,10*(t-1))+b;
}
return c/2*(-Math.pow(2,-10*--t)+2)+b;
},easeInCirc:function(x,t,b,c,d){
return -c*(Math.sqrt(1-(t/=d)*t)-1)+b;
},easeOutCirc:function(x,t,b,c,d){
return c*Math.sqrt(1-(t=t/d-1)*t)+b;
},easeInOutCirc:function(x,t,b,c,d){
if((t/=d/2)<1){
return -c/2*(Math.sqrt(1-t*t)-1)+b;
}
return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b;
},easeInElastic:function(x,t,b,c,d){
var s=1.70158;
var p=0;
var a=c;
if(t==0){
return b;
}
if((t/=d)==1){
return b+c;
}
if(!p){
p=d*0.3;
}
if(a<Math.abs(c)){
a=c;
var s=p/4;
}else{
var s=p/(2*Math.PI)*Math.asin(c/a);
}
return -(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;
},easeOutElastic:function(x,t,b,c,d){
var s=1.70158;
var p=0;
var a=c;
if(t==0){
return b;
}
if((t/=d)==1){
return b+c;
}
if(!p){
p=d*0.3;
}
if(a<Math.abs(c)){
a=c;
var s=p/4;
}else{
var s=p/(2*Math.PI)*Math.asin(c/a);
}
return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b;
},easeInOutElastic:function(x,t,b,c,d){
var s=1.70158;
var p=0;
var a=c;
if(t==0){
return b;
}
if((t/=d/2)==2){
return b+c;
}
if(!p){
p=d*(0.3*1.5);
}
if(a<Math.abs(c)){
a=c;
var s=p/4;
}else{
var s=p/(2*Math.PI)*Math.asin(c/a);
}
if(t<1){
return -0.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;
}
return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*0.5+c+b;
},easeInBack:function(x,t,b,c,d,s){
if(s==undefined){
s=1.70158;
}
return c*(t/=d)*t*((s+1)*t-s)+b;
},easeOutBack:function(x,t,b,c,d,s){
if(s==undefined){
s=1.70158;
}
return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;
},easeInOutBack:function(x,t,b,c,d,s){
if(s==undefined){
s=1.70158;
}
if((t/=d/2)<1){
return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;
}
return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;
},easeInBounce:function(x,t,b,c,d){
return c-_1.easing.easeOutBounce(x,d-t,0,c,d)+b;
},easeOutBounce:function(x,t,b,c,d){
if((t/=d)<(1/2.75)){
return c*(7.5625*t*t)+b;
}else{
if(t<(2/2.75)){
return c*(7.5625*(t-=(1.5/2.75))*t+0.75)+b;
}else{
if(t<(2.5/2.75)){
return c*(7.5625*(t-=(2.25/2.75))*t+0.9375)+b;
}else{
return c*(7.5625*(t-=(2.625/2.75))*t+0.984375)+b;
}
}
}
},easeInOutBounce:function(x,t,b,c,d){
if(t<d/2){
return _1.easing.easeInBounce(x,t*2,0,c,d)*0.5+b;
}
return _1.easing.easeOutBounce(x,t*2-d,0,c,d)*0.5+c*0.5+b;
}});
})($telerik.$);
(function(_ae){
_ae.fx.step.height=function(fx){
var _b0=$telerik.quirksMode?1:0;
var _b1=fx.now>_b0?fx.now:_b0;
fx.elem.style[fx.prop]=Math.round(_b1)+fx.unit;
};
})($telerik.$);


/* END Telerik.Web.UI.Common.jQueryPlugins.js */
/* START Telerik.Web.UI.Common.Navigation.NavigationScripts.js */
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.AttributeCollection=function(_1){
this._owner=_1;
this._data={};
this._keys=[];
};
Telerik.Web.UI.AttributeCollection.prototype={getAttribute:function(_2){
return this._data[_2];
},setAttribute:function(_3,_4){
this._add(_3,_4);
var _5={};
_5[_3]=_4;
this._owner._notifyPropertyChanged("attributes",_5);
},_add:function(_6,_7){
if(Array.indexOf(this._keys,_6)<0){
Array.add(this._keys,_6);
}
this._data[_6]=_7;
},removeAttribute:function(_8){
Array.remove(this._keys,_8);
delete this._data[_8];
},_load:function(_9){
for(var _a in _9){
this._add(_a,_9[_a]);
}
},get_count:function(){
return this._keys.length;
}};
Telerik.Web.UI.AttributeCollection.registerClass("Telerik.Web.UI.AttributeCollection");
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.JavaScriptSerializer={_stringRegEx:new RegExp("[\"\b\f\n\r\t\\\\\x00-\x1f]","i"),serialize:function(_b){
var _c=new Telerik.Web.StringBuilder();
Telerik.Web.JavaScriptSerializer._serializeWithBuilder(_b,_c);
return _c.toString();
},_serializeWithBuilder:function(_d,_e){
var i;
switch(typeof _d){
case "object":
if(_d){
if(_d.constructor==Array){
_e.append("[");
for(i=0;i<_d.length;++i){
if(i>0){
_e.append(",");
}
this._serializeWithBuilder(_d[i],_e);
}
_e.append("]");
}else{
if(_d.constructor==Date){
_e.append("\"\\/Date(");
_e.append(_d.getTime());
_e.append(")\\/\"");
break;
}
var _10=[];
var _11=0;
for(var _12 in _d){
if(_12.startsWith("$")){
continue;
}
_10[_11++]=_12;
}
_e.append("{");
var _13=false;
for(i=0;i<_11;i++){
var _14=_d[_10[i]];
if(typeof _14!=="undefined"&&typeof _14!=="function"){
if(_13){
_e.append(",");
}else{
_13=true;
}
this._serializeWithBuilder(_10[i],_e);
_e.append(":");
this._serializeWithBuilder(_14,_e);
}
}
_e.append("}");
}
}else{
_e.append("null");
}
break;
case "number":
if(isFinite(_d)){
_e.append(String(_d));
}else{
throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);
}
break;
case "string":
_e.append("\"");
if(Sys.Browser.agent===Sys.Browser.Safari||Telerik.Web.JavaScriptSerializer._stringRegEx.test(_d)){
var _15=_d.length;
for(i=0;i<_15;++i){
var _16=_d.charAt(i);
if(_16>=" "){
if(_16==="\\"||_16==="\""){
_e.append("\\");
}
_e.append(_16);
}else{
switch(_16){
case "\b":
_e.append("\\b");
break;
case "\f":
_e.append("\\f");
break;
case "\n":
_e.append("\\n");
break;
case "\r":
_e.append("\\r");
break;
case "\t":
_e.append("\\t");
break;
default:
_e.append("\\u00");
if(_16.charCodeAt()<16){
_e.append("0");
}
_e.append(_16.charCodeAt().toString(16));
}
}
}
}else{
_e.append(_d);
}
_e.append("\"");
break;
case "boolean":
_e.append(_d.toString());
break;
default:
_e.append("null");
break;
}
}};
Telerik.Web.UI.ChangeLog=function(){
this._opCodeInsert=1;
this._opCodeDelete=2;
this._opCodeClear=3;
this._opCodePropertyChanged=4;
this._logEntries=null;
};
Telerik.Web.UI.ChangeLog.prototype={initialize:function(){
this._logEntries=[];
this._serializedEntries=null;
},logInsert:function(_17){
var _18={};
_18.Type=this._opCodeInsert;
_18.Index=_17._getHierarchicalIndex();
_18.Data=_17._getData();
Array.add(this._logEntries,_18);
},logDelete:function(_19){
var _1a={};
_1a.Type=this._opCodeDelete;
_1a.Index=_19._getHierarchicalIndex();
Array.add(this._logEntries,_1a);
},logClear:function(_1b){
var _1c={};
_1c.Type=this._opCodeClear;
if(_1b._getHierarchicalIndex){
_1c.Index=_1b._getHierarchicalIndex();
}
Array.add(this._logEntries,_1c);
},logPropertyChanged:function(_1d,_1e,_1f){
var _20={};
_20.Type=this._opCodePropertyChanged;
_20.Index=_1d._getHierarchicalIndex();
_20.Data={};
_20.Data[_1e]=_1f;
Array.add(this._logEntries,_20);
},serialize:function(){
if(this._logEntries.length==0){
if(this._serializedEntries==null){
return "[]";
}
return this._serializedEntries;
}
var _21=Telerik.Web.JavaScriptSerializer.serialize(this._logEntries);
if(this._serializedEntries==null){
this._serializedEntries=_21;
}else{
this._serializedEntries=this._serializedEntries.substring(0,this._serializedEntries.length-1)+","+_21.substring(1);
}
this._logEntries=[];
return this._serializedEntries;
}};
Telerik.Web.UI.ChangeLog.registerClass("Telerik.Web.UI.ChangeLog");
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.PropertyBag=function(_22){
this._data={};
this._owner=_22;
};
Telerik.Web.UI.PropertyBag.prototype={getValue:function(_23,_24){
var _25=this._data[_23];
if(typeof (_25)==="undefined"){
return _24;
}
return _25;
},setValue:function(_26,_27,_28){
this._data[_26]=_27;
if(_28){
this._owner._notifyPropertyChanged(_26,_27);
}
},load:function(_29){
this._data=_29;
}};
Telerik.Web.UI.ControlItem=function(){
this._element=null;
this._parent=null;
this._text=null;
this._children=null;
this._childControlsCreated=false;
this._itemData=null;
this._control=null;
this._properties=new Telerik.Web.UI.PropertyBag(this);
};
Telerik.Web.UI.ControlItem.prototype={_shouldNavigate:function(){
var _2a=this.get_navigateUrl();
if(!_2a){
return false;
}
return !_2a.endsWith("#");
},_getNavigateUrl:function(){
if(this.get_linkElement()){
return this._properties.getValue("navigateUrl",this.get_linkElement().getAttribute("href",2));
}
return this._properties.getValue("navigateUrl",null);
},_initialize:function(_2b,_2c){
this.set_element(_2c);
this._properties.load(_2b);
if(_2b["attributes"]){
this.get_attributes()._load(_2b["attributes"]);
}
this._itemData=_2b["items"];
},_dispose:function(){
if(this._children){
this._children.forEach(function(_2d){
_2d._dispose();
});
}
if(this._element){
this._element._item=null;
this._element=null;
}
if(this._control){
this._control=null;
}
},_initializeRenderedItem:function(){
var _2e=this._children;
if(!_2e||_2e.get_count()<1){
return;
}
var _2f=this._getChildElements();
for(var i=0,_31=_2e.get_count();i<_31;i++){
var _32=_2e.getItem(i);
if(!_32.get_element()){
_32.set_element(_2f[i]);
if(this._shouldInitializeChild(_32)){
_32._initializeRenderedItem();
}
}
}
},findControl:function(id){
return $telerik.findControl(this.get_element(),id);
},get_attributes:function(){
if(!this._attributes){
this._attributes=new Telerik.Web.UI.AttributeCollection(this);
}
return this._attributes;
},get_element:function(){
return this._element;
},set_element:function(_34){
this._element=_34;
this._element._item=this;
this._element._itemTypeName=Object.getTypeName(this);
},get_parent:function(){
return this._parent;
},set_parent:function(_35){
this._parent=_35;
},get_text:function(){
if(this._text!==null){
return this._text;
}
if(this._text=this._properties.getValue("text","")){
return this._text;
}
if(!this.get_element()){
return "";
}
var _36=this.get_textElement();
if(!_36){
return "";
}
if(typeof (_36.innerText)!="undefined"){
this._text=_36.innerText;
}else{
this._text=_36.textContent;
}
if($telerik.isSafari2){
this._text=_36.innerHTML;
}
return this._text;
},set_text:function(_37){
var _38=this.get_textElement();
if(_38){
_38.innerHTML=_37;
}
this._text=_37;
this._properties.setValue("text",_37,true);
},get_value:function(){
return this._properties.getValue("value",null);
},set_value:function(_39){
this._properties.setValue("value",_39,true);
},get_itemData:function(){
return this._itemData;
},get_index:function(){
if(!this.get_parent()){
return -1;
}
return this.get_parent()._getChildren().indexOf(this);
},set_enabled:function(_3a){
this._properties.setValue("enabled",_3a,true);
},get_enabled:function(){
return this._properties.getValue("enabled",true)==true;
},get_isEnabled:function(){
var _3b=this._getControl();
if(_3b){
return _3b.get_enabled()&&this.get_enabled();
}
return this.get_enabled();
},set_visible:function(_3c){
this._properties.setValue("visible",_3c);
},get_visible:function(){
return this._properties.getValue("visible",true);
},get_level:function(){
var _3d=this.get_parent();
var _3e=0;
while(_3d){
if(Telerik.Web.UI.ControlItemContainer.isInstanceOfType(_3d)){
return _3e;
}
_3e++;
_3d=_3d.get_parent();
}
return _3e;
},get_isLast:function(){
return this.get_index()==this.get_parent()._getChildren().get_count()-1;
},get_isFirst:function(){
return this.get_index()==0;
},get_nextSibling:function(){
if(!this.get_parent()){
return null;
}
return this.get_parent()._getChildren().getItem(this.get_index()+1);
},get_previousSibling:function(){
if(!this.get_parent()){
return null;
}
return this.get_parent()._getChildren().getItem(this.get_index()-1);
},toJsonString:function(){
return Sys.Serialization.JavaScriptSerializer.serialize(this._getData());
},_getHierarchicalIndex:function(){
var _3f=[];
var _40=this._getControl();
var _41=this;
while(_41!=_40){
_3f[_3f.length]=_41.get_index();
_41=_41.get_parent();
}
return _3f.reverse().join(":");
},_getChildren:function(){
this._ensureChildControls();
return this._children;
},_ensureChildControls:function(){
if(!this._childControlsCreated){
this._createChildControls();
this._childControlsCreated=true;
}
},_setCssClass:function(_42,_43){
if(_42.className!=_43){
_42.className=_43;
}
},_createChildControls:function(){
this._children=this._createItemCollection();
},_createItemCollection:function(){
},_getControl:function(){
if(!this._control){
var _44=this.get_parent();
if(_44){
if(Telerik.Web.UI.ControlItemContainer.isInstanceOfType(_44)){
this._control=_44;
}else{
this._control=_44._getControl();
}
}
}
return this._control;
},_getAllItems:function(){
var _45=[];
this._getAllItemsRecursive(_45,this);
return _45;
},_getAllItemsRecursive:function(_46,_47){
var _48=_47._getChildren();
for(var i=0;i<_48.get_count();i++){
var _4a=_48.getItem(i);
Array.add(_46,_4a);
this._getAllItemsRecursive(_46,_4a);
}
},_getData:function(){
var _4b=this._properties._data;
delete _4b.items;
_4b["text"]=this.get_text();
if(this.get_attributes().get_count()>0){
_4b["attributes"]=this.get_attributes()._data;
}
return _4b;
},_notifyPropertyChanged:function(_4c,_4d){
var _4e=this._getControl();
if(_4e){
_4e._itemPropertyChanged(this,_4c,_4d);
}
},_loadFromDictionary:function(_4f){
if(typeof (_4f.Text)!="undefined"){
this.set_text(_4f.Text);
}
if(typeof (_4f.Value)!="undefined"&&_4f.Value!==""){
this.set_value(_4f.Value);
}
if(typeof (_4f.Enabled)!="undefined"&&_4f.Enabled!==true){
this.set_enabled(_4f.Enabled);
}
if(_4f.Attributes){
this.get_attributes()._load(_4f.Attributes);
}
},_createDomElement:function(){
var _50=document.createElement("ul");
var _51=[];
this._render(_51);
_50.innerHTML=_51.join("");
return _50.firstChild;
}};
Telerik.Web.UI.ControlItem.registerClass("Telerik.Web.UI.ControlItem");
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.ControlItemCollection=function(_52){
this._array=new Array();
this._parent=_52;
this._control=null;
};
Telerik.Web.UI.ControlItemCollection.prototype={add:function(_53){
var _54=this._array.length;
this.insert(_54,_53);
},insert:function(_55,_56){
var _57=_56.get_parent();
var _58=this._parent._getControl();
if(_57){
_57._getChildren().remove(_56);
}
if(_58){
_58._childInserting(_55,_56,this._parent);
}
Array.insert(this._array,_55,_56);
_56.set_parent(this._parent);
if(_58){
_58._childInserted(_55,_56,this._parent);
_58._logInserted(_56);
}
},remove:function(_59){
var _5a=this._parent._getControl();
if(_5a){
_5a._childRemoving(_59);
}
Array.remove(this._array,_59);
if(_5a){
_5a._childRemoved(_59,this._parent);
}
_59.set_parent(null);
_59._control=null;
},removeAt:function(_5b){
var _5c=this.getItem(_5b);
if(_5c){
this.remove(_5c);
}
},clear:function(){
var _5d=this._parent._getControl();
if(_5d){
_5d._logClearing(this._parent);
_5d._childrenCleared(this._parent);
}
this._array=new Array();
},get_count:function(){
return this._array.length;
},getItem:function(_5e){
return this._array[_5e];
},indexOf:function(_5f){
for(var i=0,l=this._array.length;i<l;i++){
if(this._array[i]===_5f){
return i;
}
}
return -1;
},forEach:function(_62){
for(var i=0,_64=this.get_count();i<_64;i++){
_62(this._array[i]);
}
}};
Telerik.Web.UI.ControlItemCollection.registerClass("Telerik.Web.UI.ControlItemCollection");
function WebForm_CallbackComplete(){
for(var i=0;i<__pendingCallbacks.length;i++){
var _66=__pendingCallbacks[i];
if(_66&&_66.xmlRequest&&(_66.xmlRequest.readyState==4)){
__pendingCallbacks[i]=null;
WebForm_ExecuteCallback(_66);
if(!_66.async){
__synchronousCallBackIndex=-1;
}
var _67="__CALLBACKFRAME"+i;
var _68=document.getElementById(_67);
if(_68){
_68.parentNode.removeChild(_68);
}
}
}
}
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.ControlItemContainer=function(_69){
Telerik.Web.UI.ControlItemContainer.initializeBase(this,[_69]);
this._childControlsCreated=false;
this._enabled=true;
this._log=new Telerik.Web.UI.ChangeLog();
this._enableClientStatePersistence=false;
this._eventMap=new Telerik.Web.UI.EventMap();
this._attributes=new Telerik.Web.UI.AttributeCollection(this);
this._children=null;
};
Telerik.Web.UI.ControlItemContainer.prototype={initialize:function(){
Telerik.Web.UI.ControlItemContainer.callBaseMethod(this,"initialize");
this._ensureChildControls();
this._log.initialize();
this._initializeEventMap();
},dispose:function(){
this._eventMap.dispose();
if(this._childControlsCreated){
for(var i=0;i<this._getChildren().get_count();i++){
this._getChildren().getItem(i)._dispose();
}
}
Telerik.Web.UI.ControlItemContainer.callBaseMethod(this,"dispose");
},trackChanges:function(){
this._enableClientStatePersistence=true;
},set_enabled:function(_6b){
this._enabled=_6b;
},get_enabled:function(){
return this._enabled;
},commitChanges:function(){
this.updateClientState();
this._enableClientStatePersistence=false;
},get_attributes:function(){
return this._attributes;
},set_attributes:function(_6c){
this._attributes._load(_6c);
},_initializeEventMap:function(){
this._eventMap.initialize(this);
},_getChildren:function(){
this._ensureChildControls();
return this._children;
},_extractErrorMessage:function(_6d){
if(_6d.get_message){
return _6d.get_message();
}else{
return _6d.replace(/(\d*\|.*)/,"");
}
},_notifyPropertyChanged:function(_6e,_6f){
},_childInserting:function(_70,_71,_72){
},_childInserted:function(_73,_74,_75){
if(!_75._childControlsCreated){
return;
}
if(!_75.get_element()){
return;
}
var _76=_74._createDomElement();
var _77=_75.get_childListElement();
if(!_77){
_77=_75._createChildListElement();
}
var _78=_74.get_nextSibling();
var _79=_78?_78.get_element():null;
_75.get_childListElement().insertBefore(_76,_79);
if(!_74.get_element()){
_74.set_element(_76);
_74._initializeRenderedItem();
}else{
_74.set_element(_76);
}
},_childrenCleared:function(_7a){
for(var i=0;i<_7a._getChildren().get_count();i++){
_7a._getChildren().getItem(i)._dispose();
}
var _7c=_7a.get_childListElement();
if(_7c){
_7c.innerHTML="";
}
},_childRemoving:function(_7d){
this._logRemoving(_7d);
},_childRemoved:function(_7e,_7f){
_7e._dispose();
},_createChildListElement:function(){
throw Error.notImplemeneted();
},_createDomElement:function(){
throw Error.notImplemented();
},_getControl:function(){
return this;
},_logInserted:function(_80){
if(!_80.get_parent()._childControlsCreated||!this._enableClientStatePersistence){
return;
}
this._log.logInsert(_80);
var _81=_80._getAllItems();
for(var i=0;i<_81.length;i++){
this._log.logInsert(_81[i]);
}
},_logRemoving:function(_83){
if(this._enableClientStatePersistence){
this._log.logDelete(_83);
}
},_logClearing:function(_84){
if(this._enableClientStatePersistence){
this._log.logClear(_84);
}
},_itemPropertyChanged:function(_85,_86,_87){
if(this._enableClientStatePersistence){
this._log.logPropertyChanged(_85,_86,_87);
}
},_ensureChildControls:function(){
if(!this._childControlsCreated){
this._createChildControls();
this._childControlsCreated=true;
}
},_extractItemFromDomElement:function(_88){
this._ensureChildControls();
while(_88&&_88.nodeType!==9){
if(_88._item&&this._verifyChildType(_88._itemTypeName)){
return _88._item;
}
_88=_88.parentNode;
}
return null;
},_verifyChildType:function(_89){
return _89===this._childTypeName;
},_getAllItems:function(){
var _8a=[];
for(var i=0;i<this._getChildren().get_count();i++){
var _8c=this._getChildren().getItem(i);
Array.add(_8a,_8c);
Array.addRange(_8a,_8c._getAllItems());
}
return _8a;
},_findItemByText:function(_8d){
var _8e=this._getAllItems();
for(var i=0;i<_8e.length;i++){
if(_8e[i].get_text()==_8d){
return _8e[i];
}
}
return null;
},_findItemByValue:function(_90){
var _91=this._getAllItems();
for(var i=0;i<_91.length;i++){
if(_91[i].get_value()==_90){
return _91[i];
}
}
return null;
},_findItemByAttribute:function(_93,_94){
var _95=this._getAllItems();
for(var i=0;i<_95.length;i++){
if(_95[i].get_attributes().getAttribute(_93)==_94){
return _95[i];
}
}
return null;
},_findItemByAbsoluteUrl:function(_97){
var _98=this._getAllItems();
for(var i=0;i<_98.length;i++){
if(_98[i].get_linkElement()&&_98[i].get_linkElement().href==_97){
return _98[i];
}
}
return null;
},_findItemByUrl:function(_9a){
var _9b=this._getAllItems();
for(var i=0;i<_9b.length;i++){
if(_9b[i].get_navigateUrl()==_9a){
return _9b[i];
}
}
return null;
},_findItemByHierarchicalIndex:function(_9d){
var _9e=null;
var _9f=this;
var _a0=_9d.split(":");
for(var i=0;i<_a0.length;i++){
var _a2=parseInt(_a0[i]);
if(_9f._getChildren().get_count()<=_a2){
return null;
}
_9e=_9f._getChildren().getItem(_a2);
_9f=_9e;
}
return _9e;
}};
Telerik.Web.UI.ControlItemContainer.registerClass("Telerik.Web.UI.ControlItemContainer",Telerik.Web.UI.RadWebControl);
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.EventMap=function(){
this._owner=null;
this._element=null;
this._eventMap={};
this._onDomEventDelegate=null;
this._browserHandlers={};
};
Telerik.Web.UI.EventMap.prototype={initialize:function(_a3,_a4){
this._owner=_a3;
if(!_a4){
_a4=this._owner.get_element();
}
this._element=_a4;
},skipElement:function(e,_a6){
var _a7=e.target;
var _a8=_a7.tagName.toLowerCase();
var _a9=_a7.className;
if(_a8=="select"){
return true;
}
if(_a8=="option"){
return true;
}
if(_a8=="a"&&(!_a6||_a9.indexOf(_a6)<0)){
return true;
}
if(_a8=="input"){
return true;
}
if(_a8=="textarea"){
return true;
}
if(_a8=="button"){
return true;
}
return false;
},dispose:function(){
if(this._onDomEventDelegate){
for(var _aa in this._eventMap){
if(this._shouldUseEventCapture(_aa)){
var _ab=this._browserHandlers[_aa];
this._element.removeEventListener(_aa,_ab,true);
}else{
$removeHandler(this._element,_aa,this._onDomEventDelegate);
}
}
this._onDomEventDelegate=null;
var _ac=true;
if(this._element._events){
for(var e in this._element._events){
if(this._element._events[e].length>0){
_ac=false;
break;
}
}
if(_ac){
this._element._events=null;
}
}
}
},addHandlerForClassName:function(_ae,_af,_b0){
if(typeof (this._eventMap[_ae])=="undefined"){
this._eventMap[_ae]={};
if(this._shouldUseEventCapture(_ae)){
var _b1=this._getDomEventDelegate();
var _b2=this._element;
var _b3=function(e){
return _b1.call(_b2,new Sys.UI.DomEvent(e));
};
this._browserHandlers[_ae]=_b3;
_b2.addEventListener(_ae,_b3,true);
}else{
$addHandler(this._element,_ae,this._getDomEventDelegate());
}
}
var _b5=this._eventMap[_ae];
_b5[_af]=_b0;
},_onDomEvent:function(e){
var _b7=this._eventMap[e.type];
if(!_b7){
return;
}
var _b8=e.target;
while(_b8&&_b8.nodeType!==9){
var _b9=_b8.className;
if(!_b9){
_b8=_b8.parentNode;
continue;
}
var _ba=_b9.split(" ");
var _bb=null;
for(var i=0;i<_ba.length;i++){
_bb=_b7[_ba[i]];
if(_bb){
break;
}
}
if(_bb){
this._fillEventFields(e,_b8);
if(_bb.call(this._owner,e)!=true){
if(!_b8.parentNode){
e.stopPropagation();
}
return;
}
}
if(_b8==this._element){
return;
}
_b8=_b8.parentNode;
}
},_fillEventFields:function(e,_be){
e.eventMapTarget=_be;
if(e.rawEvent.relatedTarget){
e.eventMapRelatedTarget=e.rawEvent.relatedTarget;
}else{
if(e.type=="mouseover"){
e.eventMapRelatedTarget=e.rawEvent.fromElement;
}else{
e.eventMapRelatedTarget=e.rawEvent.toElement;
}
}
if(!e.eventMapRelatedTarget){
return;
}
try{
var _bf=e.eventMapRelatedTarget.className;
}
catch(ex){
e.eventMapRelatedTarget=this._element;
}
},_shouldUseEventCapture:function(_c0){
return (_c0=="blur"||_c0=="focus")&&$telerik.isFirefox&&Sys.Browser.version>=3;
},_getDomEventDelegate:function(){
if(!this._onDomEventDelegate){
this._onDomEventDelegate=Function.createDelegate(this,this._onDomEvent);
}
return this._onDomEventDelegate;
}};
Telerik.Web.UI.EventMap.registerClass("Telerik.Web.UI.EventMap");
(function($){
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.jSlideDirection=function(){
};
Telerik.Web.UI.jSlideDirection.prototype={Up:1,Down:2,Left:3,Right:4};
Telerik.Web.UI.jSlideDirection.registerEnum("Telerik.Web.UI.jSlideDirection");
Telerik.Web.UI.jSlide=function(_c2,_c3,_c4,_c5){
this._animatedElement=_c2;
this._element=_c2.parentNode;
this._expandAnimation=_c3;
this._collapseAnimation=_c4;
this._direction=Telerik.Web.UI.jSlideDirection.Down;
this._expanding=null;
if(_c5==null){
this._enableOverlay=true;
}else{
this._enableOverlay=_c5;
}
this._events=null;
this._overlay=null;
this._animationEndedDelegate=null;
};
Telerik.Web.UI.jSlide.prototype={initialize:function(){
if(Telerik.Web.UI.Overlay.IsSupported()&&this._enableOverlay){
var _c6=this.get_animatedElement();
this._overlay=new Telerik.Web.UI.Overlay(_c6);
this._overlay.initialize();
}
this._animationEndedDelegate=Function.createDelegate(this,this._animationEnded);
},dispose:function(){
this._animatedElement=null;
this._events=null;
if(this._overlay){
this._overlay.dispose();
this._overlay=null;
}
this._animationEndedDelegate=null;
},get_element:function(){
return this._element;
},get_animatedElement:function(){
return this._animatedElement;
},set_animatedElement:function(_c7){
this._animatedElement=_c7;
if(this._overlay){
this._overlay.set_targetElement(this._animatedElement);
}
},get_direction:function(){
return this._direction;
},set_direction:function(_c8){
this._direction=_c8;
},get_events:function(){
if(!this._events){
this._events=new Sys.EventHandlerList();
}
return this._events;
},updateSize:function(){
var _c9=this.get_animatedElement();
var _ca=this.get_element();
var top=0;
if(_c9.style.top){
top=Math.max(parseInt(_c9.style.top),0);
}
var _cc=0;
if(_c9.style.left){
_cc=Math.max(parseInt(_c9.style.left),0);
}
var _cd=_c9.offsetHeight+top;
if(_ca.style.height!=_cd+"px"){
_ca.style.height=Math.max(_cd,0)+"px";
}
var _ce=_c9.offsetWidth+_cc;
if(_ca.style.width!=_ce+"px"){
_ca.style.width=Math.max(_ce,0)+"px";
}
if(this._overlay){
this._updateOverlay();
}
},show:function(){
this._showElement();
},expand:function(){
this._expanding=true;
this.get_animatedElement().style.visibility="hidden";
this._resetState(true);
var _cf=null;
var _d0=null;
switch(this.get_direction()){
case Telerik.Web.UI.jSlideDirection.Up:
case Telerik.Web.UI.jSlideDirection.Left:
_cf=parseInt(this._getSize());
_d0=0;
break;
case Telerik.Web.UI.jSlideDirection.Down:
case Telerik.Web.UI.jSlideDirection.Right:
_cf=parseInt(this._getPosition());
_d0=0;
break;
}
this._expandAnimationStarted();
if((_cf==_d0)||(this._expandAnimation.get_type()==Telerik.Web.UI.AnimationType.None)){
this._setPosition(_d0);
this._animationEnded();
this.get_animatedElement().style.visibility="visible";
}else{
this._playAnimation(this._expandAnimation,_d0);
}
},collapse:function(){
this._resetState();
this._expanding=false;
var _d1=null;
var _d2=null;
var _d3=parseInt(this._getSize());
var _d4=parseInt(this._getPosition());
switch(this.get_direction()){
case Telerik.Web.UI.jSlideDirection.Up:
case Telerik.Web.UI.jSlideDirection.Left:
_d1=0;
_d2=_d3;
break;
case Telerik.Web.UI.jSlideDirection.Down:
case Telerik.Web.UI.jSlideDirection.Right:
_d1=0;
_d2=_d4-_d3;
break;
}
this._collapseAnimationStarted();
if((_d1==_d2)||(this._collapseAnimation.get_type()==Telerik.Web.UI.AnimationType.None)){
this._setPosition(_d2);
this._animationEnded();
}else{
this._playAnimation(this._collapseAnimation,_d2);
}
},add_collapseAnimationStarted:function(_d5){
this.get_events().addHandler("collapseAnimationStarted",_d5);
},remove_collapseAnimationStarted:function(_d6){
this.get_events().removeHandler("collapseAnimationStarted",_d6);
},add_collapseAnimationEnded:function(_d7){
this.get_events().addHandler("collapseAnimationEnded",_d7);
},remove_collapseAnimationEnded:function(_d8){
this.get_events().removeHandler("collapseAnimationEnded",_d8);
},add_expandAnimationStarted:function(_d9){
this.get_events().addHandler("expandAnimationStarted",_d9);
},remove_expandAnimationStarted:function(_da){
this.get_events().removeHandler("expandAnimationStarted",_da);
},add_expandAnimationEnded:function(_db){
this.get_events().addHandler("expandAnimationEnded",_db);
},remove_expandAnimationEnded:function(_dc){
this.get_events().removeHandler("expandAnimationEnded",_dc);
},_playAnimation:function(_dd,_de){
this.get_animatedElement().style.visibility="visible";
var _df=this._getAnimationQuery();
var _e0=this._getAnimatedStyleProperty();
var _e1={};
_e1[_e0]=_de;
var _e2=_dd.get_duration();
_df.animate(_e1,_e2,Telerik.Web.UI.AnimationType.toEasing(_dd.get_type()),this._animationEndedDelegate);
},_expandAnimationStarted:function(){
this._raiseEvent("expandAnimationStarted",Sys.EventArgs.Empty);
},_collapseAnimationStarted:function(){
this._raiseEvent("collapseAnimationStarted",Sys.EventArgs.Empty);
},_animationEnded:function(){
if(this._expanding){
this.get_element().style.overflow="visible";
this._raiseEvent("expandAnimationEnded",Sys.EventArgs.Empty);
}else{
this.get_element().style.display="none";
this._raiseEvent("collapseAnimationEnded",Sys.EventArgs.Empty);
}
if(this._overlay){
this._updateOverlay();
}
},_updateOverlay:function(){
this._overlay.updatePosition();
},_showElement:function(){
var _e3=this.get_animatedElement();
var _e4=this.get_element();
if(!_e4){
return;
}
if(!_e4.style){
return;
}
_e4.style.display=(_e4.tagName.toUpperCase()!="TABLE")?"block":"";
_e3.style.display=(_e3.tagName.toUpperCase()!="TABLE")?"block":"";
_e4.style.overflow="hidden";
},_resetState:function(_e5){
this._stopAnimation();
this._showElement();
var _e6=this.get_animatedElement();
if(_e5){
var _e6=this.get_animatedElement();
switch(this.get_direction()){
case Telerik.Web.UI.jSlideDirection.Up:
_e6.style.top=_e6.offsetHeight+"px";
break;
case Telerik.Web.UI.jSlideDirection.Down:
_e6.style.top=-_e6.offsetHeight+"px";
break;
case Telerik.Web.UI.jSlideDirection.Left:
_e6.style.left=_e6.offsetWidth+"px";
break;
case Telerik.Web.UI.jSlideDirection.Right:
_e6.style.left=-_e6.offsetWidth+"px";
break;
default:
Error.argumentOutOfRange("direction",this.get_direction(),"Slide direction is invalid. Use one of the values in the Telerik.Web.UI.SlideDirection enumeration.");
break;
}
}
},_stopAnimation:function(){
this._getAnimationQuery().stop(false,true);
},_getAnimationQuery:function(){
var _e7=[this.get_animatedElement()];
if(this._enableOverlay&&this._overlay){
_e7[_e7.length]=this._overlay.get_element();
}
return $(_e7);
},_getSize:function(){
var _e8=this.get_animatedElement();
switch(this.get_direction()){
case Telerik.Web.UI.jSlideDirection.Up:
case Telerik.Web.UI.jSlideDirection.Down:
return _e8.offsetHeight;
break;
case Telerik.Web.UI.jSlideDirection.Left:
case Telerik.Web.UI.jSlideDirection.Right:
return _e8.offsetWidth;
break;
default:
return 0;
}
},_setPosition:function(_e9){
var _ea=this.get_animatedElement();
var _eb=this._getAnimatedStyleProperty();
_ea.style[_eb]=_e9;
},_getPosition:function(){
var _ec=this.get_animatedElement();
var _ed=this._getAnimatedStyleProperty();
return _ec.style[_ed];
},_getAnimatedStyleProperty:function(){
switch(this.get_direction()){
case Telerik.Web.UI.jSlideDirection.Up:
case Telerik.Web.UI.jSlideDirection.Down:
return "top";
case Telerik.Web.UI.jSlideDirection.Left:
case Telerik.Web.UI.jSlideDirection.Right:
return "left";
}
},_raiseEvent:function(_ee,_ef){
var _f0=this.get_events().getHandler(_ee);
if(_f0){
if(!_ef){
_ef=Sys.EventArgs.Empty;
}
_f0(this,_ef);
}
}};
Telerik.Web.UI.jSlide.registerClass("Telerik.Web.UI.jSlide",null,Sys.IDisposable);
})($telerik.$);
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.Overlay=function(_f1){
this._targetElement=_f1;
this._element=null;
};
Telerik.Web.UI.Overlay.IsSupported=function(){
return $telerik.isIE;
};
Telerik.Web.UI.Overlay.prototype={initialize:function(){
var _f2=document.createElement("div");
_f2.innerHTML="<iframe>Your browser does not support inline frames or is currently configured not to display inline frames.</iframe>";
this._element=_f2.firstChild;
this._element.src="javascript:'';";
this._targetElement.parentNode.insertBefore(this._element,this._targetElement);
if(this._targetElement.style.zIndex>0){
this._element.style.zIndex=this._targetElement.style.zIndex-1;
}
this._element.style.position="absolute";
this._element.style.border="0px";
this._element.frameBorder=0;
this._element.style.filter="progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";
this._element.tabIndex=-1;
if(!$telerik.isSafari){
_f2.outerHTML=null;
}
this.updatePosition();
},dispose:function(){
if(this._element.parentNode){
this._element.parentNode.removeChild(this._element);
}
this._targetElement=null;
this._element=null;
},get_targetElement:function(){
return this._targetElement;
},set_targetElement:function(_f3){
this._targetElement=_f3;
},get_element:function(){
return this._element;
},updatePosition:function(){
this._element.style.top=this._toUnit(this._targetElement.style.top);
this._element.style.left=this._toUnit(this._targetElement.style.left);
this._element.style.width=this._targetElement.offsetWidth+"px";
this._element.style.height=this._targetElement.offsetHeight+"px";
},_toUnit:function(_f4){
if(!_f4){
return "0px";
}
return parseInt(_f4)+"px";
}};
Telerik.Web.UI.Overlay.registerClass("Telerik.Web.UI.Overlay",null,Sys.IDisposable);
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.SlideDirection=function(){
};
Telerik.Web.UI.SlideDirection.prototype={Up:1,Down:2,Left:3,Right:4};
Telerik.Web.UI.SlideDirection.registerEnum("Telerik.Web.UI.SlideDirection");
Telerik.Web.UI.Slide=function(_f5,_f6,_f7,_f8){
this._fps=60;
this._animatedElement=_f5;
this._element=_f5.parentNode;
this._expandAnimation=_f6;
this._collapseAnimation=_f7;
this._direction=Telerik.Web.UI.SlideDirection.Down;
this._animation=null;
this._expanding=null;
if(_f8==null){
this._enableOverlay=true;
}else{
this._enableOverlay=_f8;
}
this._events=null;
this._overlay=null;
this._animationEndedDelegate=null;
this._expandAnimationStartedDelegate=null;
this._updateOverlayDelegate=null;
};
Telerik.Web.UI.Slide.prototype={initialize:function(){
if(Telerik.Web.UI.Overlay.IsSupported()&&this._enableOverlay){
var _f9=this.get_animatedElement();
this._overlay=new Telerik.Web.UI.Overlay(_f9);
this._overlay.initialize();
}
this._animationEndedDelegate=Function.createDelegate(this,this._animationEnded);
this._expandAnimationStartedDelegate=Function.createDelegate(this,this._expandAnimationStarted);
this._updateOverlayDelegate=Function.createDelegate(this,this._updateOverlay);
},dispose:function(){
this._animatedElement=null;
this._events=null;
this._disposeAnimation();
if(this._overlay){
this._overlay.dispose();
this._overlay=null;
}
this._animationEndedDelegate=null;
this._expandAnimationStartedDelegate=null;
this._updateOverlayDelegate=null;
},get_element:function(){
return this._element;
},get_animatedElement:function(){
return this._animatedElement;
},set_animatedElement:function(_fa){
this._animatedElement=_fa;
if(this._overlay){
this._overlay.set_targetElement(this._animatedElement);
}
},get_direction:function(){
return this._direction;
},set_direction:function(_fb){
this._direction=_fb;
},get_events:function(){
if(!this._events){
this._events=new Sys.EventHandlerList();
}
return this._events;
},updateSize:function(){
var _fc=this.get_animatedElement();
var _fd=this.get_element();
var top=0;
if(_fc.style.top){
top=Math.max(parseInt(_fc.style.top),0);
}
var _ff=0;
if(_fc.style.left){
_ff=Math.max(parseInt(_fc.style.left),0);
}
var _100=_fc.offsetHeight+top;
if(_fd.style.height!=_100+"px"){
_fd.style.height=Math.max(_100,0)+"px";
}
var _101=_fc.offsetWidth+_ff;
if(_fd.style.width!=_101+"px"){
_fd.style.width=Math.max(_101,0)+"px";
}
if(this._overlay){
this._updateOverlay();
}
},show:function(){
this._showElement();
},expand:function(){
this._expanding=true;
this.get_animatedElement().style.visibility="hidden";
this._resetState(true);
var _102=null;
var _103=null;
switch(this.get_direction()){
case Telerik.Web.UI.SlideDirection.Up:
case Telerik.Web.UI.SlideDirection.Left:
_102=parseInt(this._getSize());
_103=0;
break;
case Telerik.Web.UI.SlideDirection.Down:
case Telerik.Web.UI.SlideDirection.Right:
_102=parseInt(this._getPosition());
_103=0;
break;
}
if(this._animation){
this._animation.stop();
}
if((_102==_103)||(this._expandAnimation.get_type()==Telerik.Web.UI.AnimationType.None)){
this._expandAnimationStarted();
this._setPosition(_103);
this._animationEnded();
this.get_animatedElement().style.visibility="visible";
}else{
this._playAnimation(this._expandAnimation,_102,_103);
}
},collapse:function(){
this._resetState();
this._expanding=false;
var _104=null;
var _105=null;
var size=parseInt(this._getSize());
var _107=parseInt(this._getPosition());
switch(this.get_direction()){
case Telerik.Web.UI.SlideDirection.Up:
case Telerik.Web.UI.SlideDirection.Left:
_104=0;
_105=size;
break;
case Telerik.Web.UI.SlideDirection.Down:
case Telerik.Web.UI.SlideDirection.Right:
_104=0;
_105=_107-size;
break;
}
if(this._animation){
this._animation.stop();
}
if((_104==_105)||(this._collapseAnimation.get_type()==Telerik.Web.UI.AnimationType.None)){
this._setPosition(_105);
this._animationEnded();
}else{
this._playAnimation(this._collapseAnimation,_104,_105);
}
},add_collapseAnimationEnded:function(_108){
this.get_events().addHandler("collapseAnimationEnded",_108);
},remove_collapseAnimationEnded:function(_109){
this.get_events().removeHandler("collapseAnimationEnded",_109);
},add_expandAnimationEnded:function(_10a){
this.get_events().addHandler("expandAnimationEnded",_10a);
},remove_expandAnimationEnded:function(_10b){
this.get_events().removeHandler("expandAnimationEnded",_10b);
},add_expandAnimationStarted:function(_10c){
this.get_events().addHandler("expandAnimationStarted",_10c);
},remove_expandAnimationStarted:function(_10d){
this.get_events().removeHandler("expandAnimationStarted",_10d);
},_playAnimation:function(_10e,_10f,_110){
var _111=_10e.get_duration();
var _112=this._getAnimatedStyleProperty();
var _113=Telerik.Web.UI.AnimationFunctions.CalculateAnimationPoints(_10e,_10f,_110,this._fps);
var _114=this.get_animatedElement();
_114.style.visibility="visible";
if(this._animation){
this._animation.set_target(_114);
this._animation.set_duration(_111/1000);
this._animation.set_propertyKey(_112);
this._animation.set_values(_113);
}else{
this._animation=new $TWA.DiscreteAnimation(_114,_111/1000,this._fps,"style",_112,_113);
this._animation.add_started(this._expandAnimationStartedDelegate);
this._animation.add_ended(this._animationEndedDelegate);
if(this._overlay){
this._animation.add_onTick(this._updateOverlayDelegate);
}
}
this._animation.play();
},_animationEnded:function(){
if(this._expanding){
this.get_element().style.overflow="visible";
this._raiseEvent("expandAnimationEnded",Sys.EventArgs.Empty);
}else{
this.get_element().style.display="none";
this._raiseEvent("collapseAnimationEnded",Sys.EventArgs.Empty);
}
if(this._overlay){
this._updateOverlay();
}
},_expandAnimationStarted:function(){
this._raiseEvent("expandAnimationStarted",Sys.EventArgs.Empty);
},_updateOverlay:function(){
this._overlay.updatePosition();
},_showElement:function(){
var _115=this.get_animatedElement();
var _116=this.get_element();
if(!_116){
return;
}
if(!_116.style){
return;
}
_116.style.display=(_116.tagName.toUpperCase()!="TABLE")?"block":"";
_115.style.display=(_115.tagName.toUpperCase()!="TABLE")?"block":"";
_116.style.overflow="hidden";
},_resetState:function(_117){
this._stopAnimation();
this._showElement();
if(_117){
var _118=this.get_animatedElement();
switch(this.get_direction()){
case Telerik.Web.UI.SlideDirection.Up:
_118.style.top="0px";
break;
case Telerik.Web.UI.SlideDirection.Down:
_118.style.top=-_118.offsetHeight+"px";
break;
case Telerik.Web.UI.SlideDirection.Left:
_118.style.left=_118.offsetWidth+"px";
break;
case Telerik.Web.UI.SlideDirection.Right:
_118.style.left=-_118.offsetWidth+"px";
break;
default:
Error.argumentOutOfRange("direction",this.get_direction(),"Slide direction is invalid. Use one of the values in the Telerik.Web.UI.SlideDirection enumeration.");
break;
}
}
},_getSize:function(){
var _119=this.get_animatedElement();
switch(this.get_direction()){
case Telerik.Web.UI.SlideDirection.Up:
case Telerik.Web.UI.SlideDirection.Down:
return _119.offsetHeight;
break;
case Telerik.Web.UI.SlideDirection.Left:
case Telerik.Web.UI.SlideDirection.Right:
return _119.offsetWidth;
break;
default:
return 0;
}
},_setPosition:function(_11a){
var _11b=this.get_animatedElement();
var _11c=this._getAnimatedStyleProperty();
_11b.style[_11c]=_11a;
},_getPosition:function(){
var _11d=this.get_animatedElement();
var _11e=this._getAnimatedStyleProperty();
return _11d.style[_11e];
},_getAnimatedStyleProperty:function(){
switch(this.get_direction()){
case Telerik.Web.UI.SlideDirection.Up:
case Telerik.Web.UI.SlideDirection.Down:
return "top";
case Telerik.Web.UI.SlideDirection.Left:
case Telerik.Web.UI.SlideDirection.Right:
return "left";
}
},_stopAnimation:function(){
if(this._animation){
this._animation.stop();
}
},_disposeAnimation:function(){
if(this._animation){
this._animation.dispose();
this._animation=null;
}
},_raiseEvent:function(_11f,_120){
var _121=this.get_events().getHandler(_11f);
if(_121){
if(!_120){
_120=Sys.EventArgs.Empty;
}
_121(this,_120);
}
}};
Telerik.Web.UI.Slide.registerClass("Telerik.Web.UI.Slide",null,Sys.IDisposable);


/* END Telerik.Web.UI.Common.Navigation.NavigationScripts.js */
/* START Telerik.Web.UI.TreeView.RadTreeViewScripts.js */
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadTreeNodeEventArgs=function(_1,_2){
Telerik.Web.UI.RadTreeNodeEventArgs.initializeBase(this);
this._node=_1;
this._domEvent=_2;
};
Telerik.Web.UI.RadTreeNodeEventArgs.prototype={get_node:function(){
return this._node;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeNodeEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeEventArgs",Sys.EventArgs);
Telerik.Web.UI.RadTreeNodeCancelEventArgs=function(_3,_4){
Telerik.Web.UI.RadTreeNodeCancelEventArgs.initializeBase(this);
this._node=_3;
this._domEvent=_4;
};
Telerik.Web.UI.RadTreeNodeCancelEventArgs.prototype={get_node:function(){
return this._node;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeNodeCancelEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeCancelEventArgs",Sys.CancelEventArgs);
Telerik.Web.UI.RadTreeNodeErrorEventArgs=function(_5,_6){
Telerik.Web.UI.RadTreeNodeErrorEventArgs.initializeBase(this,[_5]);
this._errorMessage=_6;
};
Telerik.Web.UI.RadTreeNodeErrorEventArgs.prototype={get_errorMessage:function(){
return this._errorMessage;
}};
Telerik.Web.UI.RadTreeNodeErrorEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeErrorEventArgs",Telerik.Web.UI.RadTreeNodeCancelEventArgs);
Telerik.Web.UI.RadTreeNodeDraggingEventArgs=function(_7,_8,_9){
Telerik.Web.UI.RadTreeNodeDraggingEventArgs.initializeBase(this,[_7,_8]);
this._sourceNodes=_9;
};
Telerik.Web.UI.RadTreeNodeDraggingEventArgs.prototype={get_htmlElement:function(){
if(!this._domEvent){
return null;
}
return this._domEvent.target;
},get_sourceNodes:function(){
return this._sourceNodes;
}};
Telerik.Web.UI.RadTreeNodeDraggingEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeDraggingEventArgs",Telerik.Web.UI.RadTreeNodeCancelEventArgs);
Telerik.Web.UI.RadTreeNodeDroppingEventArgs=function(_a,_b,_c,_d,_e){
Telerik.Web.UI.RadTreeNodeDroppingEventArgs.initializeBase(this);
this._sourceNodes=_a;
this._destNode=_b;
this._htmlElement=_c;
this._dropPosition=_d;
this._domEvent=_e;
};
Telerik.Web.UI.RadTreeNodeDroppingEventArgs.prototype={get_sourceNodes:function(){
return this._sourceNodes;
},get_sourceNode:function(){
return this._sourceNodes[0];
},get_destNode:function(){
return this._destNode;
},get_htmlElement:function(){
return this._htmlElement;
},set_htmlElement:function(_f){
this._htmlElement=_f;
},get_dropPosition:function(){
return this._dropPosition;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeNodeDroppingEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeDroppingEventArgs",Sys.CancelEventArgs);
Telerik.Web.UI.RadTreeNodeDroppedEventArgs=function(_10,_11){
Telerik.Web.UI.RadTreeNodeDroppedEventArgs.initializeBase(this);
this._sourceNodes=_10;
this._domEvent=_11;
};
Telerik.Web.UI.RadTreeNodeDroppedEventArgs.prototype={get_sourceNodes:function(){
return this._sourceNodes;
},get_sourceNode:function(){
return this._sourceNodes[0];
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeNodeDroppedEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeDroppedEventArgs",Sys.EventArgs);
Telerik.Web.UI.RadTreeViewContextMenuEventArgs=function(_12,_13,_14){
Telerik.Web.UI.RadTreeViewContextMenuEventArgs.initializeBase(this);
this._node=_12;
this._menu=_13;
this._domEvent=_14;
};
Telerik.Web.UI.RadTreeViewContextMenuEventArgs.prototype={get_node:function(){
return this._node;
},get_menu:function(){
return this._menu;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeViewContextMenuEventArgs.registerClass("Telerik.Web.UI.RadTreeViewContextMenuEventArgs",Sys.EventArgs);
Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs=function(_15,_16,_17){
Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs.initializeBase(this);
this._node=_15;
this._menu=_16;
this._domEvent=_17;
};
Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs.prototype={get_node:function(){
return this._node;
},get_menu:function(){
return this._menu;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs.registerClass("Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs",Sys.CancelEventArgs);
Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs=function(_18,_19,_1a){
Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs.initializeBase(this);
this._node=_18;
this._menuItem=_19;
this._domEvent=_1a;
};
Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs.prototype={get_node:function(){
return this._node;
},get_menuItem:function(){
return this._menuItem;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs.registerClass("Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs",Sys.EventArgs);
Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs=function(_1b,_1c,_1d){
Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs.initializeBase(this);
this._node=_1b;
this._menuItem=_1c;
this._domEvent=_1d;
};
Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs.prototype={get_node:function(){
return this._node;
},get_menuItem:function(){
return this._menuItem;
},get_domEvent:function(){
return this._domEvent;
}};
Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs.registerClass("Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs",Sys.CancelEventArgs);
Telerik.Web.UI.RadTreeNodeEditingEventArgs=function(_1e,_1f){
Telerik.Web.UI.RadTreeNodeEditingEventArgs.initializeBase(this,[_1e]);
this._newText=_1f;
};
Telerik.Web.UI.RadTreeNodeEditingEventArgs.prototype={get_newText:function(){
return this._newText;
}};
Telerik.Web.UI.RadTreeNodeEditingEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeEditingEventArgs",Telerik.Web.UI.RadTreeNodeCancelEventArgs);
Telerik.Web.UI.RadTreeNodePopulatingEventArgs=function(_20,_21){
Telerik.Web.UI.RadTreeNodePopulatingEventArgs.initializeBase(this,[_20]);
this._context=_21;
};
Telerik.Web.UI.RadTreeNodePopulatingEventArgs.prototype={get_context:function(){
return this._context;
}};
Telerik.Web.UI.RadTreeNodePopulatingEventArgs.registerClass("Telerik.Web.UI.RadTreeNodePopulatingEventArgs",Telerik.Web.UI.RadTreeNodeCancelEventArgs);
Telerik.Web.UI.RadTreeNodePopulatedEventArgs=function(_22){
Telerik.Web.UI.RadTreeNodePopulatedEventArgs.initializeBase(this,[_22]);
};
Telerik.Web.UI.RadTreeNodePopulatedEventArgs.registerClass("Telerik.Web.UI.RadTreeNodePopulatedEventArgs",Telerik.Web.UI.RadTreeNodeEventArgs);
Telerik.Web.UI.RadTreeNodeDataBoundEventArgs=function(_23,_24){
Telerik.Web.UI.RadTreeNodeDataBoundEventArgs.initializeBase(this,[_23]);
this._dataItem=_24;
};
Telerik.Web.UI.RadTreeNodeDataBoundEventArgs.prototype={get_dataItem:function(){
return this._dataItem;
}};
Telerik.Web.UI.RadTreeNodeDataBoundEventArgs.registerClass("Telerik.Web.UI.RadTreeNodeDataBoundEventArgs",Telerik.Web.UI.RadTreeNodeEventArgs);
Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs=function(_25,_26){
Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs.initializeBase(this,[_25]);
this._errorMessage=_26;
};
Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs.prototype={get_errorMessage:function(){
return this._errorMessage;
}};
Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs.registerClass("Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs",Telerik.Web.UI.RadTreeNodeCancelEventArgs);
(function($){
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadTreeNode=function(){
Telerik.Web.UI.RadTreeNode.initializeBase(this);
};
Telerik.Web.UI.RadTreeNode.prototype={set_element:function(_28){
this._element=_28;
this._element._item=this;
this._element._itemTypeName="Telerik.Web.UI.RadTreeNode";
},get_navigateUrl:function(){
if(this._navigateUrl!==null&&typeof (this._navigateUrl)!="undefined"){
return this._navigateUrl;
}
if(this._navigateUrl=this._properties.getValue("navigateUrl",null)){
return this._navigateUrl;
}
if(this.get_linkElement()){
this._navigateUrl=this.get_linkElement().getAttribute("href",2);
}
return this._navigateUrl;
},set_navigateUrl:function(_29){
this._properties.setValue("navigateUrl",_29,true);
this._navigateUrl=_29;
if(this.get_linkElement()){
this.get_linkElement().href=_29;
}
},get_target:function(){
if(this._target!==null&&typeof (this._target)!="undefined"){
return this._target;
}
if(this._target=this._properties.getValue("target",null)){
return this._target;
}
if(this.get_linkElement()){
this._target=this.get_linkElement().target;
}
return this._target;
},set_target:function(_2a){
this._properties.setValue("target",_2a);
this._target=_2a;
if(this.get_linkElement()){
this.get_linkElement().target=_2a;
}
},get_toolTip:function(){
if(this._toolTip!==null&&typeof (this._toolTip)!="undefined"){
return this._toolTip;
}
if(this._toolTip=this._properties.getValue("toolTip",null)){
return this._toolTip;
}
if(this.get_textElement()){
this._toolTip=this.get_textElement().title;
}
return this._toolTip;
},set_toolTip:function(_2b){
this._properties.setValue("toolTip",_2b);
this._toolTip=_2b;
if(this.get_textElement()){
this.get_textElement().title=_2b;
}
},get_checkable:function(){
return this._properties.getValue("checkable",true)==true;
},set_checkable:function(_2c){
this._properties.setValue("checkable",_2c,true);
if(_2c){
if(this.get_checkBoxElement()){
return;
}
var _2d=[];
this._renderCheckBox(_2d,this.get_treeView());
$(_2d.join("")).insertBefore(this.get_textElement());
}else{
$(this.get_checkBoxElement()).remove();
this._checkBoxElement=null;
}
this.set_checked(this.get_checked());
},get_linkElement:function(){
if(!this._linkElement){
this._linkElement=$(this.get_contentElement()).children("a").get(0)||null;
}
return this._linkElement;
},set_enabled:function(_2e){
Telerik.Web.UI.RadTreeNode.callBaseMethod(this,"set_enabled",[_2e]);
if(_2e){
this._removeClassFromContentElement("rtDisabled");
this._removeClassFromContentElement(this.get_disabledCssClass());
if(this.get_selected()){
this._addClassToContentElement("rtSelected");
this._addClassToContentElement(this.get_selectedCssClass());
}
}else{
this._addClassToContentElement("rtDisabled");
this._addClassToContentElement(this.get_disabledCssClass());
if(this.get_selected()){
this._removeClassFromContentElement("rtSelected");
this._removeClassFromContentElement(this.get_selectedCssClass());
}
}
if(this.get_checkBoxElement()){
this.get_checkBoxElement().disabled=!_2e;
}
this._updateImageUrl();
},get_disabledImageUrl:function(){
return this._properties.getValue("disabledImageUrl",null);
},set_disabledImageUrl:function(_2f){
this._properties.setValue("disabledImageUrl",_2f,true);
this._updateImageUrl();
},get_expandedImageUrl:function(){
return this._properties.getValue("expandedImageUrl",null);
},set_expandedImageUrl:function(_30){
this._properties.setValue("expandedImageUrl",_30,true);
this._updateImageUrl();
},get_selectedImageUrl:function(){
return this._properties.getValue("selectedImageUrl",null);
},set_selectedImageUrl:function(_31){
this._properties.setValue("selectedImageUrl",_31,true);
this._updateImageUrl();
},get_imageUrl:function(){
if(this._imageUrl){
return this._imageUrl;
}
if(this._imageUrl=this._properties.getValue("imageUrl",null)){
return this._imageUrl;
}
this._imageUrl=this._getCurrentImageUrl();
return this._imageUrl;
},set_imageUrl:function(_32){
this._imageUrl=_32;
this._properties.setValue("imageUrl",_32,true);
this._updateImageUrl();
},get_hoveredImageUrl:function(){
return this._properties.getValue("hoveredImageUrl",null);
},set_hoveredImageUrl:function(_33){
this._properties.setValue("hoveredImageUrl",_33,true);
this._updateImageUrl();
},get_checkState:function(){
var _34=this.get_checkBoxElement();
if(!_34){
return this.get_checked()?Telerik.Web.UI.TreeNodeCheckState.Checked:Telerik.Web.UI.TreeNodeCheckState.Unchecked;
}
switch(_34.className){
case "rtChecked":
return Telerik.Web.UI.TreeNodeCheckState.Checked;
case "rtIndeterminate":
return Telerik.Web.UI.TreeNodeCheckState.Indeterminate;
case "rtUnchecked":
return Telerik.Web.UI.TreeNodeCheckState.Unchecked;
}
return this.get_checked()?Telerik.Web.UI.TreeNodeCheckState.Checked:Telerik.Web.UI.TreeNodeCheckState.Unchecked;
},_updateParentCheckState:function(_35){
var _36=this.get_parent();
while(_36!=_35){
_36._refreshCheckState(_35);
_36=_36.get_parent();
}
},_refreshCheckState:function(_37){
var _38=this._calculateCheckState();
var _39=this.get_checkBoxElement();
var _3a=_38!=Telerik.Web.UI.TreeNodeCheckState.Unchecked;
this._setChecked(_37,_3a);
if(_39){
_39.className=this._getCssClassForCheckState(_38);
}
},_getCssClassForCheckState:function(_3b){
switch(_3b){
case Telerik.Web.UI.TreeNodeCheckState.Checked:
return "rtChecked";
case Telerik.Web.UI.TreeNodeCheckState.Indeterminate:
return "rtIndeterminate";
case Telerik.Web.UI.TreeNodeCheckState.Unchecked:
return "rtUnchecked";
}
},_calculateCheckState:function(){
var _3c=this.get_nodes();
var _3d=_3c.get_count();
if(_3d==0){
return this.get_checkState();
}
var _3e=0;
var _3f=0;
for(var i=0,l=_3d;i<l;i++){
var _42=_3c.getNode(i);
if(!_42.get_checkable()){
_3d--;
continue;
}
var _43=_42.get_checkState();
if(_43==Telerik.Web.UI.TreeNodeCheckState.Checked){
_3e++;
}else{
if(_43==Telerik.Web.UI.TreeNodeCheckState.Indeterminate){
_3f++;
}
}
}
var _44=Telerik.Web.UI.TreeNodeCheckState.Unchecked;
if(_3e==_3d){
_44=Telerik.Web.UI.TreeNodeCheckState.Checked;
}else{
if(_3e+_3f>0){
_44=Telerik.Web.UI.TreeNodeCheckState.Indeterminate;
}
}
return _44;
},_getCurrentImageUrl:function(){
var _45=null;
var _46=this.get_imageElement();
if(_46){
_45=_46.src;
}
return _45;
},_getImageUrlToApply:function(){
var url=this.get_imageUrl();
var _48=this.get_expandedImageUrl();
var _49=this.get_disabledImageUrl();
var _4a=this.get_selectedImageUrl();
var _4b=this.get_hoveredImageUrl();
if(this.get_expanded()&&_48){
url=_48;
}
if(this._highLighted&&_4b){
url=_4b;
}
if(this.get_selected()&&_4a){
url=_4a;
}
if(!this.get_enabled()&&_49){
url=_49;
}
return url;
},_updateImageUrl:function(){
if(!this.get_element()){
return;
}
var url=this._getImageUrlToApply();
if(!url){
return;
}
var _4d=this.get_imageElement();
if(!_4d){
_4d=this._createImageElement();
}
_4d.src=url;
},_createImageElement:function(){
this._imageElement=document.createElement("img");
this._imageElement.className="rtImg";
var _4e=this.get_contentElement();
_4e.insertBefore(this._imageElement,this.get_textElement());
return this._imageElement;
},get_category:function(){
return this._properties.getValue("category",null);
},set_category:function(_4f){
this._properties.setValue("category",_4f,true);
},get_cssClass:function(){
return this._properties.getValue("cssClass",null);
},set_cssClass:function(_50){
this._removeClassFromTextElement(this.get_cssClass());
this._properties.setValue("cssClass",_50,true);
this._addClassToTextElement(_50);
},get_contentCssClass:function(){
return this._properties.getValue("contentCssClass",null);
},set_contentCssClass:function(_51){
this._removeClassFromContentElement(this.get_contentCssClass());
this._properties.setValue("contentCssClass",_51,true);
this._addClassToContentElement(_51);
},get_disabledCssClass:function(){
return this._properties.getValue("disabledCssClass",null);
},set_disabledCssClass:function(_52){
this._properties.setValue("disabledCssClass",_52,true);
},get_selectedCssClass:function(){
return this._properties.getValue("selectedCssClass",null);
},set_selectedCssClass:function(_53){
this._properties.setValue("selectedCssClass",_53,true);
},get_hoveredCssClass:function(){
return this._properties.getValue("hoveredCssClass",null);
},set_hoveredCssClass:function(_54){
this._properties.setValue("hoveredCssClass",_54,true);
},get_childListElement:function(){
if(!this._nodeListElement){
this._nodeListElement=$(this.get_element()).children("ul").get(0)||null;
}
return this._nodeListElement;
},get_contentElement:function(){
if(!this._contentElement){
this._contentElement=$(this.get_element()).children("div").get(0)||null;
}
return this._contentElement;
},get_contextMenuID:function(){
return this._properties.getValue("contextMenuID","");
},get_resolvedContextMenuID:function(){
if(!this._resolvedContextMenuID){
this._resolvedContextMenuID=this.get_treeView()._resolveContextMenuID(this.get_contextMenuID());
}
return this._resolvedContextMenuID;
},set_contextMenuID:function(_55){
this._properties.setValue("contextMenuID",_55,true);
this._resolvedContextMenuID=null;
this._contextMenu=null;
},get_textElement:function(){
if(!this._textElement){
this._textElement=$(this.get_contentElement()).children(".rtIn").get(0)||null;
}
return this._textElement;
},get_toggleElement:function(){
if(!this._toggleElement){
this._toggleElement=$(this.get_contentElement()).children(".rtPlus, .rtMinus").get(0)||null;
}
return this._toggleElement;
},get_inputElement:function(){
return this._inputElement;
},get_checkBoxElement:function(){
if(!this._checkBoxElement){
this._checkBoxElement=$(this.get_contentElement()).children("input[type='checkbox'], .rtChecked, .rtUnchecked, .rtIndeterminate").get(0)||null;
}
return this._checkBoxElement;
},get_imageElement:function(){
if(!this._imageElement){
this._imageElement=$(this.get_contentElement()).children(".rtImg").get(0)||null;
}
return this._imageElement;
},get_previousNode:function(){
return this.get_previousSibling();
},get_nextNode:function(){
return this.get_nextSibling();
},expand:function(){
this.set_expanded(true);
},collapse:function(){
this.set_expanded(false);
},toggle:function(){
this.set_expanded(!this.get_expanded());
},highlight:function(){
this._highlight();
},unhighlight:function(){
this._unhighlight();
},select:function(){
this.set_selected(true);
var _56=this.get_treeView();
_56._postClickCommand(this);
},unselect:function(){
this.set_selected(false);
},enable:function(){
this.set_enabled(true);
},disable:function(){
this.set_enabled(false);
},check:function(){
this.set_checked(true);
},uncheck:function(){
this.set_checked(false);
},startEdit:function(){
this._startEdit();
},endEdit:function(){
this._endEdit(true);
},scrollIntoView:function(){
var _57=this._getControl();
if(_57){
_57._scrollToNode(this);
}
},_showContextMenu:function(_58){
var _59=this.get_contextMenu();
if(_59&&this.get_enableContextMenu()){
_59.show(_58);
}
},_shouldInitializeChild:function(_5a){
return true;
},_highlight:function(){
if(!this.get_isEnabled()){
return;
}
this._addClassToContentElement("rtHover");
this._addClassToContentElement(this.get_hoveredCssClass());
this._highLighted=true;
this._updateImageUrl();
},_unhighlight:function(){
this._removeClassFromContentElement("rtHover");
this._removeClassFromContentElement(this.get_hoveredCssClass());
this._highLighted=false;
this._updateImageUrl();
},_getChildElements:function(){
return $telerik.getChildrenByTagName(this.get_childListElement(),"li");
},get_contextMenu:function(){
if(!this._contextMenu){
if(this.get_contextMenuID()==""){
var _5b=this.get_treeView().get_contextMenuIDs();
if(_5b.length==0){
return null;
}
var _5c=$find(this.get_treeView()._resolveContextMenuID(_5b[0]));
if(!_5c){
var _5c=$find(_5b[0]);
}
this._contextMenu=_5c;
}else{
this._contextMenu=$find(this.get_resolvedContextMenuID());
}
}
return this._contextMenu;
},get_enableContextMenu:function(){
return this._properties.getValue("enableContextMenu",true);
},set_enableContextMenu:function(_5d){
this._properties.setValue("enableContextMenu",_5d,true);
},_getNodeElements:function(){
return this._siblingElements.eq(this._index).children("ul").children("li");
},_initialize:function(_5e,_5f){
Telerik.Web.UI.ControlItem.prototype._initialize.apply(this,arguments);
if(this.get_expanded()){
this._ensureChildControls();
}
},showLoadingStatus:function(_60,_61){
this._loadingStatusElement=document.createElement("span");
if(_61==Telerik.Web.UI.TreeViewLoadingStatusPosition.BeforeNodeText){
this._loadingStatusElement.className="rtLoadingBefore";
this.get_textElement().insertBefore(this._loadingStatusElement,this.get_textElement().firstChild);
}else{
if(_61==Telerik.Web.UI.TreeViewLoadingStatusPosition.AfterNodeText){
this._loadingStatusElement.className="rtLoadingAfter";
this.get_textElement().appendChild(this._loadingStatusElement);
}else{
if(_61==Telerik.Web.UI.TreeViewLoadingStatusPosition.BelowNodeText){
this._loadingStatusElement.className="rtLoadingBelow";
this.get_textElement().appendChild(this._loadingStatusElement);
}
}
}
this._loadingStatusElement.innerHTML=_60;
},get_loadingStatusElement:function(){
return this._loadingStatusElement;
},hideLoadingStatus:function(){
if(!this._loadingStatusElement){
return;
}
this._loadingStatusElement.parentNode.removeChild(this._loadingStatusElement);
this._loadingStatusElement=null;
},get_postBack:function(){
return this._properties.getValue("postBack",true)==true;
},set_postBack:function(_62){
this._properties.setValue("postBack",_62);
},get_expandMode:function(){
return this._properties.getValue("expandMode",Telerik.Web.UI.TreeNodeExpandMode.ClientSide);
},set_expandMode:function(_63){
this._properties.setValue("expandMode",_63,true);
if(_63!=Telerik.Web.UI.TreeNodeExpandMode.ClientSide){
if(!this.get_toggleElement()&&this.get_element()){
this._createToggleElement();
}
}else{
if(this.get_nodes().get_count()<1){
this._removeToggle();
}
}
},_getData:function(){
var _64=this._properties._data;
var _65=this._properties.getValue("disabledImageUrl",null);
if(_65!==null){
_64["disabledImageUrl"]=_65;
}
var _66=this._properties.getValue("expandedImageUrl",null);
if(_66!==null){
_64["expandedImageUrl"]=_66;
}
if(this.get_hoveredImageUrl()!==null){
_64["hoveredImageUrl"]=this.get_hoveredImageUrl();
}
var _67=this._properties.getValue("selectedImageUrl",null);
if(_67!==null){
_64["selectedImageUrl"]=_67;
}
if(this.get_imageUrl()!==null){
_64["imageUrl"]=this.get_imageUrl();
}
if(this.get_navigateUrl()!==null){
if(this.get_linkElement()){
_64["navigateUrl"]=this.get_linkElement().href;
}else{
_64["navigateUrl"]=this.get_navigateUrl();
}
}
if(this.get_target()!==null){
_64["target"]=this.get_target();
}
_64["text"]=this.get_text();
if(this.get_attributes().get_count()>0){
_64["attributes"]=this.get_attributes()._data;
}
delete _64.items;
return _64;
},_createItemCollection:function(){
var _68=new Telerik.Web.UI.RadTreeNodeCollection(this);
Telerik.Web.UI.RadTreeView._createNodesFromJson(this,_68);
return _68;
},_hasChildren:function(){
return (this.get_nodes().get_count()>0);
},get_nextVisibleNode:function(){
if(this.get_nodes().get_count()>0&&this.get_expanded()){
return this.get_nodes().getNode(0);
}
var _69=this.get_nextNode();
if(_69){
return _69;
}
var _6a=this.get_parent();
while(_6a&&!Telerik.Web.UI.RadTreeView.isInstanceOfType(_6a)){
var _6b=_6a.get_nextNode();
if(_6b){
return _6b;
}
_6a=_6a.get_parent();
}
return null;
},get_prevVisibleNode:function(){
var _6c=this.get_previousNode();
if(_6c){
if(_6c.get_nodes().get_count()>0&&_6c.get_expanded()){
return _6c.get_lastVisibleChild();
}
return this.get_previousNode();
}
var _6d=this.get_parent();
if(_6d&&!Telerik.Web.UI.RadTreeView.isInstanceOfType(_6d)){
return _6d;
}
return null;
},get_lastVisibleChild:function(){
var _6e=this.get_lastChild();
while(_6e._hasChildren()&&_6e.get_expanded()){
_6e=_6e.get_lastChild();
}
return _6e;
},_getNextSelectableNode:function(){
var _6f=this.get_nextVisibleNode();
while(_6f&&!_6f.get_enabled()){
_6f=_6f.get_nextVisibleNode();
}
return _6f;
},_getPrevSelectableNode:function(){
var _70=this.get_prevVisibleNode();
while(_70&&!_70.get_enabled()){
_70=_70.get_prevVisibleNode();
}
return _70;
},get_lastChild:function(){
if(this._hasChildren()){
return this.get_nodes().getNode(this.get_nodes().get_count()-1);
}
return null;
},get_nodeData:function(){
return this.get_itemData();
},get_selected:function(){
return this._properties.getValue("selected",false)==true;
},set_selected:function(_71){
if(!this.get_isEnabled()&&_71){
return;
}
if(this.get_selected()==_71){
return;
}
this._properties.setValue("selected",_71);
var _72=this.get_treeView();
if(!_72){
return;
}
if(_71){
if(!_72.get_multipleSelect()){
_72._clearSelectedNodes();
}
if(!this._editing){
this.get_treeView()._endEdit(false);
}
this._select(_72);
}else{
this._unselect(_72);
}
this._updateImageUrl();
},_loadFromDictionary:function(_73){
var _74={};
for(var key in _73){
if(key==="__type"){
continue;
}
var _76=key.charAt(0).toLowerCase()+key.substr(1);
var _77=_73[key];
if(_77===null||_77===""){
continue;
}
_74[_76]=_77;
}
this._properties.load(_74);
if(_73.Attributes){
this.get_attributes()._load(_73.Attributes);
}
},_startEdit:function(){
var _78=this._getControl();
if(_78){
_78._editing=true;
_78._editNode=this;
}
this._editing=true;
this._originalText=this.get_text();
var _79=this.get_textElement();
this._originalTextHtml=_79.innerHTML;
_79.innerHTML="";
var _7a=document.createElement("input");
_7a.setAttribute("type","text");
_7a.setAttribute("size",this._originalText.length+3);
_7a.setAttribute("value",Telerik.Web.UI.RadTreeView._htmlDecode(this._originalText));
this._inputElement=_7a;
this._addClassToContentElement("rtEdit");
_79.appendChild(_7a);
var _7b=this;
_7a.onblur=function(){
_7b._endEdit(false);
};
_7a.onchange=function(){
_7b._endEdit(false);
};
_7a.focus();
this._cancelInputEvents(_7a);
this._selectInputText(_7a,this._originalText.length);
this.get_treeView()._raiseEvent("nodeEditStart",this);
},_endEdit:function(_7c){
this._editing=false;
var _7d=this.get_inputElement();
var _7e=_7d.parentNode;
_7e.removeChild(_7d);
if(!_7c){
this._updateText(_7e,this._originalText,this._originalTextHtml,_7d.value);
var _7f=this._originalText!=_7d.value;
if(!this.get_treeView()._editNodeText(this,_7d.value,_7f)){
_7e.innerHTML=this._originalTextHtml;
}
}else{
_7e.innerHTML=this._originalTextHtml;
}
this._clearEdit();
},_clearEdit:function(){
this._removeClassFromContentElement("rtEdit");
this.get_treeView()._clearEdit();
this._originalText=null;
this._originalTextHtml=null;
this._inputElement.onblur=null;
this._inputElement.onchange=null;
this._inputElement=null;
},_selectInputText:function(_80,_81){
var _82=0;
var _83=_81;
if(_80.createTextRange){
var _84=_80.createTextRange();
_84.moveStart("character",_82);
_84.moveEnd("character",_83);
_84.select();
}else{
_80.setSelectionRange(_82,_83);
}
},_cancelInputEvents:function(_85){
_85.onselectstart=_85.onmousedown=_85.onmouseup=_85.onclick=function(e){
if(!e){
e=window.event;
}
if(e.stopPropagation){
e.stopPropagation();
}else{
e.cancelBubble=true;
}
};
},_select:function(_87){
_87._registerSelectedNode(this);
this._addClassToContentElement("rtSelected");
this._addClassToContentElement(this.get_selectedCssClass());
},_unselect:function(_88){
_88._unregisterSelectedNode(this);
this._removeClassFromContentElement("rtSelected");
this._removeClassFromContentElement(this.get_selectedCssClass());
},_addClassToContentElement:function(_89){
if(!_89){
return;
}
var _8a=this.get_contentElement();
if(_8a){
Sys.UI.DomElement.addCssClass(_8a,_89);
}
},_removeClassFromContentElement:function(_8b){
if(!_8b){
return;
}
var _8c=this.get_contentElement();
if(_8c){
Sys.UI.DomElement.removeCssClass(_8c,_8b);
}
},_addClassToTextElement:function(_8d){
if(!_8d){
return;
}
var _8e=this.get_textElement();
if(_8e){
Sys.UI.DomElement.addCssClass(_8e,_8d);
}
},_removeClassFromTextElement:function(_8f){
if(!_8f){
return;
}
var _90=this.get_textElement();
if(_90){
Sys.UI.DomElement.removeCssClass(_90,_8f);
}
},_displayChildren:function(_91){
var _92=this.get_childListElement();
if(!_92){
return;
}
var _93=$(_92);
var _94=this.get_treeView();
var _95=_94.get_collapseAnimation();
var _96=$telerik.quirksMode?1:0;
var _97=_96;
var _98={height:_96};
this._expanding=_91;
if(_91){
if(_93.is(":visible")){
_96=_93.height();
}
_95=_94.get_expandAnimation();
if(_95.get_type()!=Telerik.Web.UI.AnimationType.None){
_93.height("auto");
_97=_93.height();
_93.css({height:_96});
_98={height:_97};
}
}
this._playAnimation(_93,_95,_98,_91);
},_playAnimation:function(_99,_9a,_9b,_9c){
var _9d=function(){
if(_9c){
_99.css("overflow","visible");
}else{
_99.css("display","none");
}
_99.height("auto");
};
if(_9a.get_type()!=Telerik.Web.UI.AnimationType.None){
_99.stop().animate(_9b,_9a.get_duration(),Telerik.Web.UI.AnimationType.toEasing(_9a.get_type()),_9d);
}else{
_99.css({display:"",height:_9b.height});
_9d();
}
},_collapseSiblings:function(){
var _9e=this.get_parent().get_nodes();
for(var i=0;i<_9e.get_count();i++){
if(_9e.getNode(i)!=this){
_9e.getNode(i).set_expanded(false);
}
}
},set_expanded:function(_a0){
if(!this.get_isEnabled()){
return;
}
if(this.get_expanded()==_a0){
return;
}
this._properties.setValue("expanded",_a0);
if(!this.get_element()){
return;
}
var _a1=this.get_treeView();
if(_a0){
_a1._registerExpandedNode(this);
if(_a1.get_singleExpandPath()){
this._collapseSiblings();
}
if(this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.ServerSide){
var _a2={commandName:"Expand",index:this._getHierarchicalIndex()};
_a1._postback(_a2);
}
if(this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.ServerSideCallBack){
_a1._doLoadOnDemand(this);
return;
}
if(this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.WebService){
_a1._loadChildrenFromWebService(this);
return;
}
this._ensureChildControls();
}else{
_a1._registerCollapsedNode(this);
if(this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.ServerSide){
var _a2={commandName:"Collapse",index:this._getHierarchicalIndex()};
_a1._postback(_a2);
}
}
if(this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.ClientSide){
this._displayChildren(_a0);
this._updateToggle();
this._updateImageUrl();
}
},set_visible:function(_a3){
if(this.get_visible()==_a3){
return;
}
Telerik.Web.UI.RadTreeNode.callBaseMethod(this,"set_visible",[_a3]);
if(_a3){
this.get_element().style.display="";
}else{
this.get_element().style.display="none";
}
this._ensureSiblingsAppearance();
var _a4=this.get_parent();
if(_a4!=this.get_treeView()){
_a4._ensureToggleElementAppearance();
}
},get_treeView:function(){
return this._getControl();
},_updateToggle:function(){
var _a5=this.get_toggleElement();
if(!_a5){
return;
}
if(this.get_expanded()){
this._replaceCssClass(_a5,"rtPlus","rtMinus");
}else{
this._replaceCssClass(_a5,"rtMinus","rtPlus");
}
},_removeToggle:function(){
var _a6=this.get_toggleElement();
if(!_a6){
return;
}
var _a7=_a6.parentNode;
_a7.removeChild(_a6);
this._toggleElement=null;
},_replaceCssClass:function(_a8,_a9,_aa){
_a8.className=_a8.className.replace(_a9,_aa);
},get_expanded:function(){
return this._properties.getValue("expanded",false)==true;
},get_checked:function(){
return this._properties.getValue("checked",false)==true;
},_setChecked:function(_ab,_ac){
if(!this.get_isEnabled()){
return;
}
if(!this.get_checkable()){
return;
}
if(this.get_checked()==_ac){
return;
}
this._properties.setValue("checked",_ac);
if(!_ab){
return;
}
if(_ac){
_ab._registerCheckedNode(this,true);
}else{
_ab._unregisterCheckedNode(this,true);
}
},_check:function(_ad,e){
var _af=this.get_treeView();
this._setChecked(_af,_ad);
var _b0=this.get_checkBoxElement();
if(_b0&&!e){
_b0.checked=_ad;
if($telerik.isSafari){
_b0.safarichecked=_ad;
}
}
if(!_af){
return;
}
if(_af._checkChildNodes){
var _b1=this.get_nodes();
for(var i=0,_b3=_b1.get_count();i<_b3;i++){
_b1.getNode(i)._check(_ad);
}
}
if(_b0){
if(_af._threeState){
_b0.className=_ad?"rtChecked":"rtUnchecked";
this._updateParentCheckState(_af);
}
}
},set_checked:function(_b4,e){
this._check(_b4,e);
if(this.get_treeView()){
this.get_treeView()._updateCheckedState();
}
},get_nodes:function(){
return this._getChildren();
},get_text:function(_b6){
var _b6=Telerik.Web.UI.RadTreeNode.callBaseMethod(this,"get_text");
return Telerik.Web.UI.RadTreeView._htmlDecode(_b6);
},_updateText:function(_b7,_b8,_b9,_ba){
var _bb=Telerik.Web.UI.RadTreeView._regExEscape(_b8);
_bb=Telerik.Web.UI.RadTreeView._htmlEncode(_bb);
var _bc=new RegExp(_bb,"g");
var _bd=Telerik.Web.UI.RadTreeView._htmlEncode(_ba);
_b7.innerHTML=_b9.replace(_bc,_bd);
},set_text:function(_be){
if(!_be){
_be="";
}
if(this.get_element()){
var _bf=this.get_textElement();
if(this._text){
this._updateText(_bf,this.get_text(),_bf.innerHTML,_be);
}else{
_bf.innerHTML=_be;
}
}
this._text=_be;
this._properties.setValue("text",_be,true);
},get_allowEdit:function(){
return this._properties.getValue("allowEdit",true)==true;
},set_allowEdit:function(_c0){
this._properties.setValue("allowEdit",_c0);
},get_allowDrag:function(){
return this._properties.getValue("allowDrag",true)==true;
},set_allowDrag:function(_c1){
this._properties.setValue("allowDrag",_c1);
},get_allowDrop:function(){
return this._properties.getValue("allowDrop",true)==true;
},set_allowDrop:function(_c2){
this._properties.setValue("allowDrop",_c2);
},_dispose:function(){
Telerik.Web.UI.RadTreeNode.callBaseMethod(this,"_dispose");
this._rendered=false;
this._nodeListElement=null;
this._inputElement=null;
this._contentElement=null;
this._toggleElement=null;
this._textElement=null;
this._checkBoxElement=null;
this._loadingStatusElement=null;
this._imageElement=null;
this._linkElement=null;
},_createChildListElement:function(){
var _c3=document.createElement("ul");
_c3.className="rtUL";
this.get_element().appendChild(_c3);
if(!this.get_expanded()){
_c3.style.display="none";
}
return _c3;
},_destroyChildListElement:function(){
$(this.get_element()).children("ul").remove();
this._nodeListElement=null;
},_renderChildren:function(_c4){
_c4[_c4.length]="<ul class='rtUL'";
if(!this.get_expanded()){
_c4[_c4.length]="style='display:none'>";
}else{
_c4[_c4.length]=">";
}
var _c5=this.get_nodes();
for(var i=0,_c7=_c5.get_count();i<_c7;i++){
_c5.getNode(i)._render(_c4);
}
_c4[_c4.length]="</ul>";
},_isDescendantOf:function(_c8){
var _c9=this.get_parent();
while(_c9!=this._getControl()){
if(_c9==_c8){
return true;
}
_c9=_c9.get_parent();
}
return false;
},_isFirstVisibleNode:function(){
if(this.get_isFirst()&&this.get_visible()){
return true;
}
var _ca=this.get_previousSibling();
while(_ca){
if(_ca.get_visible()){
return false;
}
_ca=_ca.get_previousSibling();
}
return true;
},_isLastVisibleNode:function(){
if(this.get_isLast()&&this.get_visible()){
return true;
}
var _cb=this.get_nextSibling();
while(_cb){
if(_cb.get_visible()){
return false;
}
_cb=_cb.get_nextSibling();
}
return true;
},_isFirstRootNode:function(){
return this._isFirstVisibleNode()&&this.get_parent()==this.get_treeView();
},_renderBeginTag:function(_cc){
_cc[_cc.length]="<li class='rtLI";
if(this._isFirstRootNode()){
_cc[_cc.length]=" rtFirst";
}
if(this._isLastVisibleNode()){
_cc[_cc.length]=" rtLast";
}
_cc[_cc.length]="'>";
},_hasChildren:function(){
return this.get_nodes().get_count()>0;
},_renderLink:function(_cd,_ce){
_cd[_cd.length]="<a class='rtIn";
if(_ce){
_cd[_cd.length]=" "+_ce;
}
_cd[_cd.length]="' href='";
_cd[_cd.length]=this.get_navigateUrl();
_cd[_cd.length]="'";
if(this.get_target()){
_cd[_cd.length]=" target='";
_cd[_cd.length]=this.get_target();
_cd[_cd.length]="'";
}
if(this.get_toolTip()){
_cd[_cd.length]=" title='";
_cd[_cd.length]=this.get_toolTip();
_cd[_cd.length]="'";
}
_cd[_cd.length]=">";
_cd[_cd.length]=this.get_text();
_cd[_cd.length]="</a></div>";
},_renderWrap:function(_cf){
_cf[_cf.length]="<div class='rt";
if(this._isLastVisibleNode()&&!this._isFirstRootNode()){
_cf[_cf.length]="Bot";
}else{
if(this._isFirstVisibleNode()){
_cf[_cf.length]="Top";
}else{
_cf[_cf.length]="Mid";
}
}
if(this.get_contentCssClass()){
_cf[_cf.length]=" "+this.get_contentCssClass();
}
if(this.get_selected()){
_cf[_cf.length]=" rtSelected";
}
_cf[_cf.length]="'><span class='rtSp'></span>";
if(this._hasChildren()||this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.WebService||this.get_expandMode()==Telerik.Web.UI.TreeNodeExpandMode.ServerSideCallBack){
this._renderToggleElement(_cf);
}
this._renderCheckBox(_cf,this.get_treeView());
var _d0=this._getImageUrlToApply();
if(_d0){
_cf[_cf.length]="<img class='rtImg' alt='' src='";
_cf[_cf.length]=_d0;
_cf[_cf.length]="' />";
}
var _d1=this.get_cssClass();
if(this.get_navigateUrl()){
this._renderLink(_cf,_d1);
}else{
_cf[_cf.length]="<span class='rtIn";
if(_d1){
_cf[_cf.length]=" "+_d1;
}
_cf[_cf.length]="'";
if(this.get_toolTip()){
_cf[_cf.length]=" title='";
_cf[_cf.length]=this.get_toolTip();
_cf[_cf.length]="'";
}
_cf[_cf.length]=">";
_cf[_cf.length]=this.get_text();
_cf[_cf.length]="</span></div>";
}
},_renderCheckBox:function(_d2,_d3){
var _d4=_d3._checkBoxes&&this.get_checkable();
if(_d4){
if(_d3._threeState){
_d2[_d2.length]="<span class='";
_d2[_d2.length]=this._getCssClassForCheckState(this.get_checkState());
_d2[_d2.length]="'></span>";
}else{
_d2[_d2.length]="<input type='checkbox' class='rtChk'";
if(this.get_checked()){
_d2[_d2.length]=" checked='checked'";
}
if(!this.get_enabled()){
_d2[_d2.length]=" disabled='disabled'";
}
_d2[_d2.length]=" />";
}
}
},_renderToggleElement:function(_d5){
_d5[_d5.length]="<span class='";
if(this.get_expanded()){
_d5[_d5.length]="rtMinus'></span>";
}else{
_d5[_d5.length]="rtPlus'></span>";
}
},_ensureAppearance:function(){
if(!this.get_element()){
return;
}
if(this._isFirstRootNode()){
this._ensureFirstRootNodeAppearance();
}else{
if(this._isLastVisibleNode()){
this._ensureLastNodeAppearance();
}else{
if(this._isFirstVisibleNode()){
this._ensureFirstNodeAppearance();
}else{
this._ensureMiddleNodeAppearance();
}
}
}
if(this.get_selected()){
this._addClassToContentElement("rtSelected");
}
},_render:function(_d6){
this._renderBeginTag(_d6);
this._renderWrap(_d6);
if(this._hasChildren()>0){
this._renderChildren(_d6);
}
_d6[_d6.length]="</li>";
this._ensureSiblingsAppearance();
var _d7=this.get_parent();
if(_d7!=this.get_treeView()){
_d7._ensureParentNodeAppearance();
}
},_getBatchImageUrlToApply:function(_d8,_d9){
if(!_d8){
return this._properties.getValue("disabledImageUrl",null);
}
if(_d9){
return this._properties.getValue("selectedImageUrl",null);
}
return this._properties.getValue("imageUrl",null);
},_batchRender:function(_da,_db){
var _dc=["rtMid"];
_dc[_dc.length]=this.get_contentCssClass();
var _dd=this._properties.getValue("selected",false);
if(_dd){
_dc[_dc.length]="rtSelected";
}
_da[_da.length]="<li class='rtLI'><div class='";
_da[_da.length]=_dc.join(" ");
_da[_da.length]="'><span class='rtSp'></span>";
var _de=this._properties.getValue("expandMode",Telerik.Web.UI.TreeNodeExpandMode.ClientSide);
if(_de!=Telerik.Web.UI.TreeNodeExpandMode.ClientSide){
_da[_da.length]="<span class='rtPlus'></span>";
}
this._renderCheckBox(_da,_db);
var _df=this._properties.getValue("enabled",true);
var _e0=this._getBatchImageUrlToApply(_df,_dd);
if(_e0){
_da[_da.length]="<img class='rtImg' alt='' src='";
_da[_da.length]=_e0;
_da[_da.length]="' />";
}
var _e1=this.get_cssClass();
var _e2=this._properties.getValue("navigateUrl",null);
if(_e2){
this._renderLink(_da,_e1);
}else{
if(_e1){
_da[_da.length]="<span class='rtIn ";
_da[_da.length]=_e1;
_da[_da.length]="'>";
}else{
_da[_da.length]="<span class='rtIn'>";
}
_da[_da.length]=this._properties.getValue("text","");
_da[_da.length]="</span></div>";
}
_da[_da.length]="</li>";
},_ensureToggleElementAppearance:function(){
var _e3=this.get_toggleElement();
if(!_e3){
return;
}
var _e4=false;
for(var i=0;i<this.get_nodes().get_count();i++){
if(this.get_nodes().getNode(i).get_visible()){
_e4=true;
}
}
if(_e4){
_e3.style.display="";
}else{
_e3.style.display="none";
}
},_ensureSiblingsAppearance:function(){
var _e6=this.get_nextSibling();
if(_e6){
_e6._ensureAppearance();
}
var _e7=this.get_previousSibling();
if(_e7){
_e7._ensureAppearance();
}
},_ensureParentNodeAppearance:function(){
if(!this.get_element()){
return;
}
if(this.get_toggleElement()){
this._ensureToggleElementAppearance();
return;
}
this._createToggleElement();
},_setContentElementCssClass:function(_e8){
var _e9=this.get_contentCssClass();
if(_e9){
_e8=_e8+" "+_e9;
}
this._setCssClass(this.get_contentElement(),_e8);
},_createToggleElement:function(){
var _ea=document.createElement("span");
_ea.className=this.get_expanded()?"rtMinus":"rtPlus";
this.get_contentElement().insertBefore(_ea,this.get_contentElement().firstChild.nextSibling);
},_ensureFirstNodeAppearance:function(){
this._setCssClass(this.get_element(),"rtLI");
this._setContentElementCssClass("rtTop");
},_ensureLastNodeAppearance:function(){
this._setCssClass(this.get_element(),"rtLI rtLast");
this._setContentElementCssClass("rtBot");
},_ensureMiddleNodeAppearance:function(){
this._setCssClass(this.get_element(),"rtLI");
this._setContentElementCssClass("rtMid");
},_ensureFirstRootNodeAppearance:function(){
var _eb="rtLI rtFirst";
if(this.get_parent().get_nodes().get_count()<2){
_eb="rtLI rtFirst rtLast";
}
this._setCssClass(this.get_element(),_eb);
this._setContentElementCssClass("rtTop");
},_cacheDomProperties:function(){
this.get_disabledImageUrl();
this.get_expandedImageUrl();
this.get_hoveredImageUrl();
this.get_selectedImageUrl();
this.get_imageUrl();
this.get_text();
this.get_navigateUrl();
this.get_target();
this.get_toolTip();
for(var i=0;i<this.get_nodes().get_count();i++){
this.get_nodes().getNode(i)._cacheDomProperties();
}
},_removeFromDom:function(_ed){
_ed.get_childListElement().removeChild(this.get_element());
var _ee=_ed.get_nodes().getNode(0);
if(_ee){
_ee._ensureAppearance();
}
var _ef=_ed.get_nodes().getNode(_ed.get_nodes().get_count()-1);
if(_ef){
_ef._ensureAppearance();
}
},_getNodeData:function(){
var _f0={Text:this.get_text(),Value:this.get_value(),ExpandMode:this.get_expandMode(),NavigateUrl:this.get_navigateUrl(),PostBack:this.get_postBack(),DisabledCssClass:this.get_disabledCssClass(),SelectedCssClass:this.get_selectedCssClass(),HoveredCssClass:this.get_hoveredCssClass(),ImageUrl:this.get_imageUrl(),HoveredImageUrl:this.get_hoveredImageUrl(),DisabledImageUrl:this.get_disabledImageUrl(),ExpandedImageUrl:this.get_expandedImageUrl(),ContextMenuID:this.get_contextMenuID()};
if(this.get_attributes().get_count()>0){
_f0["Attributes"]=this.get_attributes()._data;
}
return _f0;
}};
Telerik.Web.UI.RadTreeNode.registerClass("Telerik.Web.UI.RadTreeNode",Telerik.Web.UI.ControlItem);
})($telerik.$);
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadTreeNodeCollection=function(_f1){
Telerik.Web.UI.RadTreeNodeCollection.initializeBase(this,[_f1]);
};
Telerik.Web.UI.RadTreeNodeCollection.prototype={getNode:function(_f2){
return this.getItem(_f2);
}};
Telerik.Web.UI.RadTreeNodeCollection.registerClass("Telerik.Web.UI.RadTreeNodeCollection",Telerik.Web.UI.ControlItemCollection);
(function($){
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.TreeNodeExpandMode=function(){
};
Telerik.Web.UI.TreeNodeExpandMode.prototype={ClientSide:0,ServerSide:1,ServerSideCallBack:2,WebService:3};
Telerik.Web.UI.TreeNodeExpandMode.registerEnum("Telerik.Web.UI.TreeNodeExpandMode");
Telerik.Web.UI.TreeNodeCheckState=function(){
};
Telerik.Web.UI.TreeNodeCheckState.prototype={Unchecked:0,Checked:1,Indeterminate:2};
Telerik.Web.UI.TreeNodeCheckState.registerEnum("Telerik.Web.UI.TreeNodeCheckState");
Telerik.Web.UI.TreeViewLoadingStatusPosition=function(){
};
Telerik.Web.UI.TreeViewLoadingStatusPosition.prototype={BeforeNodeText:0,AfterNodeText:1,BelowNodeText:2,None:3};
Telerik.Web.UI.TreeViewLoadingStatusPosition.registerEnum("Telerik.Web.UI.TreeViewLoadingStatusPosition");
Telerik.Web.UI.RadTreeView=function(_f4){
Telerik.Web.UI.RadTreeView.initializeBase(this,[_f4]);
this._selectedValue="";
this._childTypeName="Telerik.Web.UI.RadTreeNode";
this._loadingMessage="Loading ...";
this._loadingStatusPosition=Telerik.Web.UI.TreeViewLoadingStatusPosition.BeforeNodeText;
this._nodeData=null;
this._nodeListElement=null;
this._postBackReference=null;
this._uniqueId=null;
this._multipleSelect=false;
this._initialDragMousePos=null;
this._hoveredNode=null;
this._editing=false;
this._editNode=null;
this._dragging=false;
this._checkBoxes=false;
this._checkChildNodes=false;
this._threeState=false;
this._draggingClue=null;
this._initialDragNode=null;
this._dropClue=null;
this._enableDragAndDropBetweenNodes=false;
this._enableDragAndDrop=false;
this._selectedIndexes=[];
this._contextMenuIDs=[];
this._contextMenus=null;
this._checkedIndexes=[];
this._expandedIndexes=[];
this._collapsedIndexes=[];
this._expandedNodesJson="[]";
this._collapsedNodesJson="[]";
this._selectedNodesJson="[]";
this._checkedNodesJson="[]";
this._logEntriesJson="[]";
this._scrollPosition=0;
this._allowNodeEditing=false;
this._postBackOnCheck=false;
this._postBackOnClick=false;
this._postBackOnExpand=false;
this._postBackOnEdit=false;
this._postBackOnContextMenuItemClick=false;
this._postBackOnCollapse=false;
this._isRtl=false;
this._singleExpandPath=false;
this._clientState={expandedNodes:[],collapsedNodes:[],checkedNodes:[],logEntries:[],selectedNodes:[]};
this._onDocumentMouseMoveDelegate=null;
this._onDocumentMouseUpDelegate=null;
this._onSelectStartDelegate=null;
this._contextMenuNode=null;
this._skin=null;
this._expandAnimation=new Telerik.Web.UI.AnimationSettings({});
this._collapseAnimation=new Telerik.Web.UI.AnimationSettings({});
this._webServiceSettings=new Telerik.Web.UI.WebServiceSettings({});
this._persistLoadOnDemandNodes=true;
this._webServiceLoader=null;
this._initializeComplete=false;
this._mouseMoveAttached=false;
this._numpadPlusKeyCode=107;
this._numpadMinusKeyCode=109;
this._leftArrowKeyCode=37;
this._rightArrowKeyCode=39;
this._downArrowKeyCode=40;
this._upArrowKeyCode=38;
this._enterKeyCode=13;
this._spaceKeyCode=32;
this._f2KeyCode=113;
this._escapeKeyCode=27;
this._shiftKeyCode=16;
};
Telerik.Web.UI.RadTreeView._createNodesFromJson=function(_f5,_f6){
var _f7=_f5.get_nodeData();
if(!_f7){
return;
}
var _f8=$telerik.getChildrenByTagName(_f5.get_childListElement(),"li");
for(var i=0,l=_f7.length;i<l;i++){
var _fb=new Telerik.Web.UI.RadTreeNode();
_f6.add(_fb);
_fb._initialize(_f7[i],_f8[i]);
}
};
Telerik.Web.UI.RadTreeView.prototype={initialize:function(){
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"initialize");
this.get_element().value=this._selectedValue;
this._clientState.selectedNodes=this._selectedIndexes;
this._selectedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.selectedNodes);
this._clientState.checkedNodes=this._checkedIndexes;
this._checkedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.checkedNodes);
this._clientState.expandedNodes=this._expandedIndexes;
this._expandedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.expandedNodes);
this._clientState.collapsedNodes=this._collapsedIndexes;
this._collapsedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.collapsedNodes);
this.updateClientState();
this._eventMap.addHandlerForClassName("dblclick","rtIn",this._doubleClick);
this._eventMap.addHandlerForClassName("click","rtPlus",this._toggle);
this._eventMap.addHandlerForClassName("click","rtChk",this._check);
this._eventMap.addHandlerForClassName("click","rtChecked",this._check);
this._eventMap.addHandlerForClassName("click","rtUnchecked",this._check);
this._eventMap.addHandlerForClassName("click","rtIndeterminate",this._check);
this._eventMap.addHandlerForClassName("click","radfdCheckboxUnchecked",this._check);
this._eventMap.addHandlerForClassName("click","radfdCheckboxChecked",this._check);
this._eventMap.addHandlerForClassName("click","rtMinus",this._toggle);
this._eventMap.addHandlerForClassName("click","rtIn",this._click);
this._eventMap.addHandlerForClassName("click","rtImg",this._click);
this._eventMap.addHandlerForClassName("keydown","RadTreeView",this._onKeyDown);
this._eventMap.addHandlerForClassName("mousemove","RadTreeView",this._treeMouseMove);
this._eventMap.addHandlerForClassName("mouseover","rtIn",this._mouseOver);
this._eventMap.addHandlerForClassName("mouseover","rtPlus",this._expandOnHover);
this._eventMap.addHandlerForClassName("mouseover","rtImg",this._expandOnHover);
this._eventMap.addHandlerForClassName("mouseout","rtIn",this._mouseOut);
this._eventMap.addHandlerForClassName("mouseout","rtLI",this._nodeMouseOut);
this._eventMap.addHandlerForClassName("mousedown","rtIn",this._mouseDown);
this._eventMap.addHandlerForClassName("mousedown","rtImg",this._mouseDown);
this._eventMap.addHandlerForClassName("selectstart","rtIn",this._cancelEvent);
this._eventMap.addHandlerForClassName("dragstart","rtImg",this._cancelEvent);
this._eventMap.addHandlerForClassName("dragstart","rtIn",this._cancelEvent);
this._eventMap.addHandlerForClassName("scroll","RadTreeView",this._updateScrollPosition);
if(!$telerik.isOpera){
this._eventMap.addHandlerForClassName("contextmenu","rtIn",this._contextMenu);
this._eventMap.addHandlerForClassName("contextmenu","rtImg",this._contextMenu);
}else{
this._eventMap.addHandlerForClassName("mousedown","rtImg",this._contextMenu);
}
this._onDocumentMouseMoveDelegate=Function.createDelegate(this,this._onDocumentMouseMove);
this._onDocumentMouseUpDelegate=Function.createDelegate(this,this._onDocumentMouseUp);
this._onDocumentMouseOutDelegate=Function.createDelegate(this,this._onDocumentMouseOut);
this._onDocumentKeyDownDelegate=Function.createDelegate(this,this._onDocumentKeyDown);
this._onSelectStartDelegate=Function.createDelegate(this,this._cancelEvent);
this._contextMenuItemClickingHandler=Function.createDelegate(this,this._contextMenuItemClickingHandler);
this._contextMenuShownHandler=Function.createDelegate(this,this._contextMenuShownHandler);
this._applicationLoadHandler=Function.createDelegate(this,this._applicationLoadHandler);
Sys.Application.add_load(this._applicationLoadHandler);
$addHandler(document.documentElement,"keydown",this._onDocumentKeyDownDelegate);
this._isRtl=Telerik.Web.UI.RadTreeView._isRtl(this.get_element());
if(this._isRtl){
Telerik.Web.UI.RadTreeView._initializeRtl(this.get_element());
this._setRtlSkin();
}
this._initializeComplete=true;
this.raiseEvent("load");
},_attachMouseMoveHandler:function(){
if($telerik.isIE){
document.attachEvent("onmousemove",this._onDocumentMouseMoveDelegate);
}else{
$addHandler(document,"mousemove",this._onDocumentMouseMoveDelegate);
}
this._mouseMoveAttached=true;
},_setRtlSkin:function(){
if(this._skin&&this.get_element().className.indexOf("RadTreeView_rtl")<0){
this.get_element().className=String.format("{0} RadTreeView_rtl RadTreeView_{1}_rtl",this.get_element().className,this._skin);
}
},_applicationLoadHandler:function(){
this._addContextMenuHandlers();
Sys.Application.remove_load(this._applicationLoadHandler);
},_contextMenuItemClickingHandler:function(_fc,_fd){
if(this._contextMenuNode==null){
return;
}
var _fe=_fd.get_item();
var _ff=this._contextMenuNode;
if(this._raiseContextMenuItemClicking(_ff,_fe)){
_fd.set_cancel(true);
return;
}
var _100=new Telerik.Web.UI.RadTreeViewContextMenuItemEventArgs(_ff,_fe);
this.raiseEvent("contextMenuItemClicked",_100);
if(!_fe.get_menu().get_clickToOpen()){
_fe.get_menu().hide();
}
if(this._postBackOnContextMenuItemClick&&_fe.get_postBack()){
var _101={commandName:"ContextMenuItemClick",index:_ff._getHierarchicalIndex(),contextMenuID:_fe.get_menu().get_id(),menuItemIndex:_fe._getHierarchicalIndex()};
_fd.set_cancel(true);
this._postback(_101);
}
},_contextMenuShownHandler:function(_102,args){
var node=this._contextMenuNode;
var _105=new Telerik.Web.UI.RadTreeViewContextMenuEventArgs(node,_102);
this.raiseEvent("contextMenuShown",_105);
},_resolveContextMenuID:function(_106){
return String.format("{0}_{1}",this.get_id(),_106);
},_addContextMenuHandlers:function(){
var _107=this.get_contextMenus();
for(var i=0;i<_107.length;i++){
var _109=_107[i];
if(_109){
_109.add_itemClicking(this._contextMenuItemClickingHandler);
_109.add_shown(this._contextMenuShownHandler);
}
}
},_removeContextMenuHandlers:function(){
var _10a=this.get_contextMenus();
for(var i=0;i<_10a.length;i++){
var _10c=_10a[i];
if(_10c){
_10c.remove_shown(this._contextMenuShownHandler);
_10c.remove_itemClicking(this._contextMenuItemClickingHandler);
}
}
},findNodeByText:function(text){
return this._findItemByText(text);
},findNodeByValue:function(_10e){
return this._findItemByValue(_10e);
},findNodeByUrl:function(_10f){
return this._findItemByUrl(_10f);
},findNodeByAbsoluteUrl:function(_110){
return this._findItemByAbsoluteUrl(_110);
},findNodeByAttribute:function(_111,_112){
return this._findItemByAttribute(_111,_112);
},unselectAllNodes:function(){
this._clearSelectedNodes();
},showNodeContextMenu:function(node,_114){
var _115=node.get_contextMenu();
var _116=new Telerik.Web.UI.RadTreeViewContextMenuCancelEventArgs(node,_115,_114);
this.raiseEvent("contextMenuShowing",_116);
if(_116.get_cancel()){
return;
}
this._contextMenuNode=node;
node._showContextMenu(_114);
},get_allNodes:function(){
return this._getAllItems();
},set_enabled:function(_117){
if(this.get_enabled()==_117){
return;
}
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"set_enabled",[_117]);
if(!this.get_isInitialized()){
return;
}
this.get_element().disabled=!_117;
var _118=String.format("RadTreeView_{0}_disabled",this._skin);
this.toggleCssClass(_118);
var _119=this.get_element().getElementsByTagName("input");
for(var i=0,_11b=_119.length;i<_11b;i++){
var _11c=_119[i];
if(_11c.className!="rtChk"){
continue;
}
_11c.disabled=!_117;
}
},get_loadingStatusPosition:function(){
return this._loadingStatusPosition;
},set_loadingStatusPosition:function(_11d){
this._loadingStatusPosition=_11d;
},get_loadingMessage:function(){
return this._loadingMessage;
},set_loadingMessage:function(_11e){
this._loadingMessage=_11e;
},get_childListElement:function(){
if(!this._nodeListElement){
this._nodeListElement=$telerik.getFirstChildByTagName(this.get_element(),"ul",0);
}
return this._nodeListElement;
},get_expandAnimation:function(){
return this._expandAnimation;
},set_expandAnimation:function(_11f){
var _120=Sys.Serialization.JavaScriptSerializer.deserialize(_11f);
this._expandAnimation=new Telerik.Web.UI.AnimationSettings(_120);
},get_collapseAnimation:function(){
return this._collapseAnimation;
},set_collapseAnimation:function(_121){
var _122=Sys.Serialization.JavaScriptSerializer.deserialize(_121);
this._collapseAnimation=new Telerik.Web.UI.AnimationSettings(_122);
},_postback:function(_123){
if(!this._postBackReference){
return;
}
var _124=this._postBackReference.replace("arguments",Sys.Serialization.JavaScriptSerializer.serialize(_123));
eval(_124);
},_registerExpandedNode:function(node){
var _126=node._getHierarchicalIndex();
if(Array.indexOf(this._clientState.collapsedNodes,_126)>-1){
Array.remove(this._clientState.collapsedNodes,_126);
}
Array.add(this._clientState.expandedNodes,_126);
this._updateToggleState();
},_registerCollapsedNode:function(node){
var _128=node._getHierarchicalIndex();
if(Array.indexOf(this._clientState.expandedNodes,_128)>-1){
Array.remove(this._clientState.expandedNodes,_128);
}
Array.add(this._clientState.collapsedNodes,_128);
this._updateToggleState();
},_updateToggleState:function(){
this._expandedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.expandedNodes);
this._collapsedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.collapsedNodes);
this.updateClientState();
},_updateSelectedState:function(){
this._selectedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.selectedNodes);
this.updateClientState();
},_updateCheckedState:function(){
this._checkedNodesJson=Sys.Serialization.JavaScriptSerializer.serialize(this._clientState.checkedNodes);
this.updateClientState();
},commitChanges:function(){
this._logEntriesJson=this._log.serialize();
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"commitChanges");
},saveClientState:function(){
return "{\"expandedNodes\":"+this._expandedNodesJson+",\"collapsedNodes\":"+this._collapsedNodesJson+",\"logEntries\":"+this._logEntriesJson+",\"selectedNodes\":"+this._selectedNodesJson+",\"checkedNodes\":"+this._checkedNodesJson+",\"scrollPosition\":"+this._scrollPosition+"}";
},_updateScrollPosition:function(){
this._scrollPosition=this.get_element().scrollTop;
this.updateClientState();
},_unregisterSelectedNode:function(node){
Array.remove(this._clientState.selectedNodes,node._getHierarchicalIndex());
this._updateSelectedState();
this._updateValidationField(this.get_selectedNode());
},_unregisterCheckedNode:function(node,_12b){
Array.remove(this._clientState.checkedNodes,node._getHierarchicalIndex());
if(!_12b){
this._updateCheckedState();
}
},_unregisterNodeFromClientState:function(node,_12d){
var _12e=_12d||node._getHierarchicalIndex();
if(Array.indexOf(this._clientState.collapsedNodes,_12e)>-1){
Array.remove(this._clientState.collapsedNodes,_12e);
}
if(Array.indexOf(this._clientState.expandedNodes,_12e)>-1){
Array.remove(this._clientState.expandedNodes,_12e);
}
if(node.get_selected()){
Array.remove(this._clientState.selectedNodes,_12e);
}
if(node.get_checked()){
Array.remove(this._clientState.checkedNodes,_12e);
}
},_unregisterNodeChildrenFromClientState:function(_12f){
var _130=_12f.get_nodes();
var _131=_130.get_count();
if(_131<1){
return;
}
var _132="";
if(_12f==this){
for(var i=0;i<_131;i++){
this._unregisterNodeHierarchyFromClientState(_130.getNode(i),i+"");
}
}else{
var _132=_12f._getHierarchicalIndex();
for(var i=0;i<_131;i++){
this._unregisterNodeHierarchyFromClientState(_130.getNode(i),_132+":"+i);
}
}
},_unregisterNodeHierarchyFromClientState:function(node,_135){
this._unregisterNodeFromClientState(node,_135);
this._unregisterNodeChildrenFromClientState(node);
},_clearSelectedNodes:function(){
var _136=this.get_selectedNodes();
for(var i=0;i<_136.length;i++){
_136[i].set_selected(false);
}
this._clientState.selectedNodes=new Array();
this._updateSelectedState();
},get_selectedNode:function(){
var _138=this._clientState.selectedNodes.length-1;
if(_138>=0){
var _139=this._clientState.selectedNodes[_138];
if(_139){
return this._findItemByHierarchicalIndex(_139);
}
}
return null;
},get_selectedNodes:function(){
var _13a=[];
for(var i=0;i<this._clientState.selectedNodes.length;i++){
var _13c=this._findItemByHierarchicalIndex(this._clientState.selectedNodes[i]);
Array.add(_13a,_13c);
}
return _13a;
},get_checkedNodes:function(){
var _13d=[];
for(var i=0;i<this._clientState.checkedNodes.length;i++){
var _13f=this._findItemByHierarchicalIndex(this._clientState.checkedNodes[i]);
Array.add(_13d,_13f);
}
return _13d;
},_getExpandedNodes:function(){
var _140=[];
for(var i=0;i<this._clientState.expandedNodes.length;i++){
var _142=this._findItemByHierarchicalIndex(this._clientState.expandedNodes[i]);
Array.add(_140,_142);
}
return _140;
},_getCollapsedNodes:function(){
var _143=[];
for(var i=0;i<this._clientState.collapsedNodes.length;i++){
var _145=this._findItemByHierarchicalIndex(this._clientState.collapsedNodes[i]);
Array.add(_143,_145);
}
return _143;
},_backupClientState:function(){
this._backupCollapsedNodes=this._getCollapsedNodes();
this._backupExpandedNodes=this._getExpandedNodes();
this._backupSelectedNodes=this.get_selectedNodes();
this._backupCheckedNodes=this.get_checkedNodes();
},_restoreClientState:function(){
this._clientState.selectedNodes=[];
for(var i=0;i<this._backupSelectedNodes.length;i++){
Array.add(this._clientState.selectedNodes,this._backupSelectedNodes[i]._getHierarchicalIndex());
}
this._clientState.collapsedNodes=[];
for(var i=0;i<this._backupCollapsedNodes.length;i++){
Array.add(this._clientState.collapsedNodes,this._backupCollapsedNodes[i]._getHierarchicalIndex());
}
this._clientState.expandedNodes=[];
for(var i=0;i<this._backupExpandedNodes.length;i++){
Array.add(this._clientState.expandedNodes,this._backupExpandedNodes[i]._getHierarchicalIndex());
}
this._clientState.checkedNodes=[];
for(var i=0;i<this._backupCheckedNodes.length;i++){
Array.add(this._clientState.checkedNodes,this._backupCheckedNodes[i]._getHierarchicalIndex());
}
this._updateToggleState();
this._updateSelectedState();
this._updateCheckedState();
},_updateValidationField:function(_147){
var _148="";
if(_147){
_148=_147.get_value();
if(_148===null){
_148=_147.get_text();
}
}
this.get_element().value=_148;
},_registerSelectedNode:function(node){
Array.add(this._clientState.selectedNodes,node._getHierarchicalIndex());
this._updateSelectedState();
this._updateValidationField(node);
},_registerCheckedNode:function(node,_14b){
Array.add(this._clientState.checkedNodes,node._getHierarchicalIndex());
if(!_14b){
this._updateCheckedState();
}
},_getMousePosition:function(e){
var _14d=$telerik.getScrollOffset(document.body,true);
var _14e=e.clientX;
var _14f=e.clientY;
_14e+=_14d.x;
_14f+=_14d.y;
return {x:_14e,y:_14f};
},_extractNodeFromDomElement:function(_150){
return this._extractItemFromDomElement(_150);
},_doubleClick:function(e){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
this._raiseEvent("nodeDoubleClick",node,e);
if(this.get_allowNodeEditing()&&node.get_allowEdit()){
return;
}
this._toggle(e);
},_hideContextMenus:function(){
if(this.get_contextMenuIDs().length>0){
Telerik.Web.UI.RadContextMenu.hideAll();
}
},_expandOnHover:function(e){
if(Telerik.Web.UI.RadTreeView._srcTreeView){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
this._hoveredNode=node;
window.setTimeout(function(){
if(node._getControl()&&node==node._getControl()._hoveredNode){
node.set_expanded(true);
}
},1000);
}
return true;
},_toggle:function(e){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(!node.get_isEnabled()){
return;
}
this._hideContextMenus();
e.stopPropagation();
var _157=node.get_expanded();
if(_157==false){
if(this._raiseCancelEvent("nodeExpanding",node,e)){
return;
}
}else{
if(this._raiseCancelEvent("nodeCollapsing",node,e)){
return;
}
}
node.toggle();
if(_157==false){
this._raiseEvent("nodeExpanded",node,e);
}else{
this._raiseEvent("nodeCollapsed",node,e);
}
},_check:function(e){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(!node.get_isEnabled()){
return;
}
this._hideContextMenus();
e.stopPropagation();
if(this._raiseCancelEvent("nodeChecking",node,e)){
node.get_checkBoxElement().checked=!node.get_checkBoxElement().checked;
return;
}
if(this._threeState&&node.get_checkState()==Telerik.Web.UI.TreeNodeCheckState.Indeterminate){
node.set_checked(true,e);
}else{
node.set_checked(!node.get_checked(),e);
}
this._raiseEvent("nodeChecked",node,e);
if(this._postBackOnCheck){
var _15a={commandName:"Check",index:node._getHierarchicalIndex()};
this._postback(_15a);
}
},_mouseDown:function(e){
if($telerik.isOpera&&e.button==2){
this._contextMenu(e);
return;
}
if(e.button!=0){
return;
}
if(!this.get_enableDragAndDrop()){
return;
}
if(this._eventMap.skipElement(e,"rtIn")){
return false;
}
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(!node){
return;
}
if(!node.get_isEnabled()||!node.get_allowDrag()){
return;
}
this._initialDragMousePos=this._getMousePosition(e);
this._initialDragNode=node;
this._attachDragDropEvents();
e.preventDefault();
},_attachDragDropEvents:function(){
if(this._dragDropEventsAttached){
return;
}
this._attachMouseMoveHandler();
$addHandler(document,"selectstart",this._onSelectStartDelegate);
$addHandler(document,"mouseup",this._onDocumentMouseUpDelegate);
$addHandler(document,"mouseout",this._onDocumentMouseOutDelegate);
this._dragDropEventsAttached=true;
},_createDragClueAt:function(node,posX,posY){
this._draggingClue=document.createElement("div");
this._draggingClue.className=this.get_element().className;
this._draggingClue.style.position="absolute";
this._draggingClue.style.width="auto";
this._draggingClue.style.height="auto";
this._draggingClue.style.overflow="visible";
this._draggingClue.style.top=posY+"px";
this._draggingClue.style.zIndex=6500;
if(this._isRtl){
var _160=this.get_element().scrollWidth;
this._draggingClue.dir="rtl";
this._draggingClue.style.width=_160+"px";
this._draggingClue.style.left=(posX-_160)+"px";
}else{
this._draggingClue.style.left=posX+"px";
}
this._draggingClueList=node._createChildListElement();
this._draggingClueList.style.display="";
this._draggingClue.appendChild(this._draggingClueList);
var _161=this._sourceDragNodes;
for(var i=0;i<_161.length;i++){
var _163=_161[i];
var _164=$telerik.getElementByClassName(_163.get_element(),"rtIn").cloneNode(true);
_164.style.display="block";
var _165=$telerik.getElementByClassName(_164,"rtUL");
if(_165){
_164.removeChild(_165);
}
this._draggingClueList.appendChild(_164);
}
document.body.appendChild(this._draggingClue);
},get_draggingClueElement:function(){
return this._draggingClue;
},_contextMenu:function(e){
if($telerik.isOpera&&e.button!=2){
return;
}
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(!node){
return;
}
if(!node.get_isEnabled()){
return;
}
this.showNodeContextMenu(node,e);
},_cancelEvent:function(e){
if(this._eventMap.skipElement(e,"rtIn")){
return false;
}
e.preventDefault();
return false;
},_shouldStartDrag:function(_169){
if(!this._initialDragNode||!this._initialDragMousePos){
return false;
}
if(Math.abs(this._initialDragMousePos.x-_169.x)>4||Math.abs(this._initialDragMousePos.y-_169.y)>4){
return true;
}
},_selectFirstNode:function(){
var _16a=this.get_nodes().getNode(0);
if(!_16a){
return;
}
_16a.set_selected(true);
this._scrollToNode(_16a);
},_onDocumentKeyDown:function(e){
if(e.keyCode==this._escapeKeyCode&&this._dragging){
this._clearDrag();
}
},_onKeyDown:function(e){
if(this._editing){
this._onEditKeyDown(e);
return;
}
var node=this.get_selectedNode();
if(!node){
if(e.keyCode==this._upArrowKeyCode||e.keyCode==this._downArrowKeyCode||e.keyCode==this._enterKeyCode||e.keyCode==this._spaceKeyCode){
this._selectFirstNode();
e.preventDefault();
}
return;
}
if(this._raiseCancelEvent("keyPressing",node,e)){
return;
}
if(e.keyCode==this._numpadPlusKeyCode||e.keyCode==this._numpadMinusKeyCode||e.keyCode==this._leftArrowKeyCode||e.keyCode==this._rightArrowKeyCode){
node.toggle();
}
if(e.keyCode==this._downArrowKeyCode){
var _16e=node._getNextSelectableNode();
if(!_16e){
return;
}
e.preventDefault();
if(!this.get_multipleSelect()||(!e.ctrlKey&&!e.shiftKey)){
this._clearSelectedNodes();
}
_16e.set_selected(true);
this._scrollToNode(_16e);
}
if(e.keyCode==this._upArrowKeyCode){
var _16f=node._getPrevSelectableNode();
if(!_16f){
return;
}
e.preventDefault();
if(!this.get_multipleSelect()||(!e.ctrlKey&&!e.shiftKey)){
this._clearSelectedNodes();
}
_16f.set_selected(true);
this._scrollToNode(_16f);
}
if(e.keyCode==this._f2KeyCode){
if(this.get_allowNodeEditing()&&node.get_selected()&&node.get_allowEdit()){
this._startEdit(node,e);
}
}
if(e.keyCode==this._spaceKeyCode){
node.set_checked(!node.get_checked());
}
if(e.keyCode==this._enterKeyCode){
if(this._raiseCancelEvent("nodeClicking",node,e)){
return true;
}
this._raiseEvent("nodeClicked",node,e);
this._postClickCommand(node);
e.preventDefault();
return true;
}
},_postClickCommand:function(node){
if(node.get_enabled()&&node.get_postBack()&&this._postBackOnClick&&!node._editing){
var _171={commandName:"Click",index:node._getHierarchicalIndex()};
this._postback(_171);
}
},_scrollToNode:function(node){
var _173=node.get_contentElement();
var _174=this.get_element();
var _175=this._getTotalOffsetTop(_173);
var _176=this._getTotalOffsetTop(_174);
var _177=_175-_176;
if(_177<_174.scrollTop){
_174.scrollTop=_177;
}
var _178=_173.offsetHeight;
if(_177+_178>(_174.clientHeight+_174.scrollTop)){
_174.scrollTop+=((_177+_178)-(_174.clientHeight+_174.scrollTop));
}
},_getTotalOffsetTop:function(_179){
var _17a=_179.offsetTop;
var _17b=_179.offsetParent;
while(_17b){
_17a+=_17b.offsetTop;
_17b=_17b.offsetParent;
}
return _17a;
},_onEditKeyDown:function(e){
if(e.keyCode==this._escapeKeyCode){
this._endEdit(true);
}
if(e.keyCode==this._enterKeyCode){
this._endEdit(false);
}
e.stopPropagation();
return false;
},_onDocumentMouseMove:function(e){
if(e.srcElement){
e.target=e.srcElement;
}
var _17e=this._getMousePosition(e);
if(!this._dragging&&this._shouldStartDrag(_17e)){
this._sourceDragNodes=[];
var _17f=this.get_selectedNodes();
for(var i=0;i<_17f.length;i++){
if(_17f[i].get_allowDrag()){
this._sourceDragNodes[this._sourceDragNodes.length]=_17f[i];
}
}
if(!this._sourceDragNodes.length){
this._sourceDragNodes[this._sourceDragNodes.length]=this._initialDragNode;
}
var _181=new Telerik.Web.UI.RadTreeNodeDraggingEventArgs(this._initialDragNode,e,this._sourceDragNodes);
this.raiseEvent("nodeDragStart",_181);
if(!_181.get_cancel()){
this._startDrag(e,_17e);
}
}
if(!this._dragging){
return;
}
var _181=new Telerik.Web.UI.RadTreeNodeDraggingEventArgs(this._initialDragNode,e,this._sourceDragNodes);
this.raiseEvent("nodeDragging",_181);
if(!_181.get_cancel()){
this._positionDropClue(e);
}
this._mousePos=_17e;
this._adjustScroll();
this._draggingClue.style.top=_17e.y+4+"px";
if(!this._isRtl){
this._draggingClue.style.left=_17e.x+4+"px";
}else{
this._draggingClue.style.left=(_17e.x-4-this._draggingClue.scrollWidth)+"px";
}
},_onDocumentMouseOut:function(e){
if(!this._dragging){
return;
}
var _183;
if(e.rawEvent.relatedTarget){
_183=e.rawEvent.relatedTarget;
}else{
_183=e.rawEvent.toElement;
}
if(!_183){
this._clearDrag();
}
},_startDrag:function(e,_185){
if(this._initialDragNode.get_selected()==false){
if(!this.get_multipleSelect()||(!e.ctrlKey&&!e.shiftKey)){
this._clearSelectedNodes();
}
this._initialDragNode.set_selected(true);
}
this._createDragClueAt(this._initialDragNode,_185.x,_185.y);
this._createDropClue();
this._dragging=true;
this._draggingPosition="over";
Telerik.Web.UI.RadTreeView._srcTreeView=this;
e.returnValue=false;
},_createDropClue:function(){
this._dropClue=document.createElement("div");
document.body.appendChild(this._dropClue);
this._dropClue.style.position="absolute";
this._dropClue.style.height="5px";
},_positionDropClue:function(e){
if(this._dropClue==e.target){
return;
}
var node=this._extractNodeFromDomElement(e.target);
if(!node){
this._dropClue.style.visibility="hidden";
return;
}
var _188=node._getControl();
if(!_188.get_enableDragAndDropBetweenNodes()){
return;
}
if($telerik.isDescendantOrSelf(node.get_textElement(),e.target)){
this._dropClue.style.visibility="hidden";
this._draggingPosition="over";
return;
}else{
this._dropClue.style.visibility="visible";
}
this._dropClue.treeNode=node;
var _189=node.get_element();
this._dropClue.style.width=_189.offsetWidth+"px";
var _18a=node.get_contentElement();
var _18b=$telerik.getLocation(_18a);
this._dropClue.style.left=_18b.x+"px";
var _18c=this._getMousePosition(e);
if(_18c.y<(_18b.y+(_18a.offsetHeight/2))){
this._dropClue.style.top=_18b.y+"px";
this._dropClue.className="rtDropAbove rtDropAbove_"+this._skin;
this._draggingPosition="above";
}else{
this._dropClue.style.top=(_18b.y+_18a.offsetHeight-5)+"px";
this._dropClue.className="rtDropBelow rtDropBelow_"+this._skin;
this._draggingPosition="below";
}
},_adjustScroll:function(){
if(!Telerik.Web.UI.RadTreeView._srcTreeView){
return;
}
var _18d=Telerik.Web.UI.RadTreeView._destTreeView;
if(!_18d){
_18d=this;
}
var _18e=_18d.get_element();
if(!_18e){
return;
}
var topY,_190;
var _191=_18d;
topY=$telerik.getLocation(_18e).y;
_190=topY+_18e.offsetHeight;
var _192=_18e.scrollTop<=0;
var _193=_18e.scrollTop>=(_18e.scrollHeight-_18e.offsetHeight+16);
var _194=Telerik.Web.UI.RadTreeView._srcTreeView._mousePos.y-topY;
var _195=_190-Telerik.Web.UI.RadTreeView._srcTreeView._mousePos.y;
if(_194<50&&!_192){
var _196=(10-(_194/5));
_18e.scrollTop=_18e.scrollTop-_196;
window.setTimeout(function(){
_191._adjustScroll();
},100);
}else{
if(_195<50&&!_193){
var _196=(10-(_195/5));
_18e.scrollTop=_18e.scrollTop+_196;
window.setTimeout(function(){
_191._adjustScroll();
},100);
}
}
this._scrollPosition=_18e.scrollTop;
},_onDocumentMouseUp:function(e){
this._detachDragDropEvents();
if(!this._dragging){
this._initialDragMousePos=null;
this._initialDragNode=null;
return;
}
var _198=this._sourceDragNodes;
var _199=null;
if(e.target==this._dropClue){
_199=this._dropClue.treeNode;
}else{
_199=this._extractNodeFromDomElement(e.target);
}
if(_199){
if(_199._isDescendantOf(this._initialDragNode)||this._initialDragNode==_199){
this._clearDrag();
return;
}
}
var _19a=e.target;
var _19b=new Telerik.Web.UI.RadTreeNodeDroppingEventArgs(_198,_199,_19a,this._draggingPosition,e);
this.raiseEvent("nodeDropping",_19b);
if(_19b.get_cancel()){
this._clearDrag();
return;
}
var _19a=_19b.get_htmlElement();
var _19c=this._getDropCommand(_199,_198,_19a);
if(_19c.commandName){
var _19b=new Telerik.Web.UI.RadTreeNodeDroppedEventArgs(_198,e);
this.raiseEvent("nodeDropped",_19b);
this._postback(_19c);
}
this._clearDrag();
},_getDropCommand:function(_19d,_19e,_19f){
var _1a0={};
_1a0.sourceNodesIndices=[];
for(var i=0;i<_19e.length;i++){
Array.add(_1a0.sourceNodesIndices,_19e[i]._getHierarchicalIndex());
}
if(!_19d){
if(_19f.id&&_19f.id!=""){
_1a0.commandName="NodeDropOnHtmlElement";
_1a0.htmlElementId=_19f.id;
}
return _1a0;
}
_19d.get_textElement().style.cursor="default";
if((_19d.get_allowDrop()||this._draggingPosition!="over")&&_19d.get_isEnabled()){
_1a0.destIndex=_19d._getHierarchicalIndex();
if(_19d._getControl()==this){
_1a0.commandName="NodeDrop";
}else{
_1a0.commandName="NodeDropOnTree";
_1a0.treeId=_19d._getControl()._uniqueId;
}
_1a0.dropPosition=this._draggingPosition;
}
return _1a0;
},_clearDrag:function(){
if(!this._dragging){
return;
}
if(this._dropClue){
document.body.removeChild(this._dropClue);
this._dropClue=null;
}
if(this._draggingClue){
document.body.removeChild(this._draggingClue);
this._draggingClue=null;
}
this._dragging=false;
Telerik.Web.UI.RadTreeView._srcTreeView=null;
this._initialDragMousePos=null;
this._initialDragNode=null;
this._detachDragDropEvents();
},_detachDragDropEvents:function(){
if(!this._dragDropEventsAttached){
return;
}
this._removeMouseMoveHandler();
$removeHandler(document,"mouseup",this._onDocumentMouseUpDelegate);
$removeHandler(document,"selectstart",this._onSelectStartDelegate);
$removeHandler(document,"mouseout",this._onDocumentMouseOutDelegate);
this._dragDropEventsAttached=false;
},_treeMouseMove:function(e){
Telerik.Web.UI.RadTreeView._destTreeView=this;
},_mouseOver:function(e){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(this._highlightedNode){
this._highlightedNode._unhighlight();
}
node._highlight();
if(node.get_expandMode()!=Telerik.Web.UI.TreeNodeExpandMode.ServerSide){
this._expandOnHover(e);
}
if(Telerik.Web.UI.RadTreeView._srcTreeView&&!node.get_allowDrop()){
node.get_textElement().style.cursor="not-allowed";
}
this._highlightedNode=node;
this._raiseEvent("mouseOver",node,e);
return true;
},_mouseOut:function(e){
if(!this._highlightedNode){
return;
}
var _1a6=e.eventMapRelatedTarget;
if(!_1a6){
return;
}
if($telerik.isDescendant(this._highlightedNode.get_textElement(),_1a6)){
return;
}
var node=this._highlightedNode;
this._highlightedNode._unhighlight();
if(Telerik.Web.UI.RadTreeView._srcTreeView){
node.get_textElement().style.cursor="default";
}
this._highlightedNode=null;
this._raiseEvent("mouseOut",node,e);
},_editNodeText:function(node,text,_1aa){
var _1ab=new Telerik.Web.UI.RadTreeNodeEditingEventArgs(node,text);
this.raiseEvent("nodeEditing",_1ab);
if(_1ab.get_cancel()){
return false;
}
text=Telerik.Web.UI.RadTreeView._htmlEncode(text);
node._text=text;
node._properties.setValue("text",text,true);
this._raiseEvent("nodeEdited",node,null);
if(this._postBackOnEdit&&_1aa){
var _1ac={};
_1ac.commandName="NodeEdit";
_1ac.index=node._getHierarchicalIndex();
text=text.replace(/'/g,"&squote");
_1ac.nodeEditText=encodeURIComponent(text);
this._postback(_1ac);
}
return true;
},_startEdit:function(node,e){
node._startEdit();
},_clearEdit:function(){
this._editing=false;
this._editNode=null;
},_endEdit:function(_1af){
if(this._editing){
this._editNode._endEdit(_1af);
}
},_nodeMouseOut:function(e){
var node=this._extractNodeFromDomElement(e.eventMapTarget);
this._hoveredNode=null;
},_click:function(e){
if(this._eventMap.skipElement(e,"rtIn")){
return;
}
var node=this._extractNodeFromDomElement(e.eventMapTarget);
if(this._raiseCancelEvent("nodeClicking",node,e)){
e.preventDefault();
return;
}
if(!node.get_isEnabled()){
this._raiseEvent("nodeClicked",node,e);
e.preventDefault();
return;
}
this._hideContextMenus();
if(this.get_multipleSelect()&&(e.ctrlKey||e.shiftKey)){
node.set_selected(!node.get_selected());
this._raiseEvent("nodeClicked",node,e);
return;
}else{
if(this.get_allowNodeEditing()&&node.get_selected()&&node.get_allowEdit()){
this._clearSelectedNodes();
node.set_selected(true);
this._startEdit(node,e);
e.stopPropagation();
}else{
this._clearSelectedNodes();
node.set_selected(true);
}
}
this._raiseEvent("nodeClicked",node,e);
this._postClickCommand(node);
return;
},_raiseEvent:function(_1b4,node,_1b6){
var _1b7=new Telerik.Web.UI.RadTreeNodeEventArgs(node,_1b6);
this.raiseEvent(_1b4,_1b7);
},_raiseCancelEvent:function(_1b8,node,_1ba){
var _1bb=new Telerik.Web.UI.RadTreeNodeCancelEventArgs(node,_1ba);
this.raiseEvent(_1b8,_1bb);
return _1bb.get_cancel();
},add_nodeEditStart:function(_1bc){
this.get_events().addHandler("nodeEditStart",_1bc);
},remove_nodeEditStart:function(_1bd){
this.get_events().removeHandler("nodeEditStart",_1bd);
},add_mouseOver:function(_1be){
this.get_events().addHandler("mouseOver",_1be);
},remove_mouseOver:function(_1bf){
this.get_events().removeHandler("mouseOver",_1bf);
},add_mouseOut:function(_1c0){
this.get_events().addHandler("mouseOut",_1c0);
},remove_mouseOut:function(_1c1){
this.get_events().removeHandler("mouseOut",_1c1);
},add_nodePopulating:function(_1c2){
this.get_events().addHandler("nodePopulating",_1c2);
},remove_nodePopulating:function(_1c3){
this.get_events().removeHandler("nodePopulating",_1c3);
},add_nodePopulated:function(_1c4){
this.get_events().addHandler("nodePopulated",_1c4);
},remove_nodePopulated:function(_1c5){
this.get_events().removeHandler("nodePopulated",_1c5);
},add_nodePopulationFailed:function(_1c6){
this.get_events().addHandler("nodePopulationFailed",_1c6);
},remove_nodePopulationFailed:function(_1c7){
this.get_events().removeHandler("nodePopulationFailed",_1c7);
},add_nodeChecked:function(_1c8){
this.get_events().addHandler("nodeChecked",_1c8);
},remove_nodeChecked:function(_1c9){
this.get_events().removeHandler("nodeChecked",_1c9);
},add_nodeChecking:function(_1ca){
this.get_events().addHandler("nodeChecking",_1ca);
},remove_nodeChecking:function(_1cb){
this.get_events().removeHandler("nodeChecking",_1cb);
},add_nodeClicking:function(_1cc){
this.get_events().addHandler("nodeClicking",_1cc);
},remove_nodeClicking:function(_1cd){
this.get_events().removeHandler("nodeClicking",_1cd);
},add_nodeDragStart:function(_1ce){
this.get_events().addHandler("nodeDragStart",_1ce);
},remove_nodeDragStart:function(_1cf){
this.get_events().removeHandler("nodeDragStart",_1cf);
},add_nodeDragging:function(_1d0){
this.get_events().addHandler("nodeDragging",_1d0);
},remove_nodeDragging:function(_1d1){
this.get_events().removeHandler("nodeDragging",_1d1);
},add_nodeExpanding:function(_1d2){
this.get_events().addHandler("nodeExpanding",_1d2);
},remove_nodeExpanding:function(_1d3){
this.get_events().removeHandler("nodeExpanding",_1d3);
},add_nodeCollapsing:function(_1d4){
this.get_events().addHandler("nodeCollapsing",_1d4);
},remove_nodeCollapsing:function(_1d5){
this.get_events().removeHandler("nodeCollapsing",_1d5);
},add_nodeClicked:function(_1d6){
this.get_events().addHandler("nodeClicked",_1d6);
},remove_nodeClicked:function(_1d7){
this.get_events().removeHandler("nodeClicked",_1d7);
},add_nodeDoubleClick:function(_1d8){
this.get_events().addHandler("nodeDoubleClick",_1d8);
},remove_nodeDoubleClick:function(_1d9){
this.get_events().removeHandler("nodeDoubleClick",_1d9);
},add_nodeExpanded:function(_1da){
this.get_events().addHandler("nodeExpanded",_1da);
},remove_nodeExpanded:function(_1db){
this.get_events().removeHandler("nodeExpanded",_1db);
},add_nodeCollapsed:function(_1dc){
this.get_events().addHandler("nodeCollapsed",_1dc);
},remove_nodeCollapsed:function(_1dd){
this.get_events().removeHandler("nodeCollapsed",_1dd);
},add_nodeDropping:function(_1de){
this.get_events().addHandler("nodeDropping",_1de);
},remove_nodeDropping:function(_1df){
this.get_events().removeHandler("nodeDropping",_1df);
},add_nodeDropped:function(_1e0){
this.get_events().addHandler("nodeDropped",_1e0);
},remove_nodeDropped:function(_1e1){
this.get_events().removeHandler("nodeDropped",_1e1);
},add_contextMenuItemClicking:function(_1e2){
this.get_events().addHandler("contextMenuItemClicking",_1e2);
},remove_contextMenuItemClicking:function(_1e3){
this.get_events().removeHandler("contextMenuItemClicking",_1e3);
},_raiseContextMenuItemClicking:function(node,_1e5){
var _1e6=new Telerik.Web.UI.RadTreeViewContextMenuItemCancelEventArgs(node,_1e5);
this.raiseEvent("contextMenuItemClicking",_1e6);
return _1e6.get_cancel();
},add_contextMenuItemClicked:function(_1e7){
this.get_events().addHandler("contextMenuItemClicked",_1e7);
},remove_contextMenuItemClicked:function(_1e8){
this.get_events().removeHandler("contextMenuItemClicked",_1e8);
},add_contextMenuShowing:function(_1e9){
this.get_events().addHandler("contextMenuShowing",_1e9);
},remove_contextMenuShowing:function(_1ea){
this.get_events().removeHandler("contextMenuShowing",_1ea);
},add_contextMenuShown:function(_1eb){
this.get_events().addHandler("contextMenuShown",_1eb);
},remove_contextMenuShown:function(_1ec){
this.get_events().removeHandler("contextMenuShown",_1ec);
},add_nodeEditing:function(_1ed){
this.get_events().addHandler("nodeEditing",_1ed);
},remove_nodeEditing:function(_1ee){
this.get_events().removeHandler("nodeEditing",_1ee);
},add_nodeEdited:function(_1ef){
this.get_events().addHandler("nodeEdited",_1ef);
},remove_nodeEdited:function(_1f0){
this.get_events().removeHandler("nodeEdited",_1f0);
},add_keyPressing:function(_1f1){
this.get_events().addHandler("keyPressing",_1f1);
},remove_keyPressing:function(_1f2){
this.get_events().removeHandler("keyPressing",_1f2);
},add_load:function(_1f3){
this.get_events().addHandler("load",_1f3);
},remove_load:function(_1f4){
this.get_events().removeHandler("load",_1f4);
},add_nodeDataBound:function(_1f5){
this.get_events().addHandler("nodeDataBound",_1f5);
},remove_nodeDataBound:function(_1f6){
this.get_events().removeHandler("nodeDataBound",_1f6);
},dispose:function(){
this._removeContextMenuHandlers();
this._removeMouseMoveHandler();
$removeHandler(document.documentElement,"keydown",this._onDocumentKeyDownDelegate);
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"dispose");
},_removeMouseMoveHandler:function(){
if(!this._mouseMoveAttached){
return;
}
if($telerik.isIE){
document.detachEvent("onmousemove",this._onDocumentMouseMoveDelegate);
}else{
$removeHandler(document,"mousemove",this._onDocumentMouseMoveDelegate);
}
this._mouseMoveAttached=false;
},_ensureChildControls:function(){
if(this._initializeComplete){
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"_ensureChildControls");
}
},_createChildControls:function(){
this._children=new Telerik.Web.UI.RadTreeNodeCollection(this);
Telerik.Web.UI.RadTreeView._createNodesFromJson(this,this._children);
},get_nodes:function(){
return this._getChildren();
},get_nodeData:function(){
return this._nodeData;
},set_nodeData:function(_1f7){
this._nodeData=_1f7;
},get_multipleSelect:function(){
return this._multipleSelect;
},set_multipleSelect:function(_1f8){
this._multipleSelect=_1f8;
},get_singleExpandPath:function(){
return this._singleExpandPath;
},set_singleExpandPath:function(_1f9){
this._singleExpandPath=_1f9;
},get_selectedIndexes:function(){
return this._selectedIndexes;
},set_selectedIndexes:function(_1fa){
this._selectedIndexes=_1fa;
},get_expandedIndexes:function(){
return this._expandedIndexes;
},set_expandedIndexes:function(_1fb){
this._expandedIndexes=_1fb;
},get_collapsedIndexes:function(){
return this._collapsedIndexes;
},set_collapsedIndexes:function(_1fc){
this._collapsedIndexes=_1fc;
},get_contextMenuIDs:function(){
return this._contextMenuIDs;
},set_contextMenuIDs:function(_1fd){
this._contextMenuIDs=_1fd;
this._contextMenus=null;
},get_contextMenus:function(){
if(!this._contextMenus){
this._contextMenus=[];
var _1fe=this.get_contextMenuIDs();
for(var i=0;i<_1fe.length;i++){
Array.add(this._contextMenus,$find(this._resolveContextMenuID(_1fe[i])));
}
}
return this._contextMenus;
},get_allowNodeEditing:function(){
return this._allowNodeEditing;
},set_allowNodeEditing:function(_200){
this._allowNodeEditing=_200;
},get_enableDragAndDrop:function(){
return this._enableDragAndDrop;
},set_enableDragAndDrop:function(_201){
this._enableDragAndDrop=_201;
},get_enableDragAndDropBetweenNodes:function(){
return this._enableDragAndDropBetweenNodes;
},set_enableDragAndDropBetweenNodes:function(_202){
this._enableDragAndDropBetweenNodes=_202;
},get_checkedIndexes:function(){
return this._checkedIndexes;
},set_checkedIndexes:function(_203){
this._checkedIndexes=_203;
},get_webServiceSettings:function(){
return this._webServiceSettings;
},set_webServiceSettings:function(_204){
var _205=Sys.Serialization.JavaScriptSerializer.deserialize(_204);
this._webServiceSettings=new Telerik.Web.UI.WebServiceSettings(_205);
},get_persistLoadOnDemandNodes:function(){
return this._persistLoadOnDemandNodes;
},set_persistLoadOnDemandNodes:function(_206){
this._persistLoadOnDemandNodes=_206;
},_childRemoved:function(node,_208){
this._restoreClientState();
node._removeFromDom(_208);
if(this._threeState){
_208._refreshCheckState(this);
}
if(_208.get_nodes().get_count()<1){
if(_208!=this){
_208.get_element().removeChild(_208.get_childListElement());
_208._nodeListElement=null;
_208.get_contentElement().removeChild(_208.get_toggleElement());
_208._toggleElement=null;
var _209=_208._getHierarchicalIndex();
if(Array.indexOf(this._clientState.collapsedNodes,_209)>-1){
Array.remove(this._clientState.collapsedNodes,_209);
}
if(Array.indexOf(this._clientState.expandedNodes,_209)>-1){
Array.remove(this._clientState.expandedNodes,_209);
}
}
}
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"_childRemoved",[node,_208]);
},_childRemoving:function(node){
this._unregisterNodeHierarchyFromClientState(node);
node.set_selected(false);
node._setChecked(this,false);
node._cacheDomProperties();
this._backupClientState();
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"_childRemoving",[node]);
},_childInserting:function(_20b,node,_20d){
if(!_20d._childControlsCreated){
return;
}
this._backupClientState();
},_childInserted:function(_20e,node,_210){
if(!_210._childControlsCreated){
return;
}
this._restoreClientState();
if(this._threeState){
node._updateParentCheckState(this);
}
if(node.get_checked()&&this._checkBoxes){
this._registerCheckedNode(node);
}
if(_210!=this&&_210.get_nodes().get_count()==1&&!_210.get_expanded()){
this._registerCollapsedNode(_210);
}
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"_childInserted",[_20e,node,_210]);
},_childrenCleared:function(_211){
this._unregisterNodeChildrenFromClientState(_211);
Telerik.Web.UI.RadTreeView.callBaseMethod(this,"_childrenCleared",[_211]);
},_doLoadOnDemand:function(node){
var _213=new Telerik.Web.UI.RadTreeNodePopulatingEventArgs(node,null);
this.raiseEvent("nodePopulating",_213);
if(_213.get_cancel()){
node._properties.setValue("expanded",false);
return;
}
var _214=String.format("{{commandName:\"LOD\",index:\"{0}\",data:{1},clientState:{2}}}",node._getHierarchicalIndex(),Sys.Serialization.JavaScriptSerializer.serialize(node._getData()),this.saveClientState());
if(this.get_loadingStatusPosition()!=Telerik.Web.UI.TreeViewLoadingStatusPosition.None){
node.showLoadingStatus(this.get_loadingMessage(),this.get_loadingStatusPosition());
}
var _215=Function.createDelegate(this,this._onCallbackResponse);
var _216=Function.createDelegate(this,this._onCallbackError);
WebForm_DoCallback(this._uniqueId,_214,_215,node,_216,true);
},_onCallbackError:function(_217,node){
var _219=this._extractErrorMessage(_217);
this._onLoadOnDemandFailed(_219,node);
},_onCallbackResponse:function(_21a,node){
if(this.get_loadingStatusPosition()!=Telerik.Web.UI.TreeViewLoadingStatusPosition.None){
node.hideLoadingStatus();
}
var _21c=_21a.split("_$$_");
node._itemData=eval(_21c[0]);
node._childControlsCreated=false;
var _21d=node.get_childListElement();
if(!_21d){
_21d=node._createChildListElement();
_21d.style.display="none";
}
_21d.innerHTML=_21c[1];
node._updateToggle();
node._updateImageUrl();
var _21e=this.get_persistLoadOnDemandNodes();
if(_21e){
this.trackChanges();
}
node.set_expandMode(Telerik.Web.UI.TreeNodeExpandMode.ClientSide);
var _21f=node._getAllItems();
for(var i=0;i<_21f.length;i++){
var _221=_21f[i];
if(_221.get_checked()){
this._registerCheckedNode(_221);
}
if(_221.get_selected()){
this._registerSelectedNode(_221);
}
if(_21e&&!_221._properties.getValue("skip",false)){
this._log.logInsert(_221);
}
}
if(this._threeState){
node._refreshCheckState();
}
if(_21e){
this.commitChanges();
}
if(node.get_nodes().get_count()>0){
node._displayChildren(true);
}else{
node._removeToggle();
node._destroyChildListElement();
}
var _222=new Telerik.Web.UI.RadTreeNodePopulatedEventArgs(node);
this.raiseEvent("nodePopulated",_222);
},_initializeWebServiceLoader:function(){
this._webServiceLoader=new Telerik.Web.UI.WebServiceLoader(this.get_webServiceSettings());
this._webServiceLoader.add_loadingStarted(Function.createDelegate(this,this._onNodeLoadingStarted));
this._webServiceLoader.add_loadingSuccess(Function.createDelegate(this,this._onNodeLoadingSuccess));
this._webServiceLoader.add_loadingError(Function.createDelegate(this,this._onNodeLoadingError));
},_loadChildrenFromWebService:function(node){
if(!this._webServiceLoader){
this._initializeWebServiceLoader();
}
var _224={};
var _225=new Telerik.Web.UI.RadTreeNodePopulatingEventArgs(node,_224);
this.raiseEvent("nodePopulating",_225);
if(_225.get_cancel()){
node._properties.setValue("expanded",false);
return;
}
var _226={node:node._getNodeData(),context:_224};
this._webServiceLoader.loadData(_226,node);
},_onNodeLoadingStarted:function(_227,_228){
var node=_228.get_context();
if(this.get_loadingStatusPosition()!=Telerik.Web.UI.TreeViewLoadingStatusPosition.None){
node.showLoadingStatus(this.get_loadingMessage(),this.get_loadingStatusPosition());
}
},_onNodeLoadingSuccess:function(_22a,_22b){
var _22c=window.Function._validateParams;
window.Function._validateParams=function(){
};
var _22d=_22b.get_data();
var node=_22b.get_context();
var _22f=this.get_persistLoadOnDemandNodes();
if(this.get_loadingStatusPosition()!=Telerik.Web.UI.TreeViewLoadingStatusPosition.None){
node.hideLoadingStatus();
}
node._updateToggle();
if(_22f){
this.trackChanges();
}
var _230=node.get_nodes();
node._childControlsCreated=false;
var html=[];
for(var i=0,l=_22d.length;i<l;i++){
var _234=new Telerik.Web.UI.RadTreeNode();
_234._loadFromDictionary(_22d[i]);
_230.add(_234);
_234._batchRender(html,this);
}
node._childControlsCreated=true;
var _235=node.get_childListElement();
if(!_235){
_235=document.createElement("ul");
_235.className="rtUL";
_235.style.display="none";
}
_235.innerHTML=html.join("");
var _236=this.get_events().getHandler("nodeDataBound");
var _237=$telerik.getChildrenByTagName(_235,"li");
for(var i=0,l=_230.get_count();i<l;i++){
var _234=_230.getNode(i);
_234.set_element(_237[i]);
if(_22f){
this._log.logInsert(_234);
}
if(_234.get_checked()){
this._registerCheckedNode(_234);
}
if(_234.get_selected()){
this._registerSelectedNode(_234);
}
if(_236){
var _238=new Telerik.Web.UI.RadTreeNodeDataBoundEventArgs(_234,_22d[i]);
this.raiseEvent("nodeDataBound",_238);
}
}
if(_230.get_count()>0){
_230.getNode(0)._ensureAppearance();
_230.getNode(_230.get_count()-1)._ensureAppearance();
node.get_element().appendChild(_235);
}
node.set_expandMode(Telerik.Web.UI.TreeNodeExpandMode.ClientSide);
if(this._threeState){
node._refreshCheckState();
}
if(_22f){
this.commitChanges();
}
if(_230.get_count()>0){
node._displayChildren(true);
}else{
node._removeToggle();
}
var _239=new Telerik.Web.UI.RadTreeNodePopulatedEventArgs(node);
this.raiseEvent("nodePopulated",_239);
window.Function._validateParams=_22c;
},_onNodeLoadingError:function(_23a,_23b){
var _23c=_23b.get_message();
var node=_23b.get_context();
this._onLoadOnDemandFailed(_23c,node);
},_onLoadOnDemandFailed:function(_23e,node){
node._properties.setValue("expanded",false);
if(this.get_loadingStatusPosition()!=Telerik.Web.UI.TreeViewLoadingStatusPosition.None){
node.hideLoadingStatus();
}
var _240=new Telerik.Web.UI.RadTreeNodePopulationFailedEventArgs(node,_23e);
this.raiseEvent("nodePopulationFailed",_240);
if(_240.get_cancel()){
return;
}
alert(_23e);
},_clearLog:function(){
this._log.initialize();
this._logEntriesJson="[]";
this.updateClientState();
}};
Telerik.Web.UI.RadTreeView._htmlDecode=function(text){
var _242={"&lt;":"<","&gt;":">","&amp;":"&"};
for(var _243 in _242){
text=text.replace(new RegExp(_243,"g"),_242[_243]);
}
return text;
};
Telerik.Web.UI.RadTreeView._htmlEncode=function(text){
var _245={"&":"&amp;","<":"&lt;",">":"&gt;"};
for(var _246 in _245){
text=text.replace(new RegExp(_246,"g"),_245[_246]);
}
return text;
};
Telerik.Web.UI.RadTreeView._regExEscape=function(text){
if(!arguments.callee.sRE){
var _248=["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^"];
arguments.callee.sRE=new RegExp("(\\"+_248.join("|\\")+")","g");
}
return text.replace(arguments.callee.sRE,"\\$1");
};
Telerik.Web.UI.RadTreeView._preInitialize=function(_249,_24a){
var _24b=$get(_249);
if(!_24b){
return;
}
_24b.scrollTop=_24a;
if(Telerik.Web.UI.RadTreeView._isRtl(_24b)){
Telerik.Web.UI.RadTreeView._initializeRtl(_24b);
}
};
Telerik.Web.UI.RadTreeView._isRtl=function(_24c){
while(_24c){
if(_24c.dir&&_24c.dir.toLowerCase()=="rtl"){
return true;
}
_24c=_24c.parentNode;
}
return false;
};
Telerik.Web.UI.RadTreeView._initializeRtl=function(_24d){
_24d.style.styleFloat="right";
_24d.style.cssFloat="right";
};
Telerik.Web.UI.RadTreeView._clearLog=function(_24e){
var _24f=$find(_24e);
if(_24f){
_24f._clearLog();
}
};
Telerik.Web.UI.RadTreeView._srcTreeView=null;
Telerik.Web.UI.RadTreeView._destTreeView=null;
Telerik.Web.UI.RadTreeView.registerClass("Telerik.Web.UI.RadTreeView",Telerik.Web.UI.ControlItemContainer);
})($telerik.$);


/* END Telerik.Web.UI.TreeView.RadTreeViewScripts.js */
/* START MicrosoftAjaxTimer.js */
//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxTimer.js
Sys.UI._Timer=function(a){Sys.UI._Timer.initializeBase(this,[a]);this._interval=60000;this._enabled=true;this._postbackPending=false;this._raiseTickDelegate=null;this._endRequestHandlerDelegate=null;this._timer=null;this._pageRequestManager=null;this._uniqueID=null};Sys.UI._Timer.prototype={get_enabled:function(){return this._enabled},set_enabled:function(a){this._enabled=a},get_interval:function(){return this._interval},set_interval:function(a){this._interval=a},get_uniqueID:function(){return this._uniqueID},set_uniqueID:function(a){this._uniqueID=a},dispose:function(){this._stopTimer();if(this._pageRequestManager!==null)this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);Sys.UI._Timer.callBaseMethod(this,"dispose")},_doPostback:function(){__doPostBack(this.get_uniqueID(),"")},_handleEndRequest:function(c,b){var a=b.get_dataItems()[this.get_id()];if(a)this._update(a[0],a[1]);if(this._postbackPending===true&&this._pageRequestManager!==null&&this._pageRequestManager.get_isInAsyncPostBack()===false){this._postbackPending=false;this._doPostback()}},initialize:function(){Sys.UI._Timer.callBaseMethod(this,"initialize");this._raiseTickDelegate=Function.createDelegate(this,this._raiseTick);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null)this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);if(this.get_enabled())this._startTimer()},_raiseTick:function(){this._startTimer();if(this._pageRequestManager===null||!this._pageRequestManager.get_isInAsyncPostBack()){this._doPostback();this._postbackPending=false}else this._postbackPending=true},_startTimer:function(){this._timer=window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval())},_stopTimer:function(){if(this._timer!==null){window.clearTimeout(this._timer);this._timer=null}},_update:function(c,b){var a=!this.get_enabled(),d=this.get_interval()!==b;if(!a&&(!c||d)){this._stopTimer();a=true}this.set_enabled(c);this.set_interval(b);if(this.get_enabled()&&a)this._startTimer()}};Sys.UI._Timer.registerClass("Sys.UI._Timer",Sys.UI.Control);
/* END MicrosoftAjaxTimer.js */
/* START Telerik.Web.UI.Ajax.Ajax.js */
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadAjaxControl=function(_1){
Telerik.Web.UI.RadAjaxControl.initializeBase(this,[_1]);
this._clientEvents={};
this._uniqueID="";
this._enableHistory=false;
this._enableAJAX=true;
this._requestQueueSize=0;
this._requestQueue=[];
this._loadingPanelsToHide=[];
this._initializeRequestHandler=null;
this._endRequestHandler=null;
this._isRequestInProgress=false;
this._links=[];
this._styles=[];
this.Type="Telerik.Web.UI.RadAjaxControl";
this.UniqueID=this._uniqueID;
this.EnableHistory=this._enableHistory;
this.EnableAJAX=this._enableAJAX;
this.Links=this._links;
this.Styles=this._styles;
this._updatePanels="";
};
Telerik.Web.UI.RadAjaxControl.prototype={initialize:function(){
Telerik.Web.UI.RadAjaxControl.callBaseMethod(this,"initialize");
for(var _2 in this._clientEvents){
if(typeof (this._clientEvents[_2])!="string"){
continue;
}
if(this._clientEvents[_2]!=""){
var _3=this._clientEvents[_2];
if(_3.indexOf("(")!=-1){
this[_2]=_3;
}else{
this[_2]=eval(_3);
}
}else{
this[_2]=null;
}
}
var _4=Sys.WebForms.PageRequestManager.getInstance();
this._initializeRequestHandler=Function.createDelegate(this,this._initializeRequest);
_4.add_initializeRequest(this._initializeRequestHandler);
},_getResponseHeader:function(_5,_6){
try{
return _5.getResponseHeader(_6);
}
catch(e){
return null;
}
},_handleAsyncRedirect:function(_7){
var _8=this._getResponseHeader(_7,"Location");
if(_8&&_8!=""){
var _9=document.createElement("a");
_9.style.display="none";
_9.href=_8;
document.body.appendChild(_9);
if(_9.click){
try{
_9.click();
}
catch(e){
}
}else{
window.location.href=_8;
}
document.body.removeChild(_9);
return true;
}
return false;
},_onFormSubmitCompleted:function(_a,_b){
if(_a._xmlHttpRequest!=null){
if(this._handleAsyncRedirect(_a._xmlHttpRequest)){
try{
_a._aborted=true;
}
catch(e){
}
return;
}
}
if(_a._xmlHttpRequest!=null&&!_a.get_timedOut()){
var _c=this.getResponseItems(_a.get_responseData(),"scriptBlock");
for(var i=0,_e=_c.length;i<_e;i++){
var _f=_c[i].content;
if(_f.indexOf(Sys.WebForms.PageRequestManager.getInstance()._uniqueIDToClientID(this._uniqueID))!=-1){
var _10=_f.substr(_f.indexOf("\"links\":")+10,_f.indexOf("]",_f.indexOf("\"links\":"))-(_f.indexOf("\"links\":")+10)).replace(/\"/g,"");
if(_10!=""){
this._links=_10.split(",");
this.updateHeadLinks();
}
}
if(_f.indexOf(".axd")==-1&&_c[i].id=="ScriptPath"){
Telerik.Web.UI.RadAjaxControl.IncludeClientScript(_f);
}
}
var _11=this.getResponseItems(_a.get_responseData(),"updatePanel");
Telerik.Web.UI.RadAjaxControl.panelsToClear=[];
for(var i=0,_e=_11.length;i<_e;i++){
var _12=_11[i];
if(!$get(_12.id)){
var _13=document.createElement("div");
_13.id=_12.id;
var _14=$get(_12.id.replace("Panel",""));
if(!_14){
continue;
}
var _15=_14.parentNode;
var _16=_14.nextSibling||Telerik.Web.UI.RadAjaxControl.GetNodeNextSibling(_14);
if(_14.nodeType===1){
if(_14.dispose&&typeof (_14.dispose)==="function"){
_14.dispose();
}else{
if(_14.control&&typeof (_14.control.dispose)==="function"){
_14.control.dispose();
}
}
var _17=Sys.UI.Behavior.getBehaviors(_14);
for(var j=_17.length-1;j>=0;j--){
_17[j].dispose();
}
}
Sys.WebForms.PageRequestManager.getInstance()._destroyTree(_14);
_15.removeChild(_14);
Telerik.Web.UI.RadAjaxControl.InsertAtLocation(_13,_15,_16);
Telerik.Web.UI.RadAjaxControl.panelsToClear[Telerik.Web.UI.RadAjaxControl.panelsToClear.length]=_12;
}
}
}
_a.get_webRequest().remove_completed(this._onFormSubmitCompletedHandler);
},dispose:function(){
this.hideLoadingPanels();
var _19=Sys.WebForms.PageRequestManager.getInstance();
_19.remove_initializeRequest(this._initializeRequestHandler);
$clearHandlers(this.get_element());
this._element.control=null;
Telerik.Web.UI.RadAjaxControl.callBaseMethod(this,"dispose");
},get_enableAJAX:function(){
return this._enableAJAX;
},set_enableAJAX:function(_1a){
if(this._enableAJAX!=_1a){
this._enableAJAX=_1a;
}
},get_enableHistory:function(){
return this._enableHistory;
},set_enableHistory:function(_1b){
if(this._enableHistory!=_1b){
this._enableHistory=_1b;
}
},get_clientEvents:function(){
return this._clientEvents;
},set_clientEvents:function(_1c){
if(this._clientEvents!=_1c){
this._clientEvents=_1c;
}
},get_links:function(){
return this._links;
},set_links:function(_1d){
if(this._links!=_1d){
this._links=_1d;
if(this._links.length>0){
this.updateHeadLinks();
}
}
},get_styles:function(){
return this._styles;
},set_styles:function(_1e){
if(this._styles!=_1e){
this._styles=_1e;
if(this._styles.length>0){
this.updateHeadStyles();
}
}
},get_uniqueID:function(){
return this._uniqueID;
},set_uniqueID:function(_1f){
if(this._uniqueID!=_1f){
this._uniqueID=_1f;
window[Sys.WebForms.PageRequestManager.getInstance()._uniqueIDToClientID(this._uniqueID)]=this;
}
},get_requestQueueSize:function(){
return this._requestQueueSize;
},set_requestQueueSize:function(_20){
if(_20>0){
this._requestQueueSize=_20;
this.raisePropertyChanged("requestQueueSize");
}
},isChildOf:function(_21,_22){
while(_21!=null){
if(_21==_22){
return true;
}
_21=_21.parentNode;
}
return false;
},_initializeRequest:function(_23,_24){
var _25=Sys.WebForms.PageRequestManager.getInstance();
if(_25.get_isInAsyncPostBack()&&this._requestQueueSize>0){
this._queueRequest(_23,_24);
}
if(this.Type=="Telerik.Web.UI.RadAjaxManager"){
if(_24.get_postBackElement()!=this.get_element()){
var _26=this._updatePanels.split(",");
if(Array.contains(_26,_24.get_postBackElement().id)){
this._isRequestInProgress=true;
this._attachRequestHandlers(_23,_24,false);
return false;
}else{
var _27=_24.get_postBackElement().parentNode;
var _28=false;
while(_27!=null){
if(_27.id&&Array.contains(_26,_27.id)){
_28=true;
break;
}
_27=_27.parentNode;
}
if(_28){
this._isRequestInProgress=true;
this._attachRequestHandlers(_23,_24,false);
return false;
}
}
if(!this._initiators[_24.get_postBackElement().id]){
var _27=_24.get_postBackElement().parentNode;
var _28=false;
while(_27!=null){
if(_27.id&&this._initiators[_27.id]){
_28=true;
break;
}
_27=_27.parentNode;
}
if(!_28){
this._isRequestInProgress=true;
this._attachRequestHandlers(_23,_24,false);
return false;
}
}
}
}
if(this.Type=="Telerik.Web.UI.RadAjaxPanel"){
var _29=this._getParentAjaxPanel(_24.get_postBackElement());
if(_29&&_29.get_id()!=this.get_id()){
return false;
}
if(!this.isChildOf(_24.get_postBackElement(),this.get_element())){
return false;
}
}
if(this._enableHistory){
if(Telerik.Web.UI.RadAjaxControl.History[""]==null){
Telerik.Web.UI.RadAjaxControl.HandleHistory(_23._uniqueIDToClientID(this._uniqueID),"");
}
Telerik.Web.UI.RadAjaxControl.HandleHistory(_23._uniqueIDToClientID(this._uniqueID),_24.get_request().get_body());
}
if(_23._form["__EVENTTARGET"]&&_23._form["__EVENTTARGET"].value){
this.__EVENTTARGET=_23._form["__EVENTTARGET"].value;
}else{
this.__EVENTTARGET=_24.get_postBackElement().id;
}
if(_24.get_postBackElement().name){
this.__EVENTTARGET=_24.get_postBackElement().name;
}
this.__EVENTARGUMENT=_23._form["__EVENTARGUMENT"].value;
var evt=new Telerik.Web.UI.RadAjaxRequestEventArgs(this.__EVENTTARGET,_23._form["__EVENTARGUMENT"].value,this._enableAJAX);
var _2b=this.fireEvent(this,"OnRequestStart",[evt]);
if(evt.get_cancel()||(typeof (_2b)!="undefined"&&!_2b)){
_24.set_cancel(true);
return;
}
if(!evt._enableAjax||!evt.EnableAjax){
_24.set_cancel(true);
_23._form["__EVENTTARGET"].value=this.__EVENTTARGET;
_23._form["__EVENTARGUMENT"].value=this.__EVENTARGUMENT;
_23._form.submit();
return;
}
this._isRequestInProgress=true;
this._attachRequestHandlers(_23,_24,true);
},_endRequest:function(_2c,_2d){
_2c.remove_endRequest(this._endRequestHandler);
for(var i=0,_2f=Telerik.Web.UI.RadAjaxControl.panelsToClear.length;i<_2f;i++){
var _30=Telerik.Web.UI.RadAjaxControl.panelsToClear[i];
var _31=document.getElementById(_30.id);
var _32=$get(_30.id.replace("Panel",""));
if(!_32){
continue;
}
var _33=_31.parentNode;
var _34=_31.nextSibling||Telerik.Web.UI.RadAjaxControl.GetNodeNextSibling(_31);
Telerik.Web.UI.RadAjaxControl.InsertAtLocation(_32,_33,_34);
_31.parentNode.removeChild(_31);
}
this._isRequestInProgress=false;
this.hideLoadingPanels();
if(typeof (this.__EVENTTARGET)!="undefined"&&typeof (this.__EVENTARGUMENT)!="undefined"){
var evt=new Telerik.Web.UI.RadAjaxRequestEventArgs(this.__EVENTTARGET,this.__EVENTARGUMENT,this._enableAJAX);
this.fireEvent(this,"OnResponseEnd",[evt]);
}
if(this._requestQueue.length>0){
this._executePendingRequest();
}
},_queueRequest:function(_36,_37){
_37.set_cancel(true);
if(this._requestQueue.length>=this._requestQueueSize){
return;
}
var _38=_37.get_postBackElement();
var _39=_38.id;
if(_38.name){
_39=_38.name;
}
if(_36._form["__EVENTTARGET"]&&_36._form["__EVENTTARGET"].value){
_39=_36._form["__EVENTTARGET"].value;
}
var _3a=_36._form["__EVENTARGUMENT"].value;
Array.enqueue(this._requestQueue,[_39,_3a]);
},_executePendingRequest:function(){
var _3b=Array.dequeue(this._requestQueue);
var _3c=_3b[0];
var _3d=_3b[1];
var _3e=Sys.WebForms.PageRequestManager.getInstance();
_3e._doPostBack(_3c,_3d);
},_attachRequestHandlers:function(_3f,_40,_41){
this._endRequestHandler=Function.createDelegate(this,this._endRequest);
_3f.add_endRequest(this._endRequestHandler);
this._onFormSubmitCompletedHandler=Function.createDelegate(this,this._onFormSubmitCompleted);
_40.get_request().add_completed(this._onFormSubmitCompletedHandler);
_40.get_request()._get_eventHandlerList()._list.completed.reverse();
if(_41){
var _42=_40.get_request().get_body();
var _43=(_42.lastIndexOf("&")!=_42.length-1)?"&":"";
_42+=_43+"RadAJAXControlID="+_3f._uniqueIDToClientID(this._uniqueID);
_40.get_request().set_body(_42);
}
},_getParentAjaxPanel:function(_44){
var _45=null;
while(_44!=null){
if(typeof (_44.id)!="undefined"&&$find(_44.id)&&$find(_44.id).Type=="Telerik.Web.UI.RadAjaxPanel"){
_45=$find(_44.id);
break;
}
_44=_44.parentNode;
}
return _45;
},getResponseItems:function(_46,_47,_48){
var _49=Sys.WebForms.PageRequestManager.getInstance();
var _4a=_46;
var _4b,len,_4d,id,_4f;
var _50=0;
var _51=null;
var _52="|";
var _53=[];
while(_50<_4a.length){
_4b=_4a.indexOf(_52,_50);
if(_4b===-1){
_51=_49._findText(_4a,_50);
break;
}
len=parseInt(_4a.substring(_50,_4b),10);
if((len%1)!==0){
_51=_49._findText(_4a,_50);
break;
}
_50=_4b+1;
_4b=_4a.indexOf(_52,_50);
if(_4b===-1){
_51=_49._findText(_4a,_50);
break;
}
_4d=_4a.substring(_50,_4b);
_50=_4b+1;
_4b=_4a.indexOf(_52,_50);
if(_4b===-1){
_51=_49._findText(_4a,_50);
break;
}
id=_4a.substring(_50,_4b);
_50=_4b+1;
if((_50+len)>=_4a.length){
_51=_49._findText(_4a,_4a.length);
break;
}
if(typeof (_49._decodeString)!="undefined"){
_4f=_49._decodeString(_4a.substr(_50,len));
}else{
_4f=_4a.substr(_50,len);
}
_50+=len;
if(_4a.charAt(_50)!==_52){
_51=_49._findText(_4a,_50);
break;
}
_50++;
if(_47!=undefined&&_47!=_4d){
continue;
}
if(_48!=undefined&&_48!=id){
continue;
}
Array.add(_53,{type:_4d,id:id,content:_4f});
}
return _53;
},pageLoading:function(_54,_55){
},pageLoaded:function(_56,_57){
},hideLoadingPanels:function(){
for(var i=0;i<this._loadingPanelsToHide.length;i++){
var _59=this._loadingPanelsToHide[i].Panel;
var _5a=this._loadingPanelsToHide[i].ControlID;
if(_59!=null){
_59.hide(_5a);
Array.remove(this._loadingPanelsToHide,this._loadingPanelsToHide[i]);
i--;
}
}
},fireEvent:function(_5b,_5c,_5d){
var _5e=true;
if(typeof (_5b[_5c])=="string"){
_5e=eval(_5b[_5c]);
}else{
if(typeof (_5b[_5c])=="function"){
if(_5d){
if(typeof (_5d.unshift)!="undefined"){
_5d.unshift(_5b);
_5e=_5b[_5c].apply(_5b,_5d);
}else{
_5e=_5b[_5c].apply(_5b,[_5d]);
}
}else{
_5e=_5b[_5c]();
}
}
}
if(typeof (_5e)!="boolean"){
return true;
}else{
return _5e;
}
},updateHeadLinks:function(){
var _5f=this.getHeadElement();
var _60=_5f.getElementsByTagName("link");
var _61=[];
for(var j=0,_63=_60.length;j<_63;j++){
var _64=_60[j].getAttribute("href");
_61.push(_64);
}
for(var i=0,_66=this._links.length;i<_66;i++){
var _67=this._links[i];
_67=_67.replace(/&amp;amp;t/g,"&t");
_67=_67.replace(/&amp;t/g,"&t");
var _68=Array.contains(_61,_67);
if(!_68){
if(_67==""){
continue;
}
var _69=document.createElement("link");
_69.setAttribute("rel","stylesheet");
_69.setAttribute("href",_67);
_5f.appendChild(_69);
}
}
},updateHeadStyles:function(){
if(document.createStyleSheet!=null){
for(var i=0,_6b=this._styles.length;i<_6b;i++){
var _6c=this._styles[i];
var _6d=null;
try{
_6d=document.createStyleSheet();
}
catch(e){
}
if(_6d==null){
_6d=document.createElement("style");
}
_6d.cssText=_6c;
}
}else{
var _6e=null;
if(document.styleSheets.length==0){
css=document.createElement("style");
css.media="all";
css.type="text/css";
var _6f=this.getHeadElement();
_6f.appendChild(css);
_6e=css;
}
if(document.styleSheets[0]){
_6e=document.styleSheets[0];
}
for(var i=0;i<this._styles.length;i++){
var _6c=this._styles[i];
var _70=_6c.split("}");
for(var j=0;j<_70.length;j++){
if(_70[j].replace(/\s*/,"")==""){
continue;
}
_6e.insertRule(_70[j]+"}",j+1);
}
}
}
},getHeadElement:function(){
var _72=document.getElementsByTagName("head");
if(_72.length>0){
return _72[0];
}
var _73=document.createElement("head");
document.documentElement.appendChild(_73);
return _73;
},ajaxRequest:function(_74){
__doPostBack(this._uniqueID,_74);
},ajaxRequestWithTarget:function(_75,_76){
__doPostBack(_75,_76);
},__doPostBack:function(_77,_78){
var _79=Sys.WebForms.PageRequestManager.getInstance()._form;
if(_79!=null){
if(_79["__EVENTTARGET"]!=null){
_79["__EVENTTARGET"].value=_77;
}
if(_79["__EVENTARGUMENT"]!=null){
_79["__EVENTARGUMENT"].value=_78;
}
_79.submit();
}
}};
Telerik.Web.UI.RadAjaxControl.registerClass("Telerik.Web.UI.RadAjaxControl",Sys.UI.Control);
Telerik.Web.UI.RadAjaxRequestEventArgs=function(_7a,_7b,_7c){
Telerik.Web.UI.RadAjaxRequestEventArgs.initializeBase(this);
this._enableAjax=_7c;
this._eventTarget=_7a;
this._eventArgument=_7b;
this._postbackControlClientID=_7a.replace(/(\$|:)/g,"_");
this._eventTargetElement=$get(this._postbackControlClientID);
this.EnableAjax=this._enableAjax;
this.EventTarget=this._eventTarget;
this.EventArgument=this._eventArgument;
this.EventTargetElement=this._eventTargetElement;
};
Telerik.Web.UI.RadAjaxRequestEventArgs.prototype={get_enableAjax:function(){
return this._enableAjax;
},set_enableAjax:function(_7d){
if(this._enableAjax!=_7d){
this._enableAjax=_7d;
}
},get_eventTarget:function(){
return this._eventTarget;
},get_eventArgument:function(){
return this._eventArgument;
},get_eventTargetElement:function(){
return this._eventTargetElement;
}};
Telerik.Web.UI.RadAjaxRequestEventArgs.registerClass("Telerik.Web.UI.RadAjaxRequestEventArgs",Sys.CancelEventArgs);
Telerik.Web.UI.RadAjaxControl.History={};
Telerik.Web.UI.RadAjaxControl.HandleHistory=function(_7e,_7f){
if(window.netscape){
return;
}
var _80=$get(_7e+"_History");
if(_80==null){
_80=document.createElement("iframe");
_80.id=_7e+"_History";
_80.name=_7e+"_History";
_80.style.width="0px";
_80.style.height="0px";
_80.src="javascript:''";
_80.style.visibility="hidden";
var _81=function(e){
if(!Telerik.Web.UI.RadAjaxControl.ShouldLoadHistory){
Telerik.Web.UI.RadAjaxControl.ShouldLoadHistory=true;
return;
}
var _83="";
var _84="";
var _85=_80.contentWindow.document.getElementById("__DATA");
if(!_85){
return;
}
var _86=_85.value.split("&");
for(var i=0,_88=_86.length;i<_88;i++){
var _89=_86[i].split("=");
if(_89[0]=="__EVENTTARGET"){
_83=_89[1];
}
if(_89[0]=="__EVENTARGUMENT"){
_84=_89[1];
}
var _8a=document.getElementById(Sys.WebForms.PageRequestManager.getInstance()._uniqueIDToClientID(_89[0]));
if(_8a!=null){
Telerik.Web.UI.RadAjaxControl.RestorePostData(_8a,Telerik.Web.UI.RadAjaxControl.DecodePostData(_89[1]));
}
}
if(_83!=""){
__doPostBack(Telerik.Web.UI.RadAjaxControl.DecodePostData(_83),Telerik.Web.UI.RadAjaxControl.DecodePostData(_84),_7e);
}
};
$addHandler(_80,"load",_81);
document.body.appendChild(_80);
}
if(Telerik.Web.UI.RadAjaxControl.History[_7f]==null){
Telerik.Web.UI.RadAjaxControl.History[_7f]=true;
Telerik.Web.UI.RadAjaxControl.AddHistoryEntry(_80,_7f);
}
};
Telerik.Web.UI.RadAjaxControl.AddHistoryEntry=function(_8b,_8c){
Telerik.Web.UI.RadAjaxControl.ShouldLoadHistory=false;
_8b.contentWindow.document.open();
_8b.contentWindow.document.write("<input id='__DATA' name='__DATA' type='hidden' value='"+_8c+"' />");
_8b.contentWindow.document.close();
if(window.netscape){
_8b.contentWindow.document.location.hash="#'"+new Date()+"'";
}
};
Telerik.Web.UI.RadAjaxControl.DecodePostData=function(_8d){
if(decodeURIComponent){
return decodeURIComponent(_8d);
}else{
return unescape(_8d);
}
};
Telerik.Web.UI.RadAjaxControl.RestorePostData=function(_8e,_8f){
if(_8e.tagName.toLowerCase()=="select"){
for(var i=0,_91=_8e.options.length;i<_91;i++){
if(_8f.indexOf(_8e.options[i].value)!=-1){
_8e.options[i].selected=true;
}
}
}
if(_8e.tagName.toLowerCase()=="input"&&(_8e.type.toLowerCase()=="text"||_8e.type.toLowerCase()=="hidden")){
_8e.value=_8f;
}
if(_8e.tagName.toLowerCase()=="input"&&(_8e.type.toLowerCase()=="checkbox"||_8e.type.toLowerCase()=="radio")){
_8e.checked=_8f;
}
};
Telerik.Web.UI.RadAjaxControl.GetNodeNextSibling=function(_92){
if(_92!=null&&_92.nextSibling!=null){
return _92.nextSibling;
}
return null;
};
Telerik.Web.UI.RadAjaxControl.InsertAtLocation=function(_93,_94,_95){
if(_95!=null){
return _94.insertBefore(_93,_95);
}else{
return _94.appendChild(_93);
}
};
Telerik.Web.UI.RadAjaxControl.FocusElement=function(_96){
var _97=document.getElementById(_96);
if(_97){
var _98=_97.tagName;
var _99=_97.type;
if(_98.toLowerCase()=="input"&&(_99.toLowerCase()=="checkbox"||_99.toLowerCase()=="radio")){
window.setTimeout(function(){
try{
_97.focus();
}
catch(e){
}
},500);
}else{
try{
Telerik.Web.UI.RadAjaxControl.SetSelectionFocus(_97);
_97.focus();
}
catch(e){
}
}
}
};
Telerik.Web.UI.RadAjaxControl.SetSelectionFocus=function(_9a){
if(_9a.createTextRange==null){
return;
}
var _9b=null;
try{
_9b=_9a.createTextRange();
}
catch(e){
}
if(_9b!=null){
_9b.moveStart("textedit",_9b.text.length);
_9b.collapse(false);
_9b.select();
}
};
Telerik.Web.UI.RadAjaxControl.panelsToClear=[];
Telerik.Web.UI.RadAjaxControl.UpdateElement=function(id,_9d){
var _9e=$get(id);
if(_9e!=null){
_9e.innerHTML=_9d;
var _9f=Telerik.Web.UI.RadAjaxControl.GetScriptsSrc(_9d);
for(var i=0,_a1=_9f.length;i<_a1;i++){
Telerik.Web.UI.RadAjaxControl.IncludeClientScript(_9f[i]);
}
_9f=Telerik.Web.UI.RadAjaxControl.GetTags(_9d,"script");
for(var i=0,_a1=_9f.length;i<_a1;i++){
var _a2=_9f[i];
if(_a2.inner!=""){
Telerik.Web.UI.RadAjaxControl.EvalScriptCode(_a2.inner);
}
}
var _a3=document.getElementsByTagName("head")[0];
var _a4=Telerik.Web.UI.RadAjaxControl.GetLinkHrefs(_9d);
for(var i=0,_a1=_a4.length;i<_a1;i++){
var _a5=_a4[i];
var _a6=document.createElement("link");
_a6.setAttribute("rel","stylesheet");
_a6.setAttribute("href",_a5);
_a3.appendChild(_a6);
}
}
};
Telerik.Web.UI.RadAjaxControl.IncludeClientScript=function(src){
var _a8=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
_a8.open("GET",src,false);
_a8.send(null);
if(_a8.status==200){
var _a9=_a8.responseText;
Telerik.Web.UI.RadAjaxControl.EvalScriptCode(_a9);
}
};
Telerik.Web.UI.RadAjaxControl.EvalScriptCode=function(_aa){
if(Telerik.Web.UI.RadAjaxControl.IsSafari()){
_aa=_aa.replace(/^\s*<!--((.|\n)*)-->\s*$/mi,"$1");
}
var _ab=document.createElement("script");
_ab.setAttribute("type","text/javascript");
if(Telerik.Web.UI.RadAjaxControl.IsSafari()){
_ab.appendChild(document.createTextNode(_aa));
}else{
_ab.text=_aa;
}
var _ac=document.getElementsByTagName("head")[0];
_ac.appendChild(_ab);
if(Telerik.Web.UI.RadAjaxControl.IsSafari()){
_ab.innerHTML="";
}else{
_ab.parentNode.removeChild(_ab);
}
};
Telerik.Web.UI.RadAjaxControl.GetTags=function(_ad,_ae){
var _af=[];
var _b0=_ad;
while(1){
var _b1=Telerik.Web.UI.RadAjaxControl.GetTag(_b0,_ae);
if(_b1.index==-1){
break;
}
_af[_af.length]=_b1;
var _b2=_b1.index+_b1.outer.length;
_b0=_b0.substring(_b2,_b0.length);
}
return _af;
};
Telerik.Web.UI.RadAjaxControl.GetTag=function(_b3,_b4,_b5){
if(typeof (_b5)=="undefined"){
_b5="";
}
var _b6=new RegExp("<"+_b4+"[^>]*>((.|\n|\r)*?)</"+_b4+">","i");
var _b7=_b3.match(_b6);
if(_b7!=null&&_b7.length>=2){
return {outer:_b7[0],inner:_b7[1],index:_b7.index};
}else{
return {outer:_b5,inner:_b5,index:-1};
}
};
Telerik.Web.UI.RadAjaxControl.GetLinkHrefs=function(_b8){
var _b9=_b8;
var _ba=[];
while(1){
var _bb=_b9.match(/<link[^>]*href=('|")?([^'"]*)('|")?([^>]*)>.*?(<\/link>)?/i);
if(_bb==null||_bb.length<3){
break;
}
var _bc=_bb[2];
_ba[_ba.length]=_bc;
var _bd=_bb.index+_bc.length;
_b9=_b9.substring(_bd,_b9.length);
}
return _ba;
};
Telerik.Web.UI.RadAjaxControl.GetScriptsSrc=function(_be){
var _bf=_be;
var _c0=[];
while(1){
var _c1=_bf.match(/<script[^>]*src=('|")?([^'"]*)('|")?([^>]*)>.*?(<\/script>)?/i);
if(_c1==null||_c1.length<3){
break;
}
var _c2=_c1[2];
_c0[_c0.length]=_c2;
var _c3=_c1.index+_c2.length;
_bf=_bf.substring(_c3,_bf.length);
}
return _c0;
};
Telerik.Web.UI.RadAjaxControl.IsSafari=function(){
return (navigator.userAgent.match(/safari/i)!=null);
};
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadAjaxLoadingPanel=function(_c4){
Telerik.Web.UI.RadAjaxLoadingPanel.initializeBase(this,[_c4]);
this._uniqueID="";
this._minDisplayTime=0;
this._initialDelayTime=0;
this._isSticky=false;
this._transparency=0;
this._manager=null;
this._zIndex=90000;
this.skin="";
this.UniqueID=this._uniqueID;
this.MinDisplayTime=this._minDisplayTime;
this.InitialDelayTime=this._initialDelayTime;
this.IsSticky=this._isSticky;
this.Transparency=this._transparency;
this.ZIndex=this._zIndex;
};
Telerik.Web.UI.RadAjaxLoadingPanel.prototype={initialize:function(){
Telerik.Web.UI.RadAjaxLoadingPanel.callBaseMethod(this,"initialize");
},dispose:function(){
Telerik.Web.UI.RadAjaxLoadingPanel.callBaseMethod(this,"dispose");
},get_zIndex:function(){
return this._zIndex;
},set_zIndex:function(_c5){
if(this._zIndex!=_c5){
this._zIndex=_c5;
}
},get_uniqueID:function(){
return this._uniqueID;
},set_uniqueID:function(_c6){
if(this._uniqueID!=_c6){
this._uniqueID=_c6;
window[Sys.WebForms.PageRequestManager.getInstance()._uniqueIDToClientID(this._uniqueID)]=this;
}
},get_initialDelayTime:function(){
return this._initialDelayTime;
},set_initialDelayTime:function(_c7){
if(this._initialDelayTime!=_c7){
this._initialDelayTime=_c7;
}
},get_isSticky:function(){
return this._isSticky;
},set_isSticky:function(_c8){
if(this._isSticky!=_c8){
this._isSticky=_c8;
}
},get_minDisplayTime:function(){
return this._minDisplayTime;
},set_minDisplayTime:function(_c9){
if(this._minDisplayTime!=_c9){
this._minDisplayTime=_c9;
}
},get_transparency:function(){
return this._transparency;
},set_transparency:function(_ca){
if(this._transparency!=_ca){
this._transparency=_ca;
}
},show:function(_cb){
var _cc=$get(_cb+"_wrapper");
if((typeof (_cc)=="undefined")||(!_cc)){
_cc=$get(_cb);
}
var _cd=this.get_element();
if(!(_cc&&_cd)){
return false;
}
var _ce=this._initialDelayTime;
var _cf=this;
var _d0=(!this._isSticky)?this.cloneLoadingPanel(_cd,_cb):_cd;
if(_ce){
window.setTimeout(function(){
try{
if(_cf._manager!=null&&_cf._manager._isRequestInProgress){
_cf.displayLoadingElement(_d0,_cc);
}
}
catch(e){
}
},_ce);
}else{
this.displayLoadingElement(_d0,_cc);
}
return true;
},hide:function(_d1){
var _d2=$get(_d1);
var _d3=String.format("{0}_wrapper",_d1);
var _d4=$get(_d3);
if(_d4){
_d2=_d4;
}
if(this.get_element()==null){
var el=$get(Sys.WebForms.PageRequestManager.getInstance()._uniqueIDToClientID(this._uniqueID));
if(el==null){
return;
}
this._element=el;
}
var _d6=(!this._isSticky)?$get(this.get_element().id+_d1):this.get_element();
var now=new Date();
if(_d6==null){
return;
}
var _d8=now-_d6._startDisplayTime;
var _d9=this._minDisplayTime;
if(this._isSticky){
if(_d9>_d8){
window.setTimeout(function(){
_d6.style.display="none";
},_d9);
}else{
_d6.style.display="none";
}
}else{
if(_d9>_d8){
window.setTimeout(function(){
_d6.parentNode.removeChild(_d6);
if(typeof (_d2)!="undefined"&&(_d2!=null)){
_d2.style.visibility="visible";
}
},_d9);
}else{
_d6.parentNode.removeChild(_d6);
if(typeof (_d2)!="undefined"&&(_d2!=null)){
_d2.style.visibility="visible";
}
}
}
},cloneLoadingPanel:function(_da,_db){
var _dc=_da.cloneNode(false);
_dc.innerHTML=_da.innerHTML;
_dc.id=_da.id+_db;
document.body.insertBefore(_dc,document.body.firstChild);
return _dc;
},displayLoadingElement:function(_dd,_de){
if(!this._isSticky){
if($telerik.isIE6){
this._setDropDownsVisibitily(_de,false);
}
var _df=this.getElementRectangle(_de);
_dd.style.position="absolute";
_dd.style.width=_df.width+"px";
_dd.style.height=_df.height+"px";
_dd.style.left=_df.left+"px";
_dd.style.top=_df.top+"px";
_dd.style.textAlign="center";
_dd.style.zIndex=this._zIndex;
}
_dd.style.display="";
_dd._startDisplayTime=new Date();
var _e0=100-parseInt(this._transparency);
if(parseInt(this._transparency)>0){
if(_dd.style&&_dd.style.MozOpacity!=null){
_dd.style.MozOpacity=_e0/100;
}else{
if(_dd.style&&_dd.style.opacity!=null){
_dd.style.opacity=_e0/100;
}else{
if(_dd.style&&_dd.style.filter!=null){
_dd.style.filter="alpha(opacity="+_e0+");";
_dd.style.zoom=1;
}
}
}
}else{
if(!this._isSticky){
var _e1=true;
if(this.skin!=""){
if($telerik.isIE&&_dd.currentStyle&&(_dd.currentStyle.filter.indexOf("opacity")!=-1||_dd.firstChild.nextSibling.currentStyle.filter.indexOf("opacity")!=-1)){
_e1=false;
}else{
if(document.defaultView&&document.defaultView.getComputedStyle&&(document.defaultView.getComputedStyle(_dd,null).getPropertyValue("opacity")!=1||document.defaultView.getComputedStyle(_dd,null).getPropertyValue("MozOpacity")!=1||document.defaultView.getComputedStyle(_dd.getElementsByClassName("raDiv")[0],null).getPropertyValue("opacity")!=1||document.defaultView.getComputedStyle(_dd.getElementsByClassName("raDiv")[0],null).getPropertyValue("MozOpacity")!=1)){
_e1=false;
}
}
}
if(_e1){
_de.style.visibility="hidden";
}
}
}
},_setDropDownsVisibitily:function(_e2,_e3){
if(!_e2){
_e2=this;
}
var _e4=_e2.getElementsByTagName("select");
for(var i=0;i<_e4.length;i++){
_e4[i].style.display=(_e3)?"":"none";
}
},getElementRectangle:function(_e6){
if(!_e6){
_e6=this;
}
var _e7=$telerik.getLocation(_e6);
var _e8=_e7.x;
var top=_e7.y;
var _ea=_e6.offsetWidth;
var _eb=_e6.offsetHeight;
return {"left":_e8,"top":top,"width":_ea,"height":_eb};
}};
Telerik.Web.UI.RadAjaxLoadingPanel.registerClass("Telerik.Web.UI.RadAjaxLoadingPanel",Sys.UI.Control);
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadAjaxManager=function(_ec){
Telerik.Web.UI.RadAjaxManager.initializeBase(this,[_ec]);
this._ajaxSettings=[];
this._defaultLoadingPanelID="";
this._initiators={};
this._loadingPanelsToHide=[];
this._isRequestInProgress=false;
this.Type="Telerik.Web.UI.RadAjaxManager";
this._updatePanelsRenderMode=null;
this.AjaxSettings=this._ajaxSettings;
this.DefaultLoadingPanelID=this._defaultLoadingPanelID;
};
Telerik.Web.UI.RadAjaxManager.prototype={initialize:function(){
Telerik.Web.UI.RadAjaxManager.callBaseMethod(this,"initialize");
var _ed=this.get_element();
if(_ed!=null&&_ed.parentNode!=null&&_ed.parentNode.id==_ed.id+"SU"){
_ed.parentNode.style.display="none";
}
var _ee=this.get_ajaxSettings();
for(var i=0,_f0=_ee.length;i<_f0;i++){
this._initiators[_ee[i].InitControlID]=_ee[i].UpdatedControls;
}
},dispose:function(){
Telerik.Web.UI.RadAjaxManager.callBaseMethod(this,"dispose");
},get_ajaxSettings:function(){
return this._ajaxSettings;
},set_ajaxSettings:function(_f1){
if(this._ajaxSettings!=_f1){
this._ajaxSettings=_f1;
}
},get_defaultLoadingPanelID:function(){
return this._defaultLoadingPanelID;
},set_defaultLoadingPanelID:function(_f2){
if(this._defaultLoadingPanelID!=_f2){
this._defaultLoadingPanelID=_f2;
}
},get_updatePanelsRenderMode:function(){
return this._updatePanelsRenderMode;
},set_updatePanelsRenderMode:function(_f3){
if(this._updatePanelsRenderMode!=_f3){
this._updatePanelsRenderMode=_f3;
this._applyUpdatePanelsRenderMode(_f3);
}
},_applyUpdatePanelsRenderMode:function(_f4){
var _f5=Sys.WebForms.PageRequestManager.getInstance();
var ids=_f5._updatePanelClientIDs;
for(var i=0;i<ids.length;i++){
var _f8=$get(ids[i]);
if(_f8){
if(_f8.tagName.toLowerCase()=="span"){
continue;
}
_f8.style.display=(_f4==0)?"block":"inline";
}
}
},showLoadingPanels:function(id,_fa){
for(var i=0,_fc=_fa.length;i<_fc;i++){
if(_fa[i].InitControlID==id){
var _fd=_fa[i];
for(var j=0,_ff=_fd.UpdatedControls.length;j<_ff;j++){
var _100=_fd.UpdatedControls[j];
var _101=_100.PanelID;
if(_101==""){
_101=this._defaultLoadingPanelID;
}
var _102=_100.ControlID;
if(_102==this._uniqueID){
continue;
}
var _103=$find(_101);
if(_103!=null){
_103._manager=this;
if(_103.show(_102)){
var obj={"Panel":_103,"ControlID":_102};
if(!Array.contains(this._loadingPanelsToHide,obj)){
this._loadingPanelsToHide[this._loadingPanelsToHide.length]=obj;
}
}
}
}
}
}
},_initializeRequest:function(_105,args){
Telerik.Web.UI.RadAjaxManager.callBaseMethod(this,"_initializeRequest",[_105,args]);
if(!this._isRequestInProgress){
return;
}
var _107=args.get_postBackElement();
if(_107!=null){
if(this._initiators[_107.id]){
this.showLoadingPanels(_107.id,this.get_ajaxSettings());
}else{
var _108=_107.parentNode;
var _109=false;
while(_108!=null){
if(_108.id&&this._initiators[_108.id]){
_109=true;
break;
}
_108=_108.parentNode;
}
if(_109){
this.showLoadingPanels(_108.id,this.get_ajaxSettings());
}
}
}
},updateElement:function(id,html){
Telerik.Web.UI.RadAjaxControl.UpdateElement(id,html);
}};
Telerik.Web.UI.RadAjaxManager.registerClass("Telerik.Web.UI.RadAjaxManager",Telerik.Web.UI.RadAjaxControl);
Telerik.Web.UI.RadAjaxManager.UpdateElement=function(id,html){
Telerik.Web.UI.RadAjaxControl.UpdateElement(id,html);
};
Type.registerNamespace("Telerik.Web.UI");
Telerik.Web.UI.RadAjaxPanel=function(_10e){
Telerik.Web.UI.RadAjaxPanel.initializeBase(this,[_10e]);
this._loadingPanelID="";
this._loadingPanelsToHide=[];
this.Type="Telerik.Web.UI.RadAjaxPanel";
this.LoadingPanelID=this._loadingPanelID;
};
Telerik.Web.UI.RadAjaxPanel.prototype={initialize:function(){
var _10f=this.get_element().parentNode;
if(this.get_element().style.height!=""){
_10f.style.height=this.get_element().style.height;
this.get_element().style.height="100%";
}
if(this.get_element().style.width!=""){
_10f.style.width=this.get_element().style.width;
this.get_element().style.width="";
}
Telerik.Web.UI.RadAjaxPanel.callBaseMethod(this,"initialize");
},dispose:function(){
Telerik.Web.UI.RadAjaxPanel.callBaseMethod(this,"dispose");
},_initializeRequest:function(_110,args){
Telerik.Web.UI.RadAjaxPanel.callBaseMethod(this,"_initializeRequest",[_110,args]);
if(!this._isRequestInProgress){
return;
}
var _112=args.get_postBackElement();
if(_112!=null&&(_112==this.get_element()||this.isChildOf(_112,this.get_element()))){
var _113=$find(this._loadingPanelID);
if(_113!=null){
_113._manager=this;
if(_113.show(this.get_element().id)){
var obj={"Panel":_113,"ControlID":this.get_element().id};
if(!Array.contains(this._loadingPanelsToHide,obj)){
this._loadingPanelsToHide[this._loadingPanelsToHide.length]=obj;
}
}
}
}
},get_loadingPanelID:function(){
return this._loadingPanelID;
},set_loadingPanelID:function(_115){
if(this._loadingPanelID!=_115){
this._loadingPanelID=_115;
}
}};
Telerik.Web.UI.RadAjaxPanel.registerClass("Telerik.Web.UI.RadAjaxPanel",Telerik.Web.UI.RadAjaxControl);


/* END Telerik.Web.UI.Ajax.Ajax.js */
/* START C1.Web.UI.Resources.C1.Web.UI.Client.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI");C1.Web.UI.DOMScrollOrientation=function(){};C1.Web.UI.DOMScrollOrientation.prototype={horizontal:1,vertical:2,both:3};C1.Web.UI.DOMScrollOrientation.registerEnum("C1.Web.UI.DOMScrollOrientation",false);C1.Web.UI.DOMScrollButtonAlign=function(){};C1.Web.UI.DOMScrollButtonAlign.prototype={startSide:1,twoSides:2,endSide:3};C1.Web.UI.DOMScrollButtonAlign.registerEnum("C1.Web.UI.DOMScrollButtonAlign",false);C1.Web.UI.DOMScrollMode=function(){};C1.Web.UI.DOMScrollMode.prototype={none:1,buttons:2,buttonsHover:3,hover:4,scrollBar:5};C1.Web.UI.DOMScrollMode.registerEnum("C1.Web.UI.DOMScrollMode",false);C1.Web.UI.Orientation=function(){};C1.Web.UI.Orientation.prototype={horizontal:0,vertical:1};C1.Web.UI.Orientation.registerEnum("C1.Web.UI.Orientation",false);C1.Web.UI.PositioningMode=function(){};C1.Web.UI.PositioningMode.prototype={absolute:1,center:2,topLeft:3,topRight:4,topCenter:5,rightTop:6,rightBottom:7,rightMiddle:8,bottomLeft:9,bottomRight:10,bottomCenter:11,leftTop:12,leftBottom:13,leftMiddle:14};C1.Web.UI.PositioningMode.registerEnum("C1.Web.UI.PositioningMode",false);C1.Web.UI.AnimationEffect=function(){};C1.Web.UI.AnimationEffect.prototype={none:0,fadeIn:1,fadeOut:2,scrollInFromTop:3,scrollInFromRight:4,scrollInFromBottom:5,scrollInFromLeft:6,scrollOutToTop:7,scrollOutToRight:8,scrollOutToBottom:9,scrollOutToLeft:10,fold:11,unFold:12,openVertically:13,closeVertically:14,openHorizontally:15,closeHorizontally:16,shake:17,bounce:18,dropInFromTop:19,dropInFromRight:20,dropInFromBottom:21,dropInFromLeft:22,dropOutToTop:23,dropOutToRight:24,dropOutToBottom:25,dropOutToLeft:26};C1.Web.UI.AnimationEffect.registerEnum("C1.Web.UI.AnimationEffect",false);C1.Web.UI.ScrollBars=function(){};C1.Web.UI.ScrollBars.prototype={none:0,horizontal:1,vertical:2,both:3,auto:4};C1.Web.UI.ScrollBars.registerEnum("C1.Web.UI.ScrollBars",false);C1.Web.UI.BoxSide=function(){};C1.Web.UI.BoxSide.prototype={top:0,right:1,bottom:2,left:3};C1.Web.UI.BoxSide.registerEnum("C1.Web.UI.BoxSide",false);C1.Web.UI.DockStyle=function(){};C1.Web.UI.DockStyle.prototype={none:0,top:1,bottom:2,left:3,right:4,fill:5};C1.Web.UI.DockStyle.registerEnum("C1.Web.UI.DockStyle",false);C1.Web.UI.DockStyleEnum=function(){};C1.Web.UI.DockStyleEnum.prototype={none:0,top:1,bottom:2,left:3,right:4,fill:5};C1.Web.UI.DockStyleEnum.registerEnum("C1.Web.UI.DockStyleEnum",false);C1.Web.UI.Easing=function(){};C1.Web.UI.Easing.prototype={easeOutElastic:1,easeInElastic:2,easeInOutElastic:3,easeOutBounce:4,easeInBounce:5,easeInOutBounce:6,easeOutExpo:7,easeInExpo:8,easeInOutExpo:9,easeOutQuad:10,easeInQuad:11,easeInOutQuad:12,easeOutSine:13,easeInSine:14,easeInOutSine:15,easeOutCirc:16,easeInCirc:17,easeInOutCirc:18,easeOutCubic:19,easeInCubic:20,easeInOutCubic:21,easeOutQuint:22,easeInQuint:23,easeInOutQuint:24,easeOutBack:25,easeInBack:26,easeInOutBack:27,easeOutQuart:28,easeInQuart:29,easeInOutQuart:30,easeLinear:31};C1.Web.UI.Easing.registerEnum("C1.Web.UI.Easing",false);C1.Web.UI.TextImageRelation=function(){};C1.Web.UI.TextImageRelation.prototype={imageBeforeText:0,textBeforeImage:1};C1.Web.UI.TextImageRelation.registerEnum("C1.Web.UI.TextImageRelation",false);C1.Web.UI.Dock=function(){};C1.Web.UI.Dock.prototype={none:0,top:1,left:2,bottom:3,right:4,fill:5};C1.Web.UI.Dock.registerEnum("C1.Web.UI.Dock",false);C1.Web.UI.ScrollOrientation=function(){};C1.Web.UI.ScrollOrientation.prototype={horizontal:0,vertical:1};C1.Web.UI.ScrollOrientation.registerEnum("C1.Web.UI.ScrollOrientation",false);C1.Web.UI.ScrollDirection=function(){};C1.Web.UI.ScrollDirection.prototype={increase:-1,decrease:1};C1.Web.UI.ScrollDirection.registerEnum("C1.Web.UI.ScrollDirection",false);C1.Web.UI.ScrollButtonAlign=function(){};C1.Web.UI.ScrollButtonAlign.prototype={startSide:0,twoSides:1,endSide:2};C1.Web.UI.ScrollButtonAlign.registerEnum("C1.Web.UI.ScrollButtonAlign",false);C1.Web.UI.ScrollMode=function(){};C1.Web.UI.ScrollMode.prototype={none:1,buttons:2,buttonsHover:3,hover:4};C1.Web.UI.ScrollMode.registerEnum("C1.Web.UI.ScrollMode",false);C1.Web.UI.ScrollType=function(){};C1.Web.UI.ScrollType.prototype={none:0,withoutButtons:1,buttonsAtStartSide:2,buttonsAtTwoSides:3,buttonsAtEndSide:4};C1.Web.UI.ScrollType.registerEnum("C1.Web.UI.ScrollType",false);C1.Web.UI.FrameworkStringConstants=function(){};C1.Web.UI.C1RoundCornerPanel=function(a){C1.Web.UI.C1RoundCornerPanel.initializeBase(this,[a])};C1.Web.UI.C1RoundCornerPanel.prototype={$7:null,$8:"div",$9:"div",$A:"div",$B:"div",$C:false,$D:"C1Container",$E:"C1Outer",$F:"C1Inner",$10:"C1Content",get_containerTabName:function(){return this.$8},set_containerTabName:function(a){this.$8=a;return a},get_outerTagName:function(){return this.$9},set_outerTagName:function(a){this.$9=a;return a},get_innerTagName:function(){return this.$A},set_innerTagName:function(a){this.$A=a;return a},get_contentTagName:function(){return this.$B},set_contentTagName:function(a){this.$B=a;return a},get_containerCssClass:function(){return this.$D},set_containerCssClass:function(a){this.$D=a;return a},get_outerCssClass:function(){return this.$E},set_outerCssClass:function(a){this.$E=a;return a},get_innerCssClass:function(){return this.$F},set_innerCssClass:function(a){this.$F=a;return a},get_contentCssClass:function(){return this.$10},set_contentCssClass:function(a){this.$10=a;return a},get_contentElement:function(){this.initialize();if(!this.$7){this.$7=document.createElement(this.get_contentTagName());Sys.UI.DomElement.addCssClass(this.$7,this.get_contentCssClass())}return this.$7},initialize:function(){if(this.$C){return}this.$C=true;C1.Web.UI.C1RoundCornerPanel.callBaseMethod(this,"initialize");if(!this.element){this.$11()}else{this.$7=$get(this.get_id()+"_c-ce")}},$11:function(){this.element=document.createElement(this.get_containerTabName());Sys.UI.DomElement.addCssClass(this.element,this.get_containerCssClass());var b=document.createElement(this.get_outerTagName());Sys.UI.DomElement.addCssClass(b,this.get_outerCssClass());var a=document.createElement(this.get_innerTagName());Sys.UI.DomElement.addCssClass(a,this.get_innerCssClass());a.appendChild(this.get_contentElement());b.appendChild(a);this.element.appendChild(b)},addChild:function(a){this.get_contentElement().appendChild(a)},removeChild:function(a){this.get_contentElement().removeChild(a)}};C1.Web.UI.C1ThemeableControlBase=function(a){this._propertiesState={};C1.Web.UI.C1ThemeableControlBase.initializeBase(this,[a]);this.$2_0=new C1.Web.UI.Interfaces.JsonSerializableHelper(this.get_element().id,this)};C1.Web.UI.C1ThemeableControlBase.prototype={$2_0:null,get_visualStyle:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.VisualStyle))?"":this._propertiesState.VisualStyle},set_visualStyle:function(c){var b=this.get_visualStyle();if(b!==""&&b!==c){var a=new RegExp("("+b+")","g");this._propertiesState.VisualStyle=c;var d=this.get_element().className;d=d.replace(a,c);this.get_element().className=d;this.invalidate()}return c},invalidate:function(){},saveState:function(){this.$2_0.saveState()},get_propertiesState:function(){return this._propertiesState},assignPropertiesState:function(a){this._propertiesState=a},createInstance:function(a){return{}}};C1.Web.UI.C1ThemeHelper=function(){};C1.Web.UI.C1ThemeHelper.registerRunTimeStyleSheet=function(i,a){var h=document.getElementsByTagName("head")[0];var g=h.getElementsByTagName("link");var f=null;for(var e=0;e<g.length;e++){f=g[e];var d=f.getAttribute("id");if(C1.Web.UI.Utils.Common.testIsNull(d)){continue}if(d.endsWith(a)){return}var c=f.getAttribute("type");if(C1.Web.UI.Utils.Common.testIsNull(c)){continue}if(c.toLowerCase()!=="text/css"){continue}var b=f.getAttribute("rel");if(C1.Web.UI.Utils.Common.testIsNull(b)){continue}if(b.toLowerCase()!=="stylesheet"){continue}}f=document.createElement("link");f.setAttribute("type","text/css");f.setAttribute("rel","stylesheet");f.setAttribute("id",a);f.setAttribute("href",i);h.appendChild(f)};C1.Web.UI.C1AjaxHelper=function(a){this.$2=a;(a)["getCallbackValueForServer"]=Function.createDelegate(this,this.$3)};C1.Web.UI.C1AjaxHelper.prototype={$1:null,$2:null,doAjaxRequest:function(c){C1.Web.UI.C1AjaxHelper.$0=++C1.Web.UI.C1AjaxHelper.$0;this.$1=C1.Web.UI.C1AjaxHelper.$0+"|"+c;var b=this.$2.get_id();var a=b+"DoAjaxRequest";window[a]();return C1.Web.UI.C1AjaxHelper.$0},$3:function(){return this.$1}};C1.Web.UI.ContentPanel=function(a){C1.Web.UI.ContentPanel.initializeBase(this,[a])};C1.Web.UI.ContentPanel.prototype={$7:null,$8:null,$9:null,setInnerElementsClassNames:function(a,b,c){this._propertiesState.OuterElementClassName=a;this._propertiesState.InnerElementClassName=b;this._propertiesState.ContentElementClassName=c},get_outerElementClassName:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OuterElementClassName))?"C1Outer":this._propertiesState.OuterElementClassName},set_outerElementClassName:function(a){this._propertiesState.OuterElementClassName=a;return a},get_innerElementClassName:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.InnerElementClassName))?"C1Inner":this._propertiesState.InnerElementClassName},set_innerElementClassName:function(a){this._propertiesState.InnerElementClassName=a;return a},get_contentElementClassName:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ContentElementClassName))?"C1Content":this._propertiesState.ContentElementClassName},set_contentElementClassName:function(a){this._propertiesState.ContentElementClassName=a;return a},get_outerElement:function(){var b=this.element;var a=b.childNodes;for(var c=0;c<a.length;c++){if(a[c].tagName&&a[c].className){if(Sys.UI.DomElement.containsCssClass(a[c],this.get_outerElementClassName())){return a[c]}}}return null},get_innerElement:function(){var b=this.get_outerElement();if(b){var a=b.childNodes;for(var c=0;c<a.length;c++){if(a[c].tagName&&a[c].className){if(Sys.UI.DomElement.containsCssClass(a[c],this.get_innerElementClassName())){return a[c]}}}}return null},get_contentElement:function(){var b=this.get_innerElement();if(b){var a=b.childNodes;for(var c=0;c<a.length;c++){if(a[c].tagName&&a[c].className){if(Sys.UI.DomElement.containsCssClass(a[c],this.get_contentElementClassName())){return a[c]}}}}return null},get_contentUrl:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ContentUrl))?"":this._propertiesState.ContentUrl},set_contentUrl:function(a){this._propertiesState.ContentUrl=a;this.$A(this.get_contentUrl());return a},get_contentFrame:function(){return this.$7},get_visible:function(){return C1.Web.UI.ContentPanel.callBaseMethod(this,"get_visible")},set_visible:function(a){if(this.$7){C1.Web.UI.Utils.Common.setVisible(this.$7,a)}C1.Web.UI.ContentPanel.callBaseMethod(this,"set_visible",[a]);return a},dispose:function(){C1.Web.UI.ContentPanel.callBaseMethod(this,"dispose");if(this.$8){C1.Web.UI.Utils.Common.unListenVisibleState(this.element,this.$8);this.$8=null}},$A:function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)||a===""){if(!C1.Web.UI.Utils.Common.testIsNull(this.$9)){this.get_contentElement().style.overflow=this.$9}}if(!a){return}if(this.isDOMVisible()){if(!this.$7){this.$7=document.createElement("iframe");this.$7.style.height=this.$7.style.width="100%";this.$7.frameBorder="0";this.get_contentElement().appendChild(this.$7)}if(this.$7.src&&this.$7.src===a){}else{this.$9=this.get_contentElement().style.overflow;this.get_contentElement().style.overflow="hidden";this.$7.src=a}}else{if(!this.$7&&a===""){}else{if(!this.$8){this.$8=Function.createDelegate(this,this.$B);C1.Web.UI.Utils.Common.listenVisibleState(this.element,this.$8)}}}},$B:function(b,a){if(a){this.$A(this.get_contentUrl())}}};C1.Web.UI.DockPanel=function(a){C1.Web.UI.DockPanel.initializeBase(this,[a]);Sys.UI.DomElement.addCssClass(a,"dock-panel")};C1.Web.UI.DockPanel.prototype={onResize:function(){if(this.get_visible()){this.invalidate()}},invalidate:function(){var o=new Array(0);var n=new Array(0);var l=new Array(0);var j=new Array(0);var h=0;var f=0;var d=0;var c=0;var b=null;for(var C=0;C<this.get_children().get_count();C++){var B=this.get_children().get_item(C);if(B.get_visible()){var A=this.getDock(B);if(A===1){this.$7(B);this.element.appendChild(B.element);B.invalidate();var z=B.get_offsetSize();h+=z.height}else{if(A===3){o[o.length]=B}else{if(A===5){l[l.length]=B}else{if(A===4){n[n.length]=B}else{if(A===2){j[j.length]=B}}}}}}}for(var y=0;y<o.length;y++){var x=o[y];this.$7(x);this.element.appendChild(x.element);x.addCssClass("c1-float-left");x.invalidate();var w=x.get_offsetSize();f+=w.width}for(var v=0;v<n.length;v++){var u=n[v];this.$7(u);if(!b){b=u}this.element.appendChild(u.element);u.addCssClass("c1-float-right");u.invalidate();var t=u.get_offsetSize();d+=t.width}for(var s=0;s<j.length;s++){var r=j[s];this.$7(r);if(!b){b=r}this.element.appendChild(r.element);r.addCssClass("c1_clear_both");r.invalidate();var q=r.get_offsetSize();c+=q.height}var a=this.get_offsetSize();var E=a.width-(f+d);E=Math.floor(E/l.length);if(E<0){E=0}var D=a.height-(h+c);if(D<0){D=0}for(var p=0;p<l.length;p++){var m=l[p];this.$7(m);if(b){this.element.insertBefore(m.element,b.element)}else{this.element.appendChild(m.element)}m.addCssClass("c1-float-left");C1.Web.UI.Utils.Common.setSize(m.element,new C1.Web.UI.Utils.Size(E,D));m.invalidate()}for(var k=0;k<n.length;k++){var i=n[k];C1.Web.UI.Utils.Common.setHeight(i.element,D)}for(var g=0;g<o.length;g++){var e=o[g];C1.Web.UI.Utils.Common.setHeight(e.element,D)}},addChild:function(b,a){this.get_children().add(b);this.setDock(b,a)},setDock:function(b,a){if(b.get_parent()!==this){throw Error.argument("Element is not a child of this DockPanel.")}(b)["__dockStyle"]=a},getDock:function(b){var a=(b)["__dockStyle"];return(!a||!(a))?5:a},$7:function(a){a.removeCssClass("c1-float-left");a.removeCssClass("c1-float-right");a.removeCssClass("c1_clear_both")}};C1.Web.UI.DOMScrollBehavior=function(a){this.$11=new Sys.UI.Point(0,0);this.$1C=1;this.$1D=1;this.$1E=2;this.$13=a;this.events=new Sys.EventHandlerList();this.$20=Function.createDelegate(this,this.onMouseOver);this.$21=Function.createDelegate(this,this.onMouseOut);this.$22=Function.createDelegate(this,this.onMouseMove);this.$27=Function.createDelegate(this,this.$32);this.$23=Function.createDelegate(this,this.onScrollButtonMouseDown);this.$24=Function.createDelegate(this,this.onScrollButtonMouseUp);this.$25=Function.createDelegate(this,this.onScrollButtonMouseOver);this.$26=Function.createDelegate(this,this.onScrollButtonMouseOut)};C1.Web.UI.DOMScrollBehavior.prototype={$0:"c1-domscrollbutton-top",$1:"c1-domscrollbutton-right",$2:"c1-domscrollbutton-bottom",$3:"c1-domscrollbutton-left",$4:"c1-domscrollbutton-top-active",$5:"c1-domscrollbutton-right-active",$6:"c1-domscrollbutton-bottom-active",$7:"c1-domscrollbutton-left-active",$8:"c1-domscrollbutton-top-disabled",$9:"c1-domscrollbutton-right-disabled",$A:"c1-domscrollbutton-bottom-disabled",$B:"c1-domscrollbutton-left-disabled",$C:false,$D:false,$E:false,$F:0,$10:20,$12:4,$13:null,$14:null,$15:null,$16:null,$17:null,$18:null,$19:null,$1A:null,$1B:null,$1F:false,$20:null,$21:null,$22:null,$23:null,$24:null,$25:null,$26:null,$27:null,$28:function(){C1.Web.UI.Utils.RawEvent.addHandler(this.$13,"mouseover",this.$20);C1.Web.UI.Utils.RawEvent.addHandler(this.$13,"mouseout",this.$21);C1.Web.UI.Utils.RawEvent.addHandler(this.$13,"mousemove",this.$22)},buttonsMarkerHash:null,$29:function(e,d){if(d){this.$2A(d)}if(e){C1.Web.UI.Utils.RawEvent.addHandler(e,"mousedown",this.$23);C1.Web.UI.Utils.RawEvent.addHandler(e,"mouseup",this.$24);C1.Web.UI.Utils.RawEvent.addHandler(e,"mouseover",this.$25);C1.Web.UI.Utils.RawEvent.addHandler(e,"mouseout",this.$26);if(this.buttonsMarkerHash){var c=this.buttonsMarkerHash;for(var b in c){var a={key:b,value:c[b]};(e)[a.key]=a.value}}}},$2A:function(a){C1.Web.UI.Utils.RawEvent.removeHandler(a,"mousedown",this.$23);C1.Web.UI.Utils.RawEvent.removeHandler(a,"mouseup",this.$24);C1.Web.UI.Utils.RawEvent.removeHandler(a,"mouseover",this.$25);C1.Web.UI.Utils.RawEvent.removeHandler(a,"mouseout",this.$26)},$2B:function(){if(this.$1C===1){return}if(this.$1C===5){this.$13.style.overflow="auto";return}else{this.$13.style.overflow="hidden"}if(this.$1C===4){return}if(this.$1D===2||this.$1D===3){this.set_topScrollButton(this.$36());this.$18=new C1.Web.UI.PopupBehavior(this.$14,1,0,0,this.$13);this.$18.markerHash=this.buttonsMarkerHash;this.set_bottomScrollButton(this.$36());this.$1A=new C1.Web.UI.PopupBehavior(this.$16,1,0,0,this.$13);this.$1A.markerHash=this.buttonsMarkerHash}if(this.$1D===1||this.$1D===3){this.set_rightScrollButton(this.$36());this.$19=new C1.Web.UI.PopupBehavior(this.$15,1,0,0,this.$13);this.$19.markerHash=this.buttonsMarkerHash;this.set_leftScrollButton(this.$36());this.$1B=new C1.Web.UI.PopupBehavior(this.$17,1,0,0,this.$13);this.$1B.markerHash=this.buttonsMarkerHash}},dispose:function(){this.$2C()},$2C:function(){if(!this.$1F){return}C1.Web.UI.Utils.RawEvent.removeHandler(this.$13,"mouseover",this.$20);C1.Web.UI.Utils.RawEvent.removeHandler(this.$13,"mouseout",this.$21);C1.Web.UI.Utils.RawEvent.removeHandler(this.$13,"mousemove",this.$22);this.$20=null;this.$21=null;this.$22=null;this.$27=null;this.$2D();this.$1F=false},$2D:function(){this.$2A(this.$14);this.$2A(this.$15);this.$2A(this.$16);this.$2A(this.$17);this.$23=null;this.$24=null;this.$25=null;this.$26=null},get_adjustScrollSpeed:function(){return this.$E},set_adjustScrollSpeed:function(a){this.$E=a;return a},get_fitButtonsBounds:function(){return this.$C},set_fitButtonsBounds:function(a){this.$C=a;return a},get_scrollOrientation:function(){return this.$1D},set_scrollOrientation:function(a){this.$1D=a;this.invalidate();return a},get_scrollMode:function(){return this.$1C},set_scrollMode:function(a){this.$1C=a;return a},get_scrollStep:function(){return this.$12},set_scrollStep:function(a){this.$12=a;return a},get_scrollButtonAlign:function(){return this.$1E},set_scrollButtonAlign:function(a){this.$1E=a;this.invalidate();return a},get_topScrollButton:function(){return this.$14},set_topScrollButton:function(a){this.$29(a,this.$14);this.$14=a;(a)["c1domscrlbtntype"]=1;Sys.UI.DomElement.addCssClass(a,this.$0);return a},get_rightScrollButton:function(){return this.$15},set_rightScrollButton:function(a){this.$29(a,this.$15);this.$15=a;(a)["c1domscrlbtntype"]=2;Sys.UI.DomElement.addCssClass(a,this.$1);return a},get_bottomScrollButton:function(){return this.$16},set_bottomScrollButton:function(a){this.$29(a,this.$16);this.$16=a;(a)["c1domscrlbtntype"]=3;Sys.UI.DomElement.addCssClass(a,this.$2);return a},get_leftScrollButton:function(){return this.$17},set_leftScrollButton:function(a){this.$29(a,this.$17);this.$17=a;(a)["c1domscrlbtntype"]=4;Sys.UI.DomElement.addCssClass(a,this.$3);return a},add_scrollButtonMouseOver:function(a){this.events.addHandler("ScrollButtonMouseOver",a)},remove_scrollButtonMouseOver:function(a){this.events.removeHandler("ScrollButtonMouseOver",a)},$2E:function(b){var a=this.events.getHandler("ScrollButtonMouseOver");if(a){a(this,b)}},initialize:function(){if(this.$1F){return}this.$2B();this.$28();this.$1F=true;this.invalidate()},assignCssClasses:function(b,a,c,d){if(this.$1F){Sys.UI.DomElement.removeCssClass(this.$14,this.$0);Sys.UI.DomElement.removeCssClass(this.$15,this.$1);Sys.UI.DomElement.removeCssClass(this.$16,this.$2);Sys.UI.DomElement.removeCssClass(this.$17,this.$3)}this.$0=b;this.$1=a;this.$2=c;this.$3=d;if(this.$1F){if(this.$14){Sys.UI.DomElement.addCssClass(this.$14,b)}if(this.$15){Sys.UI.DomElement.addCssClass(this.$15,a)}if(this.$16){Sys.UI.DomElement.addCssClass(this.$16,c)}if(this.$17){Sys.UI.DomElement.addCssClass(this.$17,d)}this.invalidate()}},assignActiveCssClasses:function(b,a,c,d){Sys.UI.DomElement.removeCssClass(this.$14,this.$4);Sys.UI.DomElement.removeCssClass(this.$15,this.$5);Sys.UI.DomElement.removeCssClass(this.$16,this.$6);Sys.UI.DomElement.removeCssClass(this.$17,this.$7);this.$4=b;this.$5=a;this.$6=c;this.$7=d;this.invalidate()},assignDisabledCssClasses:function(b,a,c,d){Sys.UI.DomElement.removeCssClass(this.$14,this.$8);Sys.UI.DomElement.removeCssClass(this.$15,this.$9);Sys.UI.DomElement.removeCssClass(this.$16,this.$A);Sys.UI.DomElement.removeCssClass(this.$17,this.$B);this.$8=b;this.$9=a;this.$A=c;this.$B=d;this.invalidate()},assignPropertiesUsingHash:function(a){if(!a){return}if(!C1.Web.UI.Utils.Common.testIsNull(a.ScrollMode)){this.$1C=a.ScrollMode}if(!C1.Web.UI.Utils.Common.testIsNull(a.AdjustScrollSpeed)){this.$E=a.AdjustScrollSpeed}if(!C1.Web.UI.Utils.Common.testIsNull(a.ScrollButtonAlign)){this.$1E=a.ScrollButtonAlign}if(!C1.Web.UI.Utils.Common.testIsNull(a.ScrollOrientation)){this.$1D=a.ScrollOrientation}if(!C1.Web.UI.Utils.Common.testIsNull(a.FitButtonsBounds)){this.$C=a.FitButtonsBounds}if(!C1.Web.UI.Utils.Common.testIsNull(a.ScrollStep)){this.$12=a.ScrollStep}if(!C1.Web.UI.Utils.Common.testIsNull(a.TopButtonCssClass)){this.$0=a.TopButtonCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.TopButtonActiveCssClass)){this.$4=a.TopButtonActiveCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.TopButtonDisabledCssClass)){this.$8=a.TopButtonDisabledCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.RightButtonCssClass)){this.$1=a.RightButtonCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.RightButtonActiveCssClass)){this.$5=a.RightButtonActiveCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.RightButtonDisabledCssClass)){this.$9=a.RightButtonDisabledCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.BottomButtonCssClass)){this.$2=a.BottomButtonCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.BottomButtonActiveCssClass)){this.$6=a.BottomButtonActiveCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.BottomButtonDisabledCssClass)){this.$A=a.BottomButtonDisabledCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.LeftButtonCssClass)){this.$3=a.LeftButtonCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.LeftButtonActiveCssClass)){this.$7=a.LeftButtonActiveCssClass}if(!C1.Web.UI.Utils.Common.testIsNull(a.LeftButtonDisabledCssClass)){this.$B=a.LeftButtonDisabledCssClass}},invalidate:function(){if(!this.$1F){return}if(this.$1C===1||this.$1C===5){return}var b=false;if(C1.Web.UI.Utils.Common.testIsNull(this.$13)||this.$13.style.display==="none"){b=true}if(this.$1C===4||b){if(this.$18){this.$18.hide()}if(this.$19){this.$19.hide()}if(this.$1A){this.$1A.hide()}if(this.$1B){this.$1B.hide()}return}var a=C1.Web.UI.Utils.Measurement.getBounds(this.$13);var d=false;var c=false;switch(this.$1D){case 1:if(this.$C){C1.Web.UI.Utils.Common.setHeight(this.$17,a.height);C1.Web.UI.Utils.Common.setHeight(this.$15,a.height)}d=true;break;case 2:if(this.$C){C1.Web.UI.Utils.Common.setWidth(this.$14,a.width);C1.Web.UI.Utils.Common.setWidth(this.$16,a.width)}c=true;break;case 3:if(this.$C){C1.Web.UI.Utils.Common.setHeight(this.$17,a.height);C1.Web.UI.Utils.Common.setHeight(this.$15,a.height);C1.Web.UI.Utils.Common.setWidth(this.$14,a.width);C1.Web.UI.Utils.Common.setWidth(this.$16,a.width)}d=true;c=true;break}this.$2F(d,c,a);this.updateButtonsState(0)},$2F:function(i,h,g){if(!g){g=C1.Web.UI.Utils.Measurement.getBounds(this.$13)}var f=null;var e=null;var d=null;var c=null;if(i){this.$17.style.display="block";this.$15.style.display="block";d=C1.Web.UI.Utils.Measurement.getBounds(this.$17);c=C1.Web.UI.Utils.Measurement.getBounds(this.$15)}else{}if(h){this.$14.style.display="block";this.$16.style.display="block";f=C1.Web.UI.Utils.Measurement.getBounds(this.$14);e=C1.Web.UI.Utils.Measurement.getBounds(this.$16)}else{}var b=g.width/2;var a=g.height/2;switch(this.$1E){case 1:if(i){this.$1B.set_x(0);this.$1B.set_y(0+Math.round(a-d.height/2));this.$1B.show();this.$19.set_x(d.width);this.$19.set_y(0+Math.round(a-c.height/2));this.$19.show()}if(h){this.$18.set_x(0+Math.round(b-f.width/2));this.$18.set_y(0);this.$18.show();this.$1A.set_x(0+Math.round(b-e.width/2));this.$1A.set_y(f.height);this.$1A.show()}break;case 3:if(i){this.$1B.set_x(g.width-d.width-c.width);this.$1B.set_y(0+Math.round(a-d.height/2));this.$1B.show();this.$19.set_x(g.width-c.width);this.$19.set_y(0+Math.round(a-c.height/2));this.$19.show()}if(h){this.$1A.set_x(0+Math.round(b-e.width/2));this.$1A.set_y(g.height-e.height);this.$1A.show();this.$18.set_x(0+Math.round(b-f.width/2));this.$18.set_y(g.height-f.height-e.height);this.$18.show()}break;case 2:if(i){this.$1B.set_x(0);this.$1B.set_y(0+Math.round(a-d.height/2));this.$1B.show();this.$19.set_x(g.width-c.width);this.$19.set_y(0+Math.round(a-c.height/2));this.$19.show()}if(h){this.$18.set_x(0+Math.round(b-f.width/2));this.$18.set_y(0);this.$18.show();this.$1A.set_x(0+Math.round(b-e.width/2));this.$1A.set_y(g.height-e.height);this.$1A.show()}break}},onResize:function(a){this.invalidate();return true},onMouseOver:function(a){return true},onMouseOut:function(a){this.$F=0;this.$31();return true},onMouseMove:function(k){var j=this.get_scrollButtonAlign();var i=this.get_scrollOrientation();if(this.$1C!==4){return true}var h=C1.Web.UI.Utils.Measurement.getMousePointerPosition(k);var g=C1.Web.UI.Utils.Measurement.getBounds(this.$13);if(!this.$11){this.$11=new Sys.UI.Point(0,0)}var f=false;if(i===1||i===3){var d=new Sys.UI.Bounds(g.x,g.y,this.$10,g.height);var c=new Sys.UI.Bounds(g.x+g.width-this.$10,g.y,this.$10,g.height);if(C1.Web.UI.Utils.Measurement.isPointInsideRect(h,d)){this.$11.x=-this.$12;f=true}else{if(C1.Web.UI.Utils.Measurement.isPointInsideRect(h,c)){this.$11.x=this.$12;f=true}}}if(i===2||i===3){var b=new Sys.UI.Bounds(g.x,g.y,g.width,this.$10);var a=new Sys.UI.Bounds(g.x,g.y+g.height-this.$10,g.width,this.$10);if(C1.Web.UI.Utils.Measurement.isPointInsideRect(h,b)){this.$11.y=-this.$12;f=true}else{if(C1.Web.UI.Utils.Measurement.isPointInsideRect(h,a)){this.$11.y=this.$12;f=true}}}if(f){this.$30(999)}else{this.$F=0;this.$31()}return true},onScrollButtonMouseDown:function(c){var b=C1.Web.UI.Utils.RawEvent.getTarget(c);if(b){if(!C1.Web.UI.Utils.Common.testIsNull((b)["c1domscrlbtntype"])){var a=(b)["c1domscrlbtntype"];this.$30(a)}}return true},onScrollButtonMouseUp:function(a){if(this.$1C===2){this.$F=0;this.$31()}return true},onScrollButtonMouseOver:function(c){if(this.$1C!==2){var b=C1.Web.UI.Utils.RawEvent.getTarget(c);if(b){if(!C1.Web.UI.Utils.Common.testIsNull((b)["c1domscrlbtntype"])){var a=(b)["c1domscrlbtntype"];if(this.$1C===3||this.$1C===4){this.$30(a)}}}}this.$2E(new Sys.EventArgs());return true},onScrollButtonMouseOut:function(a){this.$F=0;this.$31();return true},events:null,$30:function(a){if(a===999){if(this.$1C!==2){this.$D=true}}else{this.$11.x=0;this.$11.y=0;switch(a){case 1:this.$11.y=-this.$12;break;case 2:this.$11.x=this.$12;break;case 3:this.$11.y=this.$12;break;case 4:this.$11.x=-this.$12;break}this.$D=true}this.$32()},$31:function(){this.$11=new Sys.UI.Point(0,0);this.$D=false;if(this.$14){Sys.UI.DomElement.removeCssClass(this.$14,this.$4)}if(this.$15){Sys.UI.DomElement.removeCssClass(this.$15,this.$5)}if(this.$16){Sys.UI.DomElement.removeCssClass(this.$16,this.$6)}if(this.$17){Sys.UI.DomElement.removeCssClass(this.$17,this.$7)}},$32:function(){if(this.$E){this.$F++}var i=this.$13.scrollWidth;var h=this.$13.scrollWidth;var g=this.$13.scrollLeft;var f=this.$13.scrollTop;var e=C1.Web.UI.Utils.Measurement.getBounds(this.$13);var d=i-e.width;var c=h-e.height;var b=this.$11.y;if(b){if(b>0){b+=this.$F;if(this.$16){Sys.UI.DomElement.addCssClass(this.$16,this.$6)}}else{b-=this.$F;if(this.$14){Sys.UI.DomElement.addCssClass(this.$14,this.$4)}}this.$13.scrollTop+=b}var a=this.$11.x;if(a){if(a>0){a+=this.$F;if(this.$15){Sys.UI.DomElement.addCssClass(this.$15,this.$5)}}else{a-=this.$F;if(this.$17){Sys.UI.DomElement.addCssClass(this.$17,this.$7)}}this.$13.scrollLeft+=a}this.updateButtonsState(0);if(this.$D){window.setTimeout(this.$27,10)}else{this.$31()}},updateButtonsState:function(a){if(a>0){this.$34=C1.Web.UI.Utils.Common.clearPendingTimeout(this.$34);if(!this.$33){this.$33=Function.createDelegate(this,this.$35)}this.$34=window.setTimeout(this.$33,a)}else{this.$35()}},$33:null,$34:null,$35:function(){var b=this.$13.scrollWidth;var a=this.$13.scrollHeight;var h=this.$13.scrollLeft;var g=this.$13.scrollTop;var f=C1.Web.UI.Utils.Measurement.getBounds(this.$13);var e=b-f.width;var d=a-f.height;if(this.$14){Sys.UI.DomElement.removeCssClass(this.$14,this.$8)}if(this.$15){Sys.UI.DomElement.removeCssClass(this.$15,this.$9)}if(this.$16){Sys.UI.DomElement.removeCssClass(this.$16,this.$A)}if(this.$17){Sys.UI.DomElement.removeCssClass(this.$17,this.$B)}var c=this.get_scrollOrientation();if(c===1||c===3){if(h>=e){if(this.$15){Sys.UI.DomElement.addCssClass(this.$15,this.$9)}if(this.$11.x>0){this.$D=false}}else{}if(h<=0){if(this.$17){Sys.UI.DomElement.addCssClass(this.$17,this.$B)}if(this.$11.x<0){this.$D=false}}else{}}if(c===2||c===3){if(g>=d){if(this.$16){Sys.UI.DomElement.addCssClass(this.$16,this.$A)}if(this.$11.y>0){this.$D=false}}else{}if(g<=0){if(this.$14){Sys.UI.DomElement.addCssClass(this.$14,this.$8)}if(this.$11.y<0){this.$D=false}}else{}}},$36:function(){var a=document.createElement("DIV");a.style.display="none";this.$13.appendChild(a);return a}};C1.Web.UI.DragDropEventArgs=function(b,a,c){C1.Web.UI.DragDropEventArgs.initializeBase(this);this._element=b;this._dropTarget=a;this._domEvent=c};C1.Web.UI.DragDropEventArgs.prototype={_element:null,_dropTarget:null,_domEvent:null,_handled:false,get_element:function(){return this._element},get_dropTarget:function(){return this._dropTarget},get_domEvent:function(){return this._domEvent},get_handled:function(){return this._handled},set_handled:function(a){this._handled=a;return a}};C1.Web.UI.DragDrop=function(a){C1.Web.UI.DragDrop.initializeBase(this);this._dragHandles=[];this._dropTargets=[];this._element=a;this._docMouseMoveHandler=Function.createDelegate(this,this.onDocMouseMove);this._docMouseUpHandler=Function.createDelegate(this,this.onDocMouseUp);this._mouseDownHandler=Function.createDelegate(this,this.onMouseDown);this._draghandleMouseDownHandler=Function.createDelegate(this,this.onMouseDown)};C1.Web.UI.DragDrop.prototype={_element:null,_dragVisual:null,$1_0:false,$1_1:false,$1_2:false,_dragHandles:null,_dropTargets:null,_dragInProgress:false,_init:false,_dragElementVisibility:"hidden",_dragElementDisplay:"none",_originalDisplay:"",_docMouseMoveHandler:null,_docMouseUpHandler:null,_mouseDownHandler:null,_draghandleMouseDownHandler:null,initialize:function(){C1.Web.UI.DragDrop.callBaseMethod(this,"initialize");this._init=true;Sys.UI.DomEvent.addHandler(this.get_element(),"mousedown",this._mouseDownHandler)},dispose:function(){if(this._init&&this._mouseDownHandler&&this.get_element()){Sys.UI.DomEvent.removeHandler(this.get_element(),"mousedown",this._mouseDownHandler)}for(var a=0;a<this._dragHandles.length;a++){Sys.UI.DomEvent.removeHandler(this._dragHandles[a],"mousedown",this._draghandleMouseDownHandler)}C1.Web.UI.DragDrop.callBaseMethod(this,"dispose")},get_element:function(){return this._element},get_isDragInProgress:function(){return this._dragInProgress},get_dragElementVisibility:function(){return this._dragElementVisibility},set_dragElementVisibility:function(a){this._dragElementVisibility=a;return a},get_dragElementDisplay:function(){return this._dragElementDisplay},set_dragElementDisplay:function(a){this._dragElementDisplay=a;return a},get_dragVisual:function(){return this._dragVisual},set_dragVisual:function(a){this._dragVisual=a;return a},get_useElementAsDragVisual:function(){return this.$1_0},set_useElementAsDragVisual:function(a){this.$1_0=a;if(a){this.set_dragVisual(this.get_element())}return a},get_useModalLayer:function(){return this.$1_1},set_useModalLayer:function(a){this.$1_1=a;return a},get_startDragOnMouseMove:function(){return this.$1_2},set_startDragOnMouseMove:function(a){this.$1_2=a;return a},setDragHandle:function(a){if(this._mouseDownHandler){Sys.UI.DomEvent.removeHandler(this.get_element(),"mousedown",this._mouseDownHandler);this._mouseDownHandler=null}this._dragHandles[this._dragHandles.length]=a;Sys.UI.DomEvent.addHandler(a,"mousedown",this._draghandleMouseDownHandler)},setDropTarget:function(a){this._dropTargets[this._dropTargets.length]=a},beginDrag:function(a){this.onMouseDown(a)},getDropTargetAtPoint:function(c){var b=null;var a=this._dropTargets.length;for(var d=0;d<a;d++){if(C1.Web.UI.Utils.Measurement.isPointOverDOMElement(c,this._dropTargets[d])){b=this._dropTargets[d];break}}return b},onDragStart:function(b){var a=this.get_events().getHandler("dragstart");if(a){a(this,new C1.Web.UI.DragDropEventArgs(this.get_element(),null,b))}},onDrag:function(b){var a=this.get_events().getHandler("drag");if(a){a(this,new C1.Web.UI.DragDropEventArgs(this.get_element(),null,b))}},onDragOver:function(b,c){var a=this.get_events().getHandler("dragOver");if(a){a(this,new C1.Web.UI.DragDropEventArgs(this.get_element(),c,b))}},onDropped:function(b){var a=this.get_events().getHandler("drop");if(a){a(this,b)}},add_dragStart:function(a){this.get_events().addHandler("dragstart",a)},remove_dragStart:function(a){this.get_events().removeHandler("dragstart",a)},add_drag:function(a){this.get_events().addHandler("drag",a)},remove_drag:function(a){this.get_events().removeHandler("drag",a)},add_dragOver:function(a){this.get_events().addHandler("dragOver",a)},remove_dragOver:function(a){this.get_events().removeHandler("dragOver",a)},add_dropped:function(a){this.get_events().addHandler("drop",a)},remove_dropped:function(a){this.get_events().removeHandler("drop",a)},$1_3:null,_dragXOffset:0,_dragYOffset:0,$1_4:false,onMouseDown:function(b){if(this._dragInProgress){return}this._dragInProgress=true;Sys.UI.DomEvent.addHandler(document,"mouseup",this._docMouseUpHandler);Sys.UI.DomEvent.addHandler(document,"mousemove",this._docMouseMoveHandler);this.$1_4=false;if(!this.$1_2){var a=C1.Web.UI.Utils.Measurement.getMousePointerPosition(b.rawEvent);this.$1_5(a);this.onDragStart(b);this.$1_6()}b.preventDefault()},$1_5:function(a){if(this.get_useModalLayer()){C1.Web.UI.Utils.Common.showModalLayer(this.get_element(),false)}this.$1_3=C1.Web.UI.Utils.Measurement.getLocation(this.get_element());this._dragXOffset=a.x-this.$1_3.x;this._dragYOffset=a.y-this.$1_3.y;if(!this.get_dragVisual()){if(this.get_useElementAsDragVisual()){this.set_dragVisual(this.get_element())}else{this.set_dragVisual(this.get_element().cloneNode(true))}this.get_dragVisual().style.visibility="hidden"}},$1_6:function(){this.$1_4=true;if(!this.get_dragVisual().parentNode){document.body.appendChild(this.get_dragVisual())}this.get_dragVisual().style.visibility="visible";this._originalDisplay=this.get_element().style.display;if(!this.get_useElementAsDragVisual()){this.get_element().style.visibility=this.get_dragElementVisibility();this.get_element().style.display=this.get_dragElementDisplay()}this.get_dragVisual().style.position="absolute"},$1_7:false,$1_8:function(){if(this._dragInProgress){this.$1_6()}},onDocMouseMove:function(c){try{if(!this.$1_4){if(this.$1_7){c.preventDefault();return}this.$1_7=true;this.$1_5(C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent));this.onDragStart(c);window.setTimeout(Function.createDelegate(this,this.$1_8),1);c.preventDefault();return}this.$1_7=false;if(this.get_isDragInProgress()){var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);var a=b.x-this._dragXOffset;var f=b.y-this._dragYOffset;if(f<0){f=0}if(a<0){a=0}this.setLocation(this.get_dragVisual(),a,f);var e=this._dropTargets.length;if(!e){this.onDrag(c)}else{this.onDragOver(c,this.getDropTargetAtPoint(b))}c.preventDefault()}}catch(d){}},onDocMouseUp:function(c){this._dragInProgress=false;Sys.UI.DomEvent.removeHandler(document,"mousemove",this._docMouseMoveHandler);Sys.UI.DomEvent.removeHandler(document,"mouseup",this._docMouseUpHandler);C1.Web.UI.Utils.Common.hideModalLayer();var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);var a=new C1.Web.UI.DragDropEventArgs(this.get_element(),this.getDropTargetAtPoint(b),c);this.onDropped(a);if(this.get_useElementAsDragVisual()){}else{if(!a.get_handled()){b=C1.Web.UI.Utils.Measurement.getLocation(this.get_dragVisual());this.setLocation(this.get_element(),b.x,b.y)}}this.get_element().style.visibility="visible";this.get_element().style.display=this._originalDisplay;if(this.get_useElementAsDragVisual()){}else{this.get_dragVisual().style.visibility="hidden";if(this.get_dragVisual().parentNode){this.get_dragVisual().parentNode.removeChild(this.get_dragVisual())}}},setLocation:function(b,a,c){Sys.UI.DomElement.setLocation(b,a,c)}};C1.Web.UI.FlowPanel=function(a){C1.Web.UI.FlowPanel.initializeBase(this,[a])};C1.Web.UI.FlowPanel.setFlowPanelOrientation=function(j,b,d){var i="";var h="";if(Sys.UI.DomElement.containsCssClass(j,"c1-h-flow-right")){i="c1-h-flow-right";h="c1-h-child-right"}else{if(Sys.UI.DomElement.containsCssClass(j,"c1-h-flow")){i="c1-h-flow";h="c1-h-child"}else{if(Sys.UI.DomElement.containsCssClass(j,"c1-v-flow-right")){i="c1-v-flow-right";h="c1-v-child-right"}else{if(Sys.UI.DomElement.containsCssClass(j,"c1-v-flow")){i="c1-v-flow";h="c1-v-child"}else{}}}}var g="";var f="";if(!b){if(d){g="c1-h-flow-right";f="c1-h-child-right"}else{g="c1-h-flow";f="c1-h-child"}}else{if(d){g="c1-v-flow-right";f="c1-v-child-right"}else{g="c1-v-flow";f="c1-v-child"}}Sys.UI.DomElement.removeCssClass(j,i);Sys.UI.DomElement.addCssClass(j,g);var e=j.childNodes;for(var c=0;c<e.length;c++){var a=e[c];if(a.tagName&&a.className){Sys.UI.DomElement.removeCssClass(a,h);Sys.UI.DomElement.addCssClass(a,f)}}};C1.Web.UI.FlowPanel.determineOrientation=function(b){var a=" "+b.className+"";if(a.indexOf("c1-h-flow")!==-1){return 0}else{return 1}};C1.Web.UI.FlowPanel.prototype={get_flowRight:function(){if(Sys.UI.DomElement.containsCssClass(this.element,"c1-h-flow-right")){return true}if(Sys.UI.DomElement.containsCssClass(this.element,"c1-v-flow-right")){return true}return false},set_flowRight:function(a){if(this.get_flowRight()!==a){C1.Web.UI.FlowPanel.setFlowPanelOrientation(this.element,this.get_orientation(),a)}return a},get_orientation:function(){return C1.Web.UI.FlowPanel.determineOrientation(this.element)},set_orientation:function(a){if(this.get_orientation()!==a){C1.Web.UI.FlowPanel.setFlowPanelOrientation(this.element,a,this.get_flowRight())}return a}};C1.Web.UI.PopupBehavior=function(c,d,a,e,b){if(!c.parentNode||!c.parentNode.tagName){document.body.appendChild(c)}this.events=new Sys.EventHandlerList();this.element=c;if(a&&a>0){this.x=a}else{this.x=0}if(e&&e>0){this.y=e}else{this.y=0}if(!d){this.$13=1}else{this.$13=d}if(b){this.$14=b}else{this.$14=null}this.$15=null;this.$16=false;this.$0()};C1.Web.UI.PopupBehavior.prototype={_showAnimation_StoppedDelegate:null,_hideAnimation_StoppedDelegate:null,element:null,markerHash:null,$0:function(){this.$7();this.element.style.position="absolute"},dispose:function(){var a=this.element;if(a){if(this.$16){this.hide()}a.hideWindowedElementsIFrame=null}this.$14=null;this.element=null},$1:false,$2:false,get_autoHide:function(){return this.$1},set_autoHide:function(a){this.$1=a;return a},getMouseEvent:function(){if(Sys.Browser.agent===Sys.Browser.InternetExplorer){if(C1.Web.UI.Utils.Common.testIsNull(window.event)){return null}return new Sys.UI.DomEvent(window.event)}var b=this.getMouseEvent.caller;while(!C1.Web.UI.Utils.Common.testIsNull(b)){var a=(b.arguments)[0];if(!C1.Web.UI.Utils.Common.testIsNull(b)){if(a.constructor==="MouseEvent"){return new Sys.UI.DomEvent(a)}}b=b.caller}return null},$3:null,$4:function(b){if(C1.Web.UI.Utils.Common.testIsNull(b)){b=new Sys.UI.DomEvent(window.event)}if(this.$2){this.$2=false;return}var a=(C1.Web.UI.Utils.Common.testIsNull(b.target))?b.rawEvent.srcElement:b.target;if(this.get_visible()&&this.get_autoHide()){if(!C1.Web.UI.Utils.Common.elementContains(this.element,a)){this.hide()}}},$5:function(){this.$2=true;this.$3=Function.createDelegate(this,this.$4);Sys.UI.DomEvent.addHandler(document,"mouseup",this.$3)},$6:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.$3)){Sys.UI.DomEvent.removeHandler(document,"mouseup",this.$3);this.$3=null}},setupPopup:function(){var b=this.element;var a=this.getBounds();Sys.UI.DomElement.setLocation(b,a.x,a.y);this.addBackgroundIFrame();if(this.$14){this.setZIndexOnTop(this.$14)}else{b.style.zIndex=1000}},$7:function(){var a=this.element;C1.Web.UI.Utils.Common.setVisible(a,false);if(a.originalWidth){a.style.width=a.originalWidth+"px";a.originalWidth=null}},$8:function(){var b=this.element;if(this.$15){Sys.UI.DomEvent.removeHandler(b,"move",this.$15);this.$15=null}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var a=b._hideWindowedElementsIFrame;if(a){a.style.display="none"}}this.$C(Sys.EventArgs.Empty)},adjustPopupPosition:function(c){var b=this.element;if(!c){c=this.getBounds()}var a=C1.Web.UI.Utils.Measurement.getBounds(b);var d=false;if(a.x<0){c.x-=a.x;d=true}if(a.y<0){c.y-=a.y;d=true}if(d){Sys.UI.DomElement.setLocation(b,c.x,c.y)}else{}},addBackgroundIFrame:function(){var b=this.element;var a=null;if((Sys.Browser.agent===Sys.Browser.InternetExplorer)&&(Sys.Browser.version<7)){a=b._hideWindowedElementsIFrame;if(!a){a=document.createElement("iframe");a.style.position="absolute";a.style.display="none";a.scrolling="no";a.frameBorder="0";a.tabIndex=-1;a.style.filter="progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";b.parentNode.insertBefore(a,b);b._hideWindowedElementsIFrame=a;this.$15=Function.createDelegate(this,this.$F);Sys.UI.DomEvent.addHandler(b,"move",this.$15)}C1.Web.UI.Utils.Common.setBounds(a,C1.Web.UI.Utils.Measurement.getBounds(b));a.style.display=b.style.display;a.style.left=b.style.left;a.style.top=b.style.top;if(b.currentStyle){a.style.zIndex=(b.currentStyle.zIndex-1)}else{a.style.zIndex=(b.style.zIndex-1)}}},show:function(){if(this.$16){this.setupPopup();return}var b=new Sys.CancelEventArgs();this.$9(b);if(b.get_cancel()){return}if(this.get_autoHide()){this.$5()}this.$16=true;var a=this.element;Sys.UI.DomElement.addCssClass(a,"c1-transparent");C1.Web.UI.Utils.Common.setVisible(a,true);this.setupPopup();Sys.UI.DomElement.removeCssClass(a,"c1-transparent");this.$E(Sys.EventArgs.Empty);if(this.$19){this.$10()}else{Sys.UI.DomElement.removeCssClass(a,"c1-transparent");this.$A(Sys.EventArgs.Empty)}},showAt:function(a){this.set_x(a.x);this.set_y(a.y);this.show()},hide:function(){if(!this.$16){return}var a=new Sys.CancelEventArgs();this.$B(a);if(a.get_cancel()){return}this.$6();this.$16=false;if(this.$1A){this.$11()}else{this.$7();this.$8()}},getBounds:function(){var i=this.element;var h=i.offsetParent;if(!h){h=document.documentElement}var g={x:0,y:0};var f;var e=new Sys.UI.Point(0,0);if(this.$14){f=C1.Web.UI.Utils.Measurement.getBounds(this.$14);e=C1.Web.UI.Utils.Measurement.getLocation(h);g={x:f.x-e.x,y:f.y-e.y}}else{f=C1.Web.UI.Utils.Measurement.getBounds(h)}var d=C1.Web.UI.Utils.Measurement.getBounds(i);var c=d.width;var b=d.height;var a;switch(this.$13){case 2:a={x:Math.round(f.width/2-(c/2)),y:Math.round(f.height/2-(b/2))};break;case 3:a={x:0,y:-b};break;case 4:a={x:f.width-c,y:-b};break;case 5:a={x:Math.round(f.width/2-(c/2)),y:-b};break;case 6:a={x:f.width,y:0};break;case 7:a={x:f.width,y:f.height-b};break;case 8:a={x:f.width,y:Math.round(f.height/2-(b/2))};break;case 9:a={x:0,y:f.height};break;case 10:a={x:f.width-c,y:f.height};break;case 11:a={x:Math.round(f.width/2-(c/2)),y:f.height};break;case 12:a={x:-c,y:0};break;case 13:a={x:-c,y:f.height-b};break;case 14:a={x:-c,y:Math.round(f.height/2-(b/2))};break;default:a={x:0,y:0};break}a.x=a.x+this.x+g.x;a.y=a.y+this.y+g.y;var l=new Sys.UI.Bounds(a.x,a.y,c,b);if(this.$17){var k=C1.Web.UI.Utils.Measurement.getWindowClientAreaBounds();var j=new Sys.UI.Bounds(l.x+e.x,l.y+e.y,l.width,l.height);if(j.x<k.x){if(this.$18&&(this.$13===12||this.$13===14||this.$13===13)){l.x=l.x+f.width+l.width}else{l.x=k.x}}if(j.y<k.y){if(this.$18&&(this.$13===3||this.$13===5||this.$13===4)){l.y=l.y+f.height+l.height}else{l.y=k.y}}if((j.x+j.width)>(k.x+k.width)){if(this.$18&&(this.$13===6||this.$13===8||this.$13===7)){l.x=l.x-f.width-l.width}else{l.x-=((j.x+j.width)-(k.x+k.width))}}if((j.y+j.height)>(k.y+k.height)){if(this.$18&&(this.$13===9||this.$13===11||this.$13===10)){l.y=l.y-f.height-l.height}else{l.y-=((j.y+j.height)-(k.y+k.height))}}}return l},setZIndex:function(b){var c=this.element;c.style.zIndex=b;var a=c._hideWindowedElementsIFrame;if(a){if(c.currentStyle){a.style.zIndex=(c.currentStyle.zIndex-1)}else{a.style.zIndex=(c.style.zIndex-1)}}},setZIndexOnTop:function(a){var b=C1.Web.UI.Utils.Common.getMaxZIndex(a)+2;if(b>C1.Web.UI.PopupBehavior.$12){C1.Web.UI.PopupBehavior.$12=b}else{b=++C1.Web.UI.PopupBehavior.$12}this.setZIndex(b)},get_parentElement:function(){return this.$14},set_parentElement:function(a){this.$14=a;this.adjustZIndex();return a},get_windowCollisionDetection:function(){return this.$17},set_windowCollisionDetection:function(a){this.$17=a;return a},get_strictDock:function(){return this.$18},set_strictDock:function(a){this.$18=a;return a},get_positionMode:function(){return this.$13},set_positionMode:function(a){this.$13=a;this.adjustPositionMode();return a},get_x:function(){return this.x},set_x:function(a){if(a!==this.x){this.x=a;if(this.$16){this.setupPopup()}}return a},get_y:function(){return this.y},set_y:function(a){if(a!==this.y){this.y=a;if(this.$16){this.setupPopup()}}return a},get_visible:function(){return this.$16},get_showAnimation:function(){return this.$19},set_showAnimation:function(a){this.$19=a;return a},get_hideAnimation:function(){return this.$1A},set_hideAnimation:function(a){this.$1A=a;return a},add_showing:function(a){this.events.addHandler("showing",a)},remove_showing:function(a){this.events.removeHandler("showing",a)},$9:function(b){var a=this.events.getHandler("showing");if(a){a(this,b)}},add_shown:function(a){this.events.addHandler("shown",a)},remove_shown:function(a){this.events.removeHandler("shown",a)},$A:function(h){if(this.markerHash){var e=this.element;var d=e._hideWindowedElementsIFrame;var c=null;if(d){c=this.$D(d)}var i=this.markerHash;for(var g in i){var b={key:g,value:i[g]};(e)[b.key]=b.value;if(d){(d)[b.key]=b.value;try{if(c){(c)[b.key]=b.value;if(c.body){(c.body)[b.key]=b.value}}}catch(a){}}}}var f=this.events.getHandler("shown");if(f){f(this,h)}},add_hiding:function(a){this.events.addHandler("hiding",a)},remove_hiding:function(a){this.events.removeHandler("hiding",a)},$B:function(b){var a=this.events.getHandler("hiding");if(a){a(this,b)}},add_hidden:function(a){this.events.addHandler("hidden",a)},remove_hidden:function(a){this.events.removeHandler("hidden",a)},$C:function(b){var a=this.events.getHandler("hidden");if(a){a(this,b)}},$D:function(b){try{if((b)["contentDocument"]){return b.contentDocument}else{if(b.contentWindow){return b.contentWindow.document}else{if((b)["document"]){return(b)["document"]}}}}catch(a){}return null},add_setupPopupDone:function(a){this.events.addHandler("SetupPopup",a)},remove_setupPopupDone:function(a){this.events.removeHandler("SetupPopup",a)},$E:function(b){var a=this.events.getHandler("SetupPopup");if(a){a(this,b)}},adjustZIndex:function(){},adjustPositionMode:function(){},$F:function(c){var b=this.element;var a=b._hideWindowedElementsIFrame;if(a){b.parentNode.insertBefore(a,b);a.style.top=b.style.top;a.style.left=b.style.left}},$10:function(){if(!this.$19){return}if(!this._showAnimation_StoppedDelegate){this._showAnimation_StoppedDelegate=Function.createDelegate(this,this._showAnimation_Stopped)}this.$19.set_endHandler(this._showAnimation_StoppedDelegate);if(this.$1A&&this.$1A.get_isAnimating()){this.$1A.stop()}if(this.$19&&this.$19.get_isAnimating()){this.$19.stop()}this.$19.start(1)},$11:function(){if(!this.$1A){return}this.$1A.start(1);if(!this._hideAnimation_StoppedDelegate){this._hideAnimation_StoppedDelegate=Function.createDelegate(this,this._hideAnimation_Stopped)}this.$1A.set_endHandler(this._hideAnimation_StoppedDelegate)},_showAnimation_Stopped:function(a,b){this.$19.set_endHandler(null);C1.Web.UI.Utils.Common.setVisible(this.element,true);this.setupPopup();this.$A(Sys.EventArgs.Empty)},_hideAnimation_Stopped:function(a,b){this.$1A.set_endHandler(null);this.$7();this.$8()},x:0,y:0,$13:0,$14:null,$15:null,$16:false,$17:true,$18:false,$19:null,$1A:null,events:null,beginUpdate:function(){},endUpdate:function(){}};C1.Web.UI.C1Rounder=function(a){C1.Web.UI.C1Rounder.initializeBase(this,[a]);this._element=a;this._container=document.createElement("span");this._borderTop=document.createElement("b");this._borderBottom=document.createElement("b")};C1.Web.UI.C1Rounder.prototype={_element:null,_container:null,_borderTop:null,_borderBottom:null,_roundTopLeft:true,_roundTopRight:true,_roundBottomLeft:true,_roundBottomRight:true,_minorRadius:15,_mayorRadius:15,_borderColor:"#ccc",_backgroundColor:"#c2c2c2",initialize:function(){C1.Web.UI.C1Rounder.callBaseMethod(this,"initialize")},drowBorder:function(){this._container.style.borderColor=this._borderColor;this._container.style.borderLeftWidth="1px";this._container.style.borderRightWidth="1px";this._container.style.borderTopWidth="0px";this._container.style.borderBottomWidth="0px";this._container.style.borderStyle="solid";this._container.style.display="block";this._container.style.backgroundColor=this._backgroundColor;this._element.parentNode.replaceChild(this._container,this._element);this._container.appendChild(this._element);this.$2_0();this.$2_1()},$2_0:function(){var a=1;this._borderTop=document.createElement("b");this._borderTop.id="c1rounder_toplayer_"+a.toString();this._borderTop.style.display="block";this._borderTop.style.backgroundColor="transparent";a++;this._container.parentNode.insertBefore(this._borderTop,this._container);this.$2_2(a,this._minorRadius,0)},$2_1:function(){var b=1;this._borderBottom=document.createElement("b");this._borderBottom.id="c1rounder_bottomlayer_"+b.toString();this._borderBottom.style.display="block";this._borderBottom.style.backgroundColor="transparent";b++;var a=this._container.nextSibling;if(a){this._container.parentNode.insertBefore(this._borderBottom,a)}else{this._container.parentNode.appendChild(this._borderBottom)}this.$2_3(b,this._minorRadius,0)},$2_2:function(f,d,c){var b=Sys.UI.DomElement.getElementById("c1rounder_toplayer_"+(f-1).toString(),this._borderTop);var a=document.createElement("b");a.id="c1rounder_toplayer_"+f.toString();var g=Math.ceil(this.$2_5(f,d));var e=1;this.$2_7(a,e);a.style.backgroundColor=this._backgroundColor;a.style.display="block";a.style.fontSize="1px";a.style.overflow="hidden";a.style.borderColor=this._borderColor;a.style.borderStyle="solid";a.style.borderTopWidth="0px";a.style.borderBottomWidth="0px";a.style.borderLeftWidth="1px";a.style.borderRightWidth="1px";if(f===d){a.style.backgroundColor=this._borderColor}if(this._roundTopLeft){a.style.borderLeftWidth=(g-c).toString()+"px";if(!(g-c)){a.style.borderLeftWidth="1px"}a.style.marginLeft=c.toString()+"px"}if(this._roundTopRight){a.style.borderRightWidth=(g-c).toString()+"px";if(!(g-c)){a.style.borderRightWidth="1px"}a.style.marginRight=c.toString()+"px"}if(b){this._borderTop.insertBefore(a,b)}else{this._borderTop.appendChild(a)}f++;if(f<=d){this.$2_2(f,d,g)}},$2_3:function(e,d,c){var b=document.createElement("b");b.id="c1rounder_bottomlayer_"+e.toString();var a=Math.ceil(this.$2_5(e,d));var f=1;this.$2_7(b,f);b.style.backgroundColor=this._backgroundColor;b.style.display="block";b.style.fontSize="1px";b.style.overflow="hidden";b.style.borderColor=this._borderColor;b.style.borderStyle="solid";b.style.borderTopWidth="0px";b.style.borderBottomWidth="0px";b.style.borderLeftWidth="1px";b.style.borderRightWidth="1px";if(e===d){b.style.backgroundColor=this._borderColor}if(this._roundBottomLeft){b.style.borderLeftWidth=(a-c).toString()+"px";if(!(a-c)){b.style.borderLeftWidth="1px"}b.style.marginLeft=c.toString()+"px"}if(this._roundBottomRight){b.style.borderRightWidth=(a-c).toString()+"px";if(!(a-c)){b.style.borderRightWidth="1px"}b.style.marginRight=c.toString()+"px"}this._borderBottom.appendChild(b);e++;if(e<=d){this.$2_3(e,d,a)}},$2_4:function(b,a){return Math.asin(b/a)},$2_5:function(b,a){return this._mayorRadius-this._mayorRadius*Math.cos(this.$2_4(b,a))},$2_6:function(b,a){b.style.width=a.toString()+"px"},$2_7:function(b,a){b.style.height=a.toString()+"px"},get_minorRadius:function(){return this._minorRadius},set_minorRadius:function(a){this._minorRadius=a;return a},get_mayorRadius:function(){return this._mayorRadius},set_mayorRadius:function(a){this._mayorRadius=a;return a},get_borderColor:function(){return this._borderColor},set_borderColor:function(a){this._borderColor=a;return a},get_backgroundColor:function(){return this._backgroundColor},set_backgroundColor:function(a){this._backgroundColor=a;return a},get_roundTopLeft:function(){return this._roundTopLeft},set_roundTopLeft:function(a){this._roundTopLeft=a;return a},get_roundTopRight:function(){return this._roundTopRight},set_roundTopRight:function(a){this._roundTopRight=a;return a},get_roundBottomLeft:function(){return this._roundBottomLeft},set_roundBottomLeft:function(a){this._roundBottomLeft=a;return a},get_roundBottomRight:function(){return this._roundBottomRight},set_roundBottomRight:function(a){this._roundBottomRight=a;return a}};C1.Web.UI.ScrollBehavior=function(b,a,c,d){C1.Web.UI.ScrollBehavior.initializeBase(this);if(!b||typeof(a)==="undefined"){throw Error.argumentNull("parameter null")}if(typeof(c)==="undefined"){c=true}if(typeof(d)==="undefined"){d=false}this.$1_0=b;this.$1_2=a;this.$1_D=true;if(!d){this.$1_1=this.$1_0.parentNode}else{this.$1_1=this.$1_1C();this.$1_D=false}this.$1_0.style.position="relative";this.$1_3=2;this.$1_4=0;this.$1_5=false;this.$1_E=0;this.$1_11=true;this.$1_12="decButton";this.$1_13="decButtonDisabled";this.$1_14="incButton";this.$1_15="incButtonDisabled";this.$1_7=null;this.$1_8=1;this.$1_9=1;this.$1_A=1;this.$1_B=false;this.$1_6=c;this.$1_C=18;this.$1_1A=Function.createDelegate(this,this.$1_26);this.$1_16=Function.createDelegate(this,this.$1_21);this.$1_17=Function.createDelegate(this,this.$1_22);this.$1_18=Function.createDelegate(this,this.$1_23);this.$1_19=Function.createDelegate(this,this.$1_25);this.$1_1B=Function.createDelegate(this,this.$1_27);Sys.UI.DomEvent.addHandler(this.$1_1,"resize",this.$1_1A);if(!this.$1_6){Sys.UI.DomEvent.addHandler(this.$1_1,"mousemove",this.$1_1B);Sys.UI.DomEvent.addHandler(this.$1_1,"mouseout",this.$1_19)}this.initialize()};C1.Web.UI.ScrollBehavior.prototype={$1_0:null,$1_1:null,_decButton:null,_incButton:null,$1_2:0,$1_3:0,$1_4:0,$1_5:false,$1_6:false,$1_7:null,$1_8:0,$1_9:0,$1_A:0,$1_B:false,$1_C:0,$1_D:false,$1_E:0,$1_F:0,$1_10:0,$1_11:false,$1_12:null,$1_13:null,$1_14:null,$1_15:null,$1_16:null,$1_17:null,$1_18:null,$1_19:null,$1_1A:null,$1_1B:null,initialize:function(){if(this.get_isInitialized()){return}this.$1_20();this.$1_29();this.$1_28();this.$1_2C();this.$1_2E();this.$1_32();C1.Web.UI.ScrollBehavior.callBaseMethod(this,"initialize")},$1_1C:function(){var b=this.$1_0.parentNode;var a=document.createElement("div");a.appendChild(this.$1_0);a.style.position="relative";a.align="left";b.appendChild(a);if(!this.get_orientation()){var e=0;for(var d=0;d<this.$1_0.childNodes.length;d++){if(this.$1_0.childNodes[d].nodeType===1){e+=this.$1_0.childNodes[d].offsetWidth}}this.$1_0.style.width=(e+3)+"px";a.style.width="100%"}else{a.style.styleFloat="left";a.style.cssFloat="left";var c=this.$1_0.style.display;this.$1_0.style.display="none";if(b.parentNode){b=b.parentNode}a.style.height=b.offsetHeight+"px";this.$1_0.style.display=c}return a},$1_1D:function(){if(this.$1_D){return}var a=this.$1_1.parentNode;a.appendChild(this.$1_0);this.$1_0.style.width="100%";a.removeChild(this.$1_1);this.$1_1=null},dispose:function(){if(this.$1_7){this.$1_7.dispose();this.$1_7=null}if(this._decButton){this.$1_1.removeChild(this._decButton)}if(this._incButton){this.$1_1.removeChild(this._incButton)}Sys.UI.DomEvent.removeHandler(this.$1_1,"resize",this.$1_1A);if(!this.$1_6){Sys.UI.DomEvent.removeHandler(this.$1_1,"mousemove",this.$1_1B);Sys.UI.DomEvent.removeHandler(this.$1_1,"mouseout",this.$1_19)}this.$1_1D();C1.Web.UI.ScrollBehavior.callBaseMethod(this,"dispose")},changeButtonClasses:function(d,c,b,a){this.$1_12=d;this.$1_13=c;this.$1_14=b;this.$1_15=a;this.$1_2E();this.$1_2D()},get_element:function(){return this.$1_0},get_value:function(){return this.$1_E},set_value:function(a){this.$1_2F(a);return a},get_minimum:function(){return this.$1_F},set_minimum:function(a){this.$1_F=Math.min(a,this.$1_10);return a},get_maximum:function(){return this.$1_10},set_maximum:function(a){this.$1_10=Math.max(a,this.$1_F);return a},get_orientation:function(){return this.$1_2},get_decButtonClass:function(){return this.$1_12},get_decButtonDisabledClass:function(){return this.$1_13},get_incButtonClass:function(){return this.$1_14},get_incButtonDisabledClass:function(){return this.$1_15},get_enabled:function(){return this.$1_11},set_enabled:function(a){this.$1_11=a;return a},get_buttonHoverScroll:function(){return this.$1_5},set_buttonHoverScroll:function(a){if(a!==this.$1_5){this.$1_5=a}return a},get_scrollStep:function(){return this.$1_9},set_scrollStep:function(a){this.$1_9=Math.min(10,Math.max(1,a));return a},get_buttonAlign:function(){return this.$1_3},set_buttonAlign:function(a){if(a!==this.$1_3){this.$1_3=a;this.$1_E=0;this.$1_2D()}return a},get_buttonGap:function(){return this.$1_4},set_buttonGap:function(a){if(a<0){a=0}if(a!==this.$1_4){this.$1_4=a;this.$1_2D()}return a},get_isScrolling:function(){return(this.$1_7&&this.$1_7.get_enabled())},add_scrollStart:function(a){this.get_events().addHandler("scrollstart",a)},remove_scrollStart:function(a){this.get_events().removeHandler("scrollstart",a)},$1_1E:function(b){var a=this.get_events().getHandler("scrollstart");if(a){a(this,b)}},add_scrollStop:function(a){this.get_events().addHandler("scrollstop",a)},remove_scrollStop:function(a){this.get_events().removeHandler("scrollstop",a)},$1_1F:function(b){var a=this.get_events().getHandler("scrollstop");if(a){a(this,b)}},$1_20:function(){if(!this.$1_1){return}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){this.$1_1.style.overflow="visible";if(!this.$1_2){this.$1_1.style.overflowX="hidden";this.$1_1.style.overflowY="hidden"}else{this.$1_1.style.overflowX="";this.$1_1.style.overflowY="hidden"}}else{this.$1_1.style.overflow="hidden"}},$1_21:function(a){if(!this.$1_11){return}this.$1_A=3;if(a.target===this._incButton){this.$1_8=-1}else{this.$1_8=1}if(!this.$1_5){this.$1_33()}},$1_22:function(a){this.$1_A=1;if(!this.$1_5){this.$1_34()}},$1_23:function(a){if(!this.$1_11){return}if(!this.$1_5){return}this.$1_A=1;if(a.target===this._incButton){this.$1_8=-1}else{this.$1_8=1}this.$1_33()},$1_24:function(a){while(a){if(a===this.$1_1){return true}a=a.parentNode}return false},$1_25:function(a){if(!this.$1_6){if(a.rawEvent.toElement){if(!this.$1_24(a.rawEvent.toElement)){this.$1_34()}}}else{if(!this.$1_5){return}this.$1_34()}},$1_26:function(a){if(!this.get_isInitialized()){return}if(this.$1_B){return}this.$1_2D()},$1_27:function(i){var h=1;var g=false;var f=i.offsetY;var e=i.offsetX;var d=1;var c=0;var b=0;var a=i.target;while(a!==this.$1_1&&a){if(a.tagName.toLowerCase()==="li"||a.tagName.toLowerCase()==="ul"){c+=a.offsetLeft+a.scrollLeft;b+=a.offsetTop+a.scrollTop}a=a.parentNode}f+=b;e+=c;if(!this.$1_2){if(e<this.$1_C){g=true;d=this.$1_C-e}else{if(e>(this.$1_1.offsetWidth-this.$1_C)){g=true;h=-1;d=e-(this.$1_1.offsetWidth-this.$1_C)}}}else{if(f<this.$1_C){g=true;d=this.$1_C-f}else{if(f>(this.$1_1.offsetHeight-this.$1_C)){g=true;h=-1;d=f-(this.$1_1.offsetHeight-this.$1_C)}}}if(g){d=Math.abs(d);this.$1_A=Math.max(1,d/6);if(!this.get_isScrolling()){this.$1_8=h;this.$1_33()}else{if(h!==this.$1_8){this.$1_8=h;this.$1_33()}}}else{if(this.get_isScrolling()){this.$1_34()}}},$1_28:function(){if(!this.$1_6){return}this._decButton.style.left="";this._decButton.style.top="";this._decButton.style.right="";this._decButton.style.bottom="";this._incButton.style.left="";this._incButton.style.top="";this._incButton.style.right="";this._incButton.style.bottom="";if(!this.$1_2){this._decButton.style.top="0px";this._incButton.style.top="0px";switch(this.$1_3){case 0:this._decButton.style.left="0px";this._incButton.style.left=(this._decButton.offsetWidth+this.$1_4)+"px";break;case 2:this._incButton.style.right="0px";this._decButton.style.right=(this._incButton.offsetWidth+this.$1_4)+"px";break;case 1:this._decButton.style.left="0px";this._incButton.style.right="0px";break}}else{this._decButton.style.left="0px";this._incButton.style.left="0px";switch(this.$1_3){case 0:this._decButton.style.top="0px";this._incButton.style.top=(this._decButton.offsetHeight+this.$1_4)+"px";break;case 2:this._incButton.style.bottom="0px";this._decButton.style.bottom=(this._incButton.offsetHeight+this.$1_4)+"px";break;case 1:this._decButton.style.top="0px";this._incButton.style.bottom="0px";break}}},$1_29:function(){if(!this.$1_6){return}if(!this._decButton){this._decButton=this.$1_2A(1)}if(!this._incButton){this._incButton=this.$1_2A(-1)}},$1_2A:function(b){var a=document.createElement("a");a.href="javascript:void(0);";a.className=(b===1)?this.$1_12:this.$1_14;a.style.zIndex=4000;a.style.position="absolute";a.innerText="";this.$1_1.appendChild(a);Sys.UI.DomEvent.addHandler(a,"mousedown",this.$1_16);Sys.UI.DomEvent.addHandler(a,"mouseup",this.$1_17);Sys.UI.DomEvent.addHandler(a,"mouseover",this.$1_18);Sys.UI.DomEvent.addHandler(a,"mouseout",this.$1_19);return a},$1_2B:0,$1_2C:function(){var b=(!this.$1_2)?this.$1_1.offsetWidth:this.$1_1.offsetHeight;var a=(!this.$1_2)?this.$1_0.offsetWidth:this.$1_0.offsetHeight;if(this.$1_6){var d=(!this.$1_2)?this._decButton.offsetWidth:this._decButton.offsetHeight;var c=(!this.$1_2)?this._incButton.offsetWidth:this._incButton.offsetHeight;this.$1_2B=d+c+this.$1_4;if(this.$1_3!==1){b=Math.max(0,b-this.$1_2B)}}else{this.$1_2B=0}this.$1_F=0;this.$1_10=Math.max(0,a-b);this.$1_C=Math.min(b/2,18)},$1_2D:function(){if(this.$1_B){return}this.$1_B=true;this.$1_28();this.$1_2C();this.$1_2E();this.$1_32();this.$1_B=false},$1_2E:function(){if(!this.$1_6){return}var b=this.$1_10>this.$1_F;var a=this.$1_10>this.$1_F;var f=this.$1_11&&(this.$1_E>this.$1_F);var e=this.$1_11&&(this.$1_E<this.$1_10);this._decButton.disabled=!f;this._incButton.disabled=!e;var d=(f)?this.$1_12:this.$1_13;var c=(e)?this.$1_14:this.$1_15;if(this._decButton.className!==d){this._decButton.className=d}if(this._incButton.className!==c){this._incButton.className=c}if(this.$1_3===1){if(!f){b=false}if(!e){a=false}this._decButton.style.display=(b)?"":"none";this._incButton.style.display=(a)?"":"none"}},$1_2F:function(a){if(a<=this.$1_F){this.$1_34()}if(a>=this.$1_10){this.$1_34()}a=Math.max(a,this.$1_F);a=Math.min(a,this.$1_10);this.$1_E=a;if(!this.$1_3){a-=this.$1_2B+2}a=-a;if(!this.$1_2){this.$1_0.style.left=a+"px"}else{this.$1_0.style.top=a+"px"}this.$1_2E()},$1_30:null,$1_31:function(b,a){this.$1_32()},$1_32:function(){var b=this.$1_E;var a=this.$1_A*this.$1_9;if(this.$1_8===1){a=-a}b+=a;this.$1_2F(b)},$1_33:function(){if(this.get_isScrolling()){this.$1_34()}if(!this.$1_30){this.$1_30=Function.createDelegate(this,this.$1_31)}if(!this.$1_7){this.$1_7=new C1.Web.UI.Timer();this.$1_7.add_tick(this.$1_30)}this.$1_7.set_interval(10);this.$1_7.set_enabled(true);this.$1_1E(Sys.EventArgs.Empty)},$1_34:function(){if(this.get_isScrolling()){this.$1_1F(Sys.EventArgs.Empty);this.$1_7.set_enabled(false)}this.$1_A=1}};C1.Web.UI.ScrollBehaviorSettings=function(){this.events=new Sys.EventHandlerList();this._propertiesState={}};C1.Web.UI.ScrollBehaviorSettings.prototype={get_scrollButtonAlign:function(){return this.$0("ScrollButtonAlign",2)},set_scrollButtonAlign:function(a){this.$1("ScrollButtonAlign",a);return a},get_scrollMode:function(){return this.$0("ScrollMode",1)},set_scrollMode:function(a){this.$1("ScrollMode",a);return a},get_scrollPosition:function(){return this.$0("ScrollPosition",0)},set_scrollPosition:function(a){this.$1("ScrollPosition",a);return a},get_scrollOrientation:function(){return this.$0("ScrollOrientation",0)},set_scrollOrientation:function(a){this.$1("ScrollOrientation",a);return a},add_propertyChanged:function(a){this.events.addHandler("PropertyChanged",a)},remove_propertyChanged:function(a){this.events.removeHandler("PropertyChanged",a)},raisePropertyChanged:function(b){var a=this.events.getHandler("PropertyChanged");if(a){a(this,new Sys.PropertyChangedEventArgs(b))}},get_propertiesState:function(){return this._propertiesState},assignPropertiesState:function(a){this._propertiesState=a},createInstance:function(a){return new C1.Web.UI.ScrollBehaviorSettings()},$0:function(b,a){if(typeof(this._propertiesState[b])==="undefined"){return a}return this._propertiesState[b]},$1:function(b,a){if(this._propertiesState[b]!==a){this._propertiesState[b]=a;this.raisePropertyChanged(b);this.$2(b);this.$3()}},$2:function(a){},_jsonHelper:null,$3:function(){if(this._jsonHelper){this._jsonHelper.saveState()}}};C1.Web.UI.ScrollPanel=function(a){C1.Web.UI.ScrollPanel.initializeBase(this,[a])};C1.Web.UI.ScrollPanel.prototype={initialize:function(){C1.Web.UI.ScrollPanel.callBaseMethod(this,"initialize");this.$7(this.get_scrollType())},dispose:function(){if(this.$8){this.$8.dispose();this.$8=null}C1.Web.UI.ScrollPanel.callBaseMethod(this,"dispose")},$7:function(c){if(this.$8){this.$8.dispose();this.$8=null}var b=this.get_scrollOrientation();var a=this.get_scrollContentElement();switch(c){case 1:this.$8=new C1.Web.UI.ScrollBehavior(a,b,false,false);break;case 2:this.$8=new C1.Web.UI.ScrollBehavior(a,b,true,false);this.$8.set_buttonAlign(0);break;case 4:this.$8=new C1.Web.UI.ScrollBehavior(a,b,true,false);this.$8.set_buttonAlign(2);break;case 3:this.$8=new C1.Web.UI.ScrollBehavior(a,b,true,false);this.$8.set_buttonAlign(1);break;default:return}if(b===1){this.$8.changeButtonClasses("v_decButton","v_decButtonDisabled","v_incButton","v_incButtonDisabled")}else{this.$8.changeButtonClasses("h_decButton","h_decButtonDisabled","h_incButton","h_incButtonDisabled")}},get_scrollType:function(){return(!this.get_propertiesState()["ScrollType"])?0:this.get_propertiesState()["ScrollType"]},set_scrollType:function(a){this.get_propertiesState()["ScrollType"]=a;this.$7(a);return a},get_scrollOrientation:function(){return(!this.get_propertiesState()["ScrollOrientation"])?0:this.get_propertiesState()["ScrollOrientation"]},set_scrollOrientation:function(a){this.get_propertiesState()["ScrollOrientation"]=a;this.$7(this.get_scrollType());return a},get_scrollContentElement:function(){return $get(this.get_scrollContentID())},set_scrollContentElement:function(c){if(!c){return}var b=this.element.childNodes;for(var a=0;a<b.length;a++){this.element.removeChild(b[a])}this.element.appendChild(c);if(!c.id){c.id="scrlcnt_"+C1.Web.UI.UIElement.$5()}this.get_propertiesState()["ScrollContentID"]=c.id;return c},get_scrollContentID:function(){return(!this.get_propertiesState()["ScrollContentID"])?"":this.get_propertiesState()["ScrollContentID"]},get_scrollBehavior:function(){return this.$8},$8:null};C1.Web.UI.Timer=function(){C1.Web.UI.Timer.initializeBase(this);this.$1_0=1000;this.$1_1=false;this.$1_2=null};C1.Web.UI.Timer.prototype={$1_0:0,$1_1:false,$1_2:null,dispose:function(){this.set_enabled(false);this.stop();C1.Web.UI.Timer.callBaseMethod(this,"dispose")},get_interval:function(){return this.$1_0},set_interval:function(a){if(a!==this.$1_0){this.$1_0=a;this.raisePropertyChanged("interval");if(this.$1_2){this.stop();this.start()}}return a},get_enabled:function(){return this.$1_1},set_enabled:function(a){if(a!==this.$1_1){this.$1_1=a;this.raisePropertyChanged("enabled");if(a){this.start()}else{this.stop()}}return a},start:function(){this.$1_2=window.setInterval(Function.createDelegate(this,this.$1_3),this.$1_0)},stop:function(){window.clearInterval(this.$1_2);this.$1_2=null},add_tick:function(a){this.get_events().addHandler("tick",a)},remove_tick:function(a){this.get_events().removeHandler("tick",a)},$1_3:function(){var a=this.get_events().getHandler("tick");if(a){a(this,Sys.EventArgs.Empty)}}};C1.Web.UI.UIElement=function(a){this._propertiesState={};this.UID="uiel_"+C1.Web.UI.UIElement.$5();if(a){if(!a.id||a.id===""){a.id=this.UID}(a)["__c1uid"]=this.UID;C1.Web.UI.UIElement.all[this.UID]=this;this.element=a}this._propertiesState={}};C1.Web.UI.UIElement.$5=function(){try{C1.Web.UI.UIElement.$0++}catch(a){}if(C1.Web.UI.UIElement.$0<0){C1.Web.UI.UIElement.$0=0}return C1.Web.UI.UIElement.$0};C1.Web.UI.UIElement.prototype={UID:null,element:null,$1:null,$2:null,$3:false,$4:false,get_clientID:function(){return this._propertiesState.ClientID},get_offsetSize:function(){var a=new C1.Web.UI.Utils.Size(this.element.offsetWidth,this.element.offsetHeight);return a},get_visible:function(){if(typeof(this._propertiesState.Visible)==="undefined"){return true}return this._propertiesState.Visible},set_visible:function(a){if(this._propertiesState.Visible!==a){this._propertiesState.Visible=a}C1.Web.UI.Utils.Common.setVisible(this.element,a);return a},get_enabled:function(){if(typeof(this._propertiesState.Enabled)==="undefined"){return true}return this._propertiesState.Enabled},set_enabled:function(a){if(a){this.element.attributes.removeNamedItem("disabled")}else{this.element.setAttribute("disabled","-1")}if(this._propertiesState.Visible!==a){this._propertiesState.Visible=a}return a},get_id:function(){return this.element.id},get_isInitialized:function(){return this.$3},get_isUpdating:function(){return this.$4},dispose:function(){},initialize:function(){this.$3=true},isDOMVisible:function(){return C1.Web.UI.Utils.Common.isVisible(this.element)},beginUpdate:function(){this.$4=true},endUpdate:function(){this.$4=false},invalidate:function(){},addCssClass:function(a){Sys.UI.DomElement.addCssClass(this.element,a)},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(this.element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClass(this.element,a)},addChild:function(a){this.get_children().add(a);this.element.appendChild(a.element)},get_children:function(){if(!this.$1){this.$1=new C1.Web.UI.UIElementList(this)}return this.$1},get_parent:function(){return this.$2},get_hasChildren:function(){return this.get_children()&&this.get_children().get_count()>0},get_propertiesState:function(){return this._propertiesState},assignPropertiesState:function(a){this._propertiesState=a},createInstance:function(a){if(Sys.UI.DomElement.containsCssClass(a,"flow-panel")){return new C1.Web.UI.FlowPanel(a)}else{if(Sys.UI.DomElement.containsCssClass(a,"dock-panel")){return new C1.Web.UI.DockPanel(a)}else{return new C1.Web.UI.UIElement(a)}}},$6:function(a){if(this.$2&&a&&this.$2!==a){throw Error.create("UIElement is already a child of another UIElement.")}this.$2=a}};C1.Web.UI.UIElementList=function(a){this.list=[];this.$0=a};C1.Web.UI.UIElementList.prototype={get_owner:function(){return this.$0},get_last:function(){return(this.get_count()>0)?this.get_item(this.get_count()-1):null},get_count:function(){return this.list.length},onListChanged:function(){},add:function(b){var a=this.get_count();this.insert(a,b);return a},insert:function(b,a){if(this.$4()){return}if(a){a.$6(this.$0)}this.list.splice(b,0,a);this.onListChanged()},removeAt:function(a){if(this.$4()){return}(this.list[a]).$6(null);this.list.splice(a,1);this.onListChanged()},removeRange:function(b,c){if(this.$4()){return}for(var a=0;a<c;a++){this.removeAt(b)}},reverse:function(){if(this.$4()){return}this.list.reverse();this.onListChanged()},clear:function(){if(this.$4()){return}for(var a=0;a<this.list.length;a++){(this.list[a]).$6(null)}this.list=[];this.onListChanged()},contains:function(b){for(var a=0;a<this.list.length;a++){if((this.list[a]).get_id()===b.get_id()){return true}}return false},$0:null,$1:false,$2:function(){this.$1=true},$3:function(){this.$1=false},$4:function(){if(this.$1){throw Error.create("UIElementList is locked.")}return false},$5:function(b){for(var a=0;a<this.get_count();a++){if(this.get_item(a).get_id()===b.get_id()){this.removeAt(a);break}}},get_item:function(a){return this.list[a]},set_item:function(b,c){var a=this.list[b];if(c!==a){if(a){a.$6(null)}this.list[b]=c;if(c){c.$6(this.$0)}this.onListChanged()}return c}};Type.registerNamespace("C1.Web.UI.Behavior");C1.Web.UI.Behavior.ResizeHandles=function(){};C1.Web.UI.Behavior.ResizeHandles.prototype={north:1,east:2,south:4,west:8,northEast:16,southEast:32,northWest:64,southWest:128,all:255};C1.Web.UI.Behavior.ResizeHandles.registerEnum("C1.Web.UI.Behavior.ResizeHandles",false);C1.Web.UI.Behavior.ResizePosition=function(){};C1.Web.UI.Behavior.ResizePosition.prototype={none:1,relative:2,absolute:3};C1.Web.UI.Behavior.ResizePosition.registerEnum("C1.Web.UI.Behavior.ResizePosition",false);C1.Web.UI.Behavior.Animation=function(a,b){this._easeType=31;C1.Web.UI.Behavior.Animation.initializeBase(this,[a]);this.UID="animation_"+C1.Web.UI.Behavior.Animation.$2_39();this.$2_17=new C1.Web.UI.Utils.RGBColor();this.$2_0=null;this.$2_1=null;this.$2_7=0;this.$2_2=1;this.$2_19=false;this.$2_1F=1000;this.$2_1E=0;this.$2_8={};this.$2_9={};this.$2_A={};this.$2_B={};this.$2_18={};this.$2_C=true;this.$2_D=true;this.$2_10=false;this.$2_11=false;this.$2_0=a;this.set_keyFrames(b)};C1.Web.UI.Behavior.Animation.easeOutElastic=function(g,e,i,h){if((g/=h)===1){return e+i}var f=h*0.3;var a=f/4;return(i*Math.pow(2,-10*g)*Math.sin((g*h-a)*(2*Math.PI)/f)+i+e)};C1.Web.UI.Behavior.Animation.easeInElastic=function(g,e,i,h){if((g/=h)===1){return e+i}var f=h*0.3;var a=f/4;return -(i*Math.pow(2,10*(g-=1))*Math.sin((g*h-a)*(2*Math.PI)/f))+e};C1.Web.UI.Behavior.Animation.easeInOutElastic=function(g,e,i,h){if((g/=h/2)===2){return e+i}var f=h*(0.3*1.5);var a=f/4;if(g<1){return -0.5*(i*Math.pow(2,10*(g-=1))*Math.sin((g*h-a)*(2*Math.PI)/f))+e}return i*Math.pow(2,-10*(g-=1))*Math.sin((g*h-a)*(2*Math.PI)/f)*0.5+i+e};C1.Web.UI.Behavior.Animation.easeOutBounce=function(e,a,g,f){if((e/=f)<(1/2.75)){return g*(7.5625*e*e)+a}else{if(e<(2/2.75)){return g*(7.5625*(e-=(1.5/2.75))*e+0.75)+a}else{if(e<(2.5/2.75)){return g*(7.5625*(e-=(2.25/2.75))*e+0.9375)+a}else{return g*(7.5625*(e-=(2.625/2.75))*e+0.984375)+a}}}};C1.Web.UI.Behavior.Animation.easeInBounce=function(e,a,g,f){return g-C1.Web.UI.Behavior.Animation.easeOutBounce(f-e,0,g,f)+a};C1.Web.UI.Behavior.Animation.easeInOutBounce=function(e,a,g,f){if(e<f/2){return C1.Web.UI.Behavior.Animation.easeInBounce(e*2,0,g,f)*0.5+a}else{return C1.Web.UI.Behavior.Animation.easeOutBounce(e*2-f,0,g,f)*0.5+g*0.5+a}};C1.Web.UI.Behavior.Animation.easeOutExpo=function(e,a,g,f){return(e===f)?a+g:g*(-Math.pow(2,-10*e/f)+1)+a};C1.Web.UI.Behavior.Animation.easeInExpo=function(e,a,g,f){return(!e)?a:g*Math.pow(2,10*(e/f-1))+a};C1.Web.UI.Behavior.Animation.easeInOutExpo=function(e,a,g,f){if(!e){return a}if(e===f){return a+g}if((e/=f/2)<1){return g/2*Math.pow(2,10*(e-1))+a}return g/2*(-Math.pow(2,-10*--e)+2)+a};C1.Web.UI.Behavior.Animation.easeOutQuad=function(e,a,g,f){return -g*(e/=f)*(e-2)+a};C1.Web.UI.Behavior.Animation.easeInQuad=function(e,a,g,f){return g*(e/=f)*e+a};C1.Web.UI.Behavior.Animation.easeInOutQuad=function(e,a,g,f){if((e/=f/2)<1){return g/2*e*e+a}return -g/2*((--e)*(e-2)-1)+a};C1.Web.UI.Behavior.Animation.easeOutSine=function(e,a,g,f){return g*Math.sin(e/f*(Math.PI/2))+a};C1.Web.UI.Behavior.Animation.easeInSine=function(e,a,g,f){return -g*Math.cos(e/f*(Math.PI/2))+g+a};C1.Web.UI.Behavior.Animation.easeInOutSine=function(e,a,g,f){if((e/=f/2)<1){return g/2*(Math.sin(Math.PI*e/2))+a}return -g/2*(Math.cos(Math.PI*--e/2)-2)+a};C1.Web.UI.Behavior.Animation.easeOutCirc=function(e,a,g,f){return g*Math.sqrt(1-(e=e/f-1)*e)+a};C1.Web.UI.Behavior.Animation.easeInCirc=function(e,a,g,f){return -g*(Math.sqrt(1-(e/=f)*e)-1)+a};C1.Web.UI.Behavior.Animation.easeInOutCirc=function(e,a,g,f){if((e/=f/2)<1){return -g/2*(Math.sqrt(1-e*e)-1)+a}return g/2*(Math.sqrt(1-(e-=2)*e)+1)+a};C1.Web.UI.Behavior.Animation.easeOutCubic=function(e,a,g,f){return g*((e=e/f-1)*e*e+1)+a};C1.Web.UI.Behavior.Animation.easeInCubic=function(e,a,g,f){return g*(e/=f)*e*e+a};C1.Web.UI.Behavior.Animation.easeInOutCubic=function(e,a,g,f){if((e/=f/2)<1){return g/2*e*e*e+a}return g/2*((e-=2)*e*e+2)+a};C1.Web.UI.Behavior.Animation.easeOutQuint=function(e,a,g,f){return g*((e=e/f-1)*e*e*e*e+1)+a};C1.Web.UI.Behavior.Animation.easeInQuint=function(e,a,g,f){return g*(e/=f)*e*e*e*e+a};C1.Web.UI.Behavior.Animation.easeInOutQuint=function(e,a,g,f){if((e/=f/2)<1){return g/2*e*e*e*e*e+a}return g/2*((e-=2)*e*e*e*e+2)+a};C1.Web.UI.Behavior.Animation.easeOutBack=function(e,a,g,f){return g*((e=e/f-1)*e*((1.70158+1)*e+1.70158)+1)+a};C1.Web.UI.Behavior.Animation.easeInBack=function(e,a,g,f){return g*(e/=f)*e*((1.70158+1)*e-1.70158)+a};C1.Web.UI.Behavior.Animation.easeInOutBack=function(f,a,h,g){var e=1.70158;if((f/=g/2)<1){return h/2*(f*f*(((e*=(1.525))+1)*f-e))+a}return h/2*((f-=2)*f*(((e*=(1.525))+1)*f+e)+2)+a};C1.Web.UI.Behavior.Animation.easeOutQuart=function(e,a,g,f){return -g*((e=e/f-1)*e*e*e-1)+a};C1.Web.UI.Behavior.Animation.easeInQuart=function(e,a,g,f){return g*(e/=f)*e*e*e+a};C1.Web.UI.Behavior.Animation.easeInOutQuart=function(e,a,g,f){if((e/=f/2)<1){return g/2*e*e*e*e+a}return -g/2*((e-=2)*e*e*e-2)+a};C1.Web.UI.Behavior.Animation.easeLinear=function(e,a,g,f){return g*e/f+a};C1.Web.UI.Behavior.Animation.$2_39=function(){try{C1.Web.UI.Behavior.Animation.$2_20++}catch(a){C1.Web.UI.Behavior.Animation.$2_20=0}if(C1.Web.UI.Behavior.Animation.$2_20<0){C1.Web.UI.Behavior.Animation.$2_20=0}return C1.Web.UI.Behavior.Animation.$2_20};C1.Web.UI.Behavior.Animation.prototype={UID:null,$2_0:null,$2_1:null,$2_2:0,$2_3:null,$2_4:null,$2_5:false,$2_6:false,$2_7:0,$2_8:null,$2_9:null,$2_A:null,$2_B:null,$2_C:false,$2_D:false,$2_E:false,$2_F:false,$2_10:false,$2_11:false,$2_12:0,$2_13:0,$2_14:0,$2_15:0,$2_16:0,$2_17:null,$2_18:null,$2_19:false,$2_1A:false,$2_1B:0,$2_1C:0,$2_1D:0,$2_1E:0,$2_1F:0,get_animatedElement:function(){return this.$2_0},set_animatedElement:function(a){if(a){this.$2_0=a;this.raisePropertyChanged("element")}return a},get_activeKeyFrame:function(){return this.$2_7},get_easing:function(){return this._easeType},set_easing:function(a){if(a!==this._easeType){this._easeType=a;this.raisePropertyChanged("easing")}return a},get_currentFrameDurationTime:function(){return this.$2_1F},get_hiddenAtStart:function(){return this.$2_E},set_hiddenAtStart:function(a){if(this.$2_E!==a){this.$2_E=a;if(a){Sys.UI.DomElement.addCssClass(this.get_element(),"c1-transparent")}else{Sys.UI.DomElement.removeCssClass(this.get_element(),"c1-transparent")}}return a},get_keyFrames:function(){return this.$2_1},set_keyFrames:function(a){if(a){this.$2_1=a;this.raisePropertyChanged("keyFrames")}return a},get_percentage:function(){if(!this.$2_19){return 0}return((this.$2_1D-this.$2_1B)*100)/this.$2_1F},get_isActive:function(){return this.$2_19},get_isAnimating:function(){return this.$2_1A},add_started:function(a){this.get_events().addHandler("started",a)},remove_started:function(a){this.get_events().removeHandler("started",a)},add_frameStarted:function(a){this.get_events().addHandler("framestarted",a)},remove_frameStarted:function(a){this.get_events().removeHandler("framestarted",a)},add_frameStopped:function(a){this.get_events().addHandler("framestopped",a)},remove_frameStopped:function(a){this.get_events().removeHandler("framestopped",a)},add_animating:function(a){this.get_events().addHandler("animating",a)},remove_animating:function(a){this.get_events().removeHandler("animating",a)},add_stopped:function(a){this.get_events().addHandler("stopped",a)},remove_stopped:function(a){this.get_events().removeHandler("stopped",a)},setValueSyncHandler:function(a){this.$2_21=a},$2_21:null,dispose:function(){this.$2_19=false;this.$2_23();C1.Web.UI.Behavior.Animation.callBaseMethod(this,"dispose")},queue:function(){C1.Web.UI.Behavior.AnimationManager.get_queue().add(this)},start:function(a){this.queue();if(typeof(a)==="undefined"){a=1}this.$2_2=a;C1.Web.UI.Behavior.AnimationManager.start()},pause:function(){if(this.$2_19){this.$2_23();this.raisePropertyChanged("isAnimating")}},resume:function(){if(this.$2_19){this.$2_22();this.raisePropertyChanged("isAnimating")}},useOverflowHiddenForChilds:false,$2_22:function(){this.$2_1A=true;if(this.$2_0&&this.useOverflowHiddenForChilds){Sys.UI.DomElement.addCssClass(this.$2_0,"c1-in-animation-hide-scrollbars")}},$2_23:function(){this.$2_1A=false;if(this.$2_0){Sys.UI.DomElement.removeCssClass(this.$2_0,"c1-in-animation-hide-scrollbars")}},stop:function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)){a=true}this.$2_25(a)},reset:function(){if(this.get_isAnimating()){return}this.$2_2E()},$2_24:function(a){this.$2_7=0;this.$2_F=false;this.onStarted(Sys.EventArgs.Empty);this.$2_2D();this.$2_35(a)},$2_25:function(b){var a=new Sys.CancelEventArgs();this.onFrameStopped(a);if(a.get_cancel()){return}this.$2_19=false;this.$2_23();if(this.$2_1D!==this.$2_1C){this.$2_1D=this.$2_1C;this.raisePropertyChanged("percentage");if(b){this.$2_36(this.$2_1C)}}this.raisePropertyChanged("isAnimating");this.raisePropertyChanged("isActive");if(!b){this.$2_9={};this.$2_A={};this.$2_7++;if(this.$2_7>=this.$2_1.length){this.$2_7=0;this.$2_2--;if(this.$2_2>0||this.$2_2<-1){if(this.$2_2<-1){this.$2_2=-1}this.$2_2E();this.$2_35(new Date().getTime())}else{this.onStopped(Sys.EventArgs.Empty)}}else{this.$2_35(new Date().getTime())}}else{this.onStopped(Sys.EventArgs.Empty)}},$2_26:function(f,e,d){var c=f;for(var b in c){var a={key:b,value:c[b]};if(d){e[a.key]=f[a.key]}else{if(typeof(e[a.key])==="undefined"){e[a.key]=f[a.key]}}}},$2_27:function(e){if(e<0||e>=this.$2_1.length){throw Error.argumentOutOfRange()}var c=this.$2_1[e];var d=c;for(var b in d){var a={key:b,value:d[b]};if(a.key==="duration"){this.$2_1F=(c[a.key]);continue}if(a.key==="unit"){this.$2_3=c[a.key];continue}if(a.key==="fontUnit"){this.$2_4=c[a.key];continue}if(a.key==="visible"){this.$2_10=true;this.$2_C=c[a.key];continue}if(a.key==="enabled"){this.$2_11=true;this.$2_D=c[a.key];continue}this.$2_2A(c,a.key)}if(!e){this.$2_26(this.$2_8,this.$2_9,false)}},$2_28:function(b){if(String.isInstanceOfType((b))){b=(b*1)}var a;switch(b){case 1:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutElastic);break;case 2:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInElastic);break;case 3:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutElastic);break;case 4:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutBounce);break;case 5:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInBounce);break;case 6:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutBounce);break;case 7:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutExpo);break;case 8:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInExpo);break;case 9:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutExpo);break;case 10:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutQuad);break;case 11:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInQuad);break;case 12:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutQuad);break;case 13:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutSine);break;case 14:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInSine);break;case 15:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutSine);break;case 16:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutCirc);break;case 17:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInCirc);break;case 18:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutCirc);break;case 19:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutCubic);break;case 20:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInCubic);break;case 21:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutCubic);break;case 22:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutQuint);break;case 23:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInQuint);break;case 24:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutQuint);break;case 25:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutBack);break;case 26:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInBack);break;case 27:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutBack);break;case 28:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeOutQuart);break;case 29:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInQuart);break;case 30:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeInOutQuart);break;default:a=Function.createDelegate(null,C1.Web.UI.Behavior.Animation.easeLinear);break}return a},$2_29:function(b){var a=31;switch(b){case"EaseOutElastic":a=1;break;case"EaseInElastic":a=2;break;case"EaseInOutElastic":a=3;break;case"EaseOutBounce":a=4;break;case"EaseInBounce":a=5;break;case"EaseInOutBounce":a=6;break;case"EaseOutExpo":a=7;break;case"EaseInExpo":a=8;break;case"EaseInOutExpo":a=9;break;case"EaseOutQuad":a=10;break;case"EaseInQuad":a=11;break;case"EaseInOutQuad":a=12;break;case"EaseOutSine":a=13;break;case"EaseInSine":a=14;break;case"EaseInOutSine":a=15;break;case"EaseOutCirc":a=16;break;case"EaseInCirc":a=17;break;case"EaseInOutCirc":a=18;break;case"EaseOutCubic":a=19;break;case"EaseInCubic":a=20;break;case"EaseInOutCubic":a=21;break;case"EaseOutQuint":a=22;break;case"EaseInQuint":a=23;break;case"EaseInOutQuint":a=24;break;case"EaseOutBack":a=25;break;case"EaseInBack":a=26;break;case"EaseInOutBack":a=27;break;case"EaseOutQuart":a=28;break;case"EaseInQuart":a=29;break;case"EaseInOutQuart":a=30;break}return this.$2_28(a)},$2_2A:function(d,c){var b=d[c];if(typeof(b.to)!=="undefined"){this.$2_A[c]=b.to}if(!C1.Web.UI.Utils.Common.testIsNull(b.easing)){var a=b.easing;this.$2_18[c]=this.$2_29(a)}else{this.$2_18[c]=this.$2_28(this.get_easing())}if(typeof(b.from)!=="undefined"){this.$2_9[c]=b.from}else{var e=this.$2_2F(c);if(typeof(e)!=="undefined"){if(Object.getType(e)===String){if(c.toLowerCase().indexOf("color")<0){e=parseFloat(e)}}this.$2_9[c]=e}}if(c==="scale"){if(typeof(b.center)!=="undefined"){this.$2_5=b.center}if(typeof(b.scaleFont)!=="undefined"){this.$2_6=b.scaleFont}}},$2_2D:function(){var c=(this.$2_0)["style"];if(typeof(c)!=="undefined"){var d=c;for(var b in d){var a={key:b,value:d[b]};var f=a.key;var e=typeof(c[f]);if(e!=="undefined"&&e!=="function"&&!C1.Web.UI.Behavior.Animation.$2_2B[f]){if(C1.Web.UI.Behavior.Animation.$2_2C[f]||c[f]!==""){this.$2_8[f]=c[f]}}}}},$2_2E:function(){var c=(this.$2_0)["style"];if(typeof(c)!=="undefined"){var d=this.$2_8;for(var b in d){var a={key:b,value:d[b]};try{c[a.key]=this.$2_8[a.key]}catch(e){}}}},$2_2F:function(b){if(!this.$2_0){return null}if(b==="left"){return(this.$2_0)["offsetLeft"]}if(b==="top"){return(this.$2_0)["offsetTop"]}if(b==="width"){return(this.$2_0)["offsetWidth"]}if(b==="height"){return(this.$2_0)["offsetHeight"]}if(b==="opacity"){return C1.Web.UI.Utils.Common.getOpacity(this.$2_0)}if(b==="backgroundPositionX"){return C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"backgroundPositionX",0)}if(b==="backgroundPositionY"){return C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"backgroundPositionY",0)}if(b==="scale"){return 1}var a=(this.$2_0)["style"];if(typeof(a)!=="undefined"&&b&&b.length>0){return(a)[b]}return null},onStarted:function(b){var a=this.get_events().getHandler("started");if(a){a(this,b)}},onStopped:function(b){C1.Web.UI.Behavior.AnimationManager.$9(this);var a=this.get_events().getHandler("stopped");if(a){a(this,b)}},onFrameStarted:function(b){var a=this.get_events().getHandler("framestarted");if(a){a(this,b)}},onFrameStopped:function(b){var a=this.get_events().getHandler("framestopped");if(a){a(this,b)}},onAnimating:function(b){var a=this.get_events().getHandler("animating");if(a){a(this,b)}},$2_30:function(b){var a={};if(this.$2_17.parse(b)){a.Red=this.$2_17.get_red();a.Green=this.$2_17.get_green();a.Blue=this.$2_17.get_blue()}else{a.Red=255;a.Green=255;a.Blue=255}return a},$2_31:function(f,d,c){var b=f.toString(16);var a=d.toString(16);var g=c.toString(16);if(b.length===1){b="0"+b}if(a.length===1){a="0"+a}if(g.length===1){g="0"+g}var e="#"+b;e+=a+g;return e},caclulateValue:function(e,b,c,d){var a=b-e;if(!a){return e}return this.$2_18[c]((d-this.$2_1B),e,a,this.$2_1F)},$2_32:function(i,h,g,f){var e=this.$2_30(i);var d=this.$2_30(h);var c=e.Red;var b=e.Green;var a=e.Blue;if(c!==d.Red){c=Math.max(0,Math.min(255,Math.round(this.caclulateValue(c,d.Red,g,f))))}if(b!==d.Green){b=Math.max(0,Math.min(255,Math.round(this.caclulateValue(b,d.Green,g,f))))}if(a!==d.Blue){a=Math.max(0,Math.min(255,Math.round(this.caclulateValue(a,d.Blue,g,f))))}return this.$2_31(c,b,a)},$2_33:function(c,b){if(!this.$2_0){return}this.$2_B[c]=b;if(c==="width"||c==="height"){b=Math.round(b);if(b<0){b=0}this.$2_B[c]=b}else{if(c==="left"||c==="top"||c==="backgroundPositionX"||c==="backgroundPositionY"){b=Math.round(b);this.$2_B[c]=b}}if(this.$2_21){b=this.$2_21(this,c,this.$2_9[c],this.$2_A[c],this.$2_B[c])}if(c==="width"||c==="height"||c==="left"||c==="top"||c==="backgroundPositionX"||c==="backgroundPositionY"){b=b+this.$2_3}if(c==="opacity"){C1.Web.UI.Utils.Common.setOpacity(this.$2_0,b);return}var a=(this.$2_0)["style"];if(typeof(a)!=="undefined"&&c&&c.length>0){(a)[c]=b}},$2_34:function(){if(!this.$2_0){return}var b=C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"width",null);var a=C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"height",null);var c=C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"backgroundColor",null);if((!b||b===""||b==="auto")&&(!a||a===""||a==="auto")){this.$2_0.style.width=this.$2_0.offsetWidth.toString()+"px"}if(!c||c===""||c==="transparent"||c==="rgba(0, 0, 0, 0)"){this.$2_0.style.backgroundColor=C1.Web.UI.Utils.Common.getInheritedBackgroundColor(this.$2_0)}this.$2_F=true},$2_35:function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)){a=new Date().getTime()}this.onFrameStarted(Sys.EventArgs.Empty);this.$2_1F=1000;this.$2_1E=0;this.$2_10=false;this.$2_11=false;this.$2_3="px";this.$2_4="pt";this.$2_5=true;this.$2_6=false;this.$2_27(this.$2_7);this.$2_1B=a;this.$2_1D=this.$2_1B;this.$2_1C=this.$2_1B+this.$2_1F;if(typeof(this.$2_A.opacity)!=="undefined"){if(!this.$2_F&&Sys.Browser.agent===Sys.Browser.InternetExplorer){this.$2_34()}}if(typeof(this.$2_A.scale)!=="undefined"){this.$2_15=this.$2_0.offsetTop;this.$2_14=this.$2_0.offsetLeft;this.$2_13=this.$2_0.offsetHeight;this.$2_12=this.$2_0.offsetWidth;this.$2_16=parseFloat(C1.Web.UI.Utils.Common.getCurrentStyle(this.$2_0,"fontSize",9))}if(this.$2_10){C1.Web.UI.Utils.Common.setVisible(this.$2_0,this.$2_C)}if(this.$2_11){this.$2_0.disabled=!this.$2_D}this.$2_19=true;this.$2_22();if(this.$2_E){Sys.UI.DomElement.removeCssClass(this.get_element(),"c1-transparent")}},$2_36:function(d){if(!this.$2_1A){this.$2_1E=new Date().getTime()-this.$2_1D;return}d-=this.$2_1E;if(d>this.$2_1C){d=this.$2_1C}this.$2_1D=d;this.onAnimating(Sys.EventArgs.Empty);var c=this.$2_A;for(var b in c){var a={key:b,value:c[b]};if(a.key==="scale"){this.$2_37(this.$2_38(a.key,d));continue}this.$2_33(a.key,this.$2_38(a.key,d))}if(this.$2_1D>=this.$2_1C){this.$2_25(false);return}},$2_37:function(c){var b=Math.round(this.$2_12*c);var a=Math.round(this.$2_13*c);this.$2_0.style.width=b+this.$2_3;this.$2_0.style.height=a+this.$2_3;if(this.$2_5){this.$2_0.style.top=(this.$2_15+Math.round((this.$2_13-a)/2))+this.$2_3;this.$2_0.style.left=(this.$2_14+Math.round((this.$2_12-b)/2))+this.$2_3}if(this.$2_6){var d=this.$2_16*c;if(this.$2_4==="px"||this.$2_4==="pt"){d=Math.round(d)}this.$2_0.style.fontSize=d+this.$2_4}},$2_38:function(d,c){if(d.toLowerCase().indexOf("color")>=0){return this.$2_32(this.$2_9[d],this.$2_A[d],d,c)}var b=this.$2_9[d];var a=this.$2_A[d];if(b&&String.isInstanceOfType(b)&&c<this.$2_1C){return b}else{if(a&&String.isInstanceOfType(a)&&c>=this.$2_1C){return a}}var e=this.caclulateValue(this.$2_9[d],this.$2_A[d],d,c);return this.caclulateValue(this.$2_9[d],this.$2_A[d],d,c)}};C1.Web.UI.Behavior.AnimationCollection=function(){this.list=[]};C1.Web.UI.Behavior.AnimationCollection.prototype={get_last:function(){return(this.get_count()>0)?this.get_item(this.get_count()-1):null},get_count:function(){return this.list.length},onListChanged:function(){},add:function(b){var a=this.get_count();this.insert(a,b);return a},insert:function(a,b){if(this.contains(b)){return}this.list.splice(a,0,b);this.onListChanged()},removeAt:function(a){this.list.splice(a,1);this.onListChanged()},removeRange:function(b,c){for(var a=0;a<c;a++){this.removeAt(b)}},reverse:function(){this.list.reverse();this.onListChanged()},clear:function(){this.list=[];this.onListChanged()},contains:function(b){for(var a=0;a<this.list.length;a++){if((this.list[a]).UID===b.UID){return true}}return false},indexOf:function(b){for(var a=0;a<this.list.length;a++){if((this.list[a]).UID===b.UID){return a}}return -1},get_length:function(){return this.list.length},$0:function(b){for(var a=0;a<this.get_count();a++){if(this.get_item(a).UID===b.UID){this.removeAt(a);break}}},get_item:function(a){return this.list[a]},set_item:function(b,c){var a=this.list[b];if(c!==a){this.list[b]=c;this.onListChanged()}return c}};C1.Web.UI.Behavior.AnimationEffects=function(a,b){C1.Web.UI.Behavior.AnimationEffects.initializeBase(this,[a]);this.$2_2=(C1.Web.UI.Utils.Common.testIsNull(b))?0:b;this.$2_3=1000;this.$2_4=31;this.$2_5=null;this.$2_6=null;this.$2_7=false;this.$2_8=false;this.$2_9=true;this.$2_A=true};C1.Web.UI.Behavior.AnimationEffects.createAnimationByType=function(k,d,b,g,f,j,h,i,a,e){if(C1.Web.UI.Utils.Common.testIsNull(k)||C1.Web.UI.Utils.Common.testIsNull(d)||!k){return null}if(C1.Web.UI.Utils.Common.testIsNull(h)){h=false}if(C1.Web.UI.Utils.Common.testIsNull(i)){i=false}if(C1.Web.UI.Utils.Common.testIsNull(a)){a=true}if(C1.Web.UI.Utils.Common.testIsNull(g)){g=31}if(C1.Web.UI.Utils.Common.testIsNull(e)){e=true}var c=new C1.Web.UI.Behavior.AnimationEffects(d,k);c.$2_2=k;c.$2_3=b;c.$2_7=h;c.$2_8=i;c.$2_9=a;c.$2_4=g;c.$2_5=f;c.$2_6=j;c.$2_A=e;c.$2_B=!e;return c};C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect=function(k,d,b,g,f,j,h,i,a,e){if(C1.Web.UI.Utils.Common.testIsNull(k)||C1.Web.UI.Utils.Common.testIsNull(d)||!k){return false}if(C1.Web.UI.Utils.Common.testIsNull(h)){h=false}if(C1.Web.UI.Utils.Common.testIsNull(i)){i=false}if(C1.Web.UI.Utils.Common.testIsNull(a)){a=true}if(C1.Web.UI.Utils.Common.testIsNull(g)){g=31}if(C1.Web.UI.Utils.Common.testIsNull(e)){e=true}if(!C1.Web.UI.Utils.Common.testIsNull(k)&&k){var c=C1.Web.UI.Behavior.AnimationEffects.createAnimationByType(k,d,b,g,f,j,h,i,a,e);if(c){c.play();return true}}return false};C1.Web.UI.Behavior.AnimationEffects.prototype={$2_0:false,get_useOverflowHiddenForChilds:function(){return this.$2_0},set_useOverflowHiddenForChilds:function(a){this.$2_0=a;if(this.$2_1){this.$2_1.useOverflowHiddenForChilds=a}return a},beforeDetermineBoundsHandler:null,afterDetermineBoundsHandler:null,$2_1:null,$2_2:0,$2_3:0,$2_4:0,$2_5:null,$2_6:null,$2_7:false,$2_8:false,$2_9:false,$2_A:false,$2_B:false,$2_C:null,$2_D:null,$2_E:null,$2_F:null,$2_10:false,$2_11:false,$2_12:null,get_animation:function(){return this.$2_1},get_animatedElement:function(){return this.$2_E},get_originalElement:function(){return this.get_element()},get_effect:function(){return this.$2_2},set_effect:function(a){this.$2_2=a;return a},get_duration:function(){return this.$2_3},set_duration:function(a){this.$2_3=a;return a},get_easing:function(){return this.$2_4},set_easing:function(a){this.$2_4=a;return a},get_startHandler:function(){return this.$2_5},set_startHandler:function(a){this.$2_5=a;return a},get_endHandler:function(){return this.$2_6},set_endHandler:function(a){this.$2_6=a;return a},get_useClone:function(){return this.$2_7},set_useClone:function(a){this.$2_7=a;return a},get_cloneDeep:function(){return this.$2_8},set_cloneDeep:function(a){this.$2_8=a;return a},get_resetOnEnd:function(){return this.$2_9},set_resetOnEnd:function(a){this.$2_9=a;return a},get_hiddenAtStart:function(){return this.$2_A},set_hiddenAtStart:function(a){this.$2_A=a;this.$2_B=!this.$2_A;if(this.$2_1){this.$2_1.set_hiddenAtStart(a)}return a},get_isAnimating:function(){if(this.$2_1){return this.$2_1.get_isAnimating()}return false},setValueSyncHandler:function(a){this.$2_13=a;if(this.$2_1){this.$2_1.setValueSyncHandler(this.$2_13)}},$2_13:null,play:function(){this.start(1)},start:function(a){if(!this.$2_1){this.$2_14()}if(this.$2_1){this.$2_1.start(a)}},stop:function(){if(this.$2_1){this.$2_1.stop(true)}},queue:function(){if(!this.$2_1){this.$2_14()}if(this.$2_1){this.$2_1.queue()}},pause:function(){if(this.$2_1){this.$2_1.pause()}},resume:function(){if(this.$2_1){this.$2_1.resume()}},reset:function(){if(this.$2_1){this.$2_1.reset()}},initialize:function(){C1.Web.UI.Behavior.AnimationEffects.callBaseMethod(this,"initialize")},dispose:function(){if(this.$2_1){this.$2_1.dispose();this.$2_1=null}C1.Web.UI.Behavior.AnimationEffects.callBaseMethod(this,"dispose");this.$2_5=null;this.$2_6=null},add_started:function(a){this.get_events().addHandler("started",a)},remove_started:function(a){this.get_events().removeHandler("started",a)},add_stopped:function(a){this.get_events().addHandler("stopped",a)},remove_stopped:function(a){this.get_events().removeHandler("stopped",a)},onStarted:function(b){var a=this.get_events().getHandler("started");if(a){a(this,b)}},onStopped:function(b){var a=this.get_events().getHandler("stopped");if(a){a(this,b)}},$2_14:function(){var b=this.get_element();if((b)["___c1StartedAnimation"]){((b)["___c1StartedAnimation"]).stop(true)}if((b)["___c1StartedAnimation"]){}var a=this.$2_17(b);if(this.beforeDetermineBoundsHandler){this.beforeDetermineBoundsHandler()}if(this.$2_A){Sys.UI.DomElement.addCssClass(b,"c1-transparent")}b.style.display="block";var h=C1.Web.UI.Utils.Measurement.getStyleBounds(b);b.style.left=h.x+"px";b.style.top=h.y+"px";b.style.display=a.Display;if(this.$2_A){Sys.UI.DomElement.removeCssClass(b,"c1-transparent")}if(this.afterDetermineBoundsHandler){this.afterDetermineBoundsHandler()}this.$2_E=b;if(this.$2_7){Sys.UI.DomElement.addCssClass(b,"c1-transparent");this.$2_E=b.cloneNode(this.$2_8);this.$2_E.style.display="block";C1.Web.UI.Utils.Common.setBounds(this.$2_E,h);b.parentNode.appendChild(this.$2_E);Sys.UI.DomElement.removeCssClass(this.$2_E,"c1-transparent")}var g=this.$2_3;var f=this.determineAnimationFramesByType(this.$2_2,g,h);var e=null;if(f!==""){e=C1.Web.UI.Utils.JSON.fromJSONString(f)}if(e){this.$2_1=new C1.Web.UI.Behavior.Animation(this.$2_E,e);this.$2_1.useOverflowHiddenForChilds=this.get_useOverflowHiddenForChilds();this.$2_1.setValueSyncHandler(this.$2_13);this.$2_1.set_hiddenAtStart(this.$2_A);if(this.$2_1){this.$2_1.set_easing(this.$2_4);var d=(f.indexOf("height:")!==-1)||(f.indexOf("width:")!==-1);var c=(f.indexOf("left:")!==-1)||(f.indexOf("top:")!==-1);if(!this.$2_C){this.$2_C=Function.createDelegate(this,this.$2_15)}if(!this.$2_D){this.$2_D=Function.createDelegate(this,this.$2_16)}this.$2_F=a;this.$2_10=c;this.$2_11=d;this.$2_12=h;this.$2_1.add_started(this.$2_C);this.$2_1.add_stopped(this.$2_D)}}},$2_15:function(c,b){this.onStarted(Sys.EventArgs.Empty);var a=c;C1.Web.UI.Utils.Common.setVisible(a.get_animatedElement(),true);(this.get_element())["___c1StartedAnimation"]=a;if(this.$2_7||this.$2_11){a.get_animatedElement().style.width=this.$2_12.width+"px";a.get_animatedElement().style.height=this.$2_12.height+"px"}if(this.$2_11){a.get_animatedElement().style.overflow="hidden";a.get_animatedElement().style.display="block"}if(this.$2_10){a.get_animatedElement().style.position="absolute";a.get_animatedElement().style.top=this.$2_12.y+"px";a.get_animatedElement().style.left=this.$2_12.x+"px"}if(!C1.Web.UI.Utils.Common.testIsNull(this.$2_5)){this.$2_5(c,b)}},$2_16:function(c,b){var a=c;a.remove_started(this.$2_C);a.remove_stopped(this.$2_D);if(this.$2_9){a.reset();this.$2_18(this.get_element(),this.$2_F)}(this.get_element())["___c1StartedAnimation"]=null;if(this.$2_7){this.$2_E.parentNode.removeChild(this.$2_E)}if(this.$2_7&&!this.$2_B){Sys.UI.DomElement.removeCssClass(this.get_element(),"c1-transparent")}if(!C1.Web.UI.Utils.Common.testIsNull(this.$2_6)){this.$2_6(c,b)}if(this.$2_7&&this.$2_B){Sys.UI.DomElement.removeCssClass(this.get_element(),"c1-transparent")}this.$2_F=null;this.$2_1=null;this.onStopped(Sys.EventArgs.Empty)},determineAnimationFramesByType:function(p,l,k){var j=', "height":{"from":'+k.height+', "to":'+k.height+"}";var i=', "width":{"from":'+k.width+', "to":'+k.width+"}";var h="";switch(p){case 1:h='[{"duration":'+l+', "opacity":{"from":0, "to":1.0}}]';break;case 2:h='[{"duration":'+l+', "opacity":{"from":1.0, "to":0}}]';break;case 3:h='[{"duration":'+l+i+', "height":{"from":0, "to":'+k.height+"}}]";break;case 7:h='[{"duration":'+l+i+', "height":{"from":'+k.height+', "to":0}}]';break;case 4:h='[{"duration":'+l+j+', "left":{"from":'+(k.x+k.width)+', "to":'+k.x+'} , "width":{"from":0, "to":'+k.width+"}}]";break;case 8:h='[{"duration":'+l+j+', "left":{"from":'+k.x+', "to":'+(k.x+k.width)+'} , "width":{"from":'+k.width+', "to":0}}]';break;case 5:h='[{"duration":'+l+i+', "top":{"from":'+(k.y+k.height)+', "to":'+k.y+'} , "height":{"from":0, "to":'+k.height+"}}]";break;case 9:h='[{"duration":'+l+i+', "top":{"from":'+k.y+', "to":'+(k.y+k.height)+'} , "height":{"from":'+k.height+', "to":0}}]';break;case 6:h='[{"duration":'+l+j+', "width":{"from":0, "to":'+k.width+"}}]";break;case 10:h='[{"duration":'+l+j+', "width":{"from":'+k.width+', "to":0}}]';break;case 11:var g=Math.round(k.height/6);h='[{"duration":'+(l/2)+i+', "height":{"from":'+k.height+', "to":'+g+'}}, {"duration":'+(l/2)+', "height":{"from":'+g+', "to":'+g+'} , "width":{"from":'+k.width+', "to":0}}]';break;case 12:var f=Math.round(k.height/6);h='[{"duration":'+(l/2)+', "height":{"from":'+f+', "to":'+f+'} , "width":{"from":0, "to":'+k.width+'}},{"duration":'+(l/2)+i+', "height":{"from":'+f+', "to":'+k.height+"}}]";break;case 15:h='[{"duration":'+l+j+', "left":{"from":'+(k.x+(k.width/2))+', "to":'+k.x+'} , "width":{"from":0, "to":'+k.width+"}}]";break;case 16:h='[{"duration":'+l+j+', "left":{"from":'+k.x+', "to":'+(k.x+(k.width/2))+'} , "width":{"from":'+k.width+', "to":0}}]';break;case 13:h='[{"duration":'+l+i+', "top":{"from":'+(k.y+(k.height/2))+', "to":'+k.y+'} , "height":{"from":0, "to":'+k.height+"}}]";break;case 14:h='[{"duration":'+l+i+', "top":{"from":'+k.y+', "to":'+(k.y+(k.height/2))+'} , "height":{"from":'+k.height+', "to":0}}]';break;case 17:var e=l/5;var d=k.x-4;var c=k.x+4;h='[{"duration":'+e+i+j+', "left":{"from":'+d+', "to":'+c+'}}, {"duration":'+e+i+j+', "left":{"from":'+c+', "to":'+d+'}}, {"duration":'+e+i+j+', "left":{"from":'+d+', "to":'+c+'}}, {"duration":'+e+i+j+', "left":{"from":'+c+', "to":'+d+"}}]";break;case 18:var b=l/5;var a=k.y-4;var v=k.y+4;h='[{"duration":'+b+i+j+', "top":{"from":'+a+', "to":'+v+'}}, {"duration":'+b+i+j+', "top":{"from":'+v+', "to":'+a+'}}, {"duration":'+b+i+j+', "top":{"from":'+a+', "to":'+v+'}}, {"duration":'+b+i+j+', "top":{"from":'+v+', "to":'+a+"}}]";break;case 21:var u=k.y+k.height;h='[{"duration":'+l+i+j+', "top":{"from":'+u+', "to":'+k.y+'}, "opacity":{"from":0, "to":1.0}}]';break;case 23:var t=k.y-k.height;h='[{"duration":'+l+i+j+', "top":{"from":'+k.y+', "to":'+t+'}, "opacity":{"from":1.0, "to":0}}]';break;case 19:var s=k.y-k.height;h='[{"duration":'+l+i+j+', "top":{"from":'+s+', "to":'+k.y+'}, "opacity":{"from":0, "to":1.0}}]';break;case 25:var r=k.y+k.height;h='[{"duration":'+l+i+j+', "top":{"from":'+k.y+', "to":'+r+'}, "opacity":{"from":1.0, "to":0}}]';break;case 22:var q=k.x-k.width;h='[{"duration":'+l+i+j+', "left":{"from":'+q+', "to":'+k.x+'}, "opacity":{"from":0, "to":1.0}}]';break;case 24:var o=k.x+k.width;h='[{"duration":'+l+i+j+', "left":{"from":'+k.x+', "to":'+o+'}, "opacity":{"from":1.0, "to":0}}]';break;case 20:var n=k.x+k.width;h='[{"duration":'+l+i+j+', "left":{"from":'+n+', "to":'+k.x+'}, "opacity":{"from":0, "to":1.0}}]';break;case 26:var m=k.x-k.width;h='[{"duration":'+l+i+j+', "left":{"from":'+k.x+', "to":'+m+'}, "opacity":{"from":1.0, "to":0}}]';break;default:break}return h},$2_17:function(b){var a={};a.Display=b.style.display;a.Width=b.style.width;a.Height=b.style.height;a.Top=b.style.top;a.Left=b.style.left;a.Overflow=b.style.overflow;a.Position=b.style.position;return a},$2_18:function(b,a){if(!a){return}b.style.display=a.Display;b.style.width=a.Width;b.style.height=a.Height;b.style.top=a.Top;b.style.left=a.Left;b.style.overflow=a.Overflow;b.style.position=a.Position}};C1.Web.UI.Behavior.AnimationManager=function(){};C1.Web.UI.Behavior.AnimationManager.get_fps=function(){return C1.Web.UI.Behavior.AnimationManager.$5};C1.Web.UI.Behavior.AnimationManager.set_fps=function(a){if(a<=0){return}if(a>1000){a=1000}C1.Web.UI.Behavior.AnimationManager.$5=a;C1.Web.UI.Behavior.AnimationManager.$8();C1.Web.UI.Behavior.AnimationManager.$7();return a};C1.Web.UI.Behavior.AnimationManager.get_queue=function(){return C1.Web.UI.Behavior.AnimationManager.$0};C1.Web.UI.Behavior.AnimationManager.get_activeAnimations=function(){return C1.Web.UI.Behavior.AnimationManager.$1};C1.Web.UI.Behavior.AnimationManager.start=function(){var b=new Date().getTime();for(var a=0;a<C1.Web.UI.Behavior.AnimationManager.$0.get_length();a++){C1.Web.UI.Behavior.AnimationManager.$1.add(C1.Web.UI.Behavior.AnimationManager.$0.get_item(a));C1.Web.UI.Behavior.AnimationManager.$0.get_item(a).$2_24(b)}C1.Web.UI.Behavior.AnimationManager.$0.clear();C1.Web.UI.Behavior.AnimationManager.$6();C1.Web.UI.Behavior.AnimationManager.$7()};C1.Web.UI.Behavior.AnimationManager.stop=function(b){for(var a=0;a<C1.Web.UI.Behavior.AnimationManager.$1.get_length();a++){C1.Web.UI.Behavior.AnimationManager.$1.get_item(a).stop(b)}C1.Web.UI.Behavior.AnimationManager.$8()};C1.Web.UI.Behavior.AnimationManager.pause=function(){for(var a=0;a<C1.Web.UI.Behavior.AnimationManager.$1.get_length();a++){C1.Web.UI.Behavior.AnimationManager.$1.get_item(a).pause()}};C1.Web.UI.Behavior.AnimationManager.resume=function(){for(var a=0;a<C1.Web.UI.Behavior.AnimationManager.$1.get_length();a++){C1.Web.UI.Behavior.AnimationManager.$1.get_item(a).resume()}};C1.Web.UI.Behavior.AnimationManager.$6=function(){if(C1.Web.UI.Behavior.AnimationManager.$1.get_length()<1){C1.Web.UI.Behavior.AnimationManager.$8();return}var b=new Date().getTime();for(var a=0;a<C1.Web.UI.Behavior.AnimationManager.$1.get_length();a++){(C1.Web.UI.Behavior.AnimationManager.$1.get_item(a)).$2_36(b)}};C1.Web.UI.Behavior.AnimationManager.$7=function(){if(!C1.Web.UI.Behavior.AnimationManager.$4){C1.Web.UI.Behavior.AnimationManager.$4=true;C1.Web.UI.Behavior.AnimationManager.$3=window.setInterval(C1.Web.UI.Behavior.AnimationManager.$2,Math.round(1000/C1.Web.UI.Behavior.AnimationManager.$5))}};C1.Web.UI.Behavior.AnimationManager.$8=function(){if(C1.Web.UI.Behavior.AnimationManager.$4){C1.Web.UI.Behavior.AnimationManager.$4=false;window.clearInterval(C1.Web.UI.Behavior.AnimationManager.$3)}};C1.Web.UI.Behavior.AnimationManager.$9=function(a){C1.Web.UI.Behavior.AnimationManager.$1.$0(a)};C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs=function(b,a){C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs.initializeBase(this);this.$1_0=b;this.$1_1=a};C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs.prototype={$1_0:0,$1_1:0,get_width:function(){return this.$1_0},get_height:function(){return this.$1_1}};C1.Web.UI.Behavior.ResizeBehavior=function(a){this._sizeType=255;this._easing=31;this._resizeHandles=255;this._resizeRestriction=-1;this._last=new Sys.UI.Point(0,0);this._grabType=255;this._lastBound=new Sys.UI.Bounds(0,0,2,2);this._resizePosition=1;C1.Web.UI.Behavior.ResizeBehavior.initializeBase(this,[a]);C1.Web.UI.Behavior.ResizeBehavior.callBaseMethod(this,"initialize");if(C1.Web.UI.Utils.Common.getCurrentStyle(this.get_element(),"position","").toString()!=="absolute"){this.get_element().style.position="relative"}this._handleNorth=this.$2_9("n",0);this._handleEast=this.$2_9("e",0);this._handleSouth=this.$2_9("s",0);this._handleWest=this.$2_9("w",0);this._handleSE=this.$2_9("se",1001);this._handleSW=this.$2_9("sw",1002);this._handleNE=this.$2_9("ne",1003);this._handleNW=this.$2_9("nw",1004);this._handleProxy=this.$2_A("proxy",10000);this._onMouseDown=Function.createDelegate(this,this._OnMouseDown);Sys.UI.DomEvent.addHandler(this.get_element(),"mousedown",this._onMouseDown);this._onMouseOut=Function.createDelegate(this,this._OnMouseOut);Sys.UI.DomEvent.addHandler(this.get_element(),"mouseout",this._onMouseOut);this._onMouseOver=Function.createDelegate(this,this._OnMouseOver);Sys.UI.DomEvent.addHandler(this.get_element(),"mouseover",this._onMouseOver);this._onSelectionStart=Function.createDelegate(this,this._OnSelectionStart);this._onMouseUp=Function.createDelegate(this,this._OnMouseUp);this._oldPosition=C1.Web.UI.Utils.Common.getCurrentStyle(this.get_element(),"position","").toString()};C1.Web.UI.Behavior.ResizeBehavior.prototype={_handleNorth:null,_handleSouth:null,_handleEast:null,_handleWest:null,_handleNW:null,_handleSW:null,_handleNE:null,_handleSE:null,_handleProxy:null,_isResizing:false,_maxHeight:100000,_minHeight:0,_maxWidth:100000,_minWidth:0,_preserveRatio:false,_resizeCssClass:"c1-resize",_autoHideHandles:false,_transparentHandles:false,_ghost:false,_step:1,_duration:0,_onMouseOver:null,_onMouseOut:null,_onMouseDown:null,_onMouseUp:null,_onMouseMove:null,_onSelectionStart:null,_oldtop:0,_oldleft:0,_oldwidth:0,_oldheight:0,_useProxy:false,_scale:1,_oldPosition:"",isFixIE6BUG:true,$2_1:null,$2_2:"_CloneID",add_resizeStart:function(a){this.get_events().addHandler(this.get_id()+"_ResizeStart",a)},remove_resizeStart:function(a){this.get_events().removeHandler(this.get_id()+"_ResizeStart",a)},add_resizing:function(a){this.get_events().addHandler(this.get_id()+"_Resizing",a)},remove_resizing:function(a){this.get_events().removeHandler(this.get_id()+"_Resizing",a)},add_resizeEnd:function(a){this.get_events().addHandler(this.get_id()+"_ResizeEnd",a)},remove_resizeEnd:function(a){this.get_events().removeHandler(this.get_id()+"_ResizeEnd",a)},add_helperResizing:function(a){this.get_events().addHandler(this.get_id()+"_HelperResizing",a)},remove_helperResizing:function(a){this.get_events().removeHandler(this.get_id()+"_HelperResizing",a)},$2_3:function(){var b=new Sys.EventArgs();var a=this.get_events().getHandler(this.get_id()+"_ResizeStart");if(a){a(this,b)}},$2_4:function(){var b=new Sys.EventArgs();var a=this.get_events().getHandler(this.get_id()+"_Resizing");if(a){a(this,b)}},$2_5:function(){var b=new Sys.EventArgs();var a=this.get_events().getHandler(this.get_id()+"_ResizeEnd");if(a){a(this,b)}},$2_6:function(d,c){var b=new C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs(d,c);var a=this.get_events().getHandler(this.get_id()+"_HelperResizing");if(a){a(this,b)}},get_resizePosition:function(){return this._resizePosition},set_resizePosition:function(a){this._resizePosition=a;return a},get_animationDuration:function(){return this._duration},set_animationDuration:function(a){if(this._duration!==a){this._duration=a;this.raisePropertyChanged("AnimationDuration")}return a},get_easing:function(){return this._easing},set_easing:function(a){if(this._easing!==a){this._easing=a;this.raisePropertyChanged("Easing")}return a},get_autoHideHandles:function(){return this._autoHideHandles},set_autoHideHandles:function(a){if(a!==this._autoHideHandles){this._autoHideHandles=a;this.raisePropertyChanged("AutoHideHandles")}if(a){this.showHandles(0)}else{this.showHandles(this.get_grabHandles())}this.$2_F();return a},get_ghost:function(){return this._ghost},set_ghost:function(a){if(a!==this._ghost){this._ghost=a;this.raisePropertyChanged("Ghost")}if(a){this.$2_C()}else{this.$2_E()}return a},get_transparentHandles:function(){return this._transparentHandles},set_transparentHandles:function(a){if(a!==this._transparentHandles){this._transparentHandles=a;this.raisePropertyChanged("TransparentHandles")}this.$2_11(a);this.$2_F();return a},get_maxHeight:function(){return this._maxHeight},set_maxHeight:function(a){if(this._maxHeight!==a){this._maxHeight=a;this.raisePropertyChanged("MaxHeight")}return a},get_minHeight:function(){return this._minHeight},set_minHeight:function(a){if(this._minHeight!==a){this._minHeight=a;this.raisePropertyChanged("MinHeight")}return a},get_maxWidth:function(){return this._maxWidth},set_maxWidth:function(a){if(this._maxWidth!==a){this._maxWidth=a;this.raisePropertyChanged("MaxWidth")}return a},get_minWidth:function(){return this._minWidth},set_minWidth:function(a){if(this._minWidth!==a){this._minWidth=a;this.raisePropertyChanged("MinWidth")}return a},get_preserveRatio:function(){return this._preserveRatio},set_preserveRatio:function(a){if(this._preserveRatio!==a){this._preserveRatio=a;this.raisePropertyChanged("PreserveRatio")}return a},get_useHelper:function(){return this._useProxy},set_useHelper:function(a){if(this._useProxy!==a){this._useProxy=a;this.raisePropertyChanged("UseHelper")}return a},get_resizeCssClass:function(){return this._resizeCssClass},set_resizeCssClass:function(a){if(this._resizeCssClass!==a){this.$2_7(this.get_element().childNodes,a);this._resizeCssClass=a;this.raisePropertyChanged("ResizeCssClass")}return a},get_grabHandles:function(){return this._resizeHandles},set_grabHandles:function(a){if(this._resizeHandles!==a){this._resizeHandles=a;this.raisePropertyChanged("ResizeHandles")}this.showHandles(this._resizeHandles);return a},get_restrictSizing:function(){return this._resizeRestriction},set_restrictSizing:function(a){if(this._resizeRestriction!==a){this._resizeRestriction=a}return a},get_step:function(){return this._step},set_step:function(a){if(this._step!==a){this._step=a;this.raisePropertyChanged("Step")}return a},get_ghostElement:function(){return this.$2_1},get_clonedElementIDSuffix:function(){return this.$2_2},set_clonedElementIDSuffix:function(a){this.$2_2=a;return a},setGrabHandlerStyle:function(a,b){if((a&2)===2){this.$2_8(this._handleEast,b)}if((a&1)===1){this.$2_8(this._handleNorth,b)}if((a&16)===16){this.$2_8(this._handleNE,b)}if((a&64)===64){this.$2_8(this._handleNW,b)}if((a&4)===4){this.$2_8(this._handleSouth,b)}if((a&32)===32){this.$2_8(this._handleSE,b)}if((a&128)===128){this.$2_8(this._handleSW,b)}if((a&8)===8){this.$2_8(this._handleWest,b)}},getGrabHandlerStyle:function(a){if((a&2)===2){return this._handleEast.style}if((a&1)===1){return this._handleNorth.style}if((a&16)===16){return this._handleNE.style}if((a&64)===64){return this._handleNW.style}if((a&4)===4){return this._handleSouth.style}if((a&32)===32){return this._handleSE.style}if((a&128)===128){return this._handleSW.style}if((a&8)===8){return this._handleWest.style}return null},dispose:function(){if(this._onMouseDown){Sys.UI.DomEvent.removeHandler(this.get_element(),"mousedown",this._onMouseDown);this._onMouseDown=null}if(this._onMouseOut){Sys.UI.DomEvent.removeHandler(this.get_element(),"mouseout",this._onMouseOut);this._onMouseOut=null}if(this._onMouseOver){Sys.UI.DomEvent.removeHandler(this.get_element(),"mouseover",this._onMouseOver);this._onMouseOver=null}C1.Web.UI.Behavior.ResizeBehavior.callBaseMethod(this,"dispose")},$2_7:function(c,b){for(var a=0;a<c.length;a++){if(c[a].tagName){if(c[a].className){if(Sys.UI.DomElement.containsCssClass(c[a],"c1-resize-handle")){c[a].className=c[a].className.replace("c1-resize-handle "+this._resizeCssClass,"c1-resize-handle "+b)}}}}},$2_8:function(f,e){var c=(f)["style"];if(typeof(e)!=="undefined"){var d=e;for(var b in d){var a={key:b,value:d[b]};try{c[a.key]=e[a.key]}catch(g){}}}},$2_9:function(c,b){var a=document.createElement("DIV");if(b){a.style.zIndex=b}a.style.overflow="hidden";a.style.position="absolute";a.style.display="block";a.style.fontSize="0.1px";a.className="c1-resize-handle "+this.get_resizeCssClass()+"-"+c;this.get_element().appendChild(a);return a},$2_A:function(c,b){var a=document.createElement("DIV");a.style.zIndex=b;a.style.position="absolute";a.style.display="none";a.style.fontSize="0.1px";a.className="c1-resize-handle "+this.get_resizeCssClass()+"-"+c;this.get_element().appendChild(a);return a},$2_B:function(b){var a="EaseLinear";switch(b){case 1:a="EaseOutElastic";break;case 2:a="EaseInElastic";break;case 3:a="EaseInOutElastic";break;case 4:a="EaseOutBounce";break;case 5:a="EaseInBounce";break;case 6:a="EaseInOutBounce";break;case 7:a="EaseOutExpo";break;case 8:a="EaseInExpo";break;case 9:a="EaseInOutExpo";break;case 10:a="EaseOutQuad";break;case 11:a="EaseInQuad";break;case 12:a="EaseInOutQuad";break;case 13:a="EaseOutSine";break;case 14:a="EaseInSine";break;case 15:a="EaseInOutSine";break;case 16:a="EaseOutCirc";break;case 17:a="EaseInCirc";break;case 18:a="EaseInOutCirc";break;case 19:a="EaseOutCubic";break;case 20:a="EaseInCubic";break;case 21:a="EaseInOutCubic";break;case 22:a="EaseOutQuint";break;case 23:a="EaseInQuint";break;case 24:a="EaseInOutQuint";break;case 25:a="EaseOutBack";break;case 26:a="EaseInBack";break;case 27:a="EaseInOutBack";break;case 28:a="EaseOutQuart";break;case 29:a="EaseInQuart";break;case 30:a="EaseInOutQuart";break}return a},$2_C:function(){if(!this._handleProxy.hasChildNodes()){var b=this.get_element().cloneNode(true);b.id+=this.$2_2;b.style.width="100%";b.style.height="100%";b.style.position="static";this.$2_D(b.childNodes);this._handleProxy.appendChild(b);for(var a=b.childNodes.length-1;a>=0;a--){if(b.childNodes[a].nodeType===1){if(Sys.UI.DomElement.containsCssClass(b.childNodes[a],"c1-resize-handle")){b.removeChild(b.childNodes[a])}}}C1.Web.UI.Utils.Common.setOpacity(b,0.5);this.$2_1=b}},$2_D:function(b){for(var a=0;a<b.length;a++){if(b[a].id){b[a].id+=this.$2_2}this.$2_D(b[a].childNodes)}},$2_E:function(){if(this._handleProxy.hasChildNodes()){for(var a=this._handleProxy.childNodes.length-1;a>=0;a--){this._handleProxy.removeChild(this._handleProxy.childNodes[a])}}},$2_F:function(){if(!this.isFixIE6BUG){return}if(Sys.Browser.InternetExplorer===Sys.Browser.agent&&Sys.Browser.version<7){try{C1.Web.UI.Utils.Common.setOuterWidth(this.get_element(),this.get_element().offsetWidth+1);C1.Web.UI.Utils.Common.setOuterWidth(this.get_element(),this.get_element().offsetWidth-1)}catch(a){}}},$2_10:function(j,i,h,g,f){var e={};e.to=i-C1.Web.UI.Utils.Common.getBorderWidth(j,3)-C1.Web.UI.Utils.Common.getBorderWidth(j,1);e.easing=this.$2_B(f);var d={};d.to=h-C1.Web.UI.Utils.Common.getBorderWidth(j,0)-C1.Web.UI.Utils.Common.getBorderWidth(j,2);d.easing=this.$2_B(f);var c={};c.duration=g;c.width=e;c.height=d;var b=[];b[0]=c;var a=new C1.Web.UI.Behavior.Animation(j,b);a.add_stopped(Function.createDelegate(this,this._animation_Stopped));a.add_animating(Function.createDelegate(this,this._animation_Animating));a.start(1)},_animation_Animating:function(a,b){this.$2_4()},_animation_Stopped:function(a,b){this.$2_F();this.$2_5()},showHandles:function(a){if(!a&&this._isResizing){return}if((a&2)===2){this._handleEast.style.display="block"}else{this._handleEast.style.display="none"}if((a&1)===1){this._handleNorth.style.display="block"}else{this._handleNorth.style.display="none"}if((a&16)===16){this._handleNE.style.display="block"}else{this._handleNE.style.display="none"}if((a&64)===64){this._handleNW.style.display="block"}else{this._handleNW.style.display="none"}if((a&4)===4){this._handleSouth.style.display="block"}else{this._handleSouth.style.display="none"}if((a&32)===32){this._handleSE.style.display="block"}else{this._handleSE.style.display="none"}if((a&128)===128){this._handleSW.style.display="block"}else{this._handleSW.style.display="none"}if((a&8)===8){this._handleWest.style.display="block"}else{this._handleWest.style.display="none"}},$2_11:function(b){var a=1;if(b){a=0}C1.Web.UI.Utils.Common.setOpacity(this._handleNE,a);C1.Web.UI.Utils.Common.setOpacity(this._handleSW,a);C1.Web.UI.Utils.Common.setOpacity(this._handleSE,a);C1.Web.UI.Utils.Common.setOpacity(this._handleNW,a);C1.Web.UI.Utils.Common.setOpacity(this._handleEast,a);C1.Web.UI.Utils.Common.setOpacity(this._handleNorth,a);C1.Web.UI.Utils.Common.setOpacity(this._handleSouth,a);C1.Web.UI.Utils.Common.setOpacity(this._handleWest,a)},$2_12:function(a){return(a.style.top)?parseInt(a.style.top):0},$2_13:function(a){return(a.style.left)?parseInt(a.style.left):0},proxy_ResizeLeft:function(a){this.proxy_ResizeWidth(-a);a=this.$2_15(a);this._handleProxy.style.left=(this._oldleft+a)+"px"},proxy_ResizeTop:function(a){this.proxy_ResizeHeight(-a);a=this.$2_14(a);this._handleProxy.style.top=(this._oldtop+a)+"px"},proxy_ResizeHeight:function(a){var b=0;a=this.get_step()*Math.round(a/this.get_step());if(this.get_element().offsetHeight+a>1){b=Math.abs(this.get_element().offsetHeight+a)}if(this.get_preserveRatio()){b=this.$2_16(b);if(this._grabType===4||this._grabType===1){C1.Web.UI.Utils.Common.setOuterWidth(this._handleProxy,b*this._scale)}}else{if(b>this.get_maxHeight()){b=this.get_maxHeight()}if(b<this.get_minHeight()){b=this.get_minHeight()}}C1.Web.UI.Utils.Common.setOuterHeight(this._handleProxy,b)},proxy_ResizeWidth:function(b){var a=0;b=this.get_step()*Math.round(b/this.get_step());if(this.get_element().offsetWidth+b>1){a=Math.abs(this.get_element().offsetWidth+b)}if(this.get_preserveRatio()){a=this.$2_17(a);if(this._grabType===2||this._grabType===8){C1.Web.UI.Utils.Common.setOuterHeight(this._handleProxy,a/this._scale)}}else{if(a>this.get_maxWidth()){a=this.get_maxWidth()}if(a<this.get_minWidth()){a=this.get_minWidth()}}C1.Web.UI.Utils.Common.setOuterWidth(this._handleProxy,a)},$2_14:function(c){var b=0;var a=0;if(this.get_preserveRatio()){b=(this.get_maxHeight()<(this.get_maxWidth()/this._scale))?this.get_maxHeight():parseInt((this.get_maxWidth()/this._scale));a=(this.get_minHeight()>(this.get_minWidth()/this._scale))?this.get_minHeight():parseInt(this.get_minWidth()/this._scale)}else{b=this.get_maxHeight();a=this.get_minHeight()}if(c>0){if(a>this._lastBound.height-c){c=this._lastBound.height-a}}else{if(b<this._lastBound.height-c){c=this._lastBound.height-b}}return c},$2_15:function(c){var b=0;var a=0;if(this.get_preserveRatio()){b=(this.get_maxWidth()<(this.get_maxHeight()*this._scale))?this.get_maxWidth():parseInt(this.get_maxHeight()*this._scale);a=(this.get_minWidth()>(this.get_minHeight()*this._scale))?this.get_minWidth():parseInt(this.get_minHeight()*this._scale)}else{b=this._maxWidth;a=this._minWidth}if(c>0){if(a>this._lastBound.width-c){c=this._lastBound.width-a}}else{if(b<this._lastBound.width-c){c=this._lastBound.width-b}}return c},$2_16:function(c){var b=(this.get_maxHeight()<(this.get_maxWidth()/this._scale))?this.get_maxHeight():parseInt((this.get_maxWidth()/this._scale));var a=(this.get_minHeight()>(this.get_minWidth()/this._scale))?this.get_minHeight():parseInt(this.get_minWidth()/this._scale);if(c>b){c=b}if(c<a){c=a}return c},$2_17:function(c){var b=(this.get_maxWidth()<(this.get_maxHeight()*this._scale))?this.get_maxWidth():parseInt(this.get_maxHeight()*this._scale);var a=(this.get_minWidth()>(this.get_minHeight()*this._scale))?this.get_minWidth():parseInt(this.get_minHeight()*this._scale);if(c>b){c=b}if(c<a){c=a}return c},_ResizeLeft:function(b){this._ResizeWidth(-b);b=this.$2_15(b);var a=this._lastBound.x+b;this.get_element().style.left=a+"px"},_ResizeTop:function(a){this._ResizeHeight(-a);a=this.$2_14(a);var b=this._lastBound.y+a;this.get_element().style.top=b+"px"},_ResizeHeight:function(a){a=this.get_step()*Math.round(a/this.get_step());var b=Math.min(Math.max(this._lastBound.height+a,this._minHeight),this._maxHeight);if(this.get_preserveRatio()){b=this.$2_16(b);if(this._grabType===4||this._grabType===1){C1.Web.UI.Utils.Common.setOuterWidth(this.get_element(),b*this._scale)}}C1.Web.UI.Utils.Common.setOuterHeight(this.get_element(),b)},_ResizeWidth:function(b){b=this.get_step()*Math.round(b/this.get_step());var a=Math.min(Math.max(this._lastBound.width+b,this._minWidth),this._maxWidth);if(this.get_preserveRatio()){a=this.$2_17(a);if(this._grabType===2||this._grabType===8){C1.Web.UI.Utils.Common.setOuterHeight(this.get_element(),a/this._scale)}}C1.Web.UI.Utils.Common.setOuterWidth(this.get_element(),a)},_OnMouseOver:function(a){if(this.get_autoHideHandles()){this.showHandles(this.get_grabHandles())}this.$2_F();if(!this._useProxy){if(this.get_animationDuration()>0||this.get_ghost()){this._useProxy=true}else{this._useProxy=false}}if(this._isResizing){return}this._sizeType=255;if(a.target===this._handleEast){this._sizeType=2;this._onMouseMove=Function.createDelegate(this,this._OnSizeEast);return}if(a.target===this._handleSE){this._sizeType=32;this._onMouseMove=Function.createDelegate(this,this._OnSizeSE);return}if(a.target===this._handleNE){this._sizeType=16;this._onMouseMove=Function.createDelegate(this,this._OnSizeNE);return}if(a.target===this._handleNorth){this._sizeType=1;this._onMouseMove=Function.createDelegate(this,this._OnSizeNorth);return}if(a.target===this._handleWest){this._sizeType=8;this._onMouseMove=Function.createDelegate(this,this._OnSizeWest);return}if(a.target===this._handleSouth){this._sizeType=4;this._onMouseMove=Function.createDelegate(this,this._OnSizeSouth);return}if(a.target===this._handleNW){this._sizeType=64;this._onMouseMove=Function.createDelegate(this,this._OnSizeNW);return}if(a.target===this._handleSW){this._sizeType=128;this._onMouseMove=Function.createDelegate(this,this._OnSizeSW);return}},_OnMouseOut:function(a){if(this.get_autoHideHandles()){this.showHandles(0)}this._sizeType=255},_OnMouseDown:function(c){if(this.get_restrictSizing()!==-1){var b=this._sizeType;if(!(b&this._resizeRestriction)){return}}if(this._sizeType!==255){this.setDocumentCursor(this._sizeType);if(this.get_resizePosition()===1){this.get_element().style.position=this._oldPosition;if(C1.Web.UI.Utils.Common.getCurrentStyle(this.get_element(),"position","").toString()==="absolute"){if(!(this._sizeType===4||this._sizeType===2||this._sizeType===32)){var a=C1.Web.UI.Utils.Common.getContentBounds(this.get_element(),false);C1.Web.UI.Utils.Common.setBounds(this.get_element(),a)}}}else{if(this.get_resizePosition()===2){this.get_element().style.position="relative"}else{var d=C1.Web.UI.Utils.Common.getContentBounds(this.get_element(),true);C1.Web.UI.Utils.Common.setBounds(this.get_element(),d)}}this._isResizing=true;this._last.x=c.clientX;this._last.y=c.clientY;this._lastBound.width=this.get_element().offsetWidth;this._lastBound.height=this.get_element().offsetHeight;this._lastBound.x=this.$2_13(this.get_element());this._lastBound.y=this.$2_12(this.get_element());if(this.get_preserveRatio()){switch(this._sizeType){case 16:this._onMouseMove=Function.createDelegate(this,this._OnSizeNorth);break;case 64:this._onMouseMove=Function.createDelegate(this,this._OnSizeWest);break;case 32:this._onMouseMove=Function.createDelegate(this,this._OnSizeEast);break;case 128:this._onMouseMove=Function.createDelegate(this,this._OnSizeWest);break}}Sys.UI.DomEvent.addHandler(document,"mouseup",this._onMouseUp);Sys.UI.DomEvent.addHandler(document,"selectstart",this._onSelectionStart);Sys.UI.DomEvent.addHandler(document,"mousemove",this._onMouseMove);if(this.get_preserveRatio()){this._scale=this.get_element().offsetWidth/this.get_element().offsetHeight;this._grabType=this._sizeType;switch(this._sizeType){case 16:this._grabType=1;break;case 64:this._grabType=8;break;case 32:this._grabType=2;break;case 128:this._grabType=8;break}}if(this._useProxy){C1.Web.UI.Utils.Common.setOuterWidth(this._handleProxy,this.get_element().offsetWidth);C1.Web.UI.Utils.Common.setOuterHeight(this._handleProxy,this.get_element().offsetHeight);this._handleProxy.style.top="-"+C1.Web.UI.Utils.Common.getBorderWidth(this.get_element(),0).toString()+"px";this._handleProxy.style.left="-"+C1.Web.UI.Utils.Common.getBorderWidth(this.get_element(),3).toString()+"px";this._oldtop=-parseInt(C1.Web.UI.Utils.Common.getBorderWidth(this.get_element(),0));this._oldleft=-parseInt(C1.Web.UI.Utils.Common.getBorderWidth(this.get_element(),3));this._oldwidth=this._handleProxy.offsetWidth;this._oldheight=this._handleProxy.offsetHeight;this._handleProxy.style.display="block"}this.$2_3()}},_OnMouseUp:function(c){document.body.style.cursor="default";Sys.UI.DomEvent.removeHandler(document,"mousemove",this._onMouseMove);Sys.UI.DomEvent.removeHandler(document,"mouseup",this._onMouseUp);Sys.UI.DomEvent.removeHandler(document,"selectstart",this._onSelectionStart);this._isResizing=false;if(this._useProxy){if(C1.Web.UI.Utils.Common.getCurrentStyle(this.get_element(),"position","").toString()==="absolute"){var b=this.get_element().offsetLeft+this.$2_13(this._handleProxy)-this._oldleft;this.get_element().style.left=b.toString()+"px";var a=this.get_element().offsetTop+this.$2_12(this._handleProxy)-this._oldtop;this.get_element().style.top=a.toString()+"px"}else{var f=this.$2_13(this.get_element())+this.$2_13(this._handleProxy)-this._oldleft;this.get_element().style.left=f.toString()+"px";var d=this.$2_12(this.get_element())+this.$2_12(this._handleProxy)-this._oldtop;this.get_element().style.top=d.toString()+"px"}if(this.get_animationDuration()>0){this.$2_10(this.get_element(),this._handleProxy.offsetWidth,this._handleProxy.offsetHeight,this.get_animationDuration(),this.get_easing())}else{C1.Web.UI.Utils.Common.setOuterWidth(this.get_element(),this._handleProxy.offsetWidth);C1.Web.UI.Utils.Common.setOuterHeight(this.get_element(),this._handleProxy.offsetHeight);this.$2_5()}this._handleProxy.style.display="none"}else{this.$2_5()}},_OnSelectionStart:function(a){a.preventDefault()},setDocumentCursor:function(a){switch(a){case 2:document.body.style.cursor="e-resize";break;case 1:document.body.style.cursor="n-resize";break;case 16:document.body.style.cursor="ne-resize";break;case 64:document.body.style.cursor="nw-resize";break;case 4:document.body.style.cursor="s-resize";break;case 32:document.body.style.cursor="se-resize";break;case 128:document.body.style.cursor="sw-resize";break;case 8:document.body.style.cursor="w-resize";break}},_OnSizeWest:function(a){if(this._useProxy){this.proxy_ResizeLeft(a.clientX-this._last.x);this.$2_6(this._handleProxy.offsetWidth,this._handleProxy.offsetHeight)}else{this._ResizeLeft(a.clientX-this._last.x);this.$2_F();this.$2_4()}},_OnSizeEast:function(a){if(this._useProxy){this.proxy_ResizeWidth(a.clientX-this._last.x);this.$2_6(this._handleProxy.offsetWidth,this._handleProxy.offsetHeight)}else{this._ResizeWidth(a.clientX-this._last.x);this.$2_F();this.$2_4()}},_OnSizeNorth:function(a){if(this._useProxy){this.proxy_ResizeTop(a.clientY-this._last.y);this.$2_6(this._handleProxy.offsetWidth,this._handleProxy.offsetHeight)}else{this._ResizeTop(a.clientY-this._last.y);this.$2_F();this.$2_4()}},_OnSizeSouth:function(a){if(this._useProxy){this.proxy_ResizeHeight(a.clientY-this._last.y);this.$2_6(this._handleProxy.offsetWidth,this._handleProxy.offsetHeight)}else{this._ResizeHeight(a.clientY-this._last.y);this.$2_F();this.$2_4()}},_OnSizeNW:function(a){this._OnSizeNorth(a);this._OnSizeWest(a)},_OnSizeNE:function(a){this._OnSizeNorth(a);this._OnSizeEast(a)},_OnSizeSW:function(a){this._OnSizeSouth(a);this._OnSizeWest(a)},_OnSizeSE:function(a){this._OnSizeSouth(a);this._OnSizeEast(a)}};Type.registerNamespace("C1.Web.UI.Interfaces");C1.Web.UI.Interfaces.IAjaxRequestSupport=function(){};C1.Web.UI.Interfaces.IAjaxRequestSupport.registerInterface("C1.Web.UI.Interfaces.IAjaxRequestSupport");C1.Web.UI.Interfaces.IC1Dockable=function(){};C1.Web.UI.Interfaces.IC1Dockable.registerInterface("C1.Web.UI.Interfaces.IC1Dockable");C1.Web.UI.Interfaces.IC1DropContainer=function(){};C1.Web.UI.Interfaces.IC1DropContainer.registerInterface("C1.Web.UI.Interfaces.IC1DropContainer");C1.Web.UI.Interfaces.IJsonSerializableSupport=function(){};C1.Web.UI.Interfaces.IJsonSerializableSupport.registerInterface("C1.Web.UI.Interfaces.IJsonSerializableSupport");C1.Web.UI.Interfaces.JsonSerializableHelper=function(d,c){this.control=c;var b=d;this._inputField=$get(b+"__jsonserverstate");if(this._inputField){this._inputField.name=this._inputField.id;var a=this._inputField.value;this._propertiesState=C1.Web.UI.Utils.JSON.fromJSONString(a);if(!this._propertiesState){throw Error.create("(CE101002)Control "+b+" can not be initialized because PropertiesState JSON string is wrong.")}this.control.assignPropertiesState(this._propertiesState)}else{throw Error.create("(CE101004) Control "+b+" can not be initialized because PropertiesState field is missing. Make sure waht method RenderJsonDataField called on server side")}};C1.Web.UI.Interfaces.JsonSerializableHelper.prototype={_inputField:null,_propertiesState:null,control:null,saveState:function(){if(this._inputField){this._inputField.value=C1.Web.UI.Utils.JSON.toJSONString(this._propertiesState)}else{throw Error.create("(CE101005) Can't save properties state.")}}};Type.registerNamespace("C1.Web.UI.Utils");C1.Web.UI.Utils.BrowserHistory=function(){};C1.Web.UI.Utils.BrowserHistory.get_events=function(){if(!C1.Web.UI.Utils.BrowserHistory.$4){C1.Web.UI.Utils.BrowserHistory.$4=new Sys.EventHandlerList();C1.Web.UI.Utils.BrowserHistory.$3="###";C1.Web.UI.Utils.BrowserHistory.$0=Function.createDelegate(null,C1.Web.UI.Utils.BrowserHistory.$6);C1.Web.UI.Utils.BrowserHistory.$1=Function.createDelegate(null,C1.Web.UI.Utils.BrowserHistory.$5);C1.Web.UI.Utils.RawEvent.addHandler(window.document,"click",C1.Web.UI.Utils.BrowserHistory.$1);C1.Web.UI.Utils.BrowserHistory.$2=window.setInterval(Function.createDelegate(null,C1.Web.UI.Utils.BrowserHistory.$6),300)}return C1.Web.UI.Utils.BrowserHistory.$4};C1.Web.UI.Utils.BrowserHistory.add_urlHashChanged=function(a){C1.Web.UI.Utils.BrowserHistory.get_events().addHandler("UrlHashChanged",a)};C1.Web.UI.Utils.BrowserHistory.remove_urlHashChanged=function(a){C1.Web.UI.Utils.BrowserHistory.get_events().removeHandler("UrlHashChanged",a)};C1.Web.UI.Utils.BrowserHistory.back=function(){window.history.back()};C1.Web.UI.Utils.BrowserHistory.forward=function(){window.history.forward()};C1.Web.UI.Utils.BrowserHistory.setUrl=function(a){window.location.href=a};C1.Web.UI.Utils.BrowserHistory.setUrlHash=function(a){window.location.hash=a};C1.Web.UI.Utils.BrowserHistory.getVerticalLinkInfo=function(c,d){var b=new C1.Web.UI.Utils.C1VerticalLinkInfo();b.urlHash=c;if(!C1.Web.UI.Utils.Common.testIsNull(d)&&d!==""){if(c.startsWith(d)){c=c.substr(d.length)}else{return null}}var a=c.indexOf("-pagetitle:");var f=c.indexOf(":pagetitle-");if(a!==-1&&f!==-1){var e=c.substring(a+"-pagetitle:".length,f);e=window.unescape(e);b.pageTitle=e;b.urlHashWithoutTitleAndPrefix=c.substring(0,a)+c.substring(f,c.length-"-pagetitle:".length)}else{b.urlHashWithoutTitleAndPrefix=c;b.pageTitle=""}b.previousPageTitle="";b.nextPageTitle="";return b};C1.Web.UI.Utils.BrowserHistory.getUrlHashPart=function(c,d,e){var b=c.indexOf(d);if(b===-1){return null}var a=c.length;if(!C1.Web.UI.Utils.Common.testIsNull(e)&&e!==""){a=c.indexOf(e);if(a===-1){return null}}return c.substring(b+d.length,a)};C1.Web.UI.Utils.BrowserHistory.$5=function(c){var b=C1.Web.UI.Utils.RawEvent.findTargetByTagName(c,"A");if(b){var a=(b).href;var d=a.indexOf("#");if(d!==-1){window.location.href=a;return C1.Web.UI.Utils.RawEvent.cancelBrowserResponse(c)}}window.setTimeout(C1.Web.UI.Utils.BrowserHistory.$0,1);return true};C1.Web.UI.Utils.BrowserHistory.$6=function(){var a=""+window.location.hash+"";if(C1.Web.UI.Utils.BrowserHistory.$3!==a){C1.Web.UI.Utils.BrowserHistory.$3=a;C1.Web.UI.Utils.BrowserHistory.$7()}};C1.Web.UI.Utils.BrowserHistory.$7=function(){var a=C1.Web.UI.Utils.BrowserHistory.get_events().getHandler("UrlHashChanged");if(a){a((C1.Web.UI.Utils.BrowserHistory.$3.length>0)?C1.Web.UI.Utils.BrowserHistory.$3.substring(1,C1.Web.UI.Utils.BrowserHistory.$3.length):"")}};C1.Web.UI.Utils.C1VerticalLinkInfo=function(){};C1.Web.UI.Utils.C1VerticalLinkInfo.prototype={urlHash:null,urlHashWithoutTitleAndPrefix:null,pageTitle:null,previousPageTitle:null,nextPageTitle:null};C1.Web.UI.Utils.Common=function(){};C1.Web.UI.Utils.Common.elementContains=function(b,a){if(C1.Web.UI.Utils.Common.testIsNull(a)||C1.Web.UI.Utils.Common.testIsNull(b)){return false}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){return b.contains(a)}if(a===b){return true}while(!C1.Web.UI.Utils.Common.testIsNull(a.parentNode)){a=a.parentNode;if(a===b){return true}}return false};C1.Web.UI.Utils.Common.getElementByCssClass=function(c,d){if(!C1.Web.UI.Utils.Common.testIsNull(c.className)&&Sys.UI.DomElement.containsCssClass(c,d)){return c}var b=c.childNodes.length;for(var a=0;a<b;a++){var e=c.childNodes[a];if(!C1.Web.UI.Utils.Common.testIsNull(e.className)&&Sys.UI.DomElement.containsCssClass(e,d)){return e}}return null};C1.Web.UI.Utils.Common.getElementByCssClassRecur=function(c,d){if(!C1.Web.UI.Utils.Common.testIsNull(c.className)&&Sys.UI.DomElement.containsCssClass(c,d)){return c}var b=c.childNodes.length;for(var a=0;a<b;a++){var f=c.childNodes[a];if(!C1.Web.UI.Utils.Common.testIsNull(f.className)&&Sys.UI.DomElement.containsCssClass(f,d)){return f}var e=C1.Web.UI.Utils.Common.getElementByCssClassRecur(f,d);if(!C1.Web.UI.Utils.Common.testIsNull(e)){return e}}return null};C1.Web.UI.Utils.Common.getCurrentStyle=function(d,e,c){var b=null;if(d){if(d.currentStyle){b=(d.currentStyle)[e]}else{if(document.defaultView&&document.defaultView.getComputedStyle){var a=document.defaultView.getComputedStyle(d,null);if(a){b=(a)[e]}}}if(!b&&d.style.getPropertyValue){b=d.style.getPropertyValue(e)}else{if(!b&&d.style.getAttribute){b=d.style.getAttribute(e)}}}if(!b||(b)===""||typeof(b)==="undefined"){if(typeof(c)!=="undefined"){b=c}else{b=null}}return b};C1.Web.UI.Utils.Common.getOpacity=function(c){if(!c){throw Error.argumentNull()}var b=false;var a="1.0";if(c.filters){var e=c.filters;if(e.length>0){var d=(e)["DXImageTransform.Microsoft.Alpha"];if(d){a=(d.opacity/100);b=true}}}else{a=C1.Web.UI.Utils.Common.getCurrentStyle(c,"opacity",1);b=true}if(!b){return 1}return parseFloat(a)};C1.Web.UI.Utils.Common.parseSize=function(d,c){if(d){if(d==="inherit"||d==="auto"){return 0}var b=0;var a=C1.Web.UI.Utils.Common.$15(d);b=a.size;if(a.type==="em"){var e=C1.Web.UI.Utils.Common.$12(c);if(!e){e=16}b=b*e}return Math.round(b)}return 0};C1.Web.UI.Utils.Common.setOpacity=function(h,i){if(!h){throw Error.argumentNull()}if(i<0){i=0}if(i>1){i=1}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var g=false;try{g=(h.filters)}catch(e){}var f=true;if(g){var d=h.filters;if(d.length>0){var c=(d)["DXImageTransform.Microsoft.Alpha"];if(c){c.enabled=(i!==1);f=true;c.opacity=i*100}}}if(i>=1){var b=""+h.style.filter+"";var a=new RegExp("progid:( )*DXImageTransform\\.Microsoft\\.Alpha( )*\\(opacity=(\"|')*\\d*\\.*\\d*(\"|')*\\)( )*;*","i");b=b.replace(a,"");h.style.filter=b}else{if(f){h.style.filter=String.format("progid:DXImageTransform.Microsoft.Alpha(opacity={0})",i*100)}}}else{h.style.opacity=i}};C1.Web.UI.Utils.Common.isVisible=function(c){if(c){var b=C1.Web.UI.Utils.Common.getCurrentStyle(c,"display",null);var a=C1.Web.UI.Utils.Common.getCurrentStyle(c,"visibility",null);if(b&&a){var e=(b!=="none"&&a!=="hidden");if(e){var d=c.parentNode;if(d){e=(d.offsetHeight>0||d.offsetWidth>0)}}return e}else{if(c.offsetHeight>0||c.offsetWidth>0){return true}}}return false};C1.Web.UI.Utils.Common.isBorderVisible=function(c,d){if(!c){throw Error.argumentNull("element")}if(d<0||d>3){throw Error.argumentOutOfRange("boxSide")}var b=C1.Web.UI.Utils.Common.$0[d];var a=C1.Web.UI.Utils.Common.getCurrentStyle(c,b,null);return a!=="none"};C1.Web.UI.Utils.Common.getBorderWidth=function(c,d){if(!c){throw Error.argumentNull("element")}if(d<0||d>3){throw Error.argumentOutOfRange("boxSide")}if(!C1.Web.UI.Utils.Common.isBorderVisible(c,d)){return 0}var b=C1.Web.UI.Utils.Common.$1[d];var a=C1.Web.UI.Utils.Common.getCurrentStyle(c,b,null);return C1.Web.UI.Utils.Common.$16(a)};C1.Web.UI.Utils.Common.getPadding=function(c,d){if(!c){throw Error.argumentNull("element")}if(d<0||d>3){throw Error.argumentOutOfRange("boxSide")}var b=C1.Web.UI.Utils.Common.$2[d];var a=C1.Web.UI.Utils.Common.getCurrentStyle(c,b,null);return C1.Web.UI.Utils.Common.$13(a,c)};C1.Web.UI.Utils.Common.getMargin=function(c,d){if(!c){throw Error.argumentNull("element")}if(d<0||d>3){throw Error.argumentOutOfRange("boxSide")}var b=C1.Web.UI.Utils.Common.$3[d];var a=C1.Web.UI.Utils.Common.getCurrentStyle(c,b,null);return C1.Web.UI.Utils.Common.$14(a,c)};C1.Web.UI.Utils.Common.getBorderBox=function(b){if(!b){throw Error.argumentNull("element")}var a={top:C1.Web.UI.Utils.Common.getBorderWidth(b,0),right:C1.Web.UI.Utils.Common.getBorderWidth(b,1),bottom:C1.Web.UI.Utils.Common.getBorderWidth(b,2),left:C1.Web.UI.Utils.Common.getBorderWidth(b,3)};a.horizontal=a.left+a.right;a.vertical=a.top+a.bottom;return a};C1.Web.UI.Utils.Common.getPaddingBox=function(b){if(!b){throw Error.argumentNull("element")}var a={top:C1.Web.UI.Utils.Common.getPadding(b,0),right:C1.Web.UI.Utils.Common.getPadding(b,1),bottom:C1.Web.UI.Utils.Common.getPadding(b,2),left:C1.Web.UI.Utils.Common.getPadding(b,3)};a.horizontal=a.left+a.right;a.vertical=a.top+a.bottom;return a};C1.Web.UI.Utils.Common.getMarginBox=function(b){if(!b){throw Error.argumentNull("element")}var a={top:C1.Web.UI.Utils.Common.getMargin(b,0),right:C1.Web.UI.Utils.Common.getMargin(b,1),bottom:C1.Web.UI.Utils.Common.getMargin(b,2),left:C1.Web.UI.Utils.Common.getMargin(b,3)};a.horizontal=a.left+a.right;a.vertical=a.top+a.bottom;return a};C1.Web.UI.Utils.Common.setBounds=function(a,b){if(!a){throw Error.argumentNull("element")}if(!b){throw Error.argumentNull("bounds")}C1.Web.UI.Utils.Common.setSize(a,new C1.Web.UI.Utils.Size(b.width,b.height));Sys.UI.DomElement.setLocation(a,b.x,b.y)};C1.Web.UI.Utils.Common.getContentBounds=function(c,d){var b=C1.Web.UI.Utils.Measurement.getBounds(c);var a=C1.Web.UI.Utils.Common.getBorderBox(c);b.x+=a.left;b.y+=a.top;b.width-=a.horizontal;b.height-=a.vertical;a=C1.Web.UI.Utils.Common.getPaddingBox(c);b.x+=a.left;b.y+=a.top;b.width-=a.horizontal;b.height-=a.vertical;return b};C1.Web.UI.Utils.Common.isBrowserStandardMode=function(){if(Sys.Browser.agent===Sys.Browser.Safari){return true}if(Sys.Browser.agent===Sys.Browser.Opera&&Sys.Browser.version>8){return true}if(document.compatMode==="CSS1Compat"){return true}return false};C1.Web.UI.Utils.Common.getOuterWidth=function(b){var a=b.offsetWidth;a+=C1.Web.UI.Utils.Common.getMargin(b,3);a+=C1.Web.UI.Utils.Common.getMargin(b,1);return a};C1.Web.UI.Utils.Common.getOuterHeight=function(b){var a=b.offsetHeight;a+=C1.Web.UI.Utils.Common.getMargin(b,0);a+=C1.Web.UI.Utils.Common.getMargin(b,2);return a};C1.Web.UI.Utils.Common.setOuterWidth=function(a,b){b-=C1.Web.UI.Utils.Common.getMargin(a,3);b-=C1.Web.UI.Utils.Common.getMargin(a,1);if(C1.Web.UI.Utils.Common.isBrowserStandardMode()){b-=C1.Web.UI.Utils.Common.getPadding(a,3);b-=C1.Web.UI.Utils.Common.getPadding(a,1);b-=C1.Web.UI.Utils.Common.getBorderWidth(a,3);b-=C1.Web.UI.Utils.Common.getBorderWidth(a,1)}if(b<0){a.style.width="auto"}else{a.style.width=b+"px"}};C1.Web.UI.Utils.Common.setOuterHeight=function(c,a){var b=a;a-=C1.Web.UI.Utils.Common.getMargin(c,0);a-=C1.Web.UI.Utils.Common.getMargin(c,2);if(C1.Web.UI.Utils.Common.isBrowserStandardMode()){a-=C1.Web.UI.Utils.Common.getPadding(c,0);a-=C1.Web.UI.Utils.Common.getPadding(c,2);a-=C1.Web.UI.Utils.Common.getBorderWidth(c,0);a-=C1.Web.UI.Utils.Common.getBorderWidth(c,2)}if(a<0){c.style.height="auto"}else{c.style.height=a+"px"}};C1.Web.UI.Utils.Common.getContentWidth=function(b){var a=b.offsetWidth;a-=C1.Web.UI.Utils.Common.getPadding(b,3);a-=C1.Web.UI.Utils.Common.getPadding(b,1);a-=C1.Web.UI.Utils.Common.getBorderWidth(b,3);a-=C1.Web.UI.Utils.Common.getBorderWidth(b,1);return a};C1.Web.UI.Utils.Common.getContentHeight=function(b){var a=b.offsetHeight;a-=C1.Web.UI.Utils.Common.getPadding(b,0);a-=C1.Web.UI.Utils.Common.getPadding(b,2);a-=C1.Web.UI.Utils.Common.getBorderWidth(b,0);a-=C1.Web.UI.Utils.Common.getBorderWidth(b,2);return a};C1.Web.UI.Utils.Common.getInheritedBackgroundColor=function(c){if(!c){return"#FFFFFF"}var b=C1.Web.UI.Utils.Common.getCurrentStyle(c,"backgroundColor",null);try{while(!b||b===""||b==="transparent"||b==="rgba(0, 0, 0, 0)"){c=c.parentNode;if(!c){b="#FFFFFF"}else{b=C1.Web.UI.Utils.Common.getCurrentStyle(c,"backgroundColor",null)}}}catch(a){b="#FFFFFF"}return b};C1.Web.UI.Utils.Common.getMaxZIndex=function(c){if(!c){return 0}var b=0;var a=c;while(a){if(a.style&&((a.style.zIndex)||!a.style.zIndex)){if(a.style.zIndex>b){b=a.style.zIndex*1}}a=a.parentNode}return b};C1.Web.UI.Utils.Common.testIsNull=function(a){return(typeof(a)==="undefined")||(typeof(a)==="object"&&!a)};C1.Web.UI.Utils.Common.stringIsNullOrEmpty=function(a){return(typeof(a)==="undefined")||(typeof(a)==="object"&&!a)||a===""};C1.Web.UI.Utils.Common.clearPendingTimeout=function(a){if(a){window.clearTimeout(a)}return null};C1.Web.UI.Utils.Common.setVisible=function(a,b){if(a&&b!==C1.Web.UI.Utils.Common.isVisible(a)){if(b){if(a.style.removeAttribute){a.style.removeAttribute("display")}else{a.style.removeProperty("display")}}else{a.style.display="none"}a.style.visibility=(b)?"visible":"hidden"}C1.Web.UI.Utils.Common.notifyVisibleState(a)};C1.Web.UI.Utils.Common.notifyVisibleState=function(c){if(!C1.Web.UI.Utils.Common.$5){return}for(var b=0;b<C1.Web.UI.Utils.Common.$6.length;b++){try{var a=C1.Web.UI.Utils.Common.$5[b];var h=C1.Web.UI.Utils.Common.isVisible(a);for(var g=0;g<C1.Web.UI.Utils.Common.$4.length;g++){var f=C1.Web.UI.Utils.Common.$4[g];f(a,h)}if(h!==C1.Web.UI.Utils.Common.$7[b]){C1.Web.UI.Utils.Common.$7[b]=h;var e=C1.Web.UI.Utils.Common.$6[b];e(a,h)}}catch(d){}}};C1.Web.UI.Utils.Common.listenVisibleState=function(c,d){if(!c){C1.Web.UI.Utils.Common.$4[C1.Web.UI.Utils.Common.$4.length]=d;return}var b=c.id;if(!b||b===""){throw Error.create("ListenVisibleState failed, element id is empty")}if(!C1.Web.UI.Utils.Common.$5){C1.Web.UI.Utils.Common.$5=new Array(0);C1.Web.UI.Utils.Common.$7=new Array(0);C1.Web.UI.Utils.Common.$6=new Array(0)}var a=C1.Web.UI.Utils.Common.$5.length;C1.Web.UI.Utils.Common.$5[a]=c;C1.Web.UI.Utils.Common.$7[a]=C1.Web.UI.Utils.Common.isVisible(c);C1.Web.UI.Utils.Common.$6[a]=d};C1.Web.UI.Utils.Common.unListenVisibleState=function(c,d){if(!c){Array.remove(C1.Web.UI.Utils.Common.$4,d);return}if(!C1.Web.UI.Utils.Common.$5){return}var b=C1.Web.UI.Utils.Common.$5.length;for(var a=0;a<b;a++){if(C1.Web.UI.Utils.Common.$5[a]===c){Array.removeAt(C1.Web.UI.Utils.Common.$5,a);Array.removeAt(C1.Web.UI.Utils.Common.$7,a);Array.removeAt(C1.Web.UI.Utils.Common.$6,a)}}};C1.Web.UI.Utils.Common.showModalLayer=function(c,b){C1.Web.UI.Utils.Common.$B=b;if(!C1.Web.UI.Utils.Common.$A){if(!C1.Web.UI.Utils.Common.$9){if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){C1.Web.UI.Utils.Common.$8=document.createElement("IFRAME");C1.Web.UI.Utils.Common.$8.style.display="none";C1.Web.UI.Utils.Common.$8.style.position="absolute";C1.Web.UI.Utils.Common.setOpacity(C1.Web.UI.Utils.Common.$8,0.01);document.body.appendChild(C1.Web.UI.Utils.Common.$8)}C1.Web.UI.Utils.Common.$9=document.createElement("DIV");C1.Web.UI.Utils.Common.$9.style.display="none";C1.Web.UI.Utils.Common.$9.style.position="absolute";C1.Web.UI.Utils.Common.$9.style.backgroundColor="gray";C1.Web.UI.Utils.Common.setOpacity(C1.Web.UI.Utils.Common.$9,0.01);document.body.appendChild(C1.Web.UI.Utils.Common.$9)}if(C1.Web.UI.Utils.Common.$B){C1.Web.UI.Utils.Common.$C=window.document.documentElement.style.overflow;window.document.documentElement.style.overflow="hidden"}var a=0;if(c){a=C1.Web.UI.Utils.Common.getMaxZIndex(c)}if(a<100){a=102}if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){C1.Web.UI.Utils.Common.$8.style.zIndex=(a-2);C1.Web.UI.Utils.Common.$8.style.display=""}C1.Web.UI.Utils.Common.$9.style.zIndex=(a-1);C1.Web.UI.Utils.Common.$9.style.display="";C1.Web.UI.Utils.Common.$A=true;C1.Web.UI.Utils.Common.$D()}};C1.Web.UI.Utils.Common.hideModalLayer=function(){try{if(C1.Web.UI.Utils.Common.$9){if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){C1.Web.UI.Utils.Common.$8.style.display="none"}C1.Web.UI.Utils.Common.$9.style.display="none"}C1.Web.UI.Utils.Common.$A=false;if(C1.Web.UI.Utils.Common.$B){window.document.documentElement.style.overflow=C1.Web.UI.Utils.Common.$C}}catch(a){C1.Web.UI.Utils.Common.$A=false}};C1.Web.UI.Utils.Common.$D=function(){var a=C1.Web.UI.Utils.Common.$F();a.width=a.width+a.x-20;a.height=a.height+a.y;a.x=0;a.y=0;if(a.width<0){a.width=0}if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){C1.Web.UI.Utils.Common.$E(C1.Web.UI.Utils.Common.$8,a)}C1.Web.UI.Utils.Common.$E(C1.Web.UI.Utils.Common.$9,a)};C1.Web.UI.Utils.Common.$E=function(b,a){b.style.left=a.x+"px";b.style.top=a.y+"px";b.style.height=a.height+"px";b.style.width=a.width+"px"};C1.Web.UI.Utils.Common.$F=function(){var b=C1.Web.UI.Utils.Measurement.getWindowClientAreaSize();var a=0;var e=0;var d=document.body;a=a+d.scrollLeft+document.documentElement.scrollLeft;e=e+d.scrollTop+document.documentElement.scrollTop;if(a<0){a=0}if(e<0){e=0}var c=new Sys.UI.Bounds(a,e,b.width,b.height);return c};C1.Web.UI.Utils.Common.setSize=function(d,c){if(!d){throw Error.argumentNull("element")}if(!c){throw Error.argumentNull("size")}var b=C1.Web.UI.Utils.Common.getBorderBox(d);var a=C1.Web.UI.Utils.Common.getPaddingBox(d);var e=new C1.Web.UI.Utils.Size(c.width-b.horizontal-a.horizontal,c.height-b.vertical-a.vertical);C1.Web.UI.Utils.Common.setContentSize(d,e)};C1.Web.UI.Utils.Common.setContentSize=function(d,c){if(!d){throw Error.argumentNull("element")}if(!c){throw Error.argumentNull("size")}if(C1.Web.UI.Utils.Common.getCurrentStyle(d,"MozBoxSizing",null)==="border-box"||C1.Web.UI.Utils.Common.getCurrentStyle(d,"BoxSizing",null)==="border-box"){var f=C1.Web.UI.Utils.Common.getBorderBox(d);var e=C1.Web.UI.Utils.Common.getPaddingBox(d);c=new C1.Web.UI.Utils.Size(c.width+f.horizontal+e.horizontal,c.height+f.vertical+e.vertical)}var b=c.width;var a=c.height;if(b<0){b=0}if(a<0){a=0}d.style.width=b+"px";d.style.height=a+"px"};C1.Web.UI.Utils.Common.setHeight=function(d,b){if(!d){throw Error.argumentNull("element")}if(C1.Web.UI.Utils.Common.testIsNull(b)){throw Error.argumentNull("height")}var c=C1.Web.UI.Utils.Common.getBorderBox(d);var a=C1.Web.UI.Utils.Common.getPaddingBox(d);var e=C1.Web.UI.Utils.Common.getMarginBox(d);b=b-c.vertical-a.vertical-e.vertical;if(C1.Web.UI.Utils.Common.getCurrentStyle(d,"MozBoxSizing",null)==="border-box"||C1.Web.UI.Utils.Common.getCurrentStyle(d,"BoxSizing",null)==="border-box"){b=b+c.vertical+a.vertical}if(b<0){b=0}d.style.height=b+"px"};C1.Web.UI.Utils.Common.setWidth=function(c,d){if(!c){throw Error.argumentNull("element")}if(C1.Web.UI.Utils.Common.testIsNull(d)){throw Error.argumentNull("width")}var b=C1.Web.UI.Utils.Common.getBorderBox(c);var a=C1.Web.UI.Utils.Common.getPaddingBox(c);var e=C1.Web.UI.Utils.Common.getMarginBox(c);d=d-b.horizontal-a.horizontal-e.horizontal;if(C1.Web.UI.Utils.Common.getCurrentStyle(c,"MozBoxSizing",null)==="border-box"||C1.Web.UI.Utils.Common.getCurrentStyle(c,"BoxSizing",null)==="border-box"){d=d+b.horizontal+a.horizontal}if(d<0){d=0}c.style.width=d+"px"};C1.Web.UI.Utils.Common.parseHTML=function(k,c,l){var j="|$#";var i="~!@";var h="~:~";var g=k.split(j);if(g.length===3){var f=g[0];var e=g[1];var d=f.split(i);var b=e.split(i);for(var a=0;a<d.length;a++){if(d[a]){C1.Web.UI.Utils.Common.$10(d[a],h)}}c.innerHTML=g[2];C1.Web.UI.Utils.Common.$11(b,l)}};C1.Web.UI.Utils.Common.$10=function(f,d){var b=f.split(d);var a=b[0];var g=b[1];if(a.toLowerCase()==="href"){var e=document.createElement("link");e.href=g;e.type="text/css";e.rel="stylesheet";document.getElementsByTagName("head")[0].appendChild(e)}else{if(a.toLowerCase()==="text"){if(Sys.Browser.agent===Sys.Browser.InternetExplorer){window.css=g;document.createStyleSheet("javascript:css")}else{var c=document.createElement("style");c.type="text/css";c.innerHTML=g;document.getElementsByTagName("head")[0].appendChild(c)}}}};C1.Web.UI.Utils.Common.$11=function(j,i){var h="~:~";var g=window.Sys._ScriptLoader.getInstance();var f=window.i;window.Sys._ScriptLoader.readLoadedScripts();window.i=f;for(var e=0;e<j.length;e++){if(j[e]){var d=j[e].split(h);var c=d[0];var b=d[1];if(c.toLowerCase()==="src"){var a=window.Sys._ScriptLoader.isScriptLoaded(b);if(a){continue}g.queueScriptReference(b)}else{if(c.toLowerCase()==="text"){g.queueScriptBlock(b)}}}}g.loadScripts(90,i,null,null)};C1.Web.UI.Utils.Common.executePostbackReference=function(c){var b=c.indexOf("(");var a=c.indexOf(")");var f=c.substring(0,b);var e=c.substring(b+1,a);var d=e.split(",");if(d.length>1){window[f](d[0].trim(),d[1].trim())}else{if(d.length>0){window[f](d[0].trim())}else{window[f]()}}};C1.Web.UI.Utils.Common.$12=function(a){return window.C1__GetPixelFontSize(a)};C1.Web.UI.Utils.Common.$13=function(b,a){return C1.Web.UI.Utils.Common.parseSize(b,a)};C1.Web.UI.Utils.Common.$14=function(b,a){return C1.Web.UI.Utils.Common.parseSize(b,a)};C1.Web.UI.Utils.Common.$15=function(f){if(!f){throw Error.argumentNull("value")}f=f.trim().toLowerCase();var b=f.length;var a=-1;for(var d=0;d<b;d++){var c=f.substr(d,1);if((c<"0"||c>"9")&&c!=="-"&&c!=="."&&c!==","){break}a=d}if(a===-1){throw Error.argument("unit has no digits")}var g;if(a<(b-1)){g=f.substr(a+1).trim()}else{g="px"}var e=parseFloat(f.substr(0,a+1));if(g==="px"){e=Math.floor(e)}return{size:e,type:g}};C1.Web.UI.Utils.Common.$16=function(d){if(!C1.Web.UI.Utils.Common.borderThicknesses){C1.Web.UI.Utils.Common.borderThicknesses={};var b=document.createElement("div");b.style.visibility="hidden";b.style.position="absolute";b.style.fontSize="1px";document.body.appendChild(b);var a=document.createElement("div");a.style.height="0px";a.style.overflow="hidden";b.appendChild(a);var e=b.offsetHeight;a.style.borderTop="solid black";a.style.borderTopWidth="thin";C1.Web.UI.Utils.Common.borderThicknesses.thin=b.offsetHeight-e;a.style.borderTopWidth="medium";C1.Web.UI.Utils.Common.borderThicknesses.medium=b.offsetHeight-e;a.style.borderTopWidth="thick";C1.Web.UI.Utils.Common.borderThicknesses.thick=b.offsetHeight-e;b.removeChild(a);document.body.removeChild(b)}if(d){switch(d){case"thin":case"medium":case"thick":return C1.Web.UI.Utils.Common.borderThicknesses[d];case"inherit":return 0}var c=C1.Web.UI.Utils.Common.$15(d);return c.size}return 0};C1.Web.UI.Utils._RuntimeDebugStub=function(){};C1.Web.UI.Utils._RuntimeDebugStub.$0=function(c,b,a){};C1.Web.UI.Utils._RuntimeDebugStub.$1=function(){};C1.Web.UI.Utils._RuntimeDebugStub.$2=function(a){};C1.Web.UI.Utils._RuntimeDebugStub.$3=function(a){};C1.Web.UI.Utils._RuntimeDebugStub.$4=function(b,a){};C1.Web.UI.Utils.Measurement=function(){};C1.Web.UI.Utils.Measurement.getLocation=function(j){if(j===document.documentElement){return new Sys.UI.Point(0,0)}if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){if((j)["window"]===j||j.nodeType===9||!(j)["getClientRects"]||!(j)["getBoundingClientRect"]){return new Sys.UI.Point(0,0)}var i=j.getClientRects();if(!i||!(i)["length"]){return new Sys.UI.Point(0,0)}var h=(i)[0];var g=0;var f=0;var e=false;try{e=(j.ownerDocument.parentWindow)["frameElement"]}catch(c){e=true}if(e){var b=j.getBoundingClientRect();if(!b){return new Sys.UI.Point(0,0)}var a=h.left;var m=h.top;for(var l=1;l<(i)["length"];l++){var k=(i)[l];if(k.left<a){a=k.left}if(k.top<m){m=k.top}}g=a-(b)["left"];f=m-(b)["top"]}var d=((j)["document"])["documentElement"];return new Sys.UI.Point(h.left-2-g+d.scrollLeft,h.top-2-f+d.scrollTop)}return Sys.UI.DomElement.getLocation(j)};C1.Web.UI.Utils.Measurement.getBounds=function(c){try{var b=C1.Web.UI.Utils.Measurement.getLocation(c);return new Sys.UI.Bounds(b.x,b.y,(c.offsetWidth||0),(c.offsetHeight||0))}catch(a){return new Sys.UI.Bounds(0,0,0,0)}};C1.Web.UI.Utils.Measurement.getStyleLocation=function(b){var a=new Sys.UI.Point(C1.Web.UI.Utils.Measurement.$1(b),C1.Web.UI.Utils.Measurement.$2(b));a.x-=(C1.Web.UI.Utils.Common.getMargin(b,3));a.y-=(C1.Web.UI.Utils.Common.getMargin(b,0));if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&b.offsetParent){if(b.offsetParent.tagName!=="HTML"&&b.offsetParent.tagName!=="BODY"){a.x+=C1.Web.UI.Utils.Common.getBorderWidth(b.offsetParent,3);a.y+=C1.Web.UI.Utils.Common.getBorderWidth(b.offsetParent,0)}}return a};C1.Web.UI.Utils.Measurement.getStyleBounds=function(c){var b=C1.Web.UI.Utils.Measurement.getStyleLocation(c);var a=new Sys.UI.Bounds(b.x,b.y,(c.offsetWidth||0),(c.offsetHeight||0));var g=C1.Web.UI.Utils.Common.getBorderBox(c);var f=C1.Web.UI.Utils.Common.getPaddingBox(c);var e=g.horizontal+f.horizontal;var d=g.vertical+f.vertical;a.width-=e;a.height-=d;if(a.width<0){a.width=0}if(a.height<0){a.height=0}C1.Web.UI.Utils.Measurement.$0(c,a);return a};C1.Web.UI.Utils.Measurement.getMousePointerPosition=function(c){if(!c){c=window.event}var b=new Sys.UI.Point(0,0);var a=c;if(a.pageX||a.pageY){b.x=a.pageX;b.y=a.pageY}else{var f=document.documentElement;var d=document.body;b.x=a.clientX+(((f.scrollLeft))?f.scrollLeft:d.scrollLeft)-(((f.clientLeft))?f.clientLeft:0);b.y=a.clientY+(((f.scrollTop))?f.scrollTop:d.scrollTop)-(((f.clientTop))?f.clientTop:0)}return b};C1.Web.UI.Utils.Measurement.getWindowClientAreaBounds=function(){var b=C1.Web.UI.Utils.Measurement.getWindowClientAreaSize();var a=C1.Web.UI.Utils.Measurement.getWindowClientAreaScrollOffsets();var c=new Sys.UI.Bounds(a.x,a.y,b.width,b.height);return c};C1.Web.UI.Utils.Measurement.getWindowClientAreaSize=function(){var b=0,a=0;if((window)["innerWidth"]){b=(window)["innerWidth"];a=(window)["innerHeight"]}else{if(document.documentElement&&((document.documentElement.clientWidth)||(document.documentElement.clientHeight))){b=document.documentElement.clientWidth;a=document.documentElement.clientHeight}else{if(document.body&&((document.body.clientWidth)||(document.body.clientHeight))){b=document.body.clientWidth;a=document.body.clientHeight}}}return new C1.Web.UI.Utils.Size(b,a)};C1.Web.UI.Utils.Measurement.getWindowClientAreaScrollOffsets=function(){var b=document.body;var a=new Sys.UI.Point(b.scrollLeft+document.documentElement.scrollLeft,b.scrollTop+document.documentElement.scrollTop);return a};C1.Web.UI.Utils.Measurement.isPointOverDOMElement=function(a,c){var b=Sys.UI.DomElement.getBounds(c);return C1.Web.UI.Utils.Measurement.isPointInsideRect(a,b)};C1.Web.UI.Utils.Measurement.isPointInsideRect=function(a,b){if(a.x<b.x||a.x>(b.x+b.width)){return false}if(a.y<b.y||a.y>(b.y+b.height)){return false}return true};C1.Web.UI.Utils.Measurement.setAbsoluteLocation=function(b,a){Sys.UI.DomElement.setLocation(b,a.x,a.y)};C1.Web.UI.Utils.Measurement.$0=function(e,c){var b=C1.Web.UI.Utils.Common.getCurrentStyle(e,"width",null);if(b){b=b.replace("px","");if(b!==""&&b!=="auto"&&b.indexOf("%")===-1){var f=b*1;if(!isNaN(f)){c.width=f}}}var a=C1.Web.UI.Utils.Common.getCurrentStyle(e,"height",null);if(a){a=a.replace("px","");if(a!==""&&a!=="auto"&&a.indexOf("%")===-1){var d=a*1;if(!isNaN(d)){c.height=d}}}};C1.Web.UI.Utils.Measurement.$1=function(b){var a=b.offsetLeft;if(b.offsetParent){if(b.offsetParent.style.position==="absolute"||b.offsetParent.style.position==="relative"){if(Sys.Browser.agent===Sys.Browser.InternetExplorer){if(b.offsetParent.style.position==="relative"){a-=C1.Web.UI.Utils.Common.getBorderWidth(b.offsetParent,3)}}return a}a+=C1.Web.UI.Utils.Measurement.$1(b.offsetParent)}return a};C1.Web.UI.Utils.Measurement.$2=function(b){var a=b.offsetTop;if(b.offsetParent){if(b.offsetParent.style&&(b.offsetParent.style.position==="absolute"||b.offsetParent.style.position==="relative")){if(Sys.Browser.agent===Sys.Browser.InternetExplorer){}return a}a+=C1.Web.UI.Utils.Measurement.$2(b.offsetParent)}return a};C1.Web.UI.Utils.Size=function(b,a){this.width=b;this.height=a};C1.Web.UI.Utils.Size.get_empty=function(){return new C1.Web.UI.Utils.Size(0,0)};C1.Web.UI.Utils.Size.prototype={width:0,height:0};C1.Web.UI.Utils.Rectangle=function(b,d,c,a){this._x=b;this._y=d;this.$0=c;this.$1=a};C1.Web.UI.Utils.Rectangle.union=function(f,d){var e=Math.min(f.get_x(),d.get_x());var c=Math.min(f.get_y(),d.get_y());var h=Math.max(f.get_x()+f.get_width(),d.get_x()+d.get_width());var g=Math.max(f.get_y()+f.get_height(),d.get_y()+d.get_height());return new C1.Web.UI.Utils.Rectangle(e,c,h-e,g-c)};C1.Web.UI.Utils.Rectangle.get_empty=function(){return new C1.Web.UI.Utils.Rectangle(0,0,0,0)};C1.Web.UI.Utils.Rectangle.prototype={get_x:function(){return this._x},set_x:function(a){this._x=a;return a},get_y:function(){return this._y},set_y:function(a){this._y=a;return a},get_width:function(){return this.$0},set_width:function(a){this.$0=a;return a},get_height:function(){return this.$1},set_height:function(a){this.$1=a;return a},get_bottom:function(){return this._y+this.$1},get_right:function(){return this._x+this.$0},get_size:function(){return new C1.Web.UI.Utils.Size(this.$0,this.$1)},set_size:function(a){this.$0=a.width;this.$1=a.height;return a},get_location:function(){return new Sys.UI.Point(this._x,this._y)},set_location:function(a){this._x=a.x;this._y=a.y;return a},offset:function(a,b){this.set_x(this.get_x()+a);this.set_y(this.get_y()+b)},_x:0,_y:0,$0:0,$1:0};C1.Web.UI.Utils.RawEvent=function(){};C1.Web.UI.Utils.RawEvent.addHandler=function(b,a,c){C1.Web.UI.Utils.RawEvent.$0(b,a,c)};C1.Web.UI.Utils.RawEvent.removeHandler=function(b,a,c){C1.Web.UI.Utils.RawEvent.$1(b,a,c)};C1.Web.UI.Utils.RawEvent.cancelBrowserResponse=function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)){a=window.event}if(C1.Web.UI.Utils.Common.testIsNull(a)){return false}if(!C1.Web.UI.Utils.Common.testIsNull((a)["stopPropagation"])){a.stopPropagation()}if(!C1.Web.UI.Utils.Common.testIsNull((a)["preventDefault"])){a.preventDefault()}a.cancelBubble=true;a.returnValue=false;return false};C1.Web.UI.Utils.RawEvent.getTarget=function(a){return(((a)["target"])?(a)["target"]:a.srcElement)};C1.Web.UI.Utils.RawEvent.findTargetByTagName=function(c,b){var a=C1.Web.UI.Utils.RawEvent.getTarget(c);b=b.toUpperCase();while(a&&a.tagName){if(a.tagName.toUpperCase()===b){return a}a=a.parentNode}return null};C1.Web.UI.Utils.RawEvent.$0=function(c,b,a){if((c)["attachEvent"]){c.attachEvent("on"+b,a)}else{if((c)["addEventListener"]){c.addEventListener(b,a,false)}else{(c)["on"+b]=a}}};C1.Web.UI.Utils.RawEvent.$1=function(c,b,a){if((c)["detachEvent"]){c.detachEvent("on"+b,a)}else{if((c)["removeEventListener"]){c.removeEventListener(b,a,false)}else{(c)["on"+b]=null}}};C1.Web.UI.Utils.AccessKeyHelper=function(){};C1.Web.UI.Utils.AccessKeyHelper.registerAccessKey=function(d,c,b){d=""+d+"";d=d.toUpperCase();c.accessKey="";if(!C1.Web.UI.Utils.AccessKeyHelper.$0){C1.Web.UI.Utils.AccessKeyHelper.$1={};C1.Web.UI.Utils.AccessKeyHelper.$2={};C1.Web.UI.Utils.AccessKeyHelper.$3={};C1.Web.UI.Utils.AccessKeyHelper.$0=Function.createDelegate(null,C1.Web.UI.Utils.AccessKeyHelper.$4);C1.Web.UI.Utils.RawEvent.addHandler(window.document,"keydown",C1.Web.UI.Utils.AccessKeyHelper.$0)}if(C1.Web.UI.Utils.Common.testIsNull(C1.Web.UI.Utils.AccessKeyHelper.$1[d])){C1.Web.UI.Utils.AccessKeyHelper.$1[d]=[]}var a=C1.Web.UI.UIElement.$5();(C1.Web.UI.Utils.AccessKeyHelper.$1[d])[(C1.Web.UI.Utils.AccessKeyHelper.$1[d]).length]=a;C1.Web.UI.Utils.AccessKeyHelper.$2[a]=c;C1.Web.UI.Utils.AccessKeyHelper.$3[a]=b};C1.Web.UI.Utils.AccessKeyHelper.unRegisterAccessKey=function(d,c){d=""+d+"";d=d.toUpperCase();var b=(C1.Web.UI.Utils.AccessKeyHelper.$1[d]);if(!C1.Web.UI.Utils.Common.testIsNull(b)){for(var a=0;a<b.length;a++){var e=b[a];if(!C1.Web.UI.Utils.Common.testIsNull(C1.Web.UI.Utils.AccessKeyHelper.$2[e])){if((C1.Web.UI.Utils.AccessKeyHelper.$2[e]).id===c.id){C1.Web.UI.Utils.AccessKeyHelper.$2[e]=null;C1.Web.UI.Utils.AccessKeyHelper.$3[e]=null;b.splice(a,1);if(!b.length){C1.Web.UI.Utils.AccessKeyHelper.$1[d]=null}}}}}};C1.Web.UI.Utils.AccessKeyHelper.$4=function(i){var h=false;if(i.altKey){var g=i.keyCode;if(g!==18){var f=String.fromCharCode(i.keyCode);var e=(C1.Web.UI.Utils.AccessKeyHelper.$1[f]);if(!C1.Web.UI.Utils.Common.testIsNull(e)){for(var d=0;d<e.length;d++){var c=e[d];if(!C1.Web.UI.Utils.Common.testIsNull(C1.Web.UI.Utils.AccessKeyHelper.$3[c])){var b=(C1.Web.UI.Utils.AccessKeyHelper.$3[c]);h=b(i)}else{if(!C1.Web.UI.Utils.Common.testIsNull(C1.Web.UI.Utils.AccessKeyHelper.$2[c])){try{(C1.Web.UI.Utils.AccessKeyHelper.$2[c]).focus()}catch(a){}}}}}}}return h};C1.Web.UI.Utils.JSON=function(){};C1.Web.UI.Utils.JSON.toJSONString=function(a){return window.__JSONC1.stringify(a)};C1.Web.UI.Utils.JSON.fromJSONString=function(a){return window.__JSONC1.parse(a)};C1.Web.UI.Utils.RGBColor=function(){this._r=0;this._g=0;this._b=0;this.$0={};this.$0.aliceblue="f0f8ff";this.$0.antiquewhite="faebd7";this.$0.aqua="00ffff";this.$0.aquamarine="7fffd4";this.$0.azure="f0ffff";this.$0.beige="f5f5dc";this.$0.bisque="ffe4c4";this.$0.black="000000";this.$0.blanchedalmond="ffebcd";this.$0.blue="0000ff";this.$0.blueviolet="8a2be2";this.$0.brown="a52a2a";this.$0.burlywood="deb887";this.$0.cadetblue="5f9ea0";this.$0.chartreuse="7fff00";this.$0.chocolate="d2691e";this.$0.coral="ff7f50";this.$0.cornflowerblue="6495ed";this.$0.cornsilk="fff8dc";this.$0.crimson="dc143c";this.$0.cyan="00ffff";this.$0.darkblue="00008b";this.$0.darkcyan="008b8b";this.$0.darkgoldenrod="b8860b";this.$0.darkgray="a9a9a9";this.$0.darkgreen="006400";this.$0.darkkhaki="bdb76b";this.$0.darkmagenta="8b008b";this.$0.darkolivegreen="556b2f";this.$0.darkorange="ff8c00";this.$0.darkorchid="9932cc";this.$0.darkred="8b0000";this.$0.darksalmon="e9967a";this.$0.darkseagreen="8fbc8f";this.$0.darkslateblue="483d8b";this.$0.darkslategray="2f4f4f";this.$0.darkturquoise="00ced1";this.$0.darkviolet="9400d3";this.$0.deeppink="ff1493";this.$0.deepskyblue="00bfff";this.$0.dimgray="696969";this.$0.dodgerblue="1e90ff";this.$0.feldspar="d19275";this.$0.firebrick="b22222";this.$0.floralwhite="fffaf0";this.$0.forestgreen="228b22";this.$0.fuchsia="ff00ff";this.$0.gainsboro="dcdcdc";this.$0.ghostwhite="f8f8ff";this.$0.gold="ffd700";this.$0.goldenrod="daa520";this.$0.gray="808080";this.$0.green="008000";this.$0.greenyellow="adff2f";this.$0.honeydew="f0fff0";this.$0.hotpink="ff69b4";this.$0["indianred "]="cd5c5c";this.$0["indigo "]="4b0082";this.$0.ivory="fffff0";this.$0.khaki="f0e68c";this.$0.lavender="e6e6fa";this.$0.lavenderblush="fff0f5";this.$0.lawngreen="7cfc00";this.$0.lemonchiffon="fffacd";this.$0.lightblue="add8e6";this.$0.lightcoral="f08080";this.$0.lightcyan="e0ffff";this.$0.lightgoldenrodyellow="fafad2";this.$0.lightgrey="d3d3d3";this.$0.lightgreen="90ee90";this.$0.lightpink="ffb6c1";this.$0.lightsalmon="ffa07a";this.$0.lightseagreen="20b2aa";this.$0.lightskyblue="87cefa";this.$0.lightslateblue="8470ff";this.$0.lightslategray="778899";this.$0.lightsteelblue="b0c4de";this.$0.lightyellow="ffffe0";this.$0.lime="00ff00";this.$0.limegreen="32cd32";this.$0.linen="faf0e6";this.$0.magenta="ff00ff";this.$0.maroon="800000";this.$0.mediumaquamarine="66cdaa";this.$0.mediumblue="0000cd";this.$0.mediumorchid="ba55d3";this.$0.mediumpurple="9370d8";this.$0.mediumseagreen="3cb371";this.$0.mediumslateblue="7b68ee";this.$0.mediumspringgreen="00fa9a";this.$0.mediumturquoise="48d1cc";this.$0.mediumvioletred="c71585";this.$0.midnightblue="191970";this.$0.mintcream="f5fffa";this.$0.mistyrose="ffe4e1";this.$0.moccasin="ffe4b5";this.$0.navajowhite="ffdead";this.$0.navy="000080";this.$0.oldlace="fdf5e6";this.$0.olive="808000";this.$0.olivedrab="6b8e23";this.$0.orange="ffa500";this.$0.orangered="ff4500";this.$0.orchid="da70d6";this.$0.palegoldenrod="eee8aa";this.$0.palegreen="98fb98";this.$0.paleturquoise="afeeee";this.$0.palevioletred="d87093";this.$0.papayawhip="ffefd5";this.$0.peachpuff="ffdab9";this.$0.peru="cd853f";this.$0.pink="ffc0cb";this.$0.plum="dda0dd";this.$0.powderblue="b0e0e6";this.$0.purple="800080";this.$0.red="ff0000";this.$0.rosybrown="bc8f8f";this.$0.royalblue="4169e1";this.$0.saddlebrown="8b4513";this.$0.salmon="fa8072";this.$0.sandybrown="f4a460";this.$0.seagreen="2e8b57";this.$0.seashell="fff5ee";this.$0.sienna="a0522d";this.$0.silver="c0c0c0";this.$0.skyblue="87ceeb";this.$0.slateblue="6a5acd";this.$0.slategray="708090";this.$0.snow="fffafa";this.$0.springgreen="00ff7f";this.$0.steelblue="4682b4";this.$0.tan="d2b48c";this.$0.teal="008080";this.$0.thistle="d8bfd8";this.$0.tomato="ff6347";this.$0.turquoise="40e0d0";this.$0.violet="ee82ee";this.$0.violetred="d02090";this.$0.wheat="f5deb3";this.$0.white="ffffff";this.$0.whitesmoke="f5f5f5";this.$0.yellow="ffff00";this.$0.yellowgreen="9acd32"};C1.Web.UI.Utils.RGBColor.prototype={_r:0,_g:0,_b:0,$0:null,get_red:function(){return this._r},set_red:function(a){this._r=((a<0)?0:((a>255)?255:a));return a},get_green:function(){return this._g},set_green:function(a){this._g=((a<0)?0:((a>255)?255:a));return a},get_blue:function(){return this._b},set_blue:function(a){this._b=((a<0)?0:((a>255)?255:a));return a},parse:function(e){e=e.replace("/ /g","");if(e.charAt(0)==="#"){e=e.substr(1,6)}e=e.toLowerCase();var d=this.$0;for(var c in d){var f={key:c,value:d[c]};if(f.key===e){e=this.$0[f.key]}}var b=new RegExp("^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$");var a=b.exec(e);if(a){this._r=parseInt(a[1]);this._g=parseInt(a[2]);this._b=parseInt(a[3]);this.$1();return true}b=new RegExp("^(\\w{2})(\\w{2})(\\w{2})$");a=b.exec(e);if(a){this._r=parseInt(a[1],16);this._g=parseInt(a[2],16);this._b=parseInt(a[3],16);this.$1();return true}b=new RegExp("^(\\w{1})(\\w{1})(\\w{1})$");a=b.exec(e);if(a){this._r=parseInt(a[1]+a[1],16);this._g=parseInt(a[2]+a[2],16);this._b=parseInt(a[3]+a[3],16);this.$1();return true}return false},$1:function(){this._r=(this._r<0||isNaN(this._r))?0:((this._r>255)?255:this._r);this._g=(this._g<0||isNaN(this._g))?0:((this._g>255)?255:this._g);this._b=(this._b<0||isNaN(this._b))?0:((this._b>255)?255:this._b)},toRGBString:function(){return String.format("rgb{{0}, {1}, {2}}",this._r,this._g,this._b)},toHexString:function(){var b=this._r.toString(16);var a=this._g.toString(16);var d=this._b.toString(16);if(b.length===1){b="0"+b}if(a.length===1){a="0"+a}if(d.length===1){d="0"+d}var c="#"+b;c+=a+d;return c}};C1.Web.UI.Utils.UTFSupport=function(){};C1.Web.UI.Utils.UTFSupport.encodeString=function(c){for(var b=0;b<C1.Web.UI.Utils.UTFSupport.$0.length;b++){var a=new RegExp(C1.Web.UI.Utils.UTFSupport.$2[b],"g");c=c.replace(a,C1.Web.UI.Utils.UTFSupport.$1[b])}return c};C1.Web.UI.Utils.UTFSupport.decodeString=function(c){if(C1.Web.UI.Utils.Common.testIsNull(c)){return c}for(var b=0;b<C1.Web.UI.Utils.UTFSupport.$1.length;b++){var a=new RegExp("("+C1.Web.UI.Utils.UTFSupport.$1[b]+")","g");c=c.replace(a,C1.Web.UI.Utils.UTFSupport.$0[b])}return c};C1.Web.UI.Utils.WindowHashAccessor=function(){};C1.Web.UI.Utils.WindowHashAccessor.getObject=function(a){return window[a]};C1.Web.UI.Utils.WindowHashAccessor.setObject=function(a,b){window[a]=b};Type.registerNamespace("C1.Web.UI.SerializablePrimitives");C1.Web.UI.SerializablePrimitives.IC1ItemsOwner=function(){};C1.Web.UI.SerializablePrimitives.IC1ItemsOwner.registerInterface("C1.Web.UI.SerializablePrimitives.IC1ItemsOwner");C1.Web.UI.SerializablePrimitives.C1Item=function(a){this.$8=-1;C1.Web.UI.SerializablePrimitives.C1Item.initializeBase(this,[a]);this._items=new C1.Web.UI.SerializablePrimitives.C1ItemsCollection(this)};C1.Web.UI.SerializablePrimitives.C1Item.prototype={$7:false,dispose:function(){C1.Web.UI.SerializablePrimitives.C1Item.callBaseMethod(this,"dispose")},initialize:function(){C1.Web.UI.SerializablePrimitives.C1Item.callBaseMethod(this,"initialize")},initializeItems:function(){if(this.$7){return}this.$7=true;var b=this._propertiesState.Items;var a=this.get_items();if(b){for(var f=0;f<b.length;f++){var e=b[f];var d=$get(e.ClientID);if(d){var c=this.createInstance(d);c.assignPropertiesState(e);a.add(c);c.initialize()}else{throw Error.create("(CE101003)Child UIElement with Client ID "+e.ClientID+" can not be initialized. DOMElement not found.")}}}},get_index:function(){return this.$8},set_index:function(a){this.$8=a;return a},calculateCurrentLevel:function(){if(this._owner&&C1.Web.UI.SerializablePrimitives.C1Item.isInstanceOfType(this._owner)){return(this._owner).calculateCurrentLevel()+1}else{return 0}},$9:function(a){this._owner=a},_items:null,_owner:null,get_items:function(){this.initializeItems();return this._items},get_owner:function(){return this._owner},createInstance:function(a){return new C1.Web.UI.SerializablePrimitives.C1Item(a)}};C1.Web.UI.SerializablePrimitives.C1ItemsCollection=function(a){this.list=[];this.$0=a};C1.Web.UI.SerializablePrimitives.C1ItemsCollection.prototype={get_owner:function(){return this.$0},get_last:function(){return(this.get_count()>0)?this.get_item(this.get_count()-1):null},get_count:function(){return this.list.length},onListChanged:function(){},add:function(b){var a=this.get_count();this.insert(a,b);return a},insert:function(a,b){if(b){b.$9(this.$0);b.$8=a}this.list.splice(a,0,b);this.onListChanged()},removeAt:function(a){(this.list[a]).$9(null);this.list.splice(a,1);this.onListChanged()},removeRange:function(b,c){for(var a=0;a<c;a++){this.removeAt(b)}},reverse:function(){this.list.reverse();this.onListChanged()},clear:function(){for(var a=0;a<this.list.length;a++){(this.list[a]).$9(null)}this.list=[];this.onListChanged()},contains:function(b){for(var a=0;a<this.list.length;a++){if((this.list[a]).UID===b.UID){return true}}return false},indexOf:function(b){for(var a=0;a<this.list.length;a++){if((this.list[a]).UID===b.UID){return a}}return -1},get_length:function(){return this.list.length},$0:null,$1:function(b){for(var a=0;a<this.get_count();a++){if(this.get_item(a).UID===b.UID){this.removeAt(a);break}}},get_item:function(a){return this.list[a]},set_item:function(b,c){var a=this.list[b];if(c!==a){if(a){a.$9(null)}this.list[b]=c;if(c){c.$9(this.$0)}this.onListChanged()}return c}};C1.Web.UI.FrameworkStringConstants.registerClass("C1.Web.UI.FrameworkStringConstants");C1.Web.UI.UIElement.registerClass("C1.Web.UI.UIElement",null,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.C1RoundCornerPanel.registerClass("C1.Web.UI.C1RoundCornerPanel",C1.Web.UI.UIElement,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.C1ThemeableControlBase.registerClass("C1.Web.UI.C1ThemeableControlBase",Sys.UI.Control,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.C1ThemeHelper.registerClass("C1.Web.UI.C1ThemeHelper");C1.Web.UI.C1AjaxHelper.registerClass("C1.Web.UI.C1AjaxHelper");C1.Web.UI.ContentPanel.registerClass("C1.Web.UI.ContentPanel",C1.Web.UI.UIElement,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.DockPanel.registerClass("C1.Web.UI.DockPanel",C1.Web.UI.UIElement);C1.Web.UI.DOMScrollBehavior.registerClass("C1.Web.UI.DOMScrollBehavior");C1.Web.UI.DragDropEventArgs.registerClass("C1.Web.UI.DragDropEventArgs",Sys.EventArgs);C1.Web.UI.DragDrop.registerClass("C1.Web.UI.DragDrop",Sys.Component);C1.Web.UI.FlowPanel.registerClass("C1.Web.UI.FlowPanel",C1.Web.UI.UIElement);C1.Web.UI.PopupBehavior.registerClass("C1.Web.UI.PopupBehavior");C1.Web.UI.C1Rounder.registerClass("C1.Web.UI.C1Rounder",Sys.UI.Behavior);C1.Web.UI.ScrollBehavior.registerClass("C1.Web.UI.ScrollBehavior",Sys.Component);C1.Web.UI.ScrollBehaviorSettings.registerClass("C1.Web.UI.ScrollBehaviorSettings",null,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.ScrollPanel.registerClass("C1.Web.UI.ScrollPanel",C1.Web.UI.UIElement);C1.Web.UI.Timer.registerClass("C1.Web.UI.Timer",Sys.Component);C1.Web.UI.UIElementList.registerClass("C1.Web.UI.UIElementList");C1.Web.UI.Behavior.Animation.registerClass("C1.Web.UI.Behavior.Animation",Sys.UI.Behavior);C1.Web.UI.Behavior.AnimationCollection.registerClass("C1.Web.UI.Behavior.AnimationCollection");C1.Web.UI.Behavior.AnimationEffects.registerClass("C1.Web.UI.Behavior.AnimationEffects",Sys.UI.Behavior);C1.Web.UI.Behavior.AnimationManager.registerClass("C1.Web.UI.Behavior.AnimationManager");C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs.registerClass("C1.Web.UI.Behavior.ResizeBehaviorHelperEventArgs",Sys.EventArgs);C1.Web.UI.Behavior.ResizeBehavior.registerClass("C1.Web.UI.Behavior.ResizeBehavior",Sys.UI.Behavior);C1.Web.UI.Interfaces.JsonSerializableHelper.registerClass("C1.Web.UI.Interfaces.JsonSerializableHelper");C1.Web.UI.Utils.BrowserHistory.registerClass("C1.Web.UI.Utils.BrowserHistory");C1.Web.UI.Utils.C1VerticalLinkInfo.registerClass("C1.Web.UI.Utils.C1VerticalLinkInfo");C1.Web.UI.Utils.Common.registerClass("C1.Web.UI.Utils.Common");C1.Web.UI.Utils._RuntimeDebugStub.registerClass("C1.Web.UI.Utils._RuntimeDebugStub");C1.Web.UI.Utils.Measurement.registerClass("C1.Web.UI.Utils.Measurement");C1.Web.UI.Utils.Size.registerClass("C1.Web.UI.Utils.Size");C1.Web.UI.Utils.Rectangle.registerClass("C1.Web.UI.Utils.Rectangle");C1.Web.UI.Utils.RawEvent.registerClass("C1.Web.UI.Utils.RawEvent");C1.Web.UI.Utils.AccessKeyHelper.registerClass("C1.Web.UI.Utils.AccessKeyHelper");C1.Web.UI.Utils.JSON.registerClass("C1.Web.UI.Utils.JSON");C1.Web.UI.Utils.RGBColor.registerClass("C1.Web.UI.Utils.RGBColor");C1.Web.UI.Utils.UTFSupport.registerClass("C1.Web.UI.Utils.UTFSupport");C1.Web.UI.Utils.WindowHashAccessor.registerClass("C1.Web.UI.Utils.WindowHashAccessor");C1.Web.UI.SerializablePrimitives.C1Item.registerClass("C1.Web.UI.SerializablePrimitives.C1Item",C1.Web.UI.UIElement,C1.Web.UI.SerializablePrimitives.IC1ItemsOwner,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.SerializablePrimitives.C1ItemsCollection.registerClass("C1.Web.UI.SerializablePrimitives.C1ItemsCollection");C1.Web.UI.FrameworkStringConstants.frameworK_ASSEMBLY_NAME="C1.Web.UI.2";C1.Web.UI.FrameworkStringConstants.frameworK_SCRIPT_RESOURCE_PATH="C1.Web.UI.Resources.C1.Web.UI.Client.js";C1.Web.UI.FrameworkStringConstants.frameworK_CSS_RESOURCE_PATH="C1.Web.UI.Resources.Framework.css";C1.Web.UI.C1AjaxHelper.$0=-1;C1.Web.UI.PopupBehavior.$12=0;C1.Web.UI.UIElement.all={};C1.Web.UI.UIElement.$0=0;C1.Web.UI.Behavior.Animation.$2_20=0;C1.Web.UI.Behavior.Animation.$2_2B={posTop:true,posRight:true,posBottom:true,posLeft:true,posHeight:true,posWidth:true,length:true,parentRule:true};C1.Web.UI.Behavior.Animation.$2_2C={display:true,position:true,top:true,right:true,bottom:true,left:true};C1.Web.UI.Behavior.AnimationManager.$0=null;C1.Web.UI.Behavior.AnimationManager.$1=null;C1.Web.UI.Behavior.AnimationManager.$2=null;C1.Web.UI.Behavior.AnimationManager.$3=0;C1.Web.UI.Behavior.AnimationManager.$4=false;C1.Web.UI.Behavior.AnimationManager.$5=0;C1.Web.UI.Behavior.AnimationManager.$0=new C1.Web.UI.Behavior.AnimationCollection();C1.Web.UI.Behavior.AnimationManager.$1=new C1.Web.UI.Behavior.AnimationCollection();C1.Web.UI.Behavior.AnimationManager.$2=Function.createDelegate(null,C1.Web.UI.Behavior.AnimationManager.$6);C1.Web.UI.Behavior.AnimationManager.$5=1000;C1.Web.UI.Utils.BrowserHistory.$0=null;C1.Web.UI.Utils.BrowserHistory.$1=null;C1.Web.UI.Utils.BrowserHistory.$2=0;C1.Web.UI.Utils.BrowserHistory.$3=null;C1.Web.UI.Utils.BrowserHistory.$4=null;C1.Web.UI.Utils.Common.$0=["borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle"];C1.Web.UI.Utils.Common.$1=["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"];C1.Web.UI.Utils.Common.$2=["paddingTop","paddingRight","paddingBottom","paddingLeft"];C1.Web.UI.Utils.Common.$3=["marginTop","marginRight","marginBottom","marginLeft"];C1.Web.UI.Utils.Common.borderThicknesses=null;C1.Web.UI.Utils.Common.$4=new Array(0);C1.Web.UI.Utils.Common.$5=null;C1.Web.UI.Utils.Common.$6=null;C1.Web.UI.Utils.Common.$7=null;C1.Web.UI.Utils.Common.$8=null;C1.Web.UI.Utils.Common.$9=null;C1.Web.UI.Utils.Common.$A=false;C1.Web.UI.Utils.Common.$B=false;C1.Web.UI.Utils.Common.$C=null;var $0=(window)["Sys"];if(C1.Web.UI.Utils.Common.testIsNull($0.Debug)){$0.Debug=new C1.Web.UI.Utils._RuntimeDebugStub()}C1.Web.UI.Utils.AccessKeyHelper.$0=null;C1.Web.UI.Utils.AccessKeyHelper.$1=null;C1.Web.UI.Utils.AccessKeyHelper.$2=null;C1.Web.UI.Utils.AccessKeyHelper.$3=null;C1.Web.UI.Utils.UTFSupport.$0=["\n","\r",'"',"@","+","'","<",">","%","{","}"];C1.Web.UI.Utils.UTFSupport.$1=["!ESC!NN!","!ESC!RR!","!ESC!01!","!ESC!02!","!ESC!03!","!ESC!04!","!ESC!05!","!ESC!06!","!ESC!07!","!ESC!08!","!ESC!09!"];C1.Web.UI.Utils.UTFSupport.$2=["(\n)","(\r)",'(")',"(@)","(\\+)","(')","(\\<)","(\\>)","(%)","(\\{)","(\\})"];function C1__GetPixelFontSize(a){if(typeof(a)=="string"){a=document.getElementById(a)}if(!a||!a.tagName){return null}var c,b;if(typeof document.defaultView!="undefined"&&typeof document.defaultView.getComputedStyle!="undefined"){var b=document.defaultView.getComputedStyle(a,"");c=parseInt(b.getPropertyValue("font-size"),10)}else{b=a.currentStyle;if(b){var d=a.style.left;a.style.left="10em";c=Math.round(a.style.pixelLeft/10);a.style.left=d}}if(!isNaN(c)){return c}return null}if(!this.__JSONC1){__JSONC1={}}(function(){function f(n,k){n=n.toString();while(n.length<k){n="0"+n}return n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return""+f(this.getFullYear(),4)+"-"+f(this.getMonth()+1,2)+"-"+f(this.getDate(),2)+"T"+f(this.getHours(),2)+":"+f(this.getMinutes(),2)+":"+f(this.getSeconds(),2)+":"+f(this.getMilliseconds(),3)+"Z"};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof __JSONC1.stringify!=="function"){__JSONC1.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("json stringify")}return str("",{"":value})}}if(typeof __JSONC1.parse!=="function"){__JSONC1.parse=function(text){var reviver=function(key,value){var a;if(typeof value==="string"){a=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?):(\d{3})Z$/.exec(value);if(a){var dt1=new Date(+a[1],+a[2]-1,+a[3],+a[4],+a[5],+a[6],+a[7]);dt1.setFullYear(+a[1]);return dt1}}return value};var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("json parse")}}})();Sys.Browser.WebKit={};if(navigator.userAgent.indexOf("WebKit/")>-1){Sys.Browser.agent=Sys.Browser.WebKit;Sys.Browser.version=parseFloat(navigator.userAgent.match(/WebKit\/(\d+(\.\d+)?)/)[1]);Sys.Browser.name="WebKit"};
/* END C1.Web.UI.Resources.C1.Web.UI.Client.js */
/* START C1.Web.UI.Controls.C1Window.Resources.C1WindowClient.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI.Controls.C1Window");C1.Web.UI.Controls.C1Window.C1WindowPosition=function(){};C1.Web.UI.Controls.C1Window.C1WindowPosition.prototype={byDefault:0,page:1,parent:2,manual:3,offSet:4};C1.Web.UI.Controls.C1Window.C1WindowPosition.registerEnum("C1.Web.UI.Controls.C1Window.C1WindowPosition",false);C1.Web.UI.Controls.C1Window.HorizontalPosition=function(){};C1.Web.UI.Controls.C1Window.HorizontalPosition.prototype={left:0,center:1,right:2};C1.Web.UI.Controls.C1Window.HorizontalPosition.registerEnum("C1.Web.UI.Controls.C1Window.HorizontalPosition",false);C1.Web.UI.Controls.C1Window.VerticalPosition=function(){};C1.Web.UI.Controls.C1Window.VerticalPosition.prototype={top:0,middle:1,bottom:2};C1.Web.UI.Controls.C1Window.VerticalPosition.registerEnum("C1.Web.UI.Controls.C1Window.VerticalPosition",false);C1.Web.UI.Controls.C1Window.ButtonAction=function(){};C1.Web.UI.Controls.C1Window.ButtonAction.prototype={close:0,maximize:1,collapse:2,expand:3,pinOn:4,pinOff:5,reload:6,restore:7,minimize:8};C1.Web.UI.Controls.C1Window.ButtonAction.registerEnum("C1.Web.UI.Controls.C1Window.ButtonAction",false);C1.Web.UI.Controls.C1Window.DialogState=function(){};C1.Web.UI.Controls.C1Window.DialogState.prototype={minimized:0,normal:1,maximized:2};C1.Web.UI.Controls.C1Window.DialogState.registerEnum("C1.Web.UI.Controls.C1Window.DialogState",false);C1.Web.UI.Controls.C1Window.DialogActivityState=function(){};C1.Web.UI.Controls.C1Window.DialogActivityState.prototype={active:0,normal:1,disabled:2};C1.Web.UI.Controls.C1Window.DialogActivityState.registerEnum("C1.Web.UI.Controls.C1Window.DialogActivityState",false);C1.Web.UI.Controls.C1Window.ReloadOrigin=function(){};C1.Web.UI.Controls.C1Window.ReloadOrigin.prototype={setHtml:0,setUrl:1,AJAX:2};C1.Web.UI.Controls.C1Window.ReloadOrigin.registerEnum("C1.Web.UI.Controls.C1Window.ReloadOrigin",false);C1.Web.UI.Controls.C1Window.C1Window=function(a){this.$3_77=1;this.$3_79=1;this.$3_87=new C1.Web.UI.Utils.Size(0,0);C1.Web.UI.Controls.C1Window.C1Window.initializeBase(this,[a]);if(this.get_moveToDocumentRoot()){document.getElementsByTagName("form")[0].appendChild(this.get_element())}};C1.Web.UI.Controls.C1Window.C1Window.activate=function(c){C1.Web.UI.Controls.C1Window.C1Window.$3_D2(c);var b=C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length;for(var a=0;a<b;a++){var d=C1.Web.UI.Controls.C1Window.C1Window.$3_8D[a];if(d===c){d.onActivated((c.get_dialogDOMElement().style.zIndex<C1.Web.UI.Controls.C1Window.C1Window.$3_8E)?C1.Web.UI.Controls.C1Window.C1Window.$3_D1():-1,new C1.Web.UI.Controls.C1Window.DialogEventArgs(null));d.set_activityState(0)}else{d.onDeactivated(-1,new C1.Web.UI.Controls.C1Window.DialogEventArgs(null));d.set_activityState(1)}}};C1.Web.UI.Controls.C1Window.C1Window.deactivate=function(c){C1.Web.UI.Controls.C1Window.C1Window.$3_D2(c);var b=C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length;var a=null;for(var e=0;e<b;e++){var d=C1.Web.UI.Controls.C1Window.C1Window.$3_8D[e];if(d===c){d.onDeactivated(300,new C1.Web.UI.Controls.C1Window.DialogEventArgs(null));d.set_activityState(1)}else{if(!a){a=d}else{if(d.get_dialogState()===1){if(d.get_dialogDOMElement().style.zIndex>a.get_dialogDOMElement().style.zIndex){a=d}}}}}if(!C1.Web.UI.Utils.Common.testIsNull(a)){C1.Web.UI.Controls.C1Window.C1Window.activate(a)}};C1.Web.UI.Controls.C1Window.C1Window.$3_D1=function(){if(C1.Web.UI.Controls.C1Window.C1Window.$3_8E<32767){C1.Web.UI.Controls.C1Window.C1Window.$3_8E++}return C1.Web.UI.Controls.C1Window.C1Window.$3_8E};C1.Web.UI.Controls.C1Window.C1Window.$3_D2=function(c){var b=false;var a=C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length;for(var d=0;d<a;d++){if(C1.Web.UI.Controls.C1Window.C1Window.$3_8D[d]===c){b=true;break}}if(!b){C1.Web.UI.Controls.C1Window.C1Window.$3_8D[a]=c;if(c.get_dialogDOMElement().style.zIndex<C1.Web.UI.Controls.C1Window.C1Window.$3_8E){c.get_dialogDOMElement().style.zIndex=C1.Web.UI.Controls.C1Window.C1Window.$3_D1()}}};C1.Web.UI.Controls.C1Window.C1Window.prototype={$3_4C:null,$3_4D:null,$3_4E:null,$3_4F:null,$3_50:null,$3_51:null,$3_52:null,$3_53:null,$3_54:null,$3_55:null,$3_56:null,$3_57:null,$3_58:null,$3_59:null,$3_5A:null,$3_5B:null,$3_5C:null,$3_5D:null,$3_5E:null,$3_5F:null,$3_60:null,$3_61:null,$3_62:null,$3_63:null,$3_64:null,$3_65:null,$3_66:null,$3_67:null,$3_68:null,$3_69:null,$3_6A:null,$3_6B:null,$3_6C:null,$3_6D:null,$3_6E:null,$3_6F:null,$3_70:null,$3_71:null,$3_72:null,$3_73:null,$3_74:null,$3_75:null,$3_76:null,$3_78:29,$3_7A:null,$3_7B:false,$3_7C:false,$3_7D:false,$3_7E:false,$3_7F:false,$3_80:false,$3_81:false,$3_82:false,$3_83:null,$3_84:null,$3_85:null,$3_86:null,$3_88:0,$3_89:0,$3_8A:null,$3_8B:null,$3_8F:false,$3_90:null,$3_92:false,$3_93:false,$3_94:false,$3_95:false,$3_96:false,$3_97:false,$3_98:false,$3_99:false,$3_9A:false,get_activityState:function(){return this.$3_77},set_activityState:function(a){switch(a){case 0:this.$3_A1("C1wDisabled",false,true);this.$3_A1("C1wFocus",true,true);break;case 1:this.$3_A1("C1wDisabled",false,true);this.$3_A1("C1wFocus",false,true);break;case 2:this.$3_A1("C1wFocus",false,true);this.$3_A1("C1wDisabled",true,true);break}this.$3_77=a;return a},get_allowMove:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AllowMove)){return true}return this._propertiesState.AllowMove},set_allowMove:function(a){this._propertiesState.AllowMove=a;if(this.$3_7A){this.$3_7A.set_$C(a)}this.saveState();return a},get_allowResize:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AllowResize)){return true}return this._propertiesState.AllowResize},set_allowResize:function(a){this._propertiesState.AllowResize=a;if(!a){this.$3_84.set_grabHandles(0)}else{this.$3_84.set_grabHandles(255)}this.saveState();return a},get_animationEffectOnCollapsing:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationEffectOnCollapsing)){return 0}return this._propertiesState.AnimationEffectOnCollapsing},set_animationEffectOnCollapsing:function(a){this._propertiesState.AnimationEffectOnCollapsing=a;this.saveState();return a},get_animationDurationOnCollapsing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationDurationOnCollapsing))?1000:parseInt(this._propertiesState.AnimationDurationOnCollapsing.toString())},set_animationDurationOnCollapsing:function(a){this._propertiesState.AnimationDurationOnCollapsing=a;this.saveState();return a},get_animationEffectOnExpanding:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationEffectOnExpanding)){return 0}return this._propertiesState.AnimationEffectOnExpanding},set_animationEffectOnExpanding:function(a){this._propertiesState.AnimationEffectOnExpanding=a;this.saveState();return a},get_animationDurationOnExpanding:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationDurationOnExpanding))?1000:parseInt(this._propertiesState.AnimationDurationOnExpanding.toString())},set_animationDurationOnExpanding:function(a){this._propertiesState.AnimationDurationOnExpanding=a;this.saveState();return a},get_animationEffectOnHiding:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationEffectOnHiding)){return 0}return this._propertiesState.AnimationEffectOnHiding},set_animationEffectOnHiding:function(a){this._propertiesState.AnimationEffectOnHiding=a;this.saveState();return a},get_animationDurationOnHiding:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationDurationOnHiding))?1000:parseInt(this._propertiesState.AnimationDurationOnHiding.toString())},set_animationDurationOnHiding:function(a){this._propertiesState.AnimationDurationOnHiding=a;this.saveState();return a},get_animationEffectOnShowing:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationEffectOnShowing)){return 0}return this._propertiesState.AnimationEffectOnShowing},set_animationEffectOnShowing:function(a){this._propertiesState.AnimationEffectOnShowing=a;this.saveState();return a},get_animationDurationOnShowing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AnimationDurationOnShowing))?1000:parseInt(this._propertiesState.AnimationDurationOnShowing.toString())},set_animationDurationOnShowing:function(a){this._propertiesState.AnimationDurationOnShowing=a;this.saveState();return a},get_autoExpand:function(){return(this._propertiesState.AutoExpand)},set_autoExpand:function(a){this._propertiesState.AutoExpand=a;return a},get_captionButtons:function(){return this.$3_76},set_captionButtons:function(a){this.$3_76=a;return a},get_childrenAsTriggers:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ChildrenAsTriggers)){return true}return this._propertiesState.ChildrenAsTriggers},set_childrenAsTriggers:function(a){this._propertiesState.ChildrenAsTriggers=a;this.saveState();return a},get_contentUrl:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ContentUrl)){return""}return this._propertiesState.ContentUrl},set_contentUrl:function(a){this._propertiesState.ContentUrl=a;this.saveState();if(this.get_dialogDOMElement()){if(a&&a.length>0){this.setUrl(a)}else{this.setUpdatePanel()}}return a},get_controlBox:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ControlBox)){return true}return this._propertiesState.ControlBox},set_controlBox:function(a){this._propertiesState.ControlBox=a;this.saveState();return a},get_dialogDOMElement:function(){return this.get_element()},get_$3_9B:function(){return this.$3_78},set_$3_9B:function(a){this.$3_78=a;return a},get_dialogState:function(){return this.$3_79},set_dialogState:function(a){this.get_captionButtons().$C();this.$3_79=a;switch(a){case 2:this.$3_A1("C1wMinimized",false,false);this.$3_A1("C1wMaximized",true,false);break;case 0:this.$3_A1("C1wMaximized",false,false);this.$3_A1("C1wMinimized",true,false);break;case 1:this.$3_A1("C1wMinimized",false,false);this.$3_A1("C1wMaximized",false,false);break}return a},get_enabled:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Enabled)){return true}return this._propertiesState.Enabled},set_enabled:function(a){if(a){this.set_activityState(1);this.get_element().attributes.removeNamedItem("disabled")}else{this.set_activityState(2);this.get_element().setAttribute("disabled","-1")}this._propertiesState.Enabled=a;this.saveState();return a},get_height:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Height)){return 0}return this._propertiesState.Height},set_height:function(a){this.resize(this.get_width(),a);return a},get_horizontalAlign:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.HorizontalAlign)){return 0}return this._propertiesState.HorizontalAlign},set_horizontalAlign:function(a){this._propertiesState.HorizontalAlign=a;this.saveState();return a},get_imageUrl:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ImageUrl)){return""}return this._propertiesState.ImageUrl},set_imageUrl:function(a){this._propertiesState.ImageUrl=a;this.$3_65.style.backgroundImage=String.format("url('{0}')",a);this.saveState();return a},get_imageHeight:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ImageHeight)){return 0}return this._propertiesState.ImageHeight},set_imageHeight:function(a){this._propertiesState.ImageHeight=a;this.$3_65.style.width=a+"px";this.saveState();return a},get_imageWidth:function(){if(!this._propertiesState.ImageWidth){return 0}return(this._propertiesState.ImageWidth)},set_imageWidth:function(a){this._propertiesState.ImageWidth=a;this.$3_65.style.width=a+"px";this.saveState();return a},get_isAnimating:function(){return this.$3_7C},get_isDialogDocked:function(){return(this.get_dialogDOMElement().style.position.toLowerCase()==="absolute")?false:true},get_isInnerFrameShown:function(){return this.$3_7E},get_minimizeZoneElementId:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.MinimizeZoneElementId)){return""}return this._propertiesState.MinimizeZoneElementId},set_minimizeZoneElementId:function(a){this._propertiesState.MinimizeZoneElementId=a;this.saveState();return a},get_offsetElementId:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OffsetElementId)){return""}return this._propertiesState.OffsetElementId},set_offsetElementId:function(a){this._propertiesState.OffsetElementId=a;this.saveState();return a},get_onEscPressedClose:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnEscPressedClose)){return false}return this._propertiesState.OnEscPressedClose},set_onEscPressedClose:function(a){this._propertiesState.OnEscPressedClose=a;this.saveState();return a},get_showOnLoad:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ShowOnLoad)){return false}return this._propertiesState.ShowOnLoad},set_showOnLoad:function(a){if(a&&!this.get_visible()){this.show()}this._propertiesState.ShowOnLoad=a;this.saveState();return a},get_showModalWindowOnLoad:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ShowModalWindowOnLoad)){return false}return this._propertiesState.ShowModalWindowOnLoad},set_showModalWindowOnLoad:function(a){if(a){this.set_showOnLoad(true);C1.Web.UI.Utils.Common.showModalLayer(this.get_element(),false)}this._propertiesState.ShowModalWindowOnLoad=a;this.saveState();return a},get_startPosition:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.StartPosition)){return 0}return this._propertiesState.StartPosition},set_startPosition:function(a){this._propertiesState.StartPosition=a;this.saveState();return a},get_statusVisible:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.StatusVisible)){return true}return this._propertiesState.StatusVisible},set_statusVisible:function(b){C1.Web.UI.Utils.Common.setVisible(this.$3_74,b);var a={};if(!b){a.backgroundImage="none"}else{a.backgroundImage=""}this.$3_84.setGrabHandlerStyle(32,a);this._propertiesState.StatusVisible=b;this.saveState();return b},get_tabIndex:function(){return this.get_dialogDOMElement().tabIndex},get_text:function(){if(!this._propertiesState.Text){return""}return this._propertiesState.Text},set_text:function(a){this._propertiesState.Text=a;this.$3_6A.innerHTML=a;this.saveState();return a},get_verticalAlign:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.VerticalAlign)){return 0}return this._propertiesState.VerticalAlign},set_verticalAlign:function(a){this._propertiesState.VerticalAlign=a;this.saveState();return a},get_width:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Width)){return 0}return this._propertiesState.Width},set_width:function(a){this.resize(a,this.get_height());return a},get_x:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.X)){return 0}return this._propertiesState.X},set_x:function(a){this._propertiesState.X=a;this.saveState();return a},get_y:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Y)){return 0}return this._propertiesState.Y},set_y:function(a){this._propertiesState.Y=a;this.saveState();return a},get_resizeSettings:function(){return this.$3_83},set_resizeSettings:function(a){this.$3_83=a;return a},get_moveToDocumentRoot:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.MoveToDocumentRoot)){return false}return this._propertiesState.MoveToDocumentRoot},set_moveToDocumentRoot:function(a){this._propertiesState.MoveToDocumentRoot=a;this.saveState();return a},add_activated:function(a){this.get_events().addHandler(this.get_id()+"_OnActivated",a)},remove_activated:function(a){this.get_events().addHandler(this.get_id()+"_OnActivated",a)},add_buttonClicking:function(a){this.get_events().addHandler(this.get_id()+"_OnButtonClicking",a)},remove_buttonClicking:function(a){this.get_events().removeHandler(this.get_id()+"_OnButtonClicking",a)},add_buttonClicked:function(a){this.get_events().addHandler(this.get_id()+"_OnButtonClicked",a)},remove_buttonClicked:function(a){this.get_events().removeHandler(this.get_id()+"_OnButtonClicked",a)},add_deactivated:function(a){this.get_events().addHandler(this.get_id()+"_OnDeactivated",a)},remove_deactivated:function(a){this.get_events().addHandler(this.get_id()+"_OnDeactivated",a)},add_dragStart:function(a){this.get_events().addHandler(this.get_id()+"_OnDragStart",a)},remove_dragStart:function(a){this.get_events().addHandler(this.get_id()+"_OnDragStart",a)},add_dragging:function(a){this.get_events().addHandler(this.get_id()+"_OnDraging",a)},remove_dragging:function(a){this.get_events().addHandler(this.get_id()+"_OnDraging",a)},add_dragEnd:function(a){this.get_events().addHandler(this.get_id()+"_OnDragEnd",a)},remove_dragEnd:function(a){this.get_events().addHandler(this.get_id()+"_OnDragEnd",a)},add_hidden:function(a){this.get_events().addHandler(this.get_id()+"_OnHidden",a)},remove_hidden:function(a){this.get_events().removeHandler(this.get_id()+"_OnHidden",a)},add_maximizing:function(a){this.get_events().addHandler(this.get_id()+"_OnMaximizing",a)},remove_maximizing:function(a){this.get_events().removeHandler(this.get_id()+"_OnMaximizing",a)},add_maximized:function(a){this.get_events().addHandler(this.get_id()+"_OnMaximized",a)},remove_maximized:function(a){this.get_events().removeHandler(this.get_id()+"_OnMaximized",a)},add_minimizing:function(a){this.get_events().addHandler(this.get_id()+"_OnMinimizing",a)},remove_minimizing:function(a){this.get_events().removeHandler(this.get_id()+"_OnMinimizing",a)},add_minimized:function(a){this.get_events().addHandler(this.get_id()+"_OnMinimized",a)},remove_minimized:function(a){this.get_events().removeHandler(this.get_id()+"_OnMinimized",a)},add_normalizing:function(a){this.get_events().addHandler(this.get_id()+"_OnNormalizing",a)},remove_normalizing:function(a){this.get_events().removeHandler(this.get_id()+"_OnNormalizing",a)},add_normalized:function(a){this.get_events().addHandler(this.get_id()+"_OnNormalized",a)},remove_normalized:function(a){this.get_events().removeHandler(this.get_id()+"_OnNormalized",a)},add_pinning:function(a){this.get_events().addHandler(this.get_id()+"_OnPinning",a)},remove_pinning:function(a){this.get_events().removeHandler(this.get_id()+"_OnPinning",a)},add_pinned:function(a){this.get_events().addHandler(this.get_id()+"_OnPinned",a)},remove_pinned:function(a){this.get_events().removeHandler(this.get_id()+"_OnPinned",a)},add_reloading:function(a){this.get_events().addHandler(this.get_id()+"_OnReloading",a)},remove_reloading:function(a){this.get_events().removeHandler(this.get_id()+"_OnReloading",a)},add_reloaded:function(a){this.get_events().addHandler(this.get_id()+"_OnReloaded",a)},remove_reloaded:function(a){this.get_events().removeHandler(this.get_id()+"_OnReloaded",a)},add_resizeStart:function(a){this.get_events().addHandler(this.get_id()+"_OnResizeStart",a)},remove_resizeStart:function(a){this.get_events().removeHandler(this.get_id()+"_OnResizeStart",a)},add_resizing:function(a){this.get_events().addHandler(this.get_id()+"_OnResizing",a)},remove_resizing:function(a){this.get_events().removeHandler(this.get_id()+"_OnResizing",a)},add_resizeEnd:function(a){this.get_events().addHandler(this.get_id()+"_OnResizeEnd",a)},remove_resizeEnd:function(a){this.get_events().removeHandler(this.get_id()+"_OnResizeEnd",a)},add_shown:function(a){this.get_events().addHandler(this.get_id()+"_OnShown",a)},remove_shown:function(a){this.get_events().removeHandler(this.get_id()+"_OnShown",a)},initialize:function(){C1.Web.UI.Controls.C1Window.C1Window.callBaseMethod(this,"initialize");this.$3_C1();var a=window.___isPageLoaded;if(a&&a){this.$3_AB();if(this.get_showOnLoad()){if(this.get_showModalWindowOnLoad()){this.showModal()}else{this.show()}}}else{if(this.get_showOnLoad()){this.$3_8B=Function.createDelegate(this,this.$3_9D)}else{this.$3_8B=Function.createDelegate(this,this.$3_9C)}Sys.UI.DomEvent.addHandler(window,"load",this.$3_8B)}},$3_9C:function(a){if(this.$3_8B){Sys.UI.DomEvent.removeHandler(window,"load",this.$3_8B);this.$3_8B=null}this.$3_AB()},$3_9D:function(a){this.$3_9C(a);if(this.get_showModalWindowOnLoad()){this.showModal()}else{this.show()}},dispose:function(){if(this.$3_82){var a=Sys.WebForms.PageRequestManager.getInstance();if(a){a.remove_beginRequest(Function.createDelegate(this,this.$3_CF));a.remove_endRequest(Function.createDelegate(this,this.$3_D0))}}Array.remove(C1.Web.UI.Controls.C1Window.C1Window.$3_8D,this);C1.Web.UI.Controls.C1Window.C1Window.callBaseMethod(this,"dispose")},hide:function(){if(!C1.Web.UI.Utils.Common.isVisible(this.get_dialogDOMElement())){return}C1.Web.UI.Controls.C1Window.C1Window.deactivate(this);if(this.$3_99){C1.Web.UI.Utils.Common.hideModalLayer();this.$3_99=false}C1.Web.UI.Utils.Common.setVisible(this.$3_72,false);if(this.get_animationEffectOnHiding()){C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_animationEffectOnHiding(),this.get_dialogDOMElement(),this.get_animationDurationOnHiding(),31,null,Function.createDelegate(this,this.$3_9F),false,false,true,false)}else{this.$3_9F(this,null)}this.onHidden(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))},$3_9E:function(a){window.document.documentElement.style.overflowY=(a)?this.$3_8A:"hidden"},$3_9F:function(b,a){C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),false)},maximize:function(){var b=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(null);this.onMaximizing(b);if(!b.get_cancel()){if(!this.get_dialogState()){this.minimize()}if(C1.Web.UI.Utils.Common.testIsNull(this.$3_70)){this.$3_70=this.get_dialogDOMElement().parentNode}var a=document.getElementsByTagName("form");if(a.length>0){a[0].appendChild(this.get_dialogDOMElement())}else{document.body.appendChild(this.get_dialogDOMElement())}this.set_dialogState(2);if(this.get_captionButtons().get_collapseExpandButton().get_$16()){this.$3_C8(true,false)}this.$3_85=C1.Web.UI.Utils.Measurement.getBounds(this.get_dialogDOMElement());this.$3_9E(false);var c=this.$3_C3();this.$3_A5(c.x,c.y);this.resize(c.width,c.height);if(this.get_captionButtons().get_collapseExpandButton().get_$16()){this.$3_C8(false,false)}this.get_captionButtons().get_maximizeButton().$17(true);this.get_captionButtons().get_maximizeButton().$13(false);this.$3_A0(false);this.onMaximized(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))}},$3_A0:function(a){if(a){if(this.get_allowResize()){this.$3_84.set_grabHandles(255)}}else{this.$3_84.set_grabHandles(0)}},$3_A1:function(m,l,k){if(k){var i=[];i[i.length]=m;if(this.get_captionButtons().get_pinButton().get_$16()){i[i.length]=String.format("{0}-{1}",m,"C1wPinned".substr(3));if(this.get_captionButtons().get_maximizeButton().get_$16()){i[i.length]=String.format("{0}-{1}-{2}",m,"C1wMaximized".substr(3),"C1wPinned".substr(3))}}if(this.get_captionButtons().get_collapseExpandButton().get_$16()){i[i.length]=String.format("{0}-{1}",m,"C1wClosed".substr(3));if(this.get_captionButtons().get_maximizeButton().get_$16()){i[i.length]=String.format("{0}-{1}-{2}",m,"C1wMaximized".substr(3),"C1wClosed".substr(3))}}else{i[i.length]=String.format("{0}-{1}",m,"C1wOpened".substr(3))}if(this.get_captionButtons().get_minimizeButton().get_$16()){i[i.length]=String.format("{0}-{1}",m,"C1wMinimized".substr(3))}if(this.get_captionButtons().get_maximizeButton().get_$16()){i[i.length]=String.format("{0}-{1}",m,"C1wMaximized".substr(3))}if(l){var h=i.length;for(var g=0;g<h;g++){Sys.UI.DomElement.addCssClass(this.$3_73,i[g])}}else{var f=i.length;for(var e=0;e<f;e++){Sys.UI.DomElement.removeCssClass(this.$3_73,i[e])}}}else{var d=String.format("{0}-{1}","C1wFocus",m.substr(3));var c=String.format("{0}-{1}","C1wDisabled",m.substr(3));var b="";var a="";var n="";var j="";if(m==="C1wClosed"||m==="C1wPinned"){b=String.format("{0}-{1}-{2}","C1wFocus","C1wMaximized".substr(3),m.substr(3));a=String.format("{0}-{1}","C1wMaximized",m.substr(3))}else{if(m==="C1wMaximized"){if(this.get_captionButtons().get_collapseExpandButton().get_$16()){b=String.format("{0}-{1}-{2}","C1wFocus","C1wMaximized".substr(3),"C1wClosed".substr(3));a=String.format("{0}-{1}","C1wMaximized","C1wClosed".substr(3))}if(this.get_captionButtons().get_pinButton().get_$16()){n=String.format("{0}-{1}-{2}","C1wFocus","C1wMaximized".substr(3),"C1wPinned".substr(3));j=String.format("{0}-{1}","C1wMaximized","C1wPinned".substr(3))}}}if(!l){Sys.UI.DomElement.removeCssClass(this.$3_73,d);Sys.UI.DomElement.removeCssClass(this.$3_73,c);Sys.UI.DomElement.removeCssClass(this.$3_73,m);Sys.UI.DomElement.removeCssClass(this.$3_73,b);Sys.UI.DomElement.removeCssClass(this.$3_73,a);Sys.UI.DomElement.removeCssClass(this.$3_73,n);Sys.UI.DomElement.removeCssClass(this.$3_73,j)}else{Sys.UI.DomElement.addCssClass(this.$3_73,m);if(this.get_dialogState()===2){if(a.length>0){Sys.UI.DomElement.addCssClass(this.$3_73,a)}if(j.length>0){Sys.UI.DomElement.addCssClass(this.$3_73,j)}}if(!this.get_activityState()){Sys.UI.DomElement.addCssClass(this.$3_73,d);if(this.get_dialogState()===2){if(b.length>0){Sys.UI.DomElement.addCssClass(this.$3_73,b)}if(n.length>0){Sys.UI.DomElement.addCssClass(this.$3_73,n)}}}if(this.get_activityState()===2){Sys.UI.DomElement.addCssClass(this.$3_73,c)}}}},minimize:function(){var b=this.get_captionButtons().get_minimizeButton().get_$16();if(b){this.get_dialogDOMElement().style.position="absolute";C1.Web.UI.Utils.Common.setVisible(this.$3_6C,true);this.$3_70.appendChild(this.get_dialogDOMElement());this.get_captionButtons().$E(true);this.get_captionButtons().get_minimizeButton().$17(false);this.$3_A2()}else{var a=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(null);this.onMinimizing(a);if(a.get_cancel()){return}if(this.get_dialogState()===2){this.$3_A2()}else{if(C1.Web.UI.Utils.Common.testIsNull(this.$3_85)){if(this.get_captionButtons().get_collapseExpandButton().get_$16()){this.$3_C8(true,false);this.$3_85=C1.Web.UI.Utils.Measurement.getBounds(this.get_dialogDOMElement());this.$3_C8(false,false)}else{this.$3_85=C1.Web.UI.Utils.Measurement.getBounds(this.get_dialogDOMElement())}}}this.set_dialogState(0);this.$3_70=this.get_dialogDOMElement().parentNode;this.get_captionButtons().$E(false);this.get_captionButtons().get_minimizeButton().$17(true);this.$3_A0(false);C1.Web.UI.Utils.Common.setVisible(this.$3_6C,false);this.get_dialogDOMElement().style.height="";this.get_dialogDOMElement().style.position="";C1.Web.UI.Utils.Common.setWidth(this.get_dialogDOMElement(),this.get_$3_A4());if(!C1.Web.UI.Utils.Common.testIsNull(this.get_minimizeZoneElementId())&&this.get_minimizeZoneElementId().length>0){var e=$get(this.get_minimizeZoneElementId());if(!C1.Web.UI.Utils.Common.testIsNull(e)){e.appendChild(this.get_dialogDOMElement())}}else{var d=$get("c1window_defaultdockzone");if(C1.Web.UI.Utils.Common.testIsNull(d)){d=document.createElement("div");d.id="c1window_defaultdockzone";d.style.position=(!this.$3_7D)?"fixed":"absolute";d.style.left="0px";d.style.bottom="0px";d.style.zIndex=C1.Web.UI.Utils.Common.getMaxZIndex(this.get_element());var c=document.getElementsByTagName("form");if(c.length>0){c[0].appendChild(d)}else{document.body.appendChild(d)}}d.appendChild(this.get_dialogDOMElement())}this.$3_C7();C1.Web.UI.Controls.C1Window.C1Window.deactivate(this);this.onMinimized(a)}this.get_captionButtons().get_minimizeButton().$13(false)},normalize:function(){var a=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(null);this.onNormalizing(a);if(!a.get_cancel()){this.$3_A2();this.onNormalized(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))}},$3_A2:function(){var a=this.get_captionButtons().get_collapseExpandButton().get_$16();this.set_dialogState(1);this.$3_9E(true);if(a){this.$3_C8(true,false)}this.resize(this.$3_85.width,this.$3_85.height);this.$3_A5(this.$3_85.x,this.$3_85.y);if(a){this.$3_A0(false);this.$3_C8(false,false)}else{this.$3_A0(true)}if(!C1.Web.UI.Utils.Common.testIsNull(this.$3_70)){this.$3_70.appendChild(this.get_dialogDOMElement())}this.get_captionButtons().get_maximizeButton().$17(false)},get_$3_A3:function(){return this.$3_6E.offsetHeight+this.$3_63.offsetHeight},get_$3_A4:function(){var b=C1.Web.UI.Utils.Common.getMarginBox(this.$3_6D.parentNode);var a=C1.Web.UI.Utils.Common.getPaddingBox(this.$3_6D.parentNode);var d=b.horizontal+a.horizontal;var c=this.get_$3_CA()+this.$3_6A.parentNode.parentNode.offsetWidth+this.$3_6D.offsetWidth+((C1.Web.UI.Utils.Common.testIsNull(this.$3_65))?0:this.$3_65.offsetWidth)+d+3;return c},move:function(a,b){this.$3_A5(a,b);this.set_x(a);this.set_y(b)},$3_A5:function(b,a){Sys.UI.DomElement.setLocation(this.get_dialogDOMElement(),b,a)},pin:function(b){if(this.$3_80!==b){var a=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(null);this.onPinning(a);if(!a.get_cancel()){if(b){this.$3_A1("C1wPinned",true,false)}else{this.$3_A1("C1wPinned",false,false)}this.$3_80=b;this.set_allowMove(!this.$3_80);this.get_captionButtons().get_pinButton().$17(b);this.onPinned(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))}}},setHtml:function(b){var a=new C1.Web.UI.Controls.C1Window.ReloadingEventArgs(null,0);this.onReloading(a);if(!a.get_cancel()){this.setUpdatePanel();if(!C1.Web.UI.Utils.Common.testIsNull(b)){this.$3_75.innerHTML=b;this.onReloaded(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))}}else{this.$3_C6(false)}return this.$3_75},reload:function(){if(this.get_contentUrl()!==""){this.setUrl(this.get_contentUrl())}},setUrl:function(c){var b=new C1.Web.UI.Controls.C1Window.ReloadingEventArgs(null,1);this.onReloading(b);if(!b.get_cancel()){if(!this.$3_6F){this.$3_6F=document.createElement("iframe");this.$3_6F.frameBorder="0";this.$3_6F.style.backgroundColor="#FFFFFF";var a=new C1.Web.UI.Utils.Size(this.$3_75.offsetWidth,this.$3_75.offsetHeight);C1.Web.UI.Utils.Common.setSize(this.$3_6F,a);Sys.UI.DomEvent.addHandler(this.$3_6F,"load",Function.createDelegate(this,this.onFrameLoad));this.$3_75.parentNode.insertBefore(this.$3_6F,this.$3_75.nextSibling)}C1.Web.UI.Utils.Common.setVisible(this.$3_75,false);C1.Web.UI.Utils.Common.setVisible(this.$3_6F,true);this._propertiesState.ContentUrl=c;this.$3_7E=true;if(!C1.Web.UI.Utils.Common.testIsNull(c)&&c.length>0){this.$3_6F.src=c}}else{this.$3_C6(false)}return this.$3_6F},setUpdatePanel:function(){if(this.$3_6F){this.$3_6F.src="";C1.Web.UI.Utils.Common.setVisible(this.$3_6F,false);this.$3_7E=false}C1.Web.UI.Utils.Common.setVisible(this.$3_75,true)},show:function(){if(!this.$3_7B){return}C1.Web.UI.Controls.C1Window.C1Window.activate(this);if(C1.Web.UI.Utils.Common.isVisible(this.get_dialogDOMElement())){return}C1.Web.UI.Utils.Common.setVisible(this.$3_72,false);if(!this.get_dialogState()){this.$3_A7()}else{this.$3_A9()}},$3_A6:function(){if(!this.$3_9A&&C1.Web.UI.Utils.Common.isVisible(this.get_dialogDOMElement())){this.$3_83.set_minWidth(this.get_$3_A4());this.$3_84.set_minWidth(this.$3_83.get_minWidth());this.$3_83.set_minHeight(this.get_$3_A3()+this.$3_74.offsetHeight);this.$3_84.set_minHeight(this.$3_83.get_minHeight());this.$3_84.set_ghost(this.$3_83.get_ghost());this.$3_9A=true}},$3_A7:function(){if(this.get_animationEffectOnShowing()){this.$3_7C=true;C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_animationEffectOnShowing(),this.get_dialogDOMElement(),this.get_animationDurationOnShowing(),31,null,Function.createDelegate(this,this.$3_A8),false,false,true,true)}else{this.$3_A8(this,null)}},$3_A8:function(b,a){this.$3_7C=false;C1.Web.UI.Utils.Common.setVisible(this.$3_72,true);C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),true);this.$3_A6();this.get_dialogDOMElement().style.filter="";this.onShown(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null));this.reload();this.$3_D3()},$3_A9:function(){this.setDialogPosition();if(this.get_animationEffectOnShowing()){this.$3_7C=true;C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_animationEffectOnShowing(),this.get_dialogDOMElement(),this.get_animationDurationOnShowing(),31,null,Function.createDelegate(this,this.$3_AA),false,false,true,true)}else{this.$3_AA(this,null)}},$3_AA:function(b,a){this.$3_A0(true);this.$3_7C=false;C1.Web.UI.Utils.Common.setVisible(this.$3_72,true);C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),true);this.$3_A6();this.get_dialogDOMElement().style.filter="";this.onShown(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null));this.$3_D3();this.reload()},invalidate:function(){if(this.get_dialogState()===1){var b=this.get_width();var a=this.get_height();if(this.get_autoExpand()){var c=this.$3_C4();b=c.width;a=c.height}this.resize(b,a)}},$3_AB:function(){this.$3_90=Function.createDelegate(this,this.$3_AC);C1.Web.UI.Utils.Common.listenVisibleState(this.get_dialogDOMElement(),this.$3_90);this.$3_AD()},$3_AC:function(b,a){if(this.$3_98){this.$3_A6();this.setDialogPosition();this.$3_98=false}},$3_AD:function(){if(this.$3_7B){return}this.$3_82=(typeof(window.Sys.WebForms)!=="undefined");this.$3_C0();this.$3_B6();this.$3_AE();this.$3_7B=true},$3_AE:function(){this.set_statusVisible(this.get_statusVisible());this.$3_8A=window.document.documentElement.style.overflow},$3_AF:function(c,b){var a=new C1.Web.UI.Controls.C1Window.DialogEventArgs(null);if(this.$3_84.get_useHelper()){this.resize(this.$3_87.width,this.$3_87.height)}this.onResizeEnd(a)},$3_B0:function(f,d){if(this.$3_84.get_useHelper()){var b=this.get_dialogDOMElement();var a=d;var g=new C1.Web.UI.Controls.C1Window.DraggingEventArgs(null,b.offsetWidth,b.offsetHeight,a.get_width(),a.get_height());this.$3_87.width=a.get_width();this.$3_87.height=a.get_height();var e=f;var c=e.get_ghostElement();if(!C1.Web.UI.Utils.Common.testIsNull(c)){this.$3_B1(e,a.get_width(),a.get_height())}this.onResizing(g)}},$3_B1:function(c,b,a){if(C1.Web.UI.Utils.Common.testIsNull(this.$3_71)){this.$3_71=$get(this.$3_75.id+c.get_clonedElementIDSuffix())}b=b-this.get_$3_C9();a=a-this.get_$3_A3()-this.$3_74.offsetHeight;C1.Web.UI.Utils.Common.setSize(this.$3_71,new C1.Web.UI.Utils.Size(b,a))},$3_B2:function(d,c){var b=this.get_dialogDOMElement();var a=new C1.Web.UI.Controls.C1Window.DraggingEventArgs(null,this.$3_86.width,this.$3_86.height,b.offsetWidth,b.offsetHeight);this.onResizing(a);this.resize(b.offsetWidth,b.offsetHeight)},$3_B3:function(d,c){var b=this.get_dialogDOMElement();this.$3_86=new C1.Web.UI.Utils.Size(b.offsetWidth,b.offsetHeight);this.$3_87.width=this.$3_86.width;this.$3_87.height=this.$3_86.height;var a=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(null);this.onResizeStart(a)},showModal:function(){if(!this.$3_7B){return}this.show();C1.Web.UI.Utils.Common.showModalLayer(this.get_element(),false);this.$3_99=true},get_rawOnActivated:function(){return null},set_rawOnActivated:function(a){this.$3_4C=this.getHandler(a);return a},get_rawOnButtonClicking:function(){return null},set_rawOnButtonClicking:function(a){this.$3_4E=this.getHandler(a);return a},get_rawOnButtonClicked:function(){return null},set_rawOnButtonClicked:function(a){this.$3_4D=this.getHandler(a);return a},get_rawOnDeactivated:function(){return null},set_rawOnDeactivated:function(a){this.$3_4F=this.getHandler(a);return a},get_rawOnDragStart:function(){return null},set_rawOnDragStart:function(a){this.$3_52=this.getHandler(a);return a},get_rawOnDragging:function(){return null},set_rawOnDragging:function(a){this.$3_51=this.getHandler(a);return a},get_rawOnDragEnd:function(){return null},set_rawOnDragEnd:function(a){this.$3_50=this.getHandler(a);return a},get_rawOnHidden:function(){return null},set_rawOnHidden:function(a){this.$3_53=this.getHandler(a);return a},get_rawOnMaximizing:function(){return null},set_rawOnMaximizing:function(a){this.$3_55=this.getHandler(a);return a},get_rawOnMaximized:function(){return null},set_rawOnMaximized:function(a){this.$3_54=this.getHandler(a);return a},get_rawOnMinimizing:function(){return null},set_rawOnMinimizing:function(a){this.$3_57=this.getHandler(a);return a},get_rawOnMinimized:function(){return null},set_rawOnMinimized:function(a){this.$3_56=this.getHandler(a);return a},get_rawOnNormalizing:function(){return null},set_rawOnNormalizing:function(a){this.$3_59=this.getHandler(a);return a},get_rawOnNormalized:function(){return null},set_rawOnNormalized:function(a){this.$3_58=this.getHandler(a);return a},get_rawOnPinning:function(){return null},set_rawOnPinning:function(a){this.$3_5B=this.getHandler(a);return a},get_rawOnPinned:function(){return null},set_rawOnPinned:function(a){this.$3_5A=this.getHandler(a);return a},get_rawOnReloading:function(){return null},set_rawOnReloading:function(a){this.$3_5D=this.getHandler(a);return a},get_rawOnReloaded:function(){return null},set_rawOnReloaded:function(a){this.$3_5C=this.getHandler(a);return a},get_rawOnResizeStart:function(){return null},set_rawOnResizeStart:function(a){this.$3_5F=this.getHandler(a);return a},get_rawOnResizing:function(){return null},set_rawOnResizing:function(a){this.$3_60=this.getHandler(a);return a},get_rawOnResizeEnd:function(){return null},set_rawOnResizeEnd:function(a){this.$3_5E=this.getHandler(a);return a},get_rawOnShown:function(){return null},set_rawOnShown:function(a){this.$3_61=this.getHandler(a);return a},getHandler:function(a){if(!C1.Web.UI.Utils.Common.testIsNull(a)){return((window)[a])}return null},raiseEvent:function(d,b,c){if(d){d(this,c)}var a=this.get_events().getHandler(this.get_id()+"_"+b);if(a){a(this,c)}},raiseCancelEvent:function(c,a,b){this.raiseEvent(c,a,b);this.$3_7F=b.get_cancel();return b.get_cancel()},resize:function(a,b){if(a<this.get_resizeSettings().get_minWidth()){this._propertiesState.Width=this.get_resizeSettings().get_minWidth();a=this.get_resizeSettings().get_minWidth()}else{this._propertiesState.Width=a}if(b<this.get_resizeSettings().get_minHeight()){this._propertiesState.Height=this.get_resizeSettings().get_minHeight();b=this.get_resizeSettings().get_minHeight()}else{this._propertiesState.Height=b}this.saveState();this.$3_B4(a,b)},$3_B4:function(d,c){var b=new C1.Web.UI.Utils.Size(d,c);if(!(this.get_dialogDOMElement().offsetWidth>0&&this.get_dialogDOMElement().offsetHeight>0)){C1.Web.UI.Utils.Common.setSize(this.get_dialogDOMElement(),b);this.$3_98=true;return}C1.Web.UI.Utils.Common.setVisible(this.$3_75,false);C1.Web.UI.Utils.Common.setVisible(this.$3_74,false);C1.Web.UI.Utils.Common.setVisible(this.$3_6F,false);C1.Web.UI.Utils.Common.setSize(this.get_dialogDOMElement(),b);C1.Web.UI.Utils.Common.setWidth(this.$3_75,this.get_dialogDOMElement().offsetWidth-this.get_$3_C9());if(!C1.Web.UI.Utils.Common.testIsNull(this.$3_6F)){C1.Web.UI.Utils.Common.setWidth(this.$3_6F,this.$3_75.parentNode.offsetWidth)}if(this.get_statusVisible()){C1.Web.UI.Utils.Common.setVisible(this.$3_74,true)}this.$3_C2();if(!this.$3_7E){C1.Web.UI.Utils.Common.setVisible(this.$3_75,true)}else{C1.Web.UI.Utils.Common.setVisible(this.$3_6F,true)}if(d<50||c<50){if(!this.$3_8F){var a={};a.backgroundImage="none";this.$3_84.setGrabHandlerStyle(32,a);this.$3_8F=true}}else{if(this.$3_8F){this.$3_B5(32,"");this.$3_8F=false}}this.$3_C7()},$3_B5:function(c,b){var a={};a.backgroundImage=b;this.$3_84.setGrabHandlerStyle(c,a)},$3_B6:function(){this.$3_84.add_resizeStart(Function.createDelegate(this,this.$3_B3));this.$3_84.add_resizing(Function.createDelegate(this,this.$3_B2));this.$3_84.add_helperResizing(Function.createDelegate(this,this.$3_B0));this.$3_84.add_resizeEnd(Function.createDelegate(this,this.$3_AF));Sys.UI.DomEvent.addHandler(this.get_element(),"mousedown",Function.createDelegate(this,this.onMouseDown));Sys.UI.DomEvent.addHandler(this.$3_63,"dblclick",Function.createDelegate(this,this.onTitleDblClick));Sys.UI.DomEvent.addHandler(this.$3_62,"focus",Function.createDelegate(this,this.$3_BB));Sys.UI.DomEvent.addHandler(window,"resize",Function.createDelegate(this,this.$3_CD));Sys.UI.DomEvent.addHandler(window,"scroll",Function.createDelegate(this,this.$3_CE));if(!C1.Web.UI.Controls.C1Window.C1Window.$3_91){Sys.UI.DomEvent.addHandler(document,"keydown",Function.createDelegate(this,this.$3_B7));C1.Web.UI.Controls.C1Window.C1Window.$3_91=true}this.$3_B8();if(this.$3_82){var a=Sys.WebForms.PageRequestManager.getInstance();if(a){a.add_beginRequest(Function.createDelegate(this,this.$3_CF));a.add_endRequest(Function.createDelegate(this,this.$3_D0))}}},$3_B7:function(c){if(this.get_onEscPressedClose()&&c.keyCode===27){var b=C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length;for(var a=0;a<b;a++){var d=C1.Web.UI.Controls.C1Window.C1Window.$3_8D[a];if(!d.get_activityState()){d.hide();return}}}},$3_B8:function(){var a=this.get_captionButtons().get_closeButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);this.$3_92=false;Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.onCloserIn))}a=this.get_captionButtons().get_maximizeButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);this.$3_93=false;Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.onMaximizerIn))}a=this.get_captionButtons().get_minimizeButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);this.$3_94=false;Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.$3_BF))}a=this.get_captionButtons().get_collapseExpandButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.onTogglerIn))}a=this.get_captionButtons().get_reloadButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);this.$3_96=false;Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.onReloaderIn))}a=this.get_captionButtons().get_pinButton().get_$6();if(!C1.Web.UI.Utils.Common.testIsNull(a)){Sys.UI.DomEvent.clearHandlers(a);this.$3_97=false;Sys.UI.DomEvent.addHandler(a,"mouseover",Function.createDelegate(this,this.onPinnerIn))}},$3_B9:function(a){this.get_captionButtons().$C()},$3_BA:function(a){a.stopPropagation();a.preventDefault()},$3_BB:function(a){C1.Web.UI.Controls.C1Window.C1Window.activate(this)},$3_BC:function(a){C1.Web.UI.Controls.C1Window.C1Window.activate(this);this.get_captionButtons().$B(a.target);a.preventDefault();a.stopPropagation()},$3_BD:function(c){c.preventDefault();if(this.get_isAnimating()){return}var b=(this.get_captionButtons().get_minimizeButton().get_$16())?7:8;var a=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(c,b);this.onButtonClicking(a);if(a.get_cancel()){return}this.minimize();this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(c,b))},$3_BE:function(a){this.get_captionButtons().get_minimizeButton().$13(false)},$3_BF:function(b){this.get_captionButtons().get_minimizeButton().$13(true);var a=b.target;if(!this.$3_94){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.$3_BE));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.$3_BD));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"mouseup",Function.createDelegate(this,this.$3_B9));this.$3_94=true}},$3_C0:function(){this.set_captionButtons(new C1.Web.UI.Controls.C1Window.CaptionButtons(this));this.get_captionButtons().$D(this.get_propertiesState()["CaptionButtons"]);this.set_resizeSettings(new C1.Web.UI.Controls.C1Window.ResizeBehaviorSettings(this));this.$3_84=new C1.Web.UI.Behavior.ResizeBehavior(this.get_dialogDOMElement());this.$3_84.set_resizeCssClass("C1wResizer");this.get_resizeSettings().$2(this.get_propertiesState()["ResizeSettings"]);this.$3_A0(this.get_allowResize());this.set_rawOnActivated(this._propertiesState.OnClientActivated);this.set_rawOnButtonClicked(this._propertiesState.OnClientButtonClicked);this.set_rawOnButtonClicking(this._propertiesState.OnClientButtonClicking);this.set_rawOnDeactivated(this._propertiesState.OnClientDeactivated);this.set_rawOnDragStart(this._propertiesState.OnClientDragStart);this.set_rawOnDragging(this._propertiesState.OnClientDragging);this.set_rawOnDragEnd(this._propertiesState.OnClientDragEnd);this.set_rawOnHidden(this._propertiesState.OnClientHidden);this.set_rawOnMaximizing(this._propertiesState.OnClientMaximizing);this.set_rawOnMaximized(this._propertiesState.OnClientMaximized);this.set_rawOnMinimizing(this._propertiesState.OnClientMinimizing);this.set_rawOnMinimized(this._propertiesState.OnClientMinimized);this.set_rawOnNormalizing(this._propertiesState.OnClientNormalizing);this.set_rawOnNormalized(this._propertiesState.OnClientNormalized);this.set_rawOnReloading(this._propertiesState.OnClientReloading);this.set_rawOnReloaded(this._propertiesState.OnClientReloaded);this.set_rawOnResizeStart(this._propertiesState.OnClientResizeStart);this.set_rawOnResizing(this._propertiesState.OnClientResizing);this.set_rawOnResizeEnd(this._propertiesState.OnClientResizeEnd);this.set_rawOnShown(this._propertiesState.OnClientShown);this.set_rawOnPinning(this._propertiesState.OnClientPinning);this.set_rawOnPinned(this._propertiesState.OnClientPinned)},$3_C1:function(){this.$3_73=$get(this.get_dialogDOMElement().id+"_statecontainer");this.$3_65=$get(this.get_dialogDOMElement().id+"_captionicon");this.$3_6A=$get(this.get_dialogDOMElement().id+"_captiontext");this.$3_68=$get(this.get_dialogDOMElement().id+"_captionpinner");this.$3_69=$get(this.get_dialogDOMElement().id+"_captionreloader");this.$3_6B=$get(this.get_dialogDOMElement().id+"_captiontoggler");this.$3_66=$get(this.get_dialogDOMElement().id+"_captionmaximizer");this.$3_67=$get(this.get_dialogDOMElement().id+"_captionminimizer");this.$3_64=$get(this.get_dialogDOMElement().id+"_captioncloser");this.$3_6D=$get(this.get_dialogDOMElement().id+"_controlbox");this.$3_74=$get(this.get_dialogDOMElement().id+"_statusbar");this.$3_74.style.overflow="hidden";this.$3_63=$get(this.get_dialogDOMElement().id+"_heading");this.$3_6C=$get(this.get_dialogDOMElement().id+"_content");this.$3_75=$get(this.get_dialogDOMElement().id+"_c1contentupdatepanel");this.$3_75.style.overflowX="auto";this.$3_75.style.overflowY="auto";this.$3_75.className="C1wContentTemplate";var a=$get(this.get_dialogDOMElement().id+"_c1statusupdatepanel");a.className="C1wStatusTemplate";this.$3_6E=$get(this.get_dialogDOMElement().id+"_footer");this.$3_62=$get(this.get_dialogDOMElement().id+"_accesskeyanchor");this.$3_7A=new C1.Web.UI.Controls.C1Window._Drag(this.$3_63,this)},$3_C2:function(){var a=parseInt(this.get_element().style.height)-this.$3_63.offsetHeight-this.$3_6E.offsetHeight;if(!C1.Web.UI.Utils.Common.testIsNull(this.$3_74)){a-=this.$3_74.offsetHeight}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){if(!a){this.$3_75.style.fontSize="0px"}else{this.$3_75.style.fontSize=""}}C1.Web.UI.Utils.Common.setHeight(this.$3_75,a);if(!C1.Web.UI.Utils.Common.testIsNull(this.$3_6F)){C1.Web.UI.Utils.Common.setHeight(this.$3_6F,a)}},$3_C3:function(){var a=C1.Web.UI.Utils.Measurement.getWindowClientAreaBounds();return a},setDialogPosition:function(){if(!this.$3_7B){return}if(this.get_dialogState()===2){this.$3_9E(false);return}var i=true;var h=0;var g=0;var f=this.$3_C3();this.$3_A5(-10000,-10000);if(C1.Web.UI.Utils.Common.isVisible(this.get_dialogDOMElement())){i=false}else{C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),true)}var e=this.get_dialogDOMElement().offsetWidth;var d=this.get_dialogDOMElement().offsetHeight;if(!(e>0&&d>0)){this.$3_98=true;return}if(this.get_autoExpand()){var c=this.$3_C4();e=c.width;d=c.height}this.resize(e,d);if(this.get_activityState()){C1.Web.UI.Controls.C1Window.C1Window.activate(this)}if(this.get_startPosition()===2||this.get_startPosition()===1){var b=null;var a=C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length;for(var q=0;q<a;q++){var o=C1.Web.UI.Controls.C1Window.C1Window.$3_8D[q];if((o.get_startPosition()===2||o.get_startPosition()===1)&&o.get_id()!==this.get_id()&&o.get_visible()&&o.get_horizontalAlign()===this.get_horizontalAlign()&&o.get_verticalAlign()===this.get_verticalAlign()&&o.get_startPosition()===this.get_startPosition()){if(this.get_width()===o.get_width()&&this.get_height()===o.get_height()){b=o}}}if(b&&!C1.Web.UI.Utils.Common.testIsNull(b)){var n=0;var m=0;if(!this.get_horizontalAlign()||this.get_horizontalAlign()===1){n=this.get_$3_9B()}else{if(this.get_horizontalAlign()===2){n=-this.get_$3_9B()}}if(!this.get_verticalAlign()||this.get_verticalAlign()===1){m=this.get_$3_9B()}else{if(this.get_verticalAlign()===2){m=-this.get_$3_9B()}}if((b.get_dialogDOMElement().offsetLeft+n+b.get_dialogDOMElement().offsetWidth)>=f.width){n=-n}if((b.get_dialogDOMElement().offsetTop+m+b.get_dialogDOMElement().offsetHeight)>=f.height){m=-m}h=b.get_dialogDOMElement().offsetLeft+n;g=b.get_dialogDOMElement().offsetTop+m;if(h<0){h=0}if(g<0){g=0}this.$3_A5(h,g);C1.Web.UI.Controls.C1Window.C1Window.$3_8D[C1.Web.UI.Controls.C1Window.C1Window.$3_8D.length]=this;Array.removeAt(C1.Web.UI.Controls.C1Window.C1Window.$3_8D,Array.indexOf(C1.Web.UI.Controls.C1Window.C1Window.$3_8D,this));if(i){C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),false)}return}}switch(this.get_startPosition()){case 1:if(this.get_horizontalAlign()===1){h=Math.round(f.x+f.width/2-this.get_width()/2)}else{if(this.get_horizontalAlign()===2){h=f.x+f.width-this.get_width()}}if(!this.get_verticalAlign()){g=f.y}if(this.get_verticalAlign()===1){g=Math.round(f.y+f.height/2-this.get_height()/2)}else{if(this.get_verticalAlign()===2){g=f.y+f.height-this.get_height()}}break;case 2:var l=this.get_dialogDOMElement().parentNode;var k=C1.Web.UI.Utils.Measurement.getLocation(l);if(!this.get_horizontalAlign()){h=k.x}else{if(this.get_horizontalAlign()===1){h=Math.round(k.x+l.offsetWidth/2-this.get_width()/2)}else{if(this.get_horizontalAlign()===2){h=k.x+l.offsetWidth-this.get_width()}}}if(!this.get_verticalAlign()){g=k.y}else{if(this.get_verticalAlign()===1){g=Math.round(k.y+l.offsetHeight/2-this.get_height()/2)}else{if(this.get_verticalAlign()===2){g=k.y+l.offsetHeight-this.get_height()}}}break;case 3:h=this.get_x();g=this.get_y();break;case 4:if(this.get_offsetElementId()){var j=Sys.UI.DomElement.getElementById(this.get_offsetElementId());if(j){var p=C1.Web.UI.Utils.Measurement.getLocation(j);p.x+=document.body.offsetLeft;h=p.x+this.get_x();g=p.y+this.get_y()}}break}if(i){C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),false)}if(h<0){h=0}if(g<0){g=0}this.$3_A5(h,g)},$3_C4:function(){var b=false;if(!C1.Web.UI.Utils.Common.isVisible(this.get_dialogDOMElement())){C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),true);b=true}var a=new C1.Web.UI.Utils.Size(0,0);var g;var f;var e=this.get_$3_C9();var d=this.get_$3_A3()+this.$3_74.offsetHeight;this.$3_75.style.width="";this.$3_75.style.height="";this.$3_73.style.overflow="visible";this.$3_75.style.overflowX="visible";this.$3_75.style.overflowY="visible";Sys.UI.DomElement.addCssClass(this.$3_75,"c1-float-left");var c=C1.Web.UI.Utils.Measurement.getStyleBounds(this.$3_75);g=c.width+e;f=c.height+d;Sys.UI.DomElement.removeCssClass(this.$3_75,"c1-float-left");this.$3_73.style.overflow="hidden";this.$3_75.style.overflowX="auto";this.$3_75.style.overflowY="auto";a.width=g;a.height=f;if(b){C1.Web.UI.Utils.Common.setVisible(this.get_dialogDOMElement(),false)}return a},$3_C5:function(a){this.get_dialogDOMElement().style.zIndex=a},$3_C6:function(a){this.$3_81=a;if(a){Sys.UI.DomElement.removeCssClass(this.$3_74.childNodes[0].firstChild,"C1wInvisible")}else{Sys.UI.DomElement.addCssClass(this.$3_74.childNodes[0].firstChild,"C1wInvisible")}},$3_C7:function(){if(this.$3_7D){var a=new C1.Web.UI.Utils.Size(this.get_dialogDOMElement().offsetWidth,this.get_dialogDOMElement().offsetHeight);C1.Web.UI.Utils.Common.setSize(this.$3_72,a)}},onActivated:function(b,a){if(b!==-1){this.$3_C5(b)}this.$3_7A.set_$C(this.get_allowMove());if(!(!this.get_activityState())){this.raiseEvent(this.$3_4C,"OnActivated",a)}},onButtonClicking:function(a){this.$3_7F=false;this.raiseEvent(this.$3_4E,"OnButtonClicking",a)},onButtonClicked:function(a){if(!this.$3_7F){this.raiseEvent(this.$3_4D,"OnButtonClicked",a)}},onCloserClick:function(b){b.preventDefault();if(this.get_isAnimating()){return}var a=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(b,0);this.onButtonClicking(a);if(!a.get_cancel()){this.hide();this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(b,0))}},onCloserIn:function(b){this.get_captionButtons().get_closeButton().$13(true);var a=b.target;if(!this.$3_92){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.onCloserOut));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.onCloserClick));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"mouseup",Function.createDelegate(this,this.$3_B9));this.$3_92=true}},onCloserOut:function(a){this.get_captionButtons().get_closeButton().$13(false)},onDeactivated:function(b,a){if(b!==-1){this.$3_C5(b)}if(!this.get_activityState()){this.raiseEvent(this.$3_4F,"OnDeactivated",a)}},onDragStart:function(a){this.raiseEvent(this.$3_52,"OnDragStart",a)},onDragging:function(a){this.raiseEvent(this.$3_51,"OnDraging",a)},onDragEnd:function(a){this.raiseEvent(this.$3_50,"OnDragEnd",a)},onFrameLoad:function(a){this.onReloaded(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))},onHidden:function(a){this.raiseEvent(this.$3_53,"OnHidden",a)},onMaximizerClick:function(c){c.preventDefault();if(this.get_isAnimating()){return}var b=(this.$3_79===2);var a=(b)?7:1;var d=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(c,a);this.onButtonClicking(d);if(!d.get_cancel()){if(b){this.normalize()}else{this.maximize()}this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(c,a))}},onMaximizerIn:function(b){this.get_captionButtons().get_maximizeButton().$13(true);var a=b.target;if(!this.$3_93){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.onMaximizerOut));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.onMaximizerClick));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"keydown",Function.createDelegate(this,this.$3_B9));this.$3_93=true}},onMaximizerOut:function(a){this.get_captionButtons().get_maximizeButton().$13(false)},onMaximizing:function(a){this.raiseCancelEvent(this.$3_55,"OnMaximizing",a)},onMaximized:function(a){this.raiseEvent(this.$3_54,"OnMaximized",a)},onTogglerClick:function(c){c.preventDefault();if(this.get_isAnimating()){return}var b=this.get_captionButtons().get_collapseExpandButton().get_$16();var a=(b)?3:2;var d=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(c,a);this.onButtonClicking(d);if(!d.get_cancel()){this.$3_C8(b,true);this.get_captionButtons().get_collapseExpandButton().$17(!b);this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(c,a))}},$3_C8:function(b,a){if(b){C1.Web.UI.Utils.Common.setHeight(this.get_dialogDOMElement(),this.get_height());this.$3_A1("C1wClosed",false,false);this.$3_A1("C1wOpened",true,false);if(a&&this.get_animationEffectOnCollapsing()){this.$3_7C=true;C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_animationEffectOnExpanding(),this.$3_6C,this.get_animationDurationOnExpanding(),31,null,Function.createDelegate(this,this.$3_CC),false,false,true,true)}else{this.$3_CC(this,null)}}else{this.$3_A1("C1wOpened",false,false);this.$3_A1("C1wClosed",true,false);this.$3_A0(false);if(this.$3_7D){C1.Web.UI.Utils.Common.setHeight(this.$3_72,this.get_$3_A3())}if(a&&this.get_animationEffectOnCollapsing()){this.$3_7C=true;C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_animationEffectOnCollapsing(),this.$3_6C,this.get_animationDurationOnCollapsing(),31,null,Function.createDelegate(this,this.$3_CB),false,false,true,false)}else{this.$3_CB(this,null)}}},get_$3_C9:function(){return this.$3_6C.offsetWidth-this.$3_75.parentNode.offsetWidth},get_$3_CA:function(){return this.get_dialogDOMElement().offsetWidth-this.$3_6D.parentNode.offsetWidth},$3_CB:function(b,a){C1.Web.UI.Utils.Common.setVisible(this.$3_6C,false);C1.Web.UI.Utils.Common.setHeight(this.get_dialogDOMElement(),this.get_$3_A3());this.$3_7C=false},$3_CC:function(b,a){C1.Web.UI.Utils.Common.setHeight(this.get_dialogDOMElement(),this.get_height());if(this.$3_7D){C1.Web.UI.Utils.Common.setHeight(this.$3_72,this.get_height())}if(this.get_dialogState()===1){this.$3_A0(true)}C1.Web.UI.Utils.Common.setVisible(this.$3_6C,true);this.$3_7C=false},onTogglerIn:function(b){this.get_captionButtons().get_collapseExpandButton().$13(true);var a=b.target;if(!this.$3_95){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.onTogglerOut));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.onTogglerClick));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"mouseup",Function.createDelegate(this,this.$3_B9));this.$3_95=true}},onTogglerOut:function(a){this.get_captionButtons().get_collapseExpandButton().$13(false)},onMinimizing:function(a){this.raiseCancelEvent(this.$3_57,"OnMinimizing",a)},onMinimized:function(a){this.raiseEvent(this.$3_56,"OnMinimized",a)},onMouseDown:function(a){C1.Web.UI.Controls.C1Window.C1Window.activate(this)},onDialogAccessKey:function(a){C1.Web.UI.Controls.C1Window.C1Window.activate(this)},onNormalizing:function(a){this.raiseCancelEvent(this.$3_59,"OnNormalizing",a)},onNormalized:function(a){this.raiseEvent(this.$3_58,"OnNormalized",a)},onPinnerClick:function(c){c.preventDefault();if(this.get_isAnimating()){return}C1.Web.UI.Controls.C1Window.C1Window.activate(this);var b;var a;if(this.$3_80){b=5}else{b=4}a=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(c,b);this.onButtonClicking(a);if(!a.get_cancel()){this.pin(!this.$3_80);this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(c,b))}},onPinnerIn:function(b){this.get_captionButtons().get_pinButton().$13(true);var a=b.target;if(!this.$3_97){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.onPinnerOut));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.onPinnerClick));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"mouseup",Function.createDelegate(this,this.$3_B9));this.$3_97=true}},onPinnerOut:function(a){this.get_captionButtons().get_pinButton().$13(false)},onPinning:function(a){this.raiseCancelEvent(this.$3_5B,"OnPinning",a)},onPinned:function(a){this.raiseEvent(this.$3_5A,"OnPinned",a)},onReloaderClick:function(b){b.preventDefault();if(this.get_isAnimating()){return}C1.Web.UI.Controls.C1Window.C1Window.activate(this);var a=new C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs(b,6);this.onButtonClicking(a);if(!a.get_cancel()){this.reload();this.onButtonClicked(new C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs(null,6))}},onReloaderIn:function(b){this.get_captionButtons().get_reloadButton().$13(true);var a=b.target;if(!this.$3_96){Sys.UI.DomEvent.addHandler(a,"mouseout",Function.createDelegate(this,this.onReloaderOut));Sys.UI.DomEvent.addHandler(a,"click",Function.createDelegate(this,this.onReloaderClick));Sys.UI.DomEvent.addHandler(a,"mousedown",Function.createDelegate(this,this.$3_BC));Sys.UI.DomEvent.addHandler(a,"dblclick",Function.createDelegate(this,this.$3_BA));Sys.UI.DomEvent.addHandler(a,"mouseup",Function.createDelegate(this,this.$3_B9));this.$3_96=true}},onReloaderOut:function(a){this.get_captionButtons().get_reloadButton().$13(false)},onReloading:function(a){this.raiseCancelEvent(this.$3_5D,"OnReloading",a);this.$3_C6(true)},onReloaded:function(a){if(this.$3_81){this.$3_C6(false)}this.raiseEvent(this.$3_5C,"OnReloaded",a)},onResizeStart:function(a){this.raiseEvent(this.$3_5F,"OnResizeStart",a)},onResizing:function(a){this.raiseEvent(this.$3_60,"OnResizing",a)},onResizeEnd:function(a){this.raiseEvent(this.$3_5E,"OnResizeEnd",a)},onShown:function(a){this.raiseEvent(this.$3_61,"OnShown",a)},onTitleDblClick:function(a){if(this.get_captionButtons().get_maximizeButton().get_visible()){this.onMaximizerClick(a)}},$3_CD:function(b){if(this.$3_79===2){var a=this.$3_C3();if(this.get_captionButtons().get_collapseExpandButton().get_$16()){this.$3_C8(true,false);this.$3_A5(a.x,a.y);this.resize(a.width,a.height);this.$3_C8(false,false)}else{this.$3_A5(a.x,a.y);this.resize(a.width,a.height)}}},$3_CE:function(e){if(this.$3_80&&!this.get_isDialogDocked()){var a=C1.Web.UI.Utils.Measurement.getLocation(this.get_dialogDOMElement());var f=this.$3_C3();var d=f.x-this.$3_88;var c=f.y-this.$3_89;a.x+=d;a.y+=c;this.$3_A5(a.x,a.y);this.$3_88=f.x;this.$3_89=f.y}if(!this.$3_7D){return}var b=$get("c1window_defaultdockzone");if(!C1.Web.UI.Utils.Common.testIsNull(b)){C1.Web.UI.Utils.Common.setVisible(b,false);C1.Web.UI.Utils.Common.setVisible(b,true)}},$3_CF:function(d,c){if(c.get_request()){var b=c.get_request();if(!C1.Web.UI.Utils.Common.testIsNull(b)){var a=b.get_body().toLowerCase();if((a.indexOf("c1contentupdatepanel")>0||a.indexOf("c1statusupdatepanel")>0)&&!this.get_activityState()){this.onReloading(new C1.Web.UI.Controls.C1Window.ReloadingEventArgs(null,2))}}}},$3_D0:function(d,c){var b=d._postBackSettings;var a=b.panelID;if((a.indexOf("c1contentupdatepanel")>0||a.indexOf("c1statusupdatepanel")>0)&&!this.get_activityState()){this.onReloaded(new C1.Web.UI.Controls.C1Window.DialogEventArgs(null))}},$3_D3:function(){if(this.$3_7D){return}if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){this.$3_7D=true;this.$3_72=document.createElement("iframe");this.$3_72.frameBorder="0";var a=this.$3_72.style;a.position="absolute";a.width="100%";a.height="100%";a.filter="alpha(opacity=0)";a.zIndex=-1;C1.Web.UI.Utils.Common.setVisible(this.$3_72,false);this.get_dialogDOMElement().insertBefore(this.$3_72,this.get_dialogDOMElement().firstChild)}}};C1.Web.UI.Controls.C1Window.CaptionButton=function(b,a){C1.Web.UI.Controls.C1Window.CaptionButton.initializeBase(this,[b,a])};C1.Web.UI.Controls.C1Window.CaptionButton.prototype={$E:null,$F:null,$10:null,get_$11:function(){return this.$F},set_$11:function(a){this.$F=a;return a},get_$12:function(){return this.$10},set_$12:function(a){this.$10=a;return a},get_tooltip:function(){return this.$E},set_tooltip:function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)&&!a.length){this.$E="";if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6())){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6().attributes.getNamedItem("title"))){this.get_$6().attributes.removeNamedItem("title")}}}else{this.$E=a;if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6())){this.get_$6().title=this.$E}}this._hash.Tooltip=this.$E;this._dialog.saveState();return a},$13:function(a){if(a){this.$B(this.get_$12())}else{this._dialog.get_captionButtons().$C();this.$C(this.get_$12());this.$C(this.get_$11())}},$A:function(a){C1.Web.UI.Controls.C1Window.CaptionButton.callBaseMethod(this,"$A",[a]);if(!C1.Web.UI.Utils.Common.testIsNull(a.Tooltip)){this.set_tooltip(a.Tooltip)}}};C1.Web.UI.Controls.C1Window.CaptionButtons=function(a){this.$0=new C1.Web.UI.Controls.C1Window.CaptionElement(a.$3_65,a);this.$0.set_$9("C1wIcon");this.$0.set_id("captionicon");this.$0.set_$8(-1);this.$0.set_$7("div");this.$6=new C1.Web.UI.Controls.C1Window.CaptionButton(a.$3_64,a);this.$6.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wCloser"));this.$6.set_$12("C1wCloser-Hover");this.$6.set_$11("C1wCloser-Active");this.$6.set_id("captioncloser");this.$6.set_$8(5);this.$5=new C1.Web.UI.Controls.C1Window.PressableCaptionButton(a.$3_66,a);this.$5.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wMaximizer"));this.$5.set_$11("C1wMaximizer-Active");this.$5.set_$12("C1wMaximizer-Hover");this.$5.set_id("captionmaximizer");this.$5.set_$8(4);this.$4=new C1.Web.UI.Controls.C1Window.PressableCaptionButton(a.$3_67,a);this.$4.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wMinimizer"));this.$4.set_$11("C1wMinimizer-Active");this.$4.set_$12("C1wMinimizer-Hover");this.$4.set_id("captionminimizer");this.$4.set_$8(3);this.$3=new C1.Web.UI.Controls.C1Window.PressableCaptionButton(a.$3_6B,a);this.$3.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wToggler"));this.$3.set_$11("C1wToggler-Active");this.$3.set_$12("C1wToggler-Hover");this.$3.set_id("captiontoggler");this.$3.set_$8(2);this.$2=new C1.Web.UI.Controls.C1Window.CaptionButton(a.$3_69,a);this.$2.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wReloader"));this.$2.set_$12("C1wReloader-Hover");this.$2.set_$11("C1wReloader-Active");this.$2.set_id("captionreloader");this.$2.set_$8(1);this.$1=new C1.Web.UI.Controls.C1Window.PressableCaptionButton(a.$3_68,a);this.$1.set_$9(String.format("{0} {1} {2}","C1wListItem","C1wLink","C1wPinner"));this.$1.set_$12("C1wPinner-Hover");this.$1.set_$11("C1wPinner-Active");this.$1.set_id("captionpinner");this.$1.set_$8(0);this.$8=[];this.$8[0]=this.$1;this.$8[1]=this.$2;this.$8[2]=this.$3;this.$8[3]=this.$4;this.$8[4]=this.$5;this.$8[5]=this.$6};C1.Web.UI.Controls.C1Window.CaptionButtons.prototype={$0:null,$1:null,$2:null,$3:null,$4:null,$5:null,$6:null,$7:null,$8:null,get_$9:function(){return this.$8},get_collapseExpandButton:function(){return this.$3},get_closeButton:function(){return this.$6},get_icon:function(){return this.$0},get_maximizeButton:function(){return this.$5},get_minimizeButton:function(){return this.$4},get_pinButton:function(){return this.$1},get_reloadButton:function(){return this.$2},$A:function(){var b=null;var a=null;var e=this.$8.length;for(var d=0;d<e;d++){var c=this.$8[d];if(c.get_visible()){if(C1.Web.UI.Utils.Common.testIsNull(b)){b=c}a=c;c.$C("C1wFirstItem");c.$C("C1wLastItem");c.$C("C1wFirstItem-LastItem")}}if(b&&!C1.Web.UI.Utils.Common.testIsNull(b)){b.$B("C1wFirstItem")}if(a&&!C1.Web.UI.Utils.Common.testIsNull(a)){a.$B("C1wLastItem")}if(b===a&&a&&!C1.Web.UI.Utils.Common.testIsNull(b)){b.$B("C1wFirstItem-LastItem")}},$B:function(c){var b=this.$8.length;for(var a=0;a<b;a++){if(!C1.Web.UI.Utils.Common.testIsNull(this.$8[a])){var d=this.$8[a];if(d.get_visible()&&d.get_$6().id===c.id){Sys.UI.DomElement.addCssClass(c,d.get_$11());this.$7=d;break}}}},$C:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.$7)){Sys.UI.DomElement.removeCssClass(this.$7.get_$6(),this.$7.get_$11())}},$D:function(a){this.get_icon().$A(a.Icon);this.get_reloadButton().$A(a.ReloadButton);this.get_pinButton().$A(a.PinButton);this.get_collapseExpandButton().$A(a.CollapseExpandButton);this.get_maximizeButton().$A(a.MaximizeButton);this.get_minimizeButton().$A(a.MinimizeButton);this.get_closeButton().$A(a.CloseButton)},$E:function(a){if(this.$3.get_visible()){C1.Web.UI.Utils.Common.setVisible(this.$3.get_$6(),a)}if(this.$1.get_visible()){C1.Web.UI.Utils.Common.setVisible(this.$1.get_$6(),a)}if(this.$2.get_visible()){C1.Web.UI.Utils.Common.setVisible(this.$2.get_$6(),a)}}};C1.Web.UI.Controls.C1Window.CaptionElement=function(b,a){this.$1=b;this._dialog=a};C1.Web.UI.Controls.C1Window.CaptionElement.prototype={$0:false,$1:null,_hash:null,_dialog:null,$2:null,$3:null,$4:0,$5:"a",get_$6:function(){return this.$1},get_$7:function(){return this.$5},set_$7:function(a){this.$5=a;return a},get_$8:function(){return this.$4},set_$8:function(a){this.$4=a;return a},get_id:function(){return this.$3},set_id:function(a){this.$3=this._dialog.get_id()+"_"+a;return a},get_$9:function(){return this.$2},set_$9:function(a){this.$2=a;return a},get_visible:function(){return this.$0},set_visible:function(c){if(this.$0!==c){if(c){if(C1.Web.UI.Utils.Common.testIsNull(this.$1)){var b=document.createElement(this.get_$7());b.id=this.get_id();Sys.UI.DomEvent.addHandler(b,"dblclick",Function.createDelegate(this._dialog,this._dialog.$3_BA));if(this.get_$7().toLowerCase()==="div"){this.$1=this._dialog.$3_6D.parentNode.insertBefore(b,this._dialog.$3_6D.parentNode.firstChild)}else{var a=null;for(var d=0;d<this._dialog.get_captionButtons().get_$9().length;d++){a=this._dialog.get_captionButtons().get_$9()[d];if(a.get_visible()&&this.get_$8()<a.get_$8()){break}}if(a&&!C1.Web.UI.Utils.Common.testIsNull(a)){this.$1=this._dialog.$3_6D.insertBefore(b,a.get_$6())}else{this.$1=this._dialog.$3_6D.insertBefore(b)}}this.$B(this.get_$9());this._dialog.$3_B8()}else{this.$C("C1wInvisible")}}else{this.$B("C1wInvisible")}}this.$0=c;this._hash.Visible=c;this._dialog.saveState();if(!C1.Web.UI.Utils.Common.testIsNull(this._dialog.get_captionButtons())){this._dialog.get_captionButtons().$A()}return c},$A:function(a){this._hash=a;if(!C1.Web.UI.Utils.Common.testIsNull(a.Visible)){this.set_visible(a.Visible)}else{this.set_visible(false)}},$B:function(a){if(C1.Web.UI.Utils.Common.testIsNull(this.$1)){return}Sys.UI.DomElement.addCssClass(this.get_$6(),a)},$C:function(a){if(C1.Web.UI.Utils.Common.testIsNull(this.$1)){return}Sys.UI.DomElement.removeCssClass(this.get_$6(),a)},$D:function(a){if(C1.Web.UI.Utils.Common.testIsNull(this.$1)){return}Sys.UI.DomElement.toggleCssClass(this.get_$6(),a)}};C1.Web.UI.Controls.C1Window._Drag=function(b,a){this.$6=new Sys.UI.Point(0,0);this.$7=new Sys.UI.Point(-1,-1);this.$8=new Sys.UI.Point(0,0);this.$9=new Sys.UI.Point(0,0);this.$4=b;this.$3=a;Sys.UI.DomEvent.addHandler(b,"mousedown",Function.createDelegate(this,this.$F));this.$5=Function.createDelegate(this,this.$10);this.$A=Function.createDelegate(this,this.$11);this.$B=Function.createDelegate(this,this.$13)};C1.Web.UI.Controls.C1Window._Drag.prototype={$0:false,$1:false,$2:false,$3:null,$4:null,$5:null,$A:null,$B:null,get_$C:function(){return this.$0},set_$C:function(a){this.$0=a;this.$4.style.cursor=(this.$0)?"move":"default";return a},$D:function(){Sys.UI.DomEvent.addHandler(document,"mousemove",this.$A);Sys.UI.DomEvent.addHandler(document,"mouseup",this.$B)},$E:function(){Sys.UI.DomEvent.removeHandler(document,"mousemove",this.$A);Sys.UI.DomEvent.removeHandler(document,"mouseup",this.$B)},$F:function(c){this.$D();if(!this.$3.get_allowMove()||this.$3.get_isDialogDocked()||this.$3.get_dialogState()===2){return}var b=new C1.Web.UI.Controls.C1Window.DialogCancelEventArgs(c);this.$3.onDragStart(b);if(!b.get_cancel()){var a=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);this.$7.x=a.x;this.$7.y=a.y;this.$6=C1.Web.UI.Utils.Measurement.getLocation(this.$3.get_dialogDOMElement());this.$8.x=this.$6.x;this.$8.y=this.$6.y;this.$1=true;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){this.$4.setCapture()}Sys.UI.DomEvent.addHandler(document.body,"selectstart",this.$5)}},$10:function(a){a.preventDefault()},$11:function(f){if(this.$0&&this.$1&&!this.$3.get_isAnimating()){var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(f.rawEvent);var a=b.x;var g=b.y;var e=a-this.$7.x;var d=g-this.$7.y;this.$7=b;var c=new C1.Web.UI.Controls.C1Window.DraggingEventArgs(f,this.$8.x,this.$8.y,e,d);this.$3.onDragging(c);if(!c.get_cancel()){if(!this.$2){Sys.UI.DomElement.addCssClass(this.$3.$3_73,"C1wDragging");this.$2=true}this.$12(e,d);this.$8.x=e;this.$8.y=d}}},$12:function(d,c){var b=Number.parseInvariant(this.$3.get_dialogDOMElement().style.left.replace("px",""));var a=Number.parseInvariant(this.$3.get_dialogDOMElement().style.top.replace("px",""));b=b+d;a=a+c;this.$3.get_dialogDOMElement().style.left=b+"px";this.$3.get_dialogDOMElement().style.top=a+"px";this.$3.set_x(b);this.$3.set_y(a)},$13:function(a){if(this.$1){this.$1=false;this.$3.onDragEnd(new C1.Web.UI.Controls.C1Window.DialogEventArgs(a));this.$3.set_startPosition(3);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){this.$4.releaseCapture()}Sys.UI.DomElement.removeCssClass(this.$3.$3_73,"C1wDragging");Sys.UI.DomEvent.removeHandler(document.body,"selectstart",this.$5);this.$2=false}this.$E()}};C1.Web.UI.Controls.C1Window.DialogEventArgs=function(a){C1.Web.UI.Controls.C1Window.DialogEventArgs.initializeBase(this);this.$1_0=a};C1.Web.UI.Controls.C1Window.DialogEventArgs.prototype={$1_0:null,get_event:function(){return this.$1_0}};C1.Web.UI.Controls.C1Window.DialogCancelEventArgs=function(a){C1.Web.UI.Controls.C1Window.DialogCancelEventArgs.initializeBase(this,[a])};C1.Web.UI.Controls.C1Window.DialogCancelEventArgs.prototype={$1_1:false,get_cancel:function(){return this.$1_1},set_cancel:function(a){this.$1_1=a;return a}};C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs=function(a,b){C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs.initializeBase(this,[a]);this.$1_2=b};C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs.prototype={$1_2:0,get_action:function(){return this.$1_2}};C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs=function(a,b){C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs.initializeBase(this,[a]);this.$1_1=b};C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs.prototype={$1_1:0,get_action:function(){return this.$1_1}};C1.Web.UI.Controls.C1Window.ReloadingEventArgs=function(b,a){C1.Web.UI.Controls.C1Window.ReloadingEventArgs.initializeBase(this,[b]);this.$1_2=a};C1.Web.UI.Controls.C1Window.ReloadingEventArgs.prototype={$1_2:0,get_origin:function(){return this.$1_2}};C1.Web.UI.Controls.C1Window.DraggingEventArgs=function(b,c,a,e,d){C1.Web.UI.Controls.C1Window.DraggingEventArgs.initializeBase(this,[b]);this.$1_2=c;this.$1_3=a;this.$1_4=e;this.$1_5=d};C1.Web.UI.Controls.C1Window.DraggingEventArgs.prototype={$1_2:0,$1_3:0,$1_4:0,$1_5:0,get_oldX:function(){return this.$1_2},get_oldY:function(){return this.$1_3},get_newX:function(){return this.$1_4},get_newY:function(){return this.$1_5}};C1.Web.UI.Controls.C1Window.PressableCaptionButton=function(b,a){C1.Web.UI.Controls.C1Window.PressableCaptionButton.initializeBase(this,[b,a])};C1.Web.UI.Controls.C1Window.PressableCaptionButton.prototype={$14:null,$15:false,get_$16:function(){return this.$15},set_$16:function(a){if(this.$15!==a){this.$15=a;this._hash.IsPressed=a;this._dialog.saveState()}return a},get_pressedToolTip:function(){return this.$14},set_pressedToolTip:function(a){if(C1.Web.UI.Utils.Common.testIsNull(a)&&!a.length){this.$14=""}else{this.$14=a}this._hash.Pressedtooltip=this.$14;this._dialog.saveState();return a},$13:function(a){if(a){this.$B(this.get_$12())}else{this._dialog.get_captionButtons().$C();this.$C(this.get_$11());this.$C(this.get_$12())}},$17:function(b){this.set_$16(b);var a=(b)?this.get_pressedToolTip():this.get_tooltip();if(C1.Web.UI.Utils.Common.testIsNull(a)||!a.length){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6())){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6().attributes.getNamedItem("title"))){this.get_$6().attributes.removeNamedItem("title")}}}else{if(!C1.Web.UI.Utils.Common.testIsNull(this.get_$6())){this.get_$6().title=a}}},$A:function(a){C1.Web.UI.Controls.C1Window.PressableCaptionButton.callBaseMethod(this,"$A",[a]);if(!C1.Web.UI.Utils.Common.testIsNull(a.IsPressed)){this.set_visible(a.IsPressed)}if(!C1.Web.UI.Utils.Common.testIsNull(a.PressedTooltip)){this.set_pressedToolTip(a.PressedTooltip)}}};C1.Web.UI.Controls.C1Window.ResizeBehaviorSettings=function(a){this.$0=a};C1.Web.UI.Controls.C1Window.ResizeBehaviorSettings.prototype={$0:null,$1:null,get_animationDuration:function(){var a=this.$1.AnimationDuration;if(C1.Web.UI.Utils.Common.testIsNull(a)){return 0}return this.$1.AnimationDuration},set_animationDuration:function(a){this.$1.AnimationDuration=a;this.$0.$3_84.set_animationDuration(a);this.$0.saveState();return a},get_easing:function(){var a=this.$1.Easing;if(C1.Web.UI.Utils.Common.testIsNull(a)){return 31}return this.$1.Easing},set_easing:function(a){this.$1.Easing=a;this.$0.$3_84.set_easing(a);this.$0.saveState();return a},get_increment:function(){var a=this.$1.Increment;if(C1.Web.UI.Utils.Common.testIsNull(a)){return 1}return a},set_increment:function(a){this.$1.Increment=a;this.$0.$3_84.set_step(a);this.$0.saveState();return a},get_ghost:function(){var a=this.$1.Ghost;if(C1.Web.UI.Utils.Common.testIsNull(a)){return false}return a},set_ghost:function(a){this.$1.Ghost=a;this.$0.$3_84.set_ghost(a);this.$0.saveState();return a},get_maxHeight:function(){var a=this.$1.MaxHeight;if(C1.Web.UI.Utils.Common.testIsNull(a)){return 10000}return a},set_maxHeight:function(a){this.$1.MaxHeight=a;this.$0.$3_84.set_maxHeight(a);this.$0.saveState();return a},get_maxWidth:function(){var a=this.$1.MaxWidth;if(C1.Web.UI.Utils.Common.testIsNull(a)){return 10000}return a},set_maxWidth:function(a){this.$1.MaxWidth=a;this.$0.$3_84.set_maxWidth(a);this.$0.saveState();return a},get_minHeight:function(){var a=this.$1.MinHeight;if(C1.Web.UI.Utils.Common.testIsNull(a)){return this.$0.get_$3_A3()+this.$0.$3_74.offsetHeight}return a},set_minHeight:function(a){this.$1.MinHeight=a;this.$0.$3_84.set_minHeight(a);this.$0.saveState();return a},get_minWidth:function(){var b=this.$1.MinWidth;if(C1.Web.UI.Utils.Common.testIsNull(b)){var a=this.$0.get_$3_A4();return a}return b},set_minWidth:function(a){this.$1.MinWidth=a;this.$0.$3_84.set_minWidth(a);this.$0.saveState();return a},get_preserveRatio:function(){var a=this.$1.PreserveRatio;if(C1.Web.UI.Utils.Common.testIsNull(a)){return false}return a},set_preserveRatio:function(a){this.$1.PreserveRatio=a;this.$0.$3_84.set_preserveRatio(a);this.$0.saveState();return a},get_useHelper:function(){var a=this.$1.UseHelper;if(C1.Web.UI.Utils.Common.testIsNull(a)){return true}return a},set_useHelper:function(a){this.$1.UseHelper=a;this.$0.$3_84.set_useHelper(a);this.$0.saveState();return a},$2:function(a){this.$1=a;this.$0.$3_84.set_animationDuration(this.get_animationDuration());this.$0.$3_84.set_easing(this.get_easing());this.$0.$3_84.set_maxHeight(this.get_maxHeight());this.$0.$3_84.set_maxWidth(this.get_maxWidth());this.$0.$3_84.set_preserveRatio(this.get_preserveRatio());this.$0.$3_84.set_step(this.get_increment());this.$0.$3_84.set_useHelper(this.get_useHelper())}};C1.Web.UI.Controls.C1Window.C1Window.registerClass("C1.Web.UI.Controls.C1Window.C1Window",C1.Web.UI.C1ThemeableControlBase);C1.Web.UI.Controls.C1Window.CaptionElement.registerClass("C1.Web.UI.Controls.C1Window.CaptionElement");C1.Web.UI.Controls.C1Window.CaptionButton.registerClass("C1.Web.UI.Controls.C1Window.CaptionButton",C1.Web.UI.Controls.C1Window.CaptionElement);C1.Web.UI.Controls.C1Window.CaptionButtons.registerClass("C1.Web.UI.Controls.C1Window.CaptionButtons");C1.Web.UI.Controls.C1Window._Drag.registerClass("C1.Web.UI.Controls.C1Window._Drag");C1.Web.UI.Controls.C1Window.DialogEventArgs.registerClass("C1.Web.UI.Controls.C1Window.DialogEventArgs",Sys.EventArgs);C1.Web.UI.Controls.C1Window.DialogCancelEventArgs.registerClass("C1.Web.UI.Controls.C1Window.DialogCancelEventArgs",C1.Web.UI.Controls.C1Window.DialogEventArgs);C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs.registerClass("C1.Web.UI.Controls.C1Window.ButtonClickingEventArgs",C1.Web.UI.Controls.C1Window.DialogCancelEventArgs);C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs.registerClass("C1.Web.UI.Controls.C1Window.ButtonClickedEventArgs",C1.Web.UI.Controls.C1Window.DialogEventArgs);C1.Web.UI.Controls.C1Window.ReloadingEventArgs.registerClass("C1.Web.UI.Controls.C1Window.ReloadingEventArgs",C1.Web.UI.Controls.C1Window.DialogCancelEventArgs);C1.Web.UI.Controls.C1Window.DraggingEventArgs.registerClass("C1.Web.UI.Controls.C1Window.DraggingEventArgs",C1.Web.UI.Controls.C1Window.DialogCancelEventArgs);C1.Web.UI.Controls.C1Window.PressableCaptionButton.registerClass("C1.Web.UI.Controls.C1Window.PressableCaptionButton",C1.Web.UI.Controls.C1Window.CaptionButton);C1.Web.UI.Controls.C1Window.ResizeBehaviorSettings.registerClass("C1.Web.UI.Controls.C1Window.ResizeBehaviorSettings");C1.Web.UI.Controls.C1Window.C1Window.$3_8D=[];C1.Web.UI.Controls.C1Window.C1Window.$3_8E=300;C1.Web.UI.Controls.C1Window.C1Window.$3_91=false;
/* END C1.Web.UI.Controls.C1Window.Resources.C1WindowClient.js */
/* START C1.Web.UI.Controls.C1ToolBar.Resources.C1ToolBarClient.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI.Controls.C1ToolBar");C1.Web.UI.Controls.C1ToolBar.IC1ToolBarPropertyChanged=function(){};C1.Web.UI.Controls.C1ToolBar.IC1ToolBarPropertyChanged.registerInterface("C1.Web.UI.Controls.C1ToolBar.IC1ToolBarPropertyChanged");C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner=function(){};C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner.registerInterface("C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner");C1.Web.UI.Controls.C1ToolBar.DockMode=function(){};C1.Web.UI.Controls.C1ToolBar.DockMode.prototype={byDefault:0,docked:1,floating:2};C1.Web.UI.Controls.C1ToolBar.DockMode.registerEnum("C1.Web.UI.Controls.C1ToolBar.DockMode",false);C1.Web.UI.Controls.C1ToolBar.TextImageRelation=function(){};C1.Web.UI.Controls.C1ToolBar.TextImageRelation.prototype={imageBeforeText:0,textBeforeImage:1,imageAboveText:2,textAboveImage:3};C1.Web.UI.Controls.C1ToolBar.TextImageRelation.registerEnum("C1.Web.UI.Controls.C1ToolBar.TextImageRelation",false);C1.Web.UI.Controls.C1ToolBar.CheckState=function(){};C1.Web.UI.Controls.C1ToolBar.CheckState.prototype={unchecked:0,checked:1,indeterminate:2};C1.Web.UI.Controls.C1ToolBar.CheckState.registerEnum("C1.Web.UI.Controls.C1ToolBar.CheckState",false);C1.Web.UI.Controls.C1ToolBar.SelectionMode=function(){};C1.Web.UI.Controls.C1ToolBar.SelectionMode.prototype={none:1,one:2,mutiSelect:4,allowUnselectItem:8,alwaysHasSelected:16};C1.Web.UI.Controls.C1ToolBar.SelectionMode.registerEnum("C1.Web.UI.Controls.C1ToolBar.SelectionMode",false);C1.Web.UI.Controls.C1ToolBar.DisplayStyle=function(){};C1.Web.UI.Controls.C1ToolBar.DisplayStyle.prototype={text:0,image:1,imageAndText:2};C1.Web.UI.Controls.C1ToolBar.DisplayStyle.registerEnum("C1.Web.UI.Controls.C1ToolBar.DisplayStyle",false);C1.Web.UI.Controls.C1ToolBar.ChangeStatus=function(){};C1.Web.UI.Controls.C1ToolBar.ChangeStatus.prototype={itemAdd:0,itemRemove:1};C1.Web.UI.Controls.C1ToolBar.ChangeStatus.registerEnum("C1.Web.UI.Controls.C1ToolBar.ChangeStatus",false);C1.Web.UI.Controls.C1ToolBar.C1DockPanel=function(a){this._propertiesState={};C1.Web.UI.Controls.C1ToolBar.C1DockPanel.initializeBase(this,[a]);this.$2_0=new C1.Web.UI.Interfaces.JsonSerializableHelper(this.get_element().id,this)};C1.Web.UI.Controls.C1ToolBar.C1DockPanel.get_$2_2=function(){if(!C1.Web.UI.Controls.C1ToolBar.C1DockPanel.$2_1){C1.Web.UI.Controls.C1ToolBar.C1DockPanel.$2_1=[]}return C1.Web.UI.Controls.C1ToolBar.C1DockPanel.$2_1};C1.Web.UI.Controls.C1ToolBar.C1DockPanel.prototype={$2_0:null,get_width:function(){return this.get_element().offsetWidth},set_width:function(a){this.get_element().style.width=a.toString()+"px";return a},get_height:function(){return this.get_element().offsetHeight},set_height:function(a){this.get_element().style.height=a.toString()+"px";return a},get_orientation:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Orientation"]))?0:this.get_propertiesState()["Orientation"]},set_orientation:function(c){if(this.get_propertiesState()["Orientation"]!==c){this.get_propertiesState()["Orientation"]=c;if(!c){var b=this.get_width();this.set_width(this.get_height());this.set_height(b)}else{if(c===1){var a=this.get_height();this.set_height(this.get_width());this.set_width(a)}}}return c},get_dock:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Dock"]))?0:this.get_propertiesState()["Dock"]},set_dock:function(a){if(this.get_propertiesState()["Dock"]!==a){this.get_propertiesState()["Dock"]=a}if(a===1||a===2){this.set_orientation(0)}else{if(a===3||a===4){this.set_orientation(1)}}return a},initialize:function(){C1.Web.UI.Controls.C1ToolBar.C1DockPanel.callBaseMethod(this,"initialize");Array.add(C1.Web.UI.Controls.C1ToolBar.C1DockPanel.get_$2_2(),this.get_element())},get_propertiesState:function(){return this._propertiesState},assignPropertiesState:function(a){this._propertiesState=a},createInstance:function(a){return new C1.Web.UI.Controls.C1ToolBar.C1DockPanel(a)}};C1.Web.UI.Controls.C1ToolBar.C1ToolBar=function(a){this.$3_15=[];this.$3_23=-1;this.$3_24=-1;this.$3_42=new Sys.UI.Point(0,0);this.$3_43=new Sys.UI.Point(0,0);C1.Web.UI.Controls.C1ToolBar.C1ToolBar.initializeBase(this,[a]);this.$3_13=[];this.add_toolBarPropertyChanged(Function.createDelegate(this,this.c1ToolBar_ToolBarPropertyChanged))};C1.Web.UI.Controls.C1ToolBar.C1ToolBar.prototype={$3_0:null,$3_1:null,$3_2:null,$3_3:null,$3_4:null,$3_5:null,$3_6:null,$3_7:null,$3_8:null,$3_9:null,$3_A:null,$3_B:false,$3_C:false,$3_D:null,$3_E:null,$3_F:null,$3_10:null,$3_11:null,$3_12:null,$3_13:null,$3_14:null,get_clientType:function(){return"C1ToolBar"},get_$3_16:function(){if(!this.$3_F){this.$3_F=document.createElement("div");Sys.UI.DomElement.addCssClass(this.$3_F,"C1tbFloater")}return this.$3_F},get_$3_17:function(){if(!this.$3_12){this.$3_12=new C1.Web.UI.C1RoundCornerPanel(null);this.$3_12.set_containerCssClass("C1tbContainer");this.$3_12.set_outerCssClass("C1tbOuter");this.$3_12.set_innerCssClass("C1tbInner");this.$3_12.set_contentCssClass("C1tbContent")}return this.$3_12},get_$3_18:function(){if(!this.$3_E){this.$3_E=document.createElement("div");Sys.UI.DomElement.addCssClass(this.$3_E,"C1tbNoRoundedCorner")}return this.$3_E},get_$3_19:function(){return this.$3_13},get_$3_1A:function(){return this._propertiesState.PostBackReferenceString},$3_1B:function(){var a=this._propertiesState.VisualStyle;if(!a||a===""){a="C1ToolBar_ArcticFox"}else{a="C1ToolBar_"+a}return a},get_orientation:function(){return this._propertiesState.Orientation},set_orientation:function(c){if(this.get_orientation()===c){return}this.$3_22();this._propertiesState.Orientation=c;this.onToolBarPropertyChanged();if(!c){Sys.UI.DomElement.removeCssClass(this.get_element(),this.$3_1B()+"-Vertical");Sys.UI.DomElement.removeCssClass(this.get_element(),"C1ToolBar-Vertical");Sys.UI.DomElement.addCssClass(this.get_element(),this.$3_1B()+"-Horizontal");Sys.UI.DomElement.addCssClass(this.get_element(),"C1ToolBar-Horizontal")}else{Sys.UI.DomElement.removeCssClass(this.get_element(),this.$3_1B()+"-Horizontal");Sys.UI.DomElement.removeCssClass(this.get_element(),"C1ToolBar-Horizontal");Sys.UI.DomElement.addCssClass(this.get_element(),this.$3_1B()+"-Vertical");Sys.UI.DomElement.addCssClass(this.get_element(),"C1ToolBar-Vertical")}var b=this.$3_10.childNodes[0];for(var a=0;a<this.$3_10.childNodes.length;a++){if(this.$3_10.childNodes[a].nodeName!=="#text"){b=this.$3_10.childNodes[a];break}}if(!c){Sys.UI.DomElement.removeCssClass(b,"c1-v-flow");Sys.UI.DomElement.addCssClass(b,"c1-h-flow")}else{Sys.UI.DomElement.removeCssClass(b,"c1-h-flow");Sys.UI.DomElement.addCssClass(b,"c1-v-flow")}C1.Web.UI.FlowPanel.setFlowPanelOrientation(b,c,false);return c},get_allowMultipleSelectInControl:function(){return this._propertiesState.AllowMultipleSelectInControl},set_allowMultipleSelectInControl:function(a){if(this.get_allowMultipleSelectInControl()===a){return}this._propertiesState.AllowMultipleSelectInControl=a;this.onToolBarPropertyChanged();return a},get_accessKey:function(){return this._propertiesState.AccessKey},set_accessKey:function(a){if(this.get_accessKey()===a){return}this._propertiesState.AccessKey=a;this.onToolBarPropertyChanged();this.get_element().accessKey=a;return a},get_enabled:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Enabled)){a=this._propertiesState.Enabled}return a},set_enabled:function(c){if(this.get_enabled()===c){return}this.$3_22();this._propertiesState.Enabled=c;this.onToolBarPropertyChanged();if(c){Sys.UI.DomElement.removeCssClass(this.$3_10,"C1tbDisabled")}else{Sys.UI.DomElement.addCssClass(this.$3_10,"C1tbDisabled")}for(var b=0;b<this.get_items().get_count();b++){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(this.get_items().get_item(b))){var a=this.get_items().get_item(b);a.$1_19()}}this.get_element().disabled=!c;return c},get_items:function(){this.$3_22();if(!this.$3_A){this.$3_A=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection(this);this.$3_A.add_$5(Function.createDelegate(this,this.items_OnBeforeCollectionChanged));this.$3_A.add_onCollectionChanged(Function.createDelegate(this,this.items_OnCollectionChanged))}return this.$3_A},items_OnCollectionChanged:function(b,c){var a=c;if(!a.get_status()){this.addItemElement(a.get_item());a.get_item().add_itemVisibleChanged(Function.createDelegate(this,this.item_ItemVisibleChanged))}else{if(a.get_status()===1){this.removeItemElement(a.get_item())}}},item_ItemVisibleChanged:function(b,c){if(c){b.$1_14();var a=this.get_items().$8(b.get_index());if(!a){this.$3_11.appendChild(b.element)}else{this.$3_11.insertBefore(b.element,a)}}else{if(this.$3_4C(this.$3_11,b.element)){this.$3_11.removeChild(b.element)}}this.get_items().$9()},items_OnBeforeCollectionChanged:function(b,c){var a=c;if(!a.get_status()){}else{if(a.get_status()===1){}}},get_windowCollisionDetection:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["WindowCollisionDetection"]))?false:this.get_propertiesState()["WindowCollisionDetection"]},set_windowCollisionDetection:function(a){if(this.get_windowCollisionDetection()===a){return}this.get_propertiesState()["WindowCollisionDetection"]=a;this.onToolBarPropertyChanged();return a},get_width:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Width"])){if(!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Width"].toString())){var a=(this.get_propertiesState()["Width"]).replace("px","");return parseInt(a)}}return this.get_element().offsetWidth},set_width:function(a){if(this.get_width()===a){return}this.$3_22();if(a===-1){this.$3_10.style.width="";this.$3_11.style.width="";this.get_element().style.width="";if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version===6){this.get_element().style.width="0px"}}else{this.get_element().style.width=a.toString()+"px";this.get_propertiesState()["Width"]=a.toString()+"px";this.onToolBarPropertyChanged();this.$3_26()}return a},get_height:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Height"])){if(!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Height"].toString())){var a=(this.get_propertiesState()["Height"]).replace("px","");return parseInt(a)}}return this.get_element().offsetHeight},set_height:function(a){if(this.get_width()===a){return}this.$3_22();if(a===-1){this.$3_10.style.height="";this.get_element().style.height=""}else{this.get_element().style.height=a.toString()+"px";this.get_propertiesState()["Height"]=a.toString()+"px";this.onToolBarPropertyChanged();this.$3_26()}return a},get_dock:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Dock"]))?0:this.get_propertiesState()["Dock"]},set_dock:function(a){if(this.get_propertiesState()["Dock"]===a){return}this.get_propertiesState()["Dock"]=a;this.onToolBarPropertyChanged();if(a===1||a===3){this.set_orientation(0)}else{if(a===2||a===4){this.set_orientation(1)}}return a},get_dockMode:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["DockMode"]))?1:this.get_propertiesState()["DockMode"]},set_dockMode:function(a){if(this.get_propertiesState()["DockMode"]===a){return}this.get_propertiesState()["DockMode"]=a;this.onToolBarPropertyChanged();return a},get_$3_1C:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["ShowRoundedCorner"])){a=this.get_propertiesState()["ShowRoundedCorner"]}return a},set_$3_1C:function(a){this.$3_22();if(this.get_propertiesState()["ShowRoundedCorner"]===a){return}this.get_propertiesState()["ShowRoundedCorner"]=a;this.addCssClass("C1tbNoRoundedCorner");if(a){this.removeCssClass("C1tbNoRoundedCorner")}this.$3_1D(a);this.onToolBarPropertyChanged();return a},$3_1D:function(c){if(c){if(this.get_allowDrag()){if(this.$3_4C(this.get_$3_17().get_contentElement(),this.$3_10)){this.get_$3_17().removeChild(this.$3_10)}if(!this.$3_4C(this.get_$3_16(),this.$3_10)){this.get_$3_16().appendChild(this.$3_10)}if(!this.$3_4C(this.get_$3_17().get_contentElement(),this.get_$3_16())){this.get_$3_17().addChild(this.get_$3_16())}}else{if(this.$3_4C(this.get_$3_17().get_contentElement(),this.get_$3_16())){this.get_$3_17().removeChild(this.get_$3_16())}if(!this.$3_4C(this.get_$3_17().get_contentElement(),this.$3_10)){this.get_$3_17().addChild(this.$3_10)}}if(this.$3_4C(this.get_element(),this.get_$3_18())){this.get_element().removeChild(this.get_$3_18())}this.get_element().appendChild(this.get_$3_17().element)}else{if(this.get_allowDrag()){if(!this.$3_4C(this.get_$3_16(),this.$3_10)){this.get_$3_16().appendChild(this.$3_10)}this.get_$3_18().appendChild(this.get_$3_16())}else{if(!this.$3_4C(this.get_$3_18(),this.$3_10)){this.get_$3_18().appendChild(this.$3_10)}}if(this.$3_4C(this.get_element(),this.get_$3_17().element)){this.get_element().removeChild(this.get_$3_17().element)}this.get_element().appendChild(this.get_$3_18())}for(var b=0;b<this.get_items().get_count();b++){var a=this.get_items().get_item(b);if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(a)){continue}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a)){}else{}}},get_visualStyle:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.VisualStyle))?"":this._propertiesState.VisualStyle},set_visualStyle:function(c){var b=this.get_visualStyle();if(b!==""&&b!==c){var a=new RegExp("("+b+")","g");this._propertiesState.VisualStyle=c;var d=this.get_element().className;d=d.replace(a,c);this.get_element().className=d}return c},initialize:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBar.callBaseMethod(this,"initialize");this.$3_2=Function.createDelegate(this,this.$3_2F);this.$3_7=Function.createDelegate(this,this.$3_30);Sys.UI.DomEvent.addHandler(this.get_element(),"mouseover",this.$3_2);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){Sys.UI.DomEvent.addHandler(this.get_element(),"focusin",this.$3_7)}else{Sys.UI.DomEvent.addHandler(this.get_element(),"focus",this.$3_7)}this.$3_22();var a=window.document;Sys.UI.DomEvent.addHandler(a,"keydown",Function.createDelegate(this,this.$3_1E))},$3_1E:function(c){var b=c.target;if(b){var a=String.fromCharCode(c.keyCode);if(c.altKey){this.$3_1F(this.get_items(),a,c)}}},$3_1F:function(e,d,c){for(var b=0;b<e.get_count();b++){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(e.get_item(b))){if(C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner.isInstanceOfType(e.get_item(b))){this.$3_1F((e.get_item(b)).get_items(),d,c)}else{var a=e.get_item(b);if(a.get_accessKey()){if(a.get_accessKey().length>0){if(d===a.get_accessKey()){this.$3_36(a,c)}}}}}}},$3_20:function(a){var k=a.target;if(k){var j=C1.Web.UI.UIElement.all[(k)["__c1uid"]];if(j&&C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(j)){if(!this.get_enabled()||!j.get_enabled()||(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(j.get_owner())&&!(j.get_owner()).get_enabled())){return}if(j.get_accessKey()===String.fromCharCode(a.keyCode)){this.$3_36(j,a)}var i=false;var h=false;var g=false;var f=false;switch(a.keyCode){case 38:if(this.get_orientation()===1){h=true}else{if(!this.get_orientation()){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)||C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())){h=true}}}break;case 39:if(!this.get_orientation()){if((C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&(j).get_isShow())||(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())&&(j.get_owner()).get_isShow())){f=true}else{i=true}}else{if(this.get_orientation()===1){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&!(j).get_isShow()){g=true}}}break;case 40:if(this.get_orientation()===1){i=true}else{if(!this.get_orientation()){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&!(j).get_isShow()){g=true;i=true}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)||C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())){i=true}}}}break;case 37:if(!this.get_orientation()){if((C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&(j).get_isShow())||(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())&&(j.get_owner()).get_isShow())){f=true}else{h=true}}else{if(this.get_orientation()===1){if((C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&(j).get_isShow())||(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())&&(j.get_owner()).get_isShow())){f=true}}}break}if(g){var e=j;e.displayDropDownList();this.$3_33(e,a);i=false;h=false;a.preventDefault()}if(f){var d=null;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)){d=j}else{d=j.get_owner()}d.hideDropDownList();this.$3_34(d,a);(d).$1_B();i=false;h=false;a.preventDefault()}if(i){var c=j.get_$1_9()+1;var b=this.$3_13;var u=this.$3_13.length;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&(j).get_isShow()){b=(j).get_items();c=0;u=(j).get_items().get_count()}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())){b=j.get_owner().get_items();u=j.get_owner().get_items().get_count()}}if(c===u){c=0}for(var t=0;t<u;t++){var s=t+c;if(s>=u){s-=u}var r=true;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.isInstanceOfType(b)){r=((b).get_item(s)).get_visible()}else{r=((b)[s]).get_visible()}if(r){c=s;break}}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.isInstanceOfType(b)){this.$3_D=(b).get_item(c)}else{this.$3_D=(b)[c]}if(this.$3_D){this.$3_D.$1_B()}a.preventDefault()}if(h){var q=j.get_$1_9()-1;var p=this.$3_13;var o=this.$3_13.length;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j)&&(j).get_isShow()){p=(j).get_items();o=(j).get_items().get_count();q=o-1}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(j.get_owner())){p=j.get_owner().get_items();o=j.get_owner().get_items().get_count()}}if(q===-1){q=o-1}for(var n=o-1;n>0;n--){var m=q-o+n+1;if(m<0){m=o+m-1}var l=true;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.isInstanceOfType(p)){l=((p).get_item(m)).get_visible()}else{l=((p)[m]).get_visible()}if(l){q=m;break}}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.isInstanceOfType(p)){this.$3_D=(p).get_item(q)}else{this.$3_D=(p)[q]}if(this.$3_D){this.$3_D.$1_B()}a.preventDefault()}}}},$3_21:function(){if(this.$3_B){return}this.$3_B=true;var b=this._propertiesState.Items;var a=this.get_items();if(b){for(var f=0;f<b.length;f++){var e=b[f];var d=null;if(!C1.Web.UI.Utils.Common.testIsNull(e.ClientID)){d=$get(e.ClientID)}var c=this.createInstance(d);e.ClientType=c.get_clientType();c.assignPropertiesState(e);a.add(c)}a.$9();this.saveState()}},$3_22:function(){if(this.$3_C){this.$3_26();return}this.get_propertiesState()["ClientInitialized"]=true;this.$3_C=true;if(!this.get_$3_1C()){this.$3_E=$get(this.get_id()+"_tn");this.$3_10=$get(this.get_id()+"_ts");this.$3_11=$get(this.get_id()+"_sf");if(this.get_allowDrag()){this.$3_F=$get(this.get_id()+"_tf")}}else{this.$3_12=new C1.Web.UI.C1RoundCornerPanel($get(this.get_id()+"_tcr"));this.$3_12.initialize();this.$3_10=$get(this.$3_12.get_id()+"_ts");this.$3_11=$get(this.$3_12.get_id()+"_sf");if(this.get_allowDrag()){this.$3_F=$get(this.$3_12.get_id()+"_tf")}}this.$3_49();this.$3_27(this.get_element());this.$3_26();this.$3_21();this.$3_3F()},$3_25:function(e,d,c){if(d==="width"){if(e.childNodes.length>0&&!(e===this.$3_10)){var b=e.childNodes[0];while(!C1.Web.UI.Utils.Common.testIsNull(b)){if(b.nodeType===1){if(b.tagName.toUpperCase()==="DIV"){break}}if(C1.Web.UI.Utils.Common.testIsNull(b.nextSibling)){b=null;break}b=b.nextSibling}if(!C1.Web.UI.Utils.Common.testIsNull(b)){c+=C1.Web.UI.Utils.Common.getPadding(b,3)+C1.Web.UI.Utils.Common.getPadding(b,1)+C1.Web.UI.Utils.Common.getMargin(b,3)+C1.Web.UI.Utils.Common.getMargin(b,1);return this.$3_25(b,"width",c)}return c}else{return c}}else{if(e.childNodes.length>0&&!(e===this.$3_10)){var a=e.childNodes[0];while(!C1.Web.UI.Utils.Common.testIsNull(a)){if(a.nodeType===1){if(a.tagName.toUpperCase()==="DIV"){break}}if(C1.Web.UI.Utils.Common.testIsNull(a.nextSibling)){a=null;break}a=a.nextSibling}if(!C1.Web.UI.Utils.Common.testIsNull(a)){c+=C1.Web.UI.Utils.Common.getPadding(a,0)+C1.Web.UI.Utils.Common.getPadding(a,2)+C1.Web.UI.Utils.Common.getMargin(a,0)+C1.Web.UI.Utils.Common.getMargin(a,2);return this.$3_25(a,"height",c)}return c}else{return c}}},$3_26:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Width"])&&!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Width"].toString())){this.get_element().style.width=this.get_propertiesState()["Width"].toString()}if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Height"])&&!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Height"].toString())){this.get_element().style.height=this.get_propertiesState()["Height"].toString()}if(this.$3_10){if(this.$3_23<0){this.$3_23=this.$3_25(this.get_element(),"width",0)}if(this.$3_24<0){this.$3_24=this.$3_25(this.get_element(),"height",0)}if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Width"])&&!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Width"].toString())){var b=parseFloat(this.get_propertiesState()["Width"].toString().replace("px",""));this.$3_10.style.width=(b-this.$3_23).toString()+"px"}else{this.get_element().style.width="";this.$3_10.style.width=""}if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["Height"])&&!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_propertiesState()["Height"].toString())){var a=parseFloat(this.get_propertiesState()["Height"].toString().replace("px",""));this.$3_10.style.height=(a-this.$3_24).toString()+"px"}else{this.get_element().style.height="";this.$3_10.style.height=""}}},$3_27:function(a){if(!this.$3_3){this.$3_3=Function.createDelegate(this,this.$3_2E);this.$3_4=Function.createDelegate(this,this.$3_2C);this.$3_5=Function.createDelegate(this,this.$3_2D);this.$3_6=Function.createDelegate(this,this.$3_20);this.$3_8=Function.createDelegate(this,this.$3_31);this.$3_9=Function.createDelegate(this,this.$3_32);this.$3_0=Function.createDelegate(this,this.$3_29);this.$3_1=Function.createDelegate(this,this.$3_2A)}Sys.UI.DomEvent.addHandler(a,"click",this.$3_0);Sys.UI.DomEvent.addHandler(a,"click",this.$3_1);Sys.UI.DomEvent.addHandler(a,"mouseout",this.$3_3);Sys.UI.DomEvent.addHandler(a,"mousedown",this.$3_4);Sys.UI.DomEvent.addHandler(a,"mouseup",this.$3_5);Sys.UI.DomEvent.addHandler(a,"keydown",this.$3_6);Sys.UI.DomEvent.addHandler(window.document,"mouseup",this.$3_9);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){Sys.UI.DomEvent.addHandler(a,"focusout",this.$3_8)}else{Sys.UI.DomEvent.addHandler(a,"blur",this.$3_8)}this.$3_41=Function.createDelegate(this,this.onDragDropMouseDown);Sys.UI.DomEvent.addHandler(this.get_element(),"mousedown",this.$3_41)},dispose:function(){if(this.$3_2){try{Sys.UI.DomEvent.removeHandler(this.get_element(),"mouseover",this.$3_2);Sys.UI.DomEvent.removeHandler(this.get_element(),"mouseout",this.$3_3);Sys.UI.DomEvent.removeHandler(this.get_element(),"mouseup",this.$3_5);Sys.UI.DomEvent.removeHandler(this.get_element(),"mousedown",this.$3_4);Sys.UI.DomEvent.removeHandler(this.get_element(),"click",this.$3_0);Sys.UI.DomEvent.removeHandler(this.get_element(),"click",this.$3_1);Sys.UI.DomEvent.removeHandler(this.get_element(),"keydown",this.$3_6);Sys.UI.DomEvent.removeHandler(this.get_element(),"focus",this.$3_7);Sys.UI.DomEvent.removeHandler(this.get_element(),"blur",this.$3_8);this.$3_2=null;this.$3_3=null;this.$3_4=null;this.$3_5=null;this.$3_0=null;this.$3_1=null;this.$3_9=null}catch(a){this.$3_2=null;this.$3_3=null;this.$3_4=null;this.$3_5=null;this.$3_0=null;this.$3_1=null;this.$3_9=null}}C1.Web.UI.Controls.C1ToolBar.C1ToolBar.callBaseMethod(this,"dispose")},add_itemCheck:function(a){this.get_events().addHandler(this.get_id()+"_ItemCheck",a)},remove_itemCheck:function(a){this.get_events().removeHandler(this.get_id()+"_ItemCheck",a)},add_itemFocus:function(a){this.get_events().addHandler(this.get_id()+"_ItemFocus",a)},remove_itemFocus:function(a){this.get_events().removeHandler(this.get_id()+"_ItemFocus",a)},add_itemBlur:function(a){this.get_events().addHandler(this.get_id()+"_ItemBlur",a)},remove_itemBlur:function(a){this.get_events().removeHandler(this.get_id()+"_ItemBlur",a)},add_itemMouseOver:function(a){this.get_events().addHandler(this.get_id()+"_ItemMouseOver",a)},remove_itemMouseOver:function(a){this.get_events().removeHandler(this.get_id()+"_ItemMouseOver",a)},add_itemMouseOut:function(a){this.get_events().addHandler(this.get_id()+"_ItemMouseOut",a)},remove_itemMouseOut:function(a){this.get_events().removeHandler(this.get_id()+"_ItemMouseOut",a)},add_itemMouseDown:function(a){this.get_events().addHandler(this.get_id()+"_ItemMouseDown",a)},remove_itemMouseDown:function(a){this.get_events().removeHandler(this.get_id()+"_ItemMouseDown",a)},add_itemMouseUp:function(a){this.get_events().addHandler(this.get_id()+"_ItemMouseUp",a)},remove_itemMouseUp:function(a){this.get_events().removeHandler(this.get_id()+"_ItemMouseUp",a)},add_itemClick:function(a){this.get_events().addHandler(this.get_id()+"_ItemClick",a)},remove_itemClick:function(a){this.get_events().removeHandler(this.get_id()+"_ItemClick",a)},add_itemSelect:function(a){this.get_events().addHandler(this.get_id()+"_ItemSelect",a)},remove_itemSelect:function(a){this.get_events().removeHandler(this.get_id()+"_ItemSelect",a)},add_dropDownOpen:function(a){this.get_events().addHandler(this.get_id()+"_DropDownOpen",a)},remove_dropDownOpen:function(a){this.get_events().removeHandler(this.get_id()+"_DropDownOpen",a)},add_dropDownClose:function(a){this.get_events().addHandler(this.get_id()+"_DropDownClose",a)},remove_dropDownClose:function(a){this.get_events().removeHandler(this.get_id()+"_DropDownClose",a)},add_scrollBehaviorInit:function(a){this.get_events().addHandler("ScrollBehaviorInit",a)},remove_scrollBehaviorInit:function(a){this.get_events().removeHandler("ScrollBehaviorInit",a)},$3_28:function(b){var a=this.get_events().getHandler("ScrollBehaviorInit");if(a){a(this,b)}},$3_29:function(p){var i=p.target;var h=false;var g=false;var f=false;var e=false;var d=false;if(i){var c=C1.Web.UI.UIElement.all[(i)["__c1uid"]];if(!c||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(c))||C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(c)||!c.get_owner()||!c.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(c.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(c.get_owner()))&&i===c.element)){return}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.isInstanceOfType(c)){h=true;var b=c;var a=(c).$1_32(p);if(a){if(!b.get_isShow()){g=true}else{f=true}}else{if(b.get_enabledDefaultButton()){e=true;d=true}}}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.isInstanceOfType(c)){var q=c;if(!q.get_isShow()){q.displayDropDownList();g=true}else{q.hideDropDownList();f=true}h=true;return}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton.isInstanceOfType(c)){var o=c;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.isInstanceOfType(o.get_owner())&&(o.get_owner()).get_enabledDefaultButton()){var n=o.get_owner();n.set_$1_2E(c.get_index())}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(o.get_owner())){var m=o.get_owner();if(m.get_isShow()){m.hideDropDownList();f=true}}h=true;d=true}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.isInstanceOfType(c)){var l=c;this.$3_2B(p);h=true;d=true}}}}if(!C1.Web.UI.Utils.Common.testIsNull(this.$3_D)){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)){if((this.$3_D).get_isShow()){(this.$3_D).hideDropDownList()}}}if(h){if(e){var k=c;var j=0;if(k.get_$1_2E()>0){j=k.get_$1_2E()}this.$3_36(k.get_items().get_item(j),p)}else{this.$3_36(c,p)}}if(g){this.$3_33(c,p)}if(f){this.$3_34(c,p)}c.get_propertiesState()["ev_ItemClick"]=true;this.saveState();this.$3_D=c;c.$1_C(d,this.get_$3_1A())}},$3_2A:function(c){var b=c.target;if(b){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(C1.Web.UI.UIElement.all[(b)["__c1uid"]])){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(a)||!a.get_owner()||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}a.set_selected(!a.get_selected());if(a.get_selected()){this.$3_35(a,c);a.get_propertiesState()["ev_ItemSelect"]=true;this.saveState()}}}},$3_2B:function(c){var b=c.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}if(!a.get_checkOnClick()){var d=(a).$1_22(c);if(d){return}}a.set_checked(!a.get_checked());if(a.get_checked()){a.addCssClass("C1tbChecked")}else{a.removeCssClass("C1tbChecked")}if(a.get_checked()){this.$3_37(a,c);a.get_propertiesState()["ev_ItemCheck"]=true;a.get_propertiesState()["Checked"]=a.get_checked();this.saveState()}c.stopPropagation()}},$3_2C:function(c){this.$3_22();var b=c.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a))||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}this.$3_3C(a,c);this.saveState()}},$3_2D:function(c){this.$3_22();var b=c.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a))||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}this.$3_3D(a,c);this.saveState();c.stopPropagation()}},$3_2E:function(c){this.$3_22();var b=c.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a))||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(a))){a.$1_1A(false);this.$3_3B(a,c);this.saveState()}}},$3_2F:function(e){this.$3_22();if(this.get_allowDrag()){var a=C1.Web.UI.Utils.Measurement.getMousePointerPosition(e.rawEvent);var f=C1.Web.UI.Utils.Measurement.getLocation(this.$3_F);var d=C1.Web.UI.Utils.Measurement.getLocation(this.get_element());if(!this.get_orientation()){if(a.x>=d.x&&a.x<=f.x+Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(this.$3_F,"paddingLeft","0").toString().replace("px",""))){this.get_element().style.cursor="move"}else{this.get_element().style.cursor="default"}}else{if(a.y>=d.y&&a.y<=f.y+Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(this.$3_F,"paddingTop","0").toString().replace("px",""))){this.get_element().style.cursor="move"}else{this.get_element().style.cursor="default"}}}this.get_element().style.zIndex=Number.parseLocale((C1.Web.UI.Utils.Common.getMaxZIndex(this.get_element())+1).toString());var b=e.target;if(b){var c=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!c||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(c))||!c.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(c.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(c.get_owner()))&&b===c.element)){return}if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(c))){c.$1_1A(true);this.$3_3A(c,e)}}},$3_30:function(d){this.$3_22();var b=d.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(!a||!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a))||!a.get_$1_F()||((C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a.get_owner())||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(a.get_owner()))&&b===a.element)){return}if(b.tagName.toLowerCase()==="li"&&a.get_owner()&&!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(a.get_owner()))&&this.$3_D&&(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)||C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D.get_owner()))){var e=null;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)){e=this.$3_D}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D.get_owner())){e=this.$3_D.get_owner()}}if(e.get_isShow()){e.hideDropDownList();this.$3_34(e,d)}}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a)){if(this.$3_D&&C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)&&a.get_owner()!==this.$3_D){var c=this.$3_D;if(c.get_isShow()){c.hideDropDownList()}}a.set_focused(true);this.$3_D=a;this.$3_38(a,d);this.saveState()}}},$3_31:function(c){var b=c.target;if(b){var a=C1.Web.UI.UIElement.all[(b)["__c1uid"]];if(a&&C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(a)){if(!a.get_$1_F()){return}a.set_focused(false);this.$3_39(a,c);this.saveState()}}},$3_32:function(b){if(this.$3_D){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)||C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D.get_owner())){var a=null;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D)){a=this.$3_D}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.$3_D.get_owner())){a=this.$3_D.get_owner()}}if(a.get_isShow()){a.hideDropDownList();this.$3_34(a,b)}}}},$3_33:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientDropDownOpen)){var a=this._propertiesState.OnClientDropDownOpen;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_DropDownOpen");if(b){b(d,c)}},$3_34:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientDropDownClose)){var a=this._propertiesState.OnClientDropDownClose;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_DropDownClose");if(b){b(d,c)}},$3_35:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemSelect)){var a=this._propertiesState.OnClientItemSelect;var e=(((window)[a]));if(e){e(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}}var b=this.get_events().getHandler(this.get_id()+"_ItemSelect");if(b){b(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}},$3_36:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemClick)){var a=this._propertiesState.OnClientItemClick;var e=(((window)[a]));if(e){e(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}}var b=this.get_events().getHandler(this.get_id()+"_ItemClick");if(b){b(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}},$3_37:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemCheck)){var a=this._propertiesState.OnClientItemCheck;var e=(((window)[a]));if(e){e(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}}var b=this.get_events().getHandler(this.get_id()+"_ItemCheck");if(b){b(this,new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs(d,d.get_commandName(),d.get_commandArgument(),c))}},$3_38:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemFocus)){var a=this._propertiesState.OnClientItemFocus;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemFocus");if(b){b(d,c)}},$3_39:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemBlur)){var a=this._propertiesState.OnClientItemBlur;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemBlur");if(b){b(d,c)}},$3_3A:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemMouseOver)){var a=this._propertiesState.OnClientItemMouseOver;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemMouseOver");if(b){b(d,c)}},$3_3B:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemMouseOut)){var a=this._propertiesState.OnClientItemMouseOut;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemMouseOut");if(b){b(d,c)}},$3_3C:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemMouseDown)){var a=this._propertiesState.OnClientItemMouseDown;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemMouseDown");if(b){b(d,c)}},$3_3D:function(d,c){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.OnClientItemMouseUp)){var a=this._propertiesState.OnClientItemMouseUp;var e=(((window)[a]));if(e){e(d,c)}}var b=this.get_events().getHandler(this.get_id()+"_ItemMouseUp");if(b){b(d,c)}},$3_3E:null,$3_3F:function(){var a=this.get_scrollBehavior();a=null;this.$3_28(new Sys.EventArgs())},get_scrollBehavior:function(){if(!this.$3_3E&&this.$3_10){this.$3_3E=new C1.Web.UI.DOMScrollBehavior(this.$3_10);var a=this._propertiesState.ScrollSettings;if(!C1.Web.UI.Utils.Common.testIsNull(a)){this.$3_40(a);this.$3_3E.assignPropertiesUsingHash(a)}this.$3_3E.initialize()}return this.$3_3E},$3_40:function(c){var b=c.CssStyle;var a=this.$3_1B();if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonCssClass)){c.TopButtonCssClass=b.TopButtonCssClass}else{c.TopButtonCssClass=a+"_ScrollButtonTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonActiveCssClass)){c.TopButtonActiveCssClass=b.TopButtonActiveCssClass}else{c.TopButtonActiveCssClass=a+"_ScrollButtonActiveTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonDisabledCssClass)){c.TopButtonDisabledCssClass=b.TopButtonDisabledCssClass}else{c.TopButtonDisabledCssClass=a+"_ScrollButtonDisabledTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonCssClass)){c.RightButtonCssClass=b.RightButtonCssClass}else{c.RightButtonCssClass=a+"_ScrollButtonRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonActiveCssClass)){c.RightButtonActiveCssClass=b.RightButtonActiveCssClass}else{c.RightButtonActiveCssClass=a+"_ScrollButtonActiveRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonDisabledCssClass)){c.RightButtonDisabledCssClass=b.RightButtonDisabledCssClass}else{c.RightButtonDisabledCssClass=a+"_ScrollButtonDisabledRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonCssClass)){c.BottomButtonCssClass=b.BottomButtonCssClass}else{c.BottomButtonCssClass=a+"_ScrollButtonBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonActiveCssClass)){c.BottomButtonActiveCssClass=b.BottomButtonActiveCssClass}else{c.BottomButtonActiveCssClass=a+"_ScrollButtonActiveBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonDisabledCssClass)){c.BottomButtonDisabledCssClass=b.BottomButtonDisabledCssClass}else{c.BottomButtonDisabledCssClass=a+"_ScrollButtonDisabledBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonCssClass)){c.LeftButtonCssClass=b.LeftButtonCssClass}else{c.LeftButtonCssClass=a+"_ScrollButtonLeft"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonActiveCssClass)){c.LeftButtonActiveCssClass=b.LeftButtonActiveCssClass}else{c.LeftButtonActiveCssClass=a+"_ScrollButtonActiveLeft"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonDisabledCssClass)){c.LeftButtonDisabledCssClass=b.LeftButtonDisabledCssClass}else{c.LeftButtonDisabledCssClass=a+"_ScrollButtonDisabledLeft"}},createInstance:function(b){var a;if(Sys.UI.DomElement.containsCssClass(b,"C1tbGroup")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbDropDownList")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbSplitButton")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbSeparator")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbCheckButton")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton(b)}else{a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton(b)}}}}}return a},$3_41:null,_onDragStarted:null,_onDrag:null,_onDragOver:null,_onDropped:null,get_dragDrop:function(){return this.$3_14},set_dragDrop:function(a){this.$3_14=a;return a},get_allowDrag:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["AllowDrag"]))?false:this.get_propertiesState()["AllowDrag"]},set_allowDrag:function(a){if(this.get_allowDrag()===a){return}this.$3_22();this.get_propertiesState()["AllowDrag"]=a;if(a){if(this.get_$3_1C()){if(this.get_$3_17()&&this.get_$3_16()){if(this.$3_10){this.get_$3_16().appendChild(this.$3_10)}this.get_$3_17().addChild(this.get_$3_16())}}else{if(this.$3_E){if(this.$3_10){this.get_$3_16().appendChild(this.$3_10)}this.$3_E.appendChild(this.get_$3_16())}}}else{if(this.get_$3_1C()){this.get_$3_17().addChild(this.$3_10);this.get_$3_17().removeChild(this.get_$3_16())}else{this.$3_E.appendChild(this.$3_10);this.$3_E.removeChild(this.get_$3_16())}if(this.$3_14){this.$3_14.dispose();this.$3_14=null}}this.saveState();return a},$3_44:function(c){var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);var a=this.$3_45(b);return a},$3_45:function(c){var b=null;var a=C1.Web.UI.Controls.C1ToolBar.C1DockPanel.get_$2_2().length;for(var d=0;d<a;d++){if(C1.Web.UI.Utils.Measurement.isPointOverDOMElement(c,C1.Web.UI.Controls.C1ToolBar.C1DockPanel.get_$2_2()[d])){b=C1.Web.UI.Controls.C1ToolBar.C1DockPanel.get_$2_2()[d];break}}return b},onDragDropMouseDown:function(k){if(!this.get_allowDrag()){return}var j=C1.Web.UI.Utils.Measurement.getMousePointerPosition(k.rawEvent);var i=C1.Web.UI.Utils.Measurement.getLocation(this.$3_F);var h=C1.Web.UI.Utils.Measurement.getLocation(this.get_element());this.initLocation=h;if(!this.get_orientation()){if(j.x<h.x||j.x>i.x+Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(this.$3_F,"paddingLeft","0").toString().replace("px",""))){return}}else{if(j.y<h.y||j.y>i.y+Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(this.$3_F,"paddingTop","0").toString().replace("px",""))){return}}this.$3_14=new C1.Web.UI.DragDrop(this.get_element());this.$3_14.set_useElementAsDragVisual(true);this._onDrag=Function.createDelegate(this,this.onDrag);this._onDragOver=Function.createDelegate(this,this.onDragOver);this._onDragStarted=Function.createDelegate(this,this.onDragStart);this._onDropped=Function.createDelegate(this,this.onDropped);this.$3_14.add_dragStart(this._onDragStarted);this.$3_14.add_drag(this._onDrag);this.$3_14.add_dragOver(this._onDragOver);this.$3_14.add_dropped(this._onDropped);if(!this.$3_15||!this.$3_15.length){this.$3_15=[];var g=Sys.Application.getComponents();for(var f=0;f<g.length;f++){var d=g[f];if(d&&C1.Web.UI.Interfaces.IC1DropContainer.isInstanceOfType(d)){var c=(d).get_dropContainer();if(c){this.$3_14.setDropTarget(c)}}}}for(var b=0;b<this.$3_15.length;b++){var a=(this.$3_15[b]).get_dropContainer();if(a){this.$3_14.setDropTarget(a)}}this.$3_14.initialize();this.$3_14.beginDrag(k)},initLocation:null,_tbCursor:null,_bodyCursor:null,onDragStart:function(c,d){if(Sys.Browser.agent===Sys.Browser.InternetExplorer){this.get_element().setCapture()}this._tbCursor=this.get_element().style.cursor;this._bodyCursor=document.body.style.cursor;this.get_element().style.cursor="move";document.body.style.cursor="move";this.$3_47();var b=this.get_dragDrop().getDropTargetAtPoint(C1.Web.UI.Utils.Measurement.getMousePointerPosition(d.get_domEvent().rawEvent));if(!b){b=d.get_element().parentNode}if(b){var a=Sys.Application.findComponent(b.id);var f=a;if(f){f.dragOver(this,d.get_domEvent());f.remove(this,d.get_domEvent())}}this.set_width(-1);if(this._iframeMaskForIE6){this._iframeMaskForIE6.style.width=this.$3_10.clientWidth.toString()+"px";this._iframeMaskForIE6.style.height=this.$3_10.clientHeight.toString()+"px"}Sys.UI.DomElement.setLocation(d.get_element(),this.initLocation.x,this.initLocation.y)},onDrag:function(a,b){},onDragOver:function(a,b){if(b.get_dropTarget()){(Sys.Application.findComponent(b.get_dropTarget().id)).dragOver(this,b.get_domEvent())}},$3_46:null,$3_47:function(){this.$3_46=document.createElement("div");var a=this.$3_46.style;a.position="absolute";a.width="100%";a.height="100%";a.filter="alpha(opacity=0)";a.top="0px";a.left="0px";a.zIndex=Number.parseLocale((C1.Web.UI.Utils.Common.getMaxZIndex(this.get_element())+1).toString());document.body.appendChild(this.$3_46)},onDropped:function(b,c){this.get_element().style.cursor=this._tbCursor;document.body.style.cursor=this._bodyCursor;var a=c.get_element();if(!this.$3_14){return}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){this.get_element().releaseCapture()}if(this.$3_46&&this.$3_46.parentNode){this.$3_46.parentNode.removeChild(this.$3_46)}this.$3_14.remove_dragStart(this._onDrag);this.$3_14.remove_dragOver(this._onDragStarted);this.$3_14.remove_dropped(this._onDropped);this.$3_14.dispose();this.$3_14=null;if(c.get_dropTarget()){(Sys.Application.findComponent(c.get_dropTarget().id)).add(this,c.get_domEvent())}else{document.body.appendChild(c.get_element());c.get_element().style.position="absolute"}},$3_48:false,_iframeMaskForIE6:null,$3_49:function(){if(this.$3_48||!this.get_allowDrag()||!this.get_$3_16()){return}if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version<7){this.$3_48=true;this._iframeMaskForIE6=document.createElement("iframe");this._iframeMaskForIE6.frameBorder="0";var a=this._iframeMaskForIE6.style;a.position="absolute";a.width=this.$3_10.clientWidth.toString()+"px";a.height=this.$3_10.clientHeight.toString()+"px";a.top="0px";a.filter="alpha(opacity=0)";a.zIndex=-1;C1.Web.UI.Utils.Common.setVisible(this._iframeMaskForIE6,false);this.get_$3_16().insertBefore(this._iframeMaskForIE6,this.get_$3_16().firstChild)}},$3_4A:function(f,d,c){var b=null;var a=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);for(var g=0;g<d.childNodes.length;g++){var e=d.childNodes[g];if(e.nodeType===1&&e!==f&&C1.Web.UI.Utils.Measurement.isPointOverDOMElement(a,e)){b=e;break}}return b},get_controlElement:function(){return this.get_element()},add_dockControlPropertyChanged:function(a){this.get_events().addHandler(this.get_id()+"_DockControlPropertyChanged",a)},remove_dockControlPropertyChanged:function(a){this.get_events().removeHandler(this.get_id()+"_DockControlPropertyChanged",a)},findItemByName:function(a){return this.$3_4B(this.get_items(),a)},$3_4B:function(d,c){var b=null;for(var a=0;a<d.get_count();a++){var e=d.get_item(a);if(e.get_name()===c){b=e;break}else{if(C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner.isInstanceOfType(e)){b=this.$3_4B((e).get_items(),c);if(b){break}}}}return b},addItemElement:function(b){if(!b.element||!b.element.parentNode||b.element.parentNode!==this.get_element()){if(b.get_visible()){var a=null;if(b.get_index()<this.get_items().get_count()-1&&b.get_index()>=0){a=this.get_items().$8(b.get_index());if(a){this.$3_11.insertBefore(b.element,a)}else{this.$3_11.appendChild(b.element)}}else{this.$3_11.appendChild(b.element)}}}},removeItemElement:function(b){var a=b.element;if(a){if(this.$3_4C(this.$3_11,a)){this.$3_11.removeChild(a)}}},$3_4C:function(b,a){if(C1.Web.UI.Utils.Common.testIsNull(b)||C1.Web.UI.Utils.Common.testIsNull(a)){return false}if(Sys.Browser.agent===Sys.Browser.InternetExplorer){return b.contains(a)}else{return this.$3_4D(b,a)}},$3_4D:function(d,c){var b=false;for(var a=0;a<d.childNodes.length;a++){if(d.childNodes[a]===c){b=true;break}if(d.childNodes[a].childNodes.length>0){b=this.$3_4D(d.childNodes[a],c);if(b){break}}}return b},add_toolBarPropertyChanged:function(a){this.get_events().addHandler("_PropertyChanged",a)},remove_toolBarPropertyChanged:function(a){this.get_events().removeHandler("_PropertyChanged",a)},onToolBarPropertyChanged:function(){var a=this.get_events().getHandler("_PropertyChanged");if(a){a()}},c1ToolBar_ToolBarPropertyChanged:function(){this.saveState()}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton.initializeBase(this,[a])};C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton.prototype={get_clientType:function(){return"C1ToolBarButton"}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.initializeBase(this,[a])};C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.prototype={$1_1E:null,get_checked:function(){var a=false;if(this._propertiesState.Checked){a=this._propertiesState.Checked}return a},set_checked:function(a){if(a===this.get_checked()){return}this._propertiesState.Checked=a;this.onItemPropertyChanged();if(this.get_initialized()){this.$1_1F(a)}return a},$1_1F:function(a){if(a){this.set_checkState(1)}else{this.set_checkState(0)}},get_checkOnClick:function(){var a=false;if(this._propertiesState.CheckOnClick){a=this._propertiesState.CheckOnClick}return a},set_checkOnClick:function(a){if(a===this.get_checkOnClick()){return}this._propertiesState.CheckOnClick=a;this.onItemPropertyChanged();return a},get_checkState:function(){var a=0;if(this._propertiesState.CheckState){a=this._propertiesState.CheckState}return a},set_checkState:function(a){if(a===this.get_checkState()){return}this._propertiesState.CheckState=a;this.onItemPropertyChanged();if(this.get_initialized()){this.$1_20(a)}return a},$1_20:function(a){if(a===1){this.set_checked(true);this.removeCssClass("C1tbIndeterminate");this.addCssClass("C1tbChecked")}else{if(a===2){this.set_checked(false);this.removeCssClass("C1tbChecked");this.addCssClass("C1tbIndeterminate")}else{if(!a){this.set_checked(false);this.removeCssClass("C1tbChecked");this.removeCssClass("C1tbIndeterminate")}}}},get_$1_21:function(){return this.$1_1E},get_clientType:function(){return"C1ToolBarCheckButton"},setInitProperties:function(){if(!this.get_$1_21()){if(this.get_$1_10()){this.$1_1E=$get(this.get_c1RoundCornerPanel().get_id()+"_cbi")}else{this.$1_1E=$get(this.get_id()+"_cbi")}}C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.callBaseMethod(this,"setInitProperties")},$1_22:function(c){var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(c.rawEvent);var a=C1.Web.UI.Utils.Measurement.getLocation(c.target);var d=Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(c.target,"paddingLeft","0").toString().replace("px",""));if(b.x<a.x||b.x>a.x+d){return true}return false},createChildControls:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.callBaseMethod(this,"createChildControls");this.$1_1E=document.createElement("span");Sys.UI.DomElement.addCssClass(this.$1_1E,"C1tbCheckButtonImage")},addCSS4ItemElement:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.callBaseMethod(this,"addCSS4ItemElement");var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbCheckButton");if(this.get_checkState()===1){a.$2("C1tbChecked")}else{if(this.get_checkState()===2){a.$2("C1tbIndeterminate")}}Sys.UI.DomElement.addCssClass(this.element,a.toString())},$1_14:function(){if(!this.get_$1_A()){return}this.get_$1_A().innerHTML="";this.get_$1_21().innerHTML="";var a=null;if(!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_text())){a=document.createTextNode(this.get_text())}if(this.get_textImageRelation()===3||this.get_textImageRelation()===1){this.get_$1_A().appendChild(this.get_$1_21());if(a){this.get_$1_21().appendChild(a)}if(this.get_imageUrl()!==""){this.get_$1_A().appendChild(this.get_imgElement())}}else{if(this.get_imageUrl()!==""){this.get_$1_A().appendChild(this.get_imgElement())}this.get_$1_A().appendChild(this.get_$1_21());if(a){this.get_$1_21().appendChild(a)}}}};C1.Web.UI.Controls.C1ToolBar._Const_ClientType=function(){};C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar=function(){};C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup=function(){};C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase=function(){};C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarScrollPanel=function(){};C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem=function(){};C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarCheckButton=function(){};C1.Web.UI.Controls.C1ToolBar._Const_CSS=function(){};C1.Web.UI.Controls.C1ToolBar._CSSGroup=function(){this.$0=[]};C1.Web.UI.Controls.C1ToolBar._CSSGroup.prototype={$0:null,get_$1:function(){return this.$0.length},$2:function(b){var a=this.get_$1();this.$3(a,b);return a},$3:function(b,a){this.$0.splice(b,0,a)},$4:function(a){this.$0.splice(a,1)},$5:function(){this.$0=[]},toString:function(){var b="";for(var a=0;a<this.get_$1();a++){if(a>0){b+=" "}b+=this.$0[a].toString()}return b}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.initializeBase(this,[a])};C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.prototype={get_clientType:function(){return"C1ToolBarDropDownList"},get_showDropDownArrow:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ShowDropDownArrow)){return this._propertiesState.ShowDropDownArrow}return a},set_showDropDownArrow:function(a){if(a===this.get_showDropDownArrow()){return}this._propertiesState.ShowDropDownArrow=a;this.onItemPropertyChanged();if(this.get_initialized()){this.$1_2E(a)}return a},$1_2E:function(a){if(a){this.removeCssClass("C1tbDropDownListNoArrow")}else{this.addCssClass("C1tbDropDownListNoArrow")}},get_selected:function(){return C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.callBaseMethod(this,"get_selected")},set_selected:function(a){if(this.get_selected()===a){return}C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.callBaseMethod(this,"set_selected",[a]);if(this.get_initialized()){this.$1_2F(a)}return a},$1_2F:function(a){if(a){this.addCssClass("C1tbDropDownList-Selected");if(!this.get_$1_D()){this.addCssClass("C1tbDropDownList-NoRoundedCorner-Selected")}if(this.$1_16()){this.addCssClass("C1tbDropDownList-FirstItem-Selected")}else{if(this.$1_17()){this.addCssClass("C1tbDropDownList-LastItem-Selected");if(!this.get_index()){this.addCssClass("C1tbDropDownList-FirstItem-LastItem-Selected")}}else{if(this.$1_18()){this.addCssClass("C1tbDropDownList-AlternatingItems-Selected")}}}}else{this.removeCssClass("C1tbDropDownList-Selected");this.removeCssClass("C1tbDropDownList-NoRoundedCorner-Selected");this.removeCssClass("C1tbDropDownList-FirstItem-Selected");this.removeCssClass("C1tbDropDownList-LastItem-Selected");this.removeCssClass("C1tbDropDownList-FirstItem-LastItem-Selected");this.removeCssClass("C1tbDropDownList-AlternatingItems-Selected")}},setInitProperties:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.callBaseMethod(this,"setInitProperties");this.$1_2E(this.get_showDropDownArrow());this.$1_2F(this.get_selected())},createChildControls:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.callBaseMethod(this,"createChildControls");var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbDropDownList");if(!this.get_showDropDownArrow()){a.$2("C1tbDropDownListNoArrow")}if(this.get_selected()){a.$2("C1tbDropDownList-Selected");if(!this.get_$1_D()){a.$2("C1tbDropDownList-NoRoundedCorner-Selected")}}if(!this.get_$1_D()){a.$2("C1tbDropDownList-NoRoundedCorner")}Sys.UI.DomElement.addCssClass(this.element,a.toString())},$1_1A:function(a){if(a){if(this.get_$1_D()){if(this.get_selected()){this.addCssClass("C1tbDropDownList-Selected-Hover")}else{this.addCssClass("C1tbDropDownList-Hover")}}else{if(this.get_selected()){this.addCssClass("C1tbDropDownList-NoRoundedCorner-Selected-Hover")}else{this.addCssClass("C1tbDropDownList-NoRoundedCorner-Hover")}}if(this.$1_16()){if(this.get_selected()){this.addCssClass("C1tbDropDownList-FirstItem-Selected-Hover")}else{this.addCssClass("C1tbDropDownList-FirstItem-Hover")}}else{if(this.$1_17()){if(this.get_selected()){this.addCssClass("C1tbDropDownList-LastItem-Selected-Hover");if(!this.get_index()){this.addCssClass("C1tbDropDownList-FirstItem-LastItem-Selected-Hover")}}else{this.addCssClass("C1tbDropDownList-LastItem-Hover");if(!this.get_index()){this.addCssClass("C1tbDropDownList-FirstItem-LastItem-Hover")}}}else{if(this.$1_18()){if(this.get_selected()){this.addCssClass("C1tbDropDownList-AlternatingItems-Selected-Hover")}else{this.addCssClass("C1tbDropDownList-AlternatingItems-Hover")}}}}}else{this.removeCssClass("C1tbDropDownList-Selected-Hover");this.removeCssClass("C1tbDropDownList-Hover");this.removeCssClass("C1tbDropDownList-NoRoundedCorner-Selected-Hover");this.removeCssClass("C1tbDropDownList-NoRoundedCorner-Hover");this.removeCssClass("C1tbDropDownList-FirstItem-Selected-Hover");this.removeCssClass("C1tbDropDownList-FirstItem-Hover");this.removeCssClass("C1tbDropDownList-LastItem-Selected-Hover");this.removeCssClass("C1tbDropDownList-FirstItem-LastItem-Selected-Hover");this.removeCssClass("C1tbDropDownList-LastItem-Hover");this.removeCssClass("C1tbDropDownList-FirstItem-LastItem-Hover");this.removeCssClass("C1tbDropDownList-AlternatingItems-Selected-Hover");this.removeCssClass("C1tbDropDownList-AlternatingItems-Hover")}C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.callBaseMethod(this,"$1_1A",[a])}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.initializeBase(this,[a]);this.$1_1E=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection(this);this.$1_1E.add_$5(Function.createDelegate(this,this.items_OnBeforeCollectionChanged));this.$1_1E.add_onCollectionChanged(Function.createDelegate(this,this.items_OnCollectionChanged))};C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.prototype={$1_1E:null,$1_1F:false,$1_20:null,items_OnCollectionChanged:function(b,c){var a=c;if(!a.get_status()){this.addItemElement(a.get_item());a.get_item().add_itemVisibleChanged(Function.createDelegate(this,this.item_ItemVisibleChanged))}else{if(a.get_status()===1){this.removeItemElement(a.get_item())}}},item_ItemVisibleChanged:function(b,c){if(c){b.$1_14();var a=this.get_items().$8(b.get_index());if(!a){this.$1_20.appendChild(b.element)}else{this.$1_20.insertBefore(b.element,a)}}else{if(this.get_toolBar().$3_4C(this.$1_20,b.element)){this.$1_20.removeChild(b.element)}}this.get_items().$9()},items_OnBeforeCollectionChanged:function(b,c){var a=c;if(!a.get_status()){}else{if(a.get_status()===1){}}},get_clientType:function(){return"C1ToolBarGroup"},get_enabled:function(){return C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.callBaseMethod(this,"get_enabled")},set_enabled:function(a){if(this.get_enabled()===a){return}this._propertiesState.Enabled=a;this.onItemPropertyChanged();if(this.$1_1F){this.setEnabled(a)}return a},setEnabled:function(c){var b=(this.get_owner()).get_enabled()|c;this.element.disabled=!b;if(b){this.removeCssClass("C1tbDisabled")}else{this.addCssClass("C1tbDisabled")}for(var a=0;a<this.get_items().get_count();a++){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.isInstanceOfType(this.get_items().get_item(a))){var d=this.get_items().get_item(a);d.$1_19()}}},get_$1_D:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["ShowRoundedCorner"])){a=this.get_propertiesState()["ShowRoundedCorner"]}return a},set_$1_D:function(a){if(this.get_propertiesState()["ShowRoundedCorner"]===a){return}this.get_propertiesState()["ShowRoundedCorner"]=a;this.addCssClass("C1tbNoRoundedCorner");if(a){this.removeCssClass("C1tbNoRoundedCorner")}this.$1_E(a);this.onItemPropertyChanged();return a},$1_E:function(b){for(var a=0;a<this.get_items().get_count();a++){if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(this.get_items().get_item(a)))){(this.get_items().get_item(a)).$1_E(b)}}},get_selectionMode:function(){var a=8;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.SelectionMode)){a=(this._propertiesState.SelectionMode)}return a},set_selectionMode:function(a){if(this.get_selectionMode()===a){return}this._propertiesState.SelectionMode=a;this.onItemPropertyChanged();if(!this.$1_1F){return}if((a&1)===1||(a&2)===2){this.$1_22()}return a},get_$1_21:function(){var b=0;for(var a=0;a<this.get_items().get_count();a++){if((this.get_items().get_item(a)).get_selected()){b++}}return b},$1_22:function(){for(var a=0;a<this.get_items().get_count();a++){if((this.get_items().get_item(a)).get_selected()){(this.get_items().get_item(a)).$1_12(false,true)}}},initialize:function(){if(this.$1_1F){return}this.$1_1F=true;this.get_propertiesState()["ClientType"]=this.get_clientType();if(!this.element){this.createChildControls()}else{if($get(this.get_id()+"_gn")){this.$1_20=$get(this.get_id()+"_gn");var b=this._propertiesState.Items;var a=this.get_items();if(b){for(var f=0;f<b.length;f++){var e=b[f];var d=$get(e.ClientID);if(d){var c=this.createInstance(d);c.assignPropertiesState(e);e.ClientType=c.get_clientType();a.add(c)}else{throw Error.create("(CE101003)Child UIElement with Client ID "+e.ClientID+" can not be initialized. DOMElement not found.")}}(this.get_owner()).saveState()}}else{this.createChildControls()}}this.setInitProperties()},addCSS4ItemElement:function(){if(!this.element){return}var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbGroup");if(!this.get_enabled()){a.$2("C1tbDisabled")}Sys.UI.DomElement.addCssClass(this.element,a.toString())},setInitProperties:function(){this.addCSS4ItemElement()},get_$1_23:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._paddingBottomElement)){this._paddingBottomElement=document.createElement("span")}return this._paddingBottomElement},_paddingBottomElement:null,createChildControls:function(){this.element=document.createElement("li");(this.element)["__c1uid"]=this.UID;C1.Web.UI.UIElement.all[this.UID]=this;this.$1_20=document.createElement("ul");Sys.UI.DomElement.addCssClass(this.$1_20,"C1tbNestedList");this.get_$1_23().appendChild(this.$1_20);this.element.appendChild(this.get_$1_23())},createInstance:function(b){var a;if(Sys.UI.DomElement.containsCssClass(b,"C1tbDropDownList")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbSplitButton")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbSeparator")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator(b)}else{if(Sys.UI.DomElement.containsCssClass(b,"C1tbCheckButton")){a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton(b)}else{a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton(b)}}}}return a},addItemElement:function(b){if(!b.element||!b.element.parentNode||b.element.parentNode!==this.element){if(b.get_visible()){if(b.get_index()<this.get_items().get_count()-1&&b.get_index()>=0){var a=this.get_items().$8(b.get_index());if(a){this.$1_20.insertBefore(b.element,a)}else{this.$1_20.appendChild(b.element)}}else{this.$1_20.appendChild(b.element)}}}},removeItemElement:function(b){var a=b.element;if(a){if(this.get_toolBar().$3_4C(this.$1_20,a)){this.$1_20.removeChild(a)}}},get_items:function(){return this.$1_1E}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem=function(a){this.$1_1C=-1;C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.initializeBase(this,[a]);this.get_propertiesState()["ClientType"]=this.get_clientType();this.$1_1D=new Sys.EventHandlerList()};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.prototype={$1_0:null,$1_1:null,$1_2:null,$1_3:null,$1_4:false,$1_5:null,$1_6:false,$1_7:0,$1_8:null,_imageTextBlankElement:null,get_initialized:function(){return this.$1_4},set_initialized:function(a){this.$1_4=a;return a},get_$1_9:function(){return this.$1_7},set_$1_9:function(a){this.$1_7=a;return a},get_$1_A:function(){return this.$1_3},set_$1_A:function(a){this.$1_3=a;return a},get_imgElement:function(){return this.$1_2},set_imgElement:function(a){this.$1_2=a;return a},$1_B:function(){if(!C1.Web.UI.Utils.Common.testIsNull(this.$1_0)){this.$1_0.focus()}},$1_C:function(b,a){if(!C1.Web.UI.Utils.Common.testIsNull(this.$1_0)){if(b){this.$1_0.href=a}}},get_c1RoundCornerPanel:function(){return this.$1_1},get_causesValidation:function(){var a=false;if(this._propertiesState.CausesValidation){a=this._propertiesState.CausesValidation}return a},set_causesValidation:function(a){if(this.get_causesValidation()===a){return}this._propertiesState.CausesValidation=a;this.onItemPropertyChanged();return a},get_commandArgument:function(){var a="";if(this._propertiesState.CommandArgument){a=this._propertiesState.CommandArgument}return a},set_commandArgument:function(a){if(this.get_commandArgument()===a){return}this._propertiesState.CommandArgument=a;this.onItemPropertyChanged();return a},get_commandName:function(){var a="";if(this._propertiesState.CommandName){a=this._propertiesState.CommandName}return a},set_commandName:function(a){if(this.get_commandName()===a){return}this._propertiesState.CommandName=a;this.onItemPropertyChanged();return a},get_imageUrl:function(){var a="";if(this._propertiesState.ImageUrl){a=this._propertiesState.ImageUrl}return a},set_imageUrl:function(a){if(this.get_imageUrl()===a){return}this._propertiesState.ImageUrl=a;this.onItemPropertyChanged();if(this.$1_4){this.$1_14()}return a},get_disabledImageUrl:function(){var a="";if(this._propertiesState.DisabledImageUrl){a=this._propertiesState.DisabledImageUrl}return a},set_disabledImageUrl:function(a){if(this.get_disabledImageUrl()===a){return}this._propertiesState.DisabledImageUrl=a;this.onItemPropertyChanged();if(this.$1_4&&this.get_imgElement()&&!this.get_$1_F()){this.get_imgElement().src=a}return a},get_selectedImageUrl:function(){var a="";if(this._propertiesState.SelectedImageUrl){a=this._propertiesState.SelectedImageUrl}return a},set_selectedImageUrl:function(a){if(this.get_selectedImageUrl()===a){return}this._propertiesState.SelectedImageUrl=a;this.onItemPropertyChanged();if(this.$1_4&&this.get_imgElement()&&this.get_selected()){this.get_imgElement().src=a}return a},get_mouseOverImageUrl:function(){var a="";if(this._propertiesState.MouseOverImageUrl){a=this._propertiesState.MouseOverImageUrl}return a},set_mouseOverImageUrl:function(a){if(this.get_mouseOverImageUrl()===a){return}this._propertiesState.MouseOverImageUrl=a;this.onItemPropertyChanged();return a},get_selectedHoverImageUrl:function(){var a="";if(this._propertiesState.SelectedHoverImageUrl){a=this._propertiesState.SelectedHoverImageUrl}return a},set_selectedHoverImageUrl:function(a){if(this.get_selectedHoverImageUrl()===a){return}this._propertiesState.SelectedHoverImageUrl=a;this.onItemPropertyChanged();return a},get_selectedDisabledImageUrl:function(){var a="";if(this._propertiesState.SelectedDisabledImageUrl){a=this._propertiesState.SelectedDisabledImageUrl}return a},set_selectedDisabledImageUrl:function(a){if(this.get_selectedDisabledImageUrl()===a){return}this._propertiesState.SelectedDisabledImageUrl=a;this.onItemPropertyChanged();if(this.$1_4&&this.get_imgElement()&&this.get_selected()&&!this.get_$1_F()){this.get_imgElement().src=a}return a},get_$1_D:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["ShowRoundedCorner"])){a=this.get_propertiesState()["ShowRoundedCorner"]}return a},set_$1_D:function(a){if(this.get_propertiesState()["ShowRoundedCorner"]===a||C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.get_owner())){return}this.get_propertiesState()["ShowRoundedCorner"]=a;this.addCssClass("C1tbListItem-NoRoundedCorner");if(a){this.removeCssClass("C1tbListItem-NoRoundedCorner")}this.onItemPropertyChanged();return a},$1_E:function(a){},get_textImageRelation:function(){var a=0;if(this._propertiesState.TextImageRelation){a=this._propertiesState.TextImageRelation}return a},set_textImageRelation:function(a){if(this.get_textImageRelation()===a){return}this._propertiesState.TextImageRelation=a;this.onItemPropertyChanged();if(this.$1_4){this.$1_14()}return a},get_enabled:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Enabled)){a=this._propertiesState.Enabled}return a},set_enabled:function(a){if(this.get_enabled()===a){return}this._propertiesState.Enabled=a;this.onItemPropertyChanged();if(!this.$1_4||!this.element){return}this.setEnabled(a);return a},setEnabled:function(a){this.element.disabled=!this.get_enabled();if(this.get_$1_A()){this.get_$1_A().disabled=!this.get_enabled()}if(this.get_imgElement()){this.get_imgElement().disabled=!this.get_enabled()}if(this.get_enabled()){this.removeCssClass("C1tbDisabled");this.removeCssClass("C1tbSelected-Disabled")}else{this.addCssClass("C1tbDisabled");if(this.get_selected()){this.addCssClass("C1tbSelected-Disabled")}}this.$1_19()},get_$1_F:function(){var a=this.get_enabled();if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_owner())){a=a&&(this.get_owner()).get_enabled()&&((this.get_owner()).get_owner()).get_enabled()}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(this.get_owner())){a=a&&(this.get_owner()).get_enabled()}}return a},get_$1_10:function(){var a=this.get_$1_D();if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_owner())){}else{if(C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(this.get_owner())){}}return a},get_target:function(){return this._propertiesState.Target},set_target:function(a){if(this.get_target()===a){return}this._propertiesState.Target=a;this.onItemPropertyChanged();return a},get_text:function(){return(this._propertiesState.Text)},set_text:function(a){if(this.get_text()===a){return}this._propertiesState.Text=a;this.onItemPropertyChanged();if(!this.$1_4||!this.$1_3||(this.$1_3&&this.$1_3.innerText===a)){return}this.$1_14();return a},get_name:function(){return(this._propertiesState.Name)},set_name:function(a){if(this.get_name()===a){return}this._propertiesState.Name=a;this.onItemPropertyChanged();return a},get_toolBar:function(){if(!this.$1_8){var a=this.get_owner();if(a&&!(C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a))){this.$1_8=(a).get_toolBar()}if(a&&C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(a)){this.$1_8=a}}if(this.$1_8){return this.$1_8}throw Error.create("ToolBar not found.")},get_focused:function(){return this.$1_6},set_focused:function(a){if(this.get_focused()===a){return}this.$1_6=a;this.onItemPropertyChanged();if(!this.$1_4){return}this.$1_11(a);return a},$1_11:function(a){if(a){this.addCssClass("C1tbListItem-Focus");if(!this.get_$1_D()){this.addCssClass("C1tbNoRoundedCorner-Focus")}if(this.$1_16()){this.addCssClass("C1tbFirstItem-Focus")}if(this.$1_17()){this.addCssClass("C1tbLastItem-Focus");if(!this.get_index()){this.addCssClass("C1tbFirstItem-LastItem-Focus")}}}else{this.removeCssClass("C1tbListItem-Focus");this.removeCssClass("C1tbNoRoundedCorner-Focus");this.removeCssClass("C1tbFirstItem-Focus");this.removeCssClass("C1tbLastItem-Focus");this.removeCssClass("C1tbFirstItem-LastItem-Focus")}},get_selected:function(){var a=false;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Selected)){return this._propertiesState.Selected}return a},set_selected:function(a){if(this.get_selected()===a){return}if(this.$1_4){this.$1_12(a,false)}else{this._propertiesState.Selected=a}this.onItemPropertyChanged();return a},$1_12:function(c,b){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_owner())&&!b){var a=this.get_owner();if(a){if((a.get_selectionMode()&1)===1){c=false}else{if((a.get_selectionMode()&2)===2){if(c){a.$1_22()}if(!a.get_$1_21()&&this.get_selected()){c=true}}}if((a.get_selectionMode()&8)!==8&&this.get_selected()&&!c){c=true}if((a.get_selectionMode()&16)===16&&!c){if(a.get_$1_21()===1&&this.get_selected()){c=true}}}}this._propertiesState.Selected=c;if(c){this.addCssClass("C1tbListItem-Selected");if(!this.get_enabled()){this.addCssClass("C1tbSelected-Disabled")}if(!this.get_$1_D()){this.addCssClass("C1tbListItem-NoRoundedCorner-Selected")}if(this.$1_16()){this.addCssClass("C1tbFirstItem-Selected")}if(this.$1_17()){this.addCssClass("C1tbLastItem-Selected");if(!this.get_index()){this.addCssClass("C1tbFirstItem-LastItem-Selected")}}if(this.$1_18()){this.addCssClass("C1tbAlternatingItems-Selected")}}else{this.removeCssClass("C1tbListItem-Selected");this.removeCssClass("C1tbSelected-Disabled");this.removeCssClass("C1tbListItem-NoRoundedCorner-Selected");this.removeCssClass("C1tbFirstItem-Selected");this.removeCssClass("C1tbLastItem-Selected");this.removeCssClass("C1tbFirstItem-LastItem-Selected");this.removeCssClass("C1tbAlternatingItems-Selected")}this.$1_19()},get_value:function(){return(this._propertiesState.Value)},set_value:function(a){if(this.get_value()===a){return}this._propertiesState.Value=a;this.onItemPropertyChanged();return a},get_visible:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Visible)){a=this._propertiesState.Visible}return a},set_visible:function(a){if(this.get_visible()===a){return}this._propertiesState.Visible=a;this.onItemPropertyChanged();if(!this.get_owner()){return}else{if(!this.$1_4){if(a){this.initialize()}else{return}}}this.onItemVisibleChanged();return a},add_itemVisibleChanged:function(a){this.get_events().addHandler(this.UID+"_ItemVisibleChanged",a)},remove_itemVisibleChanged:function(a){this.get_events().removeHandler(this.UID+"_ItemVisibleChanged",a)},onItemVisibleChanged:function(){var a=this.get_events().getHandler(this.UID+"_ItemVisibleChanged");if(a){a(this,this.get_visible())}},get_accessKey:function(){return(this._propertiesState.AccessKey)},set_accessKey:function(a){if(this.get_accessKey()===a){return}this._propertiesState.AccessKey=a;this.onItemPropertyChanged();return a},get_toolTip:function(){return this._propertiesState.ToolTip},set_toolTip:function(a){if(this.get_toolTip()===a){return}this._propertiesState.ToolTip=a;this.onItemPropertyChanged();if(this.$1_4){this.$1_13(a)}return a},$1_13:function(a){this.element.title=a},setInitProperties:function(){this.setEnabled(this.get_enabled());this.$1_11(this.get_focused());this.$1_12(this.get_selected(),false);this.$1_13(this.get_toolTip());this.$1_14();this.addCSS4ItemElement()},initialize:function(){if(this.$1_4){return}this.$1_4=true;this.get_propertiesState()["ClientType"]=this.get_clientType();C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.callBaseMethod(this,"initialize");if(!this.element){this.createChildControls();this.setInitProperties()}else{if(this.element.tagName!=="LI"){var a=this.element.cloneNode(true);this.element=document.createElement("li");(this.element)["__c1uid"]=this.UID;C1.Web.UI.UIElement.all[this.UID]=this;this.element.appendChild(a);this.get_propertiesState()["ClientSideHtml"]=C1.Web.UI.Utils.UTFSupport.encodeString(this.element.innerHTML);if(this.get_toolBar()){this.get_toolBar().saveState()}this.setInitProperties()}else{if($get(this.get_id()+"_icr")){this.$1_1=new C1.Web.UI.C1RoundCornerPanel($get(this.get_id()+"_icr"));this.$1_0=$get(this.get_id()+"_icr");this.$1_3=$get(this.$1_1.get_id()+"_it");this.$1_2=$get(this.$1_1.get_id()+"_iim");if(!this.$1_3){this.$1_3=$get(this.get_id()+"_it");this.$1_2=$get(this.get_id()+"_iim")}}else{this.get_propertiesState()["ClientSideHtml"]=C1.Web.UI.Utils.UTFSupport.encodeString(this.element.innerHTML);if(this.get_toolBar()){this.get_toolBar().saveState()}}}}this.recurInitItemElement(this.element)},createChildControls:function(){this.element=document.createElement("li");(this.element)["__c1uid"]=this.UID;C1.Web.UI.UIElement.all[this.UID]=this;if(!this.$1_1){this.$1_1=new C1.Web.UI.C1RoundCornerPanel(null);this.$1_1.set_containerTabName("a");this.$1_1.set_outerTagName("span");this.$1_1.set_innerTagName("span");this.$1_1.set_contentTagName("span");this.$1_1.set_containerCssClass("C1tbContainer");this.$1_1.set_outerCssClass("C1tbOuter");this.$1_1.set_innerCssClass("C1tbInner");this.$1_1.set_contentCssClass("C1tbContent");this.$1_1.initialize();Sys.UI.DomElement.addCssClass(this.$1_1.element,"C1tbLink")}if(!this.$1_3){this.$1_3=document.createElement("span");Sys.UI.DomElement.addCssClass(this.$1_3,"C1tbTextNode")}if(!this.$1_0){this.$1_0=document.createElement("a");this.$1_0.href=this.get_toolBar().get_$3_1A();var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbLink");a.$2("C1tbContainer");Sys.UI.DomElement.addCssClass(this.$1_0,a.toString())}if(!this.$1_2){this.$1_2=document.createElement("img");Sys.UI.DomElement.addCssClass(this.$1_2,"C1tbImageNode")}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.isInstanceOfType(this.get_owner())){this.$1_0.innerHTML="";this.$1_0.appendChild(this.get_$1_A());this.element.appendChild(this.$1_0)}else{this.get_c1RoundCornerPanel().addChild(this.get_$1_A());this.element.appendChild(this.get_c1RoundCornerPanel().element)}},$1_14:function(){if(!this.get_$1_A()){return}this.get_$1_A().innerHTML="";if(this.get_imageUrl()!==""){Sys.UI.DomElement.removeCssClass(this.get_$1_A(),"C1tbTextAboveImage");Sys.UI.DomElement.removeCssClass(this.get_$1_A(),"C1tbTextBeforeImage");Sys.UI.DomElement.removeCssClass(this.get_$1_A(),"C1tbImageAboveText");Sys.UI.DomElement.removeCssClass(this.get_$1_A(),"C1tbImageBeforeText");var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();if(this.get_textImageRelation()===2){a.$2("C1tbImageAboveText")}else{if(!this.get_textImageRelation()){a.$2("C1tbImageBeforeText")}else{if(this.get_textImageRelation()===3){a.$2("C1tbTextAboveImage")}else{if(this.get_textImageRelation()===1){a.$2("C1tbTextBeforeImage")}}}}Sys.UI.DomElement.addCssClass(this.get_$1_A(),a.toString());Sys.UI.DomElement.addCssClass(this.get_imgElement(),"C1tbImageNode");this.$1_19();this.get_$1_A().appendChild(this.get_imgElement());this._imageTextBlankElement=document.createElement("span");this._imageTextBlankElement.className="C1tbImageTextBlank"}var b=null;if(!C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_text())){b=document.createTextNode(this.get_text())}if(!this.get_textImageRelation()||this.get_textImageRelation()===2){if(b){if(!C1.Web.UI.Utils.Common.testIsNull(this._imageTextBlankElement)){this.get_$1_A().appendChild(this._imageTextBlankElement)}this.get_$1_A().appendChild(b)}}else{if(this.get_textImageRelation()===1||this.get_textImageRelation()===3){if(b){if(C1.Web.UI.Utils.Common.stringIsNullOrEmpty(this.get_imageUrl())){this.get_$1_A().appendChild(b)}else{this.get_$1_A().insertBefore(b,this.get_imgElement());if(!C1.Web.UI.Utils.Common.testIsNull(this._imageTextBlankElement)){this.get_$1_A().insertBefore(this._imageTextBlankElement,this.get_imgElement())}}}}}},addCSS4ItemElement:function(){if(!this.element){return}var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbListItem");if(!this.get_enabled()){a.$2("C1tbDisabled")}if(this.get_selected()){a.$2("C1tbSelected");if(!this.get_enabled()){a.$2("C1tbSelected-Disabled")}if(!this.get_$1_D()){a.$2("C1tbListItem-NoRoundedCorner-Selected")}}if(!this.get_$1_D()){a.$2("C1tbListItem-NoRoundedCorner")}Sys.UI.DomElement.addCssClass(this.element,a.toString());this.$1_15()},$1_15:function(){if(!this.element||!this.get_owner()){return}var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();if(this.$1_16()){a.$2("C1tbFirstItem");if(this.get_selected()){a.$2("C1tbFirstItem-Selected")}}if(this.$1_17()){a.$2("C1tbLastItem");if(this.get_selected()){a.$2("C1tbLastItem-Selected")}if(this.$1_16()){a.$2("C1tbFirstItem-LastItem");if(this.get_selected()){a.$2("C1tbFirstItem-LastItem-Selected")}}}if(this.$1_18()){a.$2("C1tbAlternatingItems");if(this.get_selected()){a.$2("C1tbAlternatingItems-Selected")}}Sys.UI.DomElement.addCssClass(this.element,a.toString())},$1_16:function(){return !this.get_index()},$1_17:function(){return this.get_index()===(this.$1_5.get_items().get_count()-1)},$1_18:function(){return this.get_index()%2===1},$1_19:function(){if(!this.get_imgElement()||this.get_imageUrl()===""){return}if(!this.get_$1_F()&&this.get_selected()){if(this.get_selectedDisabledImageUrl()!==""){this.get_imgElement().src=this.get_selectedDisabledImageUrl()}else{this.get_imgElement().src=this.get_imageUrl()}}else{if(!this.get_$1_F()){if(this.get_disabledImageUrl()!==""){this.get_imgElement().src=this.get_disabledImageUrl()}else{this.get_imgElement().src=this.get_imageUrl()}}else{if(this.get_selected()){if(this.get_selectedImageUrl()!==""){this.get_imgElement().src=this.get_selectedImageUrl()}else{this.get_imgElement().src=this.get_imageUrl()}}else{this.get_imgElement().src=this.get_imageUrl()}}}},$1_1A:function(a){if(a){if(this.get_$1_D()){if(this.get_selected()){this.addCssClass("C1tbListItem-Selected-Hover")}else{this.addCssClass("C1tbListItem-Hover")}}else{if(this.get_selected()){this.addCssClass("C1tbListItem-NoRoundedCorner-Selected-Hover")}else{this.addCssClass("C1tbListItem-NoRoundedCorner-Hover")}}this.addCssClass("C1tbHover");if(this.$1_16()){if(this.get_selected()){this.addCssClass("C1tbFirstItem-Selected-Hover")}else{this.addCssClass("C1tbFirstItem-Hover")}}if(this.$1_17()){if(this.get_selected()){this.addCssClass("C1tbLastItem-Selected-Hover");if(!this.get_index()){this.addCssClass("C1tbFirstItem-LastItem-Selected-Hover")}}else{this.addCssClass("C1tbLastItem-Hover");if(!this.get_index()){this.addCssClass("C1tbFirstItem-LastItem-Hover")}}}if(this.$1_18()){if(this.get_selected()){this.addCssClass("C1tbAlternatingItems-Selected-Hover")}else{this.addCssClass("C1tbAlternatingItems-Hover")}}}else{this.removeCssClass("C1tbListItem-Selected-Hover");this.removeCssClass("C1tbListItem-Hover");this.removeCssClass("C1tbListItem-NoRoundedCorner-Selected-Hover");this.removeCssClass("C1tbListItem-NoRoundedCorner-Hover");this.removeCssClass("C1tbHover");this.removeCssClass("C1tbFirstItem-Hover");this.removeCssClass("C1tbFirstItem-Selected-Hover");this.removeCssClass("C1tbLastItem-Hover");this.removeCssClass("C1tbLastItem-Selected-Hover");this.removeCssClass("C1tbFirstItem-LastItem-Selected-Hover");this.removeCssClass("C1tbFirstItem-LastItem-Hover");this.removeCssClass("C1tbAlternatingItems-Hover");this.removeCssClass("C1tbAlternatingItems-Selected-Hover")}this.$1_1B(a)},$1_1B:function(a){if(!this.get_imgElement()||this.get_imageUrl()===""){return}if(a){if(this.get_selected()&&this.get_selectedHoverImageUrl()!==""){this.get_imgElement().src=this.get_selectedHoverImageUrl()}else{if(!this.get_selected()&&this.get_mouseOverImageUrl()!==""){this.get_imgElement().src=this.get_mouseOverImageUrl()}else{this.get_imgElement().src=this.get_imageUrl()}}}else{if(this.get_selected()&&this.get_selectedImageUrl()!==""){this.get_imgElement().src=this.get_selectedImageUrl()}else{this.get_imgElement().src=this.get_imageUrl()}}},recurInitItemElement:function(c){if(c.tagName){(c)["__c1uid"]=this.UID;var b=c.childNodes;for(var a=0;a<b.length;a++){if(b[a].tagName){this.recurInitItemElement(b[a])}}}},get_owner:function(){return this.$1_5},set_owner:function(a){this.$1_5=a;return a},get_index:function(){return this.$1_1C},set_index:function(a){this.$1_1C=a;return a},get_clientType:function(){return"C1ToolBarItem"},get_itemsContainer:function(){return null},$1_1D:null,get_events:function(){return this.$1_1D},add_toolBarPropertyChanged:function(a){this.get_events().addHandler(this.UID+"_ItemPropertyChanged",a)},remove_toolBarPropertyChanged:function(a){this.get_events().removeHandler(this.UID+"_ItemPropertyChanged",a)},onItemPropertyChanged:function(){var a=this.get_events().getHandler(this.UID+"_ItemPropertyChanged");if(a){a()}}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection=function(a){this.$1=a;this.$0=[];this.$4=new Sys.EventHandlerList()};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.prototype={$0:null,$1:null,$2:"CollectionCahangedEvent",$3:"BeforeCollectionChangedEvent",$4:null,get_events:function(){return this.$4},get_last:function(){return(this.get_count()>0)?this.get_item(this.get_count()-1):null},get_count:function(){return this.$0.length},add_onCollectionChanged:function(a){this.$4.addHandler(this.$2,a)},remove_onCollectionChanged:function(a){this.$4.removeHandler(this.$2,a)},add_$5:function(a){this.$4.addHandler(this.$3,a)},remove_$5:function(a){this.$4.removeHandler(this.$3,a)},$6:function(d,c){var b=this.$4.getHandler(this.$2);if(b){var a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs(d);a.set_status(c);b(this,a)}},$7:function(d,c){var b=this.$4.getHandler(this.$3);if(b){var a=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs(d);a.set_status(c);b(this,a)}},add:function(b){var a=this.get_count();this.insert(a,b);return a},insert:function(c,d){if(!d){return}d.set_owner(this.$1);d.set_index(c);this.$7(d,0);if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(d))&&!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(d))&&(C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(this.$1)||C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.$1))){Array.insert((d).get_toolBar().get_$3_19(),c,d);for(var b=0;b<(d).get_toolBar().get_$3_19().length;b++){((d).get_toolBar().get_$3_19()[b]).set_$1_9(b)}}this.$0.splice(c,0,d);if(c<this.$0.length&&c>=0){for(var a=c+1;a<this.$0.length;a++){(this.get_item(a)).set_index(a)}}d.initialize();d.add_toolBarPropertyChanged(Function.createDelegate(this,this.item_ItemPropertyChanged));if(!Array.contains((this.$1).get_propertiesState()["Items"],(d).get_propertiesState())){(this.$1).get_propertiesState()["Items"].splice(c,0,(d).get_propertiesState());d.get_toolBar().saveState()}this.$6(d,0);this.$9()},$8:function(b){for(var a=b+1;a<this.get_count();a++){if(this.get_item(a).get_visible()){return this.get_item(a).element}}return null},item_ItemPropertyChanged:function(){var a;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(this.$1)){a=this.$1}else{a=(this.$1).get_toolBar()}a.saveState()},removeAt:function(c){var b=this.$0[c];if(!b){return}this.$7(b,1);if(Array.contains((b).get_toolBar().get_$3_19(),b)){Array.remove((b).get_toolBar().get_$3_19(),b);for(var a=0;a<(b).get_toolBar().get_$3_19().length;a++){((b).get_toolBar().get_$3_19()[a]).set_$1_9(a)}}b.remove_toolBarPropertyChanged(Function.createDelegate(this,this.item_ItemPropertyChanged));this.$0.splice(c,1);if(c<this.$0.length&&c>=0){for(var d=c;d<this.$0.length;d++){(this.get_item(d)).set_index(d)}}(this.$1).get_propertiesState()["Items"].splice(c,1);b.get_toolBar().saveState();b.set_owner(null);this.$6(b,1);this.$9()},removeRange:function(b,c){for(var a=0;a<c;a++){this.removeAt(b+a)}},reverse:function(){this.$0.reverse()},clear:function(){for(var a=this.$0.length-1;a>=0;a--){this.removeAt(a)}},contains:function(a){return Array.contains(((this.$0)),a)},indexOf:function(a){if(this.contains(a)){return a.get_index()}return -1},$9:function(){var b=0;for(var a=0;a<this.$0.length;a++){if(!(this.$0[a]).get_visible()){continue}(this.$0[a]).removeCssClass("C1tbFirstItem");(this.$0[a]).removeCssClass("C1tbLastItem");(this.$0[a]).removeCssClass("C1tbFirstItem-LastItem");(this.$0[a]).removeCssClass("C1tbAlternatingItems");if(!b){(this.$0[a]).addCssClass("C1tbFirstItem")}if(b===(this.$0[a]).element.parentNode.childNodes.length-1){(this.$0[a]).addCssClass("C1tbLastItem");if(!b){(this.$0[a]).addCssClass("C1tbFirstItem-LastItem")}}if(b%2===1){(this.$0[a]).addCssClass("C1tbAlternatingItems")}if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_item(a))&&C1.Web.UI.Controls.C1ToolBar.C1ToolBar.isInstanceOfType(this.$1)){if(!(this.$1).get_orientation()){return}var c=this.get_item(a);if(!b){c.addCssClass("C1tbTopPaddingGroup")}else{if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_item(a-1)))&&!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(this.get_item(a-1)))){c.addCssClass("C1tbTopPaddingGroup")}}if(a===this.$0.length-1){c.get_$1_23().className="C1tbBottomPaddingGroup"}else{if(!(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.isInstanceOfType(this.get_item(a-1)))){c.get_$1_23().className="C1tbBottomPaddingGroup"}}}b++}},$A:function(a){if(this.contains(a)){this.removeAt(a.get_index())}},get_item:function(a){return this.$0[a]},set_item:function(b,c){if(b>=0&&b<this.get_count()){var a=this.$0[b];if(c!==a){this.$A(a);this.insert(b,c)}}return c}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.initializeBase(this,[a])};C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.prototype={get_clientType:function(){return"C1ToolBarSeparator"},initialize:function(){if(this.get_initialized()){return}this.get_propertiesState()["ClientType"]=this.get_clientType();this.set_initialized(true);if(!this.element){this.createChildControls();this.setInitProperties()}else{if(this.element.tagName!=="LI"){var a=this.element.cloneNode(true);this.element=document.createElement("li");(this.element)["__c1uid"]=this.UID;C1.Web.UI.UIElement.all[this.UID]=this;this.element.appendChild(a);this.get_propertiesState()["ClientSideHtml"]=C1.Web.UI.Utils.UTFSupport.encodeString(this.element.innerHTML);if(this.get_toolBar()){this.get_toolBar().saveState()}this.setInitProperties()}else{if($get(this.get_id()+"_it")){this.set_$1_A($get(this.get_id()+"_it"));this.set_imgElement($get(this.get_id()+"_iim"))}else{this.get_propertiesState()["ClientSideHtml"]=C1.Web.UI.Utils.UTFSupport.encodeString(this.element.innerHTML);if(this.get_toolBar()){this.get_toolBar().saveState()}}}}this.recurInitItemElement(this.element)},setInitProperties:function(){this.setEnabled(this.get_enabled());this.addCSS4ItemElement()},createChildControls:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.callBaseMethod(this,"createChildControls");this.element.innerHTML="";Sys.UI.DomElement.addCssClass(this.element,"C1tbSeparator");Sys.UI.DomElement.addCssClass(this.get_$1_A(),"C1tbTextNode");this.element.appendChild(this.get_$1_A())}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.initializeBase(this,[a])};C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.prototype={get_clientType:function(){return"C1ToolBarSplitButton"},get_$1_2E:function(){var a=0;if(this.get_propertiesState()["NestedItemIndex"]){a=this.get_propertiesState()["NestedItemIndex"]}return a},set_$1_2E:function(a){if(this.get_propertiesState()["NestedItemIndex"]===a){return}this.get_propertiesState()["NestedItemIndex"]=a;this.$1_31(a);this.onItemPropertyChanged();return a},get_enabledDefaultButton:function(){var a=true;if(!C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["EnabledDefaultButton"])){a=this.get_propertiesState()["EnabledDefaultButton"]}return a},set_enabledDefaultButton:function(a){if(this.get_propertiesState()["EnabledDefaultButton"]===a){return}this.get_propertiesState()["EnabledDefaultButton"]=a;this.onItemPropertyChanged();return a},get_defaultButtonIndex:function(){var a=0;if(this.get_propertiesState()["DefaultButtonIndex"]){a=this.get_propertiesState()["DefaultButtonIndex"]}return a},set_defaultButtonIndex:function(a){if(this.get_propertiesState()["DefaultButtonIndex"]===a){return}this.get_propertiesState()["DefaultButtonIndex"]=a;this.set_$1_2E(a);this.onItemPropertyChanged();return a},get_focused:function(){return C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"get_focused")},set_focused:function(a){if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"get_focused")===a){return}C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"set_focused",[a]);if(this.get_initialized()){this.$1_2F(a)}return a},$1_2F:function(a){if(a){this.addCssClass("C1tbSplitButton-Focus");if(!this.get_$1_D()){this.addCssClass("C1tbSplitButton-NoRoundedCorner-Focus")}}else{this.removeCssClass("C1tbSplitButton-Focus");this.removeCssClass("C1tbSplitButton-NoRoundedCorner-Focus")}},get_selected:function(){return C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"get_selected")},set_selected:function(a){if(this.get_selected()===a){return}C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"set_selected",[a]);if(this.get_initialized()){this.$1_30(a)}return a},$1_30:function(a){if(a){this.addCssClass("C1tbSplitButton-Selected");if(!this.get_$1_D()){this.addCssClass("C1tbSplitButton-NoRoundedCorner-Selected")}if(this.$1_16()){this.addCssClass("C1tbSplitButton-FirstItem-Selected")}else{if(this.$1_17()){this.addCssClass("C1tbSplitButton-LastItem-Selected");if(!this.get_index()){this.addCssClass("C1tbSplitButton-FirstItem-LastItem-Selected")}}else{if(this.$1_18()){this.addCssClass("C1tbSplitButton-AlternatingItems-Selected")}}}}else{this.removeCssClass("C1tbSplitButton-Selected");this.removeCssClass("C1tbSplitButton-NoRoundedCorner-Selected");this.removeCssClass("C1tbSplitButton-FirstItem-Selected");this.removeCssClass("C1tbSplitButton-LastItem-Selected");this.removeCssClass("C1tbSplitButton-FirstItem-LastItem-Selected");this.removeCssClass("C1tbSplitButton-AlternatingItems-Selected")}this.$1_19()},createChildControls:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"createChildControls");this.addCssClass("C1tbSplitButton");if(this.get_selected()){this.addCssClass("C1tbSplitButton-Selected");if(!this.get_$1_D()){this.addCssClass("C1tbSplitButton-NoRoundedCorner-Selected")}}if(!this.get_$1_D()){this.addCssClass("C1tbSplitButton-NoRoundedCorner")}this.$1_31(this.get_defaultButtonIndex())},$1_31:function(c){if(this.get_enabledDefaultButton()&&c>=0&&c<this.get_items().get_count()){var b=this.get_items().get_item(c);if(this.get_$1_A().parentNode&&b){var a=this.get_$1_A().parentNode;var d=b.get_$1_A().cloneNode(true);a.removeChild(this.get_$1_A());a.appendChild(d);this.set_$1_A(d);this.recurInitItemElement(this.element)}}},$1_32:function(e){var b=C1.Web.UI.Utils.Measurement.getMousePointerPosition(e.rawEvent);var a=Number.parseLocale(C1.Web.UI.Utils.Common.getCurrentStyle(this.get_$1_A(),"paddingRight","0").toString().replace("px",""));var f=C1.Web.UI.Utils.Measurement.getBounds(this.get_$1_A());var d=C1.Web.UI.Utils.Measurement.getBounds(this.get_$1_A());var c=d.x+d.width-f.x-f.width+a;if(b.x<=d.x+d.width&&b.x>=d.x+d.width-c){if(!this.get_isShow()){this.displayDropDownList()}else{this.hideDropDownList()}return true}return false},$1_19:function(){if(this.get_enabledDefaultButton()){if(this.get_$1_2E()<0||this.get_$1_2E()>=this.get_items().get_count()){C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"$1_19");return}var a=this.get_items().get_item(this.get_$1_2E());if(!a||a.get_imageUrl()===""){return}if(!this.get_$1_F()&&this.get_selected()){if(a.get_selectedDisabledImageUrl()!==""){this.get_imgElement().src=a.get_selectedDisabledImageUrl()}else{this.get_imgElement().src=a.get_imageUrl()}}else{if(!this.get_$1_F()){if(a.get_disabledImageUrl()!==""){this.get_imgElement().src=a.get_disabledImageUrl()}else{this.get_imgElement().src=a.get_imageUrl()}}else{if(this.get_selected()){if(a.get_selectedImageUrl()!==""){this.get_imgElement().src=a.get_selectedImageUrl()}else{this.get_imgElement().src=a.get_imageUrl()}}else{this.get_imgElement().src=a.get_imageUrl()}}}}else{C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"$1_19")}},$1_1A:function(a){if(a){if(this.get_$1_D()){if(this.get_selected()){this.addCssClass("C1tbSplitButton-Selected-Hover")}else{this.addCssClass("C1tbSplitButton-Hover")}}else{if(this.get_selected()){this.addCssClass("C1tbSplitButton-NoRoundedCorner-Selected-Hover")}else{this.addCssClass("C1tbSplitButton-NoRoundedCorner-Hover")}}if(this.$1_16()){if(this.get_selected()){this.addCssClass("C1tbSplitButton-FirstItem-Selected-Hover")}else{this.addCssClass("C1tbSplitButton-FirstItem-Hover")}}else{if(this.$1_17()){if(this.get_selected()){this.addCssClass("C1tbSplitButton-LastItem-Selected-Hover");if(!this.get_index()){this.addCssClass("C1tbSplitButton-FirstItem-LastItem-Selected-Hover")}}else{this.addCssClass("C1tbSplitButton-LastItem-Hover");if(!this.get_index()){this.addCssClass("C1tbSplitButton-FirstItem-LastItem-Hover")}}}else{if(this.$1_18()){if(this.get_selected()){this.addCssClass("C1tbSplitButton-AlternatingItems-Selected-Hover")}else{this.addCssClass("C1tbSplitButton-AlternatingItems-Hover")}}}}}else{this.removeCssClass("C1tbSplitButton-Selected-Hover");this.removeCssClass("C1tbSplitButton-Hover");this.removeCssClass("C1tbSplitButton-NoRoundedCorner-Selected-Hover");this.removeCssClass("C1tbSplitButton-NoRoundedCorner-Hover");this.removeCssClass("C1tbSplitButton-FirstItem-Selected-Hover");this.removeCssClass("C1tbSplitButton-FirstItem-Hover");this.removeCssClass("C1tbSplitButton-LastItem-Selected-Hover");this.removeCssClass("C1tbSplitButton-FirstItem-LastItem-Selected-Hover");this.removeCssClass("C1tbSplitButton-LastItem-Hover");this.removeCssClass("C1tbSplitButton-FirstItem-LastItem-Hover");this.removeCssClass("C1tbSplitButton-AlternatingItems-Selected-Hover");this.removeCssClass("C1tbSplitButton-AlternatingItems-Hover")}C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"$1_1A",[a])},$1_1B:function(b){if(this.get_enabledDefaultButton()){if(this.get_$1_2E()<0||this.get_$1_2E()>=this.get_items().get_count()){return}var a=this.get_items().get_item(this.get_$1_2E());if(!a||a.get_imageUrl()===""){return}if(b){if(this.get_selected()&&a.get_selectedHoverImageUrl()!==""){this.get_imgElement().src=a.get_selectedHoverImageUrl()}else{if(!this.get_selected()&&a.get_mouseOverImageUrl()!==""){this.get_imgElement().src=a.get_mouseOverImageUrl()}else{this.get_imgElement().src=a.get_imageUrl()}}}else{if(this.get_selected()&&a.get_selectedImageUrl()!==""){this.get_imgElement().src=a.get_selectedImageUrl()}else{this.get_imgElement().src=a.get_imageUrl()}}}else{C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.callBaseMethod(this,"$1_1B",[b])}}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.initializeBase(this,[a]);if(!this.element){this._propertiesState.Items=[]}this.$1_20=new C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection(this);this.$1_20.add_$5(Function.createDelegate(this,this.items_OnBeforeCollectionChanged));this.$1_20.add_onCollectionChanged(Function.createDelegate(this,this.items_OnCollectionChanged))};C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.prototype={$1_1E:null,$1_1F:null,$1_20:null,$1_21:null,_expandAnimation:null,_collapseAnimation:null,_PopupBehavior:null,$1_22:0,$1_23:0,$1_24:false,items_OnBeforeCollectionChanged:function(b,c){var a=c;if(!a.get_status()){}else{if(a.get_status()===1){}}},items_OnCollectionChanged:function(b,c){var a=c;if(!a.get_status()){this.addItemElement(a.get_item());a.get_item().add_itemVisibleChanged(Function.createDelegate(this,this.item_ItemVisibleChanged))}else{if(a.get_status()===1){this.removeItemElement(a.get_item())}}},item_ItemVisibleChanged:function(b,c){if(c){b.$1_14();var a=this.get_items().$8(b.get_index());if(!a){this.$1_21.appendChild(b.element)}else{this.$1_21.insertBefore(b.element,a)}}else{if(this.get_toolBar().$3_4C(this.$1_21,b.element)){this.$1_21.removeChild(b.element)}}this.get_items().$9()},get_isShow:function(){return this.$1_24},get_expandDelay:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["ExpandDelay"]))?100:this.get_propertiesState()["ExpandDelay"]},set_expandDelay:function(a){if(a<0||this.get_expandDelay()===a){return}this.get_propertiesState()["ExpandDelay"]=a;this.onItemPropertyChanged();return a},get_collapseDelay:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["CollapseDelay"]))?100:this.get_propertiesState()["CollapseDelay"]},set_collapseDelay:function(a){if(a<0||this.get_collapseDelay()===a){return}this.get_propertiesState()["CollapseDelay"]=a;this.onItemPropertyChanged();return a},get_expandAnimation:function(){return(!this.get_propertiesState()["ExpandAnimation"])?0:this.get_propertiesState()["ExpandAnimation"]},set_expandAnimation:function(a){if(this.get_expandAnimation()===a){return}this.get_propertiesState()["ExpandAnimation"]=a;this.onItemPropertyChanged();return a},get_collapseAnimation:function(){return(!this.get_propertiesState()["CollapseAnimation"])?0:this.get_propertiesState()["CollapseAnimation"]},set_collapseAnimation:function(a){if(this.get_collapseAnimation()===a){return}this.get_propertiesState()["CollapseAnimation"]=a;this.onItemPropertyChanged();return a},get_collapseDuration:function(){return(!this.get_propertiesState()["CollapseDuration"])?500:this.get_propertiesState()["CollapseDuration"]},set_collapseDuration:function(a){if(a<0||this.get_collapseDuration()===a){return}this.get_propertiesState()["CollapseDuration"]=a;this.onItemPropertyChanged();return a},get_expandDuration:function(){return(!this.get_propertiesState()["ExpandDuration"])?500:this.get_propertiesState()["ExpandDuration"]},set_expandDuration:function(a){if(a<0||this.get_expandDuration()===a){return}this.get_propertiesState()["ExpandDuration"]=a;this.onItemPropertyChanged();return a},get_expandEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandEasing))?20:this._propertiesState.ExpandEasing},set_expandEasing:function(a){if(this.get_expandEasing()===a){return}this._propertiesState.ExpandEasing=a;this.onItemPropertyChanged();return a},get_collapseEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.CollapseEasing))?31:this._propertiesState.CollapseEasing},set_collapseEasing:function(a){if(this.get_collapseEasing()===a){return}this._propertiesState.CollapseEasing=a;this.onItemPropertyChanged();return a},get_popupBehavior:function(){var b=9;if(this.get_owner()){var a=0;if(C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.isInstanceOfType(this.get_owner())){a=((this.get_owner()).get_owner()).get_orientation()}else{a=(this.get_owner()).get_orientation()}if(a===1){b=6}}if(!this._PopupBehavior){var e=0;if(this.get_toolBar().$3_11){var d=C1.Web.UI.Utils.Measurement.getBounds(this.get_toolBar().$3_11);var c=C1.Web.UI.Utils.Measurement.getBounds(this.element);if(this.get_toolBar().get_orientation()===1){e=d.width-c.width}}this._PopupBehavior=new C1.Web.UI.PopupBehavior(this.$1_1E,9,e,0,this.element);this._PopupBehavior.set_windowCollisionDetection(this.get_toolBar().get_windowCollisionDetection());this._PopupBehavior.set_positionMode(b);this._PopupBehavior.add_setupPopupDone(Function.createDelegate(this,this.popupBehavior_SetupPopupDone));this._PopupBehavior.add_showing(Function.createDelegate(this,this.popupBehavior_Showing));this._PopupBehavior.add_hiding(Function.createDelegate(this,this.popupBehavior_Hiding));this._PopupBehavior.add_shown(Function.createDelegate(this,this.$1_29));this._PopupBehavior.add_hidden(Function.createDelegate(this,this.popupBehavior_Hidden))}else{if(b!==this._PopupBehavior.get_positionMode()){this._PopupBehavior.set_positionMode(b)}}return this._PopupBehavior},$1_25:null,$1_26:null,$1_27:function(){this.get_popupBehavior().show()},$1_28:function(){this.get_popupBehavior().hide()},displayDropDownList:function(){this.$1_26=C1.Web.UI.Utils.Common.clearPendingTimeout(this.$1_26);this.initialize();if(this.get_popupBehavior()){this.set_selected(true);var a=this.get_expandDelay();if(a>0){this.$1_25=C1.Web.UI.Utils.Common.clearPendingTimeout(this.$1_25);this.$1_25=window.setTimeout(Function.createDelegate(this,this.$1_27),a)}else{this.$1_27()}}},hideDropDownList:function(){this.$1_25=C1.Web.UI.Utils.Common.clearPendingTimeout(this.$1_25);if(this._PopupBehavior){var a=this.get_collapseDelay();if(a>0){this.$1_26=C1.Web.UI.Utils.Common.clearPendingTimeout(this.$1_26);this.$1_26=window.setTimeout(Function.createDelegate(this,this.$1_28),a)}else{this.$1_28()}}this.set_selected(false)},popupBehavior_SetupPopupDone:function(a,b){if(!this.get_expandAnimation()){this._PopupBehavior.set_showAnimation(null)}else{this.$1_23=this.get_expandAnimation();this._expandAnimation=C1.Web.UI.Behavior.AnimationEffects.createAnimationByType(this.$1_23,this.$1_1E,this.get_expandDuration(),this.get_expandEasing(),null,null,true,true,true,true);if(this._expandAnimation){this._PopupBehavior.set_showAnimation(this._expandAnimation)}}},popupBehavior_Showing:function(a,b){this.$1_2A(new Sys.EventArgs())},$1_29:function(b,a){this.$1_24=true;if(this.get_items().get_count()>0){this.removeCssClass("C1tbClosed");this.addCssClass("C1tbOpened")}this.$1_2B(new Sys.EventArgs())},popupBehavior_Hiding:function(a,b){this.$1_2C(new Sys.EventArgs());if(!this.get_collapseAnimation()){this._PopupBehavior.set_hideAnimation(null)}else{this.$1_22=this.get_collapseAnimation();this._collapseAnimation=C1.Web.UI.Behavior.AnimationEffects.createAnimationByType(this.$1_22,this.$1_1E,this.get_collapseDuration(),this.get_collapseEasing(),null,null,true,true,true,false);if(this._collapseAnimation){this._PopupBehavior.set_hideAnimation(this._collapseAnimation)}}},popupBehavior_Hidden:function(a,b){this.$1_24=false;if(this.get_items().get_count()>0){this.removeCssClass("C1tbOpened");this.addCssClass("C1tbClosed")}this.$1_2D(new Sys.EventArgs())},add_showing:function(a){this.get_events().addHandler("showing",a)},remove_showing:function(a){this.get_events().removeHandler("showing",a)},$1_2A:function(b){var a=this.get_events().getHandler("showing");if(a){a(this,b)}},add_shown:function(a){this.get_events().addHandler("shown",a)},remove_shown:function(a){this.get_events().removeHandler("shown",a)},$1_2B:function(b){var a=this.get_events().getHandler("shown");if(a){a(this,b)}},add_hiding:function(a){this.get_events().addHandler("hiding",a)},remove_hiding:function(a){this.get_events().removeHandler("hiding",a)},$1_2C:function(b){var a=this.get_events().getHandler("hiding");if(a){a(this,b)}},add_hidden:function(a){this.get_events().addHandler("hidden",a)},remove_hidden:function(a){this.get_events().removeHandler("hidden",a)},$1_2D:function(b){var a=this.get_events().getHandler("hidden");if(a){a(this,b)}},initialize:function(){if(this.get_initialized()){return}C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.callBaseMethod(this,"initialize");if($get(this.get_id()+"_dlc")){this.$1_1E=$get(this.get_id()+"_lc");this.$1_1F=$get(this.get_id()+"_dlc");this.$1_21=$get(this.get_id()+"_dic");var b=this._propertiesState.Items;var a=this.get_items();if(b){for(var f=0;f<b.length;f++){var e=b[f];var d=$get(e.ClientID);if(d){var c=this.createInstance(d);c.assignPropertiesState(e);(c).set_$1_9(f);a.add(c)}else{throw Error.create("(CE101003)Child UIElement with Client ID "+e.ClientID+" can not be initialized. DOMElement not found.")}}}}},createChildControls:function(){C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.callBaseMethod(this,"createChildControls");this.$1_1E=document.createElement("div");var b=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();b.$2("C1tbNestedListContainer");Sys.UI.DomElement.addCssClass(this.$1_1E,b.toString());this.$1_1F=document.createElement("div");var a=new C1.Web.UI.Controls.C1ToolBar._CSSGroup();a.$2("C1tbNestedList");a.$2("C1tbDropDown-NestedList");Sys.UI.DomElement.addCssClass(this.$1_1F,a.toString());this.$1_21=document.createElement("ul");Sys.UI.DomElement.addCssClass(this.$1_21,"C1tbList");this.$1_1F.appendChild(this.$1_21);this.$1_1E.appendChild(this.$1_1F);this.$1_1E.style.display="none";this.element.appendChild(this.$1_1E)},createInstance:function(a){return new C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton(a)},addItemElement:function(b){if(!b.element||!b.element.parentNode||b.element.parentNode!==this.element){if(b.get_visible()){if(b.get_index()<this.get_items().get_count()-1&&b.get_index()>=0){var a=this.get_items().$8(b.get_index());if(a){this.$1_21.insertBefore(b.element,a)}else{this.$1_21.appendChild(b.element)}}else{this.$1_21.appendChild(b.element)}}}},removeItemElement:function(b){var a=b.element;if(a){if(this.get_toolBar().$3_4C(this.$1_21,a)){this.$1_21.removeChild(a)}}},get_items:function(){return this.$1_20}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs=function(d,b,a,c){C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs.initializeBase(this);this.$1_0=d;this.$1_1=b;this.$1_2=a;this.$1_3=c};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs.prototype={$1_0:null,$1_1:"",$1_2:"",$1_3:null,get_item:function(){return this.$1_0},set_item:function(a){this.$1_0=a;return a},get_commandName:function(){return this.$1_1},set_commandName:function(a){this.$1_1=a;return a},get_commandArgument:function(){return this.$1_2},set_commandArgument:function(a){this.$1_2=a;return a},get_domEvent:function(){return this.$1_3},set_domEvent:function(a){this.$1_3=a;return a}};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs=function(a){C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs.initializeBase(this);this.$1_0=a};C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs.prototype={$1_0:null,$1_1:0,get_item:function(){return this.$1_0},get_status:function(){return this.$1_1},set_status:function(a){this.$1_1=a;return a}};Type.registerNamespace("C1.Web.UI.Controls");C1.Web.UI.Controls.IC1CanDockControl=function(){};C1.Web.UI.Controls.IC1CanDockControl.registerInterface("C1.Web.UI.Controls.IC1CanDockControl");C1.Web.UI.Controls.C1ToolBar.C1DockPanel.registerClass("C1.Web.UI.Controls.C1ToolBar.C1DockPanel",Sys.UI.Control,C1.Web.UI.Interfaces.IJsonSerializableSupport,C1.Web.UI.Controls.IC1CanDockControl);C1.Web.UI.Controls.C1ToolBar.C1ToolBar.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBar",C1.Web.UI.C1ThemeableControlBase,C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner,C1.Web.UI.Interfaces.IC1Dockable,C1.Web.UI.Controls.C1ToolBar.IC1ToolBarPropertyChanged);C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem",C1.Web.UI.UIElement,C1.Web.UI.Controls.C1ToolBar.IC1ToolBarPropertyChanged);C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarButton",C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem);C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarCheckButton",C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem);C1.Web.UI.Controls.C1ToolBar._Const_ClientType.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_ClientType");C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar");C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.registerClass("C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup");C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase");C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarScrollPanel.registerClass("C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarScrollPanel");C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem");C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarCheckButton.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarCheckButton");C1.Web.UI.Controls.C1ToolBar._Const_CSS.registerClass("C1.Web.UI.Controls.C1ToolBar._Const_CSS");C1.Web.UI.Controls.C1ToolBar._CSSGroup.registerClass("C1.Web.UI.Controls.C1ToolBar._CSSGroup");C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase",C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem,C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner);C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownList",C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase);C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarGroup",C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem,C1.Web.UI.Controls.C1ToolBar.IC1ToolBarItemOwner);C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollection");C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarSeparator",C1.Web.UI.Controls.C1ToolBar.C1ToolBarItem);C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarSplitButton",C1.Web.UI.Controls.C1ToolBar.C1ToolBarDropDownBase);C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemEventArgs",Sys.EventArgs);C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs.registerClass("C1.Web.UI.Controls.C1ToolBar.C1ToolBarItemCollectionChangedEventArgs",Sys.EventArgs);C1.Web.UI.Controls.C1ToolBar.C1DockPanel.$2_1=[];C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$0="C1ToolBar";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$1="C1ToolBarItem";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$2="C1ToolBarButton";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$3="C1ToolBarCheckButton";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$4="C1ToolBarDropDownList";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$5="C1ToolBarGroup";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$6="C1ToolBarSeparator";C1.Web.UI.Controls.C1ToolBar._Const_ClientType.$7="C1ToolBarSplitButton";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$0="_ts";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$1="_tf";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$2="_tn";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$3="_tcr";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$4="_to";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$5="_ti";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBar.$6="_tct";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.consT_CONTAINER_ID="_gcr";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.consT_OUNTER_ID="_go";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.consT_INNER_ID="_gi";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.consT_CONTENT_ID="_gct";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarGroup.consT_NESTEDITEMS_ID="_gn";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.$0="_da";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.$1="_dc";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.$2="_lc";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.$3="_dlc";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarDropDownBase.$4="_dic";C1.Web.UI.Controls.C1ToolBar.Const_C1ToolBarScrollPanel.consT_FLOWPANEL_ID_SUFFIX="_sf";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$0="_it";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$1="_iim";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$2="_ict";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$3="_icr";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$4="_io";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarItem.$5="_ii";C1.Web.UI.Controls.C1ToolBar._Const_C1ToolBarCheckButton.$0="_cbi";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$0="C1tbNoRoundedCorner";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1="C1tbNoRoundedCorner-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2="C1tbListItem-NoRoundedCorner-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3="C1tbListItem-NoRoundedCorner-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4="C1tbFloater";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5="C1ToolBar";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6="C1tbContainer";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$7="C1tbOuter";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$8="C1tbInner";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$9="C1tbContent";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$A="C1tbList";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$B="C1tbListItem";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$C="C1tbListItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$D="C1tbListItem-NoRoundedCorner";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$E="C1tbListItem-NoRoundedCorner-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$F="C1tbFirstItem";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$10="C1tbFirstItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$11="C1tbFirstItem-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$12="C1tbFirstItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$13="C1tbFirstItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$14="C1tbFirstItem-LastItem";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$15="C1tbFirstItem-LastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$16="C1tbFirstItem-LastItem-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$17="C1tbFirstItem-LastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$18="C1tbFirstItem-LastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$19="C1tbLastItem";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1A="C1tbLastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1B="C1tbLastItem-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1C="C1tbLastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1D="C1tbLastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1E="C1tbAlternatingItems";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$1F="C1tbAlternatingItems-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$20="C1tbAlternatingItems-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$21="C1tbAlternatingItems-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$22="C1tbLink";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$23="C1tbHeading";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$24="C1tbTextNode";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$25="C1tbImageNode";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$26="C1tbCheckButtonImage";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$27="C1tbCheckButtonContainer";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$28="C1tbHover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$29="C1tbFocus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2A="C1tbListItem-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2B="C1tbSplitButton-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2C="C1tbSplitButton-NoRoundedCorner-Focus";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2D="C1tbActive";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2E="C1tbSelected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$2F="C1tbListItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$30="C1tbListItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$31="C1tbSelected-Disabled";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$32="C1tbSplitButton-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$33="C1tbSplitButton-FirstItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$34="C1tbSplitButton-FirstItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$35="C1tbSplitButton-FirstItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$36="C1tbSplitButton-LastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$37="C1tbSplitButton-LastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$38="C1tbSplitButton-LastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$39="C1tbSplitButton-AlternatingItems-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3A="C1tbSplitButton-AlternatingItems-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3B="C1tbSplitButton-AlternatingItems-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3C="C1tbSplitButton-FirstItem-LastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3D="C1tbSplitButton-FirstItem-LastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3E="C1tbSplitButton-FirstItem-LastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$3F="C1tbSplitButton-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$40="C1tbSplitButton-NoRoundedCorner-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$41="C1tbSplitButton-NoRoundedCorner-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$42="C1tbDropDownList-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$43="C1tbDropDownList-FirstItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$44="C1tbDropDownList-FirstItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$45="C1tbDropDownList-FirstItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$46="C1tbDropDownList-LastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$47="C1tbDropDownList-LastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$48="C1tbDropDownList-LastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$49="C1tbDropDownList-AlternatingItems-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4A="C1tbDropDownList-AlternatingItems-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4B="C1tbDropDownList-AlternatingItems-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4C="C1tbDropDownList-FirstItem-LastItem-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4D="C1tbDropDownList-FirstItem-LastItem-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4E="C1tbDropDownList-FirstItem-LastItem-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$4F="C1tbDropDownList-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$50="C1tbDropDownList-NoRoundedCorner-Selected";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$51="C1tbDropDownList-NoRoundedCorner-Selected-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$52="C1tbOpened";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$53="C1tbClosed";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$54="C1tbDisabled";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$55="C1tbChecked";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$56="C1tbIndeterminate";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$57="C1tbCheckButton";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$58="C1tbDropDownList";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$59="C1tbDropDownList-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5A="C1tbDropDownList-NoRoundedCorner";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5B="C1tbDropDownList-NoRoundedCorner-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5C="C1tbGroup";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5D="C1tbTopPaddingGroup";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5E="C1tbBottomPaddingGroup";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$5F="C1tbSeparator";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$60="C1tbSplitButton";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$61="C1tbSplitButton-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$62="C1tbSplitButton-NoRoundedCorner";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$63="C1tbSplitButton-NoRoundedCorner-Hover";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$64="C1tbNestedListContainer";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$65="C1tbNestedList";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$66="C1tbDropDown-NestedList";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$67="c1-h-flow";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$68="c1-v-flow";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$69="-Horizontal";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6A="C1ToolBar-Horizontal";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6B="-Vertical";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6C="C1ToolBar-Vertical";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6D="C1tbDropDownListNoArrow";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6E="C1tbToolBarItemArrow";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$6F="C1tbDropDownContainer";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$70="C1tbImageBeforeText";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$71="C1tbTextBeforeImage";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$72="C1tbImageAboveText";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$73="C1tbTextAboveImage";C1.Web.UI.Controls.C1ToolBar._Const_CSS.$74="C1tbImageTextBlank";
/* END C1.Web.UI.Controls.C1ToolBar.Resources.C1ToolBarClient.js */
/* START C1.Web.UI.Controls.C1HeaderContentControl.Resources.C1HeaderContentControlClient.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI.Controls.C1HeaderContentControl");C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl=function(a){this.$2_1=-1;this.$2_A={};this.$2_E=-1;this.$2_F=-1;this.$2_10=-1;this.$2_11=-1;C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl.initializeBase(this,[a]);this.mainElement=a;this._propertiesState={};this.setHeaderContentClassNames()};C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl.prototype={$2_0:null,_propertiesState:null,_jsonHelper:null,_flowPanel:null,_isHover:false,_isMouseDown:false,_headerPanelClassName:null,_contentPanelClassName:null,setHeaderContentClassNames:function(){this._headerPanelClassName="C1hHeaderPanel";this._contentPanelClassName="C1hContentPanel"},headerPanelElement:null,contentPanelElement:null,mainElement:null,get_accessKey:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AccessKey))?"":this._propertiesState.AccessKey},set_accessKey:function(a){if(this.get_accessKey()!==""){C1.Web.UI.Utils.AccessKeyHelper.unRegisterAccessKey(this.get_accessKey(),this.get_element())}this._propertiesState.AccessKey=a;this.saveState();if(this.get_accessKey()!==""){C1.Web.UI.Utils.AccessKeyHelper.registerAccessKey(this.get_accessKey(),this.get_element(),this.get_$2_1F())}return a},get_enabled:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Enabled))?true:this._propertiesState.Enabled},set_enabled:function(a){this.get_element().disabled=!a;this._propertiesState.Enabled=a;this.saveState();return a},get_visualStyle:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.VisualStyle))?"":this._propertiesState.VisualStyle},set_visualStyle:function(c){var b=this.get_visualStyle();if(b!==""&&b!==c){var a=new RegExp("("+b+")","g");this._propertiesState.VisualStyle=c;var d=this.get_element().className;d=d.replace(a,c);this.restoreInitialLayout();this.get_element().className=d;this.invalidate()}return c},get_width:function(){return((!this._propertiesState.Width)?"":this._propertiesState.Width)},set_width:function(a){this._propertiesState.Width=a;this.saveState();this.invalidate();return a},get_height:function(){return((!this._propertiesState.Height)?"":this._propertiesState.Height)},set_height:function(a){this._propertiesState.Height=a;this.saveState();this.invalidate();return a},get_contentUrl:function(){return((C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ContentUrl))?"":this._propertiesState.ContentUrl)},set_contentUrl:function(a){this._propertiesState.ContentUrl=a;this.get_contentPanel().set_contentUrl(a);this.saveState();return a},get_autoPostBack:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["AutoPostBack"]))?false:this.get_propertiesState()["AutoPostBack"]},set_autoPostBack:function(a){this.get_propertiesState()["AutoPostBack"]=a;return a},get_displayVisible:function(){return((C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.DisplayVisible))?true:this._propertiesState.DisplayVisible)},set_displayVisible:function(a){this._propertiesState.DisplayVisible=a;C1.Web.UI.Utils.Common.setVisible(this.mainElement,a);this.saveState();return a},get_suppressHeaderPostbacks:function(){return(this._propertiesState.SuppressHeaderPostbacks||false)},set_suppressHeaderPostbacks:function(a){this._propertiesState.SuppressHeaderPostbacks=a;return a},get_flowPanel:function(){if(!this._flowPanel){this._flowPanel=new C1.Web.UI.FlowPanel(this.$2_1E())}return this._flowPanel},get_headerPanel:function(){if(!this.$2_2){this.$2_2=this.createHeaderPanel()}return this.$2_2},get_contentPanel:function(){if(!this.$2_3){this.$2_3=this.createContentPanel()}return this.$2_3},$2_2:null,$2_3:null,get_headerSize:function(){return((C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.HeaderSize))?"":this._propertiesState.HeaderSize)},set_headerSize:function(a){this.$2_18=null;this.$2_19=null;this._propertiesState.HeaderSize=a;this.saveState();this.invalidate();return a},$2_4:null,$2_5:null,$2_6:null,$2_7:false,setDropTargets:function(b){if(this.$2_4){this.$2_4.dispose();this.$2_4=null}this.$2_5=b;if(!b){return}if(!this.$2_6){this.$2_6=document.createElement("div");this.$2_6.className="c1-drag-visual-sample"}this.$2_4=new C1.Web.UI.DragDrop(this.mainElement);this.$2_4.initialize();this.$2_4.set_useElementAsDragVisual(true);this.$2_4.set_useModalLayer(true);this.$2_4.set_startDragOnMouseMove(true);this.$2_4.add_dragStart(Function.createDelegate(this,this.ddobj_DragStart));this.$2_4.add_dropped(Function.createDelegate(this,this.ddobj_Dropped));this.$2_4.add_dragOver(Function.createDelegate(this,this.ddobj_DragOver));for(var a=0;a<this.$2_5.length;a++){if(this.$2_5[a].id!==this.get_id()){this.$2_4.setDropTarget(this.$2_5[a])}}this.$2_4.setDragHandle(this.get_headerPanel().element)},ddobj_DragStart:function(a,b){this.$2_7=false;Sys.UI.DomElement.addCssClass(this.mainElement,"c1-dragging-active");C1.Web.UI.Utils.Common.setSize(this.$2_6,new C1.Web.UI.Utils.Size(this.mainElement.offsetWidth,this.mainElement.offsetHeight));this.$2_6.style.position="";if(this.$2_6.parentNode){this.$2_6.parentNode.removeChild(this.$2_6)}this.mainElement.parentNode.insertBefore(this.$2_6,this.mainElement)},ddobj_DragOver:function(b,c){var a=c.get_dropTarget();if(a){if(this.$2_6.parentNode){this.$2_6.parentNode.removeChild(this.$2_6)}a.parentNode.insertBefore(this.$2_6,a);this.$2_7=true}},ddobj_Dropped:function(a,b){Sys.UI.DomElement.removeCssClass(this.mainElement,"c1-dragging-active");if(this.$2_6&&this.$2_6.parentNode){if(this.$2_7){this.mainElement.parentNode.removeChild(this.mainElement);this.$2_6.parentNode.insertBefore(this.mainElement,this.$2_6)}this.$2_6.parentNode.removeChild(this.$2_6);b.set_handled(true)}else{}this.mainElement.style.position="";this.$2_7=false},dispose:function(){if(this.get_accessKey()!==""){C1.Web.UI.Utils.AccessKeyHelper.unRegisterAccessKey(this.get_accessKey(),this.get_element())}if(this.$2_8){C1.Web.UI.Utils.RawEvent.removeHandler(window,"resize",this.$2_8);this.$2_8=null}C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl.callBaseMethod(this,"dispose")},saveState:function(){this._jsonHelper.saveState()},$2_8:null,initialize:function(){C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl.callBaseMethod(this,"initialize");this._jsonHelper=new C1.Web.UI.Interfaces.JsonSerializableHelper(this.get_element().id,this);this.headerPanelElement=$get(this._propertiesState.HeaderPanelID);this.contentPanelElement=$get(this._propertiesState.ContentPanelID);Sys.UI.DomEvent.addHandler(this.headerPanelElement,"click",Function.createDelegate(this,this.onHeaderMouseClick));Sys.UI.DomEvent.addHandler(this.headerPanelElement,"mousedown",Function.createDelegate(this,this.onHeaderMouseDown));Sys.UI.DomEvent.addHandler(this.headerPanelElement,"mouseup",Function.createDelegate(this,this.onHeaderMouseUp));Sys.UI.DomEvent.addHandler(this.headerPanelElement,"mouseover",Function.createDelegate(this,this.onHeaderMouseOver));Sys.UI.DomEvent.addHandler(this.headerPanelElement,"mouseout",Function.createDelegate(this,this.onHeaderMouseOut));this.get_contentPanel().set_contentUrl(this.get_contentUrl());this.invalidate();if(this.get_accessKey()!==""){C1.Web.UI.Utils.AccessKeyHelper.registerAccessKey(this.get_accessKey(),this.get_element(),this.get_$2_1F())}},$2_9:false,restoreInitialLayout:function(){try{this.$2_18=null;this.$2_19=null;this.headerPanelElement.style.height=this.$2_A.h1;this.get_headerPanel().get_contentElement().style.height=this.$2_A.h2;this.headerPanelElement.style.width=this.$2_A.h3;this.get_headerPanel().get_contentElement().style.width=this.$2_A.h4;this.contentPanelElement.style.height=this.$2_A.c1;this.get_contentPanel().get_contentElement().style.height=this.$2_A.c2;this.contentPanelElement.style.width=this.$2_A.c3;this.get_contentPanel().get_contentElement().style.width=this.$2_A.c4}catch(a){}},$2_B:function(){if(this.$2_9){return}try{this.$2_A.h1=this.headerPanelElement.style.height;this.$2_A.h2=this.get_headerPanel().get_contentElement().style.height;this.$2_A.h3=this.headerPanelElement.style.width;this.$2_A.h4=this.get_headerPanel().get_contentElement().style.width;this.$2_A.c1=this.contentPanelElement.style.height;this.$2_A.c2=this.get_contentPanel().get_contentElement().style.height;this.$2_A.c3=this.contentPanelElement.style.width;this.$2_A.c4=this.get_contentPanel().get_contentElement().style.width}catch(a){}this.$2_9=true},invalidate:function(){this.$2_B();var i=""+this.get_width()+"";var h=""+this.get_height()+"";var g=""+this.get_headerSize()+"";if(i===""||h===""){return}var f=false;var e=(!this.determineOrientation());var d=this.determineIsExpanded();var c=this.$2_16();var b=this.$2_17();var a=this.$2_1C(i);var m=this.$2_1C(h);if(i.indexOf("%")!==-1){a=Math.round(c*a/100);f=true}if(h.indexOf("%")!==-1){m=Math.round(b*m/100);f=true}if(g===""){g=this.$2_1A(e)}var l=this.$2_1C(g);if(g.indexOf("%")!==-1){if(e){l=Math.round(l*a/100)}else{l=Math.round(l*m/100)}f=true}if(e&&!d){this.get_element().style.width=g}else{this.get_element().style.width=i}if(!e&&!d){this.get_element().style.height=g}else{this.get_element().style.height=h}if(e){C1.Web.UI.Utils.Common.setWidth(this.headerPanelElement,l);this.$2_C(this.get_headerPanel(),l);C1.Web.UI.Utils.Common.setHeight(this.contentPanelElement,m);this.$2_D(this.get_contentPanel(),m);C1.Web.UI.Utils.Common.setHeight(this.headerPanelElement,m)}else{C1.Web.UI.Utils.Common.setHeight(this.headerPanelElement,l);this.$2_D(this.get_headerPanel(),l);C1.Web.UI.Utils.Common.setWidth(this.contentPanelElement,a);this.$2_C(this.get_contentPanel(),a);C1.Web.UI.Utils.Common.setWidth(this.headerPanelElement,a)}if(e){var k=a-this.headerPanelElement.offsetWidth;if(k<0){k=0}C1.Web.UI.Utils.Common.setWidth(this.contentPanelElement,k);this.$2_C(this.get_contentPanel(),k)}else{var j=m-this.headerPanelElement.offsetHeight;if(j<0){j=0}C1.Web.UI.Utils.Common.setHeight(this.contentPanelElement,j)}if(f){if(!this.$2_8){this.$2_8=Function.createDelegate(this,this.onWindowResize);C1.Web.UI.Utils.RawEvent.addHandler(window,"resize",this.$2_8)}}else{if(this.$2_8){C1.Web.UI.Utils.RawEvent.removeHandler(window,"resize",this.$2_8);this.$2_8=null}}},$2_C:function(i,h){var g=i.element;var f=i.get_outerElement();var e=i.get_innerElement();var d=i.get_contentElement();var c=C1.Web.UI.Utils.Common.getBorderBox(g);var b=C1.Web.UI.Utils.Common.getPaddingBox(g);var a=c.horizontal+b.horizontal;h=h-a;if(h<0){h=0}C1.Web.UI.Utils.Common.setWidth(d,h)},$2_D:function(i,h){var g=i.element;var f=i.get_outerElement();var e=i.get_innerElement();var d=i.get_contentElement();var c=C1.Web.UI.Utils.Common.getBorderBox(g);var b=C1.Web.UI.Utils.Common.getPaddingBox(g);var a=c.vertical+b.vertical;h=h-a;if(h<0){h=0}C1.Web.UI.Utils.Common.setHeight(d,h)},$2_12:null,$2_13:null,$2_14:null,$2_15:null,$2_16:function(){var b=this.get_element().parentNode;if(b.tagName==="FORM"){b=b.parentNode}var a=C1.Web.UI.Utils.Common.getContentWidth(b);if(b.tagName==="BODY"||b.tagName==="HTML"){a=C1.Web.UI.Utils.Measurement.getWindowClientAreaSize().width}if(this.determineIsExpanded()){if(this.$2_E<0||(this.$2_12!==b.style.width)){this.$2_E=a;this.$2_12=b.style.width}return this.$2_E}else{if(this.$2_F<0||(this.$2_13!==b.style.width)){this.$2_F=a;this.$2_13=b.style.width}return this.$2_F}},$2_17:function(){var b=this.get_element().parentNode;if(b.tagName==="FORM"){b=b.parentNode}var a=C1.Web.UI.Utils.Common.getContentHeight(b);if(b.tagName==="BODY"||b.tagName==="HTML"){a=C1.Web.UI.Utils.Measurement.getWindowClientAreaSize().height}if(this.determineIsExpanded()){if(this.$2_10<0||(this.$2_14!==b.style.height)){this.$2_10=a;this.$2_14=b.style.height}return this.$2_10}else{if(this.$2_11<0||(this.$2_15!==b.style.height)){this.$2_11=a;this.$2_15=b.style.height}return this.$2_11}},notifyParentBoundsChanged:function(a){this.$2_E=-1;this.$2_F=-1;this.$2_10=-1;this.$2_11=-1;if(C1.Web.UI.Utils.Common.testIsNull(a)||a){this.invalidate()}},$2_18:null,$2_19:null,$2_1A:function(b){var a=this.get_headerSize();if(a===""){if(b){if(C1.Web.UI.Utils.Common.testIsNull(this.$2_18)){this.$2_18=""+C1.Web.UI.Utils.Common.getOuterWidth(this.headerPanelElement)+"px"}a=this.$2_18}else{if(C1.Web.UI.Utils.Common.testIsNull(this.$2_19)){this.$2_19=""+C1.Web.UI.Utils.Common.getOuterHeight(this.headerPanelElement)+"px"}a=this.$2_19}}return a},$2_1B:function(a){return(a&&a!==""&&(a.indexOf("%")===-1))},$2_1C:function(a){return parseInt(a.replace("px","").replace("%",""))},isDOMVisible:function(){return C1.Web.UI.Utils.Common.isVisible(this.get_element())},get_propertiesState:function(){return this._propertiesState},assignPropertiesState:function(a){this._propertiesState=a},createInstance:function(a){return new C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl(a)},onAccessKeyDown:function(a){return false},onHeaderMouseClick:function(a){if(this.get_suppressHeaderPostbacks()){a.preventDefault()}},onHeaderMouseDown:function(a){if(!this.get_enabled()){return}this._isMouseDown=true;Sys.UI.DomElement.addCssClass(this.headerPanelElement,"C1Active");this.updateCompoundCssClasses();if(this.$2_5){a.preventDefault()}},onHeaderMouseUp:function(a){if(!this.get_enabled()){return}this._isMouseDown=false;Sys.UI.DomElement.removeCssClass(this.headerPanelElement,"C1Active");this.updateCompoundCssClasses()},onHeaderMouseOver:function(a){if(!this.get_enabled()){return}this._isHover=true;Sys.UI.DomElement.addCssClass(this.headerPanelElement,"C1Hover");this.updateCompoundCssClasses()},onHeaderMouseOut:function(a){if(!this.get_enabled()){return}this._isHover=false;this._isMouseDown=false;Sys.UI.DomElement.removeCssClass(this.headerPanelElement,"C1Active");Sys.UI.DomElement.removeCssClass(this.headerPanelElement,"C1Hover");this.updateCompoundCssClasses()},_prevWindowSize:null,onWindowResize:function(b){var a=C1.Web.UI.Utils.Measurement.getWindowClientAreaSize();if(C1.Web.UI.Utils.Common.testIsNull(this._prevWindowSize)){this._prevWindowSize=a;this.notifyParentBoundsChanged(false)}else{if(this._prevWindowSize.width!==a.width||this._prevWindowSize.height!==a.height){this.notifyParentBoundsChanged(false)}}this._prevWindowSize=a;if(this.$2_1!==-1){window.clearTimeout(this.$2_1);this.$2_1=-1}this.$2_1=window.setTimeout(Function.createDelegate(this,this.$2_1D),1);return true},$2_1D:function(){this.$2_1=-1;this.invalidate()},updateCompoundCssClasses:function(){var b=this.getVisualStyleCssClassName();if(b===""){b=this.getControlClassName()}var a=b;if(this.get_element().disabled){a+="-C1Disabled"}a+=("-"+this.determineExpandDirectionCssClass());var e=""+this.get_element().className+"";var d=new RegExp("\\s*"+b+"-*\\S*(-C1Top|-C1Right|-C1Bottom|-C1Left)");this.get_element().className=e.replace(d,"");Sys.UI.DomElement.addCssClass(this.get_element(),a);var c="";if(this.determineIsExpanded()){c+="C1Opened-"}else{c+="C1Closed-"}if(this._isMouseDown){c+="C1Active-"}if(this._isHover){c+="C1Hover-"}a=c+this._headerPanelClassName;e=""+this.headerPanelElement.className+"";d=new RegExp("\\s*(C1Opened-|C1Closed-)\\S*("+this._headerPanelClassName+"|"+this._contentPanelClassName+")");this.headerPanelElement.className=e.replace(d,"");Sys.UI.DomElement.addCssClass(this.headerPanelElement,a);a=c+this._contentPanelClassName;e=""+this.contentPanelElement.className+"";d=new RegExp("\\s*(C1Opened-|C1Closed-)\\S*("+this._headerPanelClassName+"|"+this._contentPanelClassName+")");this.contentPanelElement.className=e.replace(d,"");Sys.UI.DomElement.addCssClass(this.contentPanelElement,a)},determineOrientation:function(){return 1},determineExpandDirectionCssClass:function(){return"C1Bottom"},determineIsExpanded:function(){return true},getControlClassName:function(){return"C1HeaderContentControl"},getVisualStyleCssClassName:function(){var a=this._propertiesState.VisualStyle;if(!a||a===""){a=this.getControlClassName()+"_Default"}else{a=this.getControlClassName()+"_"+a}return a},createContentPanel:function(){var a=new C1.Web.UI.ContentPanel(this.contentPanelElement);a.setInnerElementsClassNames("C1hOuter","C1hInner","C1hContent");return a},createHeaderPanel:function(){var a=new C1.Web.UI.ContentPanel(this.headerPanelElement);a.setInnerElementsClassNames("C1hOuter","C1hInner","C1hContent");return a},$2_1E:function(){return this.get_element()},get_$2_1F:function(){if(!this.$2_0){this.$2_0=Function.createDelegate(this,this.onAccessKeyDown)}return this.$2_0}};C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl.registerClass("C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl",Sys.UI.Control,C1.Web.UI.Interfaces.IJsonSerializableSupport);
/* END C1.Web.UI.Controls.C1HeaderContentControl.Resources.C1HeaderContentControlClient.js */
/* START C1.Web.UI.Controls.C1Expander.Resources.C1ExpanderClient.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI.Controls.C1Expander");C1.Web.UI.Controls.C1Expander.C1ExpandDirection=function(){};C1.Web.UI.Controls.C1Expander.C1ExpandDirection.prototype={top:0,right:1,bottom:2,left:3};C1.Web.UI.Controls.C1Expander.C1ExpandDirection.registerEnum("C1.Web.UI.Controls.C1Expander.C1ExpandDirection",false);C1.Web.UI.Controls.C1Expander.C1Expander=function(a){C1.Web.UI.Controls.C1Expander.C1Expander.initializeBase(this,[a])};C1.Web.UI.Controls.C1Expander.C1Expander.prototype={setHeaderContentClassNames:function(){this._headerPanelClassName="C1eHeaderPanel";this._contentPanelClassName="C1eContentPanel"},get_expandDirection:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandDirection))?2:this._propertiesState.ExpandDirection},set_expandDirection:function(c){var b=this.get_expandDirection();if(b!==c){var a=this.contentPanelElement.parentNode;switch(c){case 0:this.get_flowPanel().set_orientation(1);if(b===2||(b===1)){a.removeChild(this.contentPanelElement);a.insertBefore(this.contentPanelElement,this.headerPanelElement)}break;case 1:this.get_flowPanel().set_orientation(0);if(!b||(b===3)){a.removeChild(this.headerPanelElement);a.insertBefore(this.headerPanelElement,this.contentPanelElement)}break;case 2:this.get_flowPanel().set_orientation(1);if(!b||(b===3)){a.removeChild(this.headerPanelElement);a.insertBefore(this.headerPanelElement,this.contentPanelElement)}break;case 3:this.get_flowPanel().set_orientation(0);if(b===2||(b===1)){a.removeChild(this.contentPanelElement);a.insertBefore(this.contentPanelElement,this.headerPanelElement)}break}Sys.UI.DomElement.removeCssClass(this.get_element(),this.$3_4(b));Sys.UI.DomElement.addCssClass(this.get_element(),this.$3_4(c));this._propertiesState.ExpandDirection=c;this.updateCompoundCssClasses();this.restoreInitialLayout();this.saveState();this.invalidate()}return c},get_expanded:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Expanded)){return false}return this._propertiesState.Expanded},set_expanded:function(a){if(!this.get_enabled()){return}if(a){if(!this.$3_0()){return}}else{if(!this.$3_1()){return}}this._propertiesState.Expanded=a;this.saveState();if(!a){this.onCollapse()}else{this.onExpand()}return a},$3_0:function(){var b=this.get_events().getHandler("BeforeExpand");if(b){var a=new Sys.CancelEventArgs();b(this,a);if(a.get_cancel()){return false}}return true},$3_1:function(){var b=this.get_events().getHandler("BeforeCollapse");if(b){var a=new Sys.CancelEventArgs();b(this,a);if(a.get_cancel()){return false}}return true},get_expandAnimation:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandAnimation)){return 0}else{return this._propertiesState.ExpandAnimation}},set_expandAnimation:function(a){this._propertiesState.ExpandAnimation=a;return a},get_collapseAnimation:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.CollapseAnimation)){return 0}else{return this._propertiesState.CollapseAnimation}},set_collapseAnimation:function(a){this._propertiesState.CollapseAnimation=a;return a},get_expandDuration:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandDuration)){return 500}else{return this._propertiesState.ExpandDuration}},set_expandDuration:function(a){if(a<1){return}this._propertiesState.ExpandDuration=a;return a},get_collapseDuration:function(){if(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.CollapseDuration)){return 500}else{return this._propertiesState.CollapseDuration}},set_collapseDuration:function(a){if(a<1){return}this._propertiesState.CollapseDuration=a;return a},get_expandEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandEasing))?31:this._propertiesState.ExpandEasing},set_expandEasing:function(a){this._propertiesState.ExpandEasing=a;return a},get_collapseEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.CollapseEasing))?31:this._propertiesState.CollapseEasing},set_collapseEasing:function(a){this._propertiesState.CollapseEasing=a;return a},add_beforeExpand:function(a){this.get_events().addHandler("BeforeExpand",a)},remove_beforeExpand:function(a){this.get_events().removeHandler("BeforeExpand",a)},add_beforeCollapse:function(a){this.get_events().addHandler("BeforeCollapse",a)},remove_beforeCollapse:function(a){this.get_events().removeHandler("BeforeCollapse",a)},add_afterExpand:function(a){this.get_events().addHandler("AfterExpand",a)},remove_afterExpand:function(a){this.get_events().removeHandler("AfterExpand",a)},add_afterCollapse:function(a){this.get_events().addHandler("AfterCollapse",a)},remove_afterCollapse:function(a){this.get_events().removeHandler("AfterCollapse",a)},onCollapse:function(){var a=C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_collapseAnimation(),this.contentPanelElement,this.get_collapseDuration(),this.get_collapseEasing(),null,Function.createDelegate(this,this.$3_2),false,false,true,false);if(a){}else{this.raiseAfterCollapse()}if(this.get_autoPostBack()){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AutoPostBackEventReference)){C1.Web.UI.Utils.Common.executePostbackReference(this._propertiesState.AutoPostBackEventReference)}else{window.__doPostBack(this.get_id())}}},onExpand:function(){if(this.get_autoPostBack()){if(!C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.AutoPostBackEventReference)){C1.Web.UI.Utils.Common.executePostbackReference(this._propertiesState.AutoPostBackEventReference)}else{window.__doPostBack(this.get_id())}}var a=C1.Web.UI.Behavior.AnimationEffects.playAnimationEffect(this.get_expandAnimation(),this.contentPanelElement,this.get_expandDuration(),this.get_expandEasing(),null,Function.createDelegate(this,this.$3_3),false,false,true,true);if(a){}else{this.raiseAfterExpand()}},raiseAfterExpand:function(){Sys.UI.DomElement.removeCssClass(this.get_element(),"C1Closed");Sys.UI.DomElement.addCssClass(this.get_element(),"C1Opened");this.invalidate();this.updateCompoundCssClasses();this.contentPanelElement.style.display="";C1.Web.UI.Utils.Common.notifyVisibleState(this.contentPanelElement);var b=this.get_events().getHandler("AfterExpand");if(b){var a=new Sys.EventArgs();b(this,a)}},raiseAfterCollapse:function(){Sys.UI.DomElement.removeCssClass(this.get_element(),"C1Opened");Sys.UI.DomElement.addCssClass(this.get_element(),"C1Closed");this.invalidate();this.updateCompoundCssClasses();this.contentPanelElement.style.display="none";var b=this.get_events().getHandler("AfterCollapse");if(b){var a=new Sys.EventArgs();b(this,a)}},$3_2:function(b,a){this.raiseAfterCollapse()},$3_3:function(b,a){this.raiseAfterExpand()},onAccessKeyDown:function(a){this.set_expanded(true);return C1.Web.UI.Utils.RawEvent.cancelBrowserResponse(a)},onHeaderMouseClick:function(a){this.set_expanded(!this.get_expanded());C1.Web.UI.Controls.C1Expander.C1Expander.callBaseMethod(this,"onHeaderMouseClick",[a])},onHeaderMouseDown:function(a){C1.Web.UI.Controls.C1Expander.C1Expander.callBaseMethod(this,"onHeaderMouseDown",[a])},onHeaderMouseUp:function(a){C1.Web.UI.Controls.C1Expander.C1Expander.callBaseMethod(this,"onHeaderMouseUp",[a])},onHeaderMouseOver:function(a){C1.Web.UI.Controls.C1Expander.C1Expander.callBaseMethod(this,"onHeaderMouseOver",[a])},onHeaderMouseOut:function(a){C1.Web.UI.Controls.C1Expander.C1Expander.callBaseMethod(this,"onHeaderMouseOut",[a])},determineOrientation:function(){if(this.get_expandDirection()===2||!this.get_expandDirection()){return 1}else{return 0}},determineIsExpanded:function(){return this.get_expanded()},getControlClassName:function(){return"C1Expander"},determineExpandDirectionCssClass:function(){return this.$3_4(this.get_expandDirection())},$3_4:function(a){switch(a){case 0:return"C1Top";case 1:return"C1Right";case 2:return"C1Bottom";case 3:return"C1Left"}return"C1Bottom"},createContentPanel:function(){var a=new C1.Web.UI.ContentPanel(this.contentPanelElement);a.setInnerElementsClassNames("C1eOuter","C1eInner","C1eContent");return a},createHeaderPanel:function(){var a=new C1.Web.UI.ContentPanel(this.headerPanelElement);a.setInnerElementsClassNames("C1eOuter","C1eInner","C1eContent");return a}};C1.Web.UI.Controls.C1Expander.C1Expander.registerClass("C1.Web.UI.Controls.C1Expander.C1Expander",C1.Web.UI.Controls.C1HeaderContentControl.C1HeaderContentControl);
/* END C1.Web.UI.Controls.C1Expander.Resources.C1ExpanderClient.js */
/* START C1.Web.UI.Controls.C1Accordion.Resources.C1AccordionClient.js */
// Copyright (c) ComponentOne L.L.C., All rights reserved.
Type.registerNamespace("C1.Web.UI.Controls.C1Accordion");C1.Web.UI.Controls.C1Accordion.C1AccordionAutoSize=function(){};C1.Web.UI.Controls.C1Accordion.C1AccordionAutoSize.prototype={none:0,fill:1};C1.Web.UI.Controls.C1Accordion.C1AccordionAutoSize.registerEnum("C1.Web.UI.Controls.C1Accordion.C1AccordionAutoSize",false);C1.Web.UI.Controls.C1Accordion.C1Accordion=function(a){this.viewState={};C1.Web.UI.Controls.C1Accordion.C1Accordion.initializeBase(this,[a])};C1.Web.UI.Controls.C1Accordion.C1Accordion.prototype={$2_0:null,$2_1:null,$2_2:false,$2_3:false,$2_4:null,$2_5:null,$2_6:null,$2_7:null,$2_8:null,$2_9:null,$2_A:null,$2_B:null,$2_C:null,$2_D:0,$2_E:null,$2_F:null,$2_10:"",$2_11:"",$2_12:"",get_outlookUIMenu:function(){if(!this.$2_8){var b=this.get_outlookUIMenuID();var a=window.Sys;var c=a.Application;this.$2_8=c.findComponent(b);if(this.$2_8){this.$2_8.add_itemClick(Function.createDelegate(this,this._outlookMenu_ItemClick))}}return this.$2_8},get_visualStyle:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.VisualStyle))?"":this.viewState.VisualStyle},set_visualStyle:function(c){var b=this.get_visualStyle();if(b!==""&&b!==c){var a=new RegExp("("+b+")","g");this.viewState.VisualStyle=c;var d=this.get_element().className;d=d.replace(a,c);this.get_element().className=d;this.invalidate()}return c},get_flowRight:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.FlowRight))?false:this.viewState.FlowRight},set_flowRight:function(a){this.viewState.FlowRight=a;this.saveState();return a},get_outlookUIMenuID:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.OutlookUIMenuID))?"":this.viewState.OutlookUIMenuID},get_accordionElement:function(){return this.get_element()},get_autoPostBack:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.get_propertiesState()["AutoPostBack"]))?false:this.get_propertiesState()["AutoPostBack"]},get_expandDirection:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.ExpandDirection))?2:this.viewState.ExpandDirection},set_expandDirection:function(c){if(this.viewState.ExpandDirection!==c){this.viewState.ExpandDirection=c;this.saveState();var b=this.get_panes();for(var a=0;a<b.get_count();a++){b.get_item(a).set_expandDirection(c)}if(c===3||c===1){C1.Web.UI.FlowPanel.setFlowPanelOrientation(this.get_element(),0,this.get_flowRight())}else{C1.Web.UI.FlowPanel.setFlowPanelOrientation(this.get_element(),1,this.get_flowRight())}this.invalidate();this.updateCompoundCssClasses()}return c},get_panes:function(){if(!this.$2_1){this.internalInitialize()}return this.$2_1},get_requireOpenedPane:function(){return((C1.Web.UI.Utils.Common.testIsNull(this.viewState.RequireOpenedPane))?true:this.viewState.RequireOpenedPane)},set_requireOpenedPane:function(a){this.viewState.RequireOpenedPane=a;this.saveState();return a},get_selectedIndex:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.SelectedIndex))?0:this.viewState.SelectedIndex},set_selectedIndex:function(b){if(!this.internalInitialize()||!this.get_enabled()){return}if(this.viewState.SelectedIndex!==b){var a=this.get_selectedIndex();this.viewState.SelectedIndex=b;this.saveState();if(this.get_autoPostBack()&&this.get_enabled()){window.__doPostBack(this.get_id(),this.get_selectedIndex())}this.$2_13(a,b)}return b},$2_13:function(d,c){var b=(d>=0)?this.get_panes().get_item(d):null;var a=(c>=0)?this.get_panes().get_item(c):null;if(!this.get_outlookUI()){if(b){b.set_expanded(false);b.$4_0=true}if(a){a.$4_1=true}this.invalidate()}else{this.$2_1B(d,c,b,a)}},get_selectedPanel:function(){var a=this.get_panes().get_item(this.get_selectedIndex());return a},get_suppressHeaderPostbacks:function(){return((C1.Web.UI.Utils.Common.testIsNull(this.viewState.SuppressHeaderPostbacks))?false:this.viewState.SuppressHeaderPostbacks)},set_suppressHeaderPostbacks:function(c){this.viewState.SuppressHeaderPostbacks=c;this.saveState();var b=this.get_panes();for(var a=0;a<b.get_count();a++){b.get_item(a).set_suppressHeaderPostbacks(c)}return c},get_width:function(){return((!this.viewState.Width)?"":this.viewState.Width)},set_width:function(a){this.viewState.Width=a;this.saveState();this.$2_F=null;this.invalidate();return a},get_height:function(){return((!this.viewState.Height)?"":this.viewState.Height)},set_height:function(a){this.viewState.Height=a;this.saveState();this.$2_F=null;this.invalidate();return a},get_autoSize:function(){return((C1.Web.UI.Utils.Common.testIsNull(this.viewState.AutoSize))?0:this.viewState.AutoSize)},set_autoSize:function(a){this.viewState.AutoSize=a;return a},get_animationDuration:function(){if(C1.Web.UI.Utils.Common.testIsNull(this.viewState.AnimationDuration)){return 500}else{return this.viewState.AnimationDuration}},set_animationDuration:function(a){if(a<0){a=0}this.viewState.AnimationDuration=a;return a},get_animationEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.AnimationEasing))?21:this.viewState.AnimationEasing},set_animationEasing:function(a){this.viewState.AnimationEasing=a;return a},get_expandEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.ExpandEasing))?31:this.viewState.ExpandEasing},set_expandEasing:function(a){this.viewState.ExpandEasing=a;return a},get_collapseEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.CollapseEasing))?31:this.viewState.CollapseEasing},set_collapseEasing:function(a){this.viewState.CollapseEasing=a;return a},get_enabled:function(){return(C1.Web.UI.Utils.Common.testIsNull(this.viewState.Enabled))?false:this.viewState.Enabled},set_enabled:function(a){this.viewState.Enabled=a;return a},get_accessKey:function(){return this.get_propertiesState()["AccessKey"]},set_accessKey:function(a){this.get_propertiesState()["AccessKey"]=a;return a},getControlLayoutBounds:function(){if(!this.$2_F){this.$2_F=C1.Web.UI.Utils.Measurement.getStyleBounds(this.get_element())}return this.$2_F},initialize:function(){C1.Web.UI.Controls.C1Accordion.C1Accordion.callBaseMethod(this,"initialize");this.$2_0=new C1.Web.UI.Interfaces.JsonSerializableHelper(this.get_element().id,this);this.invalidate();if(!this.$2_2){window.setTimeout(Function.createDelegate(this,this.$2_14),200)}},$2_14:function(){this.invalidate();if(!this.$2_2){this.$2_7=Function.createDelegate(this,this.$2_15);C1.Web.UI.Utils.RawEvent.addHandler(this.get_element(),"mouseover",this.$2_7)}},$2_15:function(a){if(this.internalInitialize()){if(this.$2_7){C1.Web.UI.Utils.RawEvent.removeHandler(this.get_element(),"mouseover",this.$2_7)}this.invalidate()}return true},$2_16:null,$2_17:null,$2_18:null,get_navPanelContentContainer:function(){if(!this.$2_16){this.$2_16=C1.Web.UI.Utils.Common.getElementByCssClass(this.get_element(),"C1NavPanelContentContainer")}return this.$2_16},get_navPanelScrollContainer:function(){if(!this.$2_18){this.$2_18=C1.Web.UI.Utils.Common.getElementByCssClass(this.get_navPanelContentContainer(),"C1NavPanelScrollContainer")}return this.$2_18},get_navPanelScrollableContent:function(){if(!this.$2_17){this.$2_17=C1.Web.UI.Utils.Common.getElementByCssClass(this.get_navPanelScrollContainer(),"C1NavPanelScrollableContent")}return this.$2_17},$2_19:0,$2_1A:0,_navPanel_prevPane:null,_navPanel_newPane:null,$2_1B:function(f,e,d,c){if(!this.internalInitialize()||!this.get_enabled()){return}this.invalidate();this._navPanel_prevPane=d;this._navPanel_newPane=c;this.$2_1C(this._navPanel_prevPane,this._navPanel_newPane);if(this._navPanel_prevPane){this._navPanel_prevPane.contentPanelElement.style.clear="both"}this._navPanel_newPane.contentPanelElement.style.clear="both";var b=0;if(f<e){this.get_navPanelScrollableContent().style.top="0px";b=-this.$2_19}else{this.get_navPanelScrollableContent().style.top="-"+this.$2_19+"px";b=0}if(this._navPanel_prevPane){this._navPanel_prevPane.contentPanelElement.style.display="block"}this._navPanel_newPane.contentPanelElement.style.display="block";if(this._navPanel_prevPane){this._navPanel_prevPane.set_expanded(false)}this._navPanel_newPane.set_expanded(true);var a=this.get_animationDuration();if(a>30){var g='[{ "duration":'+a+', "top":{"to":'+b+"}}]";this.navPanelAnimation=new C1.Web.UI.Behavior.Animation(this.get_navPanelScrollableContent(),C1.Web.UI.Utils.JSON.fromJSONString(g));this.navPanelAnimation.set_easing(this.get_animationEasing());this.navPanelAnimation.add_stopped(Function.createDelegate(this,this.navPanelAnimation_Stopped));this.navPanelAnimation.start(1)}else{this.finishNavPanelPaneExpand()}},$2_1C:function(b,a){this.get_navPanelContentContainer().style.overflow="hidden";this.get_navPanelContentContainer().style.width=this.$2_1A+"px";this.get_navPanelContentContainer().style.height=this.$2_19+"px";this.get_navPanelScrollContainer().style.overflow="scroll";this.get_navPanelScrollContainer().style.width=(this.$2_1A+17)+"px";this.get_navPanelScrollContainer().style.height=(this.$2_19+17)+"px";this.get_navPanelScrollContainer().scrollTop=0;this.get_navPanelScrollContainer().scrollLeft=0;this.get_navPanelScrollableContent().style.width=this.$2_1A+"px";if(b){b.contentPanelElement.style.height=this.$2_19+"px";b.contentPanelElement.style.width=this.$2_1A+"px";this.$2_20(b.get_contentPanel(),this.$2_19)}if(a){a.contentPanelElement.style.height=this.$2_19+"px";a.contentPanelElement.style.width=this.$2_1A+"px";this.$2_20(a.get_contentPanel(),this.$2_19)}},navPanelAnimation:null,finishNavPanelPaneExpand:function(){this._navPanel_prevPane.contentPanelElement.style.display="none";this.get_navPanelScrollableContent().style.top="0";this._navPanel_prevPane.raiseAfterCollapse();this._navPanel_newPane.raiseAfterExpand()},navPanelAnimation_Stopped:function(a,b){this.navPanelAnimation=null;this.finishNavPanelPaneExpand()},invalidate:function(){if(!this.internalInitialize()){return}var i=this.getControlLayoutBounds();var h=C1.Web.UI.Utils.Common.getContentBounds(this.get_element(),false);var g=(!this.determineOrientation());var f=this.get_width()!=="";var e=this.get_height()!=="";var d=this.get_autoSize()===1;this.$2_9=null;this.$2_A=null;var c=this.get_panes();var b=this.get_selectedPanel();var a=this.$2_1D(h,c,b,this.get_outlookUI());var n=this.get_outlookUI();if(n){this.$2_19=h.height-a-this.$2_38();this.$2_1A=h.width;this.$2_1C(b,null);this.$2_2E()}if(!n){if(d&&b){if(g){var m=(h.width-a);if(m<=0){m=1}C1.Web.UI.Utils.Common.setWidth(b.contentPanelElement,m);this.$2_20(b.get_contentPanel(),h.height)}else{var l=(h.height-a-this.$2_38());if(l<=0){l=1}this.$2_20(b.get_contentPanel(),l);C1.Web.UI.Utils.Common.setHeight(b.contentPanelElement,l)}}if(b){if(b.$4_1){this._pendingExpandPane=b;this.$2_A=this.$2_23(b);if(!this.$2_A){b.raiseAfterExpand()}b.$4_1=false}}if(this.$2_A){var k=C1.Web.UI.Utils.Common.getBorderBox(this.$2_A.get_originalElement());var j=C1.Web.UI.Utils.Common.getPaddingBox(this.$2_A.get_originalElement());if(g){this.$2_D=k.horizontal+j.horizontal;this.$2_E="width"}else{this.$2_D=k.vertical-j.vertical;this.$2_E="height"}}if(this.$2_9){if(!this.$2_C){this.$2_C=Function.createDelegate(this,this.$2_21)}if(!this.$2_B){this.$2_B=Function.createDelegate(this,this.$2_22)}C1.Web.UI.Utils.Common.showModalLayer(this.get_element(),false);this.$2_A.setValueSyncHandler(this.$2_B);this.$2_9.setValueSyncHandler(this.$2_C);this.$2_9.set_useOverflowHiddenForChilds(true);this.$2_A.set_useOverflowHiddenForChilds(true);this.$2_9.queue();this.$2_A.beforeDetermineBoundsHandler=Function.createDelegate(this,this.$2_1E);this.$2_A.afterDetermineBoundsHandler=Function.createDelegate(this,this.$2_1F);this.$2_A.start(1)}}},$2_1D:function(o,n,m,l){var i=(!this.determineOrientation());var h=this.get_width()!==""||l;var g=this.get_height()!==""||l;var f=0;for(var e=0;e<n.get_count();e++){var d=n.get_item(e);if(d.$4_0){this._pendingCollapsePane=d;this.$2_9=this.$2_24(d);if(!this.$2_9){d.raiseAfterCollapse()}d.$4_0=false}if(i){if(g){C1.Web.UI.Utils.Common.setHeight(d.mainElement,o.height);var a=C1.Web.UI.Utils.Common.getContentBounds(d.mainElement,false);C1.Web.UI.Utils.Common.setHeight(d.contentPanelElement,a.height);C1.Web.UI.Utils.Common.setHeight(d.headerPanelElement,a.height)}f+=d.headerPanelElement.offsetWidth*1;var c=C1.Web.UI.Utils.Common.getBorderBox(d.mainElement);var b=C1.Web.UI.Utils.Common.getPaddingBox(d.mainElement);f+=(c.horizontal+b.horizontal)}else{if(h){C1.Web.UI.Utils.Common.setWidth(d.mainElement,o.width);var j=C1.Web.UI.Utils.Common.getContentBounds(d.mainElement,false);C1.Web.UI.Utils.Common.setWidth(d.contentPanelElement,j.width);C1.Web.UI.Utils.Common.setWidth(d.headerPanelElement,j.width)}f+=d.headerPanelElement.offsetHeight*1;var p=C1.Web.UI.Utils.Common.getBorderBox(d.mainElement);var k=C1.Web.UI.Utils.Common.getPaddingBox(d.mainElement);f+=(p.vertical-k.vertical)}}return f},$2_1E:function(){this.$2_9.get_animatedElement().style.display="none"},$2_1F:function(){this.$2_9.get_animatedElement().style.display=""},$2_20:function(i,h){var g=i.element;var f=i.get_outerElement();var e=i.get_innerElement();var d=i.get_contentElement();var c=C1.Web.UI.Utils.Common.getBorderBox(g);var b=C1.Web.UI.Utils.Common.getPaddingBox(g);var a=c.vertical+b.vertical;h=h-a;if(h<0){h=0}C1.Web.UI.Utils.Common.setHeight(d,h)},_elementHiddenDuringAnimationCollapse:false,_elementHiddenDuringAnimationExpand:false,$2_21:function(e,d,c,b,a){if(this.$2_E===d){a=a-this.$2_D;if(a<0){a=0}if(!a){if(C1.Web.UI.Utils.Common.isVisible(e.get_animatedElement())){C1.Web.UI.Utils.Common.setVisible(e.get_animatedElement(),false);this._elementHiddenDuringAnimationCollapse=true}}else{if(this._elementHiddenDuringAnimationCollapse){C1.Web.UI.Utils.Common.setVisible(e.get_animatedElement(),true);this._elementHiddenDuringAnimationCollapse=false}}}return a},$2_22:function(e,d,c,b,a){if(this.$2_E===d){a=a-this.$2_D;if(a<0){a=0}if(!a){if(C1.Web.UI.Utils.Common.isVisible(e.get_animatedElement())){C1.Web.UI.Utils.Common.setVisible(e.get_animatedElement(),false);this._elementHiddenDuringAnimationExpand=true}}else{if(this._elementHiddenDuringAnimationExpand){C1.Web.UI.Utils.Common.setVisible(e.get_animatedElement(),true);this._elementHiddenDuringAnimationExpand=false}}}return a},$2_23:function(b){var a=C1.Web.UI.Behavior.AnimationEffects.createAnimationByType(b.get_expandAnimation(),b.contentPanelElement,b.get_expandDuration(),b.get_expandEasing(),null,Function.createDelegate(this,this.$2_26),false,false,true,true);return a},$2_24:function(b){var a=C1.Web.UI.Behavior.AnimationEffects.createAnimationByType(b.get_collapseAnimation(),b.contentPanelElement,b.get_collapseDuration(),b.get_collapseEasing(),null,Function.createDelegate(this,this.$2_25),false,false,true,false);return a},$2_25:function(b,a){this._pendingCollapsePane.raiseAfterCollapse();this.$2_2E();C1.Web.UI.Utils.Common.hideModalLayer()},$2_26:function(b,a){this._pendingExpandPane.raiseAfterExpand();C1.Web.UI.Utils.Common.hideModalLayer()},_pendingCollapsePane:null,_pendingExpandPane:null,saveState:function(){this.$2_0.saveState()},findPaneById:function(b){var c=this.get_panes();for(var a=0;a<c.get_count();a++){if(c.get_item(a).get_id()===b){return c.get_item(a)}}return null},get_scrollBehavior:function(){if(!this.$2_27){this.$2_27=new C1.Web.UI.DOMScrollBehavior(this.get_element());var a=this.viewState.ScrollSettings;if(!C1.Web.UI.Utils.Common.testIsNull(a)){this.$2_29(a);this.$2_27.assignPropertiesUsingHash(a)}this.$2_27.initialize()}return this.$2_27},$2_27:null,$2_28:function(){var a=this.get_scrollBehavior();a=null},dispose:function(){if(this.$2_2){try{var b=this.get_panes();for(var a=0;a<b.get_count();a++){b.get_item(a).dispose()}this.$2_1=null;if(this.$2_8){this.$2_8.dispose()}this.$2_8=null}catch(c){}this.$2_2=false}C1.Web.UI.Controls.C1Accordion.C1Accordion.callBaseMethod(this,"dispose")},determineOrientation:function(){if(this.get_expandDirection()===2||!this.get_expandDirection()){return 1}else{return 0}},get_propertiesState:function(){return this.viewState},assignPropertiesState:function(a){this.viewState=a},createInstance:function(a){return{}},createDOMAccordionPane:function(){this.setVariablesForDOMCreation();var b=this.createDOMAccordionPaneElement();var a=this.createDOMJSONServerState();this.get_element().appendChild(b);this.get_element().appendChild(a);return b},setVariablesForDOMCreation:function(){if((this.get_expandDirection()===2)||(!this.get_expandDirection())){this.$2_10="c1-v-child";this.$2_11="c1-v-flow"}else{this.$2_10="c1-h-child";this.$2_11="c1-h-flow"}switch(this.get_expandDirection()){case 0:this.$2_12="C1Top";break;case 1:this.$2_12="C1Right";break;case 2:this.$2_12="C1Bottom";break;case 3:this.$2_12="C1Left";break;default:break}},createDOMAccordionPaneElement:function(){var i=document.createElement("div");i.className="C1AccordionPane "+this.$2_10+" C1ListItem pane"+this.get_panes().get_count()+" C1LastItem C1Closed "+this.$2_12+" C1AccordionPane-"+this.$2_12+" flow-panel "+this.$2_11+" C1AccordionPane_Default-"+this.$2_12;i.id=this.get_element().id+"_C1AccordionPane"+(this.get_panes().get_count()+1);i.style.overflow="visible";var h=document.createElement("div");h.className="C1HeaderPanel C1Closed-C1HeaderPanel "+this.$2_10;h.id=i.id+"_hdr";if(this.get_expandDirection()===3||this.get_expandDirection()===1){h.style.height=this.get_height()}var g=document.createElement("div");g.className="C1Outer";var f=document.createElement("div");f.className="C1Inner";g.appendChild(f);var e=document.createElement("div");e.className="C1Content";e.style.overflow="hidden";if(this.get_expandDirection()===3||this.get_expandDirection()===1){e.style.height=this.get_height()}f.appendChild(e);var d=document.createElement("div");d.className="C1ContentPanel C1Closed-C1ContentPanel "+this.$2_10;d.id=i.id+"_cnt";d.style.display="none";var c=document.createElement("div");c.className="C1Outer";var b=document.createElement("div");b.className="C1Inner";c.appendChild(b);var a=document.createElement("div");a.className="C1Content";a.style.overflow="auto";if(this.get_expandDirection()===3||this.get_expandDirection()===1){a.style.height=this.get_height()}b.appendChild(a);h.appendChild(g);d.appendChild(c);i.appendChild(h);i.appendChild(d);return i},createDOMJSONServerState:function(){var b=document.createElement("input");b.type="hidden";var a=this.get_element().id+"_C1AccordionPane"+(this.get_panes().get_count()+1);b.id=a+"__jsonserverstate";var d={};d.ButtonImageUrl="res:outlook_ui_default_pane_icon.gif";d.Expanded=false;d.HeaderPanelID=a+"_hdr";d.ContentPanelID=a+"_cnt";var c=C1.Web.UI.Utils.JSON.toJSONString(d);b.value=c;b.name=a+"__jsonserverstate";return b},$2_29:function(c){var b=c.CssStyle;var a=this.viewState.VisualStyle;if(!a||a===""){a="Accordion_Default"}else{a="Accordion_"+a}if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonCssClass)){c.TopButtonCssClass=b.TopButtonCssClass}else{c.TopButtonCssClass=a+"_ScrollButtonTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonActiveCssClass)){c.TopButtonActiveCssClass=b.TopButtonActiveCssClass}else{c.TopButtonActiveCssClass=a+"_ScrollButtonActiveTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.TopButtonDisabledCssClass)){c.TopButtonDisabledCssClass=b.TopButtonDisabledCssClass}else{c.TopButtonDisabledCssClass=a+"_ScrollButtonDisabledTop"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonCssClass)){c.RightButtonCssClass=b.RightButtonCssClass}else{c.RightButtonCssClass=a+"_ScrollButtonRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonActiveCssClass)){c.RightButtonActiveCssClass=b.RightButtonActiveCssClass}else{c.RightButtonActiveCssClass=a+"_ScrollButtonActiveRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.RightButtonDisabledCssClass)){c.RightButtonDisabledCssClass=b.RightButtonDisabledCssClass}else{c.RightButtonDisabledCssClass=a+"_ScrollButtonDisabledRight"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonCssClass)){c.BottomButtonCssClass=b.BottomButtonCssClass}else{c.BottomButtonCssClass=a+"_ScrollButtonBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonActiveCssClass)){c.BottomButtonActiveCssClass=b.BottomButtonActiveCssClass}else{c.BottomButtonActiveCssClass=a+"_ScrollButtonActiveBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.BottomButtonDisabledCssClass)){c.BottomButtonDisabledCssClass=b.BottomButtonDisabledCssClass}else{c.BottomButtonDisabledCssClass=a+"_ScrollButtonDisabledBottom"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonCssClass)){c.LeftButtonCssClass=b.LeftButtonCssClass}else{c.LeftButtonCssClass=a+"_ScrollButtonLeft"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonActiveCssClass)){c.LeftButtonActiveCssClass=b.LeftButtonActiveCssClass}else{c.LeftButtonActiveCssClass=a+"_ScrollButtonActiveLeft"}if(!C1.Web.UI.Utils.Common.testIsNull(b.LeftButtonDisabledCssClass)){c.LeftButtonDisabledCssClass=b.LeftButtonDisabledCssClass}else{c.LeftButtonDisabledCssClass=a+"_ScrollButtonDisabledLeft"}},internalInitialize:function(){if(this.$2_2){return true}if(!this.get_isInitialized()){return false}if(this.get_outlookUI()&&!this.get_outlookUIMenu()){return false}this.$2_2=true;this.$2_1=new C1.Web.UI.Controls.C1Accordion.C1AccordionPaneCollection(this);var b=this.get_accordionElement().childNodes;for(var a=0;a<b.length;a++){var f=b[a];if(f.tagName&&f.className){if(f.className.indexOf("C1NavPanelResizer")!==-1){this.$2_36=f;this.$2_35(f)}if(f.className.indexOf("C1NavPanelMenu")!==-1){this.$2_37=f}if((f.className.indexOf("C1Expander")!==-1)||(f.className.indexOf("C1AccordionPane")!==-1)||(f.className.indexOf("C1NavPanelPane")!==-1)){var e=window.Sys;var d=e.Application;var c=d.findComponent(f.id);if(!c){this.$2_1.clear();this.$2_2=false;return false}if(c&&C1.Web.UI.Controls.C1Accordion.C1AccordionPane.isInstanceOfType(c)){this.$2_1.add(c)}}}}return true},$2_2A:null,$2_2B:0,$2_2C:null,$2_2D:0,$2_2E:function(){if(!this.internalInitialize()){return}if(this.get_outlookUI()){var b=this.get_outlookUIMenu();var a=null;try{a=b.findItemByValue("AddRemoveButtons")}catch(g){}var h=this.get_panes();for(var f=0;f<h.get_count();f++){var e=h.get_item(f);var d=b.get_items().get_item(f);d.set_checked(e.get_expanded());d.set_displayVisible(!e.get_displayVisible()&&!e.get_removed());if(a){try{(a.get_items().get_item(f)).set_checked(!e.get_removed())}catch(c){}}}if(b&&this.get_enabled()){b.invalidate()}}},$2_2F:function(b){if(this.get_panes().get_count()>0){this.$2_33(b);var a=this.getFirstVisiblePane();if(!a){a=this.getFirstInvisiblePane()}if(a){this.$2_30(b,a)}}},$2_30:function(b,a){this.$2_2A=C1.Web.UI.Utils.Measurement.getLocation(a.headerPanelElement);this.$2_2B=this.determineOrientation();this.$2_2C=a;this.$2_2D=(a.headerPanelElement.offsetHeight/2);if(!a.get_displayVisible()){this.$2_2A=C1.Web.UI.Utils.Measurement.getMousePointerPosition(b.rawEvent);this.$2_2D=15}},getFirstVisiblePane:function(){var b=this.get_panes();for(var a=0;a<b.get_count();a++){if(b.get_item(a).get_displayVisible()&&!b.get_item(a).get_removed()){return b.get_item(a)}}return null},getFirstInvisiblePane:function(){var b=this.get_panes();for(var a=0;a<b.get_count();a++){if(!b.get_item(a).get_displayVisible()&&!b.get_item(a).get_removed()){return b.get_item(a)}}return null},$2_31:function(f){var b=null;if(!(Sys.UI.DomEvent.isInstanceOfType(f))){b=new Sys.UI.DomEvent(f)}else{b=f}var a=C1.Web.UI.Utils.Measurement.getMousePointerPosition(b.rawEvent);if(this.$2_2B===1){var g=a.y-this.$2_2A.y;var e=Math.abs(g);if(e>this.$2_2D){if(g<0){var d=this.$2_2C.get_prevInvisibleSibling();if(!d){d=this.$2_2C.get_nextInvisibleSibling()}if(d){this.setPaneVisibility(d,true);this.invalidate();this.$2_30(b,d)}else{}}else{this.setPaneVisibility(this.$2_2C,false);this.invalidate();var c=this.$2_2C.get_nextVisibleSibling();if(!c){c=this.$2_2C.get_prevVisibleSibling()}if(c){this.$2_30(b,c)}else{}}}}else{}b.preventDefault()},$2_32:function(b){var a=null;if(!(Sys.UI.DomEvent.isInstanceOfType(b))){a=new Sys.UI.DomEvent(b)}else{a=b}this.$2_34(a)},setPaneVisibility:function(d,b){if(d){var c=this.get_outlookUIMenu();d.set_displayVisible(b);if(c){var a=c.findItemByValue(d.get_id());if(a){a.set_displayVisible(!b)}}}},$2_33:function(a){if(this.$2_3){return}this.$2_3=true;Sys.UI.DomEvent.addHandler(window.document,"mousemove",this.$2_6);Sys.UI.DomEvent.addHandler(window.document,"mouseup",this.$2_5);C1.Web.UI.Utils.Common.showModalLayer(this.get_element(),false)},$2_34:function(a){if(!this.$2_3){return}this.$2_3=false;C1.Web.UI.Utils.Common.hideModalLayer();if(!this.$2_4){return}Sys.UI.DomEvent.removeHandler(window.document,"mousemove",this.$2_6);Sys.UI.DomEvent.removeHandler(window.document,"mouseup",this.$2_5)},$2_35:function(a){if(this.$2_3){return}if(!this.$2_4){this.$2_4=Function.createDelegate(this,this.$2_2F);this.$2_5=Function.createDelegate(this,this.$2_32);this.$2_6=Function.createDelegate(this,this.$2_31)}Sys.UI.DomEvent.addHandler(a,"mousedown",this.$2_4)},_outlookMenu_ItemClick:function(k,j){var i=this.get_outlookUIMenu();C1.Web.UI.Utils.RawEvent.cancelBrowserResponse(j);var h=false;if(k.get_value()==="ShowAdditionalButtons"){var g=this.getFirstInvisiblePane();if(g){g.set_displayVisible(true);var f=i.findItemByValue(g.get_id());if(f){f.set_displayVisible(false)}}}else{if(k.get_value()==="HideAdditionalButtons"){var e=this.getFirstVisiblePane();if(e){e.set_displayVisible(false);var d=i.findItemByValue(e.get_id());if(d){d.set_displayVisible(true)}}}else{var c=k.get_value();if(c){if(c.startsWith("addremove_")){c=c.replace("addremove_","");var b=this.findPaneById(c);if(b){b.set_removed(!b.get_removed());if(!b.get_removed()){b.set_expanded(true)}}}else{var a=this.findPaneById(c);if(a){a.set_expanded(!a.get_expanded())}}}}}if(!h){k.get_menu().hideSubMenu()}this.invalidate()},$2_36:null,$2_37:null,$2_38:function(){var a=0;if(this.get_outlookUI()){if(this.determineOrientation()===1){if(this.$2_36){a+=this.$2_36.offsetHeight}if(this.$2_37){a+=this.$2_37.offsetHeight}}else{if(this.$2_36){a+=this.$2_36.offsetWidth}if(this.$2_37){a+=this.$2_37.offsetWidth}}}return a},get_outlookUI:function(){return false},updateCompoundCssClasses:function(){var b=this.getVisualStyleCssClassName();if(b===""){b=this.getControlClassName()}var a=b;if(this.get_element().disabled){a+="-C1Disabled"}var e=this.$2_39(this.get_expandDirection());a+=("-"+e);var d=""+this.get_element().className+"";var c=new RegExp("\\s*"+b+"-*\\S*(-C1Top|-C1Right|-C1Bottom|-C1Left)");d=d.replace(c,"");c=new RegExp("( |^)(C1Top|C1Right|C1Bottom|C1Left)( |\\z)");d=d.replace(c,"");this.get_element().className=d;Sys.UI.DomElement.addCssClass(this.get_element(),e);Sys.UI.DomElement.addCssClass(this.get_element(),a)},getControlClassName:function(){return"C1Accordion"},getVisualStyleCssClassName:function(){var a=this.viewState.VisualStyle;if(!a||a===""){a=this.getControlClassName()+"_Default"}else{a=this.getControlClassName()+"_"+a}return a},$2_39:function(a){switch(a){case 0:return"C1Top";case 1:return"C1Right";case 2:return"C1Bottom";case 3:return"C1Left"}return"C1Bottom"}};C1.Web.UI.Controls.C1Accordion.C1AccordionPane=function(b,a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.initializeBase(this,[((!b&&a)?a.createDOMAccordionPane():b)]);this.$4_2=a;if(!b){this.initialize();this.set_expandDirection(a.get_expandDirection())}};C1.Web.UI.Controls.C1Accordion.C1AccordionPane.prototype={$4_0:false,$4_1:false,setHeaderContentClassNames:function(){this._headerPanelClassName="C1HeaderPanel";this._contentPanelClassName="C1ContentPanel"},get_index:function(){return this.$4_4},get_expanded:function(){return C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"get_expanded")},set_expanded:function(a){if(this.$4_2.$2_9&&this.$4_2.$2_9.get_isAnimating()){return}C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_expanded",[a]);return a},get_expandAnimation:function(){if(this.$4_2.get_animationDuration()>30){var a=this.$4_2.get_expandDirection();if(a===2||!a){return 3}else{return 6}}return 0},set_expandAnimation:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_expandAnimation",[a]);return a},get_collapseAnimation:function(){if(this.$4_2.get_animationDuration()>30){var a=this.$4_2.get_expandDirection();if(a===2||!a){return 7}else{return 10}}return 0},set_collapseAnimation:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_collapseAnimation",[a]);return a},get_expandDuration:function(){return this.$4_2.get_animationDuration()},set_expandDuration:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_expandDuration",[a]);return a},get_collapseDuration:function(){return this.$4_2.get_animationDuration()},set_collapseDuration:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_collapseDuration",[a]);return a},get_expandEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.ExpandEasing))?this.$4_2.get_expandEasing():C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"get_expandEasing")},set_expandEasing:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_expandEasing",[a]);return a},get_collapseEasing:function(){return(C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.CollapseEasing))?this.$4_2.get_collapseEasing():C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"get_collapseEasing")},set_collapseEasing:function(a){C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"set_collapseEasing",[a]);return a},get_removed:function(){return((C1.Web.UI.Utils.Common.testIsNull(this._propertiesState.Removed))?false:this._propertiesState.Removed)},set_removed:function(a){this._propertiesState.Removed=a;if(a){this.set_displayVisible(false)}else{this.saveState()}return a},get_nextSibling:function(){return this.$4_2.get_panes().$3(this.$4_4)},get_prevSibling:function(){return this.$4_2.get_panes().$2(this.$4_4)},get_nextVisibleSibling:function(){return this.$4_2.get_panes().$4(this.$4_4)},get_prevVisibleSibling:function(){return this.$4_2.get_panes().$6(this.$4_4)},get_prevInvisibleSibling:function(){return this.$4_2.get_panes().$7(this.$4_4)},get_nextInvisibleSibling:function(){return this.$4_2.get_panes().$5(this.$4_4)},invalidate:function(){},onCollapse:function(){},onExpand:function(){this.$4_2.set_selectedIndex(this.get_index())},getControlClassName:function(){return"C1AccordionPane"},dispose:function(){this.$4_2=null;C1.Web.UI.Controls.C1Accordion.C1AccordionPane.callBaseMethod(this,"dispose")},createContentPanel:function(){var a=new C1.Web.UI.ContentPanel(this.contentPanelElement);a.setInnerElementsClassNames("C1Outer","C1Inner","C1Content");return a},createHeaderPanel:function(){var a=new C1.Web.UI.ContentPanel(this.headerPanelElement);a.setInnerElementsClassNames("C1Outer","C1Inner","C1Content");return a},$4_2:null,$4_3:function(a){this.$4_2=a},$4_4:0};C1.Web.UI.Controls.C1Accordion.C1AccordionPaneCollection=function(a){this.$1=[];this.$0=a};C1.Web.UI.Controls.C1Accordion.C1AccordionPaneCollection.prototype={$0:null,get_owner:function(){return this.$0},get_last:function(){return(this.get_count()>0)?this.get_item(this.get_count()-1):null},get_count:function(){return this.$1.length},add:function(b){var a=this.get_count();this.insert(a,b);return a},insert:function(a,b){if(b){b.$4_3(this.$0);b.$4_4=a}this.$1.splice(a,0,b);this.onListChanged()},removeAt:function(a){this.$1.splice(a,1);this.onListChanged()},removeRange:function(b,c){for(var a=0;a<c;a++){this.removeAt(b)}},reverse:function(){this.$1.reverse();this.onListChanged()},clear:function(){this.$1=[];this.onListChanged()},contains:function(b){for(var a=0;a<this.$1.length;a++){if((this.$1[a]).get_id()===b.get_id()){return true}}return false},indexOf:function(b){for(var a=0;a<this.$1.length;a++){if((this.$1[a]).get_id()===b.get_id()){return a}}return -1},remove:function(b){for(var a=0;a<this.get_count();a++){if(this.get_item(a).get_id()===b.get_id()){this.removeAt(a);break}}},onListChanged:function(){},$2:function(b){var a=b-1;while(a>=0&&a<this.get_count()){if(!this.get_item(a).get_removed()){return this.get_item(a)}a=a-1}return null},$3:function(b){var a=b+1;while(a>=0&&a<this.get_count()){if(!this.get_item(a).get_removed()){return this.get_item(a)}a=a+1}return null},$4:function(b){var a=this.$3(b);while(a){if(a.get_displayVisible()){return a}a=this.$3(++b)}return null},$5:function(b){var a=this.$3(b);while(a){if(!a.get_displayVisible()){return a}a=this.$3(++b)}return null},$6:function(b){var a=this.$2(b);while(a){if(a.get_displayVisible()){return a}a=this.$2(--b)}return null},$7:function(b){var a=this.$2(b);while(a){if(!a.get_displayVisible()){return a}a=this.$2(--b)}return null},get_item:function(a){return this.$1[a]},set_item:function(b,c){var a=this.$1[b];if(c!==a){this.$1[b]=c;this.onListChanged()}return c}};C1.Web.UI.Controls.C1Accordion.C1Accordion.registerClass("C1.Web.UI.Controls.C1Accordion.C1Accordion",Sys.UI.Control,C1.Web.UI.Interfaces.IJsonSerializableSupport);C1.Web.UI.Controls.C1Accordion.C1AccordionPane.registerClass("C1.Web.UI.Controls.C1Accordion.C1AccordionPane",C1.Web.UI.Controls.C1Expander.C1Expander);C1.Web.UI.Controls.C1Accordion.C1AccordionPaneCollection.registerClass("C1.Web.UI.Controls.C1Accordion.C1AccordionPaneCollection");
/* END C1.Web.UI.Controls.C1Accordion.Resources.C1AccordionClient.js */
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
(function() {var fn = function() {if(!$get('ctl00_RadScriptManager1_HiddenField')) return; $get('ctl00_RadScriptManager1_HiddenField').value += ';;System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35:en-US:0d787d5c-3903-4814-ad72-296cea810318:ea597d4b;Infragistics35.Web.v9.1, Version=9.1.20091.1015, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb:en-US:4c842803-acd4-4bd6-b3f5-32e3e7484bce:b2eb9dfb:d28221df:64b9c67:6ccd1f8:f81ba123:d90a67a2:1d32b7a4:d20881e4:67e4a0d1:3c61bf0a:a64c3ec1;Telerik.Web.UI, Version=2009.1.311.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4:en-US:f48f6488-574a-46fe-9b15-624f013d8c03:16e4e7cd:f7645509:24ee1bba:1e771326:e524c98b;System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35:en-US:0d787d5c-3903-4814-ad72-296cea810318:76254418;Telerik.Web.UI, Version=2009.1.311.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4:en-US:f48f6488-574a-46fe-9b15-624f013d8c03:ed16cbdc;C1.Web.UI.3:en-US:d4c6eea5-48b6-4413-8078-c030bf91633c:424f8dba;C1.Web.UI.Controls.3, Version=3.5.20091.115, Culture=neutral, PublicKeyToken=9b75583953471eea:en-US:d0dd9143-f7e2-4428-a512-ffdad9a24ca7:a74388b7:b834d2da:2107229c:28da4fb5:89b5ae64';Sys.Application.remove_load(fn);};Sys.Application.add_load(fn);})();
