// browser sniffer
function Browser(){
  this.iE = navigator.appName.toLowerCase().indexOf('microsoft') != -1 ? 1 : 0;
  this.mac =  navigator.userAgent.toLowerCase().indexOf('mac') != -1 ? 1 : 0;
  this.win = navigator.userAgent.toLowerCase().indexOf('windows') != -1 ? 1 : 0;
  this.safari =  navigator.userAgent.toLowerCase().indexOf('safari') != -1 ? 1 : 0;
  this.opera =  navigator.userAgent.toLowerCase().indexOf('opera') != -1 ? 1 : 0;    
  this.mozilla = navigator.appName.toLowerCase().indexOf('netscape') != -1 && !this.safari ? 1 : 0;
  this.winMozilla = this.mozilla && this.win ? 1 : 0;
  this.winIE = this.iE && this.win && !this.opera ? 1 : 0;
  this.macIE = this.iE && this.mac ? 1 : 0;

}
var browser = new Browser();

function updateRiaForIE(browser_var){
  if(browser_var.iE){
    var framework = getEl("framework");
    var ria = getEl("ria");
    var body = getEl("body");
    var ria_content = ria.innerHTML;
   
    try{framework.removeChild(ria);}catch(e){}
   
    body.innerHTML = '<div id="ria">'+ria_content+'</div>'+body.innerHTML;
    ria = getEl("ria");
    ria.style.left = "50%";
    ria.style.marginLeft = "-380px"; 
  }
}

function startRia() {
  if (!document.getElementById) return false;
  var colOne = document.getElementById('column-one');
  var colOneHeight = colOne ? colOne.offsetHeight : 0;
  var colTwo = document.getElementById('column-two');
  var colTwoHeight = colTwo ? colTwo.offsetHeight : 0;
  var maskHeight  = 402;
  maskHeight += colTwoHeight > colOneHeight ? colTwoHeight : colOneHeight;
  document.getElementById('mask').style.height = maskHeight + 'px';
  document.getElementById('mask').style.display = 'block';
  document.getElementById('ria').style.zIndex = 40;
}


function stopRia() {
   document.getElementById('mask').style.display = 'none';
   if(browser.iE){
    document.getElementById('ria').style.zIndex = 0;
   }else{
     document.getElementById('ria').style.zIndex = 1;
   }
   document.getElementsByTagName('html')[0].style.overflow = 'auto';   
   document.getElementById('body').style.paddingRight = '0px';
}

function startSubMenu(id){
  closeSubMenus();
  var submenu = getElementsByClassName(getEl(id).parentNode, "ul", "subnav");
  for (var i=0; i < submenu.length; i++) {
    submenu[i].style.display='block';
  }
}

function closeSubMenus(){
  if (!document.getElementById) return false;
  var submenus = getElementsByClassName(document, "ul", "subnav");
  for (var i=0; i < submenus.length; i++) {
    submenus[i].style.display='none';
  }
}


function getEl(el){
  return document.getElementById(el);
}

function getElementsByClassName(oElm, strTagName, oClassNames){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var arrRegExpClassNames = new Array();
	if(typeof oClassNames == "object"){
		for(var i=0; i<oClassNames.length; i++){
			arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames[i].replace(/-/g, "\-") + "(\s|$)"));
		}
	}
	else{
		arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames.replace(/-/g, "\-") + "(\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++){
		oElement = arrElements[j];
		bMatchesAll = true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className)){
				bMatchesAll = false;
				break;
			}
		}
		if(bMatchesAll){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function setTeaserAlphaHeightsIE(){
  var agent = navigator.userAgent.toLowerCase();
  
  var majorStr = agent.split('msie ')[1];
  if (!majorStr){
    return;
  }
  var major = parseInt(majorStr.substring(0,1));
  if (!major || major > 6){
    return;
  }
  
  function stretchHeaders(){
    for (var i = 0; i <= 10; i++){
      var el = i == 0 ? getEl('visual') : getEl('visual' +i);
      if (!el){
        continue;
      }
      var list = el.getElementsByTagName('DIV');
      for (var j = 0; j < list.length; j++){
        var listel = list[j];
        if (listel.className == 'head'){
          var col1height = listel.parentNode.parentNode.parentNode.parentNode.offsetHeight;
            if(listel.parentNode.parentNode.parentNode.parentNode.id=='column-two'){col1height-=1};
            if(listel.parentNode.parentNode.parentNode.parentNode.id=='column-three'){col1height-=2};
          var imgheight = listel.parentNode.getElementsByTagName('IMG')[0].offsetHeight;
          textheight = listel.offsetHeight;
          listel.style.height = listel.offsetHeight + 'px';
          //break;
        }
        if(listel.className == 'head_inner'){    
          listel.style.top = imgheight-col1height + 'px';
        }
        if(listel.className == 'color'){    
          listel.style.top = imgheight-col1height + 'px';
        }
       /* el.style.height = imgheight+"px";*/
      }
    }
  }
  
	function init()  {
	  var iBase = TextResizeDetector.addEventListener(onFontResize,null);
    stretchHeaders();
	}
	function onFontResize(e,args) {
		var msg = "\nThe base font size in pixels: " + args[0].iBase;
		msg +="\nThe current font size in pixels: " + args[0].iSize;
		msg += "\nThe change in pixels from the last size:" + args[0].iDelta;
    stretchHeaders();
	}
	//id of element to check for and insert control
	TextResizeDetector.TARGET_ELEMENT_ID = 'header';
	//function to call once TextResizeDetector has init'd
	TextResizeDetector.USER_INIT_FUNC = init;
};

//DOM loader, Dean Edwards/Matthias Miller/John Resig
function init() {
  if (!document.getElementById) return false;
	if (arguments.callee.done) return;
	arguments.callee.done = true;
	if (_timer) clearInterval(_timer);
	
  getEl('framework').style.display='none';
  closeSubMenus();
  
  var delocation = document.location.toString();
  if(delocation.split('algemeen').length == 2){
    startSubMenu('menu1');
  }else if(delocation.split('bedrijfsactiviteiten').length == 2){
    startSubMenu('menu2');
  }else if(delocation.split('personeel').length == 2){
    startSubMenu('menu4');
  }else if(delocation.split('milieu').length == 2){
    startSubMenu('menu3');
  }
  
  updateRiaForIE(browser);  // Necessary for properly popping up the video
  getEl('framework').style.display='block';
  setTeaserAlphaHeightsIE();
};

if (document.addEventListener) {
	document.addEventListener("DOMContentLoaded", init, false);
}

if (/WebKit/i.test(navigator.userAgent)) {  
var _timer = setInterval(function() {        
	if (/loaded|complete/.test(document.readyState)) {            
		clearInterval(_timer); init();}}, 10);
};

window.onload = init;