var goExpanderManager=new cExpanderManager();function cExpanderManager(){this.expanders=new Array();this.formElement=null;this.add=cExpanderManager_Add;this.initialize=cExpanderManager_Initialize;this.registerOpen=cExpanderManager_RegisterOpen;this.registerClose=cExpanderManager_RegisterClose;this.isVisible=function(){return true};this.isElementVisible=cExpanderManager_IsElementVisible;this.expandAll=cExpanderManager_ExpandAll;this.collapseAll=cExpanderManager_CollapseAll}function cExpanderManager_Add(A){this.expanders[this.expanders.length]=A;A.manager=this}function cExpanderManager_Initialize(){if(this.formElement==null){return }for(var A=0;A<this.expanders.length;A++){if(this.expanders[A].bIsOpen){this.registerOpen(this.expanders[A])}this.expanders[A].initialize(this.isElementVisible(this.expanders[A].element.id))}}function cExpanderManager_RegisterOpen(A){if(this.formElement==null){return }if(this.formElement.value.indexOf(A.element.id)<0){if(this.formElement.value!=""){this.formElement.value+=","}this.formElement.value+=A.element.id}}function cExpanderManager_RegisterClose(A){if(this.formElement==null){return }var B=new RegExp(A.element.id,"");var C=this.formElement.value;C=C.replace(B,"");C=C.replace(/,,/g,",");if(C.substr(0,1)==","){C=C.slice(1)}if(C.substr(-1)==","){C=C.slice(0,-1)}this.formElement.value=C}function cExpanderManager_IsElementVisible(A){rx=new RegExp(A,"");return rx.test(this.formElement.value)}function cExpanderManager_ExpandAll(){for(var A=0;A<this.expanders.length;A++){this.expanders[A].expandAll()}}function cExpanderManager_CollapseAll(){for(var A=0;A<this.expanders.length;A++){this.expanders[A].collapseAll()}return true}function cExpander(A){this.element=A;this.element.expander=this;this.children=new Array();this.bIsOpen=false;this.manager=null;this.img=null;this.szExpandImgSrc="";this.szCollapseImgSrc="";this.addElement=cExpander_AddElement;this.open=cExpander_Open;this.close=cExpander_Close;this.expandAll=cExpander_ExpandAll;this.collapseAll=cExpander_CollapseAll;this.expand=cExpander_Expand;this.contract=cExpander_Contract;this.toggle=cExpander_Toggle;this.initialize=cExpander_Initialize;this.registerOpen=cExpander_RegisterOpen;this.registerClose=cExpander_RegisterClose;this.isVisible=cExpander_IsVisible}function cExpander_AddElement(A){this.children[this.children.length]=A;A.manager=this;return true}function cExpander_Open(){for(var A=0;A<this.children.length;A++){this.children[A].element.style.display="block";if(this.children[A].bIsOpen){this.children[A].open()}}if(this.img!=null&&this.szCollapseImgSrc!=""){this.img.src=this.szCollapseImgSrc}return true}function cExpander_Close(){for(var A=0;A<this.children.length;A++){this.children[A].element.style.display="none";this.children[A].close()}if(this.img!=null&&this.szExpandImgSrc!=""){this.img.src=this.szExpandImgSrc}return true}function cExpander_ExpandAll(){for(var A=0;A<this.children.length;A++){this.children[A].expandAll()}this.expand();return true}function cExpander_CollapseAll(){for(var A=0;A<this.children.length;A++){this.children[A].collapseAll()}this.contract();return true}function cExpander_Expand(){this.bIsOpen=true;this.registerOpen(this);this.open();return true}function cExpander_Contract(){this.bIsOpen=false;this.registerClose(this);this.close();return true}function cExpander_Toggle(){if(this.bIsOpen){this.contract()}else{this.expand()}return true}function cExpander_Initialize(A){this.bIsOpen=A;for(var B=0;B<this.children.length;B++){var C=this.children[B];if(this.isVisible()){C.element.style.display="block"}if(C.bIsOpen){this.registerOpen(C)}this.children[B].initialize(goExpanderManager.isElementVisible(C.element.id))}if(this.img!=null){if(this.bIsOpen&&this.szCollapseImgSrc!=""){this.img.src=this.szCollapseImgSrc}else{if(!this.bIsOpen&&this.szExpandImgSrc!=""){this.img.src=this.szExpandImgSrc}}}return true}function cExpander_RegisterOpen(A){if(this.manager!=null){this.manager.registerOpen(A)}return true}function cExpander_RegisterClose(A){if(this.manager!=null){this.manager.registerClose(A)}return true}function cExpander_IsVisible(){var A=this.bIsOpen;if(this.manager!=null){A=A&&this.manager.isVisible()}return A};