
/* Merged Plone Javascript file
 * This file is dynamically assembled from separate parts.
 * Some of these parts have 3rd party licenses or copyright information attached
 * Such information is valid for that section,
 * not for the entire composite file
 * originating files are separated by - filename.js -
 */

/* - niftyCube.js - */
// http://www.expertendatabank.be/portal_javascripts/niftyCube.js?original=1
var niftyOk=(document.getElementById&&document.createElement&&Array.prototype.push);var niftyCss=false;String.prototype.find=function(what){return(this.indexOf(what)>=0?true:false)}
var oldonload=window.onload;if(typeof(NiftyLoad)!='function') NiftyLoad=function(){};if(typeof(oldonload)=='function')
window.onload=function(){oldonload();AddCss();NiftyLoad()};else window.onload=function(){AddCss();NiftyLoad()};
function AddCss(){niftyCss=true;var l=CreateEl("link");l.setAttribute("type","text/css");l.setAttribute("rel","stylesheet");l.setAttribute("href","/niftyCube.css");l.setAttribute("media","screen");document.getElementsByTagName("head")[0].appendChild(l)}
function Nifty(selector,options){if(niftyOk==false){alert("Bailout niftyOK: false");return}
if(niftyCss==false) AddCss();var i,v=selector.split(","),h=0;if(options==null) options="";if(options.find("fixed-height"))
h=getElementsBySelector(v[0])[0].offsetHeight;for(i=0;i<v.length;i++)
Rounded(v[i],options,"","","");if(options.find("height")) SameHeight(selector,h)}
function NiftyComplex(selector,options,insidecolor,outsidecolor,bordercolor){if(niftyOk==false){alert("Bailout niftyOK: false");return}
if(niftyCss==false) AddCss();var i,v=selector.split(","),h=0;if(options==null) options="";if(insidecolor==null) insidecolor="";if(bordercolor==null) bordercolor="";if(outsidecolor==null) outsidecolor="";if(options.find("fixed-height"))
h=getElementsBySelector(v[0])[0].offsetHeight;for(i=0;i<v.length;i++)
Rounded(v[i],options,insidecolor,outsidecolor,bordercolor);if(options.find("height")) SameHeight(selector,h)}
function Rounded(selector,options,insidecolor,outsidecolor,bordercolor){var i,top="",bottom="",v=new Array();if(options!=""){options=options.replace("left","tl bl");options=options.replace("right","tr br");options=options.replace("top","tr tl");options=options.replace("bottom","br bl");options=options.replace("transparent","alias");if(options.find("tl")){top="both";if(!options.find("tr")) top="left"}
else if(options.find("tr")) top="right";if(options.find("bl")){bottom="both";if(!options.find("br")) bottom="left"}
else if(options.find("br")) bottom="right"}
if(top==""&&bottom==""&&!options.find("none")){top="both";bottom="both"}
v=getElementsBySelector(selector);for(i=0;i<v.length;i++){FixIE(v[i]);if(top!="") AddTop(v[i],top,options,insidecolor,outsidecolor,bordercolor);if(bottom!="") AddBottom(v[i],bottom,options,insidecolor,outsidecolor,bordercolor)}}
function AddTop(el,side,options,insidecolor,outsidecolor,bordercolor){var d=CreateEl("b"),lim=4,border="",p,i,btype="r",bk,color;d.style.marginLeft="-"+getPadding(el,"Left")+"px";d.style.marginRight="-"+getPadding(el,"Right")+"px";if(options.find("alias")||(color=getBk(el))=="transparent"){color="transparent";bk="transparent";border=getParentBk(el);btype="t"}
else{bk=getParentBk(el);border=Mix(color,bk)}
if(insidecolor!=""){color=insidecolor}
if(outsidecolor==""){d.style.background=bk}
else{d.style.background=outsidecolor}
if(bordercolor!=""){border=bordercolor}
d.className="niftycorners";p=getPadding(el,"Top");if(options.find("small")){d.style.marginBottom=(p-2)+"px";btype+="s";lim=2}
else if(options.find("big")){d.style.marginBottom=(p-10)+"px";btype+="b";lim=8}
else d.style.marginBottom=(p-5)+"px";for(i=1;i<=lim;i++)
d.appendChild(CreateStrip(i,side,color,border,btype));el.style.paddingTop="0";el.insertBefore(d,el.firstChild)}
function AddBottom(el,side,options,insidecolor,outsidecolor,bordercolor){var d=CreateEl("b"),lim=4,border="",p,i,btype="r",bk,color;d.style.marginLeft="-"+getPadding(el,"Left")+"px";d.style.marginRight="-"+getPadding(el,"Right")+"px";if(options.find("alias")||(color=getBk(el))=="transparent"){color="transparent";bk="transparent";border=getParentBk(el);btype="t"}
else{bk=getParentBk(el);border=Mix(color,bk)}
if(insidecolor!=""){color=insidecolor}
if(outsidecolor==""){d.style.background=bk}
else{d.style.background=outsidecolor}
if(bordercolor!=""){border=bordercolor}
d.className="niftycorners";p=getPadding(el,"Bottom");if(options.find("small")){d.style.marginTop=(p-2)+"px";btype+="s";lim=2}
else if(options.find("big")){d.style.marginTop=(p-10)+"px";btype+="b";lim=8}
else d.style.marginTop=(p-5)+"px";for(i=lim;i>0;i--)
d.appendChild(CreateStrip(i,side,color,border,btype));el.style.paddingBottom=0;el.appendChild(d)}
function CreateStrip(index,side,color,border,btype){var x=CreateEl("b");x.className=btype+index;x.style.backgroundColor=color;x.style.borderColor=border;if(side=="left"){x.style.borderRightWidth="0";x.style.marginRight="0"}
else if(side=="right"){x.style.borderLeftWidth="0";x.style.marginLeft="0"}
return(x)}
function CreateEl(x){return(document.createElement(x))}
function FixIE(el){if(el.currentStyle!=null&&el.currentStyle.hasLayout!=null&&el.currentStyle.hasLayout==false)
el.style.display="inline-block"}
function SameHeight(selector,maxh){var i,v=selector.split(","),t,j,els=[],gap;for(i=0;i<v.length;i++){t=getElementsBySelector(v[i]);els=els.concat(t)}
for(i=0;i<els.length;i++){if(els[i].offsetHeight>maxh) maxh=els[i].offsetHeight;els[i].style.height="auto"}
for(i=0;i<els.length;i++){gap=maxh-els[i].offsetHeight;if(gap>0){t=CreateEl("b");t.className="niftyfill";t.style.height=gap+"px";nc=els[i].lastChild;if(nc.className=="niftycorners")
els[i].insertBefore(t,nc);else els[i].appendChild(t)}}}
function getElementsBySelector(selector){var i,j,selid="",selclass="",tag=selector,tag2="",v2,k,f,a,s=[],objlist=[],c;if(selector.find("#")){if(selector.find(" ")){s=selector.split(" ");var fs=s[0].split("#");if(fs.length==1) return(objlist);f=document.getElementById(fs[1]);if(f){v=f.getElementsByTagName(s[1]);for(i=0;i<v.length;i++) objlist.push(v[i])}
return(objlist)}
else{s=selector.split("#");tag=s[0];selid=s[1];if(selid!=""){f=document.getElementById(selid);if(f) objlist.push(f);return(objlist)}}}
if(selector.find(".")){s=selector.split(".");tag=s[0];selclass=s[1];if(selclass.find(" ")){s=selclass.split(" ");selclass=s[0];tag2=s[1]}}
var v=document.getElementsByTagName(tag);if(selclass==""){for(i=0;i<v.length;i++) objlist.push(v[i]);return(objlist)}
for(i=0;i<v.length;i++){c=v[i].className.split(" ");for(j=0;j<c.length;j++){if(c[j]==selclass){if(tag2=="") objlist.push(v[i]);else{v2=v[i].getElementsByTagName(tag2);for(k=0;k<v2.length;k++) objlist.push(v2[k])}}}}
return(objlist)}
function getParentBk(x){var el=x.parentNode,c;while(el.tagName.toUpperCase()!="HTML"&&(c=getBk(el))=="transparent")
el=el.parentNode;if(c=="transparent") c="#FFFFFF";return(c)}
function getBk(x){var c=getStyleProp(x,"backgroundColor");if(c==null||c=="transparent"||c.find("rgba(0, 0, 0, 0)"))
return("transparent");if(c.find("rgb")) c=rgb2hex(c);return(c)}
function getPadding(x,side){var p=getStyleProp(x,"padding"+side);if(p==null||!p.find("px")) return(0);return(parseInt(p))}
function getStyleProp(x,prop){if(x.currentStyle)
return(x.currentStyle[prop]);if(document.defaultView.getComputedStyle)
return(document.defaultView.getComputedStyle(x,'')[prop]);return(null)}
function rgb2hex(value){var hex="",v,h,i;var regexp=/([0-9]+)[, ]+([0-9]+)[, ]+([0-9]+)/;var h=regexp.exec(value);for(i=1;i<4;i++){v=parseInt(h[i]).toString(16);if(v.length==1) hex+="0"+v;else hex+=v}
return("#"+hex)}
function Mix(c1,c2){var i,step1,step2,x,y,r=new Array(3);if(c1.length==4)step1=1;else step1=2;if(c2.length==4) step2=1;else step2=2;for(i=0;i<3;i++){x=parseInt(c1.substr(1+step1*i,step1),16);if(step1==1) x=16*x+x;y=parseInt(c2.substr(1+step2*i,step2),16);if(step2==1) y=16*y+y;r[i]=Math.floor((x*50+y*50)/100);r[i]=r[i].toString(16);if(r[i].length==1) r[i]="0"+r[i]}
return("#"+r[0]+r[1]+r[2])}


/* - niftyLuminance.js - */
// http://www.expertendatabank.be/portal_javascripts/niftyLuminance.js?original=1
function NiftyRounding(){Nifty("#custom_rounded,#portlet-search-advanced,#portlet-expert,#portlet-login,#portlet-register,#portlet-search,#portlet-user","big transparent left");Nifty("#custom_rounded,#portlet-search-advanced,#portlet-expert,#portlet-login,#portlet-register,#portlet-search,#portlet-user","big transparent right")}
registerPloneFunction(NiftyRounding);

/* - tree.js - */
// http://www.expertendatabank.be/portal_javascripts/tree.js?original=1
function createTree(id){a=new dTree('a');a.config.folderLinks=true;a.config.useSelection=false;a.config.useIcons=false;a.add(0,-1,'Hidden root node');addNodes(a,id);document.write(a);a.openAll()}
function addNodes(a,id){var sElement=document.getElementById(id);var stack=new Array();stack.push(0);var selectOptions=sElement.options;for(var i=0;i<selectOptions.length;i++){createNode(stack,a,id,selectOptions[i],i)}}
function createNode(stack,a,id,selectOption,selectOptionIndex){var label=selectOption.text.split('#');while(stack.length>label.length){stack.pop()}
a.add(selectOption.value,stack[stack.length-1],label[label.length-1],selectOption.selected,id,selectOptionIndex);stack.push(selectOption.value)}
function activateParents(parentId,checked){if(checked){var parentElement=document.getElementById(parentId);if(parentElement){parentElement.checked=true;parentElement.onchange()}}}
function deactivateChildren(id,checked){if(!checked){var div=document.getElementById("da"+id);if(!div) return;var nodes=div.getElementsByTagName('input');if(!nodes) return;for(var i=0;i<nodes.length;i++){var element=document.getElementById(nodes[i].id);element.checked=false;element.onchange()}}}


/* - dtree.js - */
// http://www.expertendatabank.be/portal_javascripts/dtree.js?original=1
function Node(id,pid,name,selected,optionId,optionIndex,url,title,target,icon,iconOpen,open){this.id=id;this.pid=pid;this.name=name;this.selected=selected||false;this.optionId=optionId;this.optionIndex=optionIndex
this.url=url;this.title=title;this.target=target;this.icon=icon;this.iconOpen=iconOpen;this._io=open||false;this._is=false;this._ls=false;this._hc=false;this._ai=0;this._p};
function dTree(objName){this.config={target:null,folderLinks:true,useSelection:true,useCookies:true,useLines:true,useIcons:true,useStatusText:false,closeSameLevel:false,inOrder:false}
this.icon={root:'img/base.gif',folder:'img/folder.gif',folderOpen:'img/folderopen.gif',node:'img/page.gif',empty:'img/empty.gif',line:'img/line.gif',join:'img/join.gif',joinBottom:'img/joinbottom.gif',plus:'img/plus.gif',plusBottom:'img/plusbottom.gif',minus:'img/minus.gif',minusBottom:'img/minusbottom.gif',nlPlus:'img/nolines_plus.gif',nlMinus:'img/nolines_minus.gif'};this.obj=objName;this.aNodes=[];this.aIndent=[];this.root=new Node(-1);this.selectedNode=null;this.selectedFound=false;this.completed=false};dTree.prototype.add=function(id,pid,name,selected,url,title,target,icon,iconOpen,open){this.aNodes[this.aNodes.length]=new Node(id,pid,name,selected,url,title,target,icon,iconOpen,open)};dTree.prototype.openAll=function(){this.oAll(true)};dTree.prototype.closeAll=function(){this.oAll(false)};dTree.prototype.toString=function(){var str='<div class="dtree">\n';if(document.getElementById){if(this.config.useCookies) this.selectedNode=this.getSelected();str+=this.addNode(this.root)} else str+='Browser not supported.';str+='</div>';if(!this.selectedFound) this.selectedNode=null;this.completed=true;return str};dTree.prototype.addNode=function(pNode){var str='';var n=0;if(this.config.inOrder) n=pNode._ai;for(n;n<this.aNodes.length;n++){if(this.aNodes[n].pid==pNode.id){var cn=this.aNodes[n];cn._p=pNode;cn._ai=n;this.setCS(cn);if(!cn.target&&this.config.target) cn.target=this.config.target;if(cn._hc&&!cn._io&&this.config.useCookies) cn._io=this.isOpen(cn.id);if(!this.config.folderLinks&&cn._hc) cn.url=null;if(this.config.useSelection&&cn.id==this.selectedNode&&!this.selectedFound){cn._is=true;this.selectedNode=n;this.selectedFound=true}
str+=this.node(cn,n);if(cn._ls) break}}
return str};dTree.prototype.node=function(node,nodeId){var str='<div class="dTreeNode">'+this.indent(node,nodeId);if(this.config.useIcons){if(!node.icon) node.icon=(this.root.id==node.pid)?this.icon.root:((node._hc)?this.icon.folder:this.icon.node);if(!node.iconOpen) node.iconOpen=(node._hc)?this.icon.folderOpen:this.icon.node;if(this.root.id==node.pid){node.icon=this.icon.root;node.iconOpen=this.icon.root}
str+='<img id="i'+this.obj+nodeId+'" src="'+((node._io)?node.iconOpen:node.icon)+'" alt="" />'}
if(node.url){str+='<a id="s'+this.obj+nodeId+'" class="'+((this.config.useSelection)?((node._is?'nodeSel':'node')):'node')+'" onclick="'+node.url+'"';if(node.title) str+=' title="'+node.title+'"';if(node.target) str+=' target="'+node.target+'"';if(this.config.useStatusText) str+=' onmouseover="window.status=\''+node.name+'\';return true;" onmouseout="window.status=\'\';return true;" ';if(this.config.useSelection&&((node._hc&&this.config.folderLinks)||!node._hc))
str+=' onclick="javascript: '+this.obj+'.s('+nodeId+');"';str+='>'}
else if((!this.config.folderLinks||!node.url)&&node._hc&&node.pid!=this.root.id)
str+='<a onclick="javascript: '+this.obj+'.o('+nodeId+');" class="node">';if(nodeId!=0){str+='<input id="'+node.id+'" type="checkbox" name="'+node.name+'" value="'+node.id+'"'
str+=' onchange="document.getElementById(\''+node.optionId+'\').options['+node.optionIndex+'].selected = this.checked; activateParents(\''+node.pid+'\', this.checked); deactivateChildren(\''+nodeId+'\', this.checked);" ';if(node.selected){str+='CHECKED'}
str+=' />'+node.name}
if(node.url||((!this.config.folderLinks||!node.url)&&node._hc)) str+='</a>';str+='</div>';if(node._hc){str+='<div id="d'+this.obj+nodeId+'" class="clip" style="display:'+((this.root.id==node.pid||node._io)?'block':'none')+';">';str+=this.addNode(node);str+='</div>'}
this.aIndent.pop();return str};dTree.prototype.indent=function(node,nodeId){var str='';if(this.root.id!=node.pid){for(var n=0;n<this.aIndent.length;n++)
str+='<img src="'+((this.aIndent[n]==1&&this.config.useLines)?this.icon.line:this.icon.empty)+'" alt="" />';(node._ls)?this.aIndent.push(0):this.aIndent.push(1);if(node._hc){str+='<a onclick="javascript: '+this.obj+'.o('+nodeId+');"><img id="j'+this.obj+nodeId+'" src="';if(!this.config.useLines) str+=(node._io)?this.icon.nlMinus:this.icon.nlPlus;else str+=((node._io)?((node._ls&&this.config.useLines)?this.icon.minusBottom:this.icon.minus):((node._ls&&this.config.useLines)?this.icon.plusBottom:this.icon.plus));str+='" alt="" /></a>'} else str+='<img src="'+((this.config.useLines)?((node._ls)?this.icon.joinBottom:this.icon.join):this.icon.empty)+'" alt="" />'}
return str};dTree.prototype.setCS=function(node){var lastId;for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n].pid==node.id) node._hc=true;if(this.aNodes[n].pid==node.pid) lastId=this.aNodes[n].id}
if(lastId==node.id) node._ls=true};dTree.prototype.getSelected=function(){var sn=this.getCookie('cs'+this.obj);return(sn)?sn:null};dTree.prototype.s=function(id){if(!this.config.useSelection) return;var cn=this.aNodes[id];if(cn._hc&&!this.config.folderLinks) return;if(this.selectedNode!=id){if(this.selectedNode||this.selectedNode==0){eOld=document.getElementById("s"+this.obj+this.selectedNode);eOld.className="node"}
eNew=document.getElementById("s"+this.obj+id);eNew.className="nodeSel";this.selectedNode=id;if(this.config.useCookies) this.setCookie('cs'+this.obj,cn.id)}};dTree.prototype.o=function(id){var cn=this.aNodes[id];this.nodeStatus(!cn._io,id,cn._ls);cn._io=!cn._io;if(this.config.closeSameLevel) this.closeLevel(cn);if(this.config.useCookies) this.updateCookie()};dTree.prototype.oAll=function(status){for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n]._hc&&this.aNodes[n].pid!=this.root.id){this.nodeStatus(status,n,this.aNodes[n]._ls)
this.aNodes[n]._io=status}}
if(this.config.useCookies) this.updateCookie()};dTree.prototype.openTo=function(nId,bSelect,bFirst){if(!bFirst){for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n].id==nId){nId=n;break}}}
var cn=this.aNodes[nId];if(cn.pid==this.root.id||!cn._p) return;cn._io=true;cn._is=bSelect;if(this.completed&&cn._hc) this.nodeStatus(true,cn._ai,cn._ls);if(this.completed&&bSelect) this.s(cn._ai);else if(bSelect) this._sn=cn._ai;this.openTo(cn._p._ai,false,true)};dTree.prototype.closeLevel=function(node){for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n].pid==node.pid&&this.aNodes[n].id!=node.id&&this.aNodes[n]._hc){this.nodeStatus(false,n,this.aNodes[n]._ls);this.aNodes[n]._io=false;this.closeAllChildren(this.aNodes[n])}}}
dTree.prototype.closeAllChildren=function(node){for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n].pid==node.id&&this.aNodes[n]._hc){if(this.aNodes[n]._io) this.nodeStatus(false,n,this.aNodes[n]._ls);this.aNodes[n]._io=false;this.closeAllChildren(this.aNodes[n])}}}
dTree.prototype.nodeStatus=function(status,id,bottom){eDiv=document.getElementById('d'+this.obj+id);eJoin=document.getElementById('j'+this.obj+id);if(this.config.useIcons){eIcon=document.getElementById('i'+this.obj+id);eIcon.src=(status)?this.aNodes[id].iconOpen:this.aNodes[id].icon}
eJoin.src=(this.config.useLines)?((status)?((bottom)?this.icon.minusBottom:this.icon.minus):((bottom)?this.icon.plusBottom:this.icon.plus)):((status)?this.icon.nlMinus:this.icon.nlPlus);eDiv.style.display=(status)?'block':'none'};dTree.prototype.clearCookie=function(){var now=new Date();var yesterday=new Date(now.getTime()-1000 * 60 * 60 * 24);this.setCookie('co'+this.obj,'cookieValue',yesterday);this.setCookie('cs'+this.obj,'cookieValue',yesterday)};dTree.prototype.setCookie=function(cookieName,cookieValue,expires,path,domain,secure){document.cookie=escape(cookieName)+'='+escape(cookieValue)+(expires?'; expires='+expires.toGMTString():'')+(path?'; path='+path:'')+(domain?'; domain='+domain:'')+(secure?'; secure':'')};dTree.prototype.getCookie=function(cookieName){var cookieValue='';var posName=document.cookie.indexOf(escape(cookieName)+'=');if(posName!=-1){var posValue=posName+(escape(cookieName)+'=').length;var endPos=document.cookie.indexOf(';',posValue);if(endPos!=-1) cookieValue=unescape(document.cookie.substring(posValue,endPos));else cookieValue=unescape(document.cookie.substring(posValue))}
return(cookieValue)};dTree.prototype.updateCookie=function(){var str='';for(var n=0;n<this.aNodes.length;n++){if(this.aNodes[n]._io&&this.aNodes[n].pid!=this.root.id){if(str) str+='.';str+=this.aNodes[n].id}}
this.setCookie('co'+this.obj,str)};dTree.prototype.isOpen=function(id){var aOpen=this.getCookie('co'+this.obj).split('.');for(var n=0;n<aOpen.length;n++)
if(aOpen[n]==id) return true;return false};if(!Array.prototype.push){Array.prototype.push=function array_push(){for(var i=0;i<arguments.length;i++)
this[this.length]=arguments[i];return this.length}};if(!Array.prototype.pop){Array.prototype.pop=function array_pop(){lastElement=this[this.length-1];this.length=Math.max(this.length-1,0);return lastElement}};

