var idInsert= new Object();
var website = "http://www.deondernemer.nl"//Websitename As shown in AR script after "Active_reception_tracking.php?website="
var testStyle=""
 if(document.location.href.indexOf('http://localhost') != -1){
   testStyle="background-color:#ff9900;"
	} 
idInsert[0]= new IdInsert("","(allard|localhost|deondernemer.nl)/$","after","div","class","lt",0,testStyle) //pos, type, identifier
idInsert[1]= new IdInsert("newsroomKop",".*","after","div","class","lbox500",0,testStyle)
idInsert[2]= new IdInsert("","(allard|localhost|deondernemer.nl)/kennisbron/$","after","div","class","item",0,testStyle)
idInsert[3]= new IdInsert("","(allard|localhost|deondernemer.nl)/netwerk/index.html","before","div","class","fc",0,testStyle)
idInsert[4]= new IdInsert("","(allard|localhost|deondernemer.nl)/voordeel/index.html","after","div","class","reset",5,testStyle)
idInsert[5]= new IdInsert("","Kennisbron/2177573/Is-een-AOV-noodzakelijk-voor-mij.html","before","p","","",3,testStyle)
idInsert[6]= new IdInsert("stijl",".*","after","div","id","hoofd_content",0,testStyle)
idInsert[7]= new IdInsert("","deondernemer/495414/Grote-verschillen-bij-verzekeraars.html","before","p","","",4,testStyle)
idInsert[8]= new IdInsert("","deondernemer/495411/Is-een-AOV-noodzakelijk.html","after","p","","",3,testStyle)
var templateType=""

function createIFrame(){
  var oIFrame = document.createElement("iFrame");
  oIFrame.setAttribute("id", "oIFrame");
  var placeHolder = document.getElementById("idHumphries");
	if (placeHolder!=null){
  placeHolder.appendChild(oIFrame);
  switch (templateType){
    case "1":
  			  oIFrame.width="635px"
  			  oIFrame.height="142px"
  				oIFrame.scrolling="no"
  				oIFrame.style.overflow="hidden"
  				oIFrame.style.border=0
  				oIFrame.src="/popin/deondernemer/banners/banner2.html"
  				break;
  case "7":
  			  oIFrame.width="440px"
  			  oIFrame.height="182px"
  				oIFrame.scrolling="no"
  				oIFrame.style.overflow="hidden"
  				oIFrame.style.border=0
  				oIFrame.src="/popin/deondernemer/banners/banner3.html"
  				break;
	case "8":
  			  oIFrame.width="440px"
  			  oIFrame.height="182px"
  				oIFrame.scrolling="no"
  				oIFrame.style.overflow="hidden"
  				oIFrame.style.border=0
  				oIFrame.src="/popin/deondernemer/banners/banner4.html"
  				break;
  default:
  				oIFrame.width="635px"
  			  oIFrame.height="142px"
  				oIFrame.scrolling="no"
  				oIFrame.style.overflow="hidden"
  				oIFrame.style.border=0
  				oIFrame.src="/popin/deondernemer/banners/banner1.html"
		}
	}
}

//----Generic------------------------
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

function getArrElementsByClassName (cl,tagName) {
  	 var retnode = [];
  	 var myclass = new RegExp(cl);
  	 var elem = document.getElementsByTagName(tagName);		
  	 for (var i = 0; i < elem.length; i++) {
  	 		 var classes = elem[i].className;
  			 if (myclass.test(classes)) retnode.push(elem[i]);				 
  	 }		 
  	 return retnode;
}

function getElementsByAttribute(tagName, attribute, value) {
  	 var retnode = [];
  	 var myclass = new RegExp(value);
  	 var elem = document.getElementsByTagName(tagName);
		 if (attribute!=""){
  		 for (var i = 0; i < elem.length; i++) {
    	 		 var classes = eval("elem[i]."+attribute);				
    			 if (myclass.test(classes)) retnode.push(elem[i]);
    	 }
    	 return retnode;
		 }else{
		 	 return elem
		 }
}

function IdInsert(templateName, pageId,pos, type, attribute, identifier) {
  this.templateName=templateName
	this.pageId=pageId
	this.pos = pos;
	this.attribute = attribute;
  this.type=type;
  this.identifier=identifier;
	this.arrayPos = 0
	this.insertStyle=""
	if (IdInsert.arguments.length>=7)
		 this.arrayPos = IdInsert.arguments[6]
	if (IdInsert.arguments.length>=8)
		this.insertStyle = IdInsert.arguments[7]
}
var bStart_AR=false;
//----AR------------------------
function start_AR(){
	if (!bStart_AR){
		 var oScript = document.createElement("script");
		 oScript.setAttribute("type", "text/javascript");
		 oScript.src = 'http://track.activereception.com?script=tracking&website='+website
		 document.body.appendChild(oScript);
		 bStart_AR=true	 
	}
	//createIFrame()
}

function init_AR_load(){
  start_AR()
  doARStartedCheck(); //check onload for ie and chrome
}

function init_load_check(){
 if (document.body.getElementsByTagName("div").length<30){
 		setTimeout(init_load_check,200)		
 }else{
  	var version=0;
    if(navigator.appName.indexOf('Internet Explorer') != -1){
  			temp=navigator.appVersion.split("MSIE");
  			version=parseFloat(temp[1]);
  	}
  	if (version !=7){
  		 PrepareInsert()		
    }	else{ 	//wait for onload for IE7, kb927917
  		if (window.parent.document.readyState!="completed"){
  			 addLoadEvent(PrepareInsert)
  		}else{
  				 PrepareInsert()
  		}
  	}
	}
}

function doARStartedCheck(){
	if (typeof(activereception_startTracking)=='function'){
		if (typeof(activereception_request)!='string'){
			activereception_startTracking()
		}
	}else{ //AR has not loaded yet
		setTimeout(doARStartedCheck,200)
	}
}

function getTemplateIdentifier(){
  var arrTemplateClasses=getArrElementsByClassName("newsroomKop","div")
  if (arrTemplateClasses.length>0){
		 return(arrTemplateClasses[0].className)
	}else {
		 return(null)
	}
}

function PrepareInsert(test){
  sLocation =document.location.href	
	clsBody=getTemplateIdentifier()
	var TemplateFound=false
	var urlFound=false
	var counter=0
	for (objInsert in idInsert){
    var re = new RegExp(idInsert[objInsert].templateName,"i"); 
    var m=re.test(clsBody)// check Templatename
	  if (m||(idInsert[objInsert].templateName=="")){
			 templateType=objInsert
  		 var re = new RegExp(idInsert[objInsert].pageId,"i");
    	 var m=re.exec(sLocation)
	  	 if (m!=null){
		   	  urlFound=true;
			 	  break;
	     }
		}
	  counter++
  }  
  if (urlFound){//create insert in this page?
	  var dHumphries= null;
  	var arrElements=null;
    var objAnchor=null;
  	var pos= idInsert[counter].pos
  	var type= idInsert[counter].type
		var attribute= idInsert[counter].attribute
  	var identifier= idInsert[counter].identifier
		var arrayPos = idInsert[counter].arrayPos
		var insertStyle = idInsert[counter].insertStyle
		dHumphries=document.createElement('div');
  	dHumphries.setAttribute("id", "idHumphries");		
		if (insertStyle!="" ){		
				dHumphries.style.cssText= insertStyle		
  	  	sTestText=document.createTextNode('***Mr Humphries testing insert***');
  	    dHumphries.appendChild(sTestText);
		}		
  	if (type=="" ){
			type="*"
		}
		switch (attribute.toLowerCase()){
      case "id":
    	  objAnchor = document.getElementById(identifier);
  			if (objAnchor!=null){
  				 arrElements= new Array(objAnchor)
  			} 
      break;
  //    case "name":
  //				 objAnchor = document.getElementsByName(identifier);
  //				 arrElements= objAnchor
  //				 alert(identifier+": "+objAnchor.name)				
  //  	break;
      case "class":
  				objAnchor = getArrElementsByClassName(identifier,type);
  				arrElements= objAnchor
    	break;
			
		  default: //tagname is leading..
			objAnchor =  getElementsByAttribute(type, attribute, identifier) ;
			arrElements= objAnchor
			break;			
    }
		
		if (test =="1"){
		 alert(arrElements)
	  }
  	if ((arrElements==null) || (arrElements.length==0)){ //page not yet loaded wait a bit...
    	if (document.counter){
    		document.counter++
    	}else{
    		document.counter=1
    	}
  		if (document.counter < 10){ 	
  			 setTimeout(PrepareInsert,100)
  		}
  	}else{  //we have an anchor...		
      switch (pos.toLowerCase()){
        case "before":
				if (arrElements.length>arrayPos){
    		 			 arrElements[arrayPos].parentNode.insertBefore(dHumphries,arrElements[arrayPos]);
							 //document.getElementById("idHumphries").className="pullout_vak"
				}
        break;
        case "after":
					/* if (arrayPos==0){
    			   arrElements[arrElements.length-1].parentNode.insertBefore(dHumphries,arrElements[arrElements.length-1].nextSibling);
					//document.getElementById("idHumphries").className="pullout_vak"
					}else{
							if (arrElements.length>arrayPos){*/
					   		arrElements[arrayPos].parentNode.insertBefore(dHumphries,arrElements[arrayPos].nextSibling);
								//document.getElementById("idHumphries").className="pullout_vak"
					//	 }
					//} 
        break;
    		 case "middle":
    		 	 var elPos=Math.round( arrElements.length/2)
    			 arrElements[elPos].parentNode.insertBefore(dHumphries,arrElements[elPos]);
        break;
        case "after first":
    		 arrElements[0].parentNode.insertBefore(dHumphries,arrElements[0].nextSibling);
        break;	
        case "before last":
    		 arrElements[arrElements.length-1].parentNode.insertBefore(dHumphries,arrElements[arrElements.length-1]);
        break;
				 case "inside before":    	
				 arrElements[arrayPos].insertBefore(dHumphries, arrElements[arrayPos].children[0])
        break;
				 case "inside after":
    		 arrElements[arrayPos].appendChild(dHumphries)
        break;
      }
		  init_AR_load()
    }
  }else{ 
		init_AR_load()
	}
}
init_load_check()
