/*  JS Resource: lib/i2rd-util.js  */

if(typeof __i2rd_initted=='undefined'){__i2rd_initted=true;if(!Array.prototype.push){Array.prototype.push=function(i){if(i){this[this.length]=i;}};}
if(!Array.prototype.pop){Array.prototype.pop=function(){if(this.length==0){return;}
var i,n=this.length -1;i=this[n];delete this[n];this.length=n;return i;};}
Array.prototype.pushAll=function(list){for(var h=0,hb=list.length;h<hb;h++)this.push(list[h]);};if(!String.prototype.trim){String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"");};}
if(typeof __i2rd_domupdate_event=='undefined'){__i2rd_domupdate_event="dom:update";__i2rd_domupdate_handlers=[];__i2rd_domupdate_fire=function(element,e){var i,h,a=[];if(e){a.push(e);}
for(i=0;(h=__i2rd_domupdate_handlers[i]);i++){try{h.apply(element,a);}catch(e){}}};}
log4js={_log:function(msg,e){if(typeof console!='undefined'&&console.log){console.log(msg);if(e)console.log(e);}}};log4js.logger={log:log4js._log,debug:log4js._log,info:log4js._log,warn:log4js._log,error:log4js._log};if(typeof i2rd=='undefined'){window.i2rd={};}
i2rd.isIE=!+'\v1';i2rd.getConfigMap=function(el){if(typeof el=='string')el=document.getElementById(el);if(!el)return{};var e=el.childNodes,b={},n=0,mx=e.length;for(;n<mx;n++)b[e[n].className]=e[n].innerHTML;return b;};i2rd.xmlToString=function(xml){var str='',ib,i=0,cn;if(typeof xml!='string'){cn=xml.childNodes;if(xml.xml){for(ib=cn.length;i<ib;i++){str+=cn[i].xml;}}else{var xs=new XMLSerializer();for(ib=cn.length;i<ib;i++){str+=xs.serializeToString(cn[i]);}}}else{str=xml;}
return str;};i2rd.scriptRX=/<script[^>]*>([\S\s]*?)<\/script>/gim;i2rd.stripScripts=function(h){return{html:h.replace(i2rd.scriptRX,''),scripts:(function(){try{i2rd.scriptRX.lastIndex=0;}catch(e){}
var m=[],i,arr;while((arr=i2rd.scriptRX.exec(h))){if(arr[1]){m[m.length]=arr[1].replace(/^\s*<!\[CDATA\[/,'').replace(/\]\]>\s*$/,'');}}
return m;})(),addScripts:function(){var e,t,i,s=this.scripts,h=document.getElementsByTagName("head")[0];if(!s||s.length<1)return;for(i=0;t=s[i];i++){e=document.createElement("script");e.setAttribute("type","text/javascript");e.text=t;h.appendChild((s[i]=e));}
setTimeout(function(){for(var i=0;i<s.length;i++)h.removeChild(s[i]);},30000);}};};i2rd.acopy=function(s,sp,d){var i=sp;for(;i<s.length;i++)d.push(s[i]);return d;}
i2rd._dl='dom:loaded';i2rd.w3cevt=!!document.addEventListener;i2rd.ieevt=!!document.attachEvent;i2rd.addEvent=function(el,type,handler){if(type==__i2rd_domupdate_event){__i2rd_domupdate_handlers.push(handler);}else if(type==i2rd._dl&&i2rd.rdy){handler.call(el,i2rd.createEvent('HTMLEvents',i2rd._dl,false,false));}else if(i2rd.w3cevt){el.addEventListener(type,handler,false);}else{if(!handler.$$guid){handler.$$guid=i2rd.addEvent_guid++;}
if(!el.events){el.events={};}
var handlers=el.events[type];if(!handlers){handlers=el.events[type]={};if(el["on" +type]){handlers[0]=el["on" +type];}}
handlers[handler.$$guid]=handler;el["on" +type]=i2rd.handleEvent;}};i2rd.createEvent=function(module,type){var d=document,a=i2rd.acopy(arguments,2,[type]);if(i2rd.w3cevt){d=d.createEvent(module);d['init'+module.replace(/(HTML)?([A-Z][a-z]*vent)s?/,'$2')].apply(d,a);return d;}else if(i2rd.ieevt){d=d.createEventObject();d.type=type;i2rd.fixEvent(d);return d;}else{return{type:type};}};i2rd.createMouseEvent=function(type,p){p=p||{};return i2rd.createEvent('MouseEvents',type,p.canBubble||true,p.cancelable||true,p.view||window,p.detail||1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);};i2rd.fireEvent=function(el,evt){var a=i2rd.acopy(arguments,2,['HTMLEvents',evt]);if(typeof evt=='string'){if(arguments.length==2)a=a.concat([false,false]);evt=i2rd.createEvent.apply(this,a);}
if(i2rd.w3cevt)el.dispatchEvent(evt);else if(evt.cancelBubble===false){try{el.fireEvent('on'+evt.type,evt);}catch(e){i2rd.handleEvent.call(el,evt);}}else i2rd.handleEvent.call(el,evt);};i2rd.removeEvent=function(el,type,handler){if(type==__i2rd_domupdate_event){var hl=[];for(i=0;(h=__i2rd_domupdate_handlers[i]);i++){if(h!==handler){hl.push(h);}}
__i2rd_domupdate_handlers=hl;}else if(i2rd.w3cevt){el.removeEventListener(type,handler,false);}else{if(el.events&&el.events[type]){delete el.events[type][handler.$$guid];}}};i2rd.addEvent_guid=1;i2rd.handleEvent=function(event){if(!this.events)return;var i,hl,rv=true;event=event||i2rd.fixEvent(((this.ownerDocument||this.document||this).parentWindow||window).event);hl=this.events[event.type];for(i in hl){if(hl[i].call(this,event)==false){rv=false;}}
return rv;};i2rd.fixEvent=function(event){event.preventDefault=i2rd.fixEvent_preventDefault;event.stopPropagation=i2rd.fixEvent_stopPropagation;return event;};i2rd.fixEvent_preventDefault=function(){this.returnValue=false;};i2rd.fixEvent_stopPropagation=function(){this.cancelBubble=true;};i2rd.rdy=document.readyState=='complete';i2rd.DOMCL=function(){if(i2rd.rdy)return;if(i2rd.w3cevt){i2rd.rdy=true;document.removeEventListener("DOMContentLoaded",i2rd.DOMCL,false);window.removeEventListener("load",i2rd.DOMCL,false);}else if(i2rd.ieevt){if(document.readyState==="complete"){i2rd.rdy=true;document.detachEvent("onreadystatechange",i2rd.DOMCL);window.detachEvent("onload",i2rd.DOMCL);}}
i2rd.fireEvent(document,i2rd._dl);};if(i2rd.w3cevt){document.addEventListener("DOMContentLoaded",i2rd.DOMCL,false);window.addEventListener("load",i2rd.DOMCL,false);}else if(i2rd.ieevt){document.attachEvent("onreadystatechange",i2rd.DOMCL);window.attachEvent("onload",i2rd.DOMCL);}
i2rd.getAjaxTransport=function(){try{return new XMLHttpRequest();}catch(e){}
try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e){}
return null;};i2rd.bind=function(m,caller){var a=i2rd.acopy(arguments,2,[]),_m=m,obj=caller;return function(){_m.apply(obj,i2rd.acopy(arguments,0,a));};};i2rd.bindAsEventListener=function(m,caller){var a=i2rd.acopy(arguments,2,[]),_m=m,obj=caller;return function(evt){i2rd.acopy(arguments,0,a)
_m.apply(obj,[evt||window.event].concat(a));};};i2rd.eventElement=function(evt){evt=evt||window.event;return(evt.target||evt.srcElement);};i2rd.getInnerText=function(el){if(typeof el=="string"){return el;}
var cn,i,str="",children=el.childNodes;for(i=0;(cn=children[i]);i++){switch(cn.nodeType){case 1:str +=i2rd.getInnerText(cn);break;case 3:case 4:str +=cn.nodeValue;break;}}
return str;};i2rd._p={x:0,y:0};i2rd._mt=false;i2rd.coord=function(e){var x=0,y=0;e=e||window.event;if(e.pageX||e.pageY){x=evt.pageX;y=evt.pageY;}
else if(e.clientX||e.clientY){var d=document,b=d.body,de=d.documentElement;x=evt.clientX +de.scrollLeft +b.scrollLeft;y=evt.clientY +de.scrollTop +b.scrollLeft;}
return i2rd._p={x:x,y:y};};i2rd.getMouseCoord=function(e){if(!i2rd._mt){i2rd._mt=true;if((e=e||window.event)){i2rd.coord(e);}
i2rd.addEvent(document,'mousemove',i2rd.coord);setTimeout(function(){i2rd._mt=false;i2rd.removeEvent(document,'mousemove',i2rd.coord);},60000);}
return i2rd._p;};i2rd.addClassName=function(el,cn){var cn=cn.trim();if(!i2rd.hasClassName(el,cn))
el.className=((el.className||'') +' ' +cn).trim();};i2rd.removeClassName=function(el,cn){if(!i2rd.hasClassName(el,cn))return;el.className=(el.className||'').replace(RegExp("(^|\\s+)" +cn.trim() +"(\\s+|$)",'g'),' ').trim();};i2rd.hasClassName=function(el,cn){var cur=(el.className||'');return cur==cn||(RegExp("(^|\\s+)"+cn+"(\\s+|$)").test(cur));};i2rd.getCookie=function(name){var i=0,c,cn=name+"=",ca=document.cookie.split(';');for(;c=ca[i];i++){while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(cn)==0)return c.substring(cn.length,c.length);}
return null;};i2rd.setCookie=function(name,value,expires,path,domain,secure){document.cookie=name+"="+escape(value)+
((expires)?"; expires="+expires.toGMTString():"")+
((path)?"; path="+path:"")+
((domain)?"; domain="+domain:"")+
((secure)?"; secure":"");};i2rd.deleteCookie=function(name,path,domain){document.cookie=name+"; expires=Thu, 01-Jan-1970 00:00:01 GMT" +((path)?"; path="+path:"") +((domain)?"; domain="+domain:"");};i2rd.owfDefault={menubar:false,location:false,toolbar:false,scrollbars:true,statusbar:false};i2rd.openWindow=function(url,name,dim,features,pbMesg,evt){name=name||'_blank';features=features||i2rd.owfDefault;pbMesg=pbMesg||'Please disable any popup blockers for this site.';var fstr='';for(var key in features){var val=i2rd.getOWFeature(features,key);if(val!=null){fstr +=','+key+'='+(val?'yes':'no');}}
if(dim){if(dim.x&&dim.x>0){dim.x+=30;fstr+=',width='+dim.x;}
if(dim.y&&dim.y>0){dim.y+=50;fstr+=',height='+dim.y;}}
if(fstr.length>0){fstr=fstr.substring(1);}
var nw=window.open(url,name,fstr);if(name!='_top'&&name!='_parent'&&name!='_self'){if(nw.opener!=window){alert(pbMesg);}}
setTimeout(function(){try{nw.focus();}catch(e){}},100);evt=evt||window.event;if(evt){if(evt.preventDefault){evt.preventDefault();evt.stopPropagation();}
else{evt.cancelBubble=true;evt.returnValue=false;}}
return false;};i2rd.getOWFeature=function(m,prop){var val=m[prop];if(typeof val=='undefined'||val==null){return null;}
else{return!!val;}};i2rd.each=function(array,fn,filter){var ct=0,all=(typeof filter!=='function');for(var i=0,mx=array.length;i<mx;i++){var el=array[i];if(all||filter.call(el,i,el,ct)){fn.call(el,i,el,ct++);}}};i2rd.serialize=function(form){var t,e,i,s=[];for(i=0;e=form.elements[i];i++){t=e.type;if(e.serializeValue)e.serializeValue(form,s,e.name,e.value);else if(e.name&&!e.disabled&&t!='submit'&&t!='file'){switch(e.nodeName.toLowerCase()){case'input':switch(t){case'checkbox':case'radio':if(e.checked)i2rd.serializeValue(form,s,e.name,e.value);break;case'button':break;default:i2rd.serializeValue(form,s,e.name,e.value);break;}
break;case'select':for(var o,j=0;o=e.options[j];j++)if(o.selected)i2rd.serializeValue(form,s,e.name,o.value);break;case'button':break;default:i2rd.serializeValue(form,s,e.name,e.value);break;}}}
return s.join('&');};i2rd.serializeValue=function(f,s,n,v){if(n&&v!=null){s.push(encodeURIComponent(n) +'=' +encodeURIComponent(v));}};i2rd._lf=null;i2rd.focusListener=function(evt){var el=i2rd.eventElement(evt);if(i2rd._lf){i2rd.removeClassName(i2rd._lf,"focused");}
i2rd.lastFocus=el;i2rd.addClassName(el,"focused");};i2rd.addEvent(window,'load',function(){var i=0,j,e,f,el,fl=document.forms;if(!fl)return;for(;f=fl[i];i++){el=f.elements;for(j=0;e=el[j];j++){if(e.type=='hidden')continue;i2rd.addEvent(e,'focus',i2rd.focusListener);if(e.nodeName.toLowerCase()=='select'&&i2rd.hasClassName(e,'autosubmitselect'))
e.onchange=function(evt){this.form.submit();};}}});}
/*  JS Resource: cms/js/cms-tabcontainer.js  */

if(typeof cmstabcontainer=='undefined'){cmstabcontainer=true;if(typeof cms=='undefined'){cms={};}
cms.tabcontainers=[];cms.TabContainer=function(cd){this.container=cd;this.tabItemList=[];this.tabs=[];this.tabItemIndexes={};this.doPersistence=!this.container.className.match(/tc_no_persist_selection/)&&!!this.container.id;this.showCallback=i2rd.bindAsEventListener(this.showTab,this);this.mouseOverCallback=i2rd.bindAsEventListener(this.mouseOver,this);this.mouseOutCallback=i2rd.bindAsEventListener(this.mouseOut,this);this.foundUL=false;};cms._getData=function(node,name){try{if(node.dataset)
return node.dataset[name];else if(node.getAttribute)
return node.getAttribute("data-" +name);else
return node["data-" +name];}catch(e){log4js.logger.error("Unable to get URL.",e);}
return null;};cms.TabContainer.prototype={displayFirst:function(){if(this.tabs.length===0){return;}
if(this.tabItemList.length!=this.tabs.length){log4js.logger.error("TabContainer is mismatched." +this.tabItemList.length +" != " +this.tabs.length);}
var i,index=null;if(location.hash.length>1){try{var tid,loc,locations=location.hash.substring(1).split(",");for(i=0;i<locations.length;i++){loc=locations[i];tid=loc.split(":");if(tid[0]==this.container.id){index=this.tabItemIndexes[tid[1]];if(index!=null){this.setActiveTab(index,false);return;}}}}catch(e){log4js.logger.error("Unable to set tab from location hash",e);}}
for(i=0;i<this.tabs.length;i++){if(this.tabs[i].className.match(/tab-selected/)){this.setActiveTab(i,false);return;}
if(this.tabItemList[i].className.match(/tab-selected/)){this.setActiveTab(i,false);return;}}
if(this.doPersistence){index=i2rd.getCookie(this.container.id +"-st");if(index){try{index=parseInt(index);if(this.tabItemList.length>index){this.setActiveTab(index,false);return;}}catch(e){}}}
this.setActiveTab(0,false);},setActiveTabByID:function(id,persist){this.setActiveTab(this.tabItemIndexes[id],persist);},setActiveTab:function(index,persist){var tabItem=this.tabItemList[index];if(!tabItem)tabItem=this.tabItemList[0];this._show(tabItem,persist);},persistSelection:function(index){if(!this.container.id||this.container.id.length==0)return;var time=new Date();time.setHours(time.getHours() +4);i2rd.setCookie(this.container.id +"-st",index,time,"/");},addTabItem:function(element){if(element.id){this.tabItemIndexes[element.id]=this.tabItemList.length;var idx=element.id.indexOf("_tab");if(idx!= -1&&idx==element.id.length -4){this.tabItemIndexes[element.id.substring(0,idx)]=this.tabItemList.length;}}
this.tabItemList.push(element);i2rd.addEvent(element,'click',this.showCallback);i2rd.addEvent(element,'mouseover',this.mouseOverCallback);i2rd.addEvent(element,'mouseout',this.mouseOutCallback);},addTab:function(element){this.tabs.push(element);},getEventSource:function(evt,expectedTag){var selected=i2rd.eventElement(evt);while(selected&&selected.tagName&&selected.tagName.toLowerCase()!=expectedTag){selected=selected.parentNode;}
return selected;},showElement:function(el){this.loadElement(el);el.style.display='block';el.setAttribute('aria-hidden','false');},loadElement:function(el){var url=cms._getData(el,"url");if(url&&i2rd.hasClassName(el,'ajax')&&!i2rd.addClassName(el,'loading')){i2rd.addClassName(el,'loading');var ajax=i2rd.getAjaxTransport(),node=el,onChange=function(arg){if(ajax.readyState==4){if(ajax.status==200||ajax.status==0){var processed=i2rd.stripScripts(ajax.responseText?ajax.responseText:i2rd.xmlToString(ajax.responseXML));node.innerHTML=processed.html;processed.addScripts();__i2rd_domupdate_fire(node);}
i2rd.removeClassName(node,'ajax');i2rd.removeClassName(node,'loading');}};ajax.onreadystatechange=onChange;ajax.open("GET","/partial"+url,true);ajax.send('');}},hideElement:function(el){el.style.display='none';el.setAttribute('aria-hidden','true');},_show:function(tabItem,persist){var h,t,ti;for(h=0;h<this.tabItemList.length;h++){ti=this.tabItemList[h];t=this.tabs[h];i2rd.removeClassName(ti,"tab-selected");if(ti==tabItem){if(persist)this.persistSelection(h);i2rd.addClassName(ti,"tab-selected");this.showElement(t);ti.setAttribute('tab-index','0');}
else{this.hideElement(t);ti.setAttribute('tab-index','-1');}}},showTab:function(evt){var selectedTabItem=this.getEventSource(evt,"li");this._show(selectedTabItem,this.doPersistence);return false;},mouseOut:function(evt){for(var h=0;h<this.tabItemList.length;h++){var ti=this.tabItemList[h];i2rd.removeClassName(ti,"over");}},mouseOver:function(evt){this.mouseOut(evt);var overTabItem=this.getEventSource(evt,"li");i2rd.addClassName(overTabItem,"over");this.loadElement(this.tabs[this.tabItemIndexes[overTabItem.id]]);},lookupTabItems:function(node){var elements=node.getElementsByTagName("li");var li,j;for(j=0;(li=elements[j]);j++){this.addTabItem(li);}},processNode:function(node){var cc=true,ncn=node.className;if(ncn){var nn=node.nodeName.toLowerCase();if(ncn.match(/tab-container/)){return;}else if(!this.foundUL&&nn=="ul"&&ncn.match(/tab-items/)){this.foundUL=true;this.lookupTabItems(node);cc=false;}else if(nn=="div"&&ncn.match(/tab-content/)){this.addTab(node);node.style.display='none';cc=false;}}
if(cc){if(this.foundUL&&this.tabItemList.length<=this.tabs.length){return;}
var children=node.childNodes;var el,h;for(h=0;(el=children[h]);h++){if(el.nodeType!=1){continue;}
this.processNode(el);}}}};cms.initTC=function(div){if(typeof div=='string')div=document.getElementById(div);if(!div){return;}
if(typeof div.tabinited!='undefined'){return;}
div.tabinited=true;var el,tc=new cms.TabContainer(div);cms.tabcontainers.push(tc);var children=div.childNodes;for(var h=0;(el=children[h]);h++){if(el.nodeType!=1){continue;}
tc.processNode(el);}
tc.displayFirst();};cms.checkTCDom=function(start){if(typeof start=='string')
start=document.getElementById(start);else if(start&&i2rd.eventElement(start))
start=i2rd.eventElement(start);start=start||document.body;var i=0,e,list=(start.querySelectorAll)?start.querySelectorAll("div.tab-container"):start.getElementsByTagName("div");for(;e=list[i];i++){if(i2rd.hasClassName(e,"tab-container"))
cms.initTC(e);}};i2rd.addEvent(window,__i2rd_domupdate_event,cms.checkTCDom);}
if(typeof cms_js_includes != 'undefined') {
 cms.addJSInclude('/resources/dyn/docroot/lib/i2rd-util.js/_fn/i2rd-util.js');
 cms.addJSInclude('/resources/dyn/docroot/cms/js/cms-tabcontainer.js/_fn/cms-tabcontainer.js');
}

