function switchcontent(className,filtertag){this.className=className;this.collapsePrev=false;this.persistType="none";this.filter_content_tag=(typeof filtertag!="undefined")? filtertag.toLowerCase() : "";}
switchcontent.prototype.setStatus=function(openHTML,closeHTML){this.statusOpen=openHTML;this.statusClosed=closeHTML;}
switchcontent.prototype.setColor=function(openColor,closeColor){this.colorOpen=openColor;this.colorClosed=closeColor;}
switchcontent.prototype.setPersist=function(bool,days){if(bool==true){if (typeof days=="undefined"){this.persistType="session";}else{this.persistType="days";this.persistDays=parseInt(days);}}else{this.persistType="none";}}
switchcontent.prototype.collapsePrevious=function(bool){this.collapsePrev=bool;}
switchcontent.prototype.sweepToggle=function(setting){if (typeof this.headers!="undefined" && this.headers.length>0){for(var i=0; i<this.headers.length; i++){if(setting=="expand"){this.expandcontent(this.headers[i]);}else{if(setting=="contract"){this.contractcontent(this.headers[i]);}}}}}
switchcontent.prototype.defaultExpanded=function(){var expandedindices=[];for(var i=0;(!this.collapsePrev && i<arguments.length) || (this.collapsePrev && i==0);i++){expandedindices[expandedindices.length]=arguments[i];}this.expandedindices=expandedindices.join(",");}
switchcontent.prototype.togglecolor=function(header, status){if(typeof this.colorOpen!="undefined"){header.style.color=status;}}
switchcontent.prototype.togglestatus=function(header, status){if(typeof this.statusOpen!="undefined"){header.firstChild.innerHTML=status;}}
switchcontent.prototype.contractcontent=function(header){var innercontent=document.getElementById(header.id.replace("-title",""));innercontent.style.display="none";this.togglestatus(header,this.statusClosed);this.togglecolor(header,this.colorClosed);}
switchcontent.prototype.expandcontent=function(header){var innercontent=document.getElementById(header.id.replace("-title",""));innercontent.style.display="block";this.togglestatus(header,this.statusOpen);this.togglecolor(header,this.colorOpen);}
switchcontent.prototype.toggledisplay=function(header){var innercontent=document.getElementById(header.id.replace("-title",""));if(innercontent.style.display=="block"){this.contractcontent(header);}else{this.expandcontent(header);if(this.collapsePrev && typeof this.prevHeader!="undefined" && this.prevHeader.id!=header.id){this.contractcontent(this.prevHeader);}}if(this.collapsePrev){this.prevHeader=header;}}
switchcontent.prototype.collectElementbyClass=function(classname){var classnameRE=new RegExp("(^|\\s+)"+classname+"($|\\s+)", "i");this.headers=[];this.innercontents=[];if(this.filter_content_tag!=""){var allelements=document.getElementsByTagName(this.filter_content_tag);}else{var allelements=document.all? document.all : document.getElementsByTagName("*");}for (var i=0; i<allelements.length; i++){if (typeof allelements[i].className=="string" && allelements[i].className.search(classnameRE)!=-1){if (document.getElementById(allelements[i].id+"-title")!=null){this.headers[this.headers.length]=document.getElementById(allelements[i].id+"-title");this.innercontents[this.innercontents.length]=allelements[i];}}}}
switchcontent.prototype.init=function(){var instanceOf=this;this.collectElementbyClass(this.className);if(this.headers.length==0){return;}if(this.persistType=="days" && (parseInt(switchcontent.getCookie(this.className+"_dtrack"))!=this.persistDays)){switchcontent.setCookie(this.className+"_d", "", -1);}var opencontents_ids=(this.persistType=="session" && switchcontent.getCookie(this.className)!="")? ','+switchcontent.getCookie(this.className)+',' : (this.persistType=="days" && switchcontent.getCookie(this.className+"_d")!="")? ','+switchcontent.getCookie(this.className+"_d")+',' : (this.expandedindices)? ','+this.expandedindices+',' : "";for (var i=0; i<this.headers.length; i++){if (typeof this.statusOpen!="undefined"){this.headers[i].innerHTML='<span class="status"></span>'+this.headers[i].innerHTML;}if (opencontents_ids.indexOf(','+i+',')!=-1){this.expandcontent(this.headers[i]);if (this.collapsePrev){this.prevHeader=this.headers[i];}}else{this.contractcontent(this.headers[i]);}this.headers[i].onclick=function(){instanceOf.toggledisplay(this)};}switchcontent.dotask(window, function(){instanceOf.rememberpluscleanup()}, "unload");}
switchcontent.prototype.rememberpluscleanup=function(){var opencontents=new Array("none");for (var i=0; i<this.innercontents.length; i++){if (this.persistType!="none" && this.innercontents[i].style.display=="block" && (!this.collapsePrev || (this.collapsePrev && opencontents.length<2))){opencontents[opencontents.length]=i;}this.headers[i].onclick=null;}if (opencontents.length>1){opencontents.shift();}if (typeof this.statusOpen!="undefined"){this.statusOpen=this.statusClosed=null;}if (this.persistType=="session"){switchcontent.setCookie(this.className, opencontents.join(","));}else if(this.persistType=="days" && typeof this.persistDays=="number"){ switchcontent.setCookie(this.className+"_d", opencontents.join(","), this.persistDays);switchcontent.setCookie(this.className+"_dtrack", this.persistDays, this.persistDays);}}
switchcontent.dotask=function(target, functionref, tasktype){var tasktype=(window.addEventListener)? tasktype : "on"+tasktype;if (target.addEventListener){target.addEventListener(tasktype, functionref, false);}else{if (target.attachEvent){target.attachEvent(tasktype, functionref);}}}
switchcontent.getCookie=function(Name){ var re=new RegExp(Name+"=[^;]+", "i");if (document.cookie.match(re)){return document.cookie.match(re)[0].split("=")[1];}return "";}
switchcontent.setCookie=function(name, value, days){if (typeof days!="undefined"){ var expireDate = new Date();var expstring=expireDate.setDate(expireDate.getDate()+days);document.cookie = name+"="+value+"; expires="+expireDate.toGMTString();}else{document.cookie = name+"="+value;}}