function quickSearch(elem){}

function searchSite(params){
	var elem = document.getElementById(params);
	if(elem==null) return;
	var values = elem.value;
	if(values=='') return;
	window.location = '/zoeken?waarden='+escape(values);
}

function showImageLarge(image){
	if(image==null) return;
	
	killImageLarge('image-enlarge-container');
		
	var elem = document.createElement('div');
	elem.setAttribute('id'   , 'image-enlarge-container');
	elem.setAttribute('class', 'image-enlarge-container');
	elem.onclick = function(){killImageLarge('image-enlarge-container');}
	
  var nimg = new Image();
  nimg.src = image.src;
  var cheight = nimg.height;
  var cwidth  = nimg.width;

  elem.style.marginTop  = '-'+(cheight/2-10)+'px';
  elem.style.marginLeft = '-'+(cwidth/2-10)+'px';
  elem.style.height     = (cheight)+'px';
  elem.style.width      = (cwidth)+'px';
  
  elem.appendChild(nimg);
  
  document.getElementsByTagName('body')[0].appendChild(elem);
}

function killImageLarge(elemid){
	var elem = document.getElementById(elemid);
	if(elem) elem.parentNode.removeChild(elem);
}

function isIE(){return /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);}
function getBaseURL() {
  var url     = location.href;
  var baseURL = url.substring(0, url.indexOf('/', 14));

  if(baseURL.indexOf('http://localhost') != -1){
    var url = location.href;  // window.location.href;
    var pathname = location.pathname;  // window.location.pathname;
    var index1 = url.indexOf(pathname);
    var index2 = url.indexOf("/", index1 + 1);
    var baseLocalUrl = url.substr(0, index2);
    return baseLocalUrl + "/";
  }
  else return baseURL + "/";
}
function findPos(obj){
  if(!obj) return 0;
  var curleft = 0;
  var curtop  = 0;
  if(obj.offsetParent){
    do{
      curleft += obj.offsetLeft;
      curtop += obj.offsetTop;
    }while(obj = obj.offsetParent);
  }
  return curleft;
}

function getChildNodes(elem){
  if(elem==null)  return new Array();
  if(!elem.childNodes) return new Array();
  var nodes = elem.childNodes;
  var result = new Array();
  for(var i=0; i<nodes.length; ++i){
    if(nodes[i].className) result.push(nodes[i]);
  }
  return result;
}

function getElementsByClassName(clss, recursive, parent){
	if(!parent) parent = document.getElementsByTagName('body')[0];
	var result = new Array();

  var elems  = getChildNodes(parent);
  for(var i in elems) if(hasClass(elems[i], clss)) result.push(elems[i]);
  
  if(recursive){
  	for(var i in elems){
  		var result2 = getElementsByClassName(clss, recursive, elems[i]);
  		for(var i in result2) result.push(result2[i]);
  	}
  }
  return result;
}

function hasClass(elem,clss){
  if(elem==null) return false;
	if(!elem.className) return false;	
  return elem.className.match(new RegExp('(\\s|^)'+clss+'(\\s|$)'));
}
function addClass(elem,clss){
  if(!hasClass(elem,clss)) elem.className += " "+clss;
}
function removeClass(elem,clss){
  if(hasClass(elem,clss)){
    var reg = new RegExp('(\\s|^)'+clss+'(\\s|$)');
    elem.className=elem.className.replace(reg,' ');
  }
}
function createCookie(name, value, days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else var expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name){
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

function eraseCookie(name){createCookie(name,"",-1);}

function setElemTransparency(elem, value, allowhide){
  if(elem==null) return null;
  if(value>1) value = 1;
  if(value<0) value = 0;
  
  if(allowhide) elem.style.display = value==0 ? 'none' : 'block';
  if(isIE()) elem.style.filter  = 'alpha(opacity='+Math.round(value*100)+')';
  else elem.style.opacity = value;
  return elem;
}

function setElemPosition(elem, x, y, abso){
  if(elem==null) return null;
  x = Math.round(x);
  y = Math.round(y);
  elem.style.position = abso ? 'absolute' : 'relative';
  elem.style.left     = x+'px';
  elem.style.right    = y+'px';
  return elem;
}

function openMyLink(elem){
  if(elem==null) return null;
  var elems = elem.getElementsByTagName('a');
  for(var i=0; i<elems.length; ++i){
    if(!hasClass(elems[i], 'link')) continue;
    document.location = elems[i].href;
  }
}

function checkOpenLink(elem){
	if(!elem.parentNode) return;
	if(!hasClass(elem.parentNode, 'link')) return;

	var target = elem.parentNode.href;
	var me     = getBaseURL();
	
	if(target.indexOf(me)>=0) return true;
	else{
    window.open(target);
    return false;
	}
}

function BannerElement(elem){
  this.container = elem;
  this.itemlist  = new Array();
  this.offset    = 0;
  this.target    = 0;
  this.image_w   = 215;
  this.stepsize  = isIE() ? 0.030 : 0.020;
  this.wait_auto = 300;
  this.counter   = this.wait_auto;

  this.init = function(){
    if(!this.container) return;
    this.image_w = this.container.offsetWidth;
    var elems = this.container.getElementsByTagName('img');
    for(var i=0; i<elems.length; ++i){
      this.addImageItem(elems[i]);
    }
    this.offset    = readCookie(this.name+'-offset');
    if(this.offset==null){
    	this.offset = 0;
    	this.target = 0;
    }
    else{
    	this.target = this.roundToItem(parseInt(this.offset));
    	this.offset = this.target-0.01;
    }
    this.reposition();
  }
  this.roundToItem = function(value){
    var nval = this.checkPosition(value);
    return Math.floor(nval);
  }
  this.addItem = function(item){
    this.itemlist.push(item);
  }
  this.addImageItem = function(image){
    if(image==null) return;
    image.style.border = 'none';
    image.style.width  = this.image_w+'px';
    if(image.style.offsetHeight > this.container.offsetHeight){
    	this.container.style.height = image.style.offsetHeight+'px';
    }
    setElemPosition(image, 0, 0, true);
    this.addItem(image);
  }
  this.next = function(){
    this.move(this.target - 1);
  }
  this.back = function(){
    this.move(this.target + 1);
  }
  this.move = function(noffset){
    this.counter = 500;
    this.target  = noffset;
  }
  this.run = function(){
    this.counter--;
    if(this.counter<=0 && this.target==this.offset){
      this.counter = this.wait_auto;
      this.target += 1;
    }   

    if(this.target==this.offset) return;
    var maxstep = Math.abs(this.target-this.offset);
    maxstep     = Math.min(maxstep, this.stepsize);
    if(this.target < this.offset)      this.offset -= maxstep;
    else if(this.target > this.offset) this.offset += maxstep;
    this.reposition();
    createCookie(this.name+'-offset', this.offset, 0.25);
  }
  this.reposition = function(force){
    if(this.target==this.offset && force!=true) return;
    var tmp = this;

    var max = this.itemlist.length;
    var x   = this.checkPosition(this.offset);
    var id  = Math.floor(x);
    var id2 = (id+1) % max;
    var mod = (this.target - this.offset);

    for(var i=0; i<max; ++i){
      var item = this.itemlist[i];
      if(i==id){
        item.style.zIndex = 5;
        setElemPosition(item, 0, 0, true);
        setElemTransparency(item, mod, true);
      }
      else if(i==id2){
        item.style.zIndex = 0;
        setElemPosition(item, 0, 0, true);
        setElemTransparency(item, 1-mod, true);
      }
      else{
        setElemTransparency(item, 0, true);
      }
    }
  }
  this.checkPosition = function(x){
    while(x<0) x += this.itemlist.length;
    return x % this.itemlist.length;
  }
  
  this.init();
}



var bannerElement = new BannerElement(null);

function initBannerModule(elem){
  if(elem==null) return;
  var elems = getElementsByClassName(elem, true);
  if(elems.length > 0) elem = elems[0];
  bannerElement = new BannerElement(elem);
  if(bannerElement.itemlist.length>1) setInterval('bannerElement.run()', 30);
}


  function setBackPath(elem, url){
    while(elem && !hasClass(elem, 'backpathitem')) elem = elem.parentNode;
    var sibling = elem;
    while(sibling=sibling.nextSibling) if(sibling.nodeType==1) sibling.style.display = 'none';
    if(elem){
      elem.style.color      = '#2F2F4F';
      elem.style.background = '#FFFFFF';// url("/fileadmin/templates/img/loading.gif") no-repeat center center';
      elem.style.border     = 'none'; 
      elem.innerHTML  = '<div class="loading loading_blue"><div class="bar"></div></div>';
    }
    setPath(url);
  }
  function setNextPath(elem, url){
    while(elem && !hasClass(elem, 'nextpathitem')) elem = elem.parentNode;
    if(elem){
      elem.style.color      = '#2F2F4F';
      elem.style.background = '#FFFFFF';// url("/fileadmin/templates/img/loading.gif") no-repeat center center';
      elem.innerHTML  = '<div class="loading loading_orange"><div class="bar"></div></div>';
    }
    setPath(url);
  }
  function setCurrentPath(elem, url){ 
    while(elem && !hasClass(elem, 'nextpathitem')) elem = elem.parentNode;
    if(elem){
      elem.style.color      = '#2F2F4F';
      elem.style.background = '#FFFFFF';// url("/fileadmin/templates/img/loading.gif") no-repeat center center';
      elem.innerHTML  = '<div class="loading loading_blue"><div class="bar"></div></div>';
    }
    setPath(url);
  }
  function setPath(url){ 
    zwfb_bipcus.addBlockClient('', url);
    zwfb_bipcus.addClient('searchwindow_bp', '/nl/stream/zwfext/bipcus/search/window/case/bprefresh', 'nochange');
    zwfb_bipcus.addClient('searchwindow_np', '/nl/stream/zwfext/bipcus/search/window/case/nprefresh', 'nochange'); 
  }
  function closeSearch(){
  	var elem = document.getElementById('searchbackscreen');
  	if(elem==null) return;
  	else elem.style.display = 'none';
  		
		document.getElementById('container-bg').style.display = 'block';
  }
  
function openFind(id, pid){
  var url = '/nl/stream/zwfext/bipcus/search/set/newpath/'+id+'/'+pid;
  zwfb_bipcus.addBlockClient('', url);
	
	var elem = document.getElementById('searchwindowanchor');
	if(elem) elem.parentNode.removeChild(elem);
	
	var nel = document.createElement('div');
	nel.setAttribute('id', 'searchwindowanchor');
	document.body.appendChild(nel);
	zwfb_bipcus.addBlockClient('searchwindowanchor', '/nl/stream/zwfext/bipcus/search/window');
  elem = document.getElementById('searchbackscreen');

	document.getElementById('container-bg').style.display = 'none';
}
