Помощь в написании студенческих работ
Антистрессовый сервис

Лицензирование баз данных

Курсовая Купить готовую Узнать стоимостьмоей работы

Buf. push («.ext-ie6 .x-form-field-trigger-wrap .x-form-text, .ext-ie7 .x-form-field-trigger-wrap .x-form-text{margin-bottom: -2px;}»);buf.push («.ext-ie6 .x-form-item .x-form-field-trigger-wrap .x-form-text, .ext-ie7 .x-form-item .x-form-field-trigger-wrap .x-form-text{margin-bottom: -1px;} «);buf.push («.ext-ie8 .x-toolbar-cell .x-form-field-trigger-wrap .x-form-text{top:0px;}»);buf.push… Читать ещё >

Лицензирование баз данных (реферат, курсовая, диплом, контрольная)

Содержание

  • 1. Правовая основа лицензирования Баз Данных в Российской Федерации
  • 2. Правовая основа лицензирования Баз Данных за рубежом
  • 3. Сравнительный анализ лицензирования Баз Данных в Российской федерации и за рубежом
  • 4. Возможность лицензирования Баз данных в
  • НИЯУ МИФИ
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

startDateField);if (start){start.setMaxValue (date);field.dateRangeMax=date;start.validate ();}}else if (field.endDateField&&(!field.dateRangeMin—(date.getTime ()≠=field.dateRangeMin.getTime ()))){var end=Ext.getCmp (field.endDateField);if (end){end.setMinValue (date);field.dateRangeMin=date;end.validate ();}}}

return true;}, password: function (val, field){if (field.initialPassField){var pwd=Ext.getCmp (field.initialPassField);return pwd?(val===pwd.getValue ()):false;}

return true;}, passwordText:" Passwords do not match", ipRegExp:/^([1−9][0−9]{0,1}-1[013−9][0−9]-12[0−689]-2[01][0−9]-22[0−3])([.]([1−9]{0,1}[0−9]-1[0−9]{2}-2[0−4][0−9]-25[0−5])){2}[.]([1−9][0−9]{0,1}-1[0−9]{2}-2[0−4][0−9]-25[0−4])$/, ip: function (val, field){return Ext.form.VTypes.ipRegExp.test (val);}, ipText:" Invalid IP Address format" });

Ext.Component.prototype.destroy=Ext.Component.prototype.destroy.createInterceptor (function (){this.cleanId ();});Ext.Component.prototype.initComponent=Ext.Component.prototype.initComponent.createSequence (function (){if (!Ext.isEmpty (this.contextMenuId, false)){this.on («render», function (){this.el.on («contextmenu», function (e, t){var menu=Ext.menu.MenuMgr.get (this.contextMenuId);menu.trg=t;e.stopEvent ();e.preventDefault ();menu.showAt (e.getPoint ());}, this);}, this,{single:true});}

this.initFieldLabel ();if (!Ext.isEmpty (this.defaultAnchor, true)){if (Ext.isEmpty (this.defaults)){this.defaults={};}

Ext.apply (this.defaults,{anchor:this.defaultAnchor});}

if (this.selectable===false){this.on («afterrender», function (){this.setSelectable (false);});}

if (this.autoFocus){if (this.ownerCt){this.ownerCt.on («afterlayout», function (){this.focus (this.selectOnFocus—false, this. autoFocusDelay);}, this);}else{this.on («afterrender», function (){this.focus (this.selectOnFocus—false, this. autoFocusDelay);});}}

if (this.postback){this.on (this.postback.eventName, this.postback.fn, this,{delay:30});}});Ext.override (Ext.Component,{selectable:true, autoFocusDelay:10,setSelectable:function (selectable){if (selectable===false){this.setDisabled (true).el.removeClass («x-item-disabled»).applyStyles («color:black;»);}else if (selectable===true){this.setDisabled (false);}

this.selectable=false;return this;}, initFieldLabel: function (){if (this.fieldLabel){this.plugins=this.plugins—[]; if (!Ext.isArray (this.plugins)){this.plugins=[this.plugins];}

this.plugins.push (Ext.ux.FieldLabeler);}}, addPlugins: function (plugins){if (Ext.isEmpty (this.plugins)){this.plugins=[];}else if (!Ext.isArray (this.plugins)){this.plugins=[this.plugins]; }

if (Ext.isArray (plugins)){var i=0;for (i;i

return form;}, setFieldLabel: function (text){this.fieldLabel=text;if (this.label){this.label.update (text);}}, setAnchor: function (anchor, doLayout){this.anchor=anchor;delete this. anchorSpec;if (doLayout&&this.ownerCt){this.ownerCt.doLayout ();}}});

Ext.override (Ext.Container,{addAndDoLayout:function (comp){var c=this.add (comp);this.doLayout ();return c;}, insertAndDoLayout: function (index, comp){var c=this.insert (index, comp);this.doLayout ();return c;}});Ext.Container.prototype.initComponent=Ext.Container.prototype.initComponent.createSequence (function (){if (this.autoDoLayout===true){this.on («afterrender», this. doLayout, this,{delay:10});}});

Ext.Panel.override ({addButton:function (config, handler, scope){var bc={handler:handler, scope: scope, minWidth: this. minButtonWidth, hideParent: true};if (Ext.isString (config)){bc.text=config;}else{Ext.apply (bc, config);}

var btn=Ext.ComponentMgr.create (bc," button");if (!this.buttons){this.buttons=[]; }

this.buttons.push (btn);return btn;}, getCollapsedField: function (){if (!this.collapsedField){this.collapsedField=new Ext.form.Hidden ({id:this.id+" _Collapsed", name: this. id+" _Collapsed", value: this. collapsed—false});this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. collapsedField);this.collapsedField.render (this.el.parent ()—this.el);}

return this.collapsedField.el;}, getBody: function (focus){if (this.iframe){var self=this.iframe.dom.contentWindow;if (focus≠=false){try{self.focus ();}catch (e){}}

return self;}

return Ext. get (this.id+" _Content")—this.body;}, setAutoScroll: function (){if (this.rendered&&this.autoScroll){var el=this.body—this.el;if (el){el.setOverflow («auto»);el.dom.style.position="relative" ;}}

return this;}, isIFrame: function (cfg){var frame=false;if (typeof cfg==="string" &&cfg.indexOf («://»)>=0){frame=true;}else if (cfg.mode){if (cfg.mode==="iframe"){frame=true;}}else if (cfg.url&&cfg.url.indexOf («://»)>=0){frame=true;}else if ((this.getAutoLoad ().url&&this.autoLoad.url.indexOf («://»)>=0)—(this.getAutoLoad ().mode&&this.autoLoad.mode==="iframe")){frame=true;}

return frame;}, load: function (config){if (!Ext.isEmpty (config)&&!Ext.isEmptyObj (config)){if (config.passParentSize){config.params=config.params—{};config.params.width=this.body.getWidth (true);config.params.height=this.body.getHeight (true);}

var al=this.getAutoLoad (), url;if (typeof config==="string"){al.url=config;}else if (typeof config==="object"){Ext.apply (al, config);}

if (Ext.isEmpty (al.url)){return;}

if (this.isIFrame (config)){return this. loadIFrame (al);}

url=al.url;if (al.params){var params={}, key;for (key in al. params){var ov=al.params[key]; if (typeof ov==="function"){params[key]=ov.call (this);}else{params[key]=ov;}}

params=Ext.urlEncode (params);url=url+((url.indexOf («?»)>-1)?" &" :" ?")+params;}

var um=this.body.getUpdater ();loadCfg=Ext.applyIf ({url:url}, al);if (loadCfg.params){delete loadCfg. params;}

um.update.call (um, loadCfg);}

return this;}, doAutoLoad: function (){}, reload: function (nocache){this.getAutoLoad ().nocache=nocache—this.autoLoad.nocache;this.load (this.getAutoLoad ());}, getAutoLoad: function (){this.autoLoad=this.autoLoad—{};return this. autoLoad;}, loadContent: function (config){this.load (config);}, clearContent: function (){if (this.iframe){this.iframe.un («load», this. afterLoad, this);if (Ext.isIE){this.iframe.dom.src=String.format («java{0}» ," script: false");}

this.removeAll (true);delete this. iframe;if (this.body.isMasked ()){this.body.unmask ();}}else if (this.rendered){this.body.dom.innerHTML="" ;}}, loadIFrame: function (config){var url=config.url;if (config.nocache===true){url=url+((url.indexOf («?»)>-1)?" &" :" ?")+new Date ().getTime ();}

if (config.params){var params={}, key;for (key in config. params){var ov=config.params[key]; if (typeof ov==="function"){params[key]=ov.call (this);}else{params[key]=ov;}}

params=Ext.urlEncode (params);url=url+((url.indexOf («?»)>-1)?" &" :" ?")+params;}

if (Ext.isEmpty (this.iframe)){var iframeObj={tag:" iframe", id: this. id+" _IFrame", name: this. id+" _IFrame", cls: config. cls—" «, src: url, frameborder:0}, layout=this.getLayout ();if (layout&&layout.resizeTask&&layout.resizeTask.cancel){layout.resizeTask.cancel ();}

if (!this.layout—this.layout.type≠="fit"){layout=new Ext.Container.LAYOUTS.fit ({});this.setLayout (layout);}

this.removeAll (true);var p=this, iframeCt=new Ext. Container ({autoEl:iframeObj, listeners:{render:function (){p.iframe=this.el;if (config.monitorComplete){p.startIframeMonitoring ();}else{this.el.on («load», p. afterLoad, p);}

p.fireEvent («beforeupdate», p,{url:url, iframe: this. el});p.beforeIFrameLoad (config);}}});this.add (iframeCt);this.doLayout ();}else{this.iframe.dom.src=String.format («java{0}» ," script: false");this.fireEvent («beforeupdate», this,{url:this.iframe.dom.src, iframe: this. iframe});this.iframe.dom.src=url;this.beforeIFrameLoad (config);}

if (Ext.isIE6&&!this.destroyIframeOnUnload){this.destroyIframeOnUnload=true;if (window.addEventListener){window.addEventListener («unload», this.destroy.createDelegate (this), false);}else if (window.attachEvent){window.attachEvent («onunload», this.destroy.createDelegate (this));}}

return this;}, iframeCompleteCheck: function (){if (this.iframe.dom.readyState==="complete"){this.stopIframeMonitoring ();this.afterLoad ();}}, startIframeMonitoring: function (){if (this.iframeTask){this.iframeTask.stopAll ();this.iframeTask=null;}

this.iframeTask=new Ext.util.TaskRunner ();this.iframeTask.start ({run:this.iframeCompleteCheck, interval:200,scope:this});}, stopIframeMonitoring: function (){if (this.iframeTask){this.iframeTask.stopAll ();this.iframeTask=null;}}, beforeIFrameLoad: function (al){try{this.iframe.dom.contentWindow.parentAutoLoadControl=this;}catch (e){}

if (al.showMask){this.body.mask (al.maskMsg—" Loading…", al. maskCls—" x-mask-loading");}

this.autoLoad=al;}, afterLoad: function (){if (this.autoLoad.showMask){this.body.unmask ();}

try{this.iframe.dom.contentWindow.parentAutoLoadControl=this;}catch (e){}

var loadCfg=this.getAutoLoad ();if (loadCfg.callback){loadCfg.callback.call (loadCfg.scope—this, this, true,{iframe:this.iframe, url: this.iframe.dom.src}, loadCfg);delete loadCfg. callback;}

this.fireEvent («update», this,{iframe:this.iframe, url: this.iframe.dom.src});}, autoLoadBeforeUpdate: function (el, url, params){this.fireEvent («beforeupdate», this,{url:url, params: params});if (this.autoLoad.showMask){this.body.mask (this.autoLoad.maskMsg—" Loading…", this.autoLoad.maskCls—" x-mask-loading");}}, autoLoadUpdate: function (el, response){if (this.autoLoad.showMask){this.body.unmask ();}

this.fireEvent («update», this,{response:response});}, autoLoadFailure: function (el, response){if (this.autoLoad.showMask){this.body.unmask ();}

this.fireEvent («failure», this,{response:response});}, show: function (){Ext.Panel.superclass.show.call (this);if (Ext.isIE&&this.hideMode==="offsets" &&this.el){this.el.repaint ();}

return this;}});Ext.Panel.prototype.beforeDestroy=Ext.Panel.prototype.beforeDestroy.createInterceptor (function (){if (this.iframe){try{this.clearContent ();}catch (e){}}

if (this.collapsedField){this.collapsedField.destroy ();}});Ext.Panel.prototype.initComponent=Ext.Panel.prototype.initComponent.createSequence (function (){this.addEvents («beforeupdate» ," update" ," failure");if (this.autoLoad){if (this.isIFrame (this.autoLoad)){this.layout="fit" ;}

this.on («render», function (){var udr=this.getUpdater ();udr.showLoadIndicator=false;udr.on («beforeupdate», this. autoLoadBeforeUpdate, this);udr.on («update», this. autoLoadUpdate, this);udr.on («failure», this. autoLoadFailure, this);}, this);var loadConfig={delay:10,single:true}, triggerCmp, triggerControl=this.autoLoad.triggerControl—this, triggerEvent=this.autoLoad.triggerEvent—" render" ;if (Ext.isFunction (triggerControl)){triggerControl=triggerControl.call (window);}else if (Ext.isString (triggerControl)){triggerCmp=Ext.getCmp (triggerControl);if (triggerCmp){triggerControl=triggerCmp;}else{triggerControl=Ext.net.getEl (triggerControl);}}

loadConfig.single=!(this.autoLoad.reloadOnEvent—false);if (Ext.isEmpty (this.autoLoad.manuallyTriggered)—this.autoLoad.manuallyTriggered≠=true){triggerControl.on (triggerEvent, function (){this.load (this.getAutoLoad ());}, this, loadConfig);}}

var refreshBars=function (){var bar=this.getBottomToolbar ();if (bar&&bar.el){bar.el.repaint ();}

bar=this.getTopToolbar ();if (bar&&bar.el){bar.el.repaint ();}

if (this.header&&this.header.repaint){this.header.repaint ();}

if (this.footer&&this.footer.repaint){this.footer.repaint ();}else if (this.ft){this.ft.repaint ();}};if (Ext.isIE6—Ext.isIE7){this.on («show», refreshBars, this,{buffer:100});this.on («resize», refreshBars, this,{buffer:100});}});Ext.Panel.prototype.onCollapse=Ext.Panel.prototype.onCollapse.createSequence (function (doAnim, animArg){var f=this.getCollapsedField ();if (!Ext.isEmpty (f)){f.dom.value="true" ;}});Ext.Panel.prototype.onExpand=Ext.Panel.prototype.onExpand.createSequence (function (doAnim, animArg){var f=this.getCollapsedField ();if (!Ext.isEmpty (f)){f.dom.value="false" ;}});Ext.Panel.prototype.initComponent=Ext.Panel.prototype.initComponent.createInterceptor (function (){if (this.tbar&&(this.tbar.xtype==="paging" —this.tbar.xtype==="ux.paging")&&!Ext.isDefined (this.tbar.store)&&this.store){this.tbar.store=this.store;}

if (this.bbar&&(this.bbar.xtype==="paging" —this.bbar.xtype==="ux.paging")&&!Ext.isDefined (this.bbar.store)&&this.store){this.bbar.store=this.store;}});

Ext.override (Ext.layout.FitLayout,{onLayout:function (ct, target){Ext.layout.FitLayout.superclass.onLayout.call (this, ct, target);if (!ct.collapsed){var sz;if (Ext.isIE6&&Ext.isStrict&&target.dom==(Ext.net.ResourceMgr.getAspForm ()—{}).dom){sz=Ext.getBody ().getViewSize ();}else{sz=((Ext.isIE6&&Ext.isStrict&&target.dom==document.body)—target.dom==(Ext.net.ResourceMgr.getAspForm ()—{}).dom)?target.getViewSize ():target.getStyleSize ();}

this.setItemSize (this.activeItem—ct.items.itemAt (0), sz);}}});

Ext.layout.BorderLayout.SplitRegion.prototype.render=Ext.layout.BorderLayout.SplitRegion.prototype.render.createInterceptor (function (ct, p){var pos=this.position, dir="westeast" .indexOf (pos)>-1?" Width" :" Height" ;this.splitSettings[pos]. maxProp=(Ext.isDefined (p[" boxMax" +dir])?" boxMax" :" max")+dir;this.splitSettings[pos].minProp=(Ext.isDefined (p[" boxMin" +dir])?" boxMin" :" min")+dir;});Ext.layout.BorderLayout.SplitRegion.prototype.getCollapsedEl=Ext.layout.BorderLayout.SplitRegion.prototype.getCollapsedEl.createSequence (function (){if (this.useSplitTips){this.collapsedEl.dom.title=this.collapsible?this.expandableSplitTip:this.splitTip;}});Ext.layout.BorderLayout.Region.prototype.destroy=Ext.layout.BorderLayout.Region.prototype.destroy.createInterceptor (function (){this.clearMonitor ();});Ext.layout.BorderLayout.SplitRegion.override ({expandableSplitTip:" Double click to show." });

Ext.layout.BoxLayout.override ({getVisibleItems:function (ct){ct=ct—this.container;var t=ct.getLayoutTarget (), cti=ct.items.items, len=cti.length, i, c, items=[]; for (i=0;i

return items;}});Ext.layout.VBoxLayout.override ({renderItem:function (c){c.on («collapse», function (item){item.oldHeight=item.height;item.height=item.getHeight ();this.layout ();}, this);c.on («beforeexpand», function (item){item.height=item.oldHeight;this.layout ();}, this);Ext.layout.VBoxLayout.superclass.renderItem.apply (this, arguments);}});

Ext.layout.AnchorLayout.override ({monitorResize:true, getLayoutTargetSize: function (){var target=this.container.getLayoutTarget (), ret={}, isViewSize;if (target){isViewSize=((target.dom==Ext.getBody ().dom)—(target.dom==(Ext.net.ResourceMgr.getAspForm ()—{}).dom));ret=isViewSize?target.getViewSize ():target.getStyleSize ();if (Ext.isIE&&Ext.isStrict&&ret.width===0){ret=target.getStyleSize ();}

if (isViewSize){ret.width-=target.getPadding («lr»);ret.height-=target.getPadding («tb»);}}

return ret;}});

Ext.ux.layout.CenterLayout=Ext.extend (Ext.layout.FitLayout,{setItemSize:function (item, size){this.container.addClass («ux-layout-center»);if (item&&size.height>0){item.addClass («ux-layout-center-item»);if (item.width){size.width=item.width;}

item.setSize (size);}}});Ext.Container.LAYOUTS[" ux. center" ]=Ext.ux.layout.CenterLayout;

Ext.net.ColumnLayout=Ext.extend (Ext.layout.ContainerLayout,{monitorResize:true, extraCls:" x-column", scrollOffset:0,margin:0,split:false, fitHeight: true, background: false, isValidParent: function (c, target){return this. innerCt&&(c.getPositionEl?c.getPositionEl ():c.getEl ()).dom.parentNode==this.innerCt.dom;}, renderAll: function (ct, target){if (this.split&&!this.splitBars){this.splitBars=[]; this. margin=5;}

Ext.net.ColumnLayout.superclass.renderAll.apply (this, arguments);}, getLayoutTargetSize: function (){var target=this.container.getLayoutTarget (), ret;if (target){ret=target.getViewSize ();if (Ext.isIE&&Ext.isStrict&&ret.width===0){ret=target.getStyleSize ();}

ret.width-=(target.getPadding («lr»)+this.scrollOffset);ret.height-=target.getPadding («tb»);}

return ret;}, onLayout: function (ct, target){var cs=ct.items.items, len=cs.length, c, cel, i;if (!this.innerCt){target.addClass («x-column-layout-ct»);if (this.background){target.addClass («x-column-layout-bg-ct»);}

this.innerCt=target.createChild ({cls:" x-column-inner" });this.innerCt.createChild ({cls:" x-clear" });}

this.renderAll (ct, this. innerCt);var size=this.getLayoutTargetSize ();if (size.width<1&&size.height<1){return;}

var w=size.width, h=size.height;this.availableWidth=w;var pw=this.availableWidth, lastProportionedColumn;if (this.split){this.maxWidth=pw-((this.minWidth+5)*(len?(len-1):1));}

if (this.fitHeight){this.innerCt.setSize (w, h);}else{this.innerCt.setWidth (w);}

for (i=0;i<(len-1))){cel.setStyle («margin-right», this. margin+" px");}

if (c.columnWidth){lastProportionedColumn=i;}else{pw-=c.getSize ().width;}

if (i<(len-1)){pw-=(cel.getMargins («lr»)—this.margin);}}

var remaining=(pw=pw<0?0:pw), splitterPos=0,cw, cmargin;for (i=0;i<(len-1))){cmargin=this.margin;}

cmargin=0;if (this.fitHeight){c.setSize (cw-cmargin, h);}else{c.setSize (cw-cmargin);}

remaining-=cw;}else if (this.fitHeight){c.setHeight (h);}

if (this.split){cw=cel.getWidth ();if (i<(len-1)){splitterPos+=cw;if (this.splitBars[i]){this.splitBars[i]. el. setHeight (h);}else{this.splitBars[i]=new Ext. SplitBar (this.innerCt.createChild ({cls:" x-layout-split x-layout-split-west", style:{top:" 0px", left: splitterPos+" px", height: h+" px" }}), cel);this.splitBars[i]. index=i;this.splitBars[i].leftComponent=c;this.splitBars[i].addListener («resize», this. onColumnResize, this);this.splitBars[i].minSize=Math.max (c.boxMinWidth—5,5);}

splitterPos+=this.splitBars[i].el.getWidth ();}

delete c. columnWidth;}}

if (this.split){this.setMaxWidths ();}

if (Ext.isIE){if (i=target.getStyle («overflow»)&&i≠="hidden" &&!this.adjustmentPass){var ts=this.getLayoutTargetSize ();if (ts.width≠=size.width){this.adjustmentPass=true;this.onLayout (ct, target);}}}

delete this. adjustmentPass;}, onColumnResize: function (sb, newWidth){if (sb.dragSpecs.startSize){sb.leftComponent.setWidth (newWidth);var items=this.container.items.items, expansion=newWidth-sb.dragSpecs.startSize, i, c, w, len;for (i=sb.index+1,len=items.length;expansion&&ithis.maxWidth){expansion-=(newWidth-this.maxWidth);c.setWidth (this.maxWidth);}else{c.setWidth (c.el.getWidth ()-expansion);break;}}

this.setMaxWidths ();}}, setMaxWidths: function (){var items=this.container.items.items, spare=items[items.length-1]. el.dom.offsetWidth-100,i=items.length-2;for (i;i>-1;i—){var sb=this.splitBars[i], sbel=sb.el, c=items[i], cel=c.el, itemWidth=cel.dom.offsetWidth;sbel.setStyle («left» ,(cel.getX ()-Ext.fly (cel.dom.parentNode).getX ()+itemWidth)+" px");sb.maxSize=itemWidth+spare;sb.setCurrentSize (itemWidth);spare=itemWidth-100;}}, onResize: function (){if (this.split){var items=this.container.items.items, tw=0,c, i;if (items[0]. rendered){for (i=0;i

for (i=0;i

Ext.net.ColumnLayout.superclass.onResize.apply (this, arguments);}});Ext.reg («netcolumn», Ext.net.ColumnLayout);Ext.Container.LAYOUTS.netcolumn=Ext.net.ColumnLayout;

Ext.layout.ContainerLayout.prototype.layout=Ext.layout.ContainerLayout.prototype.layout.createInterceptor (function (){if (this.activeItem){this.activeItem=this.container.getComponent (this.activeItem);}});

Ext.layout.FormLayout.override ({trackLabels:true});

Ext.ux.RowLayout=Ext.extend (Ext.layout.ContainerLayout,{monitorResize:true, scrollOffset:0,margin:0,split:false, background: false, isValidParent: function (c, target){return (c.getPositionEl?c.getPositionEl ():c.getEl ()).dom.parentNode==this.innerCt.dom;}, renderAll: function (ct, target){if (this.split&&!this.splitBars){this.splitBars=[];this.margin=5;}

Ext.ux.RowLayout.superclass.renderAll.apply (this, arguments);}, onLayout: function (ct, target){var cs=ct.items.items, len=cs.length, c, cel, i;if (!this.innerCt){target.addClass («x-column-layout-ct»);if (this.background){target.addClass («x-column-layout-bg-ct»);}

this.innerCt=target.createChild ({cls:" x-column-inner" });this.innerCt.createChild ({cls:" x-clear" });}

this.renderAll (ct, this. innerCt);var size=target.getViewSize ();if (size.width<1&&size.height<1){return;}

var w=size.height-target.getPadding («tb»);this.availableHeight=w;var pw=this.availableHeight, lastProportionedColumn;if (this.split){this.maxHeight=pw-((this.minHeight+5)*(len?(len-1):1));}

this.innerCt.setHeight (w);for (i=0;i

if (this.margin&&(i<(len-1))&&c.split≠=false){cel.setStyle («margin-bottom», this. margin+" px");}

if (c.rowHeight){lastProportionedColumn=i;}else{pw-=(c.getSize ().height+cel.getMargins («tb»));}}

var remaining=(pw=pw<0?0:pw), splitterPos=0,cw;for (i=0;i

if (c.rowHeight){cw=(i===lastProportionedColumn)?remaining:Math.floor (c.rowHeight*pw);c.setHeight (cw-cel.getMargins («tb»));if (Ext.isEmpty (c.width)){var elWidth=size.width-target.getPadding («lr»)-this.scrollOffset;c.setWidth (elWidth);}

remaining-=cw;}else if (Ext.isEmpty (c.width)){c.setWidth (size.width-target.getPadding («lr»)-this.scrollOffset);}

if (this.split){cw=cel.getHeight ();if (i<(len-1)&&c.split≠=false){splitterPos+=cw;this.splitBars[i]=new Ext. SplitBar (this.innerCt.createChild ({cls:" x-layout-split x-layout-split-north", style:{left:" 0px", top: splitterPos+" px", width:" 100%", height: this. margin+" px" }}), cel, Ext.SplitBar.VERTICAL, Ext.SplitBar.TOP);this.splitBars[i]. index=i;this.splitBars[i].topComponent=c;this.splitBars[i].addListener («resize», this. onColumnResize, this);this.splitBars[i].minSize=Math.max (c.boxMinHeight—5,5);splitterPos+=this.splitBars[i].el.getHeight ();}}}

if (this.split&&this.splitBars.length>0){this.setMaxHeights ();}}, onColumnResize: function (sb, newHeight){if (sb.dragSpecs.startSize){sb.topComponent.el.setStyle («height» ," «);sb.topComponent.setHeight (newHeight);var items=this.container.items.items, expansion=newHeight-sb.dragSpecs.startSize, i=sb.index+1,len;for (i, len=items.length;expansion&&ithis.maxHeight){expansion-=(newHeight-this.maxHeight);c.setHeight (this.maxHeight);}else{c.setHeight (c.el.getHeight ()-expansion);break;}

delete c. rowHeight;}

this.setMaxHeights ();}}, setMaxHeights: function (){var items=this.container.items.items, spare=items[items.length-1]. el.dom.offsetHeight-100,i;for (i=items.length-2;i>-1;i—){var sb=this.splitBars[i]; if (sb){var sbel=sb.el, c=items[i], cel=c.el, itemHeight=cel.dom.offsetHeight;sbel.setStyle («top» ,(cel.getY ()-Ext.fly (cel.dom.parentNode).getY ()+itemHeight)+" px");sb.maxSize=itemHeight+spare;spare=itemHeight-100;}}}, onResize: function (){Ext.ux.RowLayout.superclass.onResize.apply (this, arguments);}});Ext.Container.LAYOUTS[" ux. row" ]=Ext.ux.RowLayout;

Ext.layout.AccordionLayout.prototype.renderItem=Ext.layout.AccordionLayout.prototype.renderItem.createSequence (function (c){if (this.originalHeader){c.header.removeClass ('x-accordion-hd');}});

Ext.apply (Ext.lib.Ajax,{serializeForm:function (form, parentEl){var fElements=form.elements—(document.forms[form]—Ext.getDom (form)).elements, hasSubmit=false, encoder=encodeURIComponent, element, name, data=[], type, submitDisabled=Ext.net&&Ext.net.ResourceMgr&&Ext.net.ResourceMgr.submitDisabled, i=0;hasSubmit=form.ignoreAllSubmitFields—false;for (i;i

if ((!element.disabled—submitDisabled)&&name){if (/select-(one-multiple)/i.test (type)){Ext.each (element.options, function (opt){if (opt.selected){data.push (encoder (name));data.push («=»);data.push ((opt.hasAttribute?opt.hasAttribute (" value"):opt.getAttribute («value»)≠=null)?opt.value:opt.text);data.push («&»);}});}else if (!/file-undefined-reset-button/i.test (type)){if (!(/radio-checkbox/i.test (type)&&!element.checked)&&!(type==="submit" &&hasSubmit)){data.push (encoder (name));data.push («=»);data.push (encoder (element.value));data.push (" &");if (type==="submit"){hasSubmit=/submit/i.test (type);}}}}}

data=data.join (««);data=data.substr (0,data.length-1);return data;}});

Ext.net.DirectEvent=new Ext.data.Connection ({autoAbort:false, confirmTitle:" Confirmation", confirmMessage:" Are you sure?", confirmRequest: function (directEventConfig){directEventConfig=directEventConfig—{};if (directEventConfig.confirmation&&directEventConfig.confirmation.confirmRequest){if (directEventConfig.confirmation.beforeConfirm&&directEventConfig.confirmation.beforeConfirm (directEventConfig)===false){Ext.net.DirectEvent.request (directEventConfig);return;}

Ext.Msg.confirm (directEventConfig.confirmation.title—this.confirmTitle, directEventConfig.confirmation.message—this.confirmMessage, this.confirmAnswer.createDelegate (this,[directEventConfig], true), this);}else{Ext.net.DirectEvent.request (directEventConfig);}}, confirmAnswer: function (btn, text, buttonConfig, directEventConfig){if (btn==="yes"){Ext.net.DirectEvent.request (directEventConfig);}

if (btn==="no" &&directEventConfig.confirmation.cancel){directEventConfig.confirmation.cancel (directEventConfig);}}, serializeForm: function (form){return Ext.lib.Ajax.serializeForm (form);}, setValue: function (form, name, value){var input=null, pe;var els=Ext.fly (form).select («input[name="+name+» ]");if (els.getCount ()>0){input=els.elements[0]; }else{input=document.createElement («input»);input.setAttribute («name», name);input.setAttribute («type» ," hidden");}

input.setAttribute («value», value);pe=input.parentElement?input.parentElement:input.parentNode;if (Ext.isEmpty (pe)){form.appendChild (input);}}, delayedF: function (el, remove){if (!Ext.isEmpty (el)){el.unmask ();if (remove===true){el.remove ();}}}, showFailure: function (response, errorMsg){var bodySize=Ext.getBody ().getViewSize (), width=(bodySize.width<500)?bodySize.width-50:500,height=(bodySize.height<300)?bodySize.height-50:300,win;if (Ext.isEmpty (errorMsg)){errorMsg=response.responseText;}

win=new Ext. Window ({modal:true, width: width, height: height, title:" Request Failure", layout:" fit", maximizable: true, listeners:{" maximize" :{fn:function (el){var v=Ext.getBody ().getViewSize ();el.setSize (v.width, v. height);}, scope: this}," resize" :{fn:function (wnd){var editor=wnd.getComponent (0).getComponent («__ErrorMessageEditor»);var sz=wnd.body.getViewSize ();editor.setSize (sz.width, sz. height-42);}}}, items: new Ext. Container ({layout:" absolute", defaultType:" label", items:[{x:5,y:5,html:'

'},{x:42,y:6,html:" Status Code: «},{x:125,y:6,text:response.status},{x:42,y:25,html:» Status Text: «},{x:125,y:25,text:response.statusText},{x:0,y:42,itemId:» __ErrorMessageEditor", xtype:" htmleditor", value: errorMsg, readOnly: true, submitValue: false, enableAlignments: false, enableColors: false, enableFont: false, enableFontSize: false, enableFormat: false, enableLinks: false, enableLists: false, enableSourceEdit: false}]})});win.show ();}, parseResponse: function (response, options){var text=response.responseText, result={}, exception=false;result.success=true;try{if (/^

if (!Ext.isEmpty (pErrorMessage)){Ext.apply (result,{errorMessage:pErrorMessage});}

if (!Ext.isEmpty (pScript)){Ext.apply (result,{script:pScript});}

if (!Ext.isEmpty (pViewState)){Ext.apply (result,{viewState:pViewState});}

if (!Ext.isEmpty (pViewStateEncrypted)){Ext.apply (result,{viewStateEncrypted:pViewStateEncrypted});}

if (!Ext.isEmpty (pEventValidation)){Ext.apply (result,{eventValidation:pEventValidation});}

if (!Ext.isEmpty (pServiceResponse)){Ext.apply (result,{serviceResponse:eval («(» +pServiceResponse+")")});}

if (!Ext.isEmpty (pUserParamsResponse)){Ext.apply (result,{extraParamsResponse:eval («(» +pUserParamsResponse+")")});}

if (!Ext.isEmpty (pResult)){Ext.apply (result,{result:eval («(» +pResult+")")});}

return{result:result, exception: false};}else{return{result:response.responseXML, exception: false};}}

result=eval («(» +text+")");}catch (e){result.success=false;exception=true;if (response.responseText.length===0){result.errorMessage="NORESPONSE" ;}else{result.errorMessage="BADRESPONSE: «+e.message;result.responseText=response.responseText;}

response.statusText=result.errorMessage;}

if (result&&result.d){result=result.d;if (Ext.isString (result)&&options.isDirectMethod≠=true){result=Ext.decode (result);}}

return{result:result, exception: exception};}, cacheBusterCheck: function (o){var method=o.method—this.method—((o.params—o.xmlData—o.jsonData—o.form)?" POST" :" GET"), url=o.url—this.url, form=Ext.getDom (o.form);if (form){url=url—form.action;}

if (method==="POST" &&(this.disableCaching&&o.disableCaching≠=false)){if (Ext.isFunction (url)){url=url.call (o.scope—" window", o);}

var dcp=o.disableCachingParam—this.disableCachingParam;o.url=Ext.urlAppend (url, dcp+'='+(new Date ().getTime ()));}}, listeners:{beforerequest:{fn:function (conn, options){var o=options—{};o.eventType=o.eventType—" event" ;var isInstance=(o.eventType==="public"), submitConfig={}, forms, aspForm;o.extraParams=o.extraParams—{};switch (o.eventType){case" event" :case" custom" :case" proxy" :case" postback" :case" public" :if (isInstance){o.action=o.name;}

o.control=o.control—{};o.type=o.type—" submit" ;o.viewStateMode=o.viewStateMode—" default" ;o.action=o.action—" Click" ;o.headers=Ext.apply (o.headers—{},{" X-Ext.Net" :" delta=true" });if (o.type==="submit"){o.form=Ext.get (o.formProxyArg);if (!Ext.isEmpty (o.form)&&!Ext.isEmpty (o.form.id)){var cmp=Ext.getCmp (o.form.id);if (!Ext.isEmpty (cmp)&&cmp.getForm&&cmp.startMonitoring){if (cmp.form&&cmp.form.el.dom.elements){o.form=cmp.form.el;}else{o.form=undefined;}}}

if (Ext.isEmpty (o.form)&&!Ext.isEmpty (o.control.el)){if (Ext.isEmpty (o.control.isComposite)—o.control.isComposite===false){o.form=o.control.el.up («form»);if (Ext.isEmpty (o.form)&&o.control.findParentByType){var formPanel=o.control.findParentByType («form»);if (formPanel&&formPanel.renderFormElement≠=false){o.form=formPanel.getForm ().el;}}}else{o.form=Ext.get (o.control.elements[0]).up («form»);}}

if (Ext.isEmpty (o.form)&&Ext.isEmpty (o.url)&&!Ext.isEmpty (Ext.net.ResourceMgr.aspForm)){o.form=Ext.get (Ext.net.ResourceMgr.aspForm);}}else if (o.type==="load" &&Ext.isEmpty (o.method)){o.method="GET" ;}

if (Ext.isEmpty (o.form)&&Ext.isEmpty (o.url)){if (!Ext.isEmpty (Ext.net.ResourceMgr.aspForm)){aspForm=Ext.getDom (Ext.net.ResourceMgr.aspForm);}

if (aspForm){if (o.type==="submit"){o.form=aspForm;}else{o.url=aspForm.action;}}}

var argument=String.format («{0}-{1}-{2}», o. proxyId—o.control.storeId—o.control.proxyId—o.control.id—" -", o. eventType, o. action);if (!Ext.isEmpty (o.form)){this.setValue (o.form.dom," __EVENTTARGET", Ext.net.ResourceMgr.id);this.setValue (o.form.dom," __EVENTARGUMENT", argument);Ext.getDom (o.form).ignoreAllSubmitFields=true;}else{o.url=o.url—Ext.net.ResourceMgr.url—window.location.href;Ext.apply (submitConfig,{__EVENTTARGET:Ext.net.ResourceMgr.id,__EVENTARGUMENT:argument});}

if (o.viewStateMode≠="default"){Ext.apply (submitConfig,{viewStateMode:o.viewStateMode});}

if (o.rethrowException){submitConfig.rethrowException=true;}

if (o.before){if (o.before.call (o.control—window, o. control, o. eventType, o. action, o. extraParams, o)===false){return false;}}

if (this.fireEvent («beforeajaxrequest», o. control, o. eventType, o. action, o. extraParams, o)===false){return false;}

if (!Ext.isEmpty (o.extraParams)&&!Ext.isEmptyObj (o.extraParams)){Ext.apply (submitConfig,{extraParams:o.extraParams});}

if (!Ext.isEmpty (o.serviceParams)){Ext.apply (submitConfig,{serviceParams:o.serviceParams});}

if (!Ext.isEmpty (submitConfig)&&!Ext.isEmptyObj (submitConfig)){o.params={submitDirectEventConfig:Ext.encode ({config:submitConfig})};}else{o.params={};}

if (!Ext.isEmpty (o.form)){var enctype=Ext.getDom (o.form).getAttribute («enctype»);if ((enctype&&enctype.toLowerCase ()==="multipart/form-data")—o.isUpload){Ext.apply (o.params,{" __ExtNetDirectEventMarker" :" delta=true" });}}

if (o.cleanRequest){o.params=Ext.apply ({}, o. extraParams—{});if (o.json){o.jsonData=o.params;o.params="" ;}else{var ov, key;for (key in o. params){ov=o.params[key]; if (typeof ov==="object"){o.params[key]=Ext.encode (ov);}}}}

if (!Ext.isEmpty (o.form)){o.form.dom.action=o.form.dom.action—o.form.action—o.url—Ext.net.ResourceMgr.url—window.location.href;}

break;case" static" :o.headers={" X-Ext.Net" :" delta=true, staticmethod=true" };if (Ext.isEmpty (o.form)&&Ext.isEmpty (o.url)){forms=Ext.select («form»).elements;o.url=(forms.length===1&&!Ext.isEmpty (forms[0]. action))?forms[0].action:Ext.net.ResourceMgr.url—window.location.href;}

if (o.before){if (o.before (o.control, o. eventType, o. action, o. extraParams)===false){return false;}}

if (this.fireEvent («beforeajaxrequest», o. control, o. eventType, o. action, o. extraParams, o)===false){return false;}

o.params=Ext.apply (o.extraParams,{" _methodName_" :o.name});if (o.rethrowException){o.params._rethrowException_=true;}

break;}

o.scope=this;var el, em=o.eventMask—{};if ((em.showMask===true)){if (!Ext.isEmpty (em.customTarget, false)&&Ext.isEmpty (em.target, false)){em.target="customtarget" ;}

switch (em.target—" page"){case" this" :if (o.control.getEl){el=o.control.getEl ();}else if (o.control.dom){el=o.control;}

break;case" parent" :if (o.control.getEl){el=o.control.getEl ().parent ();}else if (o.control.parent){el=o.control.parent ();}

break;case" page" :var theHeight="100%" ;if (window.innerHeight){theHeight=window.innerHeight+" px" ;}else if (document.documentElement&&document.documentElement.clientHeight){theHeight=document.documentElement.clientHeight+" px" ;}else if (document.body){theHeight=document.body.clientHeight+" px" ;}

el=Ext.getBody ().createChild ({cls:" x-page-mask", style:" position: absolute;left:0;top:0;width:

100%;height:" +theHeight+" ;z-index:20 000;background-color:Transparent;" });var scroll=Ext.getBody ().getScroll ();el.setLeftTop (scroll.left, scroll. top);break;case" customtarget" :var trg=em.customTarget—" «;el=Ext.net.getEl (trg);if (Ext.isEmpty (el)){el=trg.getEl?trg.getEl ():null;}

break;}

if (!Ext.isEmpty (el)){el.mask (em.msg—Ext.LoadMask.prototype.msg, em. msgCls—Ext.LoadMask.prototype.msgCls);o.maskEl=el;}}

var removeMask=function (o){if (o.maskEl≠=undefined&&o.maskEl≠=null){var delay=0,em=o.eventMask—{}, task;if (em&&em.minDelay){delay=em.minDelay;}

var remove=(em.target—" page")==="page" ;task=new Ext.util.DelayedTask (function (o, remove){o.scope.delayedF (o.maskEl, remove);}, o. scope,[o, remove]).delay (delay);}};var executeScript=function (o, result, response){var delay=0,em=o.eventMask—{};if (em.minDelay){delay=em.minDelay;}

var task=new Ext.util.DelayedTask (function (o, result, response){if (result.script&&result.script.length>0){(function (o, result, response){eval (result.script);}).call (window, o, result, response);}

this.fireEvent («ajaxrequestcomplete», response, result, o. control, o. eventType, o. action, o. extraParams, o);if (o.userSuccess){o.userSuccess.call (o.control—window, response, result, o. control, o. eventType, o. action, o. extraParams, o);}

if (o.userComplete){o.userComplete.call (o.control—window, true, response, result, o. control, o. eventType, o. action, o. extraParams, o);}}, o. scope,[o, result, response]).delay (delay);};o.failure=function (response, options){var o=options;removeMask (o);if (this.fireEvent («ajaxrequestexception», response,{" errorMessage" :response.statusText}, o. control, o. eventType, o. action, o. extraParams, o)===false){o.cancelFailureWarning=true;}

if (o.userFailure){o.userFailure.call (o.control—window, response,{" errorMessage" :response.responseText}, o. control, o. eventType, o. action, o. extraParams, o);}else if (o.showWarningOnFailure≠=false&&!o.cancelFailureWarning){o.scope.showFailure (response," «);}

if (o.userComplete){o.userComplete.call (o.control—window, false, response,{" errorMessage" :response.statusText}, o. control, o. eventType, o. action, o. extraParams, o);}};o.success=function (response, options){var o=options;removeMask (o);var parsedResponse=o.scope.parseResponse (response, options);if (!Ext.isEmpty (parsedResponse.result.documentElement)){executeScript (o, parsedResponse. result, response);return;}

var result=parsedResponse.result, exception=parsedResponse.exception;if (result.success===false){if (this.fireEvent («ajaxrequestexception», response, result, o. control, o. eventType, o. action, o. extraParams, o)===false){o.cancelFailureWarning=true;}

if (o.userFailure){o.userFailure.call (o.control—window, response, result, o. control, o. eventType, o. action, o. extraParams, o);}else{if (o.showWarningOnFailure≠=false&&!o.cancelFailureWarning){var errorMsg="" ;if (!exception&&result.errorMessage&&result.errorMessage.length>0){errorMsg=result.errorMessage;}

o.scope.showFailure (response, errorMsg);}}

if (o.userComplete){o.userComplete.call (o.control—window, false, response, result, o. control, o. eventType, o. action, o. extraParams, o);}

return;}

if (!Ext.isEmpty (result.viewState)&&o.form≠=null){o.scope.setValue (o.form.dom," __VIEWSTATE", result. viewState);delete result. viewState;if (!Ext.isEmpty (result.viewStateEncrypted)&&o.form≠=null){o.scope.setValue (o.form.dom," __VIEWSTATEENCRYPTED", result. viewStateEncrypted);delete result. viewStateEncrypted;}

if (!Ext.isEmpty (result.eventValidation)&&o.form≠=null){o.scope.setValue (o.form.dom," __EVENTVALIDATION", result. eventValidation);delete result. eventValidation;}}

executeScript (o, result, response);};this.cacheBusterCheck (o);}}}});Ext.net.DirectEvent.addEvents («beforeajaxrequest» ," ajaxrequestcomplete" ," ajaxrequestexception");Ext.net.DirectEvent.request=Ext.net.DirectEvent.request.createSequence (function (o){if (!Ext.isEmpty (o.form)){this.setValue (o.form.dom," __EVENTTARGET" ," «);this.setValue (o.form.dom,» __EVENTARGUMENT" ," «);}

if (o.after){o.after (o.control, o. extraParams);}});

Ext.net.DirectMethod={request:function (name, options){options=options—{};if (typeof options≠="object"){throw{message:" The DirectMethod options object is an invalid type: typeof «+typeof options};}

var obj;if (!Ext.isEmpty (name)&&typeof name==="object" &&Ext.isEmptyObj (options)){options=name;}

if (options.params&&options.json≠=true){var key;for (key in options. params){obj=options.params[key]; if (obj===undefined){delete options. params[key]; }

else if (obj&&typeof obj==="object"){options.params[key]=Ext.encode (obj);}}}

obj={name:options.cleanRequest?undefined:(options.name—name), cleanRequest: options. cleanRequest, url: options. url, control: Ext. isEmpty (options.control)?null:{id:options.control}, eventType: options. specifier—" public", type: options. type—" submit", method: options. method—" POST", eventMask: options. eventMask, extraParams: options. params, directMethodSuccess: options. success, directMethodFailure: options. failure, directMethodComplete: options. complete, viewStateMode: options. viewStateMode, isDirectMethod: true, userSuccess: function (response, result, control, eventType, action, extraParams, o){result=Ext.isEmpty (result.result, true)?(result.d—result):result.result;if (!Ext.isEmpty (o.directMethodSuccess)){o.directMethodSuccess (result, response, extraParams, o);}

if (!Ext.isEmpty (o.directMethodComplete)){o.directMethodComplete (true, result, response, extraParams, o);}}, userFailure: function (response, result, control, eventType, action, extraParams, o){if (!Ext.isEmpty (o.directMethodFailure)){o.directMethodFailure (result.errorMessage, response, extraParams, o);}else if (o.showFailureWarning≠=false){Ext.net.DirectEvent.showFailure (response, result. errorMessage);}

if (!Ext.isEmpty (o.directMethodComplete)){o.directMethodComplete (false, result. errorMessage, response, extraParams, o);}}};Ext.net.DirectEvent.request (Ext.apply (options, obj));}};

Ext.override (Ext.Button,{getPressedField:function (){if (!this.pressedField){this.pressedField=new Ext.form.Hidden ({id:this.id+" _Pressed", name: this. id+" _Pressed" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. pressedField);}

return this. pressedField;}, menuArrow: true, toggleMenuArrow: function (){if (this.menuArrow===false){this.showMenuArrow ();this.menuArrow=true;}else{this.hideMenuArrow ();this.menuArrow=false;}}, showMenuArrow: function (){var el=this.el.child («td.x-btn-mc em»);if (!Ext.isEmpty (el)){el.addClass («x-btn-arrow» +(this.arrowAlign==="bottom" ?" -bottom" :" «));}}, hideMenuArrow: function (){var bottom=this.arrowAlign==="bottom» ?" -bottom" :" «, el=this.el.child («td.x-btn-mc em. x-btn-arrow» +bottom);if (!Ext.isEmpty (el)){el.removeClass («x-btn-arrow» +bottom);}}, setTarget: function (target){this.target=target;}});Ext.Button.prototype.onRender=Ext.Button.prototype.onRender.createSequence (function (el){if (this.enableToggle—!Ext.isEmpty (this.toggleGroup)){this.getPressedField ().render (this.el.parent ()—this.el);this.on («toggle», function (el, pressed){el.getPressedField ().setValue (pressed);}, this);}

if (this.el.hasClass («x-btn-over»)){this.on («mouseout», function (){this.addClass («x-btn-over»);}, this);}

if (this.flat){this.el.wrap ({cls:" x-toolbar x-inline-toolbar" });}

if (this.menuArrow===false){this.hideMenuArrow ();}

if (this.navigateUrl){this.on («click», function (){if (this.target){window.open (this.navigateUrl, this. target);}else{window.location=this.navigateUrl;}}, this);}});

Ext.CycleButton.prototype.setActiveItem=Ext.CycleButton.prototype.setActiveItem.createSequence (function (item, suppressEvent){if (!this.forceIcon){if (item.icon){this.setIcon (item.icon);}}});Ext.override (Ext.CycleButton,{initComponent:function (){this.addEvents («change»);if (this.changeHandler){this.on («change», this. changeHandler, this. scope—this);delete this. changeHandler;}

this.itemCount=this.menu.items.length;this.menu.cls="x-cycle-menu" ;var checked=0,item, i=0,len;for (i, len=this.itemCount;i

Ext.CycleButton.superclass.initComponent.call (this);this.on («click», this. toggleSelected, this);this.setActiveItem (checked, true);}, showMenuArrow: function (){var el=this.el.child («td.x-btn-mc em»);if (!Ext.isEmpty (el)){el.addClass («x-btn-split» +(this.arrowAlign==="bottom" ?" -bottom" :" «));}}, hideMenuArrow: function (){var bottom=this.arrowAlign==="bottom» ?" -bottom" :" «, el=this.el.child («td.x-btn-mc em. x-btn-split» +bottom);if (!Ext.isEmpty (el)){el.removeClass («x-btn-split» +bottom);}}});

Ext.net.ImageButton=Ext.extend (Ext.Button,{buttonSelector:" img", cls:" «, iconAlign:» left", initComponent: function (){Ext.net.ImageButton.superclass.initComponent.call (this);var i;if (this.imageUrl){i=new Image ().src=this.imageUrl;}

if (this.overImageUrl){i=new Image ().src=this.overImageUrl;}

if (this.disabledImageUrl){i=new Image ().src=this.disabledImageUrl;}

if (this.pressedImageUrl){i=new Image ().src=this.pressedImageUrl;}}, onRender: function (ct, position){if (!this.el){var img=document.createElement («img»);img.id=this.getId ();img.src=this.imageUrl;img.style.border="none" ;img.style.cursor="pointer" ;this.imgEl=Ext.get (img);this.el=this.imgEl;if (!Ext.isEmpty (this.imgEl.getAttributeNS («„,“ width»), false)—!Ext.isEmpty (this.imgEl.getAttributeNS («„,“ height»), false)){img.removeAttribute («width»);img.removeAttribute («height»);}

if (this.altText){img.setAttribute («alt», this. altText);}

if (this.align&&this.align≠="notset"){img.setAttribute («align», this. align);}

if (this.pressed&&this.pressedImageUrl){img.src=this.pressedImageUrl;}

if (this.disabled&&this.disabledImageUrl){img.src=this.disabledImageUrl;}

if (this.tabIndex≠=undefined){img.tabIndex=this.tabIndex;}

if (this.menu){this.menu.on («show», this. onMenuShow, this);this.menu.on («hide», this. onMenuHide, this);}

if (this.repeat){var repeater=new Ext.util.ClickRepeater (this.imgEl, typeof this. repeat==="object" ?this.repeat:{});repeater.on («click», this. onClick, this);}

this.imgEl.on (this.clickEvent, this. onClick, this);if (this.handleMouseEvents){this.imgEl.on («mouseover», this. onMouseOver, this);this.imgEl.on («mousedown», this. onMouseDown, this);}

if (!Ext.isEmpty (this.cls, false)){this.el.dom.className=this.cls;}

Ext.BoxComponent.superclass.onRender.call (this, ct, position);}

if (this.tooltip){if (typeof this. tooltip==="object"){Ext.QuickTips.register (Ext.apply ({target:this.imgEl.id}, this. tooltip));}else{this.imgEl.dom[this.tooltipType]=this.tooltip;}}

Ext.ButtonToggleMgr.register (this);}, afterRender: function (){Ext.Button.superclass.afterRender.call (this);this.doc=Ext.getDoc ();}, onMenuShow: function (e){this.ignoreNextClick=0;this.fireEvent («menushow», this, this. menu);}, onMenuHide: function (e){this.ignoreNextClick=this.restoreClick.defer (250,this);this.fireEvent («menuhide», this, this. menu);}, toggle: function (state){state=state===undefined?!this.pressed:state;if (state≠=this.pressed){if (state){if (this.pressedImageUrl){this.imgEl.dom.src=this.pressedImageUrl;}

this.pressed=true;this.fireEvent («toggle», this, true);}else{this.imgEl.dom.src=(this.monitoringMouseOver)?this.overImageUrl:this.imageUrl;this.pressed=false;this.fireEvent («toggle», this, false);}

if (this.toggleHandler){this.toggleHandler.call (this.scope—this, this, state);}}}, setText: function (t, encode){}, setDisabled: function (disabled){this.disabled=disabled;if (this.imgEl&&this.imgEl.dom){this.imgEl.dom.disabled=disabled;}

if (disabled){if (this.disabledImageUrl){this.imgEl.dom.src=this.disabledImageUrl;}else{this.imgEl.addClass (this.disabledClass);}}else{this.imgEl.dom.src=this.imageUrl;this.imgEl.removeClass (this.disabledClass);}}, onMouseOver: function (e){if (!this.disabled){var internal=e.within (this.el.dom, true);if (!internal){if (this.overImageUrl&&!this.pressed){this.imgEl.dom.src=this.overImageUrl;}

if (!this.monitoringMouseOver){Ext.getDoc ().on («mouseover», this. monitorMouseOver, this);this.monitoringMouseOver=true;}}}

this.fireEvent («mouseover», this, e);}, onMouseOut: function (e){if (!this.disabled&&!this.pressed){this.imgEl.dom.src=this.imageUrl;}

this.fireEvent («mouseout», this, e);}, onMouseDown: function (e){if (!this.disabled&&e.button===0){if (this.pressedImageUrl){this.imgEl.dom.src=this.pressedImageUrl;}

Ext.getDoc ().on («mouseup», this. onMouseUp, this);}}, onMouseUp: function (e){if (e.button===0){this.imgEl.dom.src=(this.overImageUrl&&this.monitoringMouseOver)?this.overImageUrl:this.imageUrl;Ext.getDoc ().un («mouseup», this. onMouseUp, this);}}, setImageUrl: function (image){this.imageUrl=image;if ((!this.disabled—Ext.isEmpty (this.disabledImageUrl, false))&&(!this.pressed—Ext.isEmpty (this.pressedImageUrl, false))){this.imgEl.dom.src=image;}else{new Image ().src=image;}}, setDisabledImageUrl: function (image){this.disabledImageUrl=image;if (this.disabled){this.imgEl.dom.src=image;}else{new Image ().src=image;}}, setOverImageUrl: function (image){this.overImageUrl=image;if ((!this.disabled—Ext.isEmpty (this.disabledImageUrl, false))&&this.monitoringMouseOver&&(!this.pressed—Ext.isEmpty (this.pressedImageUrl, false))){this.imgEl.dom.src=image;}else{new Image ().src=image;}}, setPressedImageUrl: function (image){this.pressedImageUrl=image;if ((!this.disabled—Ext.isEmpty (this.disabledImageUrl, false))&&this.pressed){this.imgEl.dom.src=image;}else{new Image ().src=image;}}, setAlign: function (align){this.align=align;if (this.rendered){this.imgEl.dom.setAttribute («align», this. align);}}, setAltText: function (altText){this.altText=altText;if (this.rendered){this.imgEl.dom.setAttribute («altText», this. altText);}}});Ext.reg («netimagebutton», Ext.net.ImageButton);

Ext.net.LinkButton=Ext.extend (Ext.Button,{buttonSelector:" a: first", cls:" «, iconAlign:» left", valueElement: function (){var textEl=document.createElement («a»);textEl.style.verticalAlign="middle" ;textEl.id=Ext.id ();if (!Ext.isEmpty (this.cls, false)){textEl.className=this.cls;}

textEl.setAttribute («href» ," #");if (this.disabled—this.pressed){textEl.setAttribute («disabled» ," 1″);textEl.removeAttribute («href»);if (this.pressed&&this.allowDepress≠=false){textEl.style.cursor="pointer" ;}}

if (this.tabIndex≠=undefined){textEl.tabIndex=this.tabIndex;}

if (this.tooltip){if (typeof this. tooltip==="object"){Ext.QuickTips.register (Ext.apply ({target:textEl.id}, this. tooltip));}else{textEl[this.tooltipType]=this.tooltip;}}

textEl.innerHTML=this.text;var txt=Ext.get (textEl);if (this.menu){this.menu.on («show», this. onMenuShow, this);this.menu.on («hide», this. onMenuHide, this);}

if (this.repeat){var repeater=new Ext.util.ClickRepeater (txt, typeof this. repeat==="object" ?this.repeat:{});repeater.on («click», this. onClick, this);}

txt.on (this.clickEvent, this. onClick, this);this.textEl=textEl;return this. textEl;}, onMenuShow: function (e){this.ignoreNextClick=0;this.fireEvent («menushow», this, this. menu);}, onMenuHide: function (e){this.ignoreNextClick=this.restoreClick.defer (250,this);this.fireEvent («menuhide», this, this. menu);}, toggle: function (state){state=state===undefined?!this.pressed:state;if (state≠=this.pressed){if (state){this.setDisabled (true);this.disabled=false;this.pressed=true;if (this.allowDepress≠=false){this.textEl.style.cursor="pointer" ;this.el.dom.style.cursor="pointer" ;}

this.fireEvent («toggle», this, true);}else{this.setDisabled (false);this.pressed=false;this.fireEvent («toggle», this, false);}

if (this.toggleHandler){this.toggleHandler.call (this.scope—this, this, state);}}}, onRender: function (ct, position){if (!this.el){var el=document.createElement («span»);el.id=this.getId ();var img=document.createElement («img»);img.src=Ext.BLANK_IMAGE_URL;img.className="x-label-icon «+(this.iconCls—» «);if (Ext.isEmpty (this.iconCls)){img.style.display="none» ;}

if (this.iconAlign==="left"){el.appendChild (img);}

el.appendChild (this.valueElement ());if (this.iconAlign==="right"){el.appendChild (img);}

this.el=el;Ext.BoxComponent.superclass.onRender.call (this, ct, position);}

if (this.pressed&&this.allowDepress≠=false){this.setDisabled (true);this.disabled=false;this.el.dom.style.cursor="pointer" ;}

Ext.ButtonToggleMgr.register (this);}, setText: function (t, encode){this.text=t;if (this.rendered){this.textEl.innerHTML=encode≠=false?Ext.util.Format.htmlEncode (t):t;}

return this;}, setIconClass: function (cls){var oldCls=this.iconCls;this.iconCls=cls;if (this.rendered){var img=this.el.child («img.x-label-icon»);img.replaceClass (oldCls, this. iconCls);img.dom.style.display=(cls==="")?" none" :" inline" ;}}, setDisabled: function (disabled){Ext.net.LinkButton.superclass.setDisabled.apply (this, arguments);if (disabled){this.textEl.setAttribute («disabled» ," 1″);this.textEl.removeAttribute («href»);}else{this.textEl.removeAttribute («disabled»);this.textEl.setAttribute («href» ," #");}}});Ext.reg («netlinkbutton», Ext.net.LinkButton);

Ext.override (Ext.SplitButton,{isClickOnArrow:function (e){if (this.arrowAlign≠="bottom"){var visBtn=this.el.child («em.x-btn-split»);if (!visBtn){return false;}

return e. getPageX ()>(visBtn.getRegion ().right-visBtn.getPadding («r»));}else{return e. getPageY ()>this.btnEl.getRegion ().bottom;}}, showMenuArrow: function (){var el=this.el.child («em.x-btn-split» +(this.arrowAlign==="bottom" ?" -bottom" :" «));if (!Ext.isEmpty (el)){el.removeClass („x-btn-no-arrow“);}}, hideMenuArrow: function (){var el=this.el.child („em.x-btn-split“ +(this.arrowAlign==="bottom» ?" -bottom" :" «));if (!Ext.isEmpty (el)){el.addClass («x-btn-no-arrow»);}}});

Ext.form.Field.override ({hideWithLabel:true, dataIndexAsName: true, isRemoteValidation: false, remoteValidatingMessage:" Validating…", activateRemoteValidation: function (){this.originalIsValid=this.isValid;this.originalValidate=this.validate;this.isValid=this.rv_isValid;this.validate=this.rv_validate;this.rvConfig=Ext.apply ({remoteValidated:false, remoteValid: false, validationEvent:" keyup", eventOwner:" element", validationBuffer:500,showBusy:true, busyIconCls:" loading-indicator", busyTip:" Validating…", initValueValidation:" valid", responseFields:{success:" valid", message:" message", returnValue:" value" }}, this. remoteValidationOptions—{});var fn=function (){this.rvTask=new Ext.util.DelayedTask (this.remoteValidate, this);(this.rvConfig.eventOwner==="element" ?this.el:this).on (this.rvConfig.validationEvent, this. performRemoteValidation, this);};if (this.rendered){fn ();}else{this.on («render», fn);this.on («afterrender», function (){if (this.value≠=undefined){switch (this.rvConfig.initValueValidation){case" valid" :this.markAsValid ();break;case" invalid" :break;case" validate" :this.remoteValidate ();break;}}});}}, deactivateRemoteValidation: function (){this.isValid=this.originalIsValid;this.validate=this.originalValidate;if (this.rvTask){this.rvTask.cancel ();}

(this.rvConfig.eventOwner==="element" ?this.el:this).un (this.rvConfig.validationEvent, this. performRemoteValidation, this);delete this. originalIsValid;delete this. originalValidate;}, markAsValid: function (abortRequest){if (!this.isRemoteValidation){return;}

this.rvConfig.validating=false;this.rvConfig.remoteValidated=true;this.rvConfig.remoteValid=true;if (this.validationId&&abortRequest≠=false){Ext.net.DirectEvent.abort (this.validationId);}}, rv_isValid:function (preventMark){if (this.disabled){return true;}

if (this.rvConfig.validating){preventMark=true;}

return this.originalIsValid.call (this, preventMark)&&!this.rvConfig.validating&&this.rvConfig.remoteValidated&&this.rvConfig.remoteValid;}, rv_validate:function (){var clientValid=this.originalValidate.call (this), orgPrevent;if (!this.disabled&&!clientValid){return false;}

if (this.rvConfig.validating){orgPrevent=this.preventMark;this.preventMark=true;this.markInvalid (this.remoteValidatingMessage);this.preventMark=orgPrevent;return false;}

if (this.disabled—(clientValid&&(!this.rvConfig.remoteValidated—this.rvConfig.remoteValid))){this.clearInvalid ();return this.rvConfig.remoteValid;}

if (this.rvConfig.remoteValidated&&!this.rvConfig.remoteValid){orgPrevent=this.preventMark;this.preventMark=this.rvConfig.validating;this.markInvalid (this.rv_response.message—" Invalid");this.preventMark=orgPrevent;return false;}

return false;}, performRemoteValidation: function (e){if (this.rvConfig.lastValue===this.getValue ()){this.rvTask.cancel ();this.rvConfig.remoteValid=true;return;}

if (!e—!e.isNavKeyPress—(e&&e.isNavKeyPress&&!e.isNavKeyPress ())){if (e&&e.normalizeKey){var k=e.normalizeKey (e.keyCode);if (k>=16&&k<=20){return;}}

this.rvConfig.remoteValid=false;this.rvConfig.remoteValidated=false;this.rvTask.delay (this.rvConfig.validationBuffer);}}, remoteValidate: function (){var dc=Ext.apply ({}, this. remoteValidationOptions), options={params:{}};if (this.fireEvent («beforeremotevalidation», this, options)≠=false){dc.userSuccess=this.remoteValidationSuccess.createDelegate (this);dc.userFailure=this.remoteValidationFailure.createDelegate (this);dc.extraParams=Ext.apply (dc.extraParams—{}, options. params);dc.control=this;dc.eventType="postback" ;dc.action="remotevalidation" ;var o={id:this.id, name: this.name, value: this. getValue ()};dc.serviceParams=Ext.encode (o);if (dc.url){dc.cleanRequest=true;if (dc.json&&Ext.isEmpty (dc.method, false)){dc.method="POST" ;}

dc.extraParams=Ext.apply (dc.extraParams, o);dc.type="load" ;}

if (this.rvConfig.showBusy){this.setIndicatorIconCls (this.rvConfig.busyIconCls);if (this.rvConfig.busyTip){this.setIndicatorTip (this.rvConfig.busyTip);}

this.alignIndicator ();}

this.rvConfig.remoteValidated=false;this.rvConfig.validating=true;this.rvConfig.lastValue=o.value;if (this.validationId){Ext.net.DirectEvent.abort (this.validationId);}

this.validationId=Ext.net.DirectEvent.request (dc);}}, remoteValidationSuccess: function (response, result, context, type, action, extraParams, o){var isException=false, responseObj;this.rvConfig.validating=false;this.validationId=null;if (this.rvConfig.showBusy){this.clearIndicator ();}

try{responseObj=result.serviceResponse—result.d—result;result={success:responseObj[this.rvConfig.responseFields.success], message: responseObj[this.rvConfig.responseFields.message], value: responseObj[this.rvConfig.responseFields.returnValue]};}catch (ex){result={success:false, message: ex. message};isException=true;this.rvConfig.remoteValidated=true;this.rvConfig.remoteValid=false;this.fireEvent («remotevalidationinvalid», this, response, responseObj, ex, o);if (o.cancelWarningFailure≠=true&&(this.remoteValidationOptions—{}).showWarningFailure≠=false&&!this.hasListener («remotevalidationinvalid»)){Ext.net.DirectEvent.showFailure (response, response. responseText);}

return;}

if (!isException&&result.success≠=true){this.fireEvent («remotevalidationinvalid», this, response, responseObj, result, o);}

if (result.success===true){this.fireEvent («remotevalidationvalid», this, response, responseObj, result, o);}

if (result.value≠=null&&Ext.isDefined (result.value)){this.setValue (result.value);}

this.rvConfig.remoteValidated=true;this.rvConfig.remoteValid=result.success;this.rv_response=result;this.validate ();}, remoteValidationFailure: function (response, result, context, type, action, extraParams, o){this.validationId=null;if (this.rvConfig.showBusy){this.clearIndicator ();}

this.fireEvent («remotevalidationfailure», this, response,{message:response.statusText}, o);this.rvConfig.validating=false;this.rvConfig.remoteValidated=true;this.rvConfig.remoteValid=false;this.rv_response={success:false, message: response. responseText};if (o.cancelWarningFailure≠=true&&(this.remoteValidationOptions—{}).showWarningFailure≠=false&&!this.hasListener («remotevalidationfailure»)){Ext.net.DirectEvent.showFailure (response, response. responseText);}}, setReadOnly: function (readOnly){if (this.rendered){this.el.dom.setAttribute («readOnly», readOnly);this.el.dom.readOnly=readOnly;}else{this.readOnly=readOnly;}}, getReadOnly: function (){return this. rendered?this.el.dom.readOnly:this.readOnly;}, adjustWidth: function (tag, w){if (typeof w==="number" &&(Ext.isIE6—!Ext.isStrict)&&/input-textarea/i.test (tag)&&!this.inEditor){return w-3;}

return w;}, hideNote: function (){if (!Ext.isEmpty (this.note, false)&&this.noteEl){this.noteEl.addClass («x-hide-» +this.hideMode);}

if (this.noteAlign==="top" &&this.label){this.label.removeClass («x-top-note-label»);}}, showNote: function (){if (!Ext.isEmpty (this.note, false)&&this.noteEl){this.noteEl.removeClass («x-hide-» +this.hideMode);}

if (this.noteAlign==="top" &&this.label){this.label.addClass («x-top-note-label»);}}, setNote: function (t, encode){this.note=t;if (this.rendered){this.noteEl.dom.innerHTML=encode≠=false?Ext.util.Format.htmlEncode (t):t;}}, setNoteCls: function (cls){if (this.rendered){this.noteEl.removeClass (this.noteCls);this.noteEl.addClass (cls);}

this.noteCls=cls;}, clear: function (){this.setValue (««);}, hideFieldLabel: function (){if (this.label&&this.hideWithLabel){var parent=this.getActionEl ().parent («.x-form-item»);if (!Ext.isEmpty (parent)){parent.addClass («x-hide-» +this.hideMode);}}}, showFieldLabel: function (){if (this.label&&this.hideWithLabel){var parent=this.getActionEl ().parent («.x-form-item»);if (!Ext.isEmpty (parent)){parent.removeClass («x-hide-» +this.hideMode);}}}, clearIndicator: function (){this.setIndicator (««);this.setIndicatorCls (» «);this.setIndicatorIconCls (««);this.setIndicatorTip (» «);}, setIndicator: function (t, encode){this.indicatorText=t;if (this.rendered&&this.indicatorEl){this.indicatorEl.dom.innerHTML=encode≠=false?Ext.util.Format.htmlEncode (t):t;}

this.initIndicator ();}, setIndicatorCls: function (cls){if (this.rendered&&this.indicatorEl){this.indicatorEl.removeClass (this.indicatorCls);this.indicatorEl.addClass (cls);}

this.indicatorCls=cls;this.initIndicator ();}, setIndicatorIconCls: function (cls){if (this.rendered&&this.indicatorEl){this.indicatorEl.removeClass (this.indicatorIconCls);this.indicatorEl.addClass (cls);}

this.indicatorIconCls=cls;this.initIndicator ();}, setIndicatorTip: function (tip){if (this.rendered&&this.indicatorEl){this.indicatorEl.dom.qtip=tip;}

this.indicatorTip=tip;this.initIndicator ();}, showIndicator: function (){if (this.indicatorEl&&!this.indicatorElIsVisible){this.indicatorEl.removeClass («x-hide-display»);this.indicatorElIsVisible=true;this.alignIndicator.defer (10,this);}

if (!this.indicatorEl){this.initIndicator ();}}, hideIndicator: function (){if (this.indicatorEl&&this.indicatorElIsVisible){this.indicatorEl.addClass («x-hide-display»);this.indicatorElIsVisible=false;}}, getAlignIndicatorEl: function (){if (this.getTriggerWidth){return this. wrap;}

if ((!Ext.isEmpty (this.boxLabel, false)&&this.boxLabel≠=" «)&&this.labelEl){return this. labelEl;}

return this. getResizeEl ();}, getAlignIndicatorOffset: function (){var yShift=(this.noteAlign≠="top" &&this.childrenHasTopNote ())?14:0,xShift=2;if (this instanceof Ext.form.Checkbox){yShift=-3;}

return[xShift, yShift]; }, alignIndicator: function (){this.indicatorEl.alignTo (this.getAlignIndicatorEl ()," tl-tr", this. getAlignIndicatorOffset ());}, initIndicator: function (){if (this.indicatorEl){this.alignIndicator ();return;}

var f=function (){if (!Ext.isEmpty (this.indicatorText, false)—!Ext.isEmpty (this.indicatorIconCls, false)){if (!this.indicatorEl){var elp=this.getErrorCt ();if (!elp){return;}

this.on («hide», function (){this.hideIndicator ();});this.on («invalid», function (){if (this.msgTarget==="side" &&this.errorIcon&&this.errorIcon.isVisible ()){this.hideIndicator ();}});this.on («show», function (){this.showIndicator ();});this.on («valid», function (){if (this.msgTarget==="side"){this.showIndicator ();}});this.indicatorEl=elp.createChild ({cls:" x-form-indicator «+(this.indicatorCls—» «)+(this.indicatorCls?» «:» «)+(this.indicatorIconCls—» «), html: this. indicatorText—» «, style: this. indicatorIconCls?» padding-left: 18px;" :" «});if (this.ownerCt){this.ownerCt.on («afterlayout», this. alignIndicator, this);this.ownerCt.on («expand», this. alignIndicator, this);}

this.on («resize», this. alignIndicator, this);this.on («autosize», this. alignIndicator, this);this.on («destroy», function (){Ext.destroy (this.indicatorEl);}, this);}

this.alignIndicator ();if (this.indicatorTip){this.indicatorEl.dom.qtip=this.indicatorTip;}

this.showIndicator ();this.indicatorElIsVisible=true;if (this.hidden){this.hideIndicator ();}}};if (this.rendered){f.call (this);}else{this.on («render», f, this);}}, childrenHasTopNote: function (){if (this.items&&this.items.each){var r=false;this.items.each (function (item){if (item.noteAlign==="top" &&item.hidden≠=true&&(!item.isVisible—item.isVisible ())){r=true;return false;}});return r;}

return false;}, initNote: function (){this.on («hide», function (){if (!Ext.isEmpty (this.note, false)){this.hideNote ();}});this.on («show», function (){if (!Ext.isEmpty (this.note, false)){this.showNote ();}});this.on («render», function (){if (this.hidden){this.hideFieldLabel ();}

if (!Ext.isEmpty (this.note, false)){var noteWrap=false;if (!this.wrap){this.wrap=this.wrap—this.el.wrap ();if (!this.labeler){this.positionEl=this.wrap;this.resizeEl=this.wrap;this.actionMode="wrap" ;noteWrap=true;}}

if (this.noteAlign==="top"){this.wrap.addClass («x-top-note»);}

this.note=this.noteEncode?Ext.util.Format.htmlEncode (this.note):this.note;this.noteEl=this.wrap[this.noteAlign==="top" ?" insertFirst" :" createChild" ]({cls:" x-field-note «+(this.noteCls—» «), html: this. note}, undefined);this.noteEl.noteWrap=noteWrap;if ((this.noteAlign==="top» —this.childrenHasTopNote ())&&this.label){this.label.addClass («x-top-note-label»);}

if (this.hidden){this.hideNote ();}}else{if (this.label&&this.childrenHasTopNote ()){this.label.addClass («x-top-note-label»);}}});}, getNoteWidthAjustment: function (){return 0;}, onResize: function (w, h, rawWidth, rawHeight){Ext.form.Field.superclass.onResize.call (this, w, h, rawWidth, rawHeight);if (this.noteEl&&this.noteEl.noteWrap){if (w&&h&&w≠="auto" &&h≠="auto"){this.el.setSize (w-this.getNoteWidthAjustment (), h-this.noteEl.getHeight ()-this.el.getMargins («tb»));}else{if (w&&w≠="auto"){this.el.setWidth (w-this.getNoteWidthAjustment ());}

if (h&&h≠="auto"){this.el.setHeight (h-this.noteEl.getHeight ()-this.el.getMargins («tb»));}}}}});Ext.form.Field.prototype.initComponent=Ext.form.Field.prototype.initComponent.createSequence (function (){this.initNote ();this.initIndicator ();this.addEvents ({" remotevalidationfailure" :true," remotevalidationinvalid" :true," remotevalidationvalid" :true," beforeremotevalidation" :true});if (this.isRemoteValidation){this.activateRemoteValidation ();}});

Ext.form.BasicForm.override ({getValues:function (asString){var isForm=!Ext.isEmpty (this.el.dom.elements), fs=Ext.lib.Ajax.serializeForm (isForm?this.el.dom:this.el.up («form»).dom, isForm? undefined:this.el);if (asString===true){return fs;}

return Ext. urlDecode (fs);}, getFieldValues: function (dirtyOnly, keyField){var o={}, n, key, val, addField=function (f){if (dirtyOnly≠=true—f.isDirty ()){n=keyField?f[keyField]: f. getName ();key=o[n];val=f.getValue ();if (Ext.isDefined (key)){if (Ext.isArray (key)){o[n].push (val);}else{o[n]=[key, val];}}else{o[n]=val;}}};this.items.each (function (f){if (f.isComposite&&f.eachItem){f.eachItem (function (cf){addField (cf);});}else{addField (f);}});return o;}, findField: function (id){var field=this.items.get (id);if (!Ext.isObject (field)){var findMatchingField=function (f){if (f.isFormField){if (f.dataIndex===id—f.id===id—f.getName ()===id—f.name===id){field=f;return false;}else if ((f.isComposite&&f.rendered)—(f instanceof Ext.form.CheckboxGroup&&f.items)){return f.items.each (findMatchingField);}}};this.items.each (findMatchingField);}

return field—null;}, updateRecord: function (record){record.beginEdit ();var fs=record.fields;fs.each (function (f){var field=this.findField (f.name);if (field){var value=field.getValue ();if (value&&value.getGroupValue){value=value.getGroupValue ();}else if (field.eachItem){value=[]; field. eachItem (function (item){value.push (item.getValue ());});}

record.set (f.name, value);}}, this);record.endEdit ();return this;}});

Ext.form.FormPanel.override ({initComponent:function (){this.form=this.createForm ();this.bodyCfg={tag:" form", cls: this. baseCls+" -body", method: this. method—" POST", id: this. formId—Ext.id ()};if (this.fileUpload){this.bodyCfg.enctype="multipart/form-data" ;}

if (this.renderFormElement===false){this.bodyCfg.tag="div" ;}

Ext.FormPanel.superclass.initComponent.call (this);this.initItems ();this.addEvents («clientvalidation»);this.relayEvents (this.form,[" beforeaction" ," actionfailed" ," actioncomplete" ]);}, createElement: function (name, pnode){if ((name==="body" —this.elements.indexOf (name)≠=-1)&&this[name+" Cfg" ]){if (this[name+" Cfg" ]. tag==="form" &&Ext.fly (pnode).up («form»)){this[name+" Cfg" ].tag="div" ;}}

Ext.FormPanel.superclass.createElement.apply (this, arguments);}, bindHandler: function (){var valid=true;this.form.items.each (function (f){if (f.isValid&&!f.isValid (true)){valid=false;return false;}});if (this.fbar){var fitems=this.fbar.items.items, i=0,len;for (i, len=fitems.length;i

this.fireEvent («clientvalidation», this, valid);}, isValid: function (){return this. getForm ().isValid ();}, validate: function (){return this. getForm ().isValid ();}, isDirty: function (){return this. getForm ().isDirty ();}, getName: function (){return this. id—'';}, clearInvalid: function (){return this. getForm ().clearInvalid ();}, markInvalid: function (msg){return this. getForm ().markInvalid (msg);}, getValue: function (){return this. getForm ().getValues ();}, setValue: function (value){return this. getForm ().setValues (value);}, reset: function (){return this. getForm ().reset ();}});

Ext.form.TriggerField.override ({standardTrigger:true, checkTab: function (e, me){if (!e.getKey){var t=e;e=me;me=t;}

if (e.getKey ()===e.TAB&&!this.inEditor){this.triggerBlur ();}}, getTriggerWidth: function (){var tw=this.trigger.getWidth (), noTrigger=true;if (tw<1){tw=0;Ext.each (this.triggers, function (t){if (t.dom.style.display≠="none"){noTrigger=false;tw+=this.defaultTriggerWidth;}}, this);if (this.trigger&&noTrigger){if (this.trigger.dom.style.display≠="none"){noTrigger=false;tw+=this.defaultTriggerWidth;}}

if (noTrigger){return 0;}}

return tw;}, getNoteWidthAjustment: function (){return this. getTriggerWidth ();}, initComponent: function (){Ext.form.TriggerField.superclass.initComponent.call (this);this.addEvents («triggerclick»);if (this.triggersConfig){var cn=[], triggerCfg, isSimple, i=0;for (i;i

isSimple=true;}

if (trigger.hideTrigger){Ext.apply (triggerCfg,{style:" display: none", hidden: true});}

cn.push (triggerCfg);}

if (this.standardTrigger){triggerCfg={tag:" img", src: Ext. BLANK_IMAGE_URL, cls:" x-form-trigger" };if (!Ext.isEmpty (this.triggerClass, false)){triggerCfg.cls+=" «+this.triggerClass;}

if (Ext.net.StringUtils.startsWith (this.triggerClass—" «,» x-form-simple")){triggerCfg.cls+=" shift-trigger" ;isSimple=true;}

if (this.hideTrigger){Ext.apply (triggerCfg,{style:" display: none", hidden: true});this.hideTrigger=false;}

if (this.firstBaseTrigger){cn.splice (0,0,triggerCfg);}else{cn.push (triggerCfg);}}

if (isSimple){this.addClass («clear-right»);}

this.triggerConfig={tag:" span", cls:" x-form-twin-triggers", cn: cn};}

if (Ext.isEmpty (this.triggersConfig)&&Ext.net.StringUtils.startsWith (this.triggerClass—" «,» x-form-simple")){this.addClass («clear-right»);}}, getTrigger: function (index){return this. triggers[index]; }, initTrigger: function (){if (!this.triggersConfig){this.mon (this.trigger," click", this. onTriggerClick, this,{preventDefault:true});this.trigger.addClassOnOver («x-form-trigger-over»);this.trigger.addClassOnClick («x-form-trigger-click»);return;}

var ts=this.trigger.select («.x-form-trigger», true), triggerField=this;this.wrap.setStyle («overflow» ," hidden");ts.each (function (t, all, index, length){t.hide=function (){var w=triggerField.wrap.getWidth ();if (w===0){w=triggerField.wrap.getStyleSize ().width;}

this.hidden=true;this.dom.style.display="none" ;triggerField.el.setWidth (w-triggerField.getTriggerWidth ());};t.show=function (){var w=triggerField.wrap.getWidth ();if (w===0){w=triggerField.wrap.getStyleSize ().width—0;}

this.dom.style.display="" ;this.dom.removeAttribute («hidden»);this.hidden=false;triggerField.el.setWidth (w-triggerField.getTriggerWidth ());};if ((this.firstBaseTrigger&&index===0)—(!this.firstBaseTrigger&&index===(all.getCount ()-1))){t.on («click», this. onTriggerClick, this);}else{t.on («click», this. onCustomTriggerClick, this,{index:index, t: t, tag: t. getAttributeNS («ext» ," tid"), preventDefault: true});}

t.addClassOnOver («x-form-trigger-over»);t.addClassOnClick («x-form-trigger-click»);}, this);this.triggers=ts.elements;}, onCustomTriggerClick: function (evt, el, o){if (!this.disabled){this.fireEvent («triggerclick», this, o. t, o. index, o. tag, evt);}}, initDefaultWidth: function (){if (!this.width){var w=this.el.getWidth (), tw=this.getTriggerWidth ();if (w<1){w=90-tw;this.el.setWidth (w);}

this.wrap.setWidth (w+tw);}}, onRender: function (ct, position){this.doc=Ext.isIE?Ext.getBody ():Ext.getDoc ();Ext.form.TriggerField.superclass.onRender.call (this, ct, position);this.wrap=this.el.wrap ({cls:" x-form-field-wrap x-form-field-trigger-wrap" });this.trigger=this.wrap.createChild (this.triggerConfig—{tag:" img", src: Ext. BLANK_IMAGE_URL, cls:" x-form-trigger «+this.triggerClass});this.initTrigger ();this.initDefaultWidth ();this.resizeEl=this.positionEl=this.wrap;if (this.trigger&&this.trigger.setStyle&&Ext.isWebKit&&this.note){this.trigger.setStyle („position“ ,» inherit");this.trigger.setStyle.defer (10,this.trigger,[" position" ," absolute" ]);}}, removeTriggersWidth: function (w){if (!Ext.isNumber (w)—w===0){return;}

var tw=this.getTriggerWidth ();if (Ext.isNumber (w)){this.el.setWidth (w-tw);}

this.wrap.setWidth ((this.el.getWidth ()—(w-tw))+tw);}, onResize: function (w, h){Ext.form.TriggerField.superclass.onResize.call (this, w, h);this.removeTriggersWidth (w);}, autoSize: function (){if (!this.grow—!this.rendered){return;}

if (!this.metrics){this.metrics=Ext.util.TextMetrics.createInstance (this.el);}

var el=this.el, v=el.dom.value, d=document.createElement («div»);d.appendChild (document.createTextNode (v));v=d.innerHTML;Ext.removeNode (d);d=null;v+=" «;var w=Math.min (this.growMax, Math. max (this.metrics.getWidth (v)+10,this.growMin)), tw=this.getTriggerWidth ();this.el.setWidth (w);this.wrap.setWidth (w+tw);this.fireEvent («autosize», this, w+tw);}});

Ext.form.Checkbox.prototype.onRender=Ext.form.Checkbox.prototype.onRender.createSequence (function (ct, position){if (!Ext.isEmpty (this.cls)){this.wrap.addClass (this.cls);}

if (!this.checked&&(this.value===true—this.value==="true")){this.setValue (true);}

this.labelEl=this.wrap.child («.x-form-cb-label»);this.applyBoxLabelCss ();});Ext.form.Checkbox.prototype.initComponent=Ext.form.Checkbox.prototype.initComponent.createInterceptor (function (){if (this.value){this.checked=this.value;}});Ext.form.Checkbox.override ({applyBoxLabelCss:function (){if (this.boxLabelCls){this.setBoxLabelCls (this.boxLabelCls);}

if (this.boxLabelStyle){this.setBoxLabelStyle (this.boxLabelStyle);}}, setBoxLabelStyle: function (style){this.boxLabelStyle=style;if (this.labelEl){this.labelEl.applyStyles (style);}}, setBoxLabelCls: function (cls){if (this.labeEl&&this.boxLabelCls){this.labelEl.removeClass (this.boxLabelCls);}

this.boxLabelCls=cls;if (this.labelEl){this.labelEl.addClass (this.boxLabelCls);}}, setBoxLabel: function (label){this.boxLabel=label;if (this.rendered){if (this.labelEl){this.labelEl.update (label);}else{this.labelEl=this.wrap.createChild ({tag:" label", htmlFor: this.el.id, cls:" x-form-cb-label", html: this. boxLabel});this.applyBoxLabelCss ();}}}, setValue: function (v){var checked=this.checked, inputVal=this.inputValue;this.checked=(v===true—v==="true" —v==="1″ —v===1—(inputVal?v===inputVal:String (v).toLowerCase ()==="on"));if (this.rendered){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked;}

if (checked≠=this.checked){this.fireEvent («check», this, this. checked);if (this.handler){this.handler.call (this.scope—this, this, this. checked);}}

return this;}});

Ext.form.CheckboxGroup.prototype.onRender=Ext.form.CheckboxGroup.prototype.onRender.createSequence (function (ct, position){if (this.fireChangeOnLoad){var checked=false;this.eachItem (function (item){if (item.checked){checked=true;return false;}});if (checked){this.fireChecked ();}}});Ext.form.CheckboxGroup.override ({getBox:function (id){var box=null;this.eachItem (function (f){if (id===f—f.dataIndex===id—f.tag===id—f.id===id—f.getName ()===id){box=f;return false;}});return box;}});

Ext.form.ComboBox.prototype.initComponent=Ext.form.ComboBox.prototype.initComponent.createSequence (function (){this.initMerge ();if (!Ext.isEmpty (this.initSelectedIndex)&&this.store){this.setInitValueByIndex (this.initSelectedIndex);}else if (!Ext.isEmpty (this.value)&&this.store){this.setInitValue (this.value);}});Ext.form.ComboBox.prototype.onRender=Ext.form.ComboBox.prototype.onRender.createSequence (function (el){if (this.submitValue≠=false){this.getEl ().dom.setAttribute («name», this. uniqueName—this.id);this.getSelectionField ().render (this.el.parent ()—this.el);}

this.on («focus», function (el){this.oldValue=this.getValue ();var t=this.getEl ().dom.value?this.getEl ().dom.value.trim ():" «;this.oldText=(t===this.emptyText)?» «:t;});});Ext.form.ComboBox.prototype.initEvents=Ext.form.ComboBox.prototype.initEvents.createSequence (function (){this.keyNav.tab=function (){if (this.isExpanded ()—this.inEditor){this.onViewClick (false);}};});Ext.form.ComboBox.prototype.clearValue=Ext.form.ComboBox.prototype.clearValue.createSequence (function (){this.oldValue=null;this.oldText=null;});Ext.form.ComboBox.prototype.setValue=Ext.form.ComboBox.prototype.setValue.createSequence (function (){this.getSelectionField ().setValue (this.getSelectedIndex ());});Ext.form.ComboBox.override ({alwaysMergeItems:true, forceSelection: true, checkTab: function (e, me){if (!e.getKey){var t=e;e=me;me=t;}

if (e.getKey ()===e.TAB){if (this.isExpanded ()){this.onViewClick (false);}

if (!this.inEditor){this.triggerBlur ();}}}, initMerge: function (){if (this.mergeItems){if (this.store.getCount ()>0){this.doMerge ();}

if (this.store.getCount ()===0—this.alwaysMergeItems){this.store.on («load», this. doMerge, this,{single:!this.alwaysMergeItems});}}}, doMerge: function (){var mi;for (mi=this.mergeItems.getCount ()-1;mi>-1;mi—){var f=this.store.recordType.prototype.fields, dv=[], i=0;for (i;i

if (!Ext.isEmpty (this.displayField, false)){dv[this.displayField]=this.mergeItems.getAt (mi).data.text;}

if (!Ext.isEmpty (this.valueField, false)&&this.displayField≠=this.valueField){dv[this.valueField]=this.mergeItems.getAt (mi).data.value;}

this.store.insert (0,new this.store.recordType (dv));}}, addRecord: function (values){var rowIndex=this.store.data.length, record=this.insertRecord (rowIndex, values);return{index:rowIndex, record: record};}, addItem: function (text, value){var rowIndex=this.store.data.length, record=this.insertItem (rowIndex, text, value);return{index:rowIndex, record: record};}, insertRecord: function (rowIndex, values){this.store.clearFilter (true);values=values—{};var f=this.store.recordType.prototype.fields, dv={}, i=0;for (i;i

var record=new this.store.recordType (dv, values[this.store.metaId ()]), v;this.store.insert (rowIndex, record);for (v in values){record.set (v, values[v]);}

if (!Ext.isEmpty (this.store.metaId ())){record.set (this.store.metaId (), record. id);}

return record;}, insertItem: function (rowIndex, text, value){var f=this.store.recordType.prototype.fields, dv={}, i=0;for (i;i

if (!Ext.isEmpty (this.displayField, false)){dv[this.displayField]=text;}

if (!Ext.isEmpty (this.valueField, false)&&this.displayField≠=this.valueField){dv[this.valueField]=value;}

var record=new this.store.recordType (dv);this.store.insert (rowIndex, record);return record;}, removeByField: function (field, value){var index=this.store.find (field, value);if (index<0){return;}

this.store.remove (this.store.getAt (index));}, removeByIndex: function (index){if (index<0—index>=this.store.getCount ()){return;}

this.store.remove (this.store.getAt (index));}, removeByValue: function (value){this.removeByField (this.valueField, value);}, removeByText: function (text){this.removeByField (this.displayField, text);}, getSelectionField: function (){if (!this.selectedIndexField){this.selectedIndexField=new Ext.form.Hidden ({id:this.id+" _SelIndex", name: this. id+" _SelIndex" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. selectedIndexField);}

return this. selectedIndexField;}, getText: function (){return this.el.getValue ();}, getSelectedItem: function (){return{text:this.getText (), value: this. getValue ()};}, initSelect: false, setValueAndFireSelect: function (v){this.setValue (v);var r=this.findRecord (this.valueField, v);if (!Ext.isEmpty®){var index=this.store.indexOf®;this.getSelectionField ().setValue (this.getSelectedIndex ());this.initSelect=true;this.fireEvent («select», this, r, index);this.initSelect=false;}}, findRecordByText: function (prop, text){var record;if (this.store.getCount ()>0){this.store.each (function®{if (r.data[prop]==text){record=r;return false;}});}

return record;}, origFindRecord: Ext.form.ComboBox.prototype.findRecord, findRecord: function (prop, value){if (this.store.snapshot&&this.store.snapshot.getCount ()>0){var record;if (this.store.snapshot.getCount ()>0){this.store.snapshot.each (function®{if (r.data[prop]==value){record=r;return false;}});}

return record;}

return this. origFindRecord (prop, value);}, indexOfEx: function (record){if (this.store.snapshot&&this.store.snapshot.getCount ()>0){return this.store.snapshot.indexOf (record);}

return this.store.data.indexOf (record);}, getSelectedIndex: function (){var r=this.findRecord (this.forceSelection?this.valueField:this.displayField, this. getValue ());return (!Ext.isEmpty®)?this.indexOfEx®:-1;}, onSelect: function (record, index){if (this.fireEvent («beforeselect», this, record, index)≠=false){this.setValue (record.data[this.valueField—this.displayField]);this.collapse ();this.getSelectionField ().setValue (this.getSelectedIndex ());this.fireEvent («select», this, record, index);this.oldValue=this.getValue ();var t=this.getEl ().dom.value?this.getEl ().dom.value.trim ():" «;this.oldText=(t===this.emptyText)?» «:t;}}, setInitValue: function (value){if (this.store.getCount ()>0){this.setLoadedValue (value);}else{this.setValue (value);this.store.on („load“, this.setLoadedValue.createDelegate (this,[value]), this,{single:true});}}, setLoadedValue: function (value){this[this.fireSelectOnLoad?» setValueAndFireSelect" :" setValue" ](value);this.clearInvalid ();}, checkOnBlur: function (){var t=this.getEl ().dom.value?this.getEl ().dom.value.trim ():" «, v=this.getValue ();if (this.oldValue≠=v—(t≠=this.oldText&&t≠=this.emptyText)){if (!Ext.isEmpty (this.selValue)&&this.selText≠=t&&this.selValue===this.getValue ()){this.hiddenField.value=»" ;}

var val=this.el.dom.value, r=this.findRecordByText (this.displayField, val);if (!Ext.isEmpty®){this.onSelect (r, this.store.indexOf®, false, true);}else{if (this.forceSelection){if (Ext.isEmpty (this.findRecord (this.valueField, this. oldValue))){this.clearValue ();}else{this.setValue (this.oldValue);}}else{this.setValue (val);}}

this.getSelectionField ().setValue (this.getSelectedIndex ());}}, triggerBlur: function (){this.mimicing=false;Ext.getDoc ().un («mousewheel», this. mimicBlur, this);Ext.getDoc ().un («mousedown», this. mimicBlur, this);if (this.monitorTab&&this.el){this.el.un («keydown», this. checkTab, this);}

this.checkOnBlur ();Ext.form.TriggerField.superclass.onBlur.call (this);if (this.wrap){this.wrap.removeClass (this.wrapFocusClass);}}, onFocus: function (){Ext.form.TriggerField.superclass.onFocus.call (this);if (!this.mimicing){this.wrap.addClass (this.wrapFocusClass);this.mimicing=true;Ext.getDoc ().on («mousewheel», this. mimicBlur, this,{delay:10});Ext.getDoc ().on («mousedown», this. mimicBlur, this,{delay:10});if (this.monitorTab){this.el.on («keydown», this. checkTab, this);}}}, selectByIndex: function (index, fireSelect){if (index>=0){this[this.fireSelect?" setValueAndFireSelect" :" setValue" ](this.store.getAt (index).get (this.valueField—this.displayField));}}, setInitValueByIndex: function (index){if (this.store.getCount ()>0){this.setLoadedIndex (index);}else{this.store.on («load», this.setLoadedIndex.createDelegate (this,[index]), this,{single:true});}}, setLoadedIndex: function (index){this.selectByIndex (index, this. fireSelectOnLoad);this.clearInvalid ();}, onLoad: Ext.form.ComboBox.prototype.onLoad.createInterceptor (function (){if (this.mode==="single"){this.mode="local" ;}}), initList: Ext.form.ComboBox.prototype.initList.createSequence (function (){if (this.mode==="single" &&this.store.isLoaded){this.mode="local" ;}}), doForce: Ext. emptyFn});

Date.prototype.extadd=Date.prototype.add;Ext.DatePicker.prototype.initComponent=Ext.DatePicker.prototype.initComponent.createInterceptor (function (){if (!this.msadd){Date.prototype.msadd=Date.prototype.add;Date.prototype.add=function (){return this[typeof arguments[0]==="string" ?" extadd" :" msadd" ]. apply (this, arguments);};}});Ext.form.DateField.override ({setDisabledDates:function (dd){this.disabledDates=dd;this.disabledDatesRE=null;this.initDisabledDays ();if (this.menu){this.menu.picker.setDisabledDates (this.disabledDatesRE);}}, onTriggerClick: function (){if (this.disabled){return;}

if (Ext.isEmpty (this.menu)){this.menu=new Ext.menu.DateMenu ({hideOnClick:false, focusOnSelect: false});}

this.onFocus ();Ext.apply (this.menu.picker,{minDate:this.minValue, maxDate: this. maxValue, disabledDatesRE: this. disabledDatesRE, disabledDatesText: this. disabledDatesText, disabledDays: this. disabledDays, disabledDaysText: this. disabledDaysText, format: this. format, showToday: this. showToday, minText: String. format (this.minText, this. formatDate (this.minValue)), maxText: String. format (this.maxText, this. formatDate (this.maxValue))});if (this.cancelText){Ext.apply (this.menu.picker,{cancelText:this.cancelText});}

if (this.dayNames){Ext.apply (this.menu.picker,{dayNames:this.dayNames});}

if (this.monthNames){Ext.apply (this.menu.picker,{monthNames:this.monthNames});}

if (this.monthYearText){Ext.apply (this.menu.picker,{monthYearText:this.monthYearText});}

if (this.nextText){Ext.apply (this.menu.picker,{nextText:this.nextText});}

if (this.okText){Ext.apply (this.menu.picker,{okText:this.okText});}

if (this.prevText){Ext.apply (this.menu.picker,{prevText:this.prevText});}

if (this.startDay){Ext.apply (this.menu.picker,{startDay:this.startDay});}

if (this.todayText){Ext.apply (this.menu.picker,{todayText:this.todayText});}

if (this.todayTip){Ext.apply (this.menu.picker,{todayTip:this.todayTip});}

this.menu.on (Ext.apply ({}, this. menuListeners,{scope:this}));this.menu.picker.setValue (this.getValue ()—new Date ());this.menu.show (this.el," tl-bl?");this.menuEvents («on»);}});

Ext.form.FileUploadField=Ext.extend (Ext.form.TextField,{buttonText:" Browse…", buttonOnly: false, buttonOffset:3,readOnly:true, autoSize: Ext. emptyFn, actionMode:" wrap", initComponent: function (){Ext.form.FileUploadField.superclass.initComponent.call (this);this.addEvents («fileselected»);}, isIconIgnore: function (){return true;}, syncSize: function (){Ext.form.FileUploadField.superclass.syncSize.apply (this, arguments);this.fileInput.setWidth (this.button.getEl ().getWidth ()+(Ext.isIE?4:0));}, onRender: function (ct, position){Ext.form.FileUploadField.superclass.onRender.call (this, ct, position);this.wrap=this.el.wrap ({cls:" x-form-field-wrap x-form-file-wrap", style:" overflow: hidden;" +(Ext.isIE?" height:22px;" :" «)});this.el.addClass („x-form-file-text“);this.el.dom.removeAttribute („name“);this.createFileInput ();var btnCfg=Ext.applyIf (this.buttonCfg—{},{text:this.buttonText, disabled: this. disabled, iconCls: this. iconCls});this.button=new Ext. Button (Ext.apply (btnCfg,{renderTo:this.wrap, cls:» x-form-file-btn" +(btnCfg.iconCls?(btnCfg.text?" x-btn-text-icon" :" x-btn-icon"):" «)}));var fiWidth=this.button.getEl ().getWidth ()+(Ext.isIE?4:0);if (fiWidth>(Ext.isIE?4:0)){this.fileInput.setWidth (fiWidth);}

if (this.buttonOnly){this.el.setVisibilityMode (Ext.Element.DISPLAY);this.el.hide ();this.wrap.setWidth (this.button.getEl ().getWidth ());}

this.bindListeners ();this.resizeEl=this.positionEl=this.wrap;}, bindListeners: function (){this.fileInput.on ({scope:this, mouseenter: function (){this.button.addClass ([" x-btn-over" ," x-btn-focus" ]);}, mouseleave: function (){this.button.removeClass ([" x-btn-over" ," x-btn-focus" ," x-btn-click" ]);}, mousedown: function (){this.button.addClass («x-btn-click»);}, mouseup: function (){this.button.removeClass ([" x-btn-over" ," x-btn-focus" ," x-btn-click" ]);}, change: function (){var v=this.fileInput.dom.value, fileNameRegex=/[^\]*$/im, match=fileNameRegex.exec (v);if (match≠=null){v=match[0]; }

this.setValue (v);this.fireEvent («fileselected», this, v);}});}, createFileInput: function (){if (this.fileInput){this.fileInput.remove ();}

this.fileInput=this.wrap.createChild ({id:this.getFileInputId (), name: this.name—this.getFileInputId (), cls:" x-form-file", tag:" input", type:" file", size:1});if (this.buttonOnly&&this.button){var fiWidth=this.button.getEl ().getWidth ()+(Ext.isIE?4:0);if (fiWidth>(Ext.isIE?4:0)){this.fileInput.setWidth (fiWidth);}}

if (this.disabled){this.fileInput.dom.disabled=true;}}, getFileInputId: function (){return this. id+" -file" ;}, onResize: function (w, h){Ext.form.FileUploadField.superclass.onResize.call (this, w, h);this.wrap.setWidth (w);if (!this.buttonOnly){w=this.wrap.getWidth ()-this.button.getEl ().getWidth ()-this.buttonOffset;if (w>0){this.el.setWidth (w);}}}, onDestroy: function (){Ext.form.FileUploadField.superclass.onDestroy.call (this);Ext.destroy (this.fileInput, this. button, this. wrap);}, onDisable: function (){Ext.form.FileUploadField.superclass.onDisable.call (this);this.doDisable (true);}, onEnable: function (){Ext.form.FileUploadField.superclass.onEnable.call (this);this.doDisable (false);}, doDisable: function (disabled){this.fileInput.dom.disabled=disabled;this.button.setDisabled (disabled);}, preFocus: Ext. emptyFn, alignErrorIcon: function (){this.errorIcon.alignTo (this.wrap," tl-tr" ,[2,0]);}, reset: function (){this.createFileInput ();this.bindListeners ();Ext.form.FileUploadField.superclass.reset.call (this);}});Ext.reg («fileuploadfield», Ext.form.FileUploadField);

Ext.form.Hidden.override ({setValue:function (v){var temp=this.rendered?this.el.dom.value:this.value;this.value=v;if (this.rendered){this.el.dom.value=(v===null—v===undefined?" «:v);this.validate ();}

if (v≠temp){this.fireEvent («change»);}}});

Ext.form.HtmlEditor.override ({escapeValue:true, syncValue: function (){if (this.initialized){var bd=this.getEditorBody (), html=bd.innerHTML;if (Ext.isWebKit){var bs=bd.getAttribute («style»), m=bs.match (/text-align:(.*?);/i);if (m&&m[1]){html='

'+html+"

«;}}

html=this.cleanHtml (html);if (this.fireEvent („beforesync“, this, html)≠=false){this.el.dom.value=this.escapeValue?escape (html):html;this.fireEvent („sync“, this, html);}}}, setValue: function (v){Ext.form.HtmlEditor.superclass.setValue.call (this,(this.escapeValue&&this.rendered)?escape (v):v);this.pushValue ();return this;}, getValue: function (){this[this.sourceEditMode?» pushValue" :" syncValue" ]();var v=Ext.form.HtmlEditor.superclass.getValue.call (this);if (!this.rendered){return v;}

return this. escapeValue?unescape (v):v;}, toggleSourceEdit: function (sourceEditMode){if (sourceEditMode===undefined){sourceEditMode=!this.sourceEditMode;}

this.sourceEditMode=sourceEditMode===true;var btn=this.tb.items.get («sourceedit»);if (btn.pressed≠=this.sourceEditMode){btn.toggle (this.sourceEditMode);if (!btn.xtbHidden){return;}}

if (this.sourceEditMode){this.disableItems (true);this.syncValue ();if (this.escapeValue){this.el.dom.value=unescape (this.el.dom.value);}

this.iframe.className="x-hidden" ;this.el.removeClass («x-hidden»);this.el.dom.removeAttribute («tabIndex»);this.el.focus ();}else{if (this.initialized&&!this.readOnly){this.disableItems (false);}

this.pushValue ();if (this.escapeValue){this.el.dom.value=escape (this.el.dom.value);}

this.iframe.className="" ;this.el.addClass («x-hidden»);this.el.dom.setAttribute («tabIndex» ,-1);this.deferFocus ();}

var lastSize=this.lastSize;if (lastSize){delete this. lastSize;this.setSize (lastSize);}

this.fireEvent («editmodechange», this, this. sourceEditMode);}, pushValue: function (){if (this.initialized){var v=this.escapeValue?unescape (this.el.dom.value):this.el.dom.value;if (!this.activated&&v.length<1){v=this.defaultValue;}

if (this.fireEvent («beforepush», this, v)≠=false){this.getEditorBody ().innerHTML=v;if (Ext.isGecko){this.setDesignMode (false);}

this.setDesignMode (true);this.fireEvent («push», this, v);}}}, onEditorEvent: function (){if (Ext.isIE){this.currentRange=this.getDoc ().selection.createRange ();}

this.updateToolbar ();}, insertAtCursor: function (text){if (!this.activated){return;}

if (Ext.isIE){this.win.focus ();var doc=this.getDoc (), r=this.currentRange—doc.selection.createRange ();if®{r.pasteHTML (text);this.syncValue ();this.deferFocus ();}}else{this.win.focus ();this.execCmd («InsertHTML», text);this.deferFocus ();}}});

Ext.net.HyperLink=Ext.extend (Ext.form.Label,{cls:" «, url:» #", valueElement: function (){var textEl=document.createElement («a»);textEl.style.verticalAlign="middle" ;if (!Ext.isEmpty (this.cls, false)){textEl.className=this.cls;}

textEl.setAttribute («href», this. url);this.textEl=Ext.get (textEl);this.textEl.setOverflow=Ext.emptyFn;if (this.disabled){textEl.setAttribute («disabled» ," 1″);textEl.removeAttribute («href»);}

if (!Ext.isEmpty (this.target, false)){textEl.setAttribute («target», this. target);}

if (this.imageUrl){textEl.innerHTML='';}else{textEl.innerHTML=this.text?Ext.util.Format.htmlEncode (this.text):(this.html—" «);}

return textEl;}, setDisabled: function (disabled){Ext.net.HyperLink.superclass.setDisabled.apply (this, arguments);if (disabled){this.textEl.dom.setAttribute («disabled» ," 1″);this.textEl.dom.removeAttribute («href»);}else{this.textEl.dom.removeAttribute («disabled»);this.textEl.dom.setAttribute («href», this. url);}}, setImageUrl: function (imageUrl){this.imageUrl=imageUrl;this.textEl.dom.innerHTML='';}, setUrl: function (url){this.url=url;this.textEl.dom.setAttribute («href», this. url);}, setTarget: function (target){this.target=target;this.textEl.dom.setAttribute («target», this. target);}});Ext.reg («nethyperlink», Ext.net.HyperLink);

Ext.net.Image=Ext.extend (Ext.form.Label,{cls:" «, lazyLoad: false, monitorComplete: true, monitorPoll:200,allowPan:false, initComponent: function (){Ext.net.Image.superclass.initComponent.call (this);this.addEvents („resizerbeforeresize“ ,» resizerresize" ," pan" ," click" ," dblclick" ," complete" ," beforeload");this.imageProxy=new Image ();if (this.monitorComplete){if (this.loadMask){this.loadMask=Ext.apply ({msg:" Loading…", msgCls:" x-mask-loading" }, this. loadMask);this.on («beforeload», function (){if (this.rendered){this.getMaskEl ().mask (this.loadMask.msg, this.loadMask.msgCls);}else{this.loadMask.deferredMask=true;}});this.on («complete», function (){if (this.rendered){this.getMaskEl ().unmask (this.loadMask.removeMask);}else{this.loadMask.deferredMask=false;}}, this);}

this.checkTask=new Ext.util.DelayedTask (function (){if (this.imageProxy.complete){this.checkTask.cancel ();this.complete=true;if (this.allowPan&&this.rendered){if (this.xDelta—this.yDelta){this.wrap.dom.scrollLeft-=this.xDelta—0;this.wrap.dom.scrollTop-=this.yDelta—0;}}

this.fireEvent («complete», this);}else{this.checkTask.delay (this.monitorPoll);}}, this);if (!this.lazyLoad){this.imageProxy.src=this.imageUrl;this.fireEvent («beforeload», this);this.checkTask.delay (this.monitorPoll);}}}, getMaskEl: function (){if (this.ownerCt){return this.ownerCt.body?this.ownerCt.body:this.ownerCt.el;}

return this. wrap—this.el.parent ()—Ext.getBody ();}, getOriginalSize: function (){return{width:this.imageProxy.width, height: this.imageProxy.height};}, setSize: function (w, h){Ext.net.Image.superclass.setSize.call (this, w, h);if (this.wrap&&!this.allowPan){this.el.setSize (w, h);}}, onRender: function (ct, position){if (this.lazyLoad){this.imageProxy.src=this.imageUrl;if (this.monitorComplete){this.fireEvent («beforeload», this);this.checkTask.delay (this.monitorPoll);}}

if (!this.el){this.el=document.createElement («img»);this.el.id=this.getId ();this.el.src=this.imageUrl;this.el.style.border="none" ;if (this.altText){this.el.setAttribute («alt», this. altText);}

if (this.align&&this.align≠="notset"){this.el.setAttribute («align», this. align);}

if (!Ext.isEmpty (this.cls, false)){this.el.className=this.cls;}

this.el=Ext.get (this.el);this.el.setOverflow=Ext.emptyFn;}

Ext.net.Image.superclass.onRender.call (this, ct, position);this.lastSize={w:this.el.getWidth (), h: this.el.getHeight ()};this.el.on («resize», function (){var w=this.el.getWidth (), h=this.el.getHeight ();this.fireEvent («resize», this, w, h, this.lastSize.w, this.lastSize.h);this.lastSize={w:w, h: h};}, this);var w, h;if (this.allowPan—this.resizable){this.wrap=this.el.wrap ();this.positionEl=this.resizeEl=this.wrap;this.actionMode="wrap" ;w=this.width—this.el.getWidth ();h=this.height—this.el.getHeight ();this.wrap.setSize (w, h);if (!this.allowPan){this.el.setSize (w, h);}}

this.el.on («click», this. onClick, this);this.el.on («dblclick», this. onDblClick, this);if (this.allowPan){this.wrap.setOverflow («hidden»);this.el.on («mousedown», this. onMouseDown, this);this.el.setStyle («cursor» ," move");if (this.xDelta—this.yDelta){this.wrap.dom.scrollLeft-=this.xDelta—0;this.wrap.dom.scrollTop-=this.yDelta—0;}}

if (this.resizable){this.resizer=new Ext. Resizable (this.wrap, Ext. applyIf (this.resizeConfig—{},{handles:" all", wrap: this. allowPan}));this.resizer.on («beforeresize», function (r, e){return this. fireEvent («resizerbeforeresize», this, e);}, this);this.resizer.on («resize», function (r, width, height, e){if (!this.allowPan){this.el.setSize (width, height);}

this.fireEvent («resizerresize», this, width, height, e);}, this);}

if (this.loadMask&&this.loadMask.deferredMask){this.getMaskEl ().mask (this.loadMask.msg, this.loadMask.msgCls);}}, onClick: function (e, t){this.fireEvent («click», this, e, t);}, onDblClick: function (e, t){this.fireEvent («dblclick», this, e, t);}, onMouseDown: function (e){e.stopEvent ();this.mouseX=e.getPageX ();this.mouseY=e.getPageY ();Ext.getBody ().on («mousemove», this. onMouseMove, this);Ext.getDoc ().on («mouseup», this. onMouseUp, this);}, onMouseMove: function (e){e.stopEvent ();var x=e.getPageX (), y=e.getPageY ();if (e.within (this.wrap)){var xDelta=x-this.mouseX;var yDelta=y-this.mouseY;this.wrap.dom.scrollLeft-=xDelta;this.wrap.dom.scrollTop-=yDelta;this.fireEvent («pan», this, this.wrap.dom.scrollLeft, this.wrap.dom.scrollTop, xDelta, yDelta);}

this.mouseX=x;this.mouseY=y;}, onMouseUp: function (e){Ext.getBody ().un («mousemove», this. onMouseMove, this);Ext.getDoc ().un («mouseup», this. onMouseUp, this);}, getContentTarget: function (){return this. el;}, setImageUrl: function (imageUrl){this.imageUrl=imageUrl;if (this.rendered){this.el.dom.removeAttribute («width»);this.el.dom.removeAttribute («height»);this.el.dom.src=this.imageUrl;if (this.monitorComplete){delete this. imageProxy;this.imageProxy=new Image ();this.imageProxy.src=this.imageUrl;this.fireEvent («beforeload», this);this.checkTask.cancel ();this.checkTask.delay (this.monitorPoll);}}else{if (!this.lazyLoad){delete this. imageProxy;this.imageProxy=new Image ();this.imageProxy.src=this.imageUrl;if (this.monitorComplete){this.fireEvent («beforeload», this);this.checkTask.cancel ();this.checkTask.delay (this.monitorPoll);}}}}, setAlign: function (align){this.align=align;if (this.rendered){this.el.dom.setAttribute («align», this. align);}}, setAltText: function (altText){this.altText=altText;if (this.rendered){this.el.dom.setAttribute («altText», this. altText);}}, scroll: function (x, y){if (x){this.wrap.dom.scrollLeft-=x;}

if (y){this.wrap.dom.scrollTop-=y;}}, scrollTo: function (x, y){if (x—x===0){this.wrap.dom.scrollLeft=x;}

if (y—y===0){this.wrap.dom.scrollTop=y;}}, getCurrentScroll: function (){return{x:this.wrap.dom.scrollLef, y: this.wrap.dom.scrollTop};}});Ext.reg («netimage», Ext.net.Image);

Ext.form.Label.override ({iconAlign:" left", isFormField: true, reset: Ext. emptyFn, getName: Ext. emptyFn, validate: function (){return true;}, isValid: function (){return true;}, valueElement: function (){var textEl=document.createElement («span»);textEl.className="x-label-value" ;textEl.innerHTML=this.text?Ext.util.Format.htmlEncode (this.text):(this.html—" «);this.textEl=Ext.get (textEl);this.textEl.setOverflow=Ext.emptyFn;if (this.editor){if (Ext.isEmpty (this.editor.field)){this.editor.field={xtype:» textfield" };}

this.editor.target=textEl;this.editor=new Ext. Editor ({}, this. editor);}

return textEl;}, onRender: function (ct, position){if (!this.el){this.el=document.createElement (this.forId?" label" :" span");this.el.className="x-label" ;this.el.id=this.getId ();var img=document.createElement («img»);img.src=Ext.BLANK_IMAGE_URL;img.className="x-label-icon «+(this.iconCls—» «);if (Ext.isEmpty (this.iconCls)){img.style.display="none» ;}

if (this.iconAlign==="left"){this.el.appendChild (img);}

this.el.appendChild (this.valueElement ());if (this.iconAlign==="right"){this.el.appendChild (img);}

if (this.forId){this.el.setAttribute («for», this. forId);}

if (ct.hasClass («x-form-element»)){ct.setStyle («padding-top» ," 3px");}}

Ext.form.Label.superclass.onRender.call (this, ct, position);}, getContentTarget: function (){return this. textEl;}, getText: function (encode){return this. rendered?encode===true?Ext.util.Format.htmlEncode (this.textEl.dom.innerHTML):this.textEl.dom.innerHTML:this.text;}, setText: function (t, encode){this.text=t;if (this.rendered){var x=encode≠=false?Ext.util.Format.htmlEncode (t):t;this.textEl.dom.innerHTML=(Ext.isEmpty (t)&&!Ext.isEmpty (this.emptyText))?this.emptyText:!Ext.isEmpty (this.format)?String.format (this.format, x):x;}

return this;}, setIconClass: function (cls){var oldCls=this.iconCls;this.iconCls=cls;if (this.rendered){var img=this.el.child («img.x-label-icon»);img.replaceClass (oldCls, this. iconCls);img.dom.style.display=(cls==="")?" none" :" inline" ;}}});

Ext.net.MultiField=Ext.extend (Ext.form.Field,{defaultAutoCreate:{tag:" div" }, initValue: Ext. emptyFn, setValue: Ext. emptyFn, getValue: Ext. emptyFn, initComponent: function (){Ext.net.MultiField.superclass.initComponent.call (this);this.on («afterrender», function (){var h=0,fh, i;if (this.fields.length>0){for (i=0;ih){h=fh;}}}

if (h≠=0){this.setHeight (h);}}, this);}, onRender: function (ct, position){Ext.net.MultiField.superclass.onRender.call (this, ct, position);if (this.ownerCt){this.ownerCt.bubble (function (c){if (c.form){this.form=c.form;return false;}}, this);}

this.fields=this.fields—[]; if (!Ext.isArray (this.fields)){this.fields=[this.fields];}

this.el.setStyle («border» ," none");var h=0,fh;if (this.fields.length>0){var fields=[], i;for (i=0;i

field.render (fieldCt);fields.push (field);if (this.form&&field.isFormField){this.form.items.add (field);}

fh=(field.positionEl—field.getEl ()).getHeight ();if (fh>h){h=fh;}}

this.fields=fields;}

if (h≠=0){this.setHeight (h);}}, onResize: function (w, h){if (!Ext.isNumber (w)—w===0){return;}

if (!this.rendered){this.width=w;return;}

if (this.fields&&this.fields.length>0){var i, f, pw, aw, el, percentWidth=0,sum=0,ratio;if (w<1){return;}

pw=w;for (i=0;i

pw=pw<0?0:pw;for (i=0;i

w=Math.floor (ratio*pw);sum+=w;if (percentWidth===100&&i===(this.fields.length-1)){w+=(pw-sum);}

el=f.positionEl—f.getEl ();w=w-el.getMargins («lr»)-el.parent ().getPadding («lr»);f.setWidth (w);}}}}, beforeDestroy: function (){Ext.Panel.superclass.beforeDestroy.call (this);var i=this.fields.length-1;for (i;i>=0;i—){Ext.destroy (this.fields[i]);}}, addClass: function (cls){Ext.net.MultiField.superclass.addClass.call (this, cls);var i;for (i=0;i

return false;}, isValid: function (preventMark){var isValid=true;for (i=0;i

return isValid;}, markInvalid: function (msg){var i;for (i=0;i

return isValid;}});Ext.reg («netmultifield», Ext.net.MultiField);

Ext.form.CompositeField.override ({buildLabel:function (segments){var label="" ;Ext.each (segments, function (segment){if (!Ext.isEmpty (segment, false)){label+=(!Ext.isEmpty (label, false)?this.labelConnector:" «)+segment;}}, this);return label;}, initComponent: function (){if (!this.items){this.items=[]; }

var labels=[], items=this.items, item, i=0,j;for (i, j=items.length;i

this.fieldLabel=this.fieldLabel—this.buildLabel (labels);this.fieldErrors=new Ext.util.MixedCollection (true, function (item){return item. field;});this.fieldErrors.on ({scope:this, add: this. updateInvalidMark, remove: this. updateInvalidMark, replace: this. updateInvalidMark});Ext.form.CompositeField.superclass.initComponent.apply (this, arguments);this.innerCt=new Ext. Container ({layout:" hbox", items: this. items, cls:" x-form-composite", layoutConfig: this. layoutConfig, autoDoLayout: this. autoDoLayout, defaultMargins:" 0 3 0 0″ });this.fields=this.innerCt.findBy (function (c){return c. isFormField;}, this);this.items=new Ext.util.MixedCollection ();this.items.addAll (Ext.isArray (items)?items:[items]);Ext.each (items, function (item){if (item&&item.on){if (!item.getName){item.getName=Ext.emptyFn;}

item.on («show», function (){this.doLayout ();}, this);item.on («hide», function (){this.doLayout ();}, this);}}, this);}, onRender: function (ct, position){if (!this.el){var innerCt=this.innerCt;innerCt.render (ct);this.el=innerCt.getEl ();if (this.combineErrors){this.eachItem (function (field){Ext.apply (field,{markInvalid:this.onFieldMarkInvalid.createDelegate (this,[field], 0), clearInvalid: this.onFieldClearInvalid.createDelegate (this,[field], 0)});});}

var l=this.el.parent ().parent ().child («label», true);if (l&&this.fields&&this.fields.length>0){l.setAttribute («for», this.items.items[0]. id);}}

Ext.form.CompositeField.superclass.onRender.apply (this, arguments);}, isField: function (c){return!!c.setValue&&!!c.getValue&&!!c.markInvalid&&!!c.clearInvalid;}, eachItem: function (fn, scope){if (this.items&&this.items.each){var i=0,len;for (i, len=this.items.length;i

this.disabled=disabled;}, onFieldMarkInvalid: function (field, message){var name=field.fieldLabel—field.dataIndex—(field.getName?field.getName ():" «), error={field:name, errorName: field. fieldLabel—name, error: message};this.fieldErrors.replace (name, error);field.el.addClass (field.invalidClass);}, onFieldClearInvalid: function (field){this.fieldErrors.removeKey (field.fieldLabel—field.dataIndex—(field.getName?field.getName ():» «));field.el.removeClass (field.invalidClass);}, sortErrors: function (){var fields=this.items;this.fieldErrors.sort („ASC“, function (a, b){var findByName=function (key){return function (field){return (field.fieldLabel—field.dataIndex—(field.getName?field.getName ():» «))===key;};};var aIndex=fields.findIndexBy (findByName (a.field)), bIndex=fields.findIndexBy (findByName (b.field));return aIndex

Ext.form.TextField.prototype.initComponent=Ext.form.TextField.prototype.initComponent.createSequence (function (){this.addEvents («iconclick»);});Ext.override (Ext.form.TextField,{truncate:true, afterRender: function (){Ext.form.TextField.superclass.afterRender.call (this);if (this.maxLength≠=Number.MAX_VALUE&&this.truncate===true){this.setMaxLength (this.maxLength);}

if (this.iconCls){var iconCls=this.iconCls;delete this. iconCls;this.setIconCls (iconCls);}}, setMaxLength: function (val){this.el.dom.setAttribute («maxlength», val);this.maxLength=val;}, isIconIgnore: function (){return!!this.el.up («.x-menu-list-item»);}, renderIconEl: function (){if (!this.wrap){this.wrap=this.el.wrap ();this.positionEl=this.wrap;}

this.wrap.addClass («x-form-field-wrap»);this.wrap.applyStyles ({position:" relative" });this.el.addClass («x-textfield-icon-input»);this.icon=Ext.DomHelper.append (this.el.up («div.x-form-field-wrap»)—this.wrap,{tag:" div", style:" position: absolute" }, true);if (this.initialConfig.width){delete this. lastSize;this.setWidth (this.initialConfig.width);}

this.icon.on («click», function (e, t){this.fireEvent («iconclick», this, e, t);}, this);}, setIconCls: function (iconCls){if (this.isIconIgnore ()){return;}

if (!this.iconCls){this.renderIconEl ();}

this.iconCls=iconCls;this.icon.dom.className="x-textfield-icon «+iconCls;this.syncSize ();}, filterKeys: function (e){if (e.ctrlKey){return;}

var k=e.getKey ();if ((Ext.isGecko—Ext.isOpera)&&(e.isNavKeyPress ()—k===e.BACKSPACE—(k===e.DELETE&&e.button===-1))){return;}

var cc=String.fromCharCode (e.getCharCode ());if (!Ext.isGecko&&!Ext.isOpera&&e.isSpecialKey ()&&!cc){return;}

if (!this.maskRe.test (cc)){e.stopEvent ();}}});

Ext.override (Ext.form.TextArea,{initComponent:function (){Ext.form.TextArea.superclass.initComponent.call (this);if (this.maxLength≠=Number.MAX_VALUE&&this.truncate===true){this.on («invalid», function (){if (this.getValue ().length>this.maxLength){this.setValue (this.getValue ().substr (0,this.maxLength));}});}}});

Ext.net.TriggerField=Ext.extend (Ext.form.TriggerField,{standardTrigger:false, initTrigger: function (){var ts=this.trigger.select («.x-form-trigger», true), triggerField=this;this.wrap.setStyle («overflow» ," hidden");ts.each (function (t, all, index){t.hide=function (){var w=triggerField.wrap.getWidth ();this.dom.style.display="none" ;triggerField.el.setWidth (w-triggerField.trigger.getWidth ());};t.show=function (){var w=triggerField.wrap.getWidth ();this.dom.style.display="" ;this.dom.removeAttribute («hidden»);triggerField.el.setWidth (w-triggerField.trigger.getWidth ());};t.on («click», this. onCustomTriggerClick, this,{index:index, t: t, tag: t. getAttributeNS («ext» ," tid"), preventDefault: true});t.addClassOnOver («x-form-trigger-over»);t.addClassOnClick («x-form-trigger-click»);}, this);this.triggers=ts.elements;}});Ext.reg («nettrigger», Ext.net.TriggerField);

Ext.net.MultiCombo=Ext.extend (Ext.form.ComboBox,{delimiter:" ,", wrapBySquareBrackets: false, valueField:" value", selectionMode:" checkbox", normalizeStringValues: function (s){if (!Ext.isEmpty (s, false)){var values=[], re=/^[{1}-]{1}$/g;s=s.toString ().replace (re," «);Ext.each (s.split (this.delimiter), function (item){values.push (item.trim ());});s=values.join (this.delimiter);}

return s;}, initSelection: function (selection){if (Ext.isEmpty (selection)){return;}

if (!this.view){this.selectionPredefined=selection;}

var getValuesFromSelection=(function (selection){var values=[]; Ext. each (selection, function (item){if (!Ext.isEmpty (item.value, false)){values.push (item.value);}}, this);return values. join (this.delimiter);}).createDelegate (this, undefined, true), getAllValuesFromSelection=(function (selection){var values=[]; Ext. each (selection, function (item){if (!Ext.isEmpty (item.value, false)){values.push (item.value);}else if (!Ext.isEmpty (item.index)){var r=this.store.getAt (item.index);if (!Ext.isEmpty®){values.push (r.get (this.valueField));}}}, this);return values. join (this.delimiter);}).createDelegate (this, undefined, true), setInitValues=(function (selection){var values=getAllValuesFromSelection (selection);if (!Ext.isEmpty (values, false)){this.setValue (values);}

if (this.fireSelectOnLoad){this.fireEvent («select», this, this. getSelectedRecords ());}

this.clearInvalid ();}).createDelegate (this, undefined, true);if (this.store.getCount ()>0){setInitValues (selection);}else{var values=getValuesFromSelection (selection);if (!Ext.isEmpty (values, false)){this.setValue (values);}

this.store.on («load», setInitValues. createDelegate (this,[selection]), this,{single:true});}}, initComponent: function (){this.editable=false;if (!this.tpl){this.tpl='

'+''+'
{'+this.displayField+'}

';this.tpl=new Ext. XTemplate (this.tpl,{getItemClass:(function (){if (this.selectionMode==="selection"){return" x-mcombo-nimg-item" ;}

return" x-mcombo-img-item" ;}).createDelegate (this), getImgClass:(function (values){if (this.selectionMode==="selection"){return" «;}

var found=false;Ext.each (this.checkedRecords, function (record){if (values[this.valueField]==record.get (this.valueField)){found=true;return false;}}, this);return found?" x-grid3-check-col-on" :" x-grid3-check-col" ;}).createDelegate (this,[], true)});}

this.checkedRecords=[]; Ext.net.MultiCombo.superclass.initComponent.apply (this, arguments);if (this.selectionPredefined){this.initSelection (this.selectionPredefined);}

this.on («beforequery», this. onBeforeQuery);}, clearValue: function (){Ext.net.MultiCombo.superclass.clearValue.call (this);this.checkedRecords=[];delete this. selectionPredefined;this.store.clearFilter ();this.store.fireEvent («datachanged», this. store);this.saveSelection ();}, getText: function (){var s=this.getValue (this.displayField).replace (new RegExp (RegExp.escape (this.delimiter)," g"), this. delimiter+" «);if (this.wrapBySquareBrackets){s="[» +s+" ]" ;}

return s;}, getValue: function (field){var value=[]; Ext. each (this.checkedRecords, function (record){value.push (record.get (field—this.valueField));}, this);return value. join (this.delimiter);}, setValue: function (v){if (v){v=this.normalizeStringValues (v);this.store.clearFilter ();var values=v.split (this.delimiter), unselected=[]; Ext. each (this.checkedRecords, function®{var found=false;Ext.each (values, function (value){if (r.get (this.valueField)==value){found=true;return false;}}, this);if (!found){unselected.push®;}}, this);this.checkedRecords=[]; Ext. each (unselected, function®{this.deselectRecord®;}, this);this.store.each (function®{Ext.each (values, function (value){if (r.get (this.valueField)==value){this.checkedRecords.push®;this.selectRecord®;return false;}}, this);}, this);this.value=this.getValue ();this.setRawValue (this.getText ());if (this.hiddenField){this.hiddenField.value=this.value;}

if (this.el){this.el.removeClass (this.emptyClass);}

this.saveSelection ();}else{this.clearValue ();}}, onBeforeQuery: function (qe){qe.query=this.normalizeStringValues (qe.query);}, checkOnBlur: Ext. emptyFn, beforeBlur: Ext. emptyFn, triggerBlur: function (){this.store.clearFilter ();Ext.net.MultiCombo.superclass.triggerBlur.call (this);}, initList: function (){Ext.net.MultiCombo.superclass.initList.call (this);if (this.selectionPredefined){this.initSelection (this.selectionPredefined);delete this. selectionPredefined;}

if (this.selectionMode≠="checkbox"){this.view.overClass="x-multi-selected" ;this.view.mon (this.view.getTemplateTarget (),{" mouseover" :this.view.onMouseOver," mouseout" :this.view.onMouseOut, scope: this. view});}}, onSelect: function (record, index){if (this.fireEvent («beforeselect», this, record, index)≠=false){if (this.checkedRecords.indexOf (record)===-1){this.checkedRecords.push (record);}else{this.checkedRecords.remove (record);this.deselectRecord (record);}

if (this.store.isFiltered ()){this.doQuery (this.allQuery);}

this.setValue (this.getValue ());this.fireEvent («select», this, record, index);}}, isSelected: function (record){if (Ext.isNumber (record)){record=this.store.getAt (record);}

if (Ext.isString (record)){Ext.each (this.store.getRange (), function®{if (r.get (this.valueField)==record){record=r;return false;}}, this);}

return this.checkedRecords.indexOf (record)≠=-1;}, select: function (index, scrollIntoView){if (this.selectionMode==="checkbox"){Ext.net.MultiCombo.superclass.select.call (this, index, scrollIntoView);}}, deselectRecord: function (record){if (!this.view){return;}

switch (this.selectionMode){case" checkbox" :this.view.refreshNode (this.store.indexOf (record));break;case" selection" :if (this.view.isSelected (this.store.indexOf (record))){this.view.deselect (this.store.indexOf (record));}

break;case" all" :if (this.view.isSelected (this.store.indexOf (record))){this.view.deselect (this.store.indexOf (record));}

this.view.refreshNode (this.store.indexOf (record));break;}}, selectRecord: function (record){if (!this.view){return;}

switch (this.selectionMode){case" checkbox" :this.view.refreshNode (this.store.indexOf (record));break;case" selection" :if (!this.view.isSelected (this.store.indexOf (record))){this.view.select (this.store.indexOf (record), true);}

break;case" all" :if (!this.view.isSelected (this.store.indexOf (record))){this.view.select (this.store.indexOf (record), true);}

this.view.refreshNode (this.store.indexOf (record));break;}}, selectAll: function (){this.checkedRecords=[]; this.store.each (function (record){this.checkedRecords.push (record);}, this);this.doQuery (this.allQuery);this.setValue (this.getValue ());}, clearSelections: function (){this.clearValue ();}, deselectItem: function (record){if (Ext.isNumber (record)){record=this.store.getAt (record);}

if (Ext.isString (record)){Ext.each (this.store.getRange (), function®{if (r.get (this.valueField)==record){record=r;return false;}}, this);}

if (this.checkedRecords.indexOf (record)≠=-1){this.checkedRecords.remove (record);this.deselectRecord (record);if (this.store.isFiltered ()){this.doQuery (this.allQuery);}

this.setValue (this.getValue ());}}, selectItem: function (record){if (Ext.isNumber (record)){record=this.store.getAt (record);}

if (Ext.isString (record)){Ext.each (this.store.getRange (), function®{if (r.get (this.valueField)==record){record=r;return false;}}, this);}

if (this.checkedRecords.indexOf (record)===-1){this.checkedRecords.push (record);this.selectRecord (record);if (this.store.isFiltered ()){this.doQuery (this.allQuery);}

this.setValue (this.getValue ());}}, getSelectedRecords: function (){return this. checkedRecords;}, getSelectedIndexes: function (){var indexes=[]; Ext. each (this.checkedRecords, function (record){indexes.push (this.store.indexOf (record));}, this);return indexes;}, getSelectedValues: function (){var values=[]; Ext. each (this.checkedRecords, function (record){values.push (record.get (this.valueField));}, this);return values;}, getSelectedText: function (){var text=[]; Ext. each (this.checkedRecords, function (record){text.push (record.get (this.displayField));}, this);return text;}, getSelection: function (){var selection=[]; Ext. each (this.checkedRecords, function (record){selection.push ({text:record.get (this.displayField), value: record. get (this.valueField), index: this.store.indexOf (record)});}, this);return selection;}, saveSelection: function (){this.getSelectionField ().setValue (Ext.encode (this.getSelection ()));}, getSelectionField: function (){if (!this.selectionField){this.selectionField=new Ext.form.Hidden ({id:this.id+" _Selection", name: this. id+" _Selection" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. selectionField);}

return this. selectionField;}});Ext.reg («netmulticombo», Ext.net.MultiCombo);

Ext.form.NumberField.prototype.setValue=Ext.form.NumberField.prototype.setValue.createSequence (function (v){if (this.trimTrailedZeros===false){var value=this.getValue (), strValue;if (!Ext.isEmpty (value, false)){strValue=value.toFixed (this.decimalPrecision).replace («.», this. decimalSeparator);this.setRawValue (strValue);}}});Ext.form.NumberField.override ({negativeText:" Negative numbers are not allowed (you entered '{0}')", getErrors: function (value){var errors=Ext.form.NumberField.superclass.getErrors.apply (this, arguments);value=value—this.processValue (this.getRawValue ());if (value.length<1){return errors;}

value=String (value).replace (this.decimalSeparator," .");if (isNaN (value)){errors.push (String.format (this.nanText, value));}

var num=this.parseValue (value);if (num

if (num>this.maxValue){errors.push (String.format (this.maxText, this. maxValue));}

if (!this.allowNegative&&num<0){errors.push (String.format (this.negativeText, value));}

return errors;}});

Ext.net.DropDownField=Ext.extend (Ext.net.TriggerField,{lazyInit:true, componentAlign:" tl-bl?", allowBlur: false, mode:" text", syncValue: Ext. emptyFn, initComponent: function (){Ext.net.DropDownField.superclass.initComponent.call (this);this.addEvents («expand» ," collapse");var cn=[], triggerCfg, isSimple;triggerCfg={tag:" img", src: Ext. BLANK_IMAGE_URL, cls:" x-form-trigger" };if (!Ext.isEmpty (this.triggerClass, false)){triggerCfg.cls+=" «+this.triggerClass;}

if (Ext.net.StringUtils.startsWith (this.triggerClass—" «,» x-form-simple")){if (this.triggersConfig&&this.triggersConfig.length>0){triggerCfg.cls+=" shift-trigger" ;}

isSimple=true;}

if (this.hideTrigger){Ext.apply (triggerCfg,{style:" display: none", hidden: true});this.hideTrigger=false;}

if (isSimple){this.addClass («clear-right»);}

if (this.triggersConfig){this.triggerConfig.cn.push (triggerCfg);}else{cn.push (triggerCfg);this.triggerConfig={tag:" span", cls:" x-form-twin-triggers", cn: cn};}}, initTrigger: function (){Ext.net.DropDownField.superclass.initTrigger.call (this);this.triggers[this.triggers.length-1]. removeListener («click», this. onCustomTriggerClick, this);this.triggers[this.triggers.length-1].on («click», this. onTriggerClick, this);}, initDropDownComponent: function (){if (this.component&&!this.component.render){this.component.floating=true;this.component=new Ext.ComponentMgr.create (this.component," panel");}

var renderTo=this.componentRenderTo—Ext.net.ResourceMgr.getAspForm ()—document.body, zindex=parseInt (Ext.fly (renderTo).getStyle («z-index»), 10);if (this.ownerCt&&!zindex){this.findParentBy (function (ct){zindex=parseInt (ct.getPositionEl ().getStyle («z-index»), 10);return!!zindex;});}

this.component.setWidth (this.component.initialConfig.width—this.getWidth ());this.component.dropDownField=this;this.component.render (renderTo);this.component.hide ();this.first=true;this.component.getPositionEl ().position («absolute» ,(zindex—12 000)+5);if (this.component.initialConfig.height){this.component.setHeight (this.component.initialConfig.height);}

this.syncValue (this.getValue (), this. getText ());}, onRender: function (ct, position){Ext.net.DropDownField.superclass.onRender.call (this, ct, position);if (Ext.isGecko){this.el.dom.setAttribute («autocomplete» ," off");}

if (!this.lazyInit){this.initDropDownComponent ();}else{this.on («focus», this. initDropDownComponent, this,{single:true});}

if (this.mode≠="text"){this.getUnderlyingValueField ().render (ct);}}, isExpanded: function (){return this. component&&this.component.isVisible&&this.component.isVisible ();}, collapse: function (){if (!this.isExpanded ()){return;}

this.component.hide ();if (this.allowBlur===false){Ext.getDoc ().un («mousewheel», this. collapseIf, this);Ext.getDoc ().un («mousedown», this. collapseIf, this);}

this.fireEvent («collapse», this);}, collapseIf: function (e){if (!e.within (this.wrap)&&!e.within (this.component.el)){this.collapse ();}}, expand: function (){if (this.isExpanded ()—!this.hasFocus){return;}

if (this.first){this.doResize (this.el.getWidth ()+this.getTriggerWidth ());delete this. first;}else if (this.bufferSize){this.doResize (this.bufferSize);delete this. bufferSize;}

var el=this.component.getPositionEl ();el.setLeft (0);el.setTop (0);if (Ext.isIE6—Ext.isIE7){this.component.show ();}

el.alignTo (this.wrap, this. componentAlign);if (!(Ext.isIE6—Ext.isIE7)){this.component.show ();}

if (this.allowBlur===false){this.mon (Ext.getDoc (),{scope:this, mousewheel: this. collapseIf, mousedown: this. collapseIf});}

this.fireEvent («expand», this);}, onTriggerClick: function (){if (this.readOnly—this.disabled){return;}

if (this.isExpanded ()){this.collapse ();}else{this.onFocus ({});this.expand ();}

this.el.focus ();}, validateBlur: function (){return!this.component—!this.component.isVisible ();}, onResize: function (w, h){Ext.net.DropDownField.superclass.onResize.apply (this, arguments);if (this.isVisible ()&&this.component&&this.componentAlign.render){this.doResize (w);}else{this.bufferSize=w;}}, doResize: function (w){if (!Ext.isDefined (this.component.initialConfig.width)){this.component.setWidth (w);}}, checkTab: function (me, e){if (!this.isExpanded ()&&e.getKey ()===e.TAB){this.triggerBlur ();}}, onDestroy: function (){if (this.component&&this.component.rendered){this.component.destroy ();}

if (this.underlyingValueField&&this.underlyingValueField.rendered){this.underlyingValueField.destroy ();}

Ext.net.DropDownField.superclass.onDestroy.call (this);}, setValue: function (value, text, collapse){if (this.mode==="text"){collapse=text;text=value;}

Ext.net.DropDownField.superclass.setValue.apply (this,[text]);this.getUnderlyingValueField ().setValue (value);if (!this.isExpanded ()){this.syncValue (value, text);}

if (collapse≠=false){this.collapse ();}

return this;}, setRawValue: function (value, text){Ext.net.DropDownField.superclass.setRawValue.call (this, value);this.getUnderlyingValueField ().setValue (value);if (!this.isExpanded ()){this.syncValue (value, text);}

return this;}, initEvents: function (){Ext.net.DropDownField.superclass.initEvents.call (this);this.keyNav=new Ext. KeyNav (this.el,{" down" :function (e){if (!this.isExpanded ()){this.onTriggerClick ();}}," esc" :function (e){this.collapse ();}," tab" :function (e){this.collapse ();return true;}, scope: this, doRelay: function (e, h, hname){if (hname==="down" —this.scope.isExpanded ()){var relay=Ext.KeyNav.prototype.doRelay.apply (this, arguments);if (!Ext.isIE&&Ext.EventManager.useKeydown){this.scope.fireKey (e);}

return relay;}

return true;}, forceKeyDown: true, defaultEventAction:" stopEvent" });}, getUnderlyingValueField: function (){if (!this.underlyingValueField){this.underlyingValueField=new Ext.form.Hidden ({id:this.id+" _Value", name: this. id+" _Value", value: this. underlyingValue—" «});this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. underlyingValueField);}

return this. underlyingValueField;}, getText: function (){return Ext.net.DropDownField.superclass.getValue.call (this);}, getValue: function (){return this. getUnderlyingValueField ().getValue ();}, getRawValue: function (){return this. getValue ();}, reset: function (){if (this.isTextMode ()){this.setValue (this.originalText, false);}else{this.setValue (this.originalValue, this. originalText, false);}

this.clearInvalid ();this.applyEmptyText ();}, isTextMode: function (){return this. mode==="text" ;}, initValue: function (){Ext.net.DropDownField.superclass.initValue.call (this);if (this.text≠=undefined){if (this.isTextMode ()){this.setValue (this.text, false);}else{this.setValue (this.getValue (), this. text, false);}}

this.originalText=this.getText ();}, clearValue: function (){this.setRawValue (««,» «);this.applyEmptyText ();}});Ext.reg («netdropdown», Ext.net.DropDownField);

Ext.ns («Ext.ux»);Ext.ux.FieldLabeler=(function (){var getParentProperty=function (propName){var p;for (p=this.ownerCt;p;p=p.ownerCt){if (p[propName]){return p[propName]; }}};return{init:function (f){f.labeler=this;f.onRender=f.onRender.createSequence (this.onRender);}, onRender: function (){if (this.ownerCt){if (this.ownerCt.layout instanceof Ext.layout.FormLayout—(this.ownerCt.el&&this.ownerCt.el.hasClass («x-form-composite»))){delete this. labeler;return;}}

this.onResize=this.labeler.onResize;this.onDestroy=this.onDestroy.createSequence (this.labeler.onDestroy);var isToolbar=(this.wrap—this.el).up («.x-toolbar»);this.resizeEl=(this.wrap—this.el).wrap ({cls:" x-form-element", style:(Ext.isIE6—Ext.isIE7)&&!isToolbar?" position: absolute;overflow:visible;left:0;" :" «});this.positionEl=this.itemCt=this.resizeEl.wrap ({cls:» x-form-item «, style:(isToolbar?» margin-bottom:0px;" :" «)+(Ext.isIE&&isToolbar?» margin-top:1px;" :" «)});if (this.nextSibling ()){this.margins=Ext.apply ({top:0,right:0,bottom:this.positionEl.getMargins («b»), left:0}, this. margins);}

this.actionMode="itemCt" ;if (!Ext.isDefined (this.hideLabels)){this.hideLabels=getParentProperty.call (this," hideLabels");}

if (this.hideLabels){this.resizeEl.setStyle («padding-left» ," 0px");return;}

if (!Ext.isDefined (this.labelSeparator)){this.labelSeparator=getParentProperty.call (this," labelSeparator");}

if (!Ext.isDefined (this.labelPad)){this.labelPad=getParentProperty.call (this," labelPad");}

if (!Ext.isDefined (this.labelAlign)){this.labelAlign=getParentProperty.call (this," labelAlign")—" left" ;}

this.itemCt.addClass («x-form-label-» +this.labelAlign);if (this.labelAlign==="top"){if (!this.labelWidth){this.labelWidth="auto" ;}

this.resizeEl.setStyle («padding-left» ," 0px");}else{if (!Ext.isDefined (this.labelWidth)){this.labelWidth=getParentProperty.call (this," labelWidth")—100;}

if ((Ext.isIE6—Ext.isIE7)&&isToolbar){this.resizeEl.setStyle («padding-left» ,(this.labelPad—5)+" px");}else{this.resizeEl.setStyle («padding-left» ,(this.labelWidth+(this.labelPad—5))+" px");}}

this.label=this.itemCt.insertFirst ({tag:" label", cls:" x-form-item-label", style:{width:this.labelWidth+" px" }, html: this. fieldLabel+(this.labelSeparator—" :")});}, onResize: function (w, h){Ext.form.Field.prototype.onResize.apply (this, arguments);if (w){w-=this.resizeEl.getPadding («l»);if (this.getTriggerWidth){this.wrap.setWidth (w);this.el.setWidth (w-this.getTriggerWidth ());}else{this.el.setWidth (w);}}

if (h&&(this.el.dom.tagName.toLowerCase ()==="textarea" —Ext.isIE6—Ext.isIE7)){h=this.resizeEl.getHeight (true);if (!this.hideLabels&&(this.labelAlign==="top")){h-=this.label.getHeight ();}

if (!Ext.isIE6&&!Ext.isIE7){this.el.setHeight (h);}else{this.el.up («.x-form-item»).setHeight (h);}}}, onDestroy: function (){this.itemCt.remove ();}};})();

Ext.override (Ext.menu.Menu,{enableScrolling:false, lastTargetIn: function (cmp){return Ext. fly (cmp.getEl?cmp.getEl ():cmp).contains (this.trg);}, render: function (ct, position){if (!ct&&this.floating&&this.renderToForm===true){ct=Ext.net.ResourceMgr.getAspForm ()—Ext.getBody ();}

Ext.menu.Menu.superclass.render.call (this, ct, position);}});Ext.override (Ext.layout.MenuLayout,{doAutoSize:function (){var ct=this.container, w=ct.width;if (ct.floating){if (w){ct.setWidth (w);}else if (Ext.isIE){ct.setWidth (Ext.isStrict&&(!Ext.isIE6)?'auto':ct.minWidth);var el=ct.getEl (), t=el.dom.offsetWidth;ct.setWidth (ct.getLayoutTarget ().getWidth ()+el.getFrameWidth ('lr'));}}}});

Ext.menu.CheckItem.prototype.onRender=Ext.menu.CheckItem.prototype.onRender.createSequence (function (el){this.getCheckedField ().render (Ext.net.ResourceMgr.getAspForm ()—this.el.parent ()—this.el);});Ext.menu.CheckItem.override ({getCheckedField:function (){if (!this.checkedField){this.checkedField=new Ext.form.Hidden ({id:this.id+" _Checked", name: this. id+" _Checked" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. checkedField);}

return this. checkedField;}});

Ext.override (Ext.menu.ColorMenu,{initComponent:function (){Ext.apply (this,{plain:true, showSeparator: false, items: this. palette=new Ext. ColorPalette (this.initialConfig.palette—{})});var restoreWindowProp=!Ext.isEmpty (window[this.palette.id]);this.palette.purgeListeners ();if (restoreWindowProp){window[this.palette.id]=this.palette;}

Ext.menu.ColorMenu.superclass.initComponent.call (this);this.relayEvents (this.palette,[" select" ]);this.on («select», this. menuHide, this);if (this.handler){this.on («select», this. handler, this. scope—this);}}});

Ext.override (Ext.menu.DateMenu,{initComponent:function (){this.on («beforeshow», this. onBeforeShow, this);this.strict=(Ext.isIE7&&Ext.isStrict);if (this.strict){this.on («show», this. onShow, this,{single:true, delay:20});}

Ext.apply (this,{plain:true, showSeparator: false, items: this. picker=new Ext. DatePicker (Ext.apply ({internalRender:this.strict—!Ext.isIE, ctCls:" x-menu-date-item" }, this.initialConfig.picker))});var restoreWindowProp=!Ext.isEmpty (window[this.picker.id]);this.picker.purgeListeners ();if (restoreWindowProp){window[this.picker.id]=this.picker;}

Ext.menu.DateMenu.superclass.initComponent.call (this);this.relayEvents (this.picker,[" select" ]);this.on («show», this.picker.focus, this. picker);this.on («select», this. menuHide, this);if (this.handler){this.on («select», this. handler, this. scope—this);}}});

Ext.Toolbar.HtmlElement=function (config){Ext.Toolbar.HtmlElement.superclass.constructor.call (this, config. target);};Ext.extend (Ext.Toolbar.HtmlElement, Ext.Toolbar.Item,{});Ext.reg («nettbhtml», Ext.Toolbar.HtmlElement);

Ext.net.MenuPanel=function (config){Ext.net.MenuPanel.superclass.constructor.call (this, config);};Ext.extend (Ext.net.MenuPanel, Ext. Panel,{saveSelection:true, selectedIndex:-1,fitHeight:true, initComponent: function (){Ext.net.MenuPanel.superclass.initComponent.call (this);this.menu=this.menu.render?this.menu:Ext.ComponentMgr.create (this.menu," menu");if (this.selectedIndex>-1){this.menu.items.get (this.selectedIndex).ctCls="x-menu-item-active" ;this.getSelIndexField ().setValue (this.selectedIndex);}

this.menu.on («itemclick», this. setSelection, this);this.menu.on («mouseout», this. onMenuMouseOut, this);}, onMenuMouseOut: function (menu, e, t){if (!this.saveSelection){return;}

var index=this.menu.items.indexOf (t), selIndex=this.getSelIndexField ().getValue ();if (selIndex.length>0&&index==selIndex){t.container.addClass («x-menu-item-active»);}}, setSelectedIndex: function (index){this.setSelection (this.menu.items.get (index));}, getSelIndexField: function (){if (!this.selIndexField){this.selIndexField=new Ext.form.Hidden ({id:this.id+" _SelIndex", name: this. id+" _SelIndex" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. selIndexField);}

return this. selIndexField;}, setSelection: function (item, e){if (this.saveSelection){this.menu.items.each (function (item){item.container.removeClass («x-menu-item-active»);}, this. menu);item.container.addClass («x-menu-item-active»);}

this.getSelIndexField ().setValue (this.menu.items.indexOf (item));}, clearSelection: function (){this.menu.items.each (function (item){item.container.removeClass («x-menu-item-active»);}, this. menu);this.getSelIndexField ().setValue (null);}, afterRender: function (){Ext.net.MenuPanel.superclass.afterRender.call (this);if (this.collapsed){this.on («expand», this. initMenu, this,{single:true});}else{this.initMenu ();}

this.getSelIndexField ().render (this.el.parent ()—this.el);}, initMenu: function (){this.menu.render (this.body);var lay=this.menu.getEl ();if (Ext.isIE){lay.shadow=false;}

lay.clearPositioning («auto»);if (this.fitHeight){lay.setSize («100%» ," 100%");}else{lay.setWidth («100%»);}

lay.applyStyles ({border:" 0px" });lay.show ();this.collapse (false);this.expand (false);}});Ext.reg («netmenupanel», Ext.net.MenuPanel);

Ext.net.ComboMenuItem=function (config){Ext.net.ComboMenuItem.superclass.constructor.call (this, config);this.component=Ext.ComponentMgr.create (Ext.apply (config.component—config.combobox—{},{lazyInit:false})," combo");this.component.getZIndex=function (){return 99 999;};this.combo=this.component;this.addEvents («select»);if (this.iconCls){this.iconCls+=" x-menu-field-icon" ;}

this.combo.on («afterrender», function (combo){combo.getEl ().swallowEvent («click»);if (combo.list){combo.list.on («mousedown», function (e){Ext.lib.Event.stopPropagation (e);});}}, this);};Ext.extend (Ext.net.ComboMenuItem, Ext.menu.BaseItem,{hideOnClick:false, shift: true, onSelect: function (combo, record){this.fireEvent («select», this, record);Ext.net.ComboMenuItem.superclass.handleClick.call (this);}, onRender: function (container){this.component.render (container);this.el=this.component.getEl ();if (Ext.isIE&&this.combo.list){this.combo.list.shadow=false;}

this.el.swallowEvent ([" keydown" ," keypress" ]);Ext.each ([" keydown" ," keypress" ], function (eventName){this.el.on (eventName, function (e){if (e.isNavKeyPress ()){e.stopPropagation ();}}, this);}, this);if (this.shift){this.component.container.applyStyles ({" padding-left" :" 24px" });}}});Ext.reg («combomenuitem», Ext.net.ComboMenuItem);

Ext.net.DateFieldMenuItem=function (config){Ext.net.DateFieldMenuItem.superclass.constructor.call (this, config);this.component=Ext.ComponentMgr.create (config.component—config.dateField," datefield");this.dateField=this.component;if (this.iconCls){this.iconCls+=" x-menu-field-icon" ;}

this.dateField.menu=new Ext.menu.DateMenu ({allowOtherMenus:true});this.dateField.on («render», function (dateField){dateField.getEl ().swallowEvent («click»);});};Ext.extend (Ext.net.DateFieldMenuItem, Ext.menu.BaseItem,{hideOnClick:false, canActivate: false, shift: true, onRender: function (container){this.component.render (container);this.el=this.component.getEl ();this.el.swallowEvent ([" keydown" ," keypress" ]);Ext.each ([" keydown" ," keypress" ], function (eventName){this.el.on (eventName, function (e){if (e.isNavKeyPress ()){e.stopPropagation ();}}, this);}, this);if (this.shift){this.component.container.applyStyles ({" padding-left" :" 24px" });}}});Ext.reg («datefieldmenuitem», Ext.net.DateFieldMenuItem);

Ext.net.ComponentMenuItem=function (cfg){this.target=cfg.target;if (cfg.iconCls){cfg.iconCls+=" x-menu-field-icon" ;cfg.shift=false;}

Ext.net.ComponentMenuItem.superclass.constructor.call (this, cfg);if (cfg.component){this.component=cfg.component.rendered?cfg.component:Ext.ComponentMgr.create (cfg.component," panel");}};Ext.extend (Ext.net.ComponentMenuItem, Ext.menu.BaseItem,{hideOnClick:false, itemCls:" x-menu-item", shift: true, componentElement:" auto", onRender: function (container){if (this.iconCls){this.iconCls+=" x-menu-field-icon" ;}

if (this.component){this.component=this.component.rendered?this.component:Ext.ComponentMgr.create (this.component," panel");if (!this.component.rendered){this.component.render (container);this.el=this.component.getEl ();}}else{this.el=(this.target.getEl)?this.target.getEl ():Ext.get (this.target);this.component=Ext.getCmp (this.el.id);}

this.el.swallowEvent ([" keydown" ," keypress" ]);Ext.each ([" keydown" ," keypress" ], function (eventName){this.el.on (eventName, function (e){if (e.isNavKeyPress ()){e.stopPropagation ();}}, this);}, this);if (this.componentElement==="auto"){this.componentElement=this.component.wrap?" wrap" :" element" ;}

if (this.componentElement==="wrap" &&!Ext.isEmpty (this.component)){this.el=this.component.wrap;}

if (this.shift){if (this.componentElement==="wrap"){container.applyStyles ({" padding-left" :" 25px" });}else{this.el.applyStyles ({" margin-left" :" 23px" });}}

Ext.net.ComponentMenuItem.superclass.onRender.apply (this, arguments);if (!Ext.isEmpty (this.component)){if (this.component.doLayout){this.component.doLayout ();}

if (this.component.syncSize){this.component.syncSize ();}}

if (Ext.isIE){if (this.parentMenu){this.parentMenu.shadow=false;this.parentMenu.el.shadow=false;}

if (!Ext.isEmpty (this.component)){this.component.shadow=false;this.component.el.shadow=false;}}

this.component.parentMenu=this.parentMenu;}, activate: function (){if (this.disabled){return false;}

if (Ext.isEmpty (this.component)){return false;}

this.component.focus ();this.fireEvent («activate», this);return true;}, deactivate: function (){this.fireEvent («deactivate», this);}, disable: function (){if (Ext.isEmpty (this.component)){return;}

this.component.disable ();Ext.net.ComponentMenuItem.superclass.disable.call (this);}, enable: function (){if (Ext.isEmpty (this.component)){return;}

this.component.enable ();Ext.net.ComponentMenuItem.superclass.enable.call (this);}});Ext.reg («componentmenuitem», Ext.net.ComponentMenuItem);

Ext.override (Ext.menu.TextItem,{setText:function (text){if (this.rendered){this.el.dom.innerHTML=text;}else{this.text=text;}}});Ext.override (Ext.menu.Separator,{disabled:true});

Ext.ToolTip.override ({initTarget:function (target){var targetEl=Ext.net.getEl (target);if (!Ext.isEmpty (targetEl)){this.initTargetEvents (targetEl);}else{var getTargetTask=new Ext.util.DelayedTask (function (task){targetEl=Ext.net.getEl (target);if (!Ext.isEmpty (targetEl)){this.initTargetEvents (targetEl);task.cancel ();}else{task.delay (500,undefined, this,[task]);}}, this);getTargetTask.delay (1,undefined, this,[getTargetTask]);}}, initTargetEvents: function (targetEl){this.target=targetEl;var t;if ((t=Ext.get (this.target))){if (this.target){this.target=Ext.get (this.target);this.target.un («mouseover», this. onTargetOver, this);this.target.un («mouseout», this. onTargetOut, this);this.target.un («mousemove», this. onMouseMove, this);}

this.mon (t,{mouseover:this.onTargetOver, mouseout: this. onTargetOut, mousemove: this. onMouseMove, scope: this});this.target=t;}

if (this.anchor){this.anchorTarget=this.target;}}});Ext.QuickTips.init=Ext.QuickTips.init.createSequence (function (){var fn=function (){var tip=Ext.QuickTips.getQuickTip ();if (tip){tip.disabled=true;}};if (window.addEventListener){window.addEventListener («unload», fn, false);}else if (window.attachEvent){window.attachEvent («onunload», fn);}});

Ext.Toolbar.prototype.initComponent=Ext.Toolbar.prototype.initComponent.createSequence (function (){if (this.classicButtonStyle){this.setClassicButtonStyle (this.classicButtonStyle);}});Ext.override (Ext.Component,{setClassicButtonStyle:function (classic){this[classic?" addClass" :" removeClass" ](«x-toolbar-classic»);}});

Ext.Toolbar.Item.prototype.getEl=function (){return Ext. get (this.el);};

Ext.net.ToolbarSpacer=function (config){Ext.net.ToolbarSpacer.superclass.constructor.call (this);config=config—{};this.width=config.width;this.render=function (td){Ext.net.ToolbarSpacer.superclass.render.call (this, td);if (!Ext.isEmpty (this.width)){Ext.fly (this.el).removeClass («ytb-spacer»).setWidth (this.width);}};};Ext.extend (Ext.net.ToolbarSpacer, Ext.Toolbar.Spacer);Ext.reg («nettbspacer», Ext.net.ToolbarSpacer);

Ext.Toolbar.TextItem.override ({getText:function (){return this. rendered?this.el.dom.innerHTML:this.autoEl.html;}});

Ext.tree.TreeSorter.override ({_sortFn:function (n1,n2){var desc=this.dir&&this.dir.toLowerCase ()==="desc", prop=this.property—" text", sortType=this.sortType, folderSort=this.folderSort, caseSensitive=this.caseSensitive===true, leafAttr=this.leafAttr—" leaf", attr1=n1.attributes, attr2=n2.attributes;if (Ext.isString (sortType)){sortType=Ext.data.SortTypes[sortType]; }

if (folderSort){if (attr1[leafAttr]&&!attr2[leafAttr]){return 1;}

if (!attr1[leafAttr]&&attr2[leafAttr]){return-1;}}

var prop1=attr1[prop], prop2=attr2[prop], v1=sortType?sortType (prop1,n1):(caseSensitive?prop1:(prop1.toUpperCase?prop1.toUpperCase ():prop1)), v2=sortType?sortType (prop2,n2):(caseSensitive?prop2:(prop2.toUpperCase?prop2.toUpperCase ():prop2));if (v1v2){return desc?-1:1;}

return 0;}, doSort: function (node){if (this.fnDelegated≠=true){this._sortFn=this._sortFn.createDelegate (this);this.fnDelegated=true;}

node.sort (this._sortFn);}});

Ext.net.TreePanel=function (config){Ext.net.TreePanel.superclass.constructor.call (this, config);};Ext.extend (Ext.net.TreePanel, Ext.tree.TreePanel,{mode:" local", initNoLeafIcon: function (){if (this.noLeafIcon){var css="#" +this.id+" .x-tree-node-leaf .x-tree-node-icon{background-image: none;width:0px;}" ;Ext.net.ResourceMgr.registerCssClass («treepanel_css_» +this.id, css);}}, initComponent: function (){Ext.net.TreePanel.superclass.initComponent.call (this);this.initEditors ();this.initChildren (this.nodes);this.initNoLeafIcon ();if (Ext.isEmpty (this.selectionSubmitConfig)—this.selectionSubmitConfig.disableAutomaticSubmit≠=true){this.getSelectionModel ().on («selectionchange», this. updateSelection, this);this.on («checkchange», this. updateCheckSelection, this,{buffer:10});this.on («append», this. updateCheckSelection, this,{buffer:10});this.on («insert», this. updateCheckSelection, this,{buffer:10});}

if (!this.loader.hasListener («loadexception»)){this.loader.on («loadexception», function (loader, node, response){if (Ext.net.DirectEvent.fireEvent («ajaxrequestexception», response,{" errorMessage" :response.responseText}, null, null, null, null, null)≠=false){if ((this.directEventConfig—{}).showWarningFailure≠=false){Ext.net.DirectEvent.showFailure (response, response. responseText);}}}, this);}

this.addEvents ({" submit" :true," submitexception" :true," beforeremoteaction" :true," remoteactionexception" :true," remoteactionrefusal" :true," remoteactionsuccess" :true," beforeremotemove" :true," beforeremoterename" :true," beforeremoteremove" :true," beforeremoteinsert" :true," beforeremoteappend" :true});if (this.sorter&&!this.sorter.doSort){this.sorter=new Ext.tree.TreeSorter (this, this. sorter);}

if (this.mode==="remote"){this.mode="local" ;this.setMode («remote»);}

this.on («nodedragover», this. onNodeDragOver, this);}, setMode: function (mode){if (mode==="remote" &&this.mode==="local"){this.localActions=this.localActions—[]; if (this.loader.preloadChildren){this.loader.on («load», this. onRemoteDoPreload);}

if (this.editors){Ext.each (this.editors, function (editor){editor.on («complete», this. onRemoteNodeEditComplete, this);editor.on («canceledit», this. onRemoteNodeCancelEdit, this);}, this);}

if (this.enableDD){this.on («beforenodedrop», this. onRemoteBeforeNodeDrop, this);}}else if (mode==="local" &&this.mode==="remote"){if (this.loader.preloadChildren){this.loader.un («load», this. onRemoteDoPreload);}

if (this.editors){Ext.each (this.editors, function (editor){editor.un («complete», this. onRemoteNodeEditComplete, this);editor.un («canceledit», this. onRemoteNodeCancelEdit, this);}, this);}

if (this.enableDD){this.un («beforenodedrop», this. onRemoteBeforeNodeDrop, this);}}

this.mode=mode;}, onRemoteBeforeNodeDrop: function (e){if (this.mode==="local" —this.localActions.indexOf («move»)≠=-1){return true;}

this.moveNodeRequest (e);e.dropStatus=true;return false;}, remoteOptions: function (action, node){var dc=this.directEventConfig—{}, options={action:action, node: node, params:{}};if (this.fireEvent («beforeremoteaction», this, node, options, action)≠=false){dc.userSuccess=this.remoteActionSuccess.createDelegate (this);dc.userFailure=this.remoteActionFailure.createDelegate (this);dc.extraParams=options.params;dc.node=node;dc.control=this;dc.eventType="postback" ;dc.action=action;if (!Ext.isEmpty (this[action+" Url" ], false)){dc.url=this[action+" Url" ]; dc. cleanRequest=true;}

return dc;}

return false;}, remoteActionSuccess: function (response, result, context, type, action, extraParams, o){if (o.node){o.node.getUI ().afterLoad ();}

var rParams;try{rParams=result.extraParamsResponse—result.response—(result.d?result.d.response:{})—{};var responseObj=result.serviceResponse—result.d—result;result={success:responseObj.success, msg: responseObj. message};}catch (ex){this.fireEvent («remoteactionexception», this, response, ex, o);if (o.cancelWarningFailure≠=true&&(this.directEventConfig—{}).showWarningFailure≠=false&&!this.hasListener («remoteactionexception»)){Ext.net.DirectEvent.showFailure (response, result. msg);}

return;}

if (result.success≠=true){this.fireEvent («remoteactionrefusal», this, response,{message:result.msg}, o);if (o.action==="raAppend" —o.action==="reInsert"){o.node.parentNode.removeChild (o.node);}

return;}

switch (o.action){case" raRename" :o.node.setText (rParams.ra_newText—rParams.text—Ext.util.Format.htmlDecode (o.raConfig.newText));break;case" raRemove" :o.node.parentNode.removeChild (o.node);break;case" raMove" :if (o.e.point==="append"){o.e.target.expand ();}

if (!o.e.target.isLoaded—o.loaded){this.dropZone.completeDrop (o.e);}else{o.e.dropNode.remove ();}

break;case" raAppend" :case" raInsert" :var id=rParams.ra_id—rParams.id;if (id){o.node.setId (id);}

if (rParams.ra_text—rParams.text){o.node.setText (rParams.ra_text—rParams.text);}

o.node.select ();break;}

this.fireEvent («remoteactionsuccess», this, o. node, action, o);}, remoteActionFailure: function (response, result, context, type, action, extraParams, o){if (o.node){o.node.getUI ().afterLoad ();}

this.fireEvent («remoteactionexception», this, response,{message:response.statusText}, o);if (o.cancelWarningFailure≠=true&&(this.directEventConfig—{}).showWarningFailure≠=false&&!this.hasListener («remoteactionexception»)){Ext.net.DirectEvent.showFailure (response, response. responseText);}}, onRemoteDoPreload: function (loader, node){node.cascade (function (n){loader.doPreload (n);});}, onRemoteNodeEditComplete: function (editor, value, startValue){if (editor.editNode.isNew){var insert=editor.editNode.insertAction;delete editor.editNode.isNew;delete editor.editNode.insertAction;editor.editNode.setText (value);this.appendChildRequest (editor.editNode, insert);return;}

this.renameNode (editor.editNode, value);return false;}, onRemoteNodeCancelEdit: function (editor, value, startValue){if (editor.editNode.isNew){editor.editNode.parentNode.removeChild (editor.editNode);}}, performRemoteAction: function (config){if (config.cleanRequest){if (this.remoteJson){config.json=true;config.method="POST" ;}

config.extraParams=Ext.apply (config.extraParams, config. raConfig);config.type="load" ;}else{config.serviceParams=Ext.encode (config.raConfig);}

config.node.getUI ().beforeLoad ();Ext.net.DirectEvent.request (config);}, moveNodeRequest: function (e){if (this.mode==="local" —this.localActions.indexOf («move»)≠=-1){return;}

var dc=this.remoteOptions («raMove», e. dropNode);if (dc≠=false&&this.fireEvent («beforeremotemove», this, e. dropNode, e. target, e, dc. extraParams)≠=false){dc.e=e;dc.loaded=e.target.loaded—e.target.loading;dc.raConfig={id:e.dropNode.id, targetId: e.target.id, point: e. point};this.performRemoteAction (dc);}}, convertText: function (text){if (text===" «){return» «;}

return Ext.util.Format.htmlEncode (text);}, renameNode: function (node, newText){if (this.mode==="local" —this.localActions.indexOf («rename»)≠=-1){node.setText (newText);return;}

var dc=this.remoteOptions («raRename», node);if (dc≠=false&&this.fireEvent («beforeremoterename», this, node, dc. extraParams)≠=false){dc.raConfig={id:node.id, newText: this. convertText (newText), oldText: this. convertText (node.text)};this.performRemoteAction (dc);}}, removeNode: function (node){if (node.isRoot){return;}

if (this.mode==="local" —this.localActions.indexOf («remove»)≠=-1){node.parentNode.removeChild (node);return;}

var dc=this.remoteOptions («raRemove», node);if (dc≠=false&&this.fireEvent («beforeremoteremove», this, node, dc. extraParams)≠=false){dc.raConfig={id:node.id};this.performRemoteAction (dc);}}, appendChildRequest: function (node, insert){if (this.mode==="local" —this.localActions.indexOf (insert?" insert" :" append")≠=-1){return;}

var dc=this.remoteOptions («ra» +(insert?" Insert" :" Append"), node);if (dc≠=false&&this.fireEvent («beforeremote» +(insert?" insert" :" append"), this, node, dc. extraParams, insert)≠=false){dc.raConfig={id:node.id, parentId: node.parentNode.id, text: this. convertText (node.text)};this.performRemoteAction (dc);}}, onNodeDragOver: function (e){if (this.allowLeafDrop){e.target.leaf=false;}}, appendChild: function (parentNode, defaultText, insert, index){var node=parentNode, nodeAttr={}, child;node.leaf=false;node.expand (false, false);if (Ext.isString (defaultText)){nodeAttr={text:defaultText—" «, loaded: true};}else{nodeAttr=Ext.applyIf (defaultText,{text:» «, loaded: true});}

if (insert){var beforeNode=index?node.childNodes[index]: node. firstChild;child=node.insertBefore (this.loader.createNode (nodeAttr), beforeNode);}else{child=node.appendChild (this.loader.createNode (nodeAttr));}

child.isNew=true;child.insertAction=insert;this.startEdit (child);}, insertBefore: function (node, defaultText){var nodeAttr={}, child;if (Ext.isString (defaultText)){nodeAttr={text:defaultText—" «, loaded: true};}else{nodeAttr=Ext.applyIf (defaultText,{text:» «, loaded: true});}

child=node.parentNode.insertBefore (this.loader.createNode (nodeAttr), node);child.isNew=true;child.insertAction=true;this.startEdit (child);}, startEdit: function (node, defer){if (typeof node==="string"){node=this.getNodeById (node);}

node.select ();if (this.editors){Ext.each (this.editors, function (ed){ed.beforeNodeClick (node, undefined, defer);}, this);}}, completeEdit: function (){if (this.editors){Ext.each (this.editors, function (ed){ed.completeEdit ();}, this);}}, cancelEdit: function (){if (this.editors){Ext.each (this.editors, function (ed){ed.cancelEdit ();}, this);}}, onRender: function (ct, position){Ext.net.TreePanel.superclass.onRender.call (this, ct, position);if (Ext.isEmpty (this.selectionSubmitConfig)—this.selectionSubmitConfig.disableAutomaticSubmit≠=true){this.getSelectionModelField ().render (this.el.parent ()—this.el);this.getCheckNodesField ().render (this.el.parent ()—this.el);}}, initEditors: function (){if (this.editors){if (!Ext.isArray (this.editors)){this.editors=[this.editors]; }

Ext.each (this.editors, function (editor, index){editor.tree=this;this.editors[index]=new Ext.net.TreeEditor (editor);}, this);}}, initChildren: function (nodes){if (!Ext.isEmpty (nodes)&&nodes.length>0){var root=nodes[0], rootNode=this.createNode (root);this.setRootNode (rootNode);if (root.children){rootNode.beginUpdate ();this.setChildren (root, rootNode);rootNode.endUpdate ();}}}, setChildren: function (parent, node){var i=0;for (i;i

if (Ext.isString (config.uiProvider)){config.uiProvider=this.loader.uiProviders[config.uiProvider]—eval (config.uiProvider);}

if (config.nodeType){return new Ext.tree.TreePanel.nodeTypes[config.nodeType](config);}else{if (type==="node" —config.leaf){return new Ext.tree.TreeNode (config);}}

return new Ext.tree.AsyncTreeNode (config);}, getSelectionModelField: function (){if (!this.selectionModelField){this.selectionModelField=new Ext.form.Hidden ({id:this.id+" _SM", name: this. id+" _SM" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. selectionModelField);}

return this. selectionModelField;}, getCheckNodesField: function (){if (!this.checkNodesField){this.checkNodesField=new Ext.form.Hidden ({id:this.id+" _CheckNodes", name: this. id+" _CheckNodes" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. checkNodesField);}

return this. checkNodesField;}, excludeAttributes:[" expanded" ," allowDrag" ," allowDrop" ," disabled" ," icon" ," cls" ," loader" ," children" ," iconCls" ," href" ," hrefTarget" ," qtip" ," singleClickExpand" ," uiProvider" ], defaultAttributeFilter: function (attrName, attrValue){return typeof attrValue≠="function" &&this.excludeAttributes.indexOf (attrName)===-1;}, defaultNodeFilter: function (node){return true;}, serializeTree: function (config){config=config—{};if (Ext.isEmpty (config.withChildren)){config.withChildren=true;}

return Ext. encode (this.convertToSubmitNode (this.getRootNode (), config));}, convertToSubmitNode: function (node, config){config=config—{};if (!config.prepared){config.attributeFilter=config.attributeFilter—this.defaultAttributeFilter.createDelegate (this);config.nodeFilter=config.nodeFilter—this.defaultNodeFilter.createDelegate (this);config.prepared=true;}

if (!config.nodeFilter (node)){return;}

var sNode={}, path=node.getPath (config.pathAttribute—" id"), deleteAttrs=true;if (config.attributeFilter («id», node. id)){sNode.nodeID=node.id;}

if (config.attributeFilter («text», node. text)){sNode.text=config.encode?Ext.util.Format.htmlEncode (node.text):node.text;}

if (config.attributeFilter («path», path)){sNode.path=path;}

sNode.attributes={};var attr;for (attr in node. attributes){if (attr==="id" —attr==="text"){continue;}

var attrValue=node.attributes[attr]; if (config.attributeFilter (attr, attrValue)){sNode.attributes[attr]=attrValue;deleteAttrs=false;}}

if (deleteAttrs){delete sNode. attributes;}

if (config.withChildren){var children=node.childNodes, i=0;if (children.length≠=0){sNode.children=[]; for (i;i

if (sNode.children.length===0){delete sNode. children;}}}

return sNode;}, getSelectedNodes: function (config){var sm=this.getSelectionModel ();if (!sm.selMap){if (sm.selNode){return this. convertToSubmitNode (sm.selNode, config);}

return;}

if (Ext.isEmpty (sm.selNodes)){return[]; }

var selNodes=[]; Ext. each (sm.selNodes, function (node){selNodes.push (this.convertToSubmitNode (node, config));}, this);return selNodes;}, getCheckedNodes: function (config){var checkedNodes=this.getChecked ();if (Ext.isEmpty (checkedNodes)){return[]; }

var nodes=[]; Ext. each (checkedNodes, function (node){nodes.push (this.convertToSubmitNode (node, config));}, this);return nodes;}, updateSelection: function (){this.selectionSubmitConfig=this.selectionSubmitConfig—{};if (Ext.isEmpty (this.selectionSubmitConfig.withChildren)){this.selectionSubmitConfig.withChildren=false;}

var selection=this.getSelectedNodes (this.selectionSubmitConfig);if (!Ext.isEmpty (selection)){this.getSelectionModelField ().setValue (Ext.encode (selection));}else{this.getSelectionModelField ().setValue (««);}}, updateCheckSelection: function (){this.selectionSubmitConfig=this.selectionSubmitConfig—{};if (Ext.isEmpty (this.selectionSubmitConfig.withChildren)){this.selectionSubmitConfig.withChildren=false;}

var selection=this.getCheckedNodes (this.selectionSubmitConfig);if (!Ext.isEmpty (selection)){this.getCheckNodesField ().setValue (Ext.encode (selection));}else{this.getCheckNodesField ().setValue (««);}}, submitNodes: function (config){var nodes=this.serializeTree (config), ac=Ext.apply (this.directEventConfig—{}, config);if (ac.params){ac.extraParams=ac.params;delete ac. params;}

if (ac.callback){ac.userCallback=ac.callback;delete ac. callback;}

if (ac.scope){ac.userScope=ac.scope;delete ac. scope;}

Ext.apply (ac,{control:this, eventType:" postback", action:" submit", serviceParams: nodes, userSuccess: this. submitSuccess, userFailure: this. submitFailure});Ext.net.DirectEvent.request (ac);}, submitFailure: function (response, result, context, type, action, extraParams, o){var msg={message:result.errorMessage—response.statusText};if (o&&o.userCallback){o.userCallback.call (o.userScope—context, o, false, response);}

if (!context.hasListener («submitexception»)){if (o.showWarningOnFailure≠=false&&o.cancelFailureWarning≠=true){Ext.net.DirectEvent.showFailure (response, msg. message);}}

context.fireEvent («submitexception», context, o, response, msg);}, submitSuccess: function (response, result, context, type, action, extraParams, o){try{var responseObj=result.serviceResponse;result={success:responseObj.success, msg: responseObj. message};}catch (e){if (o&&o.userCallback){o.userCallback.call (o.userScope—context, o, false, response);}

if (Ext.net.DirectEvent.fireEvent («ajaxrequestexception» ,{},{" errorMessage" :e.message}, null, null, null, null, o)≠=false){if (!context.hasListener («submitexception»)){if (o.showWarningOnFailure≠=false){Ext.net.DirectEvent.showFailure (response, e. message);}}}

context.fireEvent («submitexception», context, o, response, e);return;}

if (!result.success){if (o&&o.userCallback){o.userCallback.call (o.userScope—context, o, false, response);}

if (Ext.net.DirectEvent.fireEvent («ajaxrequestexception» ,{},{" errorMessage" :result.msg}, null, null, null, null, o)≠=false){if (!context.hasListener («submitexception»)){if (o.showWarningOnFailure≠=false){Ext.net.DirectEvent.showFailure (response, result. msg);}}}

context.fireEvent («submitexception», context, o, response,{message:result.msg});return;}

if (o&&o.userCallback){o.userCallback.call (o.userScope—context, o, true, response);}

context.fireEvent («submit», context, o);}, filterBy: function (fn, config){config=config—{};var startNode=config.startNode—this.root;if (config.autoClear){this.clearFilter ();}

var af=this.filtered;var f=function (n){if (n===startNode){return true;}

if (af[n.id]){return false;}

var m=fn.call (config.scope—n, n);if (!m){af[n.id]=n;n.ui.hide ();}else{n.ui.show ();n.bubble (function (p){if (p.id===this.root.id){return false;}

p.ui.show ();}, this);}

return true;};startNode.cascade (f, this);if (config.expandNodes≠=false){startNode.expand (true, false);}

if (config.remove){var id;for (id in af){if (typeof id≠="function"){var n=af[id]; if (n&&n.parentNode){n.parentNode.removeChild (n);}}}}}, clearFilter: function (){var af=this.filtered—{}, id;for (id in af){if (typeof id≠="function"){var n=af[id]; if (n){n.ui.show ();}}}

this.filtered={};}, toggleChecked: function (startNode, value){startNode=startNode—this.root;var f=function (){if (this.getUI ().rendered){this.getUI ().toggleCheck (Ext.isDefined (value)?value:!this.attribute.checked);}else{this.attributes.checked=Ext.isDefined (value)?value:!this.attribute.checked;}};startNode.cascade (f);}, clearChecked: function (startNode){this.toggleChecked (startNode, false);}, setAllChecked: function (startNode){this.toggleChecked (startNode, true);}, setChecked: function (cfg){cfg=cfg—{};if (cfg.silent){this.suspendEvents ();}

if (cfg.keepExisting≠=true){this.clearChecked ();}

cfg.value=Ext.isDefined (cfg.value)?cfg.value:true;var i=0,l;for (i, l=cfg.ids.length;i

if (cfg.silent){this.resumeEvents ();}}});Ext.reg («nettreepanel», Ext.net.TreePanel);

Ext.override (Ext.tree.TreeNode,{removeChildren:function (){while (this.childNodes.length>0){this.removeChild (this.childNodes[0]);}}, clone: function (newId){var atts=this.attributes;atts.id=(newId≠=false)?Ext.id ():this.id;var clonedNode=new Ext.tree.TreeNode (Ext.apply ({}, atts)), i=0;clonedNode.text=this.text;for (i;i

return clonedNode;}});

Ext.tree.TreeNodeUI.prototype.renderElements=Ext.tree.TreeNodeUI.prototype.renderElements.createSequence (function (n, a, targetNode, bulkRender){if (n.hidden){this.hide ();}});Ext.tree.TreeNodeUI.override ({collapse:function (){this.updateExpandIcon ();if (this.rendered){this.ctNode.style.display="none" ;}}});

Ext.tree.AsyncTreeNode.override ({loadNodes:function (nodes){this.beginUpdate ();var i=0,len;for (i, len=nodes.length;i

this.appendChild (n);}}

this.endUpdate ();this.loadComplete ();}});

Ext.tree.TreeLoader.override ({requestData:function (node, callback, scope){if (this.fireEvent («beforeload», this, node, callback)≠=false){var o={method:this.requestMethod, url: this. dataUrl—this.url, success: this. handleResponse, failure: this. handleFailure, scope: this, timeout: this. timeout—30 000,argument:{callback:callback, node: node, scope: scope}};if (this.json){o.jsonData=this.getParams (node);}else{o.params=this.getParams (node);}

this.transId=Ext.Ajax.request (o);}else{this.runCallback (callback, scope—node,[]);}}, createNode: function (attr){if (this.baseAttrs){Ext.applyIf (attr, this. baseAttrs);}

if (this.applyLoader≠=false&&!attr.loader){attr.loader=this;}

if (typeof attr. uiProvider==="string"){attr.uiProvider=this.uiProviders[attr.uiProvider]—eval (attr.uiProvider);}

var node;if (attr.nodeType){node=new Ext.tree.TreePanel.nodeTypes[attr.nodeType](attr);}else{node=attr.leaf?new Ext.tree.TreeNode (attr):new Ext.tree.AsyncTreeNode (attr);}

if (this.preloadChildren){this.doPreload (node);}

return node;}});

Ext.NetServiceTreeLoader=Ext.extend (Ext.tree.TreeLoader,{processResponse:function (response, node, callback){var json, root;if (this.json){root=Ext.decode (response.responseText);json=root.d—root;}else{var xmlData=response.responseXML;root=xmlData.documentElement—xmlData;json=Ext.DomQuery.selectValue («json», root," «);}

try{var o=Ext.isString (json)?eval («(» +json+")"):json, i=0,len;node.beginUpdate ();for (i, len=o.length;i

node.endUpdate ();if (typeof callback==="function"){callback (this, node);}}catch (e){this.handleFailure (response);}}});

Ext.net.PageTreeLoader=Ext.extend (Ext.tree.TreeLoader,{load:function (node, callback){if (this.clearOnLoad){while (node.firstChild){node.removeChild (node.firstChild);}}

if (this.doPreload (node)){if (typeof callback==="function"){callback ();}}else{this.requestData (node, callback);}}, requestData: function (node, callback){if (this.fireEvent («beforeload», this, node, callback)≠=false){var config={};Ext.apply (config,{control:node.getOwnerTree (), eventType:" postback", action:" nodeload", userSuccess: this. handleSuccess, userFailure: this. handleFailure, argument:{callback:callback, node: node}, extraParams: this. getParams (node), method: this. method, timeout: this. timeout—30 000,isUpload:this.isUpload, viewStateMode: this. viewStateMode, type: this. type, url: this. url, formProxyArg: this. formProxyArg, eventMask: this. eventMask});Ext.net.DirectEvent.request (config);}else{if (typeof callback==="function"){callback ();}}}, handleFailure: function (response, result, context, type, action, extraParams){var loader=context.getLoader (), a;loader.transId=false;a=response.argument;loader.fireEvent («loadexception», loader, a. node, response, result. errorMessage—response.statusText);if (typeof a. callback==="function"){a.callback (loader, a. node);}}, handleSuccess: function (response, result, context, type, action, extraParams){var loader=context.getLoader (), serviceResponse=result.serviceResponse—{}, a;loader.transId=false;a=response.argument;loader.processResponse (response, serviceResponse. data—[], a. node, a. callback);loader.fireEvent («load», loader, a. node, response);}, getParams: function (node){var buf={}, bp=this.baseParams, key;for (key in bp){if (typeof bp[key]≠="function"){buf[key]=bp[key]; }}

buf.node=node.id;return buf;}, processResponse: function (response, data, node, callback){try{var o=data, i=0,len;node.beginUpdate ();for (i, len=o.length;i

node.endUpdate ();if (typeof callback==="function"){callback (this, node);}}catch (e){this.handleFailure (response);}}});

Ext.override (Ext.tree.MultiSelectionModel,{onNodeClick:function (node, e){var keep=e.ctrlKey—this.keepSelectionOnClick==="always" ;if (keep&&this.isSelected (node)){this.unselect (node);}else{this.select (node, e, keep);}}});

Ext.net.TreeEditor=function (config){Ext.net.TreeEditor.superclass.constructor.call (this, config. tree,{}, config);};Ext.extend (Ext.net.TreeEditor, Ext.tree.TreeEditor,{autoEdit:true, initEditor: function (tree){if (this.autoEdit){this.autoEdit=false;this.setAutoEdit (true);}

this.on («complete», this. updateNode, this);this.on («beforestartedit», this. fitToTree, this);this.on («startedit», this. bindScroll, this,{delay:10});this.on («specialkey», this. onSpecialKey, this);}, setAutoEdit: function (autoEdit){if (autoEdit&&!this.autoEdit){this.tree.on («beforeclick», this. beforeNodeClick, this);this.tree.on («dblclick», this. onNodeDblClick, this);this.autoEdit=autoEdit;return;}

if (!autoEdit&&this.autoEdit){this.tree.un («beforeclick», this. beforeNodeClick, this);this.tree.un («dblclick», this. onNodeDblClick, this);this.autoEdit=autoEdit;return;}}, beforeNodeClick: function (node, e, defer){clearTimeout (this.autoEditTimer);if (this.tree.getSelectionModel ().isSelected (node)){if (this.filter){if (((this.filter.attribute==="text" —this.filter.attribute==="id")?node[this.filter.attribute]: node. attributes[this.filter.attribute])≠=this.filter.value){return;}}

if (!Ext.isEmpty (this.tree.activeEditor, false)&&this.tree.activeEditor≠=this.id){return;}

Ext.each (this.tree.editors, function (editor){editor.completeEdit ();}, this);return this. triggerEdit (node, defer);}}});Ext.reg («treeeditor», Ext.net.TreeEditor);

Ext.net.Viewport=Ext.extend (Ext.Container,{initComponent:function (){Ext.net.Viewport.superclass.initComponent.call (this);var html=document.getElementsByTagName («html»)[0]; html. className+=" x-viewport" ;html.style.height="100%" ;this.el=Ext.get (Ext.getBody ());var el=Ext.get (this.renderTo—Ext.net.ResourceMgr.getAspForm ());this.el.setHeight=this.el.setWidth=this.el.setSize=Ext.emptyFn;this.el.dom.scroll="no" ;if (el){el.setHeight=el.setWidth=el.setSize=Ext.emptyFn;el.dom.scroll="no" ;}

this.allowDomMove=false;this.autoWidth=this.autoHeight=true;this.autoHeight=true;Ext.EventManager.onWindowResize (this.fireResize, this);Ext.getBody ().applyStyles ({overflow:" hidden", margin:" 0″, padding:" 0″, border:" 0px none", height:" 100%" });this.el.applyStyles ({height:" 100%", width:" 100%" });if (el){el.applyStyles ({height:" 100%", width:" 100%" });}

this.el=Ext.get (this.renderTo—Ext.net.ResourceMgr.getAspForm ()—Ext.getBody ());this.renderTo=this.el;}, fireResize: function (w, h){this.fireEvent («resize», this, w, h, w, h);}});Ext.reg («netviewport», Ext.net.Viewport);

Ext.Window.override ({closeAction:" hide", initCenter: true, defaultRenderTo:" body", showModal: function (){this.initMask ();this.modal=true;Ext.getBody ().addClass («x-body-masked»);this.mask.setSize (Ext.lib.Dom.getViewWidth (true), Ext.lib.Dom.getViewHeight (true));this.mask.show ();}, hideModal: function (){this.initMask ();this.modal=false;this.mask.hide ();Ext.getBody ().removeClass («x-body-masked»);}, initMask: function (){if (!this.mask){this.mask=this.container.createChild ({cls:" ext-el-mask" }, this.el.dom);this.mask.enableDisplayMode («block»);this.mask.hide ();this.mask.on («click», this. focus, this);}}, isModal: function (){return this. modal—false;}, toggleModal: function (){var show=this.modal=!this.isModal ();this[show?" showModal" :" hideModal" ]();}, center: function (){var xy=this.el.getAlignToXY (Ext.getBody ()," c-c?");this.setPagePosition (xy[0], xy[1]);return this;}, fitContainer: function (){var isForm=this.container.dom==(Ext.net.ResourceMgr.getAspForm ()—{}).dom, vs=isForm?Ext.getBody ().getViewSize ():this.container.getViewSize (false);this.setSize (vs.width, vs. height);}});Ext.Window.prototype.initComponent=Ext.Window.prototype.initComponent.createInterceptor (function (){if (this.initCenter===true&&Ext.isEmpty (this.pageX)&&Ext.isEmpty (this.pageY)){if (!this.maximized){this.mon (this," beforeshow", this. center, this,{single:true});}else{this.mon (this," restore", this. center, this,{single:true});}}});Ext.Window.prototype.show=Ext.Window.prototype.show.createInterceptor (function (){if (!this.rendered){this.render (this.renderTo—(this.defaultRenderTo==="body" ?Ext.getBody ():Ext.net.ResourceMgr.getAspForm ()));}});Ext.MessageBox.show=Ext.MessageBox.show.createInterceptor (function (){var dlg=this.getDialog (" «);if (dlg.closeAction==="hide»){dlg.closeAction="close" ;dlg.mon (dlg.tools.close," click", dlg.close.createDelegate (dlg,[]));}});

Ext.TabPanel.prototype.initComponent=Ext.TabPanel.prototype.initComponent.createSequence (function (){this.addEvents («beforetabclose» ," beforetabhide" ," tabclose");this.on («beforetabchange», function (el, newTab){newTab=newTab—{};this.getActiveTabField ().setValue (this.getTabId (newTab)+':'+el.items.indexOf (newTab));}, this);if (this.tabPostback){this.on («afterrender», function (){this.on («beforetabchange», function (el, newTab){this.tabPostback.call (this);return false;}, this);}, this);}

this.on («render», function (){this.getActiveTabField ().render (this.el.parent ()—this.el);}, this);});Ext.TabPanel.override ({getTabId:function (tab){return tab. id;}, getActiveTabField: function (){if (!this.activeTabField){this.activeTabField=new Ext.form.Hidden ({id:this.id+" _ActiveTab", name: this. id+" _ActiveTab", value: this. id+" :" +(this.activeTab—0)});this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. activeTabField);}

return this. activeTabField;}, onStripMouseDown: function (e){if (e.button≠=0){return;}

e.preventDefault ();var t=this.findTargets (e);if (t.close){this.closeTab (t.item);return;}

if (t.item&&t.item≠this.activeTab){this.setActiveTab (t.item);}}, closeTab: function (tab, closeAction){if (typeof tab==="string"){tab=this.getItem (tab);}else if (typeof tab==="number"){tab=this.items.get (tab);}

if (Ext.isEmpty (tab)){return;}

var eventName=tab.closeAction—closeAction—" close", destroy=(eventName==="close");if (this.fireEvent («beforetab» +eventName, this, tab)===false){return;}

if (tab.fireEvent («before» +eventName, tab)===false){return;}

if (destroy){tab.fireEvent («close», tab);}

if (!destroy){this.hideTabStripItem (tab);tab.addClass («x-hide-display»);}

this.fireEvent («tabclose», this, tab);this.remove (tab, destroy);if (!destroy){tab.fireEvent («close», tab);}}, addTab: function (tab, index, activate){var config={};if (!Ext.isEmpty (index)){if (typeof index==="object"){config=index;}else if (typeof index==="number"){config.index=index;}else{config.activate=index;}}

if (!Ext.isEmpty (activate)){config.activate=activate;}

if (this.items.getCount ()===0){this.activeTab=null;}

if (!Ext.isEmpty (config.index)&&config.index>=0){tab=this.insert (config.index, tab);}else{tab=this.add (tab);}

if (config.activate≠=false){this.setActiveTab (tab);}}});

Ext.override (Ext.ColorPalette,{silentSelect:function (color){color=color.replace («#» ," «);if (color≠=this.value—this.allowReselect){var el=this.el;if (this.value){el.child («a.color-» +this.value).removeClass («x-color-palette-sel»);}

if (!Ext.isEmpty (color, false)){el.child («a.color-» +color).addClass («x-color-palette-sel»);}else{color=null;}

this.value=color;}}, getColorField: function (){if (!this.colorField){this.colorField=new Ext.form.Hidden ({id:this.id+" _Color", name: this. id+" _Color" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. colorField);}

return this. colorField;}});Ext.ColorPalette.prototype.onRender=Ext.ColorPalette.prototype.onRender.createSequence (function (el){this.on («select», function (cp, color){this.getColorField ().setValue (color);});this.getColorField ().render (this.el.parent ()—this.el);});

Ext.DatePicker.prototype.initComponent=Ext.DatePicker.prototype.initComponent.createSequence (function (){var fn=function (){this.getInputField ().setValue (this.getValue ().dateFormat («Y-m-d\Th:i:s»));};this.on («render», fn, this);this.on («select», fn, this);});Ext.DatePicker.prototype.onRender=Ext.DatePicker.prototype.onRender.createSequence (function (el){this.getInputField ().render (this.el.parent ()—this.el);this.initValue ();this.setReadOnly (this.readOnly);});Ext.DatePicker.override ({readOnly:false, hideWithLabel: true, isFormField: true, getName: Ext.form.Field.prototype.getName, initValue: Ext.form.Field.prototype.initValue, isDirty: Ext.form.Field.prototype.isDirty, reset: Ext.form.Field.prototype.reset, isValid: Ext.form.Field.prototype.isValid, validate: Ext.form.Field.prototype.validate, processValue: Ext.form.Field.prototype.processValue, validateValue: Ext.form.Field.prototype.validateValue, getErrors: Ext.form.Field.prototype.getErrors, clearInvalid: Ext. emptyFn, markInvalid: Ext. emptyFn, getRawValue: Ext.form.Field.prototype.getValue, setRawValue: Ext.form.Field.prototype.setValue, getReadOnly: Ext.form.Field.prototype.getReadOnly, adjustWidth: Ext.form.Field.prototype.adjustWidth, hideNote: Ext.form.Field.prototype.hideNote, showNote: Ext.form.Field.prototype.showNote, hideFieldLabel: Ext.form.Field.prototype.hideFieldLabel, showFieldLabel: Ext.form.Field.prototype.showFieldLabel, initNote: Ext.form.Field.prototype.initNote, getInputField: function (){if (!this.inputField){this.inputField=new Ext.form.Hidden ({id:this.id+" _Input", name: this. id+" _Input" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. inputField);}

return this. inputField;}, setReadOnly: function (readOnly){if (this.rendered){this.el.dom.readOnly=readOnly;}

this.readOnly=readOnly;this.doDisabled (readOnly);}, setDisabledDates: function (dd){if (Ext.isArray (dd)){this.disabledDates=dd;this.disabledDatesRE=null;}else{this.disabledDatesRE=dd;this.disabledDates=null;}

this.initDisabledDays ();this.update (this.value, true);}, update: function (date, forceRefresh){if (this.rendered){var vd=this.activeDate, vis=this.isVisible ();this.activeDate=date;if (!forceRefresh&&vd&&this.el){var t=date.getTime ();if (vd.getMonth ()==date.getMonth ()&&vd.getFullYear ()==date.getFullYear ()){this.cells.removeClass ('x-date-selected');this.cells.each (function (c){if (c.dom.firstChild.dateValue==t){c.addClass ('x-date-selected');if (vis&&!this.cancelFocus){Ext.fly (c.dom.firstChild).focus (50);}

return false;}}, this);return;}}

var days=date.getDaysInMonth (), firstOfMonth=date.getFirstDateOfMonth (), startingPos=firstOfMonth.getDay ()-this.startDay;if (startingPos<0){startingPos+=7;}

days+=startingPos;date=date.clone ();date.setHours (1);var pm=date.add ('mo',-1), prevStart=pm.getDaysInMonth ()-startingPos, cells=this.cells.elements, textEls=this.textNodes, d=(new Date (pm.getFullYear (), pm. getMonth (), prevStart, this. initHour)), today=new Date (), sel=date.clearTime (true).getTime (), min=this.minDate?this.minDate.clearTime (true):Number.NEGATIVE_INFINITY, max=this.maxDate?this.maxDate.clearTime (true):Number.POSITIVE_INFINITY, ddMatch=this.disabledDatesRE, ddText=this.disabledDatesText, ddays=this.disabledDays?this.disabledDays.join (''):false, ddaysText=this.disabledDaysText, format=this.format;if (this.showToday){var td=new Date ().clearTime (), disable=(tdmax—(ddMatch&&format&&ddMatch.test (td.dateFormat (format)))—(ddays&&ddays.indexOf (td.getDay ())≠-1));if (!this.disabled){this.todayBtn.setDisabled (disable);this.todayKeyListener[disable?'disable':'enable']();}}

var setCellClass=function (cal, cell){cell.title='';var t=d.clearTime (true).getTime ();cell.firstChild.dateValue=t;if (t==today){cell.className+=' x-date-today';cell.title=cal.todayText;}

if (t==sel){cell.className+=' x-date-selected';if (vis){Ext.fly (cell.firstChild).focus (50);}}

if (t

if (t>max){cell.className=' x-date-disabled';cell.title=cal.maxText;return;}

if (ddays){if (ddays.indexOf (d.getDay ())≠-1){cell.title=ddaysText;cell.className=' x-date-disabled';}}

if (ddMatch&&format){var fvalue=d.dateFormat (format);if (ddMatch.test (fvalue)){cell.title=ddText.replace ('%0', fvalue);cell.className=' x-date-disabled';}}};var i=0;for (;i

for (;i

var extraDays=0;for (;i<42;i++){textEls[i]. innerHTML=(++extraDays);d.setDate (d.getDate ()+1);cells[i].className='x-date-nextday';setCellClass (this, cells[i]);}

this.mbtn.setText (this.monthNames[date.getMonth ()]+' '+date.getFullYear ());if (!this.internalRender){var main=this.el.dom.firstChild, w=main.offsetWidth;this.el.setWidth (w+this.el.getBorderWidth ('lr'));Ext.fly (main).setWidth (w);this.internalRender=true;if (Ext.isOpera&&!this.secondPass){main.rows[0]. cells[1].style.width=(w-(main.rows[0].cells[0].offsetWidth+main.rows[0].cells[2].offsetWidth))+'px';this.secondPass=true;this.update.defer (10,this,[date]);}}}}});

Ext.Editor.override ({activateEvent:" click", initTarget: function (){if (this.isSeparate){this.field=Ext.ComponentMgr.create (this.field," textfield");}

if (!Ext.isEmpty (this.target, false)){var targetEl=Ext.net.getEl (this.target);if (!Ext.isEmpty (targetEl)){this.initTargetEvents (targetEl);}else{var getTargetTask=new Ext.util.DelayedTask (function (task){targetEl=Ext.get (this.target);if (!Ext.isEmpty (targetEl)){this.initTargetEvents (targetEl);task.cancel ();delete this. getTargetTask;}else{task.delay (500,undefined, this,[task]);}}, this);this.getTargetTask=getTargetTask;getTargetTask.delay (1,undefined, this,[getTargetTask]);}}}, retarget: function (target){if (this.getTargetTask){this.getTargetTask.cancel ();delete this. getTargetTask;}

this.target=Ext.net.getEl (target);if (this.target&&this.target.un&&!Ext.isEmpty (this.activateEvent, false)){if (this.target.isComposite){this.target.each (function (item){item.un (this.activateEvent, this. activateFn, item. dom);}, this);}else{this.target.un (this.activateEvent, this. activateFn, this.target.dom);}}

this.initTargetEvents (this.target);}, initTargetEvents: function (targetEl){this.target=targetEl;var ed=this, activate=function (){if (!ed.disabled){ed.startEdit (this);}};this.activateFn=activate;if (!Ext.isEmpty (this.activateEvent, false)){if (this.target.isComposite){this.target.each (function (item){item.on (this.activateEvent, this. activateFn, item. dom);}, this);}else{this.target.on (this.activateEvent, this. activateFn, this.target.dom);}}}, onBlur: function (){if (this.editing&&this.cancelOnBlur===true){this.cancelEdit ();return;}

if (this.allowBlur===true&&this.editing&&this.selectSameEditor≠=true){this.completeEdit ();}}});Ext.Editor.prototype.initComponent=Ext.Editor.prototype.initComponent.createSequence (function (){this.initTarget ();});Ext.Editor.prototype.completeEdit=Ext.Editor.prototype.completeEdit.createInterceptor (function (){if (!this.editing){return;}

if (this.field.checkOnBlur){this.field.checkOnBlur ();}});

Ext.Slider.prototype.onRender=Ext.Slider.prototype.onRender.createSequence (function (el){this.getValueField ().render (this.el.parent ()—this.el);});Ext.Slider.prototype.initComponent=Ext.Slider.prototype.initComponent.createSequence (function (){this.valuesState={};this.on («change», function (el, newValue, thumb){var sb=[], i=0;for (i;i

this.getValueField ().setValue (sb.join («,»));});});Ext.Slider.override ({getValueField:function (){if (!this.valueField){this.valueField=new Ext.form.Hidden ({id:this.id+" _Value", name: this. id+" _Value" });this.on («beforedestroy», function (){if (this.rendered){this.destroy ();}}, this. valueField);}

return this. valueField;}});Ext.form.SliderField.override ({initComponent:function (){var cfg;if (this.initialConfig.slider){cfg=this.initialConfig.slider;}else{cfg=Ext.copyTo ({id:this.id+" -slider" }, this. initialConfig,[" vertical" ," minValue" ," maxValue" ," decimalPrecision" ," keyIncrement" ," increment" ," clickToChange" ," animate" ]);if (this.useTips){var plug=this.tipText?{getText:this.tipText}:{};cfg.plugins=[new Ext.slider.Tip (plug)]; }}

this.slider=cfg.render?cfg:new Ext. Slider (cfg);Ext.form.SliderField.superclass.initComponent.call (this);}});

Ext.net.XTemplate=function (config){config=config—{};var html;this.proxyId=config.proxyId;if (config.el){config.el=Ext.getDom (config.el);html=config.el.value—config.el.innerHTML;}else{html=config.html;if (Ext.isArray (html)){html=html.join (««);}}

Ext.net.XTemplate.superclass.constructor.call (this, html, config. functions);};Ext.extend (Ext.net.XTemplate, Ext. XTemplate,{destroy:function (){var ns=this.ns—Ext.net.ResourceMgr.ns, id=this.itemId—this.proxyId;if (ns&&id){if (Ext.isObject (ns)&&ns[id]){try{delete ns[id]; }catch (e){ns[id]=undefined;}}else if (Ext.net.ResourceMgr.getCmp (ns+" ." +id)){try{delete Ext. ns (ns)[id]; }catch (f){Ext.ns (ns)[id]=undefined;}}}else if (window[this.proxyId]){window[this.proxyId]=null;}}});

Ext.History=(function (){var iframe, hiddenField, ready=false, currentToken;var getHash=function (){var href=top.location.href, i=href.indexOf («#»);return i>=0?href.substr (i+1):null;};var doSave=function (){hiddenField.value=currentToken;};var handleStateChange=function (token){currentToken=token;Ext.History.fireEvent («change», token);};var updateIFrame=function (token){var html=['

', token,"

«]. join („„);try{var doc=iframe.contentWindow.document;doc.open ();doc.write (html);doc.close ();return true;}catch (e){return false;}};var checkIFrame=function (){if (!iframe.contentWindow—!iframe.contentWindow.document){setTimeout (checkIFrame, 10);return;}

var doc=iframe.contentWindow.document;var elem=doc.getElementById („state“);var token=elem?elem.innerText:null;var hash=getHash ();setInterval (function (){doc=iframe.contentWindow.document;elem=doc.getElementById („state“);var newtoken=elem?elem.innerText:null;var newHash=getHash ();if (newtoken≠=token){token=newtoken;handleStateChange (token);top.location.hash=token;hash=token;doSave ();}else if (newHash≠=hash){hash=newHash;updateIFrame (newHash);}}, 50);ready=true;Ext.History.fireEvent („ready“, Ext. History);};var startUp=function (){currentToken=hiddenField.value?hiddenField.value:getHash ();if (Ext.isIE&&!Ext.isIE8){checkIFrame ();}else{var hash=getHash ();setInterval (function (){var newHash=getHash ();if (newHash≠=hash){hash=newHash;handleStateChange (hash);doSave ();}}, 50);ready=true;Ext.History.fireEvent („ready“, Ext. History);}};return{fieldId:“ x-history-field“, iframeId:» x-history-frame", events:{}, init: function (onReady, scope){if (this.listeners){this.on (this.listeners);delete this. listeners;}

if (ready){Ext.callback (onReady, scope,[this]);return;}

if (!Ext.isReady){Ext.onReady (function (){Ext.History.init (onReady, scope);});return;}

hiddenField=Ext.getDom (Ext.History.fieldId);if (Ext.isIE&&!Ext.isIE8){iframe=Ext.getDom (Ext.History.iframeId);}

this.addEvents («ready» ," change");if (onReady){this.on («ready», onReady, scope,{single:true});}

startUp ();}, add: function (token, preventDup){if (preventDup≠=false){if (this.getToken ()==token){return true;}}

if (Ext.isIE&&!Ext.isIE8){return updateIFrame (token);}else{top.location.hash=token;return true;}}, back: function (){history.go (-1);}, forward: function (){history.go (1);}, getToken: function (){return ready? currentToken:getHash ();}};})();Ext.apply (Ext.History, new Ext.util.Observable ());

Ext.net.Notification=function (){Ext.MessageBox.notify=function (title, msg){if (Ext.isString (title)){Ext.net.Notification.show ({title:title, html: msg—" «});}else{Ext.net.Notification.show (title);}};var notifications=[]; return{show:function (config){config=Ext.applyIf (config—{},{width:200,height:100,autoHide:true, plain: false, resizable: false, draggable: false, bodyStyle:» padding:3px;text-align:center", alignToCfg:{el:document, position:" br-br", offset:[-20,-20]}, showMode:" grid", closeVisible: false, bringToFront: false, pinEvent:" none", hideDelay:2500,shadow:false, showPin: false, pinned: false, showFx:{fxName:" slideIn", args:[" b" ,{duration:1}]}, hideFx:{fxName:" ghost", args:[" b" ,{duration:1}]}, focus: Ext. emptyFn, stopHiding: function (){this.removeClass («x-notification-auto-hide»);this.pinned=true;if (this.autoHide){this.hideTask.cancel ();}}, isStandardAlign: function (){return this.alignToCfg.el==document&&this.alignToCfg.position==="br-br" ;}, getStatndardAlign: function (){var w=[], i=0;for (i;i

return w;}, getOffset: function (){var offset=[], predefinedOffset=this.alignToCfg.offset—[-20,-20]; offset. push (predefinedOffset[0]);offset.push (predefinedOffset[1]);if (this.showMode==="grid" &&this.isStandardAlign ()){var saw=this.getStatndardAlign (), height=this.getSize ().height-offset[1], width=this.getSize ().width-offset[0], yPos=Ext.fly (this.alignToCfg.el).getViewSize ().height-height, xPos=Ext.fly (this.alignToCfg.el).getViewSize ().width-width, found=false, isIntersect=function (tBox, box){tBox.x2=tBox.x+tBox.width;tBox.y2=tBox.y+tBox.height;box.x2=box.x+box.width;box.y2=box.y+box.height;if ((tBox.x2-box.x)<=0—(box.x2-tBox.x)<=0){return false;}

if ((tBox.y2-box.y)<=0—(box.y2-tBox.y)<=0){return false;}

return true;};while (xPos>=0&&!found){while (yPos>=0&&!found){var intersect=false, i=0;for (i;i

found=!intersect;if (!found){yPos-=height;}}

if (!found){yPos=Ext.fly (this.alignToCfg.el).getViewSize ().height-height;xPos-=width;}}

if (found){offset[0]=offset[0]+((xPos+width)-Ext.fly (this.alignToCfg.el).getViewSize ().width);offset[1]=offset[1]+((yPos+height)-Ext.fly (this.alignToCfg.el).getViewSize ().height);}}

return offset;}, animShow: function (){var offset=this.getOffset ();notifications.push (this);this.alignOffset=offset;this.el.alignTo (this.alignToCfg.el—document, this.alignToCfg.position—" br-br", offset);if (Ext.isArray (this.showFx.args)&&this.showFx.args.length>0){this.showFx.args[this.showFx.args.length-1]=Ext.apply (this.showFx.args[this.showFx.args.length-1],{callback:this.afterShow, scope: this});}else{this.showFx.args=[{callback:this.afterShow, scope: this}]; }

this.el[this.showFx.fxName].apply (this.el, this.showFx.args);}, animHide: function (){if (Ext.isArray (this.hideFx.args)&&this.hideFx.args.length>0){this.hideFx.args[this.hideFx.args.length-1]=Ext.apply (this.hideFx.args[this.hideFx.args.length-1],{callback:this.doClose, scope: this});}else{this.showFx.args=[{callback:this.doClose, scope: this}];}

this.el[this.hideFx.fxName].apply (this.el, this.hideFx.args);}});config.cls=config.cls—" «;config.cls+=» x-notification" +(config.autoHide?" x-notification-auto-hide" :" «);var w=new Ext. Window (config), mOver=function (e, t){if (!this.pinned){this.hideTask.cancel ();this.delayed=true;}}, mOut=function (e, t){if (!this.pinned){this.hideTask.delay (this.hideDelay);this.delayed=false;}};w.on («render», function (){if (this.autoHide){this.body.on («mouseover», mOver, this);this.body.on («mouseout», mOut, this);this.header.on («mouseover», mOver, this);this.header.on («mouseout», mOut, this);}

if (this.contentEl){Ext.fly (this.contentEl).removeClass («x-hide-offsets»);}}, w);w.afterRender=w.afterRender.createSequence (function (){if (this.showPin){this.pin=function (e, tool){tool.hide ();this.tools.pin.show ();this.hideTask.cancel ();this.pinned=true;};this.unpin=function (e, tool){tool.hide ();this.tools.unpin.show ();this.hide ();this.pinned=false;};this.addTool ({id:" unpin", handler: this. pin, hidden: this. pinned, scope: this});this.addTool ({id:" pin", handler: this. unpin, hidden:!this.pinned, scope: this});}});w.toFront=function (e){var aw=Ext.WindowMgr.getActive ();this.manager.bringToFront (this);if (!Ext.isEmpty (aw)&&aw≠=this&&!this.bringToFront&&aw.manager){aw.manager.bringToFront (aw);aw.manager.bringToFront.defer (10,aw.manager,[aw]);}

return this;};w.focus=Ext.emptyFn;w.afterShow=w.afterShow.createSequence (function (){if (this.pinEvent≠="none"){this.body.on (this.pinEvent, this. stopHiding, this);this.on (this.pinEvent, this. stopHiding, this);}

if (this.autoHide&&!this.delayed&&!this.pinned){this.hideTask.delay (this.hideDelay);}});w.on («beforedestroy», function (){var i=0;for (i;i

if (this.contentEl){var ce=Ext.get (this.contentEl), el=Ext.net.ResourceMgr.getAspForm ()—Ext.getBody ();ce.addClass («x-hidden»);el=el.dom;el.appendChild (ce.dom);}

if (this.initialConfig.id){window[this.initialConfig.id]=undefined;}}, w);if (config.autoHide){w.hideTask=new Ext.util.DelayedTask (w.hide, w);}

if (config.closeVisible){var i=notifications.length-1;for (i;i>=0;i—){notifications[i]. destroy ();}}

w.on («beforehide», function (){this.el.disableShadow ();}, w);w.show (config.alignToCfg.el—document);return w;}};}();

Ext.net.TaskResponse={stopTask:-1,stopAjax:-2};Ext.net.TaskManager=function (config){Ext.apply (this, config—{});this.initManager.defer (this.autoRunDelay—50,this);};Ext.extend (Ext.net.TaskManager, Ext.util.Observable,{tasksConfig:[], getTasks: function (){return this. tasks;}, initManager: function (){this.runner=new Ext.util.TaskRunner (this.interval—10);var task, i=0;this.tasks=[]; for (i;i

return null;}, startTask: function (task){if (this.executing){return;}

task=this.getTask (task);if (task.onstart){task.onstart.apply (task.scope—task);}

this.runner.start (task);}, stopTask: function (task){this.runner.stop (this.getTask (task));}, startAll: function (){var i=0;for (i;i

if (this.serverRun){var o=this.serverRun ();o.control=this.owner;Ext.net.DirectEvent.request (o);}}});}});

Ext.net.ClickRepeater=function (config){this.addEvents («leftclick» ," rightclick" ," middleclick");Ext.net.ClickRepeater.superclass.constructor.call (this, config. el, config);};Ext.extend (Ext.net.ClickRepeater, Ext.util.ClickRepeater,{ignoredButtons:[], btnEvents:{0:" leftclick", 1:" middleclick", 2:" rightclick" }, enable: function (){if (this.disabled){this.el.on («mousedown», this. handleMouseDown, this);if ((this.preventDefault—this.stopDefault)&&!this.isButtonIgnored (0)){this.el.on («click», this. eventOptions, this);}

if ((this.preventDefault—this.stopDefault)&&!this.isButtonIgnored (2)){this.el.on («contextmenu», this. eventOptions, this);}}

this.disabled=false;}, isButtonIgnored: function (e){var ignored=false;Ext.each (this.ignoredButtons, function (b){if (b==(e.button—e)){ignored=true;return false;}}, this);return ignored;}, handleMouseDown: function (e){clearTimeout (this.timer);this.el.blur ();if (this.pressClass){this.el.addClass (this.pressClass);}

this.mousedownTime=new Date ();Ext.getDoc ().on («mouseup», this. handleMouseUp, this);this.el.on («mouseout», this. handleMouseOut, this);if (!this.isButtonIgnored (e)){this.fireEvent («mousedown», this, e);this.fireClick (e);}

if (this.accelerate){this.delay=400;}

this.timer=this.click.defer (this.delay—this.interval, this,[e]);}, click: function (e){if (!this.isButtonIgnored (e)){this.fireClick (e);}

this.timer=this.click.defer (this.accelerate?this.easeOutExpo (this.mousedownTime.getElapsed (), 400,-390,12 000):this.interval, this,[e]);}, fireClick: function (e){if (this.fireEvent («click», this, e)≠=false){this.fireEvent (this.btnEvents[e.button]—" click", this, e);}}, handleMouseReturn: function (e){this.el.un («mouseover», this. handleMouseReturn, this);if (this.pressClass){this.el.addClass (this.pressClass);}

this.click (e);}, handleMouseUp: function (e){clearTimeout (this.timer);this.el.un («mouseover», this. handleMouseReturn, this);this.el.un («mouseout», this. handleMouseOut, this);Ext.getDoc ().un («mouseup», this. handleMouseUp, this);this.el.removeClass (this.pressClass);if (!this.isButtonIgnored (e)){this.fireEvent («mouseup», this, e);}}});

Ext.Element.addMethods ({addKeyListenerEx:function (key, fn, scope){this.addKeyListener (key, fn—key.fn, scope—key.scope);return this;}, initDDEx: function (group, config, overrides){this.initDD (group, config, overrides);return this;}, initDDProxyEx: function (group, config, overrides){this.initDDProxy (group, config, overrides);return this;}, initDDTargetEx: function (group, config, overrides){this.initDDTarget (group, config, overrides);return this;}, positionEx: function (pos, zIndex, x, y){this.position (pos, zIndex, x, y);return this;}, relayEventEx: function (eventName, observable){this.relayEvent (eventName, observable);return this;}, scrollEx: function (direction, distance, animate){this.scroll (direction, distance, animate);return this;}, unmaskEx: function (){this.unmask ();return this;}, singleSelect: function (selector, unique){return Ext. get (Ext.select (selector, unique).elements[0]);}, setValue: function (val){if (Ext.isDefined (this.dom.value)){this.dom.value=val;}

return this;}, getValue: function (){return Ext. isDefined (this.dom.value)?this.dom.value:null;}, mask: function (msg, msgCls){var me=this, dom=me.dom, dh=Ext.DomHelper, EXTELMASKMSG="ext-el-mask-msg", el, mask;if (!(/^body/i.test (dom.tagName)&&me.getStyle («position»)==="static")&&!me.hasClass («x-page-mask»)){me.addClass («x-masked-relative»);}

el=Ext.Element.data (dom," maskMsg");if (el){el.remove ();}

el=Ext.Element.data (dom," mask");if (el){el.remove ();}

mask=dh.append (dom,{cls:" ext-el-mask" }, true);Ext.Element.data (dom," mask", mask);me.addClass («x-masked»);mask.setDisplayed (true);if (typeof msg==="string"){var mm=dh.append (dom,{cls:EXTELMASKMSG, cn:{tag:" div" }}, true);Ext.Element.data (dom," maskMsg", mm);mm.dom.className=msgCls?EXTELMASKMSG+" «+msgCls:EXTELMASKMSG;mm.dom.firstChild.innerHTML=msg;mm.setDisplayed (true);mm.center (me);}

if (Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&me.getStyle («height»)==="auto"){mask.setSize (undefined, me. getHeight ());}

return mask;}});

Ext.dd.DragSource.override ({getDropTarget:function (id){var dd=null, i;for (i in Ext.dd.DragDropMgr.ids){if (Ext.dd.DragDropMgr.ids[i][id]){dd=Ext.dd.DragDropMgr.ids[i][id]; if (dd.isNotifyTarget){return dd;}}}

return dd;}, onDragEnter: function (e, id){var target=this.getDropTarget (id, true);this.cachedTarget=target;if (this.beforeDragEnter (target, e, id)≠=false){if (target.isNotifyTarget){var status=target.notifyEnter (this, e, this. dragData);this.proxy.setStatus (status);}else{this.proxy.setStatus (this.dropAllowed);}

if (this.afterDragEnter){this.afterDragEnter (target, e, id);}}}});

Ext.net.ProxyDDCreator=function (config){Ext.net.ProxyDDCreator.superclass.constructor.call (this, config);this.config=config—{};if (!Ext.isEmpty (this.config.target, false)){var targetEl=Ext.net.getEl (this.config.target);if (!Ext.isEmpty (targetEl)){this.initDDControl (targetEl);}else{this.task=new Ext.util.DelayedTask (function (){targetEl=Ext.net.getEl (this.config.target);if (!Ext.isEmpty (targetEl)){this.task.cancel ();this.initDDControl (targetEl);}else{this.task.delay (500);}}, this);this.task.delay (1);}}};Ext.extend (Ext.net.ProxyDDCreator, Ext.util.Observable,{initDDControl:function (target){target=Ext.net.getEl (target);if (target.isComposite){this.ddControl=[]; target. each (function (targetEl){this.ddControl.push (this.createControl (Ext.apply (Ext.net.clone (this.config),{id:Ext.id (targetEl)})));}, this);}else{this.ddControl=this.createControl (Ext.apply (Ext.net.clone (this.config),{id:Ext.id (target)}));}}, createControl: function (config){var ddControl;if (config.group){ddControl=new config. type (config.id, config. group, config. config);Ext.apply (ddControl, config. config);}else{ddControl=new config. type (config.id, config. config);}

return ddControl;}, lock: function (){Ext.each (this.ddControl, function (dd){if (dd&&dd.lock){dd.lock ();}});}, unlock: function (){Ext.each (this.ddControl, function (dd){if (dd&&dd.unlock){dd.unlock ();}});}, unreg: function (){Ext.each (this.ddControl, function (dd){if (dd&&dd.unreg){dd.unreg ();}});}, destroy: function (){Ext.each (this.ddControl, function (dd){if (dd&&dd.unreg){dd.unreg ();}});}});

Ext.net.DragTracker=function (config){Ext.net.DragTracker.superclass.constructor.call (this, config);};Ext.extend (Ext.net.DragTracker, Ext.dd.DragTracker,{proxyCls:" x-view-selector", onStart: function (xy){if (!this.proxy){this.proxy=this.el.createChild ({cls:this.proxyCls});}else{this.proxy.setDisplayed («block»);}}, onDrag: function (e){var startXY=this.startXY, xy=this.getXY (), x=Math.min (startXY[0], xy[0]), y=Math.min (startXY[1], xy[1]), w=Math.abs (startXY[0]-xy[0]), h=Math.abs (startXY[1]-xy[1]);this.dragRegion.left=x;this.dragRegion.top=y;this.dragRegion.right=x+w;this.dragRegion.bottom=y+h;this.proxy.setRegion (this.dragRegion);}, onEnd: function (e){if (this.proxy){this.proxy.setDisplayed (false);}}});Ext.lib.Region.prototype.isIntersect=function (region){var t=Math.max (this.top, region. top), r=Math.min (this.right, region. right), b=Math.min (this.bottom, region. bottom), l=Math.max (this.left, region. left);return b>=t&&r>=l;};

(function (){var buf=[]; if (!Ext.isIE6){buf.push («.x-form-radio-group .x-panel-body,.x-form-check-group .x-panel-body{background-color:transparent;} .x-form-cb-label-nowrap{white-space:nowrap;} .x-form-cb-label-nowrap .x-form-item-label{white-space:normal;}.x-label-icon{width:16px;height:16px;margin-left:3px;margin-right:3px;vertical-align:middle;border:0px !important;}.x-label-value{vertical-align:middle;}»);}

if (Ext.isIE6){buf.push («.x-label-icon{width:16px;height:16px;vertical-align:middle;}»);buf.push («.ext-ie6 .x-toolbar .x-tab-panel div{font-size:1px;}»);buf.push («.ext-ie6 .x-grid-editor .x-form-text {top:0px !important;}»);buf.push («.ext-ie6 .x-form-field-wrap.x-form-field-trigger-wrap{padding-bottom:1px;}»);buf.push («.ext-ie6 .x-form-element .x-form-field-wrap.x-form-field-trigger-wrap{padding-bottom:0px;}»);buf.push («.x-layout-split{background-color:transparent;} .ext-strict .ext-ie6 .x-layout-split{background-color:transparent!important;filter:none;}»);}

if (Ext.isIE7){buf.push («.ext-ie7 .x-tree-editor .x-form-text{margin: 0px 0px! important;}»);buf.push («.ext-ie7 .x-toolbar .x-tab-panel div{font-size:1px;}»);buf.push («.ext-ie7 .x-grid3 .x-grid-editor .x-form-text {top:0px !important;margin-top:0px !important;}»);}

if (Ext.isIE){buf.push («.ext-ie .x-form-check-wrap.x-item-disabled{filter:none;}»);buf.push («.ext-ie .x-item-disabled.x-box-item{filter: none;}»);buf.push («.ext-ie .x-fieldset LEGEND{margin-bottom:0px;}»);}

if (Ext.isWebKit){buf.push («.ext-webkit .x-tree-editor .x-form-text {padding-bottom:1;padding-top:1px;}»);buf.push («.ext-webkit .x-small-editor .x-form-field-trigger-wrap .x-form-trigger{height:21px;}»);buf.push («.ext-webkit .x-grid3-add-row .x-small-editor .x-form-field-trigger-wrap .x-form-trigger{height:19px;}»);}

buf.push («.ext-ie6 .x-form-field-trigger-wrap .x-form-text, .ext-ie7 .x-form-field-trigger-wrap .x-form-text{margin-bottom: -2px;}»);buf.push («.ext-ie6 .x-form-item .x-form-field-trigger-wrap .x-form-text, .ext-ie7 .x-form-item .x-form-field-trigger-wrap .x-form-text{margin-bottom: -1px;} «);buf.push («.ext-ie8 .x-toolbar-cell .x-form-field-trigger-wrap .x-form-text{top:0px;}»);buf.push («.x-textfield-icon{background-repeat:no-repeat;background-position:0 50%;width:16px;height:16px;margin-left:1px;}.x-textfield-icon-input{padding-left:20px;}.x-form-field-wrap .x-textfield-icon{top:3px;left:2px;}»);buf.push («input.x-tree-node-cb{margin-left:1px;height:18px;vertical-align:bottom;}.x-tree-node .x-tree-node-inline-icon{background:transparent;height:16px !important;}.x-field-note{font-size:12px;color:gray;}.x-field-multi{float:left;padding-right:3px;position:relative;}div.x-inline-toolbar{padding:0px !important;border:0px !important;background-color:transparent !important;background-image:none !important;}»);buf.push («.x-grid3 .x-row-expander-control TABLE{table-layout: auto;} .x-grid3 .x-row-expander-control TABLE. x-grid3-row-table, .x-grid3 .x-row-expander-control .x-grid3-header-offset table {table-layout:fixed;} .x-fieldset.x-form-invalid{border-color:#c30;}»);buf.push («.ext-ie6 ul. x-menu-list li. x-menu-sep-li{height:5px !important;}»);buf.push («.x-form-item.x-form-label-top label. x-form-item-label{width:auto;float:none;clear:none;display:inline;margin-bottom:4px;position:static;}»);buf.push («.x-menu-field-icon{top:auto;margin-top:3px;margin-left:3px;}»);buf.push («.x-toolbar-classic .x-btn-tl{background-position:0 0} .x-toolbar-classic .x-btn-tr{background-position:-3px 0} .x-toolbar-classic .x-btn-tc{background-position:0 -6px} .x-toolbar-classic .x-btn-ml{background-position:0 -24px} .x-toolbar-classic .x-btn-mr{background-position:-3px -24px} .x-toolbar-classic .x-btn-mc{background-position:0 -1096px} .x-toolbar-classic .x-btn-bl{background-position:0 -3px} .x-toolbar-classic .x-btn-br{background-position:-3px -3px} .x-toolbar-classic .x-btn-bc{background-position:0 -15px}»);buf.push («.x-table-layout-cell{vertical-align:top;}»);buf.push («.x-form-field-wrap.x-top-note .x-form-trigger{top:auto;}»);buf.push («.x-btn-no-arrow{padding-right:0px !important;background:none !important;}»);buf.push («.x-form-indicator{height:18px;position:absolute;left:0;top:0;display:block;background-color: transparent;background-repeat:no-repeat;background-position:0 3px;padding-top:3px;}»);buf.push («.x-column-layout-ct {overflow:hidden;zoom:1;}»);buf.push («.x-column-layout-bg-ct, .x-column-layout-bg-ct .x-column-inner {background-color:#f0f0f0;}»);buf.push («.x-theme-blue .x-column-layout-bg-ct, .blue .x-column-layout-bg-ct .x-column-inner {background-color:#dfe8f6;}»);buf.push («.x-fieldset.x-column{padding:10px;padding-top:0px;}»);buf.push («.x-top-note-label{margin-top:14px;}»);buf.push («.x-form-item .x-form-element .x-form-display-field{padding-top:3px;}»);buf.push («.ux-layout-center-item{margin:0 auto;text-align:left;}»);buf.push («.x-form-field-wrap .x-form-text.clear-right{border-right:0px !important} .x-form-field-wrap img. shift-trigger{margin-left:-1px !important}»);buf.push («.x-combo-list-item{border: 1px dotted white;} .x-multi-selected{border: 1px dotted black;cursor:pointer;} .x-mcombo-nimg-item img {height:16px;width:0px;float:left;} .x-mcombo-img-item img {width:16px;height:16px;float:left;background-color: transparent; background-position: -1px -1px !important; background-repeat:no-repeat !important;}»);buf.push («.ux-editable-grid{padding:0;}»);buf.push («.x-notification-auto-hide .x-tool-close{display:none !important}»);buf.push («.x-grid3-row-expanded .x-grid3-row-expander {background-position:-21px 2px;} .x-grid3-row-collapsed .x-grid3-row-expander {background-position:4px 2px;} .x-grid3-row-expanded .x-grid3-row-body {display:block !important;} .x-grid3-row-collapsed .x-grid3-row-body {display:none !important;}»);buf.push («.x-form-invalid.x-form-composite{background-color:transparent !important;}»);buf.push («.x-form-file-wrap.x-box-item{position:absolute;}»);buf.push («.x-fieldset{padding-top: 0px! important;}»);if (Ext.isIE9){buf.push («.ext-ie input. x-tree-node-cb, .ext-strict .ext-ie8 .ext-ie input. x-tree-node-cb, .ext-ie8 .x-form-check-wrap input {width:auto;height:auto;}»);}

if (Ext.isIE7&&(document.documentMode===7—document.documentMode===5)){buf.push («.ext-ie7 .x-form-text{margin-top: 0px;}»);}

buf.push («.ext-shim{background-color:#cccccc;}»);buf.push («.x-tab-strip-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}»);Ext.net.ResourceMgr.registerCssClass («Ext.Net.CSS», buf. join (««));Ext._stringFormat=String.format;Ext.onReady (function (){String.format=Ext._stringFormat;});if (typeof Sys≠="undefined»){Sys.Application.notifyScriptLoaded ();}})();

/*!

* Ext JS Library 3.

3.0

* Copyright© 2006;2010 Ext JS, Inc.

* licensing@extjs.com

*

http://www.extjs.com/license

*/

ï"¿/*

* Russian translation

* By ZooKeeper (utf-8 encoding)

* 6 November 2007

*/

Ext.UpdateManager.defaults.indicatorText = '

Идет з агрузка…

';

if (Ext.View) {

Ext.View.prototype.emptyText = «» ;

}

if (Ext.grid.GridPanel) {

Ext.grid.GridPanel.prototype.ddText = «{0} выбранных строк» ;

}

if (Ext.TabPanelItem) {

Ext.TabPanelItem.prototype.closeText = «Ð—акрыть эту вкÐ"адку» ;

}

if (Ext.form.Field) {

Ext.form.Field.prototype.invalidText = «Ð—начение в этом поÐ"е неверное» ;

}

if (Ext.LoadMask) {

Ext.LoadMask.prototype.msg = «Ð—агруз ка…» ;

}

Date.monthNames = [

" Январь" ,

" ФевраÐ"ÑŒ" ,

" Март" ,

" АпреÐ"ÑŒ" ,

" Май" ,

" Июнь" ,

" ИюÐ"ÑŒ" ,

" Август" ,

" Сентябрь" ,

" Октябрь" ,

" Ноябрь" ,

" Ð"екабрь"

];

Date.shortMonthNames = [

" Янв" ,

" Февр" ,

" Март" ,

" Апр" ,

" Май" ,

" Июнь" ,

" ИюÐ"ÑŒ" ,

" Авг" ,

" Сент" ,

" Окт" ,

" Нояб" ,

" Ð"ек"

];

Date.getShortMonthName = function (month) {

return Date. shortMonthNames[month];

};

Date.monthNumbers = {

'Янв': 0,

'Фев': 1,

'Мар': 2,

'Апр': 3,

'Май': 4,

'Июн': 5,

'ИюÐ"': 6,

'Авг': 7,

'Сен': 8,

'Окт': 9,

'Ноя': 10,

'Ð"ек': 11

};

Date.getMonthNumber = function (name) {

return Date. monthNumbers[name.substring (0, 1).toUpperCase () + name. substring (1, 3).toLowerCase ()];

};

Date.dayNames = [

" Ð'оскресенье" ,

" ПонедеÐ"ьник" ,

" Ð'торник" ,

" Среда" ,

" Четверг" ,

" Пятница" ,

" Суббота"

];

Date.getShortDayName = function (day) {

return Date. dayNames[day]. substring (0, 3);

};

if (Ext.MessageBox) {

Ext.MessageBox.buttonText = {

ok: «OK» ,

cancel: «ÐžÑ‚мена» ,

yes: «Ð"а» ,

no: «ÐÐµÑ‚»

};

}

if (Ext.util.Format) {

Ext.util.Format.date = function (v, format) {

if (!v) return «» ;

if (!(v instanceof Date)) v = new Date (Date.parse (v));

return v. dateFormat (format — «d.m.Y»);

};

}

if (Ext.DatePicker) {

Ext.apply (Ext.DatePicker.prototype, {

todayText: «Ð¡ÐµÐ³Ð¾Ð´Ð½Ñ» ,

minText: «Ð­Ñ‚а дата раньше минимаÐ"ьной даты» ,

maxText: «Ð­Ñ‚а дата поз же максимаÐ"ьной даты» ,

disabledDaysText: «» ,

disabledDatesText: «» ,

monthNames: Date. monthNames,

dayNames: Date. dayNames,

nextText: 'СÐ"едующий месяц (Control+Ð'право)',

prevText: 'Предыдущий месяц (Control+Ð'Ð"ево)',

monthYearText: 'Ð'ыбор месяца (Control+Ð'верх/Ð'низ дÐ"я выбора года)',

todayTip: «{0} (Пробел)" ,

format: «d.m.y» ,

okText: «OK » ,

cancelText: «ÐžÑ‚мена» ,

startDay: 1

});

}

if (Ext.PagingToolbar) {

Ext.apply (Ext.PagingToolbar.prototype, {

beforePageText: «Ð¡Ñ‚раница» ,

afterPageText: «Ð¸Ð· {0}» ,

firstText: «ÐŸÐµÑ€Ð²Ð°Ñ страница» ,

prevText: «ÐŸÑ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ страница» ,

nextText: «Ð¡Ð"едующая страница» ,

lastText: «ÐŸÐ¾ÑÐ"едняя страница» ,

refreshText: «ÐžÐ±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ» ,

displayMsg: «ÐžÑ‚ображаются з аписи с {0} по {1}, всего {2}» ,

emptyMsg: 'Нет данных дÐ"я отображения'

});

}

if (Ext.form.TextField) {

Ext.apply (Ext.form.TextField.prototype, {

minLengthText: «ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð"ьная дÐ"ина этого поÐ"я {0}» ,

maxLengthText: «ÐœÐ°ÐºÑÐ¸Ð¼Ð°Ð"ьная дÐ"ина этого поÐ"я {0}» ,

blankText: «Ð­Ñ‚о поÐ"е обяз атеÐ"ьно дÐ"я з апоÐ"нения» ,

regexText: «» ,

emptyText: null

});

}

if (Ext.form.NumberField) {

Ext.apply (Ext.form.NumberField.prototype, {

minText: «Ð—начение этого поÐ"я не может быть меньше {0}» ,

maxText: «Ð—начение этого поÐ"я не может быть боÐ"ьше {0}» ,

nanText: «{0} не явÐ"яется чисÐ"ом»

});

}

if (Ext.form.DateField) {

Ext.apply (Ext.form.DateField.prototype, {

disabledDaysText: «ÐÐµ доступно» ,

disabledDatesText: «ÐÐµ доступно» ,

minText: «Ð"ата в этом поÐ"е доÐ"жна быть поз де {0}» ,

maxText: «Ð"ата в этом поÐ"е доÐ"жна быть раньше {0}» ,

invalidText: «{0} не явÐ"яется правиÐ"ьной датой - дата доÐ"жна быть указ ана в Ñ"ормате {1}» ,

format: «d.m.y» ,

altFormats: «d.m.y-d/m/Y-d-m-y-d-m-Y-d/m-d-m-dm-dmy-dmY-d-Y-m-d»

});

}

if (Ext.form.ComboBox) {

Ext.apply (Ext.form.ComboBox.prototype, {

loadingText: «Ð—агруз ка…» ,

valueNotFoundText: undefined

});

}

if (Ext.form.VTypes) {

Ext.apply (Ext.form.VTypes, {

emailText: 'Это поÐ"е доÐ"жно содержать адрес эÐ"ектронной почты в Ñ"ормате «user@example.com» ',

urlText: 'Это поÐ"е доÐ"жно содержать URL в Ñ"ормате «http:/'+'/www.example.com» ',

alphaText: 'Это поÐ"е доÐ"жно содержать тоÐ"ько Ð"атинские буквы и симвоÐ" подчеркивания «_» ',

alphanumText: 'Это поÐ"е доÐ"жно содержать тоÐ"ько Ð"атинские буквы, циÑ"ры и симвоÐ" подчеркивания «_» '

});

}

if (Ext.form.HtmlEditor) {

Ext.apply (Ext.form.HtmlEditor.prototype, {

createLinkText: 'ПожаÐ"уйста введите адрес:',

buttonTips: {

bold: {

title: 'ПоÐ"ужирный (Ctrl+B)',

text: 'Применение поÐ"ужирного начертания к выдеÐ"енному тексту.',

cls: 'x-html-editor-tip'

},

italic: {

title: 'Курсив (Ctrl+I)',

text: 'Применение курсивного начертания к выдеÐ"енному тексту.',

cls: 'x-html-editor-tip'

},

underline: {

title: 'Подчёркнутый (Ctrl+U)',

text: 'Подчёркивание выдеÐ"енного текста.',

cls: 'x-html-editor-tip'

},

increasefontsize: {

title: 'УвеÐ"ичить раз мер',

text: 'УвеÐ"ичение раз мера шриÑ"та.',

cls: 'x-html-editor-tip'

},

decreasefontsize: {

title: 'Уменьшить раз мер',

text: 'Уменьшение раз мера шриÑ"та.',

cls: 'x-html-editor-tip'

},

backcolor: {

title: 'ЗаÐ"ивка',

text: 'Из менение цвета Ñ"она дÐ"я выдеÐ"енного текста иÐ"и абз аца.',

cls: 'x-html-editor-tip'

},

forecolor: {

title: 'Цвет текста',

text: 'Из мение цвета текста.',

cls: 'x-html-editor-tip'

},

justifyleft: {

title: 'Ð'ыровнять текст по Ð"евому краю',

text: 'Ð'ыровнивание текста по Ð"евому краю.',

cls: 'x-html-editor-tip'

},

justifycenter: {

title: 'По центру',

text: 'Ð'ыровнивание текста по центру.',

cls: 'x-html-editor-tip'

},

justifyright: {

title: 'Ð'ыровнять текст по правому краю',

text: 'Ð'ыровнивание текста по правому краю.',

cls: 'x-html-editor-tip'

},

insertunorderedlist: {

title: 'Маркеры',

text: 'Начать маркированный список.',

cls: 'x-html-editor-tip'

},

insertorderedlist: {

title: 'Нумерация',

text: 'Начать нумернованный список.',

cls: 'x-html-editor-tip'

},

createlink: {

title: 'Ð'ставить гиперссыÐ"ку',

text: 'Соз дание ссыÐ"ки из выдеÐ"енного текста.',

cls: 'x-html-editor-tip'

},

sourceedit: {

title: 'Исходный код',

text: 'ПерекÐ"ючиться на исходный код.',

cls: 'x-html-editor-tip'

}

}

});

}

if (Ext.form.BasicForm) {

Ext.form.BasicForm.prototype.waitTitle = «ÐŸÐ¾Ð¶Ð°Ð"уйста подождите…» ;

}

if (Ext.grid.GridView) {

Ext.apply (Ext.grid.GridView.prototype, {

sortAscText: «Ð¡Ð¾Ñ€Ñ‚ировать по воз растанию» ,

sortDescText: «Ð¡Ð¾Ñ€Ñ‚ировать по убыванию» ,

lockText: «Ð—акрепить стоÐ"бец» ,

unlockText: «Ð¡Ð½ÑÑ‚ÑŒ з акрепÐ"ение стоÐ"бца» ,

columnsText: «Ð¡Ñ‚оÐ"бцы»

});

}

if (Ext.grid.GroupingView) {

Ext.apply (Ext.grid.GroupingView.prototype, {

emptyGroupText: '(Пусто)',

groupByText: 'Ð"руппировать по этому поÐ"ÑŽ',

showGroupsText: 'Отображать по группам'

});

}

if (Ext.grid.PropertyColumnModel) {

Ext.apply (Ext.grid.PropertyColumnModel.prototype, {

nameText: «ÐÐ°Ð· вание» ,

valueText: «Ð—начение» ,

dateFormat: «d.m.Y»

});

}

if (Ext.SplitLayoutRegion) {

Ext.apply (Ext.SplitLayoutRegion.prototype, {

splitTip: «Ð¢ÑÐ½Ð¸Ñ‚е дÐ"я из менения раз мера.» ,

collapsibleSplitTip: «Ð¢ÑÐ½Ð¸Ñ‚е дÐ"я из менения раз мера. Ð"войной щеÐ"чок спрячет панеÐ"ÑŒ.»

});

}

if (Ext.layout.BorderLayout && Ext.layout.BorderLayout.SplitRegion) {

Ext.apply (Ext.layout.BorderLayout.SplitRegion.prototype, {

splitTip: «Ð¢ÑÐ½Ð¸Ñ‚е дÐ"я из менения раз мера.» ,

collapsibleSplitTip: «Ð¢ÑÐ½Ð¸Ñ‚е дÐ"я из менения раз мера. Ð"войной щеÐ"чок спрячет панеÐ"ÑŒ.»

});

}

?/* ————————————————————————————————— Common tags styles */ BODY { FONT: 9pt/18pt verdana; background: white; } TABLE { FONT: 9pt/14pt verdana; line-height: 14pt; } H2 { CLEAR: both } H3 { CLEAR: both } ACRONYM { FONT-WEIGHT: bold; font-size:8pt; VERTICAL-ALIGN: super;CURSOR: help } input { font-family: verdana; font-size:10pt;} td, div { font-family: verdana; font-size:10pt; } select { font-family: verdana; font-size:10pt; } textarea { font-family: verdana; font-size:10pt; } a { FONT-family: verdana; color: blue; } a. vizited { color: blue; overflow: hidden } img { border-style: none; } /* ————————————- Help */ div. HelpBody img { display: block; margin-top:5px;} div. HelpBody span { display: block; margin-top:5px;} /* ————————————————————————————————— ??? */ td. MenuPart { padding-left:10px; } div. tree { padding-left:12px; } div. tree td { line-height:8pt; } div. tree td div { height: 20px! important } div. TreeHead { width:

100%; BACKGROUND-COLOR: #2947AC; } div. TreeHeadText { clear: both; padding-top:6pt; padding-left:12pt; FONT-SIZE: 10pt; line-height:11pt; letter-spacing:0pt; color: White; font-weight:bold; text-align:left; } div. TreeHeadText td { FONT-SIZE: 10pt; line-height:11pt; letter-spacing:0pt; color: White; font-weight:bold; text-align:left; } /* ——————————————————————————————————- ???? ??? */ #ArchiveNews { PADDING-RIGHT: 16pt; PADDING-LEFT: 16pt; PADDING-BOTTOM: 16pt; TEXT-INDENT: 17pt; TEXT-ALIGN: left} #ArchiveNews SPAN { PADDING-RIGHT: 0pt; DISPLAY: block; PADDING-LEFT: 2pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: -8pt; PADDING-TOP: 12pt} #News { PADDING-RIGHT: 16pt; PADDING-LEFT: 16pt; BACKGROUND-IMAGE: url ('/App_Themes/APClassic/Images/news.png'); PADDING-BOTTOM: 16pt; TEXT-INDENT: 17pt; BACKGROUND-REPEAT: no-repeat; TEXT-ALIGN: left} #News SPAN { PADDING-RIGHT: 0pt; DISPLAY: block; PADDING-LEFT: 2pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: -8pt; PADDING-TOP: 12pt} #TitleText { CLEAR: both; PADDING-RIGHT: 16pt; MARGIN-TOP: 16pt; PADDING-LEFT: 16pt; BACKGROUND-IMAGE: url ('/App_Themes/APClassic/Images/about.png'); PADDING-BOTTOM: 16pt; PADDING-TOP: 16pt; BORDER-BOTTOM: gray thin solid; BACKGROUND-REPEAT: no-repeat; TEXT-ALIGN: left} #TitleText UL { MARGIN-LEFT: 8pt} #TitleText LI { LIST-STYLE-TYPE: square} /* QUESTION -> ANSWER*/ .question { border-top: thin solid Silver; background-image: url ('images/list-image.png'); background-repeat: no-repeat; font-weight: bold; display: block; text-align: left; padding-top: 8pt; margin-top: 16pt;} question { border-top: thin solid Silver; background-image: url ('images/list-image.png'); background-repeat: no-repeat; font-weight: bold; display: block; text-align: left; padding-top: 8pt; margin-top: 16pt;} .answer { margin-bottom: 16pt; margin-left: 5%; display: block;} answer { display: block; margin-bottom: 16pt; margin-left: 5%;} .MM { padding: 12pt; text-align: left;} .MM span { border-top: #CCCCCC solid 1pt; background-image: url (images/point.png); background-repeat: no-repeat; background-position: top left; text-indent: -8pt; padding: 2pt 8pt 8pt 26pt; margin-top: 16pt; display: block;} .MM a { display: block; text-align:right;} /* ??? ?? ??? */ .stat_table tr td.name {padding-bottom:0px; padding-left:0px; background-image:url ('/App_Themes/APClassic/Images/black_dots.gif'); background-repeat:repeat-x; background-position:right bottom ;} .stat_table tr td span {width:

100%;BACKGROUND-COLOR:#ffffff;} .stat_table tr td. stat_desc {font-size:9px;} /* ————————————————————————————————— MasterPage */ td. TopMenu { TEXT-ALIGN: left; PADDING-LEFT: 12pt; font-weight:bold; background: url («menu_back.gif») right top; } td. TopMenu table { display: inline! important } div. Header { font-size:12pt; padding-top: 7px; padding-left:2px; padding-bottom: 10px; font-weight:bold; } .DynamicMenu { border-width:1px; border-style:solid; border-color:Black; } table. PageTitle { margin-bottom:5px; height:20px;} table. PageTitle span.Active { font-size: 14pt; color: black; font-weight:bold; clear: none; padding-right:7pt; } table. PageTitle a { color: #f38f09; } /* ————————————————————————————————— Table. AdvTable */ /* table. AdvTable { WIDTH:132px; MARGIN-TOP:19px; BACKGROUND-COLOR:#ffffff; BORDER:#cccccc 1px solid; } */ table. AdvTable { WIDTH:132px; MARGIN-TOP:19px; BACKGROUND-COLOR:#ffffff; BORDER:0px;} table. AdvTable th { color:#666 666; font-weight:normal; background-color:#E3E1E9;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:10pt; text-align:right; padding-right:5px; } table. AdvTable td { padding:5px; } /* ————————————————————————————————— Footer */ /* NOT LOGGED FOOTER */ .DivDiv { WIDTH: 100%; } .Copyright { LINE-HEIGHT: 10pt; text-align: left; font-size: xx-small; float: left; } .Maker { LINE-HEIGHT: 10pt; text-align: right; font-size: xx-small; float: none; } .Maker a { text-decoration: none; } .AboutPanel { BORDER-TOP: silver thin solid; PADDING-LEFT: 0pt; PADDING-BOTTOM: 0pt; PADDING-TOP: 1pt; TEXT-ALIGN: right } .AboutPanel A { PADDING-LEFT: 6pt; PADDING-BOTTOM: 6pt; PADDING-TOP: 6pt } /* ————————————————————————————————— Table */ tr. Header { text-align: left; FONT-WEIGHT: bold; font-size: 10pt; height: 35px; BACKGROUND-COLOR: #2947AC; color: White; } tr. Pager { text-align: left; font-size: 10pt; FONT-WEIGHT: bold; height: 35px; BACKGROUND-COLOR: #2947AC; color: White; } tr. Pager td { text-align: left; font-size: 10pt; padding-left:3pt; FONT-WEIGHT: bold; BACKGROUND-COLOR: #2947AC; color: White; } tr. Pager a { FONT-WEIGHT: bold; color: White; } tr. EmptyDataRow { BACKGROUND-COLOR: #2947AC; height: 25px; color: White; font-weight:bold; } tr. Alternating { BACKGROUND-COLOR: #e8e8e8; } tr. EditRow { border:1px solid #2947AC; background-color:#5080EC; } /* ————————————————————————————————— Doc. Table */ table. DocTable { padding: 0pt; width: 100%; border: 1pt solid #2947AC; } table. DocTable td { PADDING-RIGHT: 1pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; font-size: 9pt; line-height: 10pt; } table. DocTable th { PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; } table. DocTable tr { height:24px; } /* ————————————————————————————————— Extended. Table */ table. ExtendedTable { padding: 0pt; width: 100%; border: 1pt solid #2947AC; } table. ExtendedTable td { PADDING-RIGHT: 1pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; font-size: 9pt; line-height: 10pt; } table. ExtendedTable th { PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; } table. ExtendedTable tr { height:24px;} table. ExtendedTable a.SortHeader { FONT-WEIGHT: bold; color: White; } /* ————————————————————————————————— Admin. Table */ table. AdminTable { padding: 0pt; width: 100%; border: 1pt solid #2947AC; } table. AdminTable td { font-size:8pt; PADDING-RIGHT: 1pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; line-height: 10pt; } table. AdminTable th { font-size:9pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; } table. AdminTable tr { height:24px;} table. AdminTable a.SortHeader { FONT-WEIGHT: bold; color: White; } table. CommandHeader input { width:

100%; } table. CommandHeader input { font-size:8pt; margin-left:-3pt; } table. CommandHeader select.Select { font-size:8pt; margin-left:-3pt; overflow: hidden; } table. CommandHeader td.filter div div {width:inherit; height: inherit } table. CommandHeader td.filter div div div div table td {padding:0px} div. PageRows {width:

100%; text-align:right; padding-top:5px; } div. PageRows a { padding-left:10px; } /* ————————————————————————————————— Short. Table */ table. ShortTable { padding: 0pt; border: 1pt solid #2947AC; } table. ShortTable td { PADDING-RIGHT: 1pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; font-size: 9pt; line-height: 10pt; } table. ShortTable th { PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; } table. ShortTable tr { height:24px;} /* ————————————————————————————————— Attr. Table */ table. AttrTable { width:

100%; height: 30px; } table. AttrTable td.name { width:

20%; padding-right:5px; background-color:#2947AC; color: white; font-weight:bold; text-align:right; } table. AttrTable td. edit { text-align:left; padding-left:5px; } table. AttrTable td. edit input{ width:

80%; } table. AttrTable td. edit span input{ width:20px; } table. AttrTable td. edit select. Select{ width:

81%; } /* ————————————————————————————————— ItemModify. Table */ table. ItemModify { width:

100%; height: 30px; border:1px solid #2947AC; } table. ItemModify tr {height:30px; vertical-align:top; } table. ItemModify td.name { padding-top:4pt; width:

20%; padding-right:5px; background-color:#2947AC; color: white; font-weight:bold; text-align:right; font-size:9pt;} table. ItemModify td. edit { padding-top:3pt; text-align:left; padding-left:5px; font-size:9pt; } table. ItemModify td. edit input. InputLong { width:

90%; font-size:9pt; display: block;} table. ItemModify td. edit input. InputShort{ width:100px; font-size:9pt; display: block;} table. ItemModify td. edit input. Checkbox{ width: auto; } table. ItemModify td. edit select. Select{ margin-left: 0pt; width:

90%; font-size:9pt; } table. ItemModify td. edit table. CheckBoxList { margin-top:1pt; } table. ItemModify td. edit table { padding-top:3pt; text-align:left; padding-left:5px; font-size:9pt; } table. ItemModify td. edit table.td.itemname { padding-top:4pt; width:

20%; padding-right:5px; font-weight:bold; text-align:right; font-size:9pt;} table. ItemModify td. edit table.td.edit { padding-top:3pt; text-align:left; padding-left:5px; font-size:9pt; } table. ItemModify td. edit table.td.edit.input.InputLong { width:

90%; font-size:9pt; display: block;} table. ItemModify td. edit table.td.edit.input.InputShort{ width:100px; font-size:9pt; display: block;} table. ItemModify td. edit table.td.edit.input.Checkbox{ width: auto; } table. ItemModify td. edit table.td.edit.select.Select{ margin-left: 0pt; width:

90%; font-size:9pt; } div. ItemModify { height: 30px; padding-top:10px; } div. ItemModify input { width:100px; padding-right:5px; } /* ————————————————————————————————— StatTable */ table. StatTable { width:

70%; } table. StatTable td { PADDING-BOTTOM: 0px; VERTICAL-ALIGN: bottom; } table. StatTable td.name { width:

80%; background-image:url ('/App_Themes/APClassic/Images/black_dots.gif'); background-repeat:repeat-x; background-position:right bottom; } table. StatTable span { background-color:#FFFFFF; padding-left: 14pt; margin-left:-4pt; } /* ————————————————————————————————— Modal Popup */ .modalBackground { background-color:White; filter: Alpha (Opacity=60); -moz-opacity: 0.6; opacity: .6; } .modalPopup { position: absolute; background-color:#ECE9D8; border-width:3px; border-style:solid; border-color:#2947AC; padding:3px; width:300px; } .uProgrDiv { position: absolute; background-color:White; filter: Alpha (Opacity=70); -moz-opacity: 0.7; opacity: .7; background-image:url ('/App_Themes/APClassic/Images/ajax-loader.gif'); background-position:center; background-repeat:no-repeat; } /* ————————————————————————————————— Footer */ div. FooterMenu { FLOAT: left; TEXT-ALIGN: left } div. Disclaimer { float: right; LINE-HEIGHT: 11pt; } /* ————————————————————————————————— HeaderTable */ table. HeaderTable td. edit div div {width:inherit; height: inherit } table. HeaderTable td. edit div div div div table td {padding:0px} /* ————————————————————————————————— SAPE */ div. SAPE {color:Gray} div. SAPE A {color:Gray} /* —————————————————————————————————- SURVEY */ #appealDiv {width:

100%; text-align:center; font-weight:bold;} .survey tr td div {margin-bottom:10px; text-align:justify; display: block;} .survDiscl {border-style:solid; border-width:1pt; border-color:#f38f09; background-color:#fff6e7; padding:5px;} .questClass {width:

100%; border-bottom-width:1pt; border-bottom-style:solid; border-bottom-color:#c5c5c5;} /* —————————————————————————————————- TABS */ #divLogInTabs { float: left; width:

100%; background:#efefef; font-size:

93%; line-height:normal; } #divLogInTabs ul { margin:0; float: right; padding-top: 10px; list-style:none; } #divLogInTabs li { display: inline; margin:0; padding:0; } #divLogInTabs a { float: left; margin:0; padding:0 0 0 4px; text-decoration:none; } #divLogInTabs a span { float: left; display: block; background: url («tabright.gif») no-repeat right top; padding:5px 15px 4px 6px; color:#FFF; } /* Commented Backslash Hack hides rule from IE5-Mac */ #divLogInTabs a span {float:none;} /* End IE5-Mac hack */ #divLogInTabs a: hover span { color:#FFF; } #divLogInTabs a: hover { background-position:

0% -42px; } #divLogInTabs a: hover span { background-position:

100% -42px; } #divLogInTabs li. current a { background-position:

0% -42px; } #divLogInTabs li. current a span { background-position:

100% -42px; }?.SimpleEntertainmentMenu ul. AspNet-Menu /* Tier 1 */ { /*width: 13em;*/ /* This is more than (6em x 2) because we want to leave room for borders around the

elements that are selected */ } .SimpleEntertainmentMenu ul. AspNet-Menu ul /* Tier 2 */ { /*width: 6em;*/ top: 100%; left: 0; } .SimpleEntertainmentMenu ul. AspNet-Menu ul ul /* Tier 3+ */ { top: -0.5em; left: 6em; } .SimpleEntertainmentMenu li { /*width: 6em;*/ background: #2947AC; } .SimpleEntertainmentMenu ul { /*width: 6em;*/ background: #2947AC; } .SimpleEntertainmentMenu li: hover, /* list items being hovered over */ .SimpleEntertainmentMenu li. AspNet-Menu-Hover { /*background-color: #4444ff;*/ /*background:url («menu_back_hover.gif») right top;*/ } .SimpleEntertainmentMenu a, /* all anchors and spans (nodes with no link) */ .SimpleEntertainmentMenu span { color: White; background: transparent url (menu_right_pointer.gif) right center no-repeat; padding: 4px 6px 4px 6px; } .SimpleEntertainmentMenu li. AspNet-Menu-Leaf a, /* leaves */ .SimpleEntertainmentMenu li. AspNet-Menu-Leaf span { /*background-image: none! important;*/ background: url («menu_back.gif») right top; } .SimpleEntertainmentMenu li: hover a, .SimpleEntertainmentMenu li: hover span, .SimpleEntertainmentMenu li. AspNet-Menu-Hover a, .SimpleEntertainmentMenu li. AspNet-Menu-Hover span, .SimpleEntertainmentMenu li: hover li: hover a, .SimpleEntertainmentMenu li: hover li: hover span, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover a, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover span, .SimpleEntertainmentMenu li: hover li: hover li: hover a, .SimpleEntertainmentMenu li: hover li: hover li: hover span, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover li. AspNet-Menu-Hover a, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover li. AspNet-Menu-Hover span { color: White; /* background: transparent url (menu_right_pointer.gif) right center no-repeat; */ background: url («menu_back_hover.gif») right top; } .SimpleEntertainmentMenu li: hover li a, /* the tier above this one is hovered */ .SimpleEntertainmentMenu li: hover li span, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li a, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li span, .SimpleEntertainmentMenu li: hover li: hover li a, .SimpleEntertainmentMenu li: hover li: hover li span, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover li a, .SimpleEntertainmentMenu li. AspNet-Menu-Hover li. AspNet-Menu-Hover li span { color: White; background: transparent right center; /*background:url («menu_back.gif») right top;*/ /*background: transparent url (menu_right_pointer.gif) right center no-repeat;*/ } .SimpleEntertainmentMenu .AspNet-Menu-Selected /* this tier is selected */ { /*border: solid 1px #0000ff !important;*/ } .SimpleEntertainmentMenu .AspNet-Menu-ChildSelected /* a tier below this one is selected */ { /*border: solid 1px #0000ff !important;*/ } .SimpleEntertainmentMenu .AspNet-Menu-ParentSelected /* a tier above this one is selected */ { /*border: solid 1px #0000ff !important;*/ } #EntertainmentMessage { padding-top: 2em; clear: both; }?.foo {} /* W3C CSS validator likes CSS files to start with a class rather than a comment. S oooooo… */ /* T his style sheet is intended to contain RARELY CHANGED rules used when the Menu control adapter is enabled.

*/ /* T hese rules correspond to the «pure CSS menu» technique that have been evolving over the past several years. */ /* S ee WhitePaper. aspx for details. */ ul. AspNet-Menu { position: relative; } ul. AspNet-Menu, ul. AspNet-Menu ul { margin: 0; padding: 0; display: block; } ul. AspNet-Menu li { position: relative; list-style: none; float: left; z-index: 9000; } ul. AspNet-Menu li a, ul. AspNet-Menu li span { display: block; text-decoration: underline; } ul. AspNet-Menu ul { position: absolute; visibility: hidden; } /* Add more rules here if your menus have more than three (3) tiers */ ul. AspNet-Menu li: hover ul ul, ul. AspNet-Menu li. AspNet-Menu-Hover ul ul { visibility: hidden; } /* Add more rules here if your menus have more than three (3) tiers */ ul. AspNet-Menu li: hover ul, ul. AspNet-Menu li li: hover ul, ul. AspNet-Menu li li li: hover ul, ul. AspNet-Menu li. AspNet-Menu-Hover ul, ul. AspNet-Menu li li. AspNet-Menu-Hover ul, ul. AspNet-Menu li li li. AspNet-Menu-Hover ul { visibility: visible; } .AspNet-Menu-Vertical ul. AspNet-Menu li { width: 100%; } ul. AspNet-Menu li. AspNet-Menu-WithChildren a. AspNet-Menu-Link { padding-right:14px !important; } ul. AspNet-Menu li. AspNet-Menu-WithChildren { background: url («menu_back.gif») right top; } ul. AspNet-Menu li. AspNet-Menu-WithChildren:hover { background: url («menu_back_hover.gif») right top; }?@import «Menu.css»; ?.backGrCited{background-color:#ffd991; padding:5px; display: block;} .backGrCited sup{font-size:8pt; font-weight:bold; font-family:Verdana;} .reportPlaceholder a{text-decoration: none; color: Black; line-height: 20px;} .reportPlaceholder a: hover{ text-decoration: underline; } .backGrCited sup {color:Blue;} .backGrCited sup a {color:Blue;} .cited{cursor:pointer; background-color:#ffd991;} .fullCited{border-bottom: 1pt dashed Red;} .noncited{padding-left: 4pt; padding-right: 4pt; display: block;cursor:text;} .noncited b span {display:block;} .originalInsertion{} #DocText{background-color: #FFFFFF;text-align: justify;} .source{display: block; font-weight:bold;background-color: #ffd991;} .source a{color:Blue;} #formTooltipDiv{color:Black;background-color: #FFFFE7; font-family:arial;font-weight:bold;font-size:

0.8em;line-height:

120%;width:600pt;height: 200pt;border:dashed 1px black;overflow:hidden; text-align:center;} .headerTable{color:Black;font-weight:bold;font-size:

0.9em; height: 40pt; width:

100%;} .headerTable td, th{ text-align:left; } .closeCell{ } #formTooltipContent{ text-align:left; padding:3px; overflow: auto; height:150pt; font-weight:normal; width:580pt; border: 1px solid black; } table. attr_table { width:800px; border-width:0px;} table. attr_table td.name{ text-align: left; padding-right: 5px; padding-left: 5px; font-weight: bold; } table. attr_table td. value{ text-align: left; width:

100%; } table. SourcesTable { padding: 0pt; width:

90%; border-left: 1pt solid Silver; border-top: 1pt solid Silver; } table. SourcesTable td { border-right: 1pt solid Silver; border-bottom: 1pt solid Silver; PADDING-RIGHT: 1pt; PADDING-LEFT: 1pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; font-size: 9pt; line-height: 10pt; } table. SourcesTable th { border-right: 1pt solid Silver; border-bottom: 1pt solid Silver; PADDING-LEFT: 3pt; PADDING-BOTTOM: 1pt; MARGIN: 1pt; PADDING-TOP: 1pt; text-align:center; } table. SourcesTable tr { height:25px; } table. SourcesTable tr.Header { text-align: center; background-color:#2947AC; color: white; FONT-WEIGHT: bold; font-size: 10pt; height: 25px; } table. SourcesTable tr.EmptyDataRow { BACKGROUND-COLOR: #2947AC; height: 25px; color: White; font-weight:bold; } table. SourcesTable tr.Alternating { BACKGROUND-COLOR: #e8e8e8; } /* tooltip ———————————————————————————————————— */ .tooltipCont {visibility:hidden; position: absolute; left:-5000px; top:-5000px; border-width:2px; border-color:#c29d48; border-style:ridge; padding:0px;} table. tt {width:600px; border-collapse:collapse; background-color:White; text-align:left; overflow: hidden; overflow-x:hidden; overflow-y:hidden; } table. tt tr.fr {background-color:#fdd47c;} table. tt td.fc {font-size:8pt; font-family:Verdana; padding:0pt; margin:0pt; text-align:left; vertical-align:top; } table. tt td.fc div{border-top: 1pt #fdd47c solid; padding-left:3px; padding-right:3px;} table. tt td.fc a{padding-left:3px; padding-right:3px;font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left} table. tt td.sc {width:

100%; text-align:left; overflow: auto; overflow-x:auto; overflow-y:auto; padding:0pt; margin:0pt;} table. tt td.sc div{line-height:9pt; font-size:8pt; font-family:Verdana; overflow-y:scroll; border-top: 1pt #fdd47c solid; border-left: 1pt #fdd47c solid; height:50px; padding-left:3px; padding-right:3px; } table. tt table. ttHead { width:

100%; } .closeC { width:10px; font-weight:bold; cursor: pointer; font-family:Arial; } table. tt table. ttHead td. urlC {font-size:8pt; font-family:Verdana; text-align:left; font-weight:bold; } table. tt table. ttHead td.citeC {font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left; width:150px; } #linkCont { vertical-align: middle; } .fcttHead {background-color:#fdd47c; width:600px;} #fcLinkCont {font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left; width:150px; } #fcUrlCont {font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left; width:250px; } #fcCite {font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left; width:150px; } .lDBClass {font-size:8pt; font-family:Verdana; font-weight:bold; text-align:left; border-top-style:solid; border-top-color:Black; border-top-width:1px;} .Positioner {background-color:#ffd991; width:50px; height:25px; position: relative; left:-50px; vertical-align:middle;} .Positioner table {width:

100%; height:

100%;} td. prevBlock {background-image:url ('Images/previousBlock.png');background-repeat:no-repeat;cursor:pointer;background-position:center;width:25px;} td. nextBlock {background-image:url ('Images/nextBlock.png');background-repeat:no-repeat;cursor:pointer;background-position:center;width:25px;} td. prevBlock:hover {background-image:url ('Images/previousBlock_selected.png');background-repeat:no-repeat;cursor:pointer;background-position:center;width:25px;} td. nextBlock:hover {background-image:url ('Images/nextBlock_selected.png');background-repeat:no-repeat;cursor:pointer;background-position:center;width:25px;} .cited2{ cursor: pointer; padding-top:2px; padding-bottom:2px; background-color:#ffe487;} .fullCited2{cursor:pointer; padding-top:2px; padding-bottom:2px; background-color:#ffd991;} .noncited2{padding-left: 4pt; padding-right: 4pt; cursor: text;} .noncited2 b span {display:block;} .cited3{ cursor: pointer; padding-top:2px; padding-bottom:2px;} .fullCited3{cursor:pointer; padding-top:2px; padding-bottom:2px;} .noncited3{padding-left: 4pt; padding-right: 4pt; cursor: text;} .noncited3 b span {display:block;} .cited4{cursor:pointer; background-color:#ffe487;} .fullCited4{cursor:pointer; background-color:#ffd991;} .origIns4{ padding-left: 5px; background-color:white; } .noncited4 {padding:3px; display: block; cursor: text;} .noncited4 b span {display:block;} .legalCitation { cursor: pointer; background-color:LightYellow; } .ss1 { background-color:#b2caad; } .ss2 { background-color:#b6b6ff; } .ss3 { background-color:#b8b8b8; } .ss4 { background-color:#a3c69c; } .ss5 { background-color:#ffc9b5; } .ss6 { background-color:#c5d8ff; } .ss7 { background-color:#cefdce; } .ss8 { background-color:#ffc7ff; } .ss9 { background-color:#ffc7c7; } .ss10 { background-color:#b2caad; } .ss11 { background-color:#b6b6ff; } .ss12 { background-color:#b8b8b8; } .ss13 { background-color:#a3c69c; } .ss14 { background-color:#ffc9b5; } .ss15 { background-color:#c5d8ff; } .ss16 { background-color:#cefdce; } function WebForm_PostBackOptions (eventTarget, eventArgument, validation, validationGroup, actionUrl, trackFocus, clientSubmit) {

this.eventTarget = eventTarget;

this.eventArgument = eventArgument;

this.validation = validation;

this.validationGroup = validationGroup;

this.actionUrl = actionUrl;

this.trackFocus = trackFocus;

this.clientSubmit = clientSubmit;

}

function WebForm_DoPostBackWithOptions (options) {

var validationResult = true;

if (options.validation) {

if (typeof (Page_ClientValidate) == 'function') {

validationResult = Page_ClientValidate (options.validationGroup);

}

}

if (validationResult) {

if ((typeof (options.actionUrl) ≠ «undefined») && (options.actionUrl ≠ null) && (options.actionUrl.length > 0)) {

theForm.action = options. actionUrl;

}

if (options.trackFocus) {

var lastFocus = theForm. elements[" __LASTFOCUS" ];

if ((typeof (lastFocus) ≠ «undefined») && (lastFocus ≠ null)) {

if (typeof (document.activeElement) == «undefined») {

lastFocus.value = options. eventTarget;

}

else {

var active = document. activeElement;

if ((typeof (active) ≠ «undefined») && (active ≠ null)) {

if ((typeof (active.id) ≠ «undefined») && (active.id ≠ null) && (active.id.length > 0)) {

lastFocus.value = active. id;

}

else if (typeof (active.name) ≠ «undefined») {

lastFocus.value = active.name;

}

}

}

}

}

}

if (options.clientSubmit) {

__doPostBack (options.eventTarget, options. eventArgument);

}

}

var __pendingCallbacks = new Array ();

var __synchronousCallBackIndex = -1;

function WebForm_DoCallback (eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {

var postData = __theFormPostData +

" __CALLBACKID=" + WebForm_EncodeCallback (eventTarget) +

" &__CALLBACKPARAM=" + WebForm_EncodeCallback (eventArgument);

if (theForm[" __EVENTVALIDATION" ]) {

postData += «&__EVENTVALIDATION=» + WebForm_EncodeCallback (theForm[" __EVENTVALIDATION" ]. value);

}

var xmlRequest, e;

try {

xmlRequest = new XMLHttpRequest ();

}

catch (e) {

try {

xmlRequest = new ActiveXObject («Microsoft.XMLHTTP»);

}

catch (e) {

}

}

var setRequestHeaderMethodExists = true;

try {

setRequestHeaderMethodExists = (xmlRequest && xmlRequest. setRequestHeader);

}

catch (e) {}

var callback = new Object ();

callback.eventCallback = eventCallback;

callback.context = context;

callback.errorCallback = errorCallback;

callback.async = useAsync;

var callbackIndex = WebForm_FillFirstAvailableSlot (__pendingCallbacks, callback);

if (!useAsync) {

if (__synchronousCallBackIndex ≠ -1) {

__pendingCallbacks[__synchronousCallBackIndex] = null;

}

__synchronousCallBackIndex = callbackIndex;

}

if (setRequestHeaderMethodExists) {

xmlRequest.onreadystatechange = WebForm_CallbackComplete;

callback.xmlRequest = xmlRequest;

// e.g. http:

var action = theForm. action — document.location.pathname, fragmentIndex = action. indexOf ('#');

if (fragmentIndex ≠= -1) {

action = action. substr (0, fragmentIndex);

}

if (!__nonMSDOMBrowser) {

var queryIndex = action. indexOf ('?');

if (queryIndex ≠= -1) {

var path = action. substr (0, queryIndex);

if (path.indexOf («%») === -1) {

action = encodeURI (path) + action. substr (queryIndex);

}

}

else if (action.indexOf («%») === -1) {

action = encodeURI (action);

}

}

xmlRequest.open («POST», action, true);

xmlRequest.setRequestHeader («Content-Type», «application/x-www-form-urlencoded; charset=utf-8»);

xmlRequest.send (postData);

return;

}

callback.xmlRequest = new Object ();

var callbackFrameID = «__CALLBACKFRAME» + callbackIndex;

var xmlRequestFrame = document. frames[callbackFrameID];

if (!xmlRequestFrame) {

xmlRequestFrame = document. createElement («IFRAME»);

xmlRequestFrame.width = «1» ;

xmlRequestFrame.height = «1» ;

xmlRequestFrame.frameBorder = «0» ;

xmlRequestFrame.id = callbackFrameID;

xmlRequestFrame.name = callbackFrameID;

xmlRequestFrame.style.position = «absolute» ;

xmlRequestFrame.style.top = «-100px»

xmlRequestFrame.style.left = «-100px» ;

try {

if (callBackFrameUrl) {

xmlRequestFrame.src = callBackFrameUrl;

}

}

catch (e) {}

document.body.appendChild (xmlRequestFrame);

}

var interval = window. setInterval (function () {

xmlRequestFrame = document. frames[callbackFrameID];

if (xmlRequestFrame && xmlRequestFrame. document) {

window.clearInterval (interval);

xmlRequestFrame.document.write (««);

xmlRequestFrame.document.close ();

xmlRequestFrame.document.write ('

');

xmlRequestFrame.document.close ();

xmlRequestFrame.document.forms[0]. action = theForm. action;

var count = __theFormPostCollection.length;

var element;

for (var i = 0; i < count; i++) {

element = __theFormPostCollection[i];

if (element) {

var fieldElement = xmlRequestFrame.document.createElement («INPUT»);

fieldElement.type = «hidden» ;

fieldElement.name = element.name;

fieldElement.value = element. value;

xmlRequestFrame.document.forms[0]. appendChild (fieldElement);

}

}

var callbackIdFieldElement = xmlRequestFrame.document.createElement («INPUT»);

callbackIdFieldElement.type = «hidden» ;

callbackIdFieldElement.name = «__CALLBACKID» ;

callbackIdFieldElement.value = eventTarget;

xmlRequestFrame.document.forms[0]. appendChild (callbackIdFieldElement);

var callbackParamFieldElement = xmlRequestFrame.document.createElement («INPUT»);

callbackParamFieldElement.type = «hidden» ;

callbackParamFieldElement.name = «__CALLBACKPARAM» ;

callbackParamFieldElement.value = eventArgument;

xmlRequestFrame.document.forms[0]. appendChild (callbackParamFieldElement);

if (theForm[" __EVENTVALIDATION" ]) {

var callbackValidationFieldElement = xmlRequestFrame.document.createElement («INPUT»);

callbackValidationFieldElement.type = «hidden» ;

callbackValidationFieldElement.name = «__EVENTVALIDATION» ;

callbackValidationFieldElement.value = theForm[" __EVENTVALIDATION" ]. value;

xmlRequestFrame.document.forms[0]. appendChild (callbackValidationFieldElement);

}

var callbackIndexFieldElement = xmlRequestFrame.document.createElement («INPUT»);

callbackIndexFieldElement.type = «hidden» ;

callbackIndexFieldElement.name = «__CALLBACKINDEX» ;

callbackIndexFieldElement.value = callbackIndex;

xmlRequestFrame.document.forms[0]. appendChild (callbackIndexFieldElement);

xmlRequestFrame.document.forms[0]. submit ();

}

}, 10);

}

function WebForm_CallbackComplete () {

for (var i = 0; i < __pendingCallbacks.length; i++) {

callbackObject = __pendingCallbacks[i];

if (callbackObject && callbackObject. xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {

if (!__pendingCallbacks[i]. async) {

__synchronousCallBackIndex = -1;

}

__pendingCallbacks[i] = null;

var callbackFrameID = «__CALLBACKFRAME» + i;

var xmlRequestFrame = document. getElementById (callbackFrameID);

if (xmlRequestFrame) {

xmlRequestFrame.parentNode.removeChild (xmlRequestFrame);

}

WebForm_ExecuteCallback (callbackObject);

}

}

}

function WebForm_ExecuteCallback (callbackObject) {

var response = callbackObject.xmlRequest.responseText;

if (response.charAt (0) == «s») {

if ((typeof (callbackObject.eventCallback) ≠ «undefined») && (callbackObject.eventCallback ≠ null)) {

callbackObject.eventCallback (response.substring (1), callbackObject. context);

}

}

else if (response.charAt (0) == «e») {

if ((typeof (callbackObject.errorCallback) ≠ «undefined») && (callbackObject.errorCallback ≠ null)) {

callbackObject.errorCallback (response.substring (1), callbackObject. context);

}

}

else {

var separatorIndex = response. indexOf («-»);

if (separatorIndex ≠ -1) {

var validationFieldLength = parseInt (response.substring (0, separatorIndex));

if (!isNaN (validationFieldLength)) {

var validationField = response. substring (separatorIndex + 1, separatorIndex + validationFieldLength + 1);

if (validationField ≠ «») {

var validationFieldElement = theForm[" __EVENTVALIDATION" ];

if (!validationFieldElement) {

validationFieldElement = document. createElement («INPUT»);

validationFieldElement.type = «hidden» ;

validationFieldElement.name = «__EVENTVALIDATION» ;

theForm.appendChild (validationFieldElement);

}

validationFieldElement.value = validationField;

}

if ((typeof (callbackObject.eventCallback) ≠ «undefined») && (callbackObject.eventCallback ≠ null)) {

callbackObject.eventCallback (response.substring (separatorIndex + validationFieldLength + 1), callbackObject. context);

}

}

}

}

}

function WebForm_FillFirstAvailableSlot (array, element) {

var i;

for (i = 0; i < array. length; i++) {

if (!array[i]) break;

}

array[i] = element;

return i;

}

var __nonMSDOMBrowser = (window.navigator.appName.toLowerCase ().indexOf ('explorer') == -1);

var __theFormPostData = «» ;

var __theFormPostCollection = new Array ();

var __callbackTextTypes = /^(text-password-hidden-search-tel-url-email-number-range-color-datetime-date-month-week-time-datetime-local)$/i;

function WebForm_InitCallback () {

var count = theForm.elements.length;

var element;

for (var i = 0; i < count; i++) {

element = theForm. elements[i];

var tagName = element.tagName.toLowerCase ();

if (tagName == «input») {

var type = element. type;

if ((__callbackTextTypes.test (type) — ((type == «checkbox» — type == «radio») && element. checked))

&& (element.id ≠ «__EVENTVALIDATION»)) {

WebForm_InitCallbackAddField (element.name, element. value);

}

}

else if (tagName == «select») {

var selectCount = element.options.length;

for (var j = 0; j < selectCount; j++) {

var selectChild = element. options[j];

if (selectChild.selected == true) {

WebForm_InitCallbackAddField (element.name, element. value);

}

}

}

else if (tagName == «textarea») {

WebForm_InitCallbackAddField (element.name, element. value);

}

}

}

function WebForm_InitCallbackAddField (name, value) {

var nameValue = new Object ();

nameValue.name = name;

nameValue.value = value;

__theFormPostCollection[__theFormPostCollection.length] = nameValue;

__theFormPostData += WebForm_EncodeCallback (name) + «=» + WebForm_EncodeCallback (value) + «&» ;

}

function WebForm_EncodeCallback (parameter) {

if (encodeURIComponent) {

return encodeURIComponent (parameter);

}

else {

return escape (parameter);

}

}

var __disabledControlArray = new Array ();

function WebForm_ReEnableControls () {

if (typeof (__enabledControlArray) == 'undefined') {

return false;

}

var disabledIndex = 0;

for (var i = 0; i < __enabledControlArray.length; i++) {

var c;

if (__nonMSDOMBrowser) {

c = document. getElementById (__enabledControlArray[i]);

}

else {

c = document. all[__enabledControlArray[i]];

}

if ((typeof© ≠ «undefined») && (c ≠ null) && (c.disabled == true)) {

c.disabled = false;

__disabledControlArray[disabledIndex++] = c;

}

}

setTimeout («WebForm_ReDisableControls ()», 0);

return true;

}

function WebForm_ReDisableControls () {

for (var i = 0; i < __disabledControlArray.length; i++) {

__disabledControlArray[i]. disabled = true;

}

}

function WebForm_FireDefaultButton (event, target) {

if (event.keyCode == 13) {

var src = event. srcElement — event. target;

if (src &&

((src.tagName.toLowerCase () == «input») &&

(src.type.toLowerCase () == «submit» — src.type.toLowerCase () == «button»)) -;

((src.tagName.toLowerCase () == «a») &&

(src.href ≠ null) && (src.href ≠ «»)) -;

(src.tagName.toLowerCase () == «textarea»)) {

return true;

}

var defaultButton;

if (__nonMSDOMBrowser) {

defaultButton = document. getElementById (target);

}

else {

defaultButton = document. all[target];

}

if (defaultButton && typeof (defaultButton.click) ≠ «undefined») {

defaultButton.click ();

event.cancelBubble = true;

if (event.stopPropagation) event. stopPropagation ();

return false;

}

}

return true;

}

function WebForm_GetScrollX () {

if (__nonMSDOMBrowser) {

return window. pageXOffset;

}

else {

if (document.documentElement && document.documentElement.scrollLeft) {

return document.documentElement.scrollLeft;

}

else if (document.body) {

return document.body.scrollLeft;

}

}

return 0;

}

function WebForm_GetScrollY () {

if (__nonMSDOMBrowser) {

return window. pageYOffset;

}

else {

if (document.documentElement && document.documentElement.scrollTop) {

return document.documentElement.scrollTop;

}

else if (document.body) {

return document.body.scrollTop;

}

}

return 0;

}

function WebForm_SaveScrollPositionSubmit () {

if (__nonMSDOMBrowser) {

theForm.elements['__SCROLLPOSITIONY']. value = window. pageYOffset;

theForm.elements['__SCROLLPOSITIONX']. value = window. pageXOffset;

}

else {

theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX ();

theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY ();

}

if ((typeof (this.oldSubmit) ≠ «undefined») && (this.oldSubmit ≠ null)) {

return this. oldSubmit ();

}

return true;

}

function WebForm_SaveScrollPositionOnSubmit () {

theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX ();

theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY ();

if ((typeof (this.oldOnSubmit) ≠ «undefined») && (this.oldOnSubmit ≠ null)) {

return this. oldOnSubmit ();

}

return true;

}

function WebForm_RestoreScrollPosition () {

if (__nonMSDOMBrowser) {

window.scrollTo (theForm.elements['__SCROLLPOSITIONX']. value, theForm. elements['__SCROLLPOSITIONY']. value);

}

else {

window.scrollTo (theForm.__SCROLLPOSITIONX.value, theForm.__SCROLLPOSITIONY.value);

}

if ((typeof (theForm.oldOnLoad) ≠ «undefined») && (theForm.oldOnLoad ≠ null)) {

return theForm. oldOnLoad ();

}

return true;

}

function WebForm_TextBoxKeyHandler (event) {

if (event.keyCode == 13) {

var target;

if (__nonMSDOMBrowser) {

target = event. target;

}

else {

target = event. srcElement;

}

if ((typeof (target) ≠ «undefined») && (target ≠ null)) {

if (typeof (target.onchange) ≠ «undefined») {

target.onchange ();

event.cancelBubble = true;

if (event.stopPropagation) event. stopPropagation ();

return false;

}

}

}

return true;

}

function WebForm_TrimString (value) {

return value. replace (/^s±s+$/g, '')

}

function WebForm_AppendToClassName (element, className) {

var currentClassName = ' ' + WebForm_TrimString (element.className) + ' ';

className = WebForm_TrimString (className);

var index = currentClassName. indexOf (' ' + className + ' ');

if (index === -1) {

element.className = (element.className === '')? className: element. className + ' ' + className;

}

}

function WebForm_RemoveClassName (element, className) {

var currentClassName = ' ' + WebForm_TrimString (element.className) + ' ';

className = WebForm_TrimString (className);

var index = currentClassName. indexOf (' ' + className + ' ');

if (index >= 0) {

element.className = WebForm_TrimString (currentClassName.substring (0, index) + ' ' +

currentClassName.substring (index + className. length + 1, currentClassName. length));

}

}

function WebForm_GetElementById (elementId) {

if (document.getElementById) {

return document. getElementById (elementId);

}

else if (document.all) {

return document. all[elementId];

}

else return null;

}

function WebForm_GetElementByTagName (element, tagName) {

var elements = WebForm_GetElementsByTagName (element, tagName);

if (elements && elements. length > 0) {

return elements[0];

}

else return null;

}

function WebForm_GetElementsByTagName (element, tagName) {

if (element && tagName) {

if (element.getElementsByTagName) {

return element. getElementsByTagName (tagName);

}

if (element.all && element.all.tags) {

return element.all.tags (tagName);

}

}

return null;

}

function WebForm_GetElementDir (element) {

if (element) {

if (element.dir) {

return element. dir;

}

return WebForm_GetElementDir (element.parentNode);

}

return «ltr» ;

}

function WebForm_GetElementPosition (element) {

var result = new Object ();

result.x = 0;

result.y = 0;

result.width = 0;

result.height = 0;

if (element.offsetParent) {

result.x = element. offsetLeft;

result.y = element. offsetTop;

var parent = element. offsetParent;

while (parent) {

result.x += parent. offsetLeft;

result.y += parent. offsetTop;

var parentTagName = parent.tagName.toLowerCase ();

if (parentTagName ≠ «table» &&

parentTagName ≠ «body» &&

parentTagName ≠ «html» &&

parentTagName ≠ «div» &&

parent.clientTop &&

parent.clientLeft) {

result.x += parent. clientLeft;

result.y += parent. clientTop;

}

parent = parent. offsetParent;

}

}

else if (element.left && element. top) {

result.x = element. left;

result.y = element. top;

}

else {

if (element.x) {

result.x = element. x;

}

if (element.y) {

result.y = element. y;

}

}

if (element.offsetWidth && element. offsetHeight) {

result.width = element. offsetWidth;

result.height = element. offsetHeight;

}

else if (element.style && element.style.pixelWidth && element.style.pixelHeight) {

result.width = element.style.pixelWidth;

result.height = element.style.pixelHeight;

}

return result;

}

function WebForm_GetParentByTagName (element, tagName) {

var parent = element. parentNode;

var upperTagName = tagName. toUpperCase ();

while (parent && (parent.tagName.toUpperCase () ≠ upperTagName)) {

parent = parent. parentNode? parent. parentNode: parent. parentElement;

}

return parent;

}

function WebForm_SetElementHeight (element, height) {

if (element && element. style) {

element.style.height = height + «px» ;

}

}

function WebForm_SetElementWidth (element, width) {

if (element && element. style) {

element.style.width = width + «px» ;

}

}

function WebForm_SetElementX (element, x) {

if (element && element. style) {

element.style.left = x + «px» ;

}

}

function WebForm_SetElementY (element, y) {

if (element && element. style) {

element.style.top = y + «px» ;

}

}

function CanHaveClass__CssFriendlyAdapters (element)

{

return ((element ≠ null) && (element.className ≠ null));

}

function HasAnyClass__CssFriendlyAdapters (element)

{

return (CanHaveClass__CssFriendlyAdapters (element) && (element.className.length > 0));

}

function HasClass__CssFriendlyAdapters (element, specificClass)

{

return (HasAnyClass__CssFriendlyAdapters (element) && (element.className.indexOf (specificClass) > -1));

}

function AddClass__CssFriendlyAdapters (element, classToAdd)

{

if (HasAnyClass__CssFriendlyAdapters (element))

{

if (!HasClass__CssFriendlyAdapters (element, classToAdd))

{

element.className = element. className + «» + classToAdd;

}

}

else if (CanHaveClass__CssFriendlyAdapters (element))

{

element.className = classToAdd;

}

}

function AddClassUpward__CssFriendlyAdapters (startElement, stopParentClass, classToAdd)

{

var elementOrParent = startElement;

while ((elementOrParent ≠ null) && (!HasClass__CssFriendlyAdapters (elementOrParent, topmostClass)))

{

AddClass__CssFriendlyAdapters (elementOrParent, classToAdd);

elementOrParent = elementOrParent. parentNode;

}

}

function SwapClass__CssFriendlyAdapters (element, oldClass, newClass)

{

if (HasAnyClass__CssFriendlyAdapters (element))

{

element.className = element.className.replace (new RegExp (oldClass, «gi»), newClass);

}

}

function SwapOrAddClass__CssFriendlyAdapters (element, oldClass, newClass)

{

if (HasClass__CssFriendlyAdapters (element, oldClass))

{

SwapClass__CssFriendlyAdapters (element, oldClass, newClass);

}

else

{

AddClass__CssFriendlyAdapters (element, newClass);

}

}

function RemoveClass__CssFriendlyAdapters (element, classToRemove)

{

SwapClass__CssFriendlyAdapters (element, classToRemove, «»);

}

function RemoveClassUpward__CssFriendlyAdapters (startElement, stopParentClass, classToRemove)

{

var elementOrParent = startElement;

while ((elementOrParent ≠ null) && (!HasClass__CssFriendlyAdapters (elementOrParent, topmostClass)))

{

RemoveClass__CssFriendlyAdapters (elementOrParent, classToRemove);

elementOrParent = elementOrParent. parentNode;

}

}

function IsEnterKey ()

{

var retVal = false;

var keycode = 0;

if ((typeof (window.event) ≠ «undefined») && (window.event ≠ null))

{

keycode = window.event.keyCode;

}

else if ((typeof (e) ≠ «undefined») && (e ≠ null))

{

keycode = e. which;

}

if (keycode == 13)

{

retVal = true;

}

return retVal;

}var hoverClass = «AspNet-Menu-Hover» ;

var topmostClass = «AspNet-Menu» ;

var userAgent = navigator. userAgent;

var versionOffset = userAgent. indexOf («MSIE»);

var isIE = (versionOffset >= 0);

var isPreIE7 = false;

var fullVersionIE = «» ;

var majorVersionIE = «» ;

if (isIE)

{

fullVersionIE = parseFloat (userAgent.substring (versionOffset+5, userAgent. length));

majorVersionIE = parseInt ('' + fullVersionIE);

isPreIE7 = majorVersionIE < 7;

}

function Hover__AspNetMenu (element)

{

AddClass__CssFriendlyAdapters (element, hoverClass);

if (isPreIE7)

{

var child = element. firstChild;

while (child)

{

if (child.tagName == «UL»)

{

var grandchild = child. firstChild;

while (grandchild)

{

if (grandchild.tagName == «LI»)

{

if ((typeof (grandchild.iFrameFormElementMask) ≠ «undefined») && (grandchild.iFrameFormElementMask ≠ null))

{

grandchild.iFrameFormElementMask.style.display = «block» ;

var w = grandchild. offsetWidth;

if ((grandchild.offsetWidth == 0) && (typeof (element.iFrameFormElementMask) ≠ «undefined») && (element.iFrameFormElementMask ≠ null) && (element.iFrameFormElementMask.style.width.length > 0))

{

w = element.iFrameFormElementMask.style.width;

}

grandchild.iFrameFormElementMask.style.width = w;

var h = grandchild. offsetHeight + 5 /* fudge to cover margins between menu items */;

if ((grandchild.offsetHeight == 0) && (typeof (element.iFrameFormElementMask) ≠ «undefined») && (element.iFrameFormElementMask ≠ null) && (element.iFrameFormElementMask.style.height.length > 0))

{

h = element.iFrameFormElementMask.style.height;

}

grandchild.iFrameFormElementMask.style.height = h;

}

}

grandchild = grandchild. nextSibling;

}

}

child = child. nextSibling;

}

}

}

function Unhover__AspNetMenu (element)

{

RemoveClass__CssFriendlyAdapters (element, hoverClass);

if (isPreIE7)

{

var child = element. firstChild;

while (child)

{

if (child.tagName == «UL»)

{

var grandchild = child. firstChild;

while (grandchild)

{

if (grandchild.tagName == «LI»)

{

if ((typeof (grandchild.iFrameFormElementMask) ≠ «undefined») && (grandchild.iFrameFormElementMask ≠ null))

{

grandchild.iFrameFormElementMask.style.display = «none» ;

}

}

grandchild = grandchild. nextSibling;

}

}

child = child. nextSibling;

}

}

}

function SetHover__AspNetMenu ()

{

var menus = document. getElementsByTagName («ul»);

for (var i=0; i

{

if (menus[i]. className == topmostClass)

{

var items = menus[i]. getElementsByTagName («li»);

for (var k=0; k

{

items[k]. onmouseover = function () { Hover__AspNetMenu (this); }

items[k]. onmouseout = function () { Unhover__AspNetMenu (this); }

if (isPreIE7 && ((typeof (items[k]. iFrameFormElementMask) == «undefined») — (items[k]. iFrameFormElementMask == null)))

{

var iFrameFormElementMask = document. createElement («IFRAME»);

iFrameFormElementMask.scrolling= «no» ;

iFrameFormElementMask.src = «javascript:false;» ;

iFrameFormElementMask.frameBorder = 0;

iFrameFormElementMask.style.display = «none» ;

iFrameFormElementMask.style.position = «absolute» ;

iFrameFormElementMask.style.filter = «progid:DXImageTransform.Microsoft.Alpha (style=0,opacity=0)» ;

iFrameFormElementMask.style.zIndex = -1;

items[k]. insertBefore (iFrameFormElementMask, items[k]. firstChild);

items[k]. iFrameFormElementMask = iFrameFormElementMask;

}

}

}

}

}

if (isPreIE7)

{

window.onload = SetHover__AspNetMenu;

}

if (!window.Sys) { window. Sys = {}; }

if (!Sys.WebForms) { Sys. WebForms = {}; }

Sys.WebForms.Menu = function (options) {

this.items = [];

this.depth = options. depth — 1;

this.parentMenuItem = options. parentMenuItem;

this.element = Sys.WebForms.Menu._domHelper.getElement (options.element);

if (this.element.tagName === 'DIV') {

var containerElement = this. element;

this.element = Sys.WebForms.Menu._domHelper.firstChild (containerElement);

this.element.tabIndex = options. tabIndex — 0;

options.element = containerElement;

options.menu = this;

this.container = new Sys.WebForms._MenuContainer (options);

Sys.WebForms.Menu._domHelper.setFloat (this.element, this.container.rightToLeft? «right»: «left»);

}

else {

this.container = options. container;

this.keyMap = options. keyMap;

}

Sys.WebForms.Menu._elementObjectMapper.map (this.element, this);

if (this.parentMenuItem && this.parentMenuItem.parentMenu) {

this.parentMenu = this.parentMenuItem.parentMenu;

this.rootMenu = this.parentMenu.rootMenu;

if (!this.element.id) {

this.element.id = (this.container.element.id — 'menu') + ':submenu:' + Sys.WebForms.Menu._elementObjectMapper._computedId;

}

if (this.depth > this.container.staticDisplayLevels) {

this.displayMode = «dynamic» ;

this.element.style.display = «none» ;

this.element.style.position = «absolute» ;

if (this.rootMenu && this.container.orientation === 'horizontal' && this.parentMenu.isStatic ()) {

this.element.style.top = «100%» ;

if (this.container.rightToLeft) {

this.element.style.right = «0px» ;

}

else {

this.element.style.left = «0px» ;

}

}

else {

this.element.style.top = «0px» ;

if (this.container.rightToLeft) {

this.element.style.right = «100%» ;

}

else {

this.element.style.left = «100%» ;

}

}

if (this.container.rightToLeft) {

this.keyMap = Sys.WebForms.Menu._keyboardMapping.verticalRtl;

}

else {

this.keyMap = Sys.WebForms.Menu._keyboardMapping.vertical;

}

}

else {

this.displayMode = «static» ;

this.element.style.display = «block» ;

if (this.container.orientation === 'horizontal') {

Sys.WebForms.Menu._domHelper.setFloat (this.element, this.container.rightToLeft? «right»: «left»);

}

}

}

Sys.WebForms.Menu._domHelper.appendCssClass (this.element, this. displayMode);

var children = this.element.childNodes;

var count = children. length;

for (var i = 0; i < count; i++) {

var node = children[i];

if (node.nodeType ≠= 1) {

continue;

}

var topLevelMenuItem = null;

if (this.parentMenuItem) {

topLevelMenuItem = this.parentMenuItem.topLevelMenuItem;

}

var menuItem = new Sys.WebForms.MenuItem (this, node, topLevelMenuItem);

var previousMenuItem = this. items[this.items.length — 1];

if (previousMenuItem) {

menuItem.previousSibling = previousMenuItem;

previousMenuItem.nextSibling = menuItem;

}

this.items[this.items.length] = menuItem;

}

};

Sys.WebForms.Menu.prototype = {

blur: function () { if (this.container) this.container.blur (); },

collapse: function () {

this.each (function (menuItem) {

menuItem.hover (false);

menuItem.blur ();

var childMenu = menuItem. childMenu;

if (childMenu) {

childMenu.collapse ();

}

});

this.hide ();

},

doDispose: function () { this. each (function (item) { item. doDispose (); }); },

each: function (fn) {

var count = this.items.length;

for (var i = 0; i < count; i++) {

fn (this.items[i]);

}

},

firstChild: function () { return this. items[0]; },

focus: function () { if (this.container) this.container.focus (); },

get_displayed: function () { return this.element.style.display ≠= 'none'; },

get_focused: function () {

if (this.container) {

return this.container.focused;

}

return false;

},

handleKeyPress: function (keyCode) {

if (this.keyMap.contains (keyCode)) {

if (this.container.focusedMenuItem) {

this.container.focusedMenuItem.navigate (keyCode);

return;

}

var firstChild = this. firstChild ();

if (firstChild) {

this.container.navigateTo (firstChild);

}

}

},

hide: function () {

if (!this.get_displayed ()) {

return;

}

this.each (function (item) {

if (item.childMenu) {

item.childMenu.hide ();

}

});

if (!this.isRoot ()) {

if (this.get_focused ()) {

this.container.navigateTo (this.parentMenuItem);

}

this.element.style.display = 'none';

}

},

isRoot: function () { return this. rootMenu === this; },

isStatic: function () { return this. displayMode === 'static'; },

lastChild: function () { return this. items[this.items.length — 1]; },

show: function () { this.element.style.display = 'block'; }

};

if (Sys.WebForms.Menu.registerClass) {

Sys.WebForms.Menu.registerClass ('Sys.WebForms.Menu');

}

Sys.WebForms.MenuItem = function (parentMenu, listElement, topLevelMenuItem) {

this.keyMap = parentMenu. keyMap;

this.parentMenu = parentMenu;

this.container = parentMenu. container;

this.element = listElement;

this.topLevelMenuItem = topLevelMenuItem — this;

this._anchor = Sys.WebForms.Menu._domHelper.firstChild (listElement);

while (this._anchor && this._anchor.tagName ≠= 'A') {

this._anchor = Sys.WebForms.Menu._domHelper.nextSibling (this._anchor);

}

if (this._anchor) {

this._anchor.tabIndex = -1;

var subMenu = this._anchor;

while (subMenu && subMenu. tagName ≠= 'UL') {

subMenu = Sys.WebForms.Menu._domHelper.nextSibling (subMenu);

}

if (subMenu) {

this.childMenu = new Sys.WebForms.Menu ({ element: subMenu, parentMenuItem: this, depth: parentMenu. depth + 1, container: this. container, keyMap: this. keyMap });

if (!this.childMenu.isStatic ()) {

Sys.WebForms.Menu._domHelper.appendCssClass (this.element, 'has-popup');

Sys.WebForms.Menu._domHelper.appendAttributeValue (this.element, 'aria-haspopup', this.childMenu.element.id);

}

}

}

Sys.WebForms.Menu._elementObjectMapper.map (listElement, this);

Sys.WebForms.Menu._domHelper.appendAttributeValue (listElement, 'role', 'menuitem');

Sys.WebForms.Menu._domHelper.appendCssClass (listElement, parentMenu. displayMode);

if (this._anchor) {

Sys.WebForms.Menu._domHelper.appendCssClass (this._anchor, parentMenu. displayMode);

}

this.element.style.position = «relative» ;

if (this.parentMenu.depth == 1 && this.container.orientation == 'horizontal') {

Sys.WebForms.Menu._domHelper.setFloat (this.element, this.container.rightToLeft? «right»: «left»);

}

if (!this.container.disabled) {

Sys.WebForms.Menu._domHelper.addEvent (this.element, 'mouseover', Sys.WebForms.MenuItem._onmouseover);

Sys.WebForms.Menu._domHelper.addEvent (this.element, 'mouseout', Sys.WebForms.MenuItem._onmouseout);

}

};

Sys.WebForms.MenuItem.prototype = {

applyUp: function (fn, condition) {

condition = condition — function (menuItem) { return menuItem; };

var menuItem = this;

var lastMenuItem = null;

while (condition (menuItem)) {

fn (menuItem);

lastMenuItem = menuItem;

menuItem = menuItem.parentMenu.parentMenuItem;

}

return lastMenuItem;

},

blur: function () { this. setTabIndex (-1); },

doDispose: function () {

Sys.WebForms.Menu._domHelper.removeEvent (this.element, 'mouseover', Sys.WebForms.MenuItem._onmouseover);

Sys.WebForms.Menu._domHelper.removeEvent (this.element, 'mouseout', Sys.WebForms.MenuItem._onmouseout);

if (this.childMenu) {

this.childMenu.doDispose ();

}

},

focus: function () {

if (!this.parentMenu.get_displayed ()) {

this.parentMenu.show ();

}

this.setTabIndex (0);

this.container.focused = true;

this._anchor.focus ();

},

get_highlighted: function () { return /(^-s)highlighted (s-$)/.test (this._anchor.className); },

getTabIndex: function () { return this._anchor.tabIndex; },

highlight: function (highlighting) {

if (highlighting) {

this.applyUp (function (menuItem) {

menuItem.parentMenu.parentMenuItem.highlight (true);

},

function (menuItem) {

return !menuItem.parentMenu.isStatic () && menuItem.parentMenu.parentMenuItem;

}

);

Sys.WebForms.Menu._domHelper.appendCssClass (this._anchor, 'highlighted');

}

else {

Sys.WebForms.Menu._domHelper.removeCssClass (this._anchor, 'highlighted');

this.setTabIndex (-1);

}

},

hover: function (hovering) {

if (hovering) {

var currentHoveredItem = this.container.hoveredMenuItem;

if (currentHoveredItem) {

currentHoveredItem.hover (false);

}

var currentFocusedItem = this.container.focusedMenuItem;

if (currentFocusedItem && currentFocusedItem ≠= this) {

currentFocusedItem.hover (false);

}

this.applyUp (function (menuItem) {

if (menuItem.childMenu && !menuItem.childMenu.get_displayed ()) {

menuItem.childMenu.show ();

}

});

this.container.hoveredMenuItem = this;

this.highlight (true);

}

else {

var menuItem = this;

while (menuItem) {

menuItem.highlight (false);

if (menuItem.childMenu) {

if (!menuItem.childMenu.isStatic ()) {

menuItem.childMenu.hide ();

}

}

menuItem = menuItem.parentMenu.parentMenuItem;

}

}

},

isSiblingOf: function (menuItem) { return menuItem. parentMenu === this. parentMenu; },

mouseout: function () {

var menuItem = this,

id = this.container.pendingMouseoutId,

disappearAfter = this.container.disappearAfter;

if (id) {

window.clearTimeout (id);

}

if (disappearAfter > -1) {

this.container.pendingMouseoutId =

window.setTimeout (function () { menuItem. hover (false); }, disappearAfter);

}

},

mouseover: function () {

var id = this.container.pendingMouseoutId;

if (id) {

window.clearTimeout (id);

this.container.pendingMouseoutId = null;

}

this.hover (true);

if (this.container.menu.get_focused ()) {

this.container.navigateTo (this);

}

},

navigate: function (keyCode) {

switch (this.keyMap[keyCode]) {

case this.keyMap.next:

this.navigateNext ();

break;

case this.keyMap.previous:

this.navigatePrevious ();

break;

case this.keyMap.child:

this.navigateChild ();

break;

case this.keyMap.parent:

this.navigateParent ();

break;

case this.keyMap.tab:

this.navigateOut ();

break;

}

},

navigateChild: function () {

var subMenu = this. childMenu;

if (subMenu) {

var firstChild = subMenu. firstChild ();

if (firstChild) {

this.container.navigateTo (firstChild);

}

}

else {

if (this.container.orientation === 'horizontal') {

var nextItem = this.topLevelMenuItem.nextSibling — this.topLevelMenuItem.parentMenu.firstChild ();

if (nextItem == this. topLevelMenuItem) {

return;

}

this.topLevelMenuItem.childMenu.hide ();

this.container.navigateTo (nextItem);

if (nextItem.childMenu) {

this.container.navigateTo (nextItem.childMenu.firstChild ());

}

}

}

},

navigateNext: function () {

if (this.childMenu) {

this.childMenu.hide ();

}

var nextMenuItem = this. nextSibling;

if (!nextMenuItem && this.parentMenu.isRoot ()) {

nextMenuItem = this.parentMenu.parentMenuItem;

if (nextMenuItem) {

nextMenuItem = nextMenuItem. nextSibling;

}

}

if (!nextMenuItem) {

nextMenuItem = this.parentMenu.firstChild ();

}

if (nextMenuItem) {

this.container.navigateTo (nextMenuItem);

}

},

navigateOut: function () {

this.parentMenu.blur ();

},

navigateParent: function () {

var parentMenu = this. parentMenu,

horizontal = this.container.orientation === 'horizontal';

if (!parentMenu) return;

if (horizontal && this. childMenu && parentMenu. isRoot ()) {

this.navigateChild ();

return;

}

if (parentMenu.parentMenuItem && !parentMenu.isRoot ()) {

if (horizontal && this.parentMenu.depth === 2) {

var previousItem = this.parentMenu.parentMenuItem.previousSibling;

if (!previousItem) {

previousItem = this.parentMenu.rootMenu.lastChild ();

}

this.topLevelMenuItem.childMenu.hide ();

this.container.navigateTo (previousItem);

if (previousItem.childMenu) {

this.container.navigateTo (previousItem.childMenu.firstChild ());

}

}

else {

this.parentMenu.hide ();

}

}

},

navigatePrevious: function () {

if (this.childMenu) {

this.childMenu.hide ();

}

var previousMenuItem = this. previousSibling;

if (previousMenuItem) {

var childMenu = previousMenuItem. childMenu;

if (childMenu && childMenu. isRoot ()) {

previousMenuItem = childMenu. lastChild ();

}

}

if (!previousMenuItem && this.parentMenu.isRoot ()) {

previousMenuItem = this.parentMenu.parentMenuItem;

}

if (!previousMenuItem) {

previousMenuItem = this.parentMenu.lastChild ();

}

if (previousMenuItem) {

this.container.navigateTo (previousMenuItem);

}

},

setTabIndex: function (index) { if (this._anchor) this._anchor.tabIndex = index; }

};

Sys.WebForms.MenuItem._onmouseout = function (e) {

var menuItem = Sys.WebForms.Menu._elementObjectMapper.getMappedObject (this);

if (!menuItem) {

return;

}

menuItem.mouseout ();

Sys.WebForms.Menu._domHelper.cancelEvent (e);

};

Sys.WebForms.MenuItem._onmouseover = function (e) {

var menuItem = Sys.WebForms.Menu._elementObjectMapper.getMappedObject (this);

if (!menuItem) {

return;

}

menuItem.mouseover ();

Sys.WebForms.Menu._domHelper.cancelEvent (e);

};

Sys.WebForms.Menu._domHelper = {

addEvent: function (element, eventName, fn, useCapture) {

if (element.addEventListener) {

element.addEventListener (eventName, fn, !!useCapture);

}

else {

element['on' + eventName] = fn;

}

},

appendAttributeValue: function (element, name, value) {

this.updateAttributeValue ('append', element, name, value);

},

appendCssClass: function (element, value) {

this.updateClassName ('append', element, name, value);

},

appendString: function (getString, setString, value) {

var currentValue = getString ();

if (!currentValue) {

setString (value);

return;

}

var regex = this._regexes.getRegex ('(^-)' + value + '($-)');

if (regex.test (currentValue)) {

return;

}

setString (currentValue + ' ' + value);

},

cancelEvent: function (e) {

var event = e — window. event;

if (event) {

event.cancelBubble = true;

if (event.stopPropagation) {

event.stopPropagation ();

}

}

},

contains: function (ancestor, descendant) {

for (; descendant && (descendant ≠= ancestor); descendant = descendant. parentNode) { }

return !!descendant;

},

firstChild: function (element) {

var child = element. firstChild;

if (child && child. nodeType ≠= 1) {

child = this. nextSibling (child);

}

return child;

},

getElement: function (elementOrId) { return typeof elementOrId === 'string'? document. getElementById (elementOrId): elementOrId; },

getElementDirection: function (element) {

if (element) {

if (element.dir) {

return element. dir;

}

return this. getElementDirection (element.parentNode);

}

return «ltr» ;

},

getKeyCode: function (event) { return event. keyCode — event. charCode — 0; },

insertAfter: function (element, elementToInsert) {

var next = element. nextSibling;

if (next) {

element.parentNode.insertBefore (elementToInsert, next);

}

else if (element.parentNode) {

element.parentNode.appendChild (elementToInsert);

}

},

nextSibling: function (element) {

var sibling = element. nextSibling;

while (sibling) {

if (sibling.nodeType === 1) {

return sibling;

}

sibling = sibling. nextSibling;

}

},

removeAttributeValue: function (element, name, value) {

this.updateAttributeValue ('remove', element, name, value);

},

removeCssClass: function (element, value) {

this.updateClassName ('remove', element, name, value);

},

removeEvent: function (element, eventName, fn, useCapture) {

if (element.removeEventListener) {

element.removeEventListener (eventName, fn, !!useCapture);

}

else if (element.detachEvent) {

element.detachEvent ('on' + eventName, fn)

}

element['on' + eventName] = null;

},

removeString: function (getString, setString, valueToRemove) {

var currentValue = getString ();

if (currentValue) {

var regex = this._regexes.getRegex ('(\s-\b)' + valueToRemove + '$-\b' + valueToRemove + '\s+');

setString (currentValue.replace (regex, ''));

}

},

setFloat: function (element, direction) {

element.style.styleFloat = direction;

element.style.cssFloat = direction;

},

updateAttributeValue: function (operation, element, name, value) {

this[operation + 'String'](

function () {

return element. getAttribute (name);

},

function (newValue) {

element.setAttribute (name, newValue);

},

value

);

},

updateClassName: function (operation, element, name, value) {

this[operation + 'String'](

function () {

return element. className;

},

function (newValue) {

element.className = newValue;

},

value

);

},

_regexes: {

getRegex: function (pattern) {

var regex = this[pattern];

if (!regex) {

this[pattern] = regex = new RegExp (pattern);

}

return regex;

}

}

};

Sys.WebForms.Menu._elementObjectMapper = {

_computedId: 0,

_mappings: {},

_mappingIdName: 'Sys.WebForms.Menu.Mapping',

getMappedObject: function (element) {

var id = element[this._mappingIdName];

if (id) {

return this._mappings[this._mappingIdName + ':' + id];

}

},

map: function (element, theObject) {

var mappedObject = element[this._mappingIdName];

if (mappedObject === theObject) {

return;

}

var objectId = element[this._mappingIdName] — element. id — '%' + (++this._computedId);

element[this._mappingIdName] = objectId;

this._mappings[this._mappingIdName + ':' + objectId] = theObject;

theObject.mappingId = objectId;

}

};

Sys.WebForms.Menu._keyboardMapping = new (function () {

var LEFT_ARROW = 37;

var UP_ARROW = 38;

var RIGHT_ARROW = 39;

var DOWN_ARROW = 40;

var TAB = 9;

var ESCAPE = 27;

this.vertical = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };

this.vertical[DOWN_ARROW] = this.vertical.next;

this.vertical[UP_ARROW] = this.vertical.previous;

this.vertical[RIGHT_ARROW] = this.vertical.child;

this.vertical[LEFT_ARROW] = this.vertical.parent;

this.vertical[TAB] = this. vertical[ESCAPE] = this.vertical.tab;

this.verticalRtl = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };

this.verticalRtl[DOWN_ARROW] = this.verticalRtl.next;

this.verticalRtl[UP_ARROW] = this.verticalRtl.previous;

this.verticalRtl[LEFT_ARROW] = this.verticalRtl.child;

this.verticalRtl[RIGHT_ARROW] = this.verticalRtl.parent;

this.verticalRtl[TAB] = this. verticalRtl[ESCAPE] = this.verticalRtl.tab;

this.horizontal = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };

this.horizontal[RIGHT_ARROW] = this.horizontal.next;

this.horizontal[LEFT_ARROW] = this.horizontal.previous;

this.horizontal[DOWN_ARROW] = this.horizontal.child;

this.horizontal[UP_ARROW] = this.horizontal.parent;

this.horizontal[TAB] = this. horizontal[ESCAPE] = this.horizontal.tab;

this.horizontalRtl = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };

this.horizontalRtl[RIGHT_ARROW] = this.horizontalRtl.previous;

this.horizontalRtl[LEFT_ARROW] = this.horizontalRtl.next;

this.horizontalRtl[DOWN_ARROW] = this.horizontalRtl.child;

this.horizontalRtl[UP_ARROW] = this.horizontalRtl.parent;

this.horizontalRtl[TAB] = this. horizontalRtl[ESCAPE] = this.horizontalRtl.tab;

this.horizontal.contains = this.horizontalRtl.contains = this.vertical.contains = this.verticalRtl.contains = function (keycode) {

return this[keycode] ≠ null;

};

})();

Sys.WebForms._MenuContainer = function (options) {

this.focused = false;

this.disabled = options. disabled;

this.staticDisplayLevels = options. staticDisplayLevels — 1;

this.element = options. element;

this.orientation = options. orientation — 'vertical';

this.disappearAfter = options. disappearAfter;

this.rightToLeft = Sys.WebForms.Menu._domHelper.getElementDirection (this.element) === 'rtl';

Sys.WebForms.Menu._elementObjectMapper.map (this.element, this);

this.menu = options. menu;

this.menu.rootMenu = this. menu;

this.menu.displayMode = 'static';

this.menu.element.style.position = 'relative';

this.menu.element.style.width = 'auto';

if (this.orientation === 'vertical') {

Sys.WebForms.Menu._domHelper.appendAttributeValue (this.menu.element, 'role', 'menu');

if (this.rightToLeft) {

this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.verticalRtl;

}

else {

this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.vertical;

}

}

else {

Sys.WebForms.Menu._domHelper.appendAttributeValue (this.menu.element, 'role', 'menubar');

if (this.rightToLeft) {

this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.horizontalRtl;

}

else {

this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.horizontal;

}

}

var floatBreak = document. createElement ('div');

floatBreak.style.clear = this. rightToLeft? «right»: «left» ;

this.element.appendChild (floatBreak);

Sys.WebForms.Menu._domHelper.setFloat (this.element, this. rightToLeft? «right»: «left»);

Sys.WebForms.Menu._domHelper.insertAfter (this.element, floatBreak);

if (!this.disabled) {

Sys.WebForms.Menu._domHelper.addEvent (this.menu.element, 'focus', this._onfocus, true);

Sys.WebForms.Menu._domHelper.addEvent (this.menu.element, 'keydown', this._onkeydown);

var menuContainer = this;

this.element.dispose = function () {

if (menuContainer.element.dispose) {

menuContainer.element.dispose = null;

Sys.WebForms.Menu._domHelper.removeEvent (menuContainer.menu.element, 'focus', menuContainer._onfocus, true);

Sys.WebForms.Menu._domHelper.removeEvent (menuContainer.menu.element, 'keydown', menuContainer._onkeydown);

menuContainer.menu.doDispose ();

}

};

Sys.WebForms.Menu._domHelper.addEvent (window, 'unload', function () {

if (menuContainer.element.dispose) {

menuContainer.element.dispose ();

}

});

}

};

Sys.WebForms._MenuContainer.prototype = {

blur: function () {

this.focused = false;

this.isBlurring = false;

this.menu.collapse ();

this.focusedMenuItem = null;

},

focus: function (e) { this. focused = true; },

navigateTo: function (menuItem) {

if (this.focusedMenuItem && this. focusedMenuItem ≠= this) {

this.focusedMenuItem.highlight (false);

}

menuItem.highlight (true);

menuItem.focus ();

this.focusedMenuItem = menuItem;

},

_onfocus: function (e) {

var event = e — window. event;

if (event.srcElement && this) {

if (Sys.WebForms.Menu._domHelper.contains (this.element, event. srcElement)) {

if (!this.focused) {

this.focus ();

}

}

}

},

_onkeydown: function (e) {

var thisMenu = Sys.WebForms.Menu._elementObjectMapper.getMappedObject (this);

var keyCode = Sys.WebForms.Menu._domHelper.getKeyCode (e — window. event);

if (thisMenu) {

thisMenu.handleKeyPress (keyCode);

}

}

};

// © 2010 CodePlex Foundation

(function (g, b){var o="object", t="set_", l="#", n="$", k="string", j=".", h=" «, s="onreadystatechange», m="load", y="_readyQueue", x="_domReadyQueue", r="error", d=false, q="on", a=null, c=true, e="undefined", f="function", i="number", A=function (a){a=a—{};p (arguments, function (b){b&&v (b, function (c, b){a[b]=c})}, 1);return a}, v=function (a, c){for (var b in a) c (a[b], b)}, p=function (a, g, h){var d;if (a){a=a instanceof Array—typeof a. length===i&&(typeof a. callee===f—a.item&&typeof a. nodeType===e&&!a.addEventListener&&!a.attachEvent)?a:[a]; for (var b=h—0,j=a.length;b=0—a.indexOf (d+h)>=0)){l.push (b);e=c}return e}var b, f, e;if (m&&i (a)&&g)return c;if (!n){a=a—document;var k=a.querySelectorAll—a.getElementsByClassName;if (k){if (a.querySelectorAll)d=j+d;e=k.call (a, d);for (b=0,f=e.length;b0){for (var d=[], c=0;c=f)break;b=Function._validateParameter (i[c], h, j);if (b){b.popStackFrame ();return b}}return a};w._validateParameterCount=function (m, g, l){var b, f, e=g.length, h=m.length;if (he){f=c;for (b=0;b<0){c.shift ();f=c[0]}var g=c[1]; if (typeof g===e—g===a)return;var d=g.match (/@(.*):(d+)$/);if (typeof d===e—d===a)return;b.fileName=d[1]; b. lineNumber=parseInt (d[2]);c.shift ();b.stack=c.join (F)};w=Object;w.__typeName="Object" ;w.__class=c;w.getType=function (b){var a=b.constructor;return!a—typeof a≠=f—!a.__typeName—a.__typeName==="Object" ?Object:a};w.getTypeName=function (a){return Object. getType (a).getName ()};w=String;w.__typeName="String" ;w.__class=c;z=w.prototype;z.endsWith=function (a){return this. substr (this.length-a.length)===a};z.startsWith=function (a){return this. substr (0,a.length)===a};z.trim=function (){return this. replace (/^s±s+$/g, x)};z.trimEnd=function (){return this. replace (/s+$/, x)};z.trimStart=function (){return this. replace (/^s+/, x)};w.format=function (){return String._toFormattedString (d, arguments)};w._toFormattedString=function (o, m){for (var f=x, h=m[0], b=0;c;){var i=h.indexOf («{», b), g=h.indexOf («}», b);if (i<0&&g<0){f+=h.slice (b);break}if (g>0&&(g<0)break;var k=h.substring (b, g), j=k.indexOf («:»), n=parseInt (j<0?k:k.substring (0,j), 10)+1,l=j<0?x:k.substring (j+1), d=m[n]; if (typeof d===e—d===a)d=x;if (d.toFormattedString)f+=d.toFormattedString (l);else if (o&&d.localeFormat)f+=d.localeFormat (l);else if (d.format)f+=d.format (l);else f+=d.toString ();b=g+1}return f};w=Boolean;w.__typeName="Boolean" ;w.__class=c;w.parse=function (e){var b=e.trim ().toLowerCase (), a;if (b==="false")a=d;else if (b==="true")a=c;return a};w=Date;w.__typeName="Date" ;w.__class=c;w=Number;w.__typeName="Number" ;w.__class=c;w=RegExp;w.__typeName="RegExp" ;w.__class=c;if (!g)this.window=this;g.Type=w=Function;z=w.prototype;z.callBaseMethod=function (a, e, c){var d=b._getBaseMethod (this, a, e);return c? d. apply (a, c):d.apply (a)};z.getBaseMethod=function (a, c){return b._getBaseMethod (this, a, c)};z.getBaseType=function (){return typeof this.__baseType===e?a:this.__baseType};z.getInterfaces=function (){var c=[], a=this;while (a){var b=a.__interfaces;if (b)for (var d=0,f=b.length;d=0){a=a.substr (g+1);if (a&&a.charAt (0)==="_")return}a=a.substr (0,1).toLowerCase ()+a.substr (1)}if (!c)c={};c.name=a;c.type=d;c.typeName=f;c._isBehavior=e;c=b.components[a]=A (b.components[a], c);var i=b._getCreate©, h=e?b.ElementSet.prototype:b.create;h[a]=i};b.registerPlugin=function (a){var e=a.name, f=a.functionName—e;b.plugins[e]=A (b.plugins[e], a);var g=a.plugin, d;if (a.global)d=b;else if (a.dom)d=b.ElementSet.prototype;else if (a.components)d=b.ComponentSet.prototype;if (d)d[f]=b._getCreate (a, c)};b._createComp=function (d, l, f){var i=d.type, h=d.parameters—[], j=d._isBehavior, m=j?f[0]: a, c=f[h.length]—{};c=A ({}, l, c);p (h, function (a, g){var d=typeof a===k?a:a.name, b=f[g]; if (typeof b≠=e&&typeof c[d]===e)c[d]=b});if (this instanceof b. ElementSet){var g=[]; this. each (function (){g.push (b._create (i, c, this))});return new b. ComponentSet (this, g)}else return b._create (i, c)};b._create=function (f, g, c){var d=typeof c;if (d===k)c=b.get (c);var a;b._2Pass (function (){a=d===e?new f: new f (c);u (a, jb);b._set (a, g);var h=b.Component;if (!h—!h._register (a))u (a," endUpdate")—u (a, T)});return a};z.registerInterface=function (d){var a=this;b.__upperCaseTypes[d.toUpperCase ()]=a;a.prototype.constructor=a;a.__typeName=d;a.__interface=c;return a};z.resolveInheritance=function (){var a=this;if (a.__basePrototypePending){var e=a.__baseType;e.resolveInheritance ();var c=e.prototype, d=a.prototype;for (var b in c) d[b]=d[b]—c[b]; delete a.__basePrototypePending}};w.getRootNamespaces=function (){return Array. clone (b.__rootNamespaces)};w.isClass=function (a){return!!(a&&a.__class)};w.isInterface=function (a){return!!(a&&a.__interface)};w.isNamespace=function (a){return!!(a&&a.__namespace)};w.parse=function (d, f){var c;if (f){c=b.__upperCaseTypes[f.getName ().toUpperCase ()+j+d.toUpperCase ()]; return c—a}if (!d)return a;var e=Type.__htClasses;if (!e)Type.__htClasses=e={};c=e[d]; if (!c){c=g.eval (d);e[d]=c}return c};w.registerNamespace=function (a){Type._registerNamespace (a)};w._registerNamespace=function (h){for (var f=g, e=h.split (j), d=0,k=e.length;d<0)a=Math.max (0,c+a)}for (var b=a;b=0};w.dequeue=function (a){return a. shift ()};w.forEach=function (b, f, d){for (var a=0,g=b.length;a=0&&b.splice (a, 1);return a>=0};w.removeAt=function (a, b){a.splice (b, 1)};Type._registerScript._scripts={" MicrosoftAjaxCore. js" :c," MicrosoftAjaxGlobalization. js" :c," MicrosoftAjaxSerialization. js" :c," MicrosoftAjaxComponentModel. js" :c," MicrosoftAjaxHistory. js" :c," MicrosoftAjaxNetwork. js" :c," MicrosoftAjaxWebServices. js" :c};w=b.IDisposable=function (){};w.registerInterface («Sys.IDisposable»);w=b.StringBuilder=function (b){this._parts=typeof b≠=e&&b≠=a&&b≠=x?[b.toString ()]: [];this._value={};this._len=0};w.prototype={append:function (a){this._parts.push (a);return this}, appendLine: function (b){this._parts.push (typeof b===e—b===a—b===x?" rn" :b+" rn");return this}, clear: function (){this._parts=[]; this._value={};this._len=0}, isEmpty: function (){return!this._parts.length—!this.toString ()}, toString: function (b){var d=this;b=b—x;var c=d._parts;if (d._len≠=c.length){d._value={};d._len=c.length}var i=d._value, h=i[b]; if (typeof h===e){if (b≠=x)for (var f=0;fy){K.agent=K.InternetExplorer;K.version=parseFloat (lb.match (/MSIE (d+.d+)/)[1]);if (K.version>7&&document.documentMode>6)K.documentMode=document.documentMode;K.hasDebuggerStatement=c}else if (lb.indexOf («Firefox/»)>y){K.agent=K.Firefox;K.version=parseFloat (lb.match (/ Firefox/(d+.d+)/)[1]);K.name=S;K.hasDebuggerStatement=c}else if (lb.indexOf («AppleWebKit/»)>y){K.agent=K.Safari;K.version=parseFloat (lb.match (/ AppleWebKit/(d+(.d+)?)/)[1]);K.name="Safari" }else if (lb.indexOf («Opera/»)>y)K.agent=K.Opera;w=b.EventArgs=function (){};w.registerClass («Sys.EventArgs»);b.EventArgs.Empty=new b. EventArgs;w=b.CancelEventArgs=function (){b.CancelEventArgs.initializeBase (this);this._cancel=d};w.prototype={get_cancel:function (){return this._cancel}, set_cancel:function (a){this._cancel=a}};w.registerClass («Sys.CancelEventArgs», b. EventArgs);Type.registerNamespace («Sys.UI»);w=b._Debug=function (){};w.prototype={_appendConsole:function (a){typeof Debug≠=e&&Debug.writeln;g.console&&g.console.log&&g.console.log (a);g.opera&&g.opera.postError (a);g.debugService&&g.debugService.trace (a)},_getTrace:function (){var c=b.get («#TraceConsole»);return c&&c.tagName.toUpperCase ()==="TEXTAREA" ?c:a},_appendTrace:function (b){var a=this._getTrace ();if (a)a.value+=b+F}," assert" :function (d, a, c){if (!d){a=c&&this.assert.caller?String.format (b.Res.assertFailedCaller, a, this.assert.caller):String.format (b.Res.assertFailed, a);confirm (String.format (b.Res.breakIntoDebugger, a))&&this.fail (a)}}, clearTrace: function (){var a=this._getTrace ();if (a)a.value=x}, fail: function (a){this._appendConsole (a);b.Browser.hasDebuggerStatement&&g.eval («debugger»)}, trace: function (a){this._appendConsole (a);this._appendTrace (a)}, traceDump: function (a, b){this._traceDump (a, b, c)},_traceDump:function (b, l, n, c, h){var d=this;l=l—" traceDump" ;c=c—x;var j=c+l+": «;if (b===a){d.trace (j+U);return}switch (typeof b){case e: d. trace (j+ob);break;case i: case k: case» boolean" :d.trace (j+b);break;default:if (Date.isInstanceOfType (b)—RegExp.isInstanceOfType (b)){d.trace (j+b.toString ());break}if (!h)h=[]; else if (Array.contains (h, b)){d.trace (j+" …");return}h.push (b);if (b==g—b===document—g.HTMLElement&&b instanceof HTMLElement—typeof b. nodeName===k){var s=b.tagName—" DomElement" ;if (b.id)s+=" - «+b.id;d.trace (c+l+» {" +s+" }")}else{var q=Object.getTypeName (b);d.trace (c+l+(typeof q===k?" {" +q+" }" :x));if (c===x—n){c+=" «;var m, r, t, o, p;if (b instanceof Array){r=b.length;for (m=0;m=0;f—){var o=k[f]. trim ();a=c[o];typeof a≠=i&&h.call (d, e. split (G)[f]. trim ());n-=a}return n}}function Gb (d){var f=this;if (typeof d===e—d===a)return f.__string;var g=f.prototype, b;if (!f.__flags—d===0){for (b in g) if (g[b]===d)return b}else{var c=f.__sortedValues;if (!c){c=[]; for (b in g) c. push ({key:b, value: g[b]});c.sort (function (a, b){return a. value-b.value});f.__sortedValues=c}var i=[], j=d;for (b=c.length-1;b>=0;b—){var k=c[b], h=k.value;if (h===0)continue;if ((h&d)===h){i.push (k.key);j-=h;if (j===0)break}}if (i.length&&j===0)return i. reverse ().join („, „)}return x}w=Type;w.prototype.registerEnum=function (d, f){var a=this;b.__upperCaseTypes[d.toUpperCase ()]=a;for (var e in a. prototype)a[e]=a.prototype[e]; a.__typeName=d;a.parse=Hb;a.__string=a.toString ();a.toString=Gb;a.__flags=f;a.__enum=c};w.isEnum=function (a){return!!(a&&a.__enum)};w.isFlags=function (a){return!!(a&&a.__flags)};w=b.CollectionChange=function (g, b, e, c, f){var d=this;d.action=g;if (b)if (!(b instanceof Array))b=[b]; d. newItems=b—a;if (typeof e≠=i)e=y;d.newStartingIndex=e;if (c)if (!(c instanceof Array))c=[c]; d. oldItems=c—a;if (typeof f≠=i)f=y;d.oldStartingIndex=f};w.registerClass („Sys.CollectionChange“);w=b.NotifyCollectionChangedAction=function (){};w.prototype={add:0,remove:1,reset:2};w.registerEnum („Sys.NotifyCollectionChangedAction“);w=b.NotifyCollectionChangedEventArgs=function (a){this._changes=a;b.NotifyCollectionChangedEventArgs.initializeBase (this)};w.prototype={get_changes:function (){return this._changes—[]}};w.registerClass („Sys.NotifyCollectionChangedEventArgs“, b. EventArgs);w=b.Observer=function (){};w.registerClass („Sys.Observer“);w.makeObservable=function (a){var d=a instanceof Array, c=b.Observer;if (a.setValue===c._observeMethods.setValue)return a;c._addMethods (a, c._observeMethods);d&&c._addMethods (a, c._arrayMethods);return a};w._addMethods=function (c, a){for (var b in a) c[b]=a[b]};w._addEventHandler=function (e, a, d){b.Observer._getContext (e, c).events._addHandler (a, d)};w.addEventHandler=function (d, a, c){b.Observer._addEventHandler (d, a, c)};w._removeEventHandler=function (e, a, d){b.Observer._getContext (e, c).events._removeHandler (a, d)};w.removeEventHandler=function (d, a, c){b.Observer._removeEventHandler (d, a, c)};w.clearEventHandlers=function (d, a){b.Observer._getContext (d, c).events._removeHandlers (a)};w.raiseEvent=function (c, f, e){var d=b.Observer._getContext (c);if (!d)return;var a=d.events.getHandler (f);a&&a (c, e—b.EventArgs.Empty)};w.addPropertyChanged=function (c, a){b.Observer._addEventHandler (c, C, a)};w.removePropertyChanged=function (c, a){b.Observer._removeEventHandler (c, C, a)};w.beginUpdate=function (a){b.Observer._getContext (a, c).updating=c};w.endUpdate=function (e){var c=b.Observer._getContext (e);if (!c—!c.updating)return;c.updating=d;var g=c.dirty;c.dirty=d;if (g){if (e instanceof Array){var f=c.changes;c.changes=a;b.Observer.raiseCollectionChanged (e, f)}b.Observer.raisePropertyChanged (e, x)}};w.isUpdating=function (c){var a=b.Observer._getContext (c);return a? a. updating:d};w._setValue=function (d, o, l){for (var g, v, p=d, i=o.split (j), n=0,r=i.length-1;ny&&cb}function Ib (c, a){var d=new Date, e=wb (d);if (ac.Calendar.TwoDigitYearMax)a-=B}return a}function wb (f, d){if (!d)return 0;for (var c, e=f.getTime (), b=0,g=d.length;b=c)return b}return 0}function yb (d, b, e, c){var a=d.getFullYear ();if (!c&&b.eras)a-=b.eras[e+3]; return a}b._appendPreOrPostMatch=function (f, b){for (var e=0,a=d, c=0,h=f.length;c<4?Ib (e, c):c;if (N (j, 0,9999))return a;break;case“ h“ :case» hh" :f=c;if (f===12)f=0;if (N (f, 0,11))return a;break;case" H" :case" HH" :f=c;if (N (f, 0,23))return a;break;case" m" :case" mm" :z=c;if (N (z, 0,59))return a;break;case" s" :case" ss" :A=c;if (N (A, 0,59))return a;break;case" tt" :case" t" :var D=g.toUpperCase ();v=D===e.PMDesignator.toUpperCase ();if (!v&&D≠=e.AMDesignator.toUpperCase ())return a;break;case" f" :case" ff" :case" fff" :x=c*Math.pow (10,3-m);if (N (x, 0,999))return a;break;case" ddd" :case W: p=s._getDayIndex (g, m===3);if (N (p, 0,6))return a;break;case" zzz" :var u=g.split (/:/);if (u.length≠=2)return a;k=parseInt (u[0], 10);if (N (k,-12,13))return a;var t=parseInt (u[1], 10);if (N (t, 0,59))return a;l=k*60+(g.startsWith (E)?-t:t);break;case" z" :case" zz" :k=c;if (N (k,-12,13))return a;l=k*60;break;case" g" :case" gg" :var o=g;if (!o—!e.eras)return a;o=o.toLowerCase ().trim ();for (var q=0,L=e.eras.length;q<12)f+=12;b.setHours (f, z, A, x);if (l≠=a){var B=b.getMinutes ()-(l+b.getTimezoneOffset ());b.setHours (b.getHours ()+parseInt (B/60,10), B%60)}return b};z=w.prototype;z.format=function (a){return this._toFormattedString (a, b.CultureInfo.InvariantCulture)};z.localeFormat=function (a){return this._toFormattedString (a, b.CultureInfo.CurrentCulture)};z._toFormattedString=function (h, n){var d=this, e=n.dateTimeFormat, o=e.Calendar.convert;if (!h—!h.length—h==="i"){var a;if (n&&n.name.length)if (o)a=d._toFormattedString (e.FullDateTimePattern, n);else{var z=new Date (d.getTime ()), K=wb (d, e. eras);z.setFullYear (yb (d, e, K));a=z.toLocaleString ()}else a=d.toString ();return a}var A=e.eras, w=h==="s" ;h=Date._expandFormat (e, h);a=[]; var i, J=[" 0″ ," 00″ ," 000″ ]; function g (c, a){var b=c+x;return a>1&&b.length<4)j=j%B;a.push (g (j, f));break;case" h" :case" hh" :i=d.getHours ()%12;if (i===0)i=12;a.push (g (i, f));break;case" H" :case" HH" :a.push (g (d.getHours (), f));break;case" m" :case" mm" :a.push (g (d.getMinutes (), f));break;case" s" :case" ss" :a.push (g (d.getSeconds (), f));break;case" t" :case" tt" :j=d.getHours ()<12?e.AMDesignator:e.PMDesignator;a.push (f===1?j.charAt (0):j);break;case" f" :case" ff" :case" fff" :a.push (g (d.getMilliseconds (), 3).substr (0,f));break;case" z" :case" zz" :i=d.getTimezoneOffset ()/60;a.push ((i<=0?H:E)+g (Math.floor (Math.abs (i)), f));break;case" zzz" :i=d.getTimezoneOffset ()/60;a.push ((i<=0?H:E)+g (Math.floor (Math.abs (i)), 2)+" :" +g (Math.abs (d.getTimezoneOffset ()%60), 2));break;case" g" :case" gg" :e.eras&&a.push (e.eras[wb (d, A)+1]);break;case D: a. push (e.DateSeparator)}}return a. join (x)};String.localeFormat=function (){return String._toFormattedString (c, arguments)};var Fb={P:[" Percent" ,[" -n %" ," -n%" ," -%n" ],[" n %" ," n%" ," %n" ], B], N:[" Number" ,[" (n)" ," -n" ," - n" ," n-" ," n -" ], a,1], C:[" Currency" ,[" ($n)" ," -$n" ," $-n" ," $n-" ," (n$)" ," -n$" ," n-$" ," n$-" ," -n $" ," -$ n" ," n $-" ," $ n-" ," $ -n" ," n- $" ," ($ n)" ," (n $)" ],[" $n" ," n$" ," $ n" ," n $" ], 1]};b._toFormattedString=function (f, q){var i=this;if (!f—!f.length—f==="i")return q&&q.name.length?i.toLocaleString ():i.toString ();function o (a, c, d){for (var b=a.length;b1?parseInt (g[1]):0;g=b.split (j);b=g[0];a=g.length>1?g[1]:x;var t;if (e>0){a=o (a, e, d);b+=a.slice (0,e);a=a.substr (e)}else if (e<0){e=-e;b=o (b, e+1,c);a=b.slice (-e, b. length)+a;b=b.slice (0,-e)}if (i>0)a=s+(a.length>i?a.slice (0,i):o (a, i, d));else a=x;var f=b.length-1,h=x;while (f>=0){if (k===0—k>f)return b. slice (0,f+1)+(h.length?q+h+a:a);h=b.slice (f-k+1,f+1)+(h.length?q+h:x);f-=k;if (m1)h=parseInt (f.slice (1), 10);var m, e=f.charAt (0).toUpperCase ();switch (e){case" D" :m="n" ;if (h≠=y)g=o (x+g, h, c);if (i<0)g=-g;break;case" C" :case" N" :case" P" :e=Fb[e]; var k=e[0]; m=i<0?e[1][a[k+" NegativePattern" ]]:e[2]?e[2][a[k+" PositivePattern" ]]:" n" ;if (h===y)h=a[k+" DecimalDigits" ];g=s (Math.abs (i)*e[3], h, a[k+" GroupSizes" ], a[k+" GroupSeparator" ], a[k+" DecimalSeparator" ]);break;default:throw Error. format (b.Res.formatBadFormatSpecifier);}for (var r=/n-$—-%/g, l=x;c;){var t=r.lastIndex, p=r.exec (m);l+=m.slice (t, p? p. index:m.length);if (!p)break;switch (p[0]){case" n" :l+=g;break;case n: l+=a.CurrencySymbol;break;case E: if (/[1−9]/.test (g))l+=a.NegativeSign;break;case" %" :l+=a.PercentSymbol}}return l};w=Number;w.parseLocale=function (a){return Number._parse (a, b.CultureInfo.CurrentCulture)};w.parseInvariant=function (a){return Number._parse (a, b.CultureInfo.InvariantCulture)};w._parse=function (b, t){b=b.trim ();if (b.match (/^[±]?infinity$/i))return parseFloat (b);if (b.match (/^0x[a-f0−9]+$/i))return parseInt (b);var c=t.numberFormat, i=Number._parseNumberNegativePattern (b, c, c. NumberNegativePattern), k=i[0], f=i[1]; if (k===x&&c.NumberNegativePattern≠=1){i=Number._parseNumberNegativePattern (b, c,1);k=i[0];f=i[1]}if (k===x)k=H;var m, e, g=f.indexOf («e»);if (g<0)g=f.indexOf («E»);if (g<0){e=f;m=a}else{e=f.substr (0,g);m=f.substr (g+1)}var d, n, s=c.NumberDecimalSeparator, q=e.indexOf (s);if (q<0){d=e;n=a}else{d=e.substr (0,q);n=e.substr (q+s.length)}var p=c.NumberGroupSeparator;d=d.split (p).join (x);var r=p.replace (/u00A0/g, h);if (p≠=r)d=d.split®.join (x);var o=k+d;if (n≠=a)o+=j+n;if (m≠=a){var l=Number._parseNumberNegativePattern (m, c,1);if (l[0]===x)l[0]=H;o+="e" +l[0]+l[1]}return o. match (/^[±]?d*.?d*(e[±]?d+)?$/)?parseFloat (o):Number.NaN};w._parseNumberNegativePattern=function (a, d, e){var b=d.NegativeSign, c=d.PositiveSign;switch (e){case 4: b=h+b;c=h+c;case 3: if (a.endsWith (b))return[E, a. substr (0,a.length-b.length)]; else if (a.endsWith (c))return[H, a. substr (0,a.length-c.length)]; break;case 2: b+=h;c+=h;case 1: if (a.startsWith (b))return[E, a. substr (b.length)]; else if (a.startsWith (c))return[H, a. substr (c.length)]; break;case 0: if (a.startsWith («(»)&&a.endsWith («)»))return[E, a. substr (1,a.length-2)]}return[x, a]};z=w.prototype;z.format=function (a){return b._toFormattedString.call (this, a, b.CultureInfo.InvariantCulture)};z.localeFormat=function (a){return b._toFormattedString.call (this, a, b.CultureInfo.CurrentCulture)};function Ab (a){return a. split (" «).join (h).toUpperCase ()}function xb (b){var a=[]; p (b, function (b, c){a[c]=Ab (b)});return a}function Cb (c){var b={};v (c, function (c, d){b[d]=c instanceof Array? c. length===1?[c]: Array. apply (a, c):typeof c===o?Cb (c):c});return b}w=b.CultureInfo=function (c, b, a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};w.prototype={_getDateTimeFormats:function (){var b=this._dateTimeFormats;if (!b){var a=this.dateTimeFormat;this._dateTimeFormats=b=[a.MonthDayPattern, a. YearMonthPattern, a. ShortDatePattern, a. ShortTimePattern, a. LongDatePattern, a. LongTimePattern, a. FullDateTimePattern, a. RFC1123Pattern, a. SortableDateTimePattern, a. UniversalSortableDateTimePattern]}return b},_getMonthIndex:function (b, g){var a=this, c=g?» _upperAbbrMonths" :" _upperMonths", e=c+" Genitive", h=a[c]; if (!h){var f=g?Z:x;a[c]=xb (a.dateTimeFormat[f+qb]);a[e]=xb (a.dateTimeFormat[f+pb])}b=Ab (b);var d=tb (a[c], b);if (d<0)d=tb (a[e], b);return d},_getDayIndex:function (e, c){var a=this, b=c?" _upperAbbrDays" :" _upperDays", d=a[b]; if (!d)a[b]=xb (a.dateTimeFormat[(c?Z:x)+" DayNames" ]);return tb (a[b], Ab (e))}};w.registerClass («Sys.CultureInfo»);w._parse=function (a){var c=a.dateTimeFormat;if (c&&!c.eras)c.eras=a.eras;return new b. CultureInfo (a.name, a. numberFormat, c)};w._setup=function (){var c=this, b=g.__cultureInfo, f=[" January" ," February" ," March" ," April" ," May" ," June" ," July" ," August" ," September" ," October" ," November" ," December", x], e=[" Jan" ," Feb" ," Mar" ," Apr" ," May" ," Jun" ," Jul" ," Aug" ," Sep" ," Oct" ," Nov" ," Dec", x], h={name:x, numberFormat:{CurrencyDecimalDigits:2,CurrencyDecimalSeparator:j, CurrencyGroupSizes:[3], NumberGroupSizes:[3], PercentGroupSizes:[3], CurrencyGroupSeparator: G, CurrencySymbol:" ¤", NaNSymbol:" NaN", CurrencyNegativePattern:0,NumberNegativePattern:1,PercentPositivePattern:0,PercentNegativePattern:0,NegativeInfinitySymbol:" -Infinity", NegativeSign: E, NumberDecimalDigits:2,NumberDecimalSeparator:j, NumberGroupSeparator: G, CurrencyPositivePattern:0,PositiveInfinitySymbol:" Infinity", PositiveSign: H, PercentDecimalDigits:2,PercentDecimalSeparator:j, PercentGroupSeparator: G, PercentSymbol:" %", PerMilleSymbol:" ‰", NativeDigits:[" 0″ ," 1″ ," 2″ ," 3″ ," 4″ ," 5″ ," 6″ ," 7″ ," 8″ ," 9″ ], DigitSubstitution:1}, dateTimeFormat:{AMDesignator:" AM", Calendar:{MinSupportedDateTime:" @-62 135 568 000 000@", MaxSupportedDateTime:" @253 402 300 799 999@", AlgorithmType:1,CalendarType:1,Eras:[1], TwoDigitYearMax:2029}, DateSeparator: D, 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: e, MonthNames: f, NativeCalendarName:" Gregorian Calendar", AbbreviatedMonthGenitiveNames: Array. clone (e), MonthGenitiveNames: Array. clone (f)}, eras:[1," A.D.", a, 0]};c.InvariantCulture=c._parse (h);switch (typeof b){case k: b=g.eval («(» +b+")");case o: c. CurrentCulture=c._parse (b);delete __cultureInfo;break;default:b=Cb (h);b.name="en-US" ;b.numberFormat.CurrencySymbol=n;var d=b.dateTimeFormat;d.FullDatePattern="dddd, MMMM dd, yyyy h: mm:ss tt" ;d.LongDatePattern="dddd, MMMM dd, yyyy" ;d.LongTimePattern="h:mm:ss tt" ;d.ShortDatePattern="M/d/yyyy" ;d.ShortTimePattern="h:mm tt" ;d.YearMonthPattern="MMMM, yyyy" ;c.CurrentCulture=c._parse (b)}};w._setup ();Type.registerNamespace («Sys.Serialization»);w=b.Serialization.JavaScriptSerializer=function (){};w.registerClass («Sys.Serialization.JavaScriptSerializer»);w._esc={charsRegExs:{'" ':/" /g," «:/\/g}, chars:[» «,'» '], dateRegEx:/(^-[^\])" \/Date ((-?[0−9]+)(?:[a-zA-Z]-(?:+—)[0−9]{4})?)\/" /g, escapeChars:{" «:» \" ,'" ':'" '," b" :" \b" ," t" :" \t" ," n" :" \n" ," f" :" \f" ," r" :" \r" }, escapeRegExG:/[" \x00-x1F]/g, escapeRegEx:/[" \x00-x1F]/i, jsonRegEx:/[^:{}[]0−9.-+Eaeflnr-u nrt]/g, jsonStringRegEx:/" (\.-[^" \])*" /g};w._init=function (){for (var d=this._esc, g=d.chars, f=d.charsRegExs, e=d.escapeChars, b=0;b<32;b++){var a=String.fromCharCode (b);g[b+2]=a;f[a]=new RegExp (a," g");e[a]=e[a]—" \u" +(«000″ +b.toString (16)).slice (-4)}this._load=c};w._serializeNumberWithBuilder=function (a, c){if (!isFinite (a))throw Error. invalidOperation (b.Res.cannotSerializeNonFiniteNumbers);c.append (String (a))};w._serializeStringWithBuilder=function (a, e){e.append ('» ');var b=this._esc;if (b.escapeRegEx.test (a)){!this._load&&this._init ();if (a.length<128)a=a.replace (b.escapeRegExG, function (a){return b. escapeChars[a]});else for (var d=0;d<34;d++){var c=b.chars[d]; if (a.indexOf©≠=y){var f=b.escapeChars[c]; a=ib («Opera»)—ib (S)?a.split©.join (f):a.replace (b.charsRegExs[c], f)}}}e.append (a).append ('" ')};w._serializeWithBuilder=function (b, a, q, p){var h=this, g;switch (typeof b){case o: if (b)if (Number.isInstanceOfType (b))h._serializeNumberWithBuilder (b, a);else if (Boolean.isInstanceOfType (b))a.append (b);else if (String.isInstanceOfType (b))h._serializeStringWithBuilder (b, a);else if (b instanceof Array){a.append («[»);for (g=0;g=0;d—){var f=e[d]; (!a—f.autoRemove)&&$removeHandler (this, g, f. handler)}})};w._disposeHandlers=function (){b.UI.DomEvent._clearHandlers (this, c)};$removeHandler=w.removeHandler=function (c, a, d){b.UI.DomEvent._removeHandler (c, a, d)};w._removeHandler=function (e, c, f){b.query (e).each (function (){var b=this, i=b.nodeType;if (i===3—i===2—i===8)return;for (var h=a, g=b._events[c], e=0,j=g.length;e<8){f-=i.clientLeft;g-=i.clientTop}}return new b.UI.Point (f, g)};else if (ib («Safari»))w.getLocation=function (e){if (e.window&&e.window===e—e.nodeType===9)return new b.UI.Point (0,0);for (var f=0,g=0,k=a, i=a, d, c=e;c;k=c, i=d, c=c.offsetParent){d=b.UI.DomElement._getCurrentStyle (c);var h=c.tagName?c.tagName.toUpperCase ():a;if ((c.offsetLeft—c.offsetTop)&&(h≠=O—(!i—i.position≠=I))){f+=c.offsetLeft;g+=c.offsetTop}if (k&&b.Browser.version>=3){f+=parseInt (d.borderLeftWidth);g+=parseInt (d.borderTopWidth)}}d=b.UI.DomElement._getCurrentStyle (e);var l=d?d.position:a;if (l≠=I)for (c=e.parentNode;c;c=c.parentNode){h=c.tagName?c.tagName.toUpperCase ():a;if (h≠=O&&h≠=cb&&(c.scrollLeft—c.scrollTop)){f-=c.scrollLeft—0;g-=c.scrollTop—0}d=b.UI.DomElement._getCurrentStyle (c);var j=d?d.position:a;if (j&&j===I)break}return new b.UI.Point (f, g)};else w. getLocation=function (f){if (f.window&&f.window===f—f.nodeType===9)return new b.UI.Point (0,0);for (var g=0,h=0,j=a, i=a, d=a, c=f;c;j=c, i=d, c=c.offsetParent){var e=c.tagName?c.tagName.toUpperCase ():a;d=b.UI.DomElement._getCurrentStyle (c);if ((c.offsetLeft—c.offsetTop)&&!(e===O&&(!i—i.position≠=I))){g+=c.offsetLeft;h+=c.offsetTop}if (j≠=a&&d){if (e≠="TABLE" &&e≠="TD" &&e≠=cb){g+=parseInt (d.borderLeftWidth)—0;h+=parseInt (d.borderTopWidth)—0}if (e==="TABLE" &&(d.position==="relative" —d.position===I)){g+=parseInt (d.marginLeft)—0;h+=parseInt (d.marginTop)—0}}}d=b.UI.DomElement._getCurrentStyle (f);var k=d?d.position:a;if (k≠=I)for (c=f.parentNode;c;c=c.parentNode){e=c.tagName?c.tagName.toUpperCase ():a;if (e≠=O&&e≠=cb&&(c.scrollLeft—c.scrollTop)){g-=c.scrollLeft—0;h-=c.scrollTop—0;d=b.UI.DomElement._getCurrentStyle (c);if (d){g+=parseInt (d.borderLeftWidth)—0;h+=parseInt (d.borderTopWidth)—0}}}return new b.UI.Point (g, h)};w.isDomElement=function (a){return b._isDomElement (a)};w.removeCssClass=function (d, c){var a=h+d.className+h, b=a.indexOf (h+c+h);if (b>=0)d.className=(a.substr (0,b)+h+a.substring (b+c.length+1,a.length)).trim ()};w.resolveElement=function (d, e){var c=d;if (!c)return a;if (typeof c===k)c=b.get (l+c, e);return c};w.raiseBubbleEvent=function (c, d){var b=c;while (b){var a=b.control;if (a&&a.onBubbleEvent&&a.raiseBubbleEvent){!a.onBubbleEvent (c, d)&&a._raiseBubbleEvent (c, d);return}b=b.parentNode}};w._ensureGet=function (a, c){return b. get (a, c)};w.setLocation=function (b, c, d){var a=b.style;a.position=I;a.left=c+" px" ;a.top=d+" px" };w.toggleCssClass=function (c, a){if (b.UI.DomElement.containsCssClass (c, a))b.UI.DomElement.removeCssClass (c, a);else b.UI.DomElement.addCssClass (c, a)};w.getVisibilityMode=function (a){return a._visibilityMode===b.UI.VisibilityMode.hide?b.UI.VisibilityMode.hide:b.UI.VisibilityMode.collapse};w.setVisibilityMode=function (a, c){b.UI.DomElement._ensureOldDisplayMode (a);if (a._visibilityMode≠=c){a._visibilityMode=c;if (b.UI.DomElement.getVisible (a)===d)a.style.display=c===b.UI.VisibilityMode.hide?a._oldDisplayMode:P}};w.getVisible=function (d){var a=d.currentStyle—b.UI.DomElement._getCurrentStyle (d);return a? a. visibility≠="hidden" &&a.display≠=P:c};w.setVisible=function (a, c){if (c≠=b.UI.DomElement.getVisible (a)){b.UI.DomElement._ensureOldDisplayMode (a);var d=a.style;d.visibility=c?" visible" :" hidden" ;d.display=c—a._visibilityMode===b.UI.VisibilityMode.hide?a._oldDisplayMode:P}};w.setCommand=function (d, f, a, e){b.UI.DomEvent.addHandler (d," click", function (d){var c=e—this;b.UI.DomElement.raiseBubbleEvent (c, new b. CommandEventArgs (f, a, this, d))}, c)};b.registerPlugin ({name:" setCommand", dom: c, plugin: function (e, a, d){return this. addHandler («click», function (f){var c=d—this;b.UI.DomElement.raiseBubbleEvent (c, new b. CommandEventArgs (e, a, this, f))}, c)}});w._ensureOldDisplayMode=function (b){if (!b._oldDisplayMode){var e=b.currentStyle—this._getCurrentStyle (b);b._oldDisplayMode=e?e.display:a;if (!b._oldDisplayMode—b._oldDisplayMode===P){var d=b.tagName, c="inline" ;if (/^(DIV-P-ADDRESS-BLOCKQUOTE-BODY-COL-COLGROUP-DD-DL-DT-FIELDSET-FORM-H1-H2-H3-H4-H5-H6-HR-IFRAME-LEGEND-OL-PRE-TABLE-TD-TH-TR-UL)$/i.test (d))c="block" ;else if (d.toUpperCase ()==="LI")c="list-item" ;b._oldDisplayMode=c}}};w._getWindow=function (a){var b=a.ownerDocument—a.document—a;return b. defaultView—b.parentWindow};w._getCurrentStyle=function (b){if (b.nodeType===3)return a;var c=this._getWindow (b);if (b.documentElement)b=b.documentElement;var d=c&&b≠=c&&c.getComputedStyle?c.getComputedStyle (b, a):b.currentStyle—b.style;return d};w._onDispose=function (a, e){var c, d=a.dispose;if (d≠=b.UI.DomElement._dispose){a.dispose=b.UI.DomElement._dispose;a.__msajaxdispose=c=[]; typeof d===f&&c.push (d)}else c=a.__msajaxdispose;c.push (e)};w._dispose=function (){var b=this, c=b.__msajaxdispose;if (c)for (var d=0,e=c.length;d=0;e—){var g=l[e]; h=g.dispose;if (h&&typeof h===f)g.dispose ();else{d=g.control;d&&typeof d. dispose===f&&d.dispose ()}b=g._behaviors;b&&i._disposeComponents (b);b=g._components;if (b){i._disposeComponents (b);g._components=a}}if (!m){h=c.dispose;if (h&&typeof h===f)c.dispose ();else{d=c.control;d&&typeof d. dispose===f&&d.dispose ()}b=c._behaviors;b&&i._disposeComponents (b);b=c._components;if (b){i._disposeComponents (b);c._components=a}}}}, endCreateComponents: function (){for (var c=this._secondPassComponents, a=0,g=c.length;a1e3){for (var d=[], f=0,h=c.length;f=0;b—){var c=a[b]; typeof c. dispose===f&&c.dispose ()}},_raiseInit:function (){this.beginCreateComponents ();b.Observer.raiseEvent (this, db);this.endCreateComponents ()},_unloadHandler:function (){this.dispose ()}};w.registerClass («Sys._Application», b. Component, b. IContainer);b.Application=new b._Application;g.$find=b.Application.findComponent;b.onReady (function (){b.Application._doInitialize ()});w=b.UI.Behavior=function (a){b.UI.Behavior.initializeBase (this);this._element=a;var c=a._behaviors=a._behaviors—[]; c. push (this)};w.prototype={get_element:function (){return this._element}, get_id:function (){var c=b.UI.Behavior.callBaseMethod (this," get_id");if (c)return c;var a=this._element;return!a—!a.id?x:a.id+n+this.get_name ()}, get_name:function (){var a=this;if (a._name)return a._name;var b=Object.getTypeName (a), c=b.lastIndexOf (j);if (c>=0)b=b.substr (c+1);if (!a._initialized)a._name=b;return b}, set_name:function (a){this._name=a}, initialize: function (){var a=this;b.UI.Behavior.callBaseMethod (a, T);var c=a.get_name ();if (c)a._element[c]=a}, dispose: function (){var c=this;b.UI.Behavior.callBaseMethod (c, eb);var d=c._element;if (d){var f=c.get_name ();if (f)d[f]=a;var e=d._behaviors;Array.remove (e, c);if (!e.length)d._behaviors=a;delete c._element}}};w.registerClass («Sys.UI.Behavior», b. Component);w.getBehaviorByName=function (d, e){var c=d[e]; return c&&b.UI.Behavior.isInstanceOfType©?c:a};w.getBehaviors=function (b){var a=b._behaviors;return a? Array. clone (a):[]};b.UI.Behavior.getBehaviorsByType=function (e, f){var a=e._behaviors, d=[]; if (a)for (var b=0,g=a.length;b<8){a._historyFrame=b.get («#__historyFrame»);a._ignoreIFrame=c}a._timerHandler=Function.createDelegate (a, a._onIdle);a._timerCookie=g.setTimeout (a._timerHandler, B);var d;try{a._initialState=a._deserializeState (a.get_stateString ())}catch (d){}a._historyInitialized=c}};z._navigate=function (d){var a=this;a._ensureHistory ();var c=a._deserializeState (d);if (a._uniqueId){var e=a._state.__s—x, b=c.__s—x;if (b≠=e){a._updateHiddenField (b);__doPostBack (a._uniqueId, b);a._state=c;return}}a._setState (d);a._state=c;a._raiseNavigate ()};z._onIdle=function (){var a=this;delete a._timerCookie;var b=a.get_stateString ();if (b≠=a._currentEntry){if (!a._ignoreTimer){a._historyPointIsNew=d;a._navigate (b)}}else a._ignoreTimer=d;a._timerCookie=g.setTimeout (a._timerHandler, B)};z._onIFrameLoad=function (b){var a=this;a._ensureHistory ();if (!a._ignoreIFrame){a._historyPointIsNew=d;a._navigate (b)}a._ignoreIFrame=d};z._onPageRequestManagerBeginRequest=function (){this._ignoreTimer=c;this._originalTitle=document.title};z._onPageRequestManagerEndRequest=function (n, m){var f=this, j=m.get_dataItems ()[f._clientId], i=f._originalTitle;f._originalTitle=a;var h=b.get («#__EVENTTARGET»);if (h&&h.value===f._uniqueId)h.value=x;if (typeof j≠=e){f.setServerState (j);f._historyPointIsNew=c}else f._ignoreTimer=d;var g=f._serializeState (f._state);if (g≠=f._currentEntry){f._ignoreTimer=c;if (typeof i===k){if (!ib (bb)—b.Browser.version>7){var l=document.title;document.title=i;f._setState (g);document.title=l}else f._setState (g);f._raiseNavigate ()}else{f._setState (g);f._raiseNavigate ()}}};z._raiseNavigate=function (){var a=this, e=a._historyPointIsNew, d={};for (var c in a._state)if (c≠="__s")d[c]=a._state[c]; var f=new b. HistoryEventArgs (d);b.Observer.raiseEvent (a, fb, f);if (!e){var h;try{if (ib (S)&&g.location.hash&&(!g.frameElement—g.top.location.hash))b.Browser.version<3.5?g.history.go (0):(location.hash=a.get_stateString ())}catch (h){}}};z._serializeState=function (d){var c=[]; for (var a in d){var e=d[a]; if (a==="__s")var b=e;else c. push (a+" ="+encodeURIComponent (e))}return c. join («&»)+(b?" &&" +b:x)};z._setState=function (h, i){var f=this;if (f._enableHistory){h=h—x;if (h≠=f._currentEntry){if (g.theForm){var k=g.theForm.action, m=k.indexOf (l);g.theForm.action=(m≠=y?k.substring (0,m):k)+l+h}if (f._historyFrame&&f._historyPointIsNew){f._ignoreIFrame=c;var j=f._historyFrame.contentWindow.document;j.open («javascript:'

'");j.write («»);j.close ()}f._ignoreTimer=d;f._currentEntry=h;if (f._historyFrame—f._historyPointIsNew){var n=f.get_stateString ();if (h≠=n){g.location.hash=h;f._currentEntry=f.get_stateString ();if (typeof i≠=e&&i≠=a)document.title=i}}f._historyPointIsNew=d}}};z._updateHiddenField=function (b){if (this._clientId){var a=document.getElementById (this._clientId);if (a)a.value=b}};if (!g.XMLHttpRequest)g.XMLHttpRequest=function (){for (var e, c=[" Msxml2.XMLHTTP.

3.0″ ," Msxml2. XMLHTTP" ], b=0,d=c.length;b

3.0″ ," Msxml2. DOMDocument" ], c=0,i=e.length;c0)b._timer=g.setTimeout (Function.createDelegate (b, b._onTimeout), j);d.send (i);b._started=c}, getResponseHeader: function (b){var c, a;try{a=this._xmlHttpRequest.getResponseHeader (b)}catch (c){}if (!a)a=x;return a}, getAllResponseHeaders: function (){return this._xmlHttpRequest.getAllResponseHeaders ()}, get_responseData:function (){return this._xmlHttpRequest.responseText}, get_statusCode:function (){var b, a=0;try{a=this._xmlHttpRequest.status}catch (b){}return a}, get_statusText:function (){return this._xmlHttpRequest.statusText}, get_xml:function (){var d="parsererror", e=this._xmlHttpRequest, c=e.responseXML;if (!c—!c.documentElement){c=b.Net.XMLDOM (e.responseText);if (!c—!c.documentElement)return a}else navigator.userAgent.indexOf («MSIE»)≠=y&&c.setProperty (rb," XPath");return c.documentElement.namespaceURI==="

http://www.mozilla.org/newlayout/xml/parsererror.xml" &&c.documentElement.tagName===d?a:c.documentElement.firstChild&&c.documentElement.firstChild.tagName===d?a:c}, abort: function (){var d=this;if (d._aborted—d._responseAvailable—d._timedOut)return;d._aborted=c;d._clearTimer ();var e=d._xmlHttpRequest;if (e&&!d._responseAvailable){e.onreadystatechange=Function.emptyMethod;e.abort ();d._xmlHttpRequest=a;d._webRequest.completed (b.EventArgs.Empty)}}};w.registerClass (vb, b.Net.WebRequestExecutor);w=b.Net._WebRequestManager=function (){this._defaultExecutorType=vb};w.prototype={add_invokingRequest:function (a){b.Observer.addEventHandler (this, gb, a)}, remove_invokingRequest:function (a){b.Observer.removeEventHandler (this, gb, a)}, add_completedRequest:function (a){b.Observer.addEventHandler (this, hb, a)}, remove_completedRequest:function (a){b.Observer.removeEventHandler (this, hb, a)}, get_defaultTimeout:function (){return this._defaultTimeout—0}, set_defaultTimeout:function (a){this._defaultTimeout=a}, get_defaultExecutorType:function (){return this._defaultExecutorType}, set_defaultExecutorType:function (a){this._defaultExecutorType=a}, executeRequest: function (d){var a=d.get_executor ();if (!a){var i, h;try{var f=g.eval (this._defaultExecutorType);a=new f}catch (i){h=c}d.set_executor (a)}if (!a.get_aborted ()){var e=new b.Net.NetworkRequestEventArgs (d);b.Observer.raiseEvent (this, gb, e);!e.get_cancel ()&&a.executeRequest ()}}};w.registerClass («Sys.Net._WebRequestManager»);b.Net.WebRequestManager=new b.Net._WebRequestManager;w=b.Net.NetworkRequestEventArgs=function (a){b.Net.NetworkRequestEventArgs.initializeBase (this);this._webRequest=a};w.prototype={get_webRequest:function (){return this._webRequest}};w.registerClass («Sys.Net.NetworkRequestEventArgs», b. CancelEventArgs);w=b.Net.WebRequest=function (){var b=this;b._url=x;b._headers={};b._body=a;b._userContext=a;b._httpVerb=a};w.prototype={add_completed:function (a){b.Observer.addEventHandler (this, Q, a)}, remove_completed:function (a){b.Observer.removeEventHandler (this, Q, a)}, completed: function (e){var a=this;function d (g, f, d){var a=b.Observer._getContext (g, c).events.getHandler (d);a&&a (f, e)}d (b.Net.WebRequestManager, a._executor, hb);d (a, a._executor, Q);b.Observer.clearEventHandlers (a, Q)}, get_url:function (){return this._url}, set_url:function (a){this._url=a}, get_headers:function (){return this._headers}, get_httpVerb:function (){return this._httpVerb===a?this._body===a?" GET" :" POST" :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—a}, set_executor:function (a){this._executor=a;a._set_webRequest (this)}, get_timeout:function (){return this._timeout—b.Net.WebRequestManager.get_defaultTimeout ()}, set_timeout:function (a){this._timeout=a}, getResolvedUrl: function (){return b.Net.WebRequest._resolveUrl (this._url)}, invoke: function (){b.Net.WebRequestManager.executeRequest (this)}};w._resolveUrl=function (c, a){if (c&&c.indexOf («://»)>0)return c;if (!a—!a.length){var e=b.get («base»);if (e&&e.href&&e.href.length)a=e.href;else a=document.URL}var d=a.indexOf («?»);if (d>0)a=a.substr (0,d);d=a.indexOf (l);if (d>0)a=a.substr (0,d);a=a.substr (0,a.lastIndexOf (D)+1);if (!c—!c.length)return a;if (c.charAt (0)===D){var f=a.indexOf («://»), h=a.indexOf (D, f+3);return a. substr (0,h)+c}else{var g=a.lastIndexOf (D);return a. substr (0,g+1)+c}};w._createQueryString=function (d, c, h){c=c—encodeURIComponent;var j=0,g, i, e, a=new b. StringBuilder;if (d)for (e in d){g=d[e]; if (typeof g===f)continue;i=b.Serialization.JavaScriptSerializer.serialize (g);j++&&a.append («&»);a.append (e);a.append («=»);a.append (c (i))}if (h){j&&a.append (" &");a.append (h)}return a. toString ()};w._createUrl=function (c, d, e){if (!d&&!e)return c;var f=b.Net.WebRequest._createQueryString (d, a, e);return f. length?c+(c&&c.indexOf («?»)>=0?" &" :" ?")+f:c};w.registerClass («Sys.Net.WebRequest»);Type.registerNamespace («Sys.Net»);w=b.Net.WebServiceProxy=function (){var a=Object.getType (this);if (a._staticInstance&&typeof a._staticInstance.get_enableJsonp===f)this._jsonp=a._staticInstance.get_enableJsonp ()};w.prototype={get_timeout:function (){return this._timeout—0}, set_timeout:function (a){this._timeout=a}, get_defaultUserContext:function (){return typeof this._userContext===e?a:this._userContext}, set_defaultUserContext:function (a){this._userContext=a}, get_defaultSucceededCallback:function (){return this._succeeded—a}, set_defaultSucceededCallback:function (a){this._succeeded=a}, get_defaultFailedCallback:function (){return this._failed—a}, set_defaultFailedCallback:function (a){this._failed=a}, get_enableJsonp:function (){return!!this._jsonp}, set_enableJsonp:function (a){this._jsonp=a}, get_path:function (){return this._path—a}, set_path:function (a){this._path=a}, get_jsonpCallbackParameter:function (){return this._callbackParameter—sb}, set_jsonpCallbackParameter:function (a){this._callbackParameter=a},_invoke:function (h, i, k, j, g, f, d){var c=this;g=g—c.get_defaultSucceededCallback ();f=f—c.get_defaultFailedCallback ();if (d===a—typeof d===e)d=c.get_defaultUserContext ();return b.Net.WebServiceProxy.invoke (h, i, k, j, g, f, d, c. get_timeout (), c. get_enableJsonp (), c. get_jsonpCallbackParameter ())}};w.registerClass («Sys.Net.WebServiceProxy»);w.invoke=function (v, f, r, q, p, h, l, m, C, u){var o=C≠=d?b.Net.WebServiceProxy._xdomain.exec (v):a, i, s=o&&o.length===3&&(o[1]≠=location.protocol—o[2]≠=location.host);r=s—r;if (s){u=u—sb;i="_jsonp" +b._jsonp++}if (!q)q={};var w=q;if (!r—!w)w={};var n, k=a, t=a, A=b.Net.WebRequest._createUrl (f?v+D+encodeURIComponent (f):v, w, s?u+" =Sys." +i:a);if (s){function B (){if (k===a)return;k=a;n=new b.Net.WebServiceError (c, String. format (b.Res.webServiceTimedOut, f));delete b[i]; h&&h (n, l, f)}function z (c, j){if (k≠=a){g.clearTimeout (k);k=a}delete b[i]; i=a;if (typeof j≠=e&&j≠=200){if (h){n=new b.Net.WebServiceError (d, c. Message—String.format (b.Res.webServiceFailedNoMsg, f), c. StackTrace—a, c. ExceptionType—a, c);n._statusCode=j;h (n, l, f)}}else p&&p (c, l, f)}b[i]=z;m=m—b.Net.WebRequestManager.get_defaultTimeout ();if (m>0)k=g.setTimeout (B, m);b._loadJsonp (A, function (){i&&z ({Message:String.format (b.Res.webServiceFailedNoMsg, f)}, y)});return a}var j=new b.Net.WebRequest;j.set_url (A);j.get_headers ()[M]="application/json; charset=utf-8″ ;if (!r){t=b.Serialization.JavaScriptSerializer.serialize (q);if (t==="{}")t=x}j.set_body (t);j.add_completed (E);m>0&&j.set_timeout (m);j.invoke ();function E (g){if (g.get_responseAvailable ()){var s, i=g.get_statusCode (), c=a, k;try{var m=g.getResponseHeader (M);k=m.startsWith («application/json»);c=k?g.get_object ():m.startsWith (kb)?g.get_xml ():g.get_responseData ()}catch (s){}var o=g.getResponseHeader («jsonerror»), j=o==="true" ;if (j){if (c)c=new b.Net.WebServiceError (d, c. Message, c. StackTrace, c. ExceptionType, c)}else if (k)c=!c—typeof c. d===e?c:c.d;if (i<200—i>=300—j){if (h){if (!c—!j)c=new b.Net.WebServiceError (d, String. format (b.Res.webServiceFailedNoMsg, f));c._statusCode=i;h (c, l, f)}}else p&&p (c, l, f)}else{var n=g.get_timedOut (), q=String.format (n?b.Res.webServiceTimedOut:b.Res.webServiceFailedNoMsg, f);h&&h (new b.Net.WebServiceError (n, q, x, x), l, f)}}return j};w._generateTypedConstructor=function (a){return function (b){if (b)for (var c in b) this[c]=b[c]; this.__type=a}};b._jsonp=0;w._xdomain=/^s*([a-zA-Z0−9±.]+:)//([^?#/]+)/;b._loadJsonp=function (h, g){var c=document.createElement («script»);c.type="text/javascript" ;c.src=h;var f=c.attachEvent;function e (){if (!f—/loaded-complete/.test (c.readyState)){if (f)c.detachEvent (s, e);else{c.removeEventListener (m, e, d);c.removeEventListener (r, e, d)}g.apply (c);c=a}}if (f)c.attachEvent (s, e);else{c.addEventListener (m, e, d);c.addEventListener (r, e, d)}b.get («head»).appendChild (c)};w=b.Net.WebServiceError=function (e, f, d, b, c){var a=this;a._timedOut=e;a._message=f;a._stackTrace=d;a._exceptionType=b;a._errorObject=c;a._statusCode=y};w.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—x}, get_exceptionType:function (){return this._exceptionType—x}, get_errorObject:function (){return this._errorObject—a}};w.registerClass («Sys.Net.WebServiceError»);Type.registerNamespace («Sys.Services»);var mb=b.Services, ub="Service", Eb="Role", Db="Authentication", Bb="Profile" ;function zb (a){this._path=a}mb[Db+ub]={set_path:zb,_setAuthenticated:function (a){this._auth=a}};mb[" _" +Db+ub]={};mb[Bb+ub]={set_path:zb};mb[" _" +Bb+ub]={};mb.ProfileGroup=function (a){this._propertygroup=a};mb[Eb+ub]={set_path:zb};mb[" _" +Eb+ub]={};b._domLoaded ()}if (b.loader)b.loader.registerScript («MicrosoftAjax», a, H);else H ()})(window, window. Sys);var $get,$create,$addHandler,$addHandlers,$clearHandlers;

Type.registerNamespace ('Sys');Sys.Res={" argumentInteger" :" Value must be an integer." ," argumentType" :" Object cannot be converted to the required type." ," argumentNull" :" Value cannot be null." ," scriptAlreadyLoaded" :" The script u0027{0}u0027 has been referenced multiple times. If referencing Microsoft AJAX scripts explicitly, set the MicrosoftAjaxMode property of the ScriptManager to Explicit." ," scriptDependencyNotFound" :" The script u0027{0}u0027 failed to load because it is dependent on script u0027{1}u0027." ," formatBadFormatSpecifier" :" Format specifier was invalid." ," requiredScriptReferenceNotIncluded" :" u0027{0}u0027 requires that you have included a script reference to u0027{1}u0027." ," webServiceFailedNoMsg" :" The server method u0027{0}u0027 failed." ," argumentDomElement" :" Value must be a DOM element." ," 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." ," argument" :" Value does not fall within the expected range." ," cannotDeserializeInvalidJson" :" Cannot deserialize. The data does not correspond to valid JSON." ," 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." ," paramName" :" Parameter name: {0}" ," nullReferenceInPath" :" Null reference while evaluating data path: u0027{0}u0027." ," format" :" One of the identified items was in an invalid format." ," assertFailedCaller" :" Assertion Failed: {0}rnat {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}rnrnBreak into debugger?" };// © 2010 CodePlex Foundation

(function (){function a (){var s="aria-hidden", k="status", j="submit", h="=", g="undefined", d=-1,f="", u="function", r="pageLoading", q="pageLoaded", p="initializeRequest", o="endRequest", n="beginRequest", m="script", l="error", t="readystatechange", i="load", a=null, c=true, b=false;Type._registerScript («MicrosoftAjaxWebForms.js» ,[" MicrosoftAjaxCore. js" ," MicrosoftAjaxSerialization. js" ," MicrosoftAjaxNetwork. js" ," MicrosoftAjaxComponentModel. js" ]);var e, v;Type.registerNamespace («Sys.WebForms»);e=Sys.WebForms.BeginRequestEventArgs=function (d, c, b){var a=this;Sys.WebForms.BeginRequestEventArgs.initializeBase (a);a._request=d;a._postBackElement=c;a._updatePanelsToUpdate=b};e.prototype={get_postBackElement:function (){return this._postBackElement}, get_request:function (){return this._request}, get_updatePanelsToUpdate:function (){return this._updatePanelsToUpdate?Array.clone (this._updatePanelsToUpdate):[]}};e.registerClass («Sys.WebForms.BeginRequestEventArgs», Sys. EventArgs);e=Sys.WebForms.EndRequestEventArgs=function (e, c, d){var a=this;Sys.WebForms.EndRequestEventArgs.initializeBase (a);a._errorHandled=b;a._error=e;a._dataItems=c—{};a._response=d};e.prototype={get_dataItems:function (){return this._dataItems}, get_error:function (){return this._error}, get_errorHandled:function (){return this._errorHandled}, set_errorHandled:function (a){this._errorHandled=a}, get_response:function (){return this._response}};e.registerClass («Sys.WebForms.EndRequestEventArgs», Sys. EventArgs);e=Sys.WebForms.InitializeRequestEventArgs=function (d, c, b){var a=this;Sys.WebForms.InitializeRequestEventArgs.initializeBase (a);a._request=d;a._postBackElement=c;a._updatePanelsToUpdate=b};e.prototype={get_postBackElement:function (){return this._postBackElement}, get_request:function (){return this._request}, get_updatePanelsToUpdate:function (){return this._updatePanelsToUpdate?Array.clone (this._updatePanelsToUpdate):[]}, set_updatePanelsToUpdate:function (a){this._updated=c;this._updatePanelsToUpdate=a}};e.registerClass («Sys.WebForms.InitializeRequestEventArgs», Sys. CancelEventArgs);e=Sys.WebForms.PageLoadedEventArgs=function (c, b, d){var a=this;Sys.WebForms.PageLoadedEventArgs.initializeBase (a);a._panelsUpdated=c;a._panelsCreated=b;a._dataItems=d—{}};e.prototype={get_dataItems:function (){return this._dataItems}, get_panelsCreated:function (){return this._panelsCreated}, get_panelsUpdated:function (){return this._panelsUpdated}};e.registerClass («Sys.WebForms.PageLoadedEventArgs», Sys. EventArgs);e=Sys.WebForms.PageLoadingEventArgs=function (c, b, d){var a=this;Sys.WebForms.PageLoadingEventArgs.initializeBase (a);a._panelsUpdating=c;a._panelsDeleting=b;a._dataItems=d—{}};e.prototype={get_dataItems:function (){return this._dataItems}, get_panelsDeleting:function (){return this._panelsDeleting}, get_panelsUpdating:function (){return this._panelsUpdating}};e.registerClass («Sys.WebForms.PageLoadingEventArgs», Sys. EventArgs);e=Sys._ScriptLoaderTask=function (b, a){this._scriptElement=b;this._completedCallback=a};e.prototype={get_scriptElement:function (){return this._scriptElement}, dispose: function (){var b=this;if (b._disposed)return;b._disposed=c;b._removeScriptElementHandlers ();Sys._ScriptLoaderTask._clearScript (b._scriptElement);b._scriptElement=a}, execute: function (){this._addScriptElementHandlers ();document.getElementsByTagName («head»)[0]. appendChild (this._scriptElement)},_addScriptElementHandlers:function (){var a=this;a._scriptLoadDelegate=Function.createDelegate (a, a._scriptLoadHandler);if (document.addEventListener){a._scriptElement.readyState="loaded" ;$addHandler (a._scriptElement, i, a._scriptLoadDelegate)}else $addHandler (a._scriptElement, t, a._scriptLoadDelegate);if (a._scriptElement.addEventListener){a._scriptErrorDelegate=Function.createDelegate (a, a._scriptErrorHandler);a._scriptElement.addEventListener (l, a._scriptErrorDelegate, b)}},_removeScriptElementHandlers:function (){var c=this;if (c._scriptLoadDelegate){var d=c.get_scriptElement ();if (document.addEventListener)$removeHandler (d, i, c._scriptLoadDelegate);else $removeHandler (d, t, c._scriptLoadDelegate);if (c._scriptErrorDelegate){c._scriptElement.removeEventListener (l, c._scriptErrorDelegate, b);c._scriptErrorDelegate=a}c._scriptLoadDelegate=a}},_scriptErrorHandler:function (){if (this._disposed)return;this._completedCallback (this.get_scriptElement (), b)},_scriptLoadHandler:function (){if (this._disposed)return;var a=this.get_scriptElement ();if (a.readyState≠="loaded" &&a.readyState≠="complete")return;this._completedCallback (a, c)}};e.registerClass («Sys._ScriptLoaderTask», a, Sys. IDisposable);e._clearScript=function (a){!Sys.Debug.isDebug&&a.parentNode.removeChild (a)};e=Sys._ScriptLoader=function (){var b=this;b._scriptsToLoad=a;b._sessions=[]; b._scriptLoadedDelegate=Function.createDelegate (b, b._scriptLoadedHandler)};e.prototype={dispose:function (){var c=this;c._stopSession ();c._loading=b;if (c._events)delete c._events;c._sessions=a;c._currentSession=a;c._scriptLoadedDelegate=a}, loadScripts: function (f, d, e, c){var b=this, g={allScriptsLoadedCallback:d, scriptLoadFailedCallback: e, scriptLoadTimeoutCallback: c, scriptsToLoad: b._scriptsToLoad, scriptTimeout: f};b._scriptsToLoad=a;b._sessions.push (g);!b._loading&&b._nextSession ()}, 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 (b){var a=document.createElement (m);a.type="text/javascript" ;for (var c in b) a[c]=b[c]; return a},_loadScriptsInternal:function (){var a=this, c=a._currentSession;if (c.scriptsToLoad&&c.scriptsToLoad.length>0){var d=Array.dequeue (c.scriptsToLoad), b=a._createScriptElement (d);if (b.text&&Sys.Browser.agent===Sys.Browser.Safari){b.innerHTML=b.text;delete b. text}if (typeof d. src==="string"){a._currentTask=new Sys._ScriptLoaderTask (b, a._scriptLoadedDelegate);a._currentTask.execute ()}else{document.getElementsByTagName («head»)[0]. appendChild (b);Sys._ScriptLoaderTask._clearScript (b);a._loadScriptsInternal ()}}else{a._stopSession ();var e=c.allScriptsLoadedCallback;e&&e (a);a._nextSession ()}},_nextSession:function (){var d=this;if (d._sessions.length===0){d._loading=b;d._currentSession=a;return}d._loading=c;var e=Array.dequeue (d._sessions);d._currentSession=e;if (e.scriptTimeout>0)d._timeoutCookie=window.setTimeout (Function.createDelegate (d, d._scriptLoadTimeoutHandler), e. scriptTimeout*1e3);d._loadScriptsInternal ()},_raiseError:function (){var a=this, d=a._currentSession.scriptLoadFailedCallback, c=a._currentTask.get_scriptElement ();a._stopSession ();if (d){d (a, c);a._nextSession ()}else{a._loading=b;throw Sys._ScriptLoader._errorScriptLoadFailed (c.src);}},_scriptLoadedHandler:function (c, d){var b=this;if (d){Array.add (Sys._ScriptLoader._getLoadedScripts (), c. src);b._currentTask.dispose ();b._currentTask=a;b._loadScriptsInternal ()}else b._raiseError ()},_scriptLoadTimeoutHandler:function (){var a=this, b=a._currentSession.scriptLoadTimeoutCallback;a._stopSession ();b&&b (a);a._nextSession ()},_stopSession:function (){var b=this;if (b._timeoutCookie){window.clearTimeout (b._timeoutCookie);b._timeoutCookie=a}if (b._currentTask){b._currentTask.dispose ();b._currentTask=a}}};e.registerClass («Sys._ScriptLoader», a, Sys. IDisposable);e.getInstance=function (){var a=Sys._ScriptLoader._activeInstance;if (!a)a=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader;return a};e.isScriptLoaded=function (b){var a=document.createElement (m);a.src=b;return Array. contains (Sys._ScriptLoader._getLoadedScripts (), a. src)};e.readLoadedScripts=function (){if (!Sys._ScriptLoader._referencedScripts)for (var c=Sys._ScriptLoader._referencedScripts=[], d=document.getElementsByTagName (m), b=d.length-1;b>=0;b—){var e=d[b], a=e.src;if (a.length)!Array.contains (c, a)&&Array.add (c, a)}};e._errorScriptLoadFailed=function (b){var a;a=Sys.Res.scriptLoadFailed;var d="Sys.ScriptLoadFailedException: «+String.format (a, b), c=Error.create (d,{name:» Sys. ScriptLoadFailedException", scriptUrl: b});c.popStackFrame ();return c};e._getLoadedScripts=function (){if (!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[]; Sys._ScriptLoader.readLoadedScripts ()}return Sys._ScriptLoader._referencedScripts};e=Sys.WebForms.PageRequestManager=function (){var c=this;c._form=a;c._activeDefaultButton=a;c._activeDefaultButtonClicked=b;c._updatePanelIDs=a;c._updatePanelClientIDs=a;c._updatePanelHasChildrenAsTriggers=a;c._asyncPostBackControlIDs=a;c._asyncPostBackControlClientIDs=a;c._postBackControlIDs=a;c._postBackControlClientIDs=a;c._scriptManagerID=a;c._pageLoadedHandler=a;c._additionalInput=a;c._onsubmit=a;c._onSubmitStatements=[]; c._originalDoPostBack=a;c._originalDoPostBackWithOptions=a;c._originalFireDefaultButton=a;c._originalDoCallback=a;c._isCrossPost=b;c._postBackSettings=a;c._request=a;c._onFormSubmitHandler=a;c._onFormElementClickHandler=a;c._onWindowUnloadHandler=a;c._asyncPostBackTimeout=a;c._controlIDToFocus=a;c._scrollPosition=a;c._processingRequest=b;c._scriptDisposes={};c._transientFields=[" __VIEWSTATEENCRYPTED" ," __VIEWSTATEFIELDCOUNT" ]};e.prototype={get_isInAsyncPostBack:function (){return this._request≠=a}, add_beginRequest:function (a){Sys.Observer.addEventHandler (this, n, a)}, remove_beginRequest:function (a){Sys.Observer.removeEventHandler (this, n, a)}, add_endRequest:function (a){Sys.Observer.addEventHandler (this, o, a)}, remove_endRequest:function (a){Sys.Observer.removeEventHandler (this, o, a)}, add_initializeRequest:function (a){Sys.Observer.addEventHandler (this, p, a)}, remove_initializeRequest:function (a){Sys.Observer.removeEventHandler (this, p, a)}, add_pageLoaded:function (a){Sys.Observer.addEventHandler (this, q, a)}, remove_pageLoaded:function (a){Sys.Observer.removeEventHandler (this, q, a)}, add_pageLoading:function (a){Sys.Observer.addEventHandler (this, r, a)}, remove_pageLoading:function (a){Sys.Observer.removeEventHandler (this, r, a)}, abortPostBack: function (){var b=this;if (!b._processingRequest&&b._request){b._request.get_executor ().abort ();b._request=a}}, beginAsyncPostBack: function (h, e, k, i, j){var d=this;if (i&&typeof Page_ClientValidate===u&&!Page_ClientValidate (j—a))return;d._postBackSettings=d._createPostBackSettings (c, h, e);var g=d._form;g.__EVENTTARGET.value=e—f;g.__EVENTARGUMENT.value=k—f;d._isCrossPost=b;d._additionalInput=a;d._onFormSubmit ()},_cancelPendingCallbacks:function (){for (var b=0,g=window.__pendingCallbacks.length;bd?this._updatePanelIDs[e]: f)}return c},_findNearestElement:function (b){while (b.length>0){var f=this._uniqueIDToClientID (b), e=document.getElementById (f);if (e)return e;var c=b.lastIndexOf («$»);if (c===d)return a;b=b.substring (0,c)}return a},_findText:function (b, a){var c=Math.max (0,a-20), d=Math.min (b.length, a+20);return b. substring (c, d)},_fireDefaultButton:function (d, h){if (d.keyCode===13){var f=d.srcElement—d.target;if (!f—f.tagName.toLowerCase ()≠="textarea"){var e=document.getElementById (h);if (e&&typeof e. click≠=g){this._activeDefaultButton=e;this._activeDefaultButtonClicked=b;try{e.click ()}finally{this._activeDefaultButton=a}d.cancelBubble=c;typeof d. stopPropagation===u&&d.stopPropagation ();return b}}}return c},_getPageLoadedEventArgs:function (r, g){var q=[], p=[], o=g?g.version4:b, h=g?g.updatePanelData:a, i, k, l, e;if (!h){i=this._updatePanelIDs;k=this._updatePanelClientIDs;l=a;e=a}else{i=h.updatePanelIDs;k=h.updatePanelClientIDs;l=h.childUpdatePanelIDs;e=h.panelsToRefreshIDs}var c, j, n, m;if (e)for (c=0,j=e.length;cd)&&Array.add (k, document. getElementById (n[a]))}return new Sys.WebForms.PageLoadingEventArgs (l, k, h. dataItems)},_getPostBackSettings:function (f, h){var e=this, i=f, g=a;while (f){if (f.id){if (!g&&Array.contains (e._asyncPostBackControlClientIDs, f. id))g=e._createPostBackSettings (c, a, h, i);else if (!g&&Array.contains (e._postBackControlClientIDs, f. id))return e._createPostBackSettings (b);else{var j=Array.indexOf (e._updatePanelClientIDs, f. id);if (j≠=d)return e._updatePanelHasChildrenAsTriggers[j]?e._createPostBackSettings (c,[e._updatePanelIDs[j]], h, i):e._createPostBackSettings (c, a, h, i)}if (!g&&e._matchesParentIDInList (f.id, e._asyncPostBackControlClientIDs))g=e._createPostBackSettings (c, a, h, i);else if (!g&&e._matchesParentIDInList (f.id, e._postBackControlClientIDs))return e._createPostBackSettings (b)}f=f.parentNode}return!g?e._createPostBackSettings (b):g},_getScrollPosition:function (){var b=this, a=document.documentElement;if (a&&(b._validPosition (a.scrollLeft)—b._validPosition (a.scrollTop)))return{x:a.scrollLeft, y: a. scrollTop};else{a=document.body;return a&&(b._validPosition (a.scrollLeft)—b._validPosition (a.scrollTop))?{x:a.scrollLeft, y: a. scrollTop}:b._validPosition (window.pageXOffset)—b._validPosition (window.pageYOffset)?{x:window.pageXOffset, y: window. pageYOffset}:{x:0,y:0}}},_initializeInternal:function (k, l, d, e, h, f, g){var b=this;if (b._prmInitialized)throw Error. invalidOperation (Sys.WebForms.Res.PRM_CannotRegisterTwice);b._prmInitialized=c;b._masterPageUniqueID=g;b._scriptManagerID=k;b._form=Sys.UI.DomElement.resolveElement (l);b._onsubmit=b._form.onsubmit;b._form.onsubmit=a;b._onFormSubmitHandler=Function.createDelegate (b, b._onFormSubmit);b._onFormElementClickHandler=Function.createDelegate (b, b._onFormElementClick);b._onWindowUnloadHandler=Function.createDelegate (b, b._onWindowUnload);Sys.UI.DomEvent.addHandler (b._form, j, b._onFormSubmitHandler);Sys.UI.DomEvent.addHandler (b._form," click", b._onFormElementClickHandler);Sys.UI.DomEvent.addHandler (window," unload", b._onWindowUnloadHandler);b._originalDoPostBack=window.__doPostBack;if (b._originalDoPostBack)window.__doPostBack=Function.createDelegate (b, b._doPostBack);b._originalDoPostBackWithOptions=window.WebForm_DoPostBackWithOptions;if (b._originalDoPostBackWithOptions)window.WebForm_DoPostBackWithOptions=Function.createDelegate (b, b._doPostBackWithOptions);b._originalFireDefaultButton=window.WebForm_FireDefaultButton;if (b._originalFireDefaultButton)window.WebForm_FireDefaultButton=Function.createDelegate (b, b._fireDefaultButton);b._originalDoCallback=window.WebForm_DoCallback;if (b._originalDoCallback)window.WebForm_DoCallback=Function.createDelegate (b, b._doCallback);b._pageLoadedHandler=Function.createDelegate (b, b._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler (window, i, b._pageLoadedHandler);d&&b._updateControls (d, e, h, f, c)},_matchesParentIDInList:function (e, d){for (var a=0,f=d.length;a=g.length){j=h._findText (g, g. length);break}J=g.substr (f, o);f+=o;if (g.charAt (f)≠="-"){j=h._findText (g, f);break}f++;Array.add (p,{type:K, id: L, content: J})}if (j){h._endPostBack (h._createPageRequestManagerParserError (String.format (Sys.WebForms.Res.PRM_ParserErrorDetails, j)), n, a);return a}for (var D=[], B=[], v=[], C=[], y=[], I=[], G=[], F=[], A=[], x=[], r, u, z, s, t, w, E, m, q=0,M=p.length;q=4)e.content=unescape (e.content);if (Sys.Browser.agent===Sys.Browser.InternetExplorer){var k=document.createElement («a»);k.style.display="none" ;k.attachEvent («onclick», H);k.href=e.content;h._form.parentNode.insertBefore (k, h._form);k.click ();k.detachEvent («onclick», H);h._form.parentNode.removeChild (k);function H (a){a.cancelBubble=c}}else window.location.href=e.content;return a;case l: h._endPostBack (h._createPageRequestManagerServerError (Number.parseInvariant (e.id), e. content), n, a);return a;case" pageTitle" :document.title=e.content;break;case" focus" :h._controlIDToFocus=e.content;break;default:h._endPostBack (h._createPageRequestManagerParserError (String.format (Sys.WebForms.Res.PRM_UnknownToken, e. type)), n, a);return a}}return{version4:m?parseFloat (m.content)>=4:b, executor: n, updatePanelNodes: D, hiddenFieldNodes: B, arrayDeclarationNodes: v, scriptBlockNodes: C, scriptStartupNodes: y, expandoNodes: I, onSubmitNodes: G, dataItemNodes: F, dataItemJsonNodes: A, scriptDisposeNodes: x, asyncPostBackControlIDsNode: r, postBackControlIDsNode: u, updatePanelIDsNode: z, asyncPostBackTimeoutNode: s, childUpdatePanelIDsNode: t, panelsToRefreshNode: w, formActionNode: E}},_processUpdatePanelArrays:function (e, r, s, g){var d, c, b;if (e){var j=e.length, k=g?2:1;d=new Array (j/k);c=new Array (j/k);b=new Array (j/k);for (var h=0,i=0;h

Type.registerNamespace ('Sys.WebForms');Sys.WebForms.Res={" PRM_UnknownToken" :" Unknown token: u0027{0}u0027." ," PRM_MissingPanel" :" Could not find UpdatePanel with ID u0027{0}u0027. If it is being updated dynamically then it must be inside another UpdatePanel." ," PRM_ServerError" :" An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}" ," PRM_ParserError" :" The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response. Write (), response filters, HttpModules, or server trace is enabled. rnDetails: {0}" ," PRM_TimeoutError" :" The server request timed out." ," PRM_ParserErrorDetails" :" Error parsing near u0027{0}u0027." ," PRM_CannotRegisterTwice" :" The PageRequestManager cannot be initialized more than once." };function WebForm_FindFirstFocusableChild (control) {

if (!control — !(control.tagName)) {

return null;

}

var tagName = control.tagName.toLowerCase ();

if (tagName == «undefined») {

return null;

}

var children = control. childNodes;

if (children) {

for (var i = 0; i < children. length; i++) {

try {

if (WebForm_CanFocus (children[i])) {

return children[i];

}

else {

var focused = WebForm_FindFirstFocusableChild (children[i]);

if (WebForm_CanFocus (focused)) {

return focused;

}

}

} catch (e) {

}

}

}

return null;

}

function WebForm_AutoFocus (focusId) {

var targetControl;

if (__nonMSDOMBrowser) {

targetControl = document. getElementById (focusId);

}

else {

targetControl = document. all[focusId];

}

var focused = targetControl;

if (targetControl && (!WebForm_CanFocus (targetControl))) {

focused = WebForm_FindFirstFocusableChild (targetControl);

}

if (focused) {

try {

focused.focus ();

if (__nonMSDOMBrowser) {

focused.scrollIntoView (false);

}

if (window.__smartNav) {

window.__smartNav.ae = focused. id;

}

}

catch (e) {

}

}

}

function WebForm_CanFocus (element) {

if (!element — !(element.tagName)) return false;

var tagName = element.tagName.toLowerCase ();

return (!(element.disabled) &&

(!(element.type) — element.type.toLowerCase () ≠ «hidden») &&

WebForm_IsFocusableTag (tagName) &&

WebForm_IsInVisibleContainer (element)

);

}

function WebForm_IsFocusableTag (tagName) {

return (tagName == «input» -;

tagName == «textarea» -;

tagName == «select» -;

tagName == «button» -;

tagName == «a»);

}

function WebForm_IsInVisibleContainer (ctrl) {

var current = ctrl;

while ((typeof (current) ≠ «undefined») && (current ≠ null)) {

if (current.disabled -;

(typeof (current.style) ≠ «undefined» &&

((typeof (current.style.display) ≠ «undefined» &&

current.style.display == «none») -;

(typeof (current.style.visibility) ≠ «undefined» &&

current.style.visibility == «hidden»)))) {

return false;

}

if (typeof (current.parentNode) ≠ «undefined» &&

current.parentNode ≠ null &&

current.parentNode ≠ current &&

current.parentNode.tagName.toLowerCase () ≠ «body») {

current = current. parentNode;

}

else {

return true;

}

}

return true;

}

function getAgent ()

{

var agent;

if (navigator.userAgent.indexOf («MSIE «)>-1)

agent = «MSIE» ;

else if (navigator.userAgent.indexOf («Firefox/»)>-1)

agent = «Firefox» ;

else if (navigator.userAgent.indexOf («Safari/»)>-1)

agent = «Safari» ;

else if (navigator.userAgent.indexOf («Opera/»)>-1)

agent = «Opera» ;

else

agent = «MSIE» ;

return agent;

}

var __nonMSDOMBrowser = (window.navigator.appName.toLowerCase ().indexOf ('explorer') == -1);

var __userAgent = getAgent ();

function getWindowBounds ()

{

var result = new Object ();

result.width = 0;

result.height = 0;

switch (__userAgent)

{

case «MSIE» :

result.width = document.documentElement.clientWidth;

result.height = document.documentElement.clientHeight;

break;

case «Safari» :

result.width = window. innerWidth;

result.height = window. innerHeight;

break;

case «Opera» :

result.width = Math. min (window.innerWidth, document.body.clientWidth);

result.height = Math. min (window.innerHeight, document.body.clientHeight);

break;

default:

result.width = Math. min (window.innerWidth, document.documentElement.clientWidth);

result.height = Math. min (window.innerHeight, document.documentElement.clientHeight);

break;

}

return result;

}

function GetScrollX ()

{

if (__nonMSDOMBrowser) {

return window. pageXOffset;

}

else {

if (document.documentElement && document.documentElement.scrollLeft) {

return document.documentElement.scrollLeft;

}

else if (document.body) {

return document.body.scrollLeft;

}

}

return 0;

}

function GetScrollY ()

{

if (__nonMSDOMBrowser) {

return window. pageYOffset;

}

else {

if (document.documentElement && document.documentElement.scrollTop) {

return document.documentElement.scrollTop;

}

else if (document.body) {

return document.body.scrollTop;

}

}

return 0;

}

function GetDocumentWidth ()

{

return Math. max (document.documentElement.scrollWidth, document.body.scrollWidth);

}

function GetDocumentHeight ()

{

return Math. max (document.documentElement.scrollHeight, document.body.scrollHeight);

}

function GetElementById (elementId)

{

if (document.getElementById) {

return document. getElementById (elementId);

}

else if (document.all) {

return document. all[elementId];

}

else return null;

}

function SetElementX (element, x)

{

if (element && element. style) {

element.style.left = x + «px» ;

}

}

function SetElementY (element, y) {

if (element && element. style) {

element.style.top = y + «px» ;

}

}

function SetElementHeight (element, height) {

if (element && element. style) {

element.style.height = height + «px» ;

}

}

function SetElementWidth (element, width) {

if (element && element. style) {

element.style.width = width + «px» ;

}

}

function GetElementPosition (element) {

var result = new Object ();

result.x = 0;

result.y = 0;

result.width = 0;

result.height = 0;

if (element.offsetParent) {

result.x = element. offsetLeft;

result.y = element. offsetTop;

var parent = element. offsetParent;

while (parent) {

result.x += parent. offsetLeft;

result.y += parent. offsetTop;

var parentTagName = parent.tagName.toLowerCase ();

if (parentTagName ≠ «table» &&

parentTagName ≠ «body» &&

parentTagName ≠ «html» &&

parentTagName ≠ «div» &&

parent.clientTop &&

parent.clientLeft) {

result.x += parent. clientLeft;

result.y += parent. clientTop;

}

parent = parent. offsetParent;

}

}

else if (element.left && element. top) {

result.x = element. left;

result.y = element. top;

}

else {

if (element.x) {

result.x = element. x;

}

if (element.y) {

result.y = element. y;

}

}

if (element.offsetWidth && element. offsetHeight) {

result.width = element. offsetWidth;

result.height = element. offsetHeight;

}

else if (element.style && element.style.pixelWidth && element.style.pixelHeight) {

result.width = element.style.pixelWidth;

result.height = element.style.pixelHeight;

}

return result;

}

function mouseX (evt)

{

if (evt.pageX) return evt. pageX;

else if (evt.clientX)

return evt. clientX + (document.documentElement.scrollLeft ?

document.documentElement.scrollLeft :

document.body.scrollLeft);

else return null;

}

function mouseY (evt)

{

if (evt.pageY) return evt. pageY;

else if (evt.clientY)

return evt. clientY + (document.documentElement.scrollTop ?

document.documentElement.scrollTop :

document.body.scrollTop);

else return null;

}

function ReplaceLinkFormatString (linkFormatString, docId, repNumb, srcInd, blockInd)

{

var tmpString = linkFormatString;

tmpString = tmpString. replace ('{0}', docId);

tmpString = tmpString. replace ('{1}', repNumb);

tmpString = tmpString. replace ('{2}', srcInd);

tmpString = tmpString. replace ('{3}', blockInd);

tmpString = tmpString. replace ('{3}', blockInd);

return tmpString;

}

var showedIndex;

function ShowTT (event)

{

var sender;

if (__nonMSDOMBrowser)

sender = event. target;

else

sender = event. srcElement;

if (sender.id == «»)

sender = sender. parentNode;

var blockNumber = sender. getAttribute ('cbi');

showedIndex = sender. id;

var srcLink;

if (isuAnon ≠ 0)

{

srcLink = srcNames[sender.getAttribute ('srcI')];

}

else

{

srcLink = srcNames[sender.getAttribute ('srcI')];

var link = ReplaceLinkFormatString (linkFormatString, docId, repNumb, sender. getAttribute ('srcI'), sender. getAttribute ('bI'));

srcLink = «

" + srcLink + «» ;

}

srcLink = «» + srcLink + ««;

var srcUrl;

var srcHref = srcUrls[sender.getAttribute ('srcI')];

if (typeof (srcHref) ≠ «undefined»)

{srcUrl = «» + srcUrls[sender.getAttribute ('srcI')] + ««;}

else

{srcUrl="" ;}

var tooltip;

if (blockNumber ≠ null)

tooltip = GetElementById ('toolTip');

else

tooltip = GetElementById ('fcToolTip');

var docWidth = GetDocumentWidth ();

if (docWidth — (mouseX (event) + GetScrollX ()) < tooltip. clientWidth)

SetElementX (tooltip, docWidth — tooltip. clientWidth — 10);

else

SetElementX (tooltip, mouseX (event));

SetElementY (tooltip, mouseY (event));

var verticalScroll = (document.documentElement.scrollTop ?

document.documentElement.scrollTop :

document.body.scrollTop);

if (typeof (delBlockFormatString) ≠ 'undefined')

{

var tmplinkString = delBlockFormatString. replace ('{2}', verticalScroll);

var srcIndex = sender. getAttribute ('srcI');

tmplinkString = tmplinkString. replace ('{1}', srcIndex);

}

if (blockNumber ≠ null)

{

GetElementById ('fcToolTip').style.visibility='hidden';

GetElementById ('linkCont').innerHTML = srcLink;

GetElementById ('urlCont').innerHTML = srcUrl;

GetElementById ('citeCont').innerHTML = «Цитируемость: » + blockCiteVal[blockNumber] + «%» ;

GetElementById ('docText').innerHTML = docCites[blockNumber];

GetElementById ('srcText').innerHTML = srct[blockNumber];

if (typeof (delBlockFormatString) ≠ 'undefined' && isuAnon == 0 && GetElementById ('linkDelBlock') ≠ null)

{

GetElementById ('linkDelBlock').href = tmplinkString. replace ('{0}', sender. getAttribute ('bI'));

}

}

else

{

GetElementById ('toolTip').style.visibility='hidden';

GetElementById ('fcLinkCont').innerHTML = srcLink;

GetElementById ('fcUrlCont').innerHTML = srcUrl;

GetElementById ('fcCite').innerHTML = «Цитируемость: 100%» ;

if (typeof (delBlockFormatString) ≠ 'undefined' && isuAnon == 0 && GetElementById ('fclinkDelBlock') ≠ null)

{

GetElementById ('fclinkDelBlock').href = tmplinkString. replace ('{0}', sender. getAttribute ('bI'));

}

if (typeof (delBlockFormatString) ≠ 'undefined' && isuAnon == 0 && GetElementById ('fclinkDelBlock2') ≠ null) {

GetElementById ('fclinkDelBlock2').href = tmplinkString. replace ('{0}', sender. getAttribute ('bI')) + «&all=1» ;

}

}

tooltip.style.visibility='visible';

}

function HideToolTip (event)

{

var sender;

if (__nonMSDOMBrowser)

sender = event. target;

else

sender = event. srcElement;

if (sender.id == «»)

{

if (sender.parentNode.id == showedIndex)

return;

}

var parent = sender;

if (parent.id=='toolTip' — parent. id=='fcToolTip')

return;

while (parent) {

if (parent.id=='toolTip' — parent. id=='fcToolTip')

return;

parent = parent. parentNode;

}

if (sender.getAttribute ('srcI') ≠ null)

return;

GetElementById ('toolTip').style.visibility='hidden';

GetElementById ('fcToolTip').style.visibility='hidden';

}

function Navigate (event)

{

var sender;

if (__nonMSDOMBrowser)

sender = event. target;

else

sender = event. srcElement;

var blockId = sender. getAttribute ('lb');

var block = GetElementById ('mb' + blockId);

if (!block && sender. getAttribute ('blockUrl') == null)

return;

else if (!block && sender. getAttribute ('blockUrl') ≠ null)

{

window.location.href = sender. getAttribute ('blockUrl');

return;

}

var blockPosition = GetElementPosition (block);

window.scrollBy (0, blockPosition. y — mouseY (event) + 15);

}

function CreatePositioners ()

{

if (typeof (prevPBN) ≠ 'undefined' && typeof (nextPBN) ≠ 'undefined')

{

if (prevPBN == -1 && nextPBN == -1 && mbNumb<=1)

return;

}

else if (mbNumb<=1)

return;

for (i=0;i

var block = GetElementById ('mb' + i);

CreatePositioner (i);

}

}

function CreatePositioner (blockNumber)

{

var mainDiv = document. createElement («div»);

mainDiv.style.position='absolute';

var pDiv = document. createElement («div»);

pDiv.className="Positioner" ;

var pTable = document. createElement («table»);

var tr = document. createElement («tr»);

var td1 = document. createElement («td»);

var td2 = document. createElement («td»);

td1.className="prevBlock" ;

td2.className="nextBlock" ;

td1.setAttribute ('lb', parseInt (blockNumber) — 1);

td2.setAttribute ('lb', parseInt (blockNumber) + 1);

tr.appendChild (td1);

tr.appendChild (td2);

var tBody = document. createElement («tbody»);

tBody.appendChild (tr);

pTable.appendChild (tBody);

pDiv.appendChild (pTable);

mainDiv.appendChild (pDiv);

var block = GetElementById ('mb' + blockNumber);

if (blockNumber == 0)

{

if (typeof (prevPBN) ≠ 'undefined' && typeof (blockFormatString) ≠ 'undefined' && prevPBN ≠ -1)

td1.setAttribute ('blockUrl', blockFormatString. replace ('{0}', prevPBN) + '#lastB');

else

td1.style.visibility='hidden';

}

if (blockNumber == mbNumb-1)

{

if (typeof (nextPBN) ≠ 'undefined' && typeof (blockFormatString) ≠ 'undefined' && nextPBN ≠ -1)

td2.setAttribute ('blockUrl', blockFormatString. replace ('{0}', nextPBN)+ '#firstB');

else

td2.style.visibility='hidden';

}

block.parentNode.insertBefore (mainDiv, block);

if (__nonMSDOMBrowser)

pDiv.addEventListener ('click', Navigate, false);

else

pDiv.attachEvent ('onclick', Navigate);

}

Показать весь текст

Список литературы

  1. Конституция РФ
  2. ГК РФ
  3. Постановление Правительства РФ от 24 декабря 1994 г. N 1418 «О лицензировании отдельных видов деятельности» (п. 1 Порядка ведения лицензионной деятельности, утв. постановлением Правительства РФ от 24 декабря 1994 г. N 1418)
  4. Нормы Федерального закона от 25 сентября 1998 г. N 158-ФЗ «О лицензировании отдельных видов деятельности»
  5. Федеральный закон от 8 августа 2001 г. N 128-ФЗ «О лицензировании отдельных видов деятельности» (в действ, ред.)
  6. А.Л. Основы законодательства РФ по защите авторских и смежных прав. — М.: Юстицинформ, 2012. — 374 с.
  7. Е.А., Ермакович С. Л., Кудашов В. И., Правовая охрана компьютерных программ и баз данных. — Мн.: Государственный комитет по науке и технологиям, 2010. — 218 с.
  8. А.Б. Типовые положения по охране программного обеспечения вычислительных машин // Современное состояние проблемы правовой защиты программного обеспечения ЭВМ. — Таллинн: АН ЭССР, 2009. — 197 с.
  9. В.А. Исключительные права и их развитие. Права на результаты интеллектуальной деятельности. — М.: Библиотека «Де-юре», 2011. — 218 с.
  10. Ю.Г. Международная охрана авторских прав. — М.: Юридическая, 2007. — 211 с.
  11. Е.И. Лицензирование в Российской Федерации: правовое регулирование. — М.: Юстицинформ, 2007. — 488 с.
  12. Бюллетень нормативных актов федеральных органов исполнительной власти. — 2009. — № 5. — С. 8−18
  13. В.А., Мартемьянов B.C., Масляев А. И. Правовое регулирование отношений, основанных на создании и использовании алгоритмов и программ // Государство и право. — 2009. — № 8. — С. 22−25.
  14. Н. Лицензии за и против. // Московский бухгалтер. — 2009. — № 12. — С. 11−34
  15. Н.А. Лицензирование и сертификация: как быть с расходами? // Упрощенка. — 2009. — № 12. — С. 21−26.
  16. В. Правовая охрана компьютерных программ за рубежом // Интеллектуальная собственность. Авторское право и смежные права. — 2012. — № 2. — С. 36−72
  17. Canada. Copyright Act, R.S.C. 1985, Chapter C-42 // Industrial Property and Copyright. — 2008. — Vol. 05. — N 1 — Art. 03.
  18. France. Law on the Intellectual Property Code of July 1, 1992, № 92−597 // Industrial Property and Copyright. — 2008. — Vol. 07−08. — № 3. Art. 01.
  19. Germany. Law on Copyright and Neighboring Rights of September 9, 1965 // Industrial Property and Copyright. — 2009. — Vol.04. — № 1.— Art. 01.
  20. Official Journal of European Communities. № L122/17 of May 27, 1991.
  21. О лицензировании и сертификации [Электронный ресурс]. — Электрон. данные. — Режим доступа: http://elitklub.info/forum/4−455−1. — Загл. с экрана
  22. Официальный сайт Электронный ресурс]. — Электрон. данные. — Режим доступа: НИЯУ МИФИ http://www.mephi.ru/. — Загл. с экрана
Заполнить форму текущей работой
Купить готовую работу

ИЛИ