/* shop in een shop werkt niet in frameless */
// shopswitch_pos  =  location.href.indexOf('supplier=');
// if (shopswitch_pos >-1 && location.href.length > shopswitch_pos+9) location.href =  location.href.substr(0,shopswitch_pos+9);
// stijl_reg('#opt_shopswitch select','visibility: hidden',1); /* zie ook page_init  */

/* Methodes for header, infopr20, panel in each EasyOrder 2.5 page */
var pageId = ' ';
var keyId = ' ';
var redirectLocation = '';
var ie6 = ('ActiveXObject' in window && !('XMLHttpRequest' in window));
var ie7 = (navigator.appVersion.indexOf("MSIE 7.")==-1) ? false : true;
var ie = /*@cc_on!@*/false;
var cr = navigator.userAgent.indexOf('Chrome/') > -1

var promo_xsl;
//doAjax('/easyorder/ajpromo?ext=sheet', getPromoXsl);//469,320,562,ms
doAjax('/css0/promotion.xsl', getPromoXsl); //16,31,15,15 msec
function getPromoXsl() {promo_xsl = this.req.responseXML;}

/** ex e-buzztools.js **/

function disableFocus(){
	if(((navigator.appName != 'Microsoft Internet Explorer') && this.blur) && (curPopupWindow = null)) this.blur()
}

function openWindow(url, name, wWidth, wHeight, x, y, features) {//in inqord3 en infort5
	window.open(url, name, "resizable, width="+wWidth+", height="+wHeight+", left="+x+", top="+y+features+", status");
	return false;
}

function updOrdQty(formName, elementName, minOrdQty, deliverQty, upOrDown) {
	var elemObj = document.forms[formName].elements[elementName];
	if (elemObj != null) {
		var ordQty = pFloat(elemObj.value);
		var delQty = pFloat(deliverQty);
		var remQty = (Math.round(ordQty*10000) % Math.round(delQty*10000));
		if (upOrDown.toUpperCase() == "UP") {
			ordQty = ordQty + delQty - remQty;
		} else {
			ordQty = ordQty - delQty - remQty;
		}
		if (ordQty < 0) ordQty = 0;
		ordQty = Math.round(ordQty*10000)/10000;
		if (ordQty == "NaN") ordQty = delQty;
		elemObj.value = ordQty;
	} else {
		alert("Element " + elementName + " in form " + formName + " not found!");
	}
}

function pFloat(qty) {return parseFloat(qty.replace(',','.'));}

//	SB 20/07/06 (mnr0780020) Update listbox
function updateListBox(input, XMLresponse) {
	if (XMLresponse == null){
		var url = "ajListBox?" + input;
		loadXMLDoc(url);
	} else {
		setListBox(XMLresponse);
	}
}
function setListBox(response) {
	//	get listboxname and clear current options
	var box = response.getElementsByTagName('box')[0].firstChild.nodeValue;
	clearListBox(box);
	// 	get number of option elements and populate listbox
	var list = response.getElementsByTagName('option');
	for (var i = 0; i < list.length; i++) {
		var selected;	
		var description = list[i].getElementsByTagName('description')[0].firstChild.nodeValue;
		var code = list[i].getElementsByTagName('code')[0].firstChild.nodeValue;
		var opt = new Option(description, code);
		if	(list[i].getElementsByTagName('selected')[0].firstChild != null) {
			var selected = list[i].getElementsByTagName('selected')[0].firstChild.nodeValue;
		} else {
			var selected = null;
		}
		populateListBox(box, opt, selected);
	}
}
function populateListBox(box, option, sel) {
	//	IE kan niet overweg met de waarde NULL als parameter, dus omzeilen door een ongedefineerde variabele te declaren!
	var undefined;
	var listBox = document.getElementsByName(box)[0];
	listBox.add(option, undefined);
	if	(sel != null) {
		listBox.options[listBox.length -1].setAttribute('selected', 'selected');
		listBox.options.selectedIndex = listBox.length -1;
	}
}
function clearListBox(box) {
	var listBox = document.getElementsByName(box)[0];
	listBox.length = 0;
}
function positioneer(bron, doel_id, xp, yp) {
	xy = find_position(bron);
	obj=document.getElementById(doel_id);
	if (xy.x + xp < 0) xy.x = 0-xp;
	if (xy.y + yp < 0) xy.y = 0-yp;
	obj.style.left = xy.x + xp + 'px';
	obj.style.top = xy.y + yp + 'px';
}

function find_position(obj) {
//return left and top of the referenced object
//o.a. in order03, order04, infous3x
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			posn = stijl(obj).position
//			if (posn == 'absolute' || posn == 'relative') return {x: curleft, y: curtop};
			curleft += obj.offsetLeft; curtop += obj.offsetTop;
		}//doorgaan tot html-element
	}
	return {x: curleft, y: curtop};
}

function getSelectText(obj){return obj.getElementsByTagName('option')[obj.selectedIndex].text;}

var doc_status = 0;//0=html laden;1=js laden;2=normaal;3=ontladen
function page_init() {
	doc_status = 1;
	if (pageId==' ') {pageId=document.getElementsByTagName('body')[0].id;}
	if (pageId!='ORDER04') ptr_init();
//	if (document.getElementsByName('listShops')[0]) document.getElementsByName('listShops')[0].parentNode.removeChild(document.getElementsByName('listShops')[0]);
	if (typeof custom_init != 'undefined') custom_init();
/*	document.getElementById('scrim').ondblclick = function () {
		toon_verberg('panel',false);
	}*/
	setTimeout(page_inited, 1500);
}
window.onunload = page_exit;
function page_exit() {
	doc_status = 3;
}
function page_inited(){
	doc_status = 2;
}


/******************* TABBEN *******************/

function zoek_hoger(obj, type, naam) {
	try {
		if (type=='class') while (obj.className!=naam && obj.className.indexOf(naam+' ')<0 && obj.className.indexOf(' '+naam)<0) obj = obj.parentNode;
		if (type=='tag') {
			naam = naam.toUpperCase();
			while (obj.tagName!=naam) obj = obj.parentNode;
		}
		if (type=='name') while (obj.name!=naam) obj = obj.parentNode;
	}
	catch(e) {obj=null}
	return obj;
}
function zoek_lager(obj, type, naam) {
	var nds = obj.getElementsByTagName('*');
	var res = new Array();
	for (i=0; i<nds.length; i++) {
		if (type=='class') if (nds[i].className == naam || nds[i].className.indexOf(naam+' ') > -1 || nds[i].className.indexOf(' '+naam) > -1) res[res.length] = nds[i];
		if (type=='tag') if (nds[i].tagName == naam.toUpperCase()) res[res.length] = nds[i];
		if (type=='name') if (nds[i].name == naam || nds[i].getAttribute('name') == naam) res[res.length] = nds[i];
	}
	return res;
}

function tab_naar(inv) {
	if (typeof inv == 'string') inv = document.getElementById(inv); //het tabje als object
	tab_tabel = zoek_hoger(inv, 'tag', 'table');
	tab_items = tab_tabel.getElementsByTagName('a');
	for (i=0; i<tab_items.length; i++) {
		if (tab_items[i].className.indexOf('tab_link')>-1) {
			iid = tab_items[i].id.substr(4);
			tab_items[i].parentNode.className = '';
			try {document.getElementById('tab_tool_'+iid).style.display='none';}
			catch(e) {}
			try {document.getElementById('tab_txt_'+iid).style.display='none';}
			catch(e) {}
		}
	}
	iid = inv.id.substr(4);
	inv.parentNode.className = 'selected';
	try {document.getElementById('tab_tool_'+iid).style.display='block';}
	catch(e) {}
	try {document.getElementById('tab_txt_'+iid).style.display='block';}
	catch(e) {}
}

/******************* STAPPEN *******************/

function step_to(ergens) {
	step_form = zoek_hoger(document.getElementById('step_'+ergens), 'tag', 'form');
	step_items = step_form.getElementsByTagName('div');
	for (i=0; i<step_items.length; i++) {
		if (step_items[i].className.indexOf('step ')==0) {
			iid = step_items[i].id.substr(5);
			try {document.getElementById('step_button_'+iid).style.display='none';}
			catch(e) {}
			try {document.getElementById('step_txt_'+iid).style.display='none';}
			catch(e) {}
		}
	}
	iid = ergens;
	try {document.getElementById('step_button_'+iid).style.display='block';}
	catch(e) {}
	try {document.getElementById('step_txt_'+iid).style.display='block';}
	catch(e) {}
}

/******************* CONTROLPANEL OVERLAY *******************/

function new_panel() {
	if (arguments.length==1) {//ajax aanroep
		arguments[0] = '/easyorder/' +arguments[0];
		doAjax(arguments[0], new_panel);
		return;
	}
	cursorReset('true');
	// ajax verwerken
	panref = document.getElementById('panel');
	if (panref.style.display=='none') panref.style.top = (document.documentElement.scrollTop + 64) +'px';
	in_panel = this.req.responseText;
	insertHTML(panref, in_panel);
	toon_verberg(panref, true);
	set_focus(panref);
}
function panel_predef(id) {//orderstatus/rapporten/instellingen
	panref = document.getElementById(id);
	panref.style.top = (document.documentElement.scrollTop + 64) +'px';
	tablink = zoek_lager(panref, 'class', 'tab_link')[0]; //linker tab
	if (arguments.length > 1) tablink = document.getElementById(arguments[1]);
	if (tablink) tablink.onclick.call(tablink);
	toon_verberg(panref, true);
}

function hoogte() {
	return self.innerHeight ? self.innerHeight : (document.documentElement && document.documentElement.clientHeight) ? document.documentElement.clientHeight : document.body.clientHeight;}
function breedte() {
	return self.innerWidth ? self.innerWidth : (document.documentElement && document.documentElement.clientHeight) ? document.documentElement.clientWidth : document.body.clientWidth;}

function size_panel_obj(obj,maxim) {
	if (maxim) {
		obj.className = obj.className.replace('panel','maximal');
		obj.getElementsByTagName('iframe')[0].style.height = String(hoogte()-96) + 'px';
		window.scrollTo(0,0);
	} else {
		obj.className = obj.className.replace('maximal','panel');
		obj.getElementsByTagName('iframe')[0].style.height = String(hoogte()-176) + 'px';
		window.scrollTo(0,find_position(document.getElementById('panel')).y);
	}
	toon_verberg(document.getElementById('panel_size_max'), !maxim);
	toon_verberg(document.getElementById('panel_size_norm'), maxim);
}

function new_panel_obj(head,url,tabs,pref) {
	if (url != null) {
		if (url.indexOf('newsitem?parm=')>-1 || url.indexOf('req2form?')>-1) {//route newsitems, free forms
			new_panel(url);
			return;
		}
	}
	panref = document.getElementById('panel');
	panref.style.top = (document.documentElement.scrollTop + 64) +'px';
	in_panel = '<div class="section section_start"></div><div class="section section_body"><div class="intro item">';
	in_panel += '<a class="script_link intro_link tail" onclick="lyr=zoek_hoger(this,\'class\',\'layer\');size_panel_obj(lyr,false);toon_verberg(lyr)"><img src="/images/close.gif" alt="x"></a>';
	in_panel += '<a class="script_link intro_link tail" id="panel_size_max" onclick="size_panel_obj(zoek_hoger(this,\'class\',\'layer\'),true)"><img src="/images/intro_szmax.gif" alt="+"></a>';
	in_panel += '<a class="script_link intro_link tail" id="panel_size_norm" style="display: none" onclick="size_panel_obj(zoek_hoger(this,\'class\',\'layer\'),false)"><img src="/images/intro_sznorm.gif" alt="-"></a>';
	in_panel += '<h2 class="custom_color" onclick="size_panel_obj(zoek_hoger(this,\'class\',\'layer\'),false)">' + head + '</h2>';
	in_panel += '</div><div class="tabs item">';
	if (tabs!=null){
		in_panel += '<table cellspacing="0" cellpadding="0" class="tab_links"><tbody><tr>';
		for (i=0;i<tabs.length;i++) {
			titel = tabs[i].getAttribute('alt');
			if (titel == null) titel= tabs[i].innerHTML;
			in_panel += '<td><a class="tab_link" href="'+tabs[i].href+'" onclick="tab_open(\''+tabs[i].href+'\'); return false" target="preview"><span class="tab_link_right"><span class="tab_link_middle">'+titel+'</span></span></a></td>';
		}
		in_panel += '<td class="empty"><span class="tab_link" id="tab_empty"><span class="tab_link_right"><span class="tab_link_middle">&nbsp;</span></span></span></td>';
		in_panel += '</tr></tbody></table>';
	}
	in_panel += '<iframe src="/images/anim_timepass45.gif" class="tab_txt" width="98%" height="'+String(hoogte()-176)+'" allowtransparency="true" frameborder="0" name="preview"></iframe></div>';
	in_panel += '<div class="closure item"><div class="buttons">';
	in_panel += '</div></div></div><div class="section section_stop"></div>';
	insertHTML(panref, in_panel);
	toon_verberg(panref, true);
	if (url != null) {
		if (pref != null) {
			if (typeof pref=='string') url=pref;
			if (typeof pref=='number') url=tabs[Math.min(tabs.length),pref].href;
		}
		if (url.toLowerCase().indexOf("prdcod=") > 0 ) url = encodeURI(url);
		if (tabs == null) document.getElementById('panel').getElementsByTagName('iframe')[0].src=url; else tab_open(url);
	}
}
function tab_open(href){
	tds = document.getElementById('panel').getElementsByTagName('td');
	for (t=0;t<tds.length-1;t++) {
		tds[t].className = '';
		if (tds[t].getElementsByTagName('a')[0].href==href) {
			tds[t].className = 'selected';
			document.getElementById('panel').getElementsByTagName('iframe')[0].src=href;
		}
	}
}

function submit_form(obj, callback) {//callback: validate_form of panel_handle
	formparms = get_element_values(obj);
	act = '/easyorder/' +obj.getAttribute('action');
	if (typeof act == 'object') meld ('\'action\' is elementnaam i.p.v. formulierattribuut');//kan in ie7
	doAjaxPost(act, callback, formparms);
}
function meld(tx){//foutboodschappen voor testsites en opgegeven url's
	doe = Boolean(location.port)
	if (arguments.length>1) {
		if (typeof arguments[1]=="string") doe = Boolean(location.href.indexOf(arguments[1])!=-1)
	}
	if (arguments.length>2) {
		if (typeof arguments[2]=="boolean" && doe) doe=arguments[2];
	}
	if (doe) alert (tx);
}
function get_element_values(obj) {
	var rslt = new Array();
	get_vals('input');
	get_vals('select');
	get_vals('textarea');

	function get_vals(tag_name) {
		inps = zoek_lager(obj,'tag',tag_name);
		for (i=0; i<inps.length; i++) {
			inp = inps[i];
			typ = inp.type;
			nom = inp.name;
			switch (inps[i].type) {
			case 'radio': if (inps[i].checked) rslt[rslt.length] = inps[i].name + '=' + parse_vals(inps[i].value); break;
			case 'checkbox': if (inps[i].checked) rslt[rslt.length] = inps[i].name + '=on'; break;
			default: rslt[rslt.length] = inps[i].name + '=' + parse_vals(inps[i].value);
			}
		}
	}

	function parse_vals(val) {
		//hoge_ascii komt er via ie+esc goed in, ff+esc: niets gevonden ff+encU: server too busy
		//geslashde l : Wroclaw  escape: Wroc%u0142aw  encodeURIComponent: Wroc%C5%82aw
		if (ie||cr) val = escape(val);
		return val;
	}

	return rslt.join('&');
}//get_elm_val

/* settings menu */
var panel_tab = '';
function panel_req(inv, pgm) {
	if (typeof inv == 'object') inv = inv.id; //het tabje als id
	tab_naar(inv);
	inv = inv.split('_')[1].toLowerCase();
	panel_tab=document.getElementById('tab_txt_' + inv);
	if (document.getElementById('tab_tool_' + inv)) document.getElementById('tab_tool_' + inv).style.display='';
	removeChildNodes(panel_tab);//tab leeg maken
	panel_tab.appendChild(document.getElementById('preloader_block').cloneNode(true));//klonen zandloper uit infopr2
	panel_tab.getElementsByTagName('*')[0].style.display='block';
	doAjax('/easyorder/'+pgm, panel_handle);
}
function panel_handle() {
	insertHTML(panel_tab, this.req.responseText); 
	set_focus(panel_tab);
	scale_scrim();
}

function set_focus(obj) {//zet focus op 1e nwe invoer//vervang scripjes aan einde html fragment
	inps = obj.getElementsByTagName('*');
	for (i=0; i<inps.length; i++) {
		if (inps[i].tagName == 'TEXTAREA' || inps[i].tagName == 'SELECT' /*|| inps[i].type == 'text'*/) {
			inps[i].focus(); return;
		}
	}
}
function validate_form() {//error handler bij submit_form
	try {cursorReset(true)}
	catch(e) {}

	/* XML-BOOM of HTML-FRAGMENT */
	cmds = 0;
	try {if (this.req.responseXML.getElementsByTagName("*").length==0) cmds=1}//ie7
	catch(e) {if (!this.req.responseXML) cmds=2}//ff
	if (cmds!=0) {//HTML-FRAGMENT:
/*		if (this.req.responseText.indexOf('<!DOCTYPE html') > -1) {//knip de context eruit om zoveel mogelijk fouten te voorkomen
			romp = this.req.responseText.split('</bo'+'dy>')[0].split('<bo'+'dy')[1];
			r = romp.indexOf('>');
			romp=romp.substring(r+1)
			virt = document.createElement('div');
			insertHTML(virt, romp);
						
			
			return false;
		}*/
		if (this.req.responseText.indexOf('redirect:') > -1) {
			redirectLocation = this.req.responseText.substr(this.req.responseText.indexOf('redirect:') +9);
			return true;
		}
		if (this.req.responseText.indexOf('NEW_PANEL') == -1) {
			try {insertHTML(panel_tab, this.req.responseText);
			set_focus(panel_tab);}
			catch(e){}
			return false;



		} else {
			panref = document.getElementById('panel');
			panref.style.top = (document.documentElement.scrollTop + 64) +'px';
			insertHTML(panref, this.req.responseText);
			if (panref.style.display == 'none') toon_verberg(panref);
			return false;
		}
	}
	//XML-BOOM:
	/* herladen? */
	var reloadPage = 'false';
	if (this.req.responseXML.getElementsByTagName("reload").length > 0) {
		reloadPage = this.req.responseXML.getElementsByTagName("reload")[0].firstChild.nodeValue;
	}
	/* formName? */
	var formName = null;
	if (this.req.responseXML.getElementsByTagName("formName").length > 0) {
		if (this.req.responseXML.getElementsByTagName("formName")[0].firstChild) {
			formName = this.req.responseXML.getElementsByTagName("formName")[0].firstChild.nodeValue;
		}
	}	
	/* opschonen */
	//var alerts = document.getElementsByName("aj_alert"); //de tijdelijke
	var alerts = getElementsByName_iefix('span', 'aj_alert') //de tijdelijke
	for (var i=alerts.length -1;i>=0;i--) alerts[i].parentNode.removeChild(alerts[i]);
	//var alerts = document.getElementsByName("aj_succes");//de vaste
	var alerts = getElementsByName_iefix('span', 'aj_error') //de vaste
	for (var i=alerts.length -1;i>=0;i--) {
		if (alerts[i].childNodes[0]) {
			alerts[i].removeChild(alerts[i].childNodes[0]);
		}	
	}
	var alerts = getElementsByName_iefix('span', 'aj_succes') //de vaste
	for (var i=alerts.length -1;i>=0;i--) {
		if (alerts[i].childNodes[0]) {
			alerts[i].removeChild(alerts[i].childNodes[0]);
		}
	}
	/* boodschappen weergeven */
	var errorMessages = this.req.responseXML.getElementsByTagName("msg");
	for (var i=0;i<errorMessages.length;i++) {
		var inputName = errorMessages[i].getAttribute("fld");
		var spanNode = document.createElement("span");
		spanNode.setAttribute("name", "aj_alert");
		spanNode.className = "alert";
		var breakNode = document.createElement("BR");
		var msgNode = document.createTextNode(errorMessages[i].firstChild.nodeValue);
		var errorNodes = getElementsByName_iefix('h4', 'error_alert');
		if (errorNodes.length >0) {
			if (errorNodes[0].firstChild) errorNodes[0].firstChild.parentNode.removeChild(errorNodes[0].firstChild);
		}
		errorNodes = getElementsByName_iefix('h4', 'aj_error');
		if (errorNodes.length >0) {
			if (errorNodes[0].firstChild) errorNodes[0].firstChild.parentNode.removeChild(errorNodes[0].firstChild);
		}
		errorNodes = getElementsByName_iefix('h4', 'aj_succes');
		if (errorNodes.length >0) {
			if (errorNodes[0].firstChild) errorNodes[0].firstChild.parentNode.removeChild(errorNodes[0].firstChild);
		}
		if (inputName.indexOf("succes") >0 && reloadPage == 'false') {
			spanNode = document.getElementById(inputName);
			if (inputName.indexOf("NFOAS6") > 0) {
				document.forms['as6'].elements['PRODUK'].value = '';
				document.forms['as6'].elements['AANTAL'].value = '';
			}	
			if (inputName.indexOf("NFOUS3") > 0) {
				panel_req(document.getElementById('tab_infous3'), 'infous3');
				return false;
			}
			spanNode.appendChild(msgNode);
		} else if (inputName.indexOf("succes") >0 && reloadPage == 'true') {
			spanNode = document.getElementById(inputName);
			var msgNode = document.createTextNode(errorMessages[i].firstChild.nodeValue + ' Reloading page...');
			setTimeout('reloading()', 200);
			spanNode.appendChild(msgNode);
		} else if (inputName.indexOf("error") >0) {
			spanNode = document.getElementById(inputName);
			spanNode.appendChild(msgNode);
		} else {
	 		spanNode.appendChild(breakNode);
			spanNode.appendChild(msgNode);
			if (formName != null) {
				inpNode = document.forms[formName].elements[inputName];
				if (!inpNode.tagName) {
					inpNode = document.forms[formName].elements[inputName][0];
				}//radio's
			} else {
				inpNode = document.getElementsByName(inputName)[0];
			}
			rowNode=zoek_hoger(inpNode,'class','total_item');
			rowNode.appendChild(spanNode);
		}
	}
	try {
		document.getElementById('generic_ok').setAttribute('status','2')
	}
	catch(e) {}
}
/******************* AJAXEN *******************/

function toon_verberg(invoer, aan) {
	// te schakelen element/elementarray of id mag geen display none in cascade hebben
	var arr = invoer; // elementen array
	if (typeof invoer == 'object' && invoer.length==null) arr=[invoer]; //element
	if (typeof invoer == 'string') arr=[document.getElementById(invoer)]; //id
	for (a=0; a<arr.length; a++) {
		if (typeof arr[a] == 'string') arr[a]=document.getElementById(arr[a]); //array van id's
		if (aan==null) tv = stijl(arr[a]).display == 'none'; else tv=aan;
		if (tv) arr[a].style.display=''; else arr[a].style.display='none';
		if (arr[a].className.indexOf('layer')>-1) {
			document.getElementsByTagName('body')[0].appendChild(arr[a]);
			if (ie6) {
				if (tv) stijl_reg('#context select','visibility: hidden',1); else stijl_reg('#context select','visibility: visible',1);
			}
		}
		if (arr[a].className.indexOf('panel')>-1 || arr[a].className.indexOf('maximal')>-1) {
			if (tv) {
				scale_scrim();
				document.getElementById('scrim').style.display = '';
			} else {
				document.getElementById('scrim').style.display = 'none';
			}
		}
		obs = document.getElementsByTagName('object');
		if (obs.length > 0) {//flash-swf uitschakelen
			for (i=0; i<obs.length; i++) if (tv) obs[i].style.visibility='hidden'; else obs[i].style.visibility='visible';
		}
	}
}
window.onresize = scale_scrim;
function scale_scrim() {
	document.getElementById('scrim').style.width=canvas_breedte()+'px';
	document.getElementById('scrim').style.height=canvas_hoogte()+'px';
}
function canvas_breedte() {//haal de grootste maat op, ofwel van het venster, ofwel van de inhoud
	maat = [
		document.getElementsByTagName('html')[0].clientWidth, document.getElementsByTagName('html')[0].offsetWidth, document.getElementsByTagName('html')[0].scrollWidth,
		document.getElementsByTagName('body')[0].clientWidth, document.getElementsByTagName('body')[0].offsetWidth, document.getElementsByTagName('body')[0].scrollWidth,
		document.documentElement.clientWidth, document.documentElement.offsetWidth, document.documentElement.scrollWidth,
		document.body.clientWidth, document.body.offsetWidth, document.body.scrollWidth
	];
	antw = 0;
	for (i=0; i<maat.length; i++) {
		if (!isNaN(maat[i])) antw = Math.max(antw,maat[i]);
	}
	return antw;
}
function canvas_hoogte() {//haal de grootste maat op, ofwel van het venster, ofwel van de inhoud
	maat = [
		document.getElementsByTagName('html')[0].clientHeight, document.getElementsByTagName('html')[0].offsetHeight, document.getElementsByTagName('html')[0].scrollHeight,
		document.getElementsByTagName('body')[0].clientHeight, document.getElementsByTagName('body')[0].offsetHeight, document.getElementsByTagName('body')[0].scrollHeight,
		document.documentElement.clientHeight, document.documentElement.offsetHeight, document.documentElement.scrollHeight,
		document.body.clientHeight, document.body.offsetHeight, document.body.scrollHeight
	];
	antw = 0;
	for (i=0; i<maat.length; i++) {
		if (!isNaN(maat[i])) antw = Math.max(antw,maat[i]);
	}
	return antw;
}

function removeChildNodes(t_ref) {
	while (t_ref.childNodes[0]) t_ref.removeChild(t_ref.childNodes[0]);
}

function insertHTML() {
	var trg = arguments[0];
	var src = arguments[1];
	var pos = arguments[2];//null=overwrite; boolean=append; obj=insertbefore
	//programma fouten
//	if (trg==null || trg=='') {meld('geen doel opgegeven voor' + src.substr(0,150)); return}
	if (src.substr(0,25).indexOf('<'+'!-- CHANGE --'+'>')>-1 || src.substr(0,5).indexOf('<'+'HTML'+'>')>-1) {meld ('versie 1 invoer voor ' + trg.id); return;}

	if (pos==null) removeChildNodes(trg);
	if (typeof pos != 'object') pos=null;
	var neu, tag, attsrc, att, qut, eql, qnd, idx, cls, tmp, scp;

	x = String.fromCharCode(1);
	src = src.replace(/</g,x+'<');
	src = src.replace(/>/g,'>'+x);
	src = src.replace(/\u00a0/g,' ');//nbsp als teken
	src = src.split(x);// een array met open tags, sluit tags en tekstnodes
	var act = trg;
	for (var i=0; i<src.length; i++) {
		if (src[i].indexOf('<!--') == 0 && src[i].indexOf('-->') < 0) {//een commentaar over meerdere regels
			var j=i;
			while (src[i].indexOf('-->') < 0) {//tot einde commentaar regels verplaatsen
				j++;
				src[i] += src[j];
				src[j] = '';
			}
		}
	}
	for (var i=0; i<src.length; i++) {
		if (src[i].indexOf('<script') == 0 && src[i].indexOf('</sc'+'ript>') < 0) {//een script over meerdere regels
			var j=i+2;
			while (src[j].indexOf('</sc'+'ript>') < 0) {//tot einde script regels verplaatsen
				src[i+1] += src[j];
				src[j] = '';
				j++;
			}
		}
	}
	for (var i=0; i<src.length; i++) {if (src[i].length>0) {
		if (src[i].charAt(0) == '<' && src[i].charAt(src[i].length-1) == '>') {//element-node
			switch (src[i].charAt(1)) {
			case '/': //sluit tag van een open node
				if (src[i].toLowerCase().indexOf(act.tagName.toLowerCase()) < 0) {
					if (tag != 'script' && tag != 'style' && src[i] != '</fragment>') {
						meld('ongebalanceerde html bij een '+act.tagName+' #'+act.id+' .'+act.className+'; met '+ src[i] + '\n(voor '+ trg.id + ')');
						bronn = '';
						for (ii=Math.max(i-15,0); ii< Math.min(i+15,src.length); ii++) bronn += src[ii] + '\n';
						meld(bronn);
					}
				}
				if (tag != 'script' && tag != 'style' && src[i] != '</fragment>') act = act.parentNode;
				break;
			case '!': //commentaar
				try {
					neu = document.createComment(src[i].substr(4,src[i].length-7));
					act.appendChild(neu);
				}
				catch(e) {}//ie5.5
				break;
			default: // een open- of een enkelvoudige tag: inbouwen
				tag = src[i].substr(1).split('>')[0].split('/')[0].split(' ')[0].toLowerCase();
				if (tag != 'fragment') {
					try {neu = document.createElement(src[i]);}//ie 6/7, to have clickable radiobuttons
					catch(e) {neu = document.createElement(tag);insAtt();}//ff
					if (tag == 'script' || tag == 'style') {//omleiding: alle scripts in de HEAD parkeren; anders laadt msie het script soms niet
						scp = neu;
						document.getElementsByTagName('head')[0].appendChild(neu);
					} else {
						if (act==trg) act.insertBefore(neu,pos); else act.appendChild(neu);
						act = neu;
						if (src[i].charAt(src[i].length-2)=='/' || tag=='br' || tag=='input' || tag=='img' || tag=='link' || tag=='meta' || tag=='param' || tag=='hr') act = act.parentNode;
					}
				}
			} //switch
		} else {//tekst-node
			if (tag == 'script' || tag == 'style') {
				if (navigator.userAgent.indexOf('MSIE') > -1) {//onderscheid v.w. inous3x
					scp.text = src[i]; //ie
				} else {//ff3.5
					neu = document.createTextNode(src[i]);
					scp.appendChild(neu);
				}
			} else {// entiteiten parsen
				src[i] = insChar(src[i]);
				src[i] = insElm(src[i]);
				src[i] = src[i].replace(/&#124;/g,'|'); //124
				src[i] = src[i].replace(/&quot;/g,'\u0022'); //#34
				src[i] = src[i].replace(/&amp;/g,'\u0026');  //#38
				src[i] = src[i].replace(/&apos;/g,'\u0027'); //#39
				src[i] = src[i].replace(/&lt;/g,'\u003c');  //#60
				src[i] = src[i].replace(/&gt;/g,'\u003e');  //#62
				src[i] = src[i].replace(/#/g,'\u0023');  //#
				src[i] = src[i].replace(/&nbsp;/g,'\u00a0'); //160
				neu = document.createTextNode(src[i]);
				act.appendChild(neu);
			}
		}
	}}

	function insChar(val) {//met ie dezelfde karakerset (rsquo/146/8217)
		for (j=0; j<val.length; j++) {
			n = val.charCodeAt(j);
			if (n>127) {
				val = val.split(String.fromCharCode(n)).join('&#'+String(n)+';')
			}
		}
		return val;
	}
	function insElm(val) {//entiteiten &euro; e.d.
		tmp = document.createElement("div");
		tmp.innerHTML = val;
		val = tmp.innerHTML;
		return val;
	}
	function insEnt(val) {//v.w. FCKedit
		return val.replace(/&#34;/g,'\u0022').replace(/&#38;/g,'\u0026').replace(/&#39;/g,'\u0027').replace(/&#60;/g,'\u003c').replace(/&#62;/g,'\u003e');
	}
	function insAtt() {//attributen, niet voor ie
		attsrc = src[i].substr(1,src[i].length-2);// de tag zonder <>
		if (attsrc.charAt(attsrc.length-1)=='/') attsrc = src[i].substr(1,src[i].length-3); // en zonder eind-/
		att = attsrc.split(' ');// array met namen en waarden, sommige waarden verdeeld over meerdere leden, sommige namen zonder waarden
		if (att.length > 1) {
			qot = null;
			for (var j=1; j<att.length; j++) {
				if (qot==null) {//begin quote zoeken
					eql = att[j].indexOf('=');
					if (eql > -1) {
						qot=att[j].charAt(eql+1);//soort quote
						qnd=att[j].lastIndexOf(qot);
						if (qnd > eql+1) qot=null;
						idx=j;
					}
				} else {//sluit quote zoeken in volgend array lid, b.v. als het een claas met meerdere namen is.
					cls = att[j].indexOf(qot);
					if (cls > -1) {
						for (var k=idx+1; k<=j; k++) {//waarde herstellen
							att[idx]+=' '+att[k];
							att[k]='';
						}
						qot=null;
					}
				}
			} //atts
		
			for (var j=1; j<att.length; j++) {
				if (att[j].length>2) {//array met geldige attributen
					if (att[j].indexOf('=') == -1) {// enkelvoudige attributen
						prop = att[j].toLowerCase();
						switch (prop) {
						case 'selected': neu.selected = true; neu.setAttribute('js_sel', 'sel'); break;
						case 'checked': neu.checked = true; neu.setAttribute('js_chk', 'chk'); break;
						default: neu.setAttribute(prop, prop);
						}
					} else {//naam/waarden paren
						eql = att[j].indexOf('=');
						pair = [att[j].substr(0,eql).toLowerCase(),att[j].substr(eql+1)]							
						qot = pair[1].charAt(0);
						val = pair[1].substr(1,pair[1].lastIndexOf(qot)-1);
						switch (pair[0]) {//voor IE
						case 'alt': neu.setAttribute(pair[0], insElm(insChar(val))); break;
						case 'title': neu.setAttribute(pair[0], insElm(insChar(val))); break;
						case 'class': neu.className = val; break;
						case 'style': neu.style.cssText = val; break;
						case 'onclick': neu.onclick = new Function (insEnt(val)); neu.setAttribute('on_click', val); break; //extra attribute for extra reference
						case 'onchange': neu.onchange = new Function (val); neu.setAttribute('on_change', val); break;
						case 'onsubmit': neu.onsubmit = new Function (val); neu.setAttribute('on_submit', val); break;
						case 'onblur': neu.onblur = new Function (val); neu.setAttribute('on_blur', val); break;
						case 'onfocus': neu.onfocus = new Function (val); neu.setAttribute('on_focus', val); break;
						case 'onmouseover': neu.onmouseover = new Function (val); break;
						case 'onmouseout':
						//if (val.indexOf('level_exit')==-1)
						neu.onmouseout = new Function (val);
							break;
						case 'onmouseleave': neu.onmouseleave = new Function (val); break;
						default: neu.setAttribute(pair[0], val);
						}
					}
				} //geldige atts
			}
		}	//fn insAtt
	}
}/*insertHTML*/

function getal(n,l) {var s="000000000000000" + String(n);return s.substr(s.length-l);}

/******************* MENUS *******************/
var menu_timeout;
function menu_view(obj) {//obj is een group_container
	obj_title = zoek_lager(obj, 'tag', 'h3')[0];
	if (!obj_title) obj_title = zoek_lager(obj, 'tag', 'strong')[0];
	obj_list = zoek_lager(obj, 'class', 'group_list')[0];

	if (obj_title.className == 'selected') {//klik op een geopend menu
		if (stijl(obj_title).display != 'inline') obj_list.style.display = 'none';//op een vertikaal menu
		obj_title.className = '';
		return;
	}

	obj_section = obj.parentNode.parentNode;
	obj_sct_list = zoek_lager(obj_section, 'class', 'group_list');
	
	for (i=0;i<obj_sct_list.length;i++) {
		if (obj_sct_list[i] == obj_list) {
			obj_list.style.display = 'block';
		} else {
			obj_sct_list[i].style.display = 'none';
		}
	}

	obj_sct_title = obj_section.getElementsByTagName('h3');

	for (i=0;i<obj_sct_title.length;i++) {
		if (obj_sct_title[i] == obj_title) {
			obj_title.className += ' selected';
		} else {
			obj_sct_title[i].className = obj_sct_title[i].className.replace(/selected/g, '');
		}
	}

	// hou hem op het scherm
	objy = find_position(obj)['y'];
	winscroll = window.scrollY ? window.scrollY : document.documentElement.scrollTop;
	if (objy < winscroll) scrollTo(0, objy);

	//weer sluiten als je horizontaal bent
	if (stijl(obj_title).display == 'inline') {
		clearTimeout(menu_timeout);
		if (obj_list) menu_timeout = setTimeout("obj_list.style.display='none'",3000);
	}
}

function menu_list_click(obj) {
	if (obj.parentNode.parentNode.id == 'main_menu') obj.style.display = 'none';
}
function objprops(obj){return ' '+obj.tagName+'#'+obj.id+'.'+obj.className+' '}
function trim(val) {
	if (val=='') return val;
	val = val.replace(/^\s+/,'');
	val = val.replace(/\s+$/,'');
	return val;
}
/* nomenclature */
function ptr_init() {//juiste lijstje openzetten//class=selected//niets dmv flauwekul in ptr_name
	try {
	do_link = document.getElementById('nav_nom_'+ptr_name).getElementsByTagName('a')[0];
	if (!do_link.onclick) return;
	do_link.onclick();
	} catch(e) {}
}
function ptr_load(id, tree, type){
	//schrijf flauwekul in cookie als de lijst dicht moet staan
	if (document.getElementById('listptr'+tree).style.display != 'block') schrijf_lokaal('ptr_name', tree, false, '/', false, false); else schrijf_lokaal('ptr_name', '*****', false, '/', false, false);
	ptr_name = tree;
	if (document.getElementById('listptr'+ptr_name).getElementsByTagName('*').length < 2) {
		var url = '/easyorder/ajptr?parm=' +state+ '&id=&code=' +ptr_name+ '&depth=1&type=' +type;
		if (tree == 'brd') url += '&top=1';
		url += '&srchTrms=&sort=PTRUNIASC';
		document.getElementById('listptr'+ptr_name).appendChild(document.getElementById('preloader_menu').cloneNode(true));
		doAjax(url, ptr_show);
	} else {
		obj = document.getElementById(ptr_item);
		if (!obj || ptr_item == '*****') return;
		sct = zoek_hoger(obj, 'class', 'section');
		if (!sct) return;
		elms = sct.getElementsByTagName('li');
		for (i=0;i<elms.length;i++) {
			if (elms[i] == obj) {
				elms[i].className += ' selected';
			} else {
				elms[i].className = elms[i].className.replace(/ selected/g, '');
			}
		}
	}
}
function ptr_show() {
	var rsText = this.req.responseText;
	insertHTML(document.getElementById('listptr'+ptr_name), rsText, null);
}
function ptr_auto(tree, obj) {//ptr_load voor categorien die menuopties krijgen dor autorisaties
	schrijf_lokaal('ptr_name', tree, false, '/', false, false);
	ptr_name = tree;
}
function ptr_context(tree, obj) {//ptr_load + menu_view voor categorien die in context openen
	schrijf_lokaal('ptr_name', tree, false, '/', false, false);
	ptr_name = tree;
	elms = obj.parentNode.parentNode.getElementsByTagName('*'); //vanuit section
	for (i=0;i<elms.length;i++) {
		if (elms[i].className=='group_list') elms[i].style.display = 'none'; //zet alles dicht
		if (elms[i].tagName == 'H3') {
			if (elms[i].parentNode == obj) {
				elms[i].className += ' selected';
			} else {
				elms[i].className = elms[i].className.replace(/ selected/g, '');
			}
		}
	}
}
function ptr_listitem(obj) {
	schrijf_lokaal('ptr_item', obj.id, false, '/', false, false);
	sct=zoek_hoger(obj, 'class', 'section');
	if (sct == null) sct=zoek_hoger(obj, 'class', 'css_horizon');
	if (sct != null) {
		elms=sct.getElementsByTagName('li');
		for (i=0;i<elms.length;i++) {
			if (elms[i] == obj) {
				elms[i].className += ' selected';
			} else {
				elms[i].className = elms[i].className.replace(/ selected/g, '');
			}
		}
	}
}
function listHisOrd(){
	if (document.getElementById('listHisOrd').childNodes.length <= 1) {
		var url = '/easyorder/ajhisord?parm=' +state;
		document.getElementById('listHisOrd').appendChild(document.getElementById('preloader_menu').cloneNode(true));			
		doAjax(url, showHisOrd);
	}
}
function showHisOrd() {
	var rsText = this.req.responseText;
	insertHTML(document.getElementById('listHisOrd'), rsText);
}	

/******************* E25 *******************/

/* mag weg als de promoties er weer vast ingaan */
function showNewPromotion() {
	var rsText = this.req.responseText;
	var s = rsText.indexOf('containerB[') +11;
	var e = rsText.indexOf(']containerE');
	var containerId = rsText.substring(s, e);
	try {insertHTML(document.getElementById('promo_'+containerId), rsText);}
	catch(e) {
		try {insertHTML(document.getElementById(containerId), rsText);}
		catch(e) {} 
	} 
}

/* cookies */
function schrijf_lokaal(naam, waarde, duur, pad, domein, veilig) {
	//duur in dagen
	document.cookie = naam + "=" + escape(waarde) + ((duur) ? "; expires=" + tot() : "") +
		((pad) ? "; path=" + pad : "") + ((domein) ? "; domain=" + domein : "") + ((veilig) ? "; secure" : "");
	function tot() {
		nu = new Date();
		nu.setTime(nu.getTime()+(duur*24*60*60*1000));
		return nu.toGMTString();
	}
}

function lees_lokaal(naam, verstek) {
	leden = document.cookie.split(';');
	for (i=0; i<leden.length; i++) {
		p = leden[i].indexOf(naam+'=');
		if (p>-1) return leden[i].substr(p+naam.length+1);
	}
	return verstek;
}

function wis_lokaal(naam) {
	schrijf_lokaal(naam, '', -2, false, false, false);
}

/* FORMS */
function submitenter(myfield,e)	{//bsp=8, del,Fxx,arrow=0
	if (last_key(e) == 13) {
		myfield.form.submit();
		return false;
	} else {
		return true;
	}
}
function last_key(e) {
	if (window.event) return window.event.keyCode;
	if (e) return e.which;
	return true;
}
function focusOnField(formName,fieldName,selected){
	if (fieldName == '') return;
	try {
		frm = zoek_lager(document.getElementsByTagName('body')[0],'name',formName)[0];
		inp = zoek_lager(frm,'name',fieldName)[0];
		if (selected) inp.select(); else inp.focus();
	}
	catch(e){}
}
function showError(formName,fieldName){
	if (formName != '' || fieldName != '') return;
	try {//foute veldnamen mogen de rest van de javascript niet laten crashen
		frm = zoek_lager(document.getElementsByTagName('body')[0],'name',formName)[0];
		inp = zoek_lager(frm,'name',fieldName)[0];
		inp.className = 'alert_field';
		focusOnField(formName,fieldName,false);
	}
	catch(e) {}
}

/******* ENHANCEMENTS FOR E25 ********/
function new_form_after() {new_panel('DSPINFTMPL');}
function reloading() {location.reload(true)}
function stijl(obj){obj.currentStyle ? st=obj.currentStyle : st=document.defaultView.getComputedStyle(obj, '');return st;}
function stijl_reg(sel,reg,n){
	if (isNaN(n)) n=1;
	try {document.styleSheets[n].addRule(sel,reg);}//ie4+
	catch(e) {document.styleSheets[n].insertRule(sel+'{'+reg+'}', document.styleSheets[n].cssRules.length);}//ns6+
}
function blader(een, met, mxm, pre, ids){
	een+=met;
	if (een>ids.length-mxm) een=acc_array.length-mxm;
	if (een<1) een=0;
	for (i=0; i<ids.length; i++) {
		elem=document.getElementById(pre+ids[i]);
		if (i>=een && i<een+mxm) elem.style.display='block'; else elem.style.display='none';
	}
}

/* WAITING FOR A NOMENCLATURE LEVEL */
function cursor_wait() { //we are waiting for program to reload
	//document.body.style.cursor = 'wait'; //cursor as hourglass
	toon_verberg('preloader_cnt', true);
}
function cursorWait(showWait) { //conditioned start of entertainment
	if (showWait) cursor_wait();
}

function reset_wait() {
	//document.body.style.cursor = '';
	toon_verberg('preloader_cnt', false);
}
function cursorReset(resetWait) { //conditioned start of entertainment
	if (resetWait) reset_wait();
}

/* ORDER04 */
function updateFieldParentDoc(form, targ, field, value, subm) {
	document.forms[form].elements[field].value = value;
	if (targ != '') document.forms[form].target = targ;
	if (subm) document.forms[form].submit();
}

/* ZOEKEN */
function search_init() {
//	schrijf_lokaal('cat_search', document.getElementsByName('searchwords')[0].value, false, '/', false, false);
	set_search_list(document.getElementsByName('searchwords')[0].value, null);
}
function set_search_list(act, e) {
	if (!act && last_key(e) != 13) return; //only inital or onkeypress=enter
	cat_trms = document.getElementsByName('catSrchTrms')[0];
	ref_trms = document.getElementsByName('refSrchTrms')[0];
	if(!ref_trms) return; //simplesrch
//cat_trms.type = 'text';
	if (last_key(e) == 13) {//enter of return toets
		cat_trms.value += ' ' + ref_trms.value;
	}
	if (act) {//lees initieel uit resultaat pagina
		cat_trms.value = act;
	}
	//zoeklijst opschonen
	swvals = clean_search_list(cat_trms.value);
	cat_trms.value = swvals.join(' ');
	if (last_key(e) == 13) return;
	ref_trms.value='';
	ref_trms.focus();
	if (cat_trms.value=='') return; //only in sensible search results
	//toonlijst maken
	swform = document.getElementById('selectorRefine');
	swul = swform.getElementsByTagName('ul')[1];
	swli = swform.getElementsByTagName('li')[0];//de voorbeeld li
	swins = swul.getElementsByTagName('input');
	//clear input, listing
	removeChildNodes(swul);
	//read array, write list
	for (i=0; i<swvals.length; i++) {
		swcopy = swli.cloneNode(true);
		swul.appendChild(swcopy);	//evt met insertHTML
		swins[swins.length-1].value=swvals[i];
	}
	swform.style.display='block';
	document.getElementById('normal_search').style.display = 'none';
	document.getElementById('refine_search').style.display = 'block';
}
function clean_search_list(inv) {//make a clean array from a string with space separation
	vals = trim(inv).split(' ');
	//verwijder lege waardes en doublures
	for (i=vals.length-1; i>0; i--) for (j=i-1; j>=0; j--) if (vals[i] == vals[j] || vals[i] == '') vals.splice(i,1);
	if (vals.length == 1 && vals[0].length < 2) return [];
	return vals;
}
function get_search_list() {
	cat_trms = document.getElementsByName('catSrchTrms')[0];
	ref_trms = document.getElementsByName('refSrchTrms')[0];
	cat_trms.value = ref_trms.value;
	if (document.getElementsByName('searchwords').length == 0) return;
	//only in search results
	swform = document.getElementById('selectorRefine');
	swins = swform.getElementsByTagName('ul')[1].getElementsByTagName('input');
	//read listing
	for (i=0; i<swins.length; i++) cat_trms.value += ' ' + swins[i].value;
	swvals = clean_search_list(cat_trms.value);
	cat_trms.value = swvals.join(' ');
	if (swvals.length==0) swform.style.display='none'; else swform.style.display='block';
}
function submit_search() {//criterium om zoekopdracht te laten doen
	return (document.getElementsByName('catSrchTrms')[0].value.length > 1)
}
function clear_search_word(obj) {
	swform = document.getElementById('selectorRefine');
	swins = swform.getElementsByTagName('ul')[1].getElementsByTagName('input');
	obj.parentNode.parentNode.removeChild(obj.parentNode);
	if (swins.length==0) {
		clear_search_words();
		return;	
	}
/*	wis_lokaal('cat_search');20101108*/
	get_search_list();
}
function clear_search_words() {
	swform = document.getElementById('selectorRefine');
	swul = swform.getElementsByTagName('ul')[1];
	swins = swul.getElementsByTagName('input');
	removeChildNodes(swul);
	if (document.getElementsByName('searchwords')[0]) {document.getElementsByName('searchwords')[0].parentNode.removeChild(document.getElementsByName('searchwords')[0]);}
	document.getElementById('normal_search').style.display = 'block';
	document.getElementById('refine_search').style.display = 'none';
	document.getElementsByName('catSrchTrms')[0].value = '';
	swform.style.display = 'none';
//	wis_lokaal('cat_search');
	document.getElementById('get_search_cookie').style.display='none';
}
//function local_searchterms() {
//	set_search_list(unescape(lees_lokaal('cat_search', '')), null)
//}
/* CSS MODE HANDLING */
function showCOULoginBox() {
	var rsText = this.req.responseText;
	if (!document.getElementById('couLogin')) showCOU();
	try {
		insertHTML(document.getElementById('couLogin'), rsText);
		document.getElementById('page_opening').appendChild(document.getElementById('login_interact'));
	}
	catch(e) {} 
}
function showCOUDetails() {
	var rsText = this.req.responseText;
	if (!document.getElementById('couLogin')) showCOU();
	try {insertHTML(document.getElementById('couDetail'), rsText);}
	catch(e) {}
	document.getElementById('accountDetail').parentNode.removeChild(document.getElementById('accountDetail'));
}
function showCOUContact() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('contactDetail'), rsText);}
	catch(e) {} 
}
function showCOUBasket() {
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('main_menu'), rsText, true);}
	catch(e) {} 
	document.getElementById('newBasket').parentNode.removeChild(document.getElementById('newBasket'));
}
function showCOU() {/* courier */
	//persoonsnaam, klantnaam, [klantnr] {bewerk}{selecteer}, producten: p, subtotaal: s, {afrekenen}
	couDiv = document.getElementById('page_opening');
	couLay = document.createElement('div');
	couLog = document.createElement('span');
	couLog.setAttribute('id','couLogin');
	couDiv.appendChild(couLog);
	couDet = document.createElement('span');
	couDet.setAttribute('id','couDetail');
	couDiv.appendChild(couDet);
}

function showNEWLoginBox() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('newLoginBox'), rsText);}
	catch(e) {} 
}
function showNEWDetails() {
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('accountDetail'), rsText);}
	catch(e) {} 
}
function showNEWContact() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('contactDetail'), rsText);}
	catch(e) {} 
}
function showNEWBasket() {
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('newBasket'), rsText);}
	catch(e) {} 
	try {
		var percentageOrderWeight = document.getElementById("percentMass").getAttribute('percentage');
		var totalOrderWeight = document.getElementById("percentMass").getAttribute('mass');
		try {
			setProgressBarBgPos('percentMass', percentageOrderWeight);
			if (parseInt(percentageOrderWeight) != 0) {
				insertHTML(document.getElementById('pMass'), totalOrderWeight + ' (' + percentageOrderWeight + '%)');
			} 
		}
		catch(e) {} 
	}
	catch(e) {}
	try {
		var percentageOrderVolume = document.getElementById("percentVolume").getAttribute('percentage');
		var totalOrderVolume = document.getElementById("percentVolume").getAttribute('volume');
		try {
			setProgressBarBgPos('percentVolume', percentageOrderVolume);
			if (parseInt(percentageOrderVolume) != 0) {
				insertHTML(document.getElementById('pVolume'), totalOrderVolume + ' (' + percentageOrderVolume + '%)');
			} 
		}
		catch(e) {} 
	}
	catch(e) {} 
}
function showMODLoginBox() {/* modern */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('newLoginBox'), rsText);}
	catch(e) {}
	mixMODYou();
}
function mixMODYou() {
	yd=document.getElementById('your_details');
	lg=document.getElementById('login_greet');
	if (!lg || !yd) return; 
	yd.insertBefore(lg.getElementsByTagName('span')[lg.getElementsByTagName('span').length-1],yd.getElementsByTagName('h4')[0]);
	la=document.getElementById('login_interact').getElementsByTagName('a');
	for (i=0; i<la.length;i++) document.getElementById('det_buttons').appendChild(la[i]);
}
function showMODDetails() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('accountDetail'), rsText);}
	catch(e) {}
	mixMODYou();
}
function showMODContact() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('contactDetail'), rsText);}
	catch(e) {} 
}
function showMODBasket() {/* classic */
	var rsText = this.req.responseText;
	try {insertHTML(document.getElementById('newBasket'), rsText);}
	catch(e) {} 
	try {
		var percentageOrderWeight = document.getElementById("percentMass").getAttribute('percentage');
		var totalOrderWeight = document.getElementById("percentMass").getAttribute('mass');
		try {
			setProgressBarBgPos('percentMass', percentageOrderWeight);
			if (parseInt(percentageOrderWeight) != 0) {
				insertHTML(document.getElementById('pMass'), totalOrderWeight + ' (' + percentageOrderWeight + '%)');
			} 
		}
		catch(e) {} 
	}
	catch(e) {}
	try {													
		var percentageOrderVolume = document.getElementById("percentVolume").getAttribute('percentage');
		var totalOrderVolume = document.getElementById("percentVolume").getAttribute('volume');
		try {
			setProgressBarBgPos('percentVolume', percentageOrderVolume);
			if (parseInt(percentageOrderVolume) != 0) {
				insertHTML(document.getElementById('pVolume'), totalOrderVolume + ' (' + percentageOrderVolume + '%)');
			} 
		}
		catch(e) {} 
	}
	catch(e) {} 
}

/* Set the background position (parameter percentage as int) */
function setProgressBarBgPos(id, percentage) {
	try {var bar = document.getElementById(id);}
	catch(e) {return;}
	if (bar) {
	var initialPos = (0 - bar.width) -1;
	var pxPerPercent = bar.width /100;
	// adjust the background position
	var percentagePos = (pFloat(percentage) * pxPerPercent);
	if (percentagePos > 116 ) {
		percentagePos = 117;
	}	
	bar.style.backgroundPosition = (initialPos + percentagePos) + "px 50%";
	if (pFloat(percentage) < 100.01) bar.style.backgroundImage = "url(/images/percentImage_back1.png)";
	// if (pFloat(percentage) > 60) bar.style.backgroundImage = "url(/images/percentImage_back2.png)";	
	// if (pFloat(percentage) > 75) bar.style.backgroundImage = "url(/images/percentImage_back3.png)";
	if (pFloat(percentage) > 100.01) bar.style.backgroundImage = "url(/images/percentImage_back4.png)";
	// Adjust the alt & title of the image
	bar.alt = percentage + "%";
	bar.title = percentage + "%";
	}
}

function new_custsvs(obj) {
	if (!document.getElementById('customerService')) {
		doAjax('/easyorder/ajcntbox?pageId='+pageId+'&mode=STP', make_custsvs);
//		doAjax('/easyorder/ajcntbox', make_custsvs);
	} else {
		toon_verberg('customerService');
	}
	
	function make_custsvs() {
		rsText = this.req.responseText;
		try {insertHTML(document.getElementById('page'), rsText, true);}
		catch(e) {}
		positioneer(obj, 'customerService', -64, -64);
		toon_verberg('customerService');
	}
}

function limit_text(obj,e) {//limit the length if a textarea //incompatible with submitenter
	asc = last_key(e);
	lim = obj.getAttribute('maxlength');
	txt = obj.value;
	chr = ' ';// invoer vaak 1 teken
	switch (asc) {//invoer afvangen
		case 13: chr='\n';break;	// <enter>
		case 60: chr='&lt;';break;	// <
		case 62: chr='&gt;';break;	// >
	}
	if (txt.length + chr.length > lim) {obj.value=txt.substr(0,lim); obj.title = String(lim - txt.length) + obj.getAttribute('alt'); return false;}//resulaat niet te lang
	obj.title = String(lim - txt.length - chr.length) + obj.getAttribute('alt');
	if (chr != ' ') {
		crt = get_caret(obj)
		obj.value = txt.substr(0,crt.start) + chr + txt.substr(crt.end);
		txt = obj.value;
		return false;
	}	
}

get_caret = function(obj) {//met dank aan nitobi.com
	var docObj = obj.ownerDocument;
	var result = {start:0, end:0};
	
	if (navigator.appVersion.indexOf("MSIE")!=-1) {
		obj.focus();
		if (obj.tagName.toLowerCase() == "textarea") {
			/*if (obj.value.charCodeAt(obj.value.length-1) < 14) obj.value=obj.value.replace(/34/g,'')+String.fromCharCode(28);*/
			var oRng = docObj.selection.createRange();
			var oRng2 = oRng.duplicate();
			oRng2.moveToElementText(obj);
			oRng2.setEndPoint('StartToEnd', oRng);
			result.end = obj.value.length-oRng2.text.length;
			oRng2.setEndPoint('StartToStart', oRng);
			result.start = obj.value.length-oRng2.text.length;
			/*if (obj.value.substr(obj.value.length-1) == String.fromCharCode(28)) obj.value = obj.value.substr(0, obj.value.length-1);*/
		} else {
			var range = docObj.selection.createRange();
			var r2 = range.duplicate();
			result.start = 0 - r2.moveStart('character', -100000);
			result.end = result.start + range.text.length;
		}
	} else {
		result.start = obj.selectionStart;
			result.end = obj.selectionEnd;
	}
	if (result.start < 0) result = {start:0, end:0};
	return result;
}

var xml_doc= '';
var cmp_xsl;
doAjax('/css0/compare.xsl', getCmpXsl);//nieuw --> naar de html met de functie
function getCmpXsl() {cmp_xsl = this.req.responseXML;}

function compare_panel() {
	if (arguments.length==1) {//ajax aanroep
		if (document.getElementById('preload_cmp').firstChild == null) {
			document.getElementById('preload_cmp').appendChild(document.getElementById('preloader_block').cloneNode(true));//klonen zandloper uit infopr2
		}	
		document.getElementById('preload_cmp').getElementsByTagName('*')[0].style.display='block';
		arguments[0] = '/easyorder/' +arguments[0];
		doAjax(arguments[0], compare_panel);
		return;
	}
	//xml_doc = this.req.responseXML;//nieuw --> weghalen
 	document.getElementById('preload_cmp').getElementsByTagName('*')[0].style.display='none';
	showXSLTranform(document.getElementById('panel'),this.req.responseXML,cmp_xsl)//nieuw --> ook voor andere xslt
	document.getElementById('layer_compare_list').style.display = 'none';
	// XSLT
	//url = '/easyorder/ajcmpprd?ext=sheet';//nieuw --> weghalen
	//doAjax(url, rtvXslDoc);//nieuw --> weghalen
}
function showXSLTranform(obj,xml_doc,xsl_doc){
	//ampersands e.a. oplossen; dit alleen gaan doen voor de productomschrijving
	xml_tags = xml_doc.getElementsByTagName('commercial');
	for (t=0; t<xml_tags.length; t++) {
		xml_nodes = xml_tags[t].childNodes;
		for (n=0; n<xml_nodes.length; n++) {
			if (xml_nodes[n].nodeType==3) {
				xml_txt = xml_nodes[n].nodeValue;
				if (xml_txt.length>3) {
					xml_ents = xml_txt.match(/&#(\d+);/g);
					if (xml_ents!=null) {
						for (e=0;e<xml_ents.length;e++) {
							chr = String.fromCharCode(Number( xml_ents[e].substr(2, xml_ents[e].length-3) ));
							xml_txt = xml_txt.replace(xml_ents[e],chr);
						}
					}
					xml_nodes[n].nodeValue = xml_txt;
				}
			}
		}
	}
	if (typeof XSLTProcessor != "undefined") {//ff/moz/opera
		xsl_proc = new XSLTProcessor ();
		xsl_proc.importStylesheet (xsl_doc);
		html_tree = xsl_proc.transformToFragment (xml_doc, document);
		obj.innerHTML = "";
		obj.appendChild(html_tree);
		if (navigator.userAgent.indexOf('Windows') > -1 && navigator.userAgent.indexOf('WebKit') >-1) {//winsaf, chrome
			for (i=0; i<promoref.getElementsByTagName('script').length; i++) eval(promoref.getElementsByTagName('script')[0].innerHTML);
		}
	} else if (typeof xml_doc.transformNode != "undefined") {//ie
		html_text=xml_doc.transformNode(xsl_doc)
		insertHTML(obj, html_text);
	}
	if (obj.className.indexOf('layer')>-1) {
		if (obj.style.display=='none') obj.style.top = (document.documentElement.scrollTop + 64) +'px';
		toon_verberg(obj, true);
		set_focus(obj);
	}
}

function rtvXslDoc() {
 	document.getElementById('preload_cmp').getElementsByTagName('*')[0].style.display='none';
	xsl_doc = this.req.responseXML;
	panref = document.getElementById('panel');
	// Use object detection to find out if we have Firefox/Mozilla/Opera or IE XSLT support.

		//ampersands e.a. oplossen; dit alleen gaan doen voor de productomschrijving
		xml_tags = xml_doc.getElementsByTagName('commercial');
		for (t=0; t<xml_tags.length; t++) {
			xml_nodes = xml_tags[t].childNodes;
			for (n=0; n<xml_nodes.length; n++) {
				if (xml_nodes[n].nodeType==3) {
					xml_txt = xml_nodes[n].nodeValue;
					if (xml_txt.length>3) {
						xml_ents = xml_txt.match(/&#(\d+);/g);
						if (xml_ents!=null) {
							for (e=0;e<xml_ents.length;e++) {
								chr = String.fromCharCode(Number( xml_ents[e].substr(2, xml_ents[e].length-3) ));
								xml_txt = xml_txt.replace(xml_ents[e],chr);
							}
						}
						xml_nodes[n].nodeValue = xml_txt;
					}
				}
			}
		}

	if (typeof XSLTProcessor != "undefined") {//ff/moz/opera
		var xsl_proc = new XSLTProcessor ();
		xsl_proc.importStylesheet (xsl_doc);
		var html_tree = xsl_proc.transformToFragment (xml_doc, document);
		panref.innerHTML = "";
		panref.appendChild(html_tree);
		if (panref.style.display=='none') panref.style.top = (document.documentElement.scrollTop + 64) +'px';
		toon_verberg(panref, true);
		set_focus(panref);
	} else if (typeof xml_doc.transformNode != "undefined") {//ie

		if (panref.style.display=='none') panref.style.top = (document.documentElement.scrollTop + 64) +'px';
		insertHTML(panref, xml_doc.transformNode(xsl_doc));
		toon_verberg(panref, true);
		set_focus(panref);
	} else {
		div.innerHTML = "XSLT not supported in browser.";
	}
	document.getElementById('layer_compare_list').style.display = 'none';
}

function compareProducts(input, XMLresponse) {//in infopr4n.js ook een versie
	if (XMLresponse == null){
	// Input mode
	document.getElementById('loadingCompare').style.visibility = 'visible';
	url = 'compare?' + input;
	loadXMLDoc(url);
	} else {
	// Response mode
	var products = XMLresponse.getElementsByTagName('product');
	var compareList = document.getElementById('compareList');
	removeChildNodes(compareList);
	if (products.length == 0) {
		var checkBoxes = document.getElementsByTagName('input');
		for (var i=0;i<checkBoxes.length;i++) {
			if (checkBoxes[i].getAttribute('name') == 'chkCompare') checkBoxes[i].checked = false;
		}
	} else {
		cmp_ul ='';
		for (var i=0;i<products.length;i++) {
			cmp_ul += '<li id="cmp_'+products[i].getAttribute('compareNumber')+'" class="custom_over"><span class="list_link"><img src="/images/icon_list.gif" alt="&bull;" ></span> <span class="text_link">'+products.item(i).firstChild.data+'</span><div class="float_end"></div></li>'
			insertHTML(compareList,cmp_ul);
		}
	}
	document.getElementById('loadingCompare').style.visibility='hidden';
	}
}
function show_cmp_dialog(obj, prdcd) {//infopr3/4
	toon_verberg(document.getElementById('cmp_buttons').getElementsByTagName('a'),true)
	if (prdcd!='') {//std
		document.getElementById('cmp_add_button').prdcod = prdcd;
		document.getElementById('cmp_add_button').setAttribute('prdcod', prdcd);// ff
	} else {//stp
		document.getElementById('cmp_add_button').style.display='none';
	}
	positioneer(obj, 'layer_compare_list',-256,16);
	toon_verberg('layer_compare_list');
}
function redirect() {
	loc='';
	if (redirectLocation != '') loc = redirectLocation;
	if (loc.indexOf('b2c') > -1) loc = '/easyorder.b2c/' +loc;
	if (redirectLocation != '') {
		redirectLocation = '';
		window.location = loc;
	}
}
function setMsgStatus(msg, act) {
	gc=document.getElementById('newsItem'+msg);
	gcc = gc.className;
	switch (act) {
	case 'switch':
		if (document.getElementById('message'+msg).style.display=='none') {
			gc.className = gcc.replace(/unRead/g, 'read'); act = 'read';
		}
		toon_verberg('message'+msg);
		break;
	case 'delete':
		gc.parentNode.removeChild(gc);
		break;
	case 'read':
		gc.className = gcc.replace(/unRead/g, 'read');
		break;
	case 'unread':
		gc.className = gcc.replace(/read/g, 'unRead');
		break;
	}
	if (msg != null) doAjax('ajnews?msg=' +msg+ '&act=' +act, updMsgLinks);
}
function updMsgLinks() {
	rsXML = this.req.responseXML;
	try {
		document.getElementById('messageCenter_link').innerHTML = rsXML.getElementsByTagName("center")[0].firstChild.nodeValue;
		document.getElementById('messageCenter_header').innerHTML = rsXML.getElementsByTagName("center")[0].firstChild.nodeValue;}
	catch(e) {}
	try {document.getElementById('span_general').innerHTML = rsXML.getElementsByTagName("general")[0].firstChild.nodeValue;}
	catch(e) {}
	try {document.getElementById('span_news').innerHTML = rsXML.getElementsByTagName("news")[0].firstChild.nodeValue;}
	catch(e) {}
	try {document.getElementById('span_tips').innerHTML = rsXML.getElementsByTagName("tips")[0].firstChild.nodeValue;}
	catch(e) {}
}

var submitcount=0;
function disablesubmit(){
	submitcount++;
	return (submitcount == 1);
}

function chgCookie(name, newValue) {
	wis_lokaal(name);
	schrijf_lokaal(name, newValue, 2, '/', false, false)	
	location.reload(true);
}
/**
* The getElementsByName function does not work correctly in IE(7).
* This is a fix for this problem
*
* @param  {String}	tagName The element(s) to retrieve.
*         {String}  attributeName The attributeValue for NAME te retrieve
* @return {Object}	Returns an array of objects.
*/
function getElementsByName_iefix(tag, name) {
     var elem = document.getElementsByTagName(tag);
     var arr = new Array();
     for(i = 0,iarr = 0; i < elem.length; i++) {
          att = elem[i].getAttribute("name");
          if(att == name) {
               arr[iarr] = elem[i];
               iarr++;
          }
     }
     return arr;
}

function scale_Prices(obj, getstr, id) {
	toon_verberg('scalePricing',false);
	positioneer(obj, 'scalePricing', -256, -16);
	url = "ajScales?" + getstr;
	doAjax(url, showScales);	
}
function showScales() {
	in_scales = this.req.responseText;
	insertHTML(document.getElementById('scalePricing'), in_scales);
	toon_verberg('scalePricing');
}
function set_calc_alert(nbr) {// hilight changed quantities
	if (!document.getElementById('recalc'+nbr)) return;
	bool=true;
	if (document.getElementsByName('ordLineQty'+nbr)[0]) bool = (document.getElementsByName('ordLineQty'+nbr)[0].value != document.getElementsByName('ordOrgQty'+nbr)[0].value);
	if (bool) {
		 document.getElementById('recalc'+nbr).getElementsByTagName('img')[0].src = '/images/alert_calc.gif';
	} else {
		 document.getElementById('recalc'+nbr).getElementsByTagName('img')[0].src = '/images/icon_calc.gif';
	}
}
function promo_carrousel_horizon(section, total, show, lapse){
	//zet ze naast elkaar en draai ze door
	var afstand = 0;
	for (t=0; t<2; t++) {//niet hikken
		tbl = section.getElementsByTagName('table')[t];
		tbl.style.width = String(100*total/show)+'%';
		tbl.style.marginLeft = '0';
		tbl.style.marginRight = '3px';
	}
	var intv = setInterval(do_carrousel,lapse);
	function do_carrousel(){
		afstand--;
		pxls = section.getElementsByTagName('table')[0].clientWidth;
		section.getElementsByTagName('table')[0].style.left = afstand+'px';
		section.getElementsByTagName('table')[1].style.left = afstand+'px';
		if (afstand<=(0-pxls)) {
			section.appendChild(section.getElementsByTagName('table')[0]);
			afstand = 0;
		}
	}
}
function promo_carrousel_vertica(section, total, show, lapse){
	var afstand = 0;
	for (t=0; t<2; t++) {//niet hikken
		tbl = section.getElementsByTagName('table')[t];
		tbl.style.marginTop = '0';
		tbl.style.marginBottom = '3px';
	}
	var intv = setInterval(do_carrousel,lapse);
	function do_carrousel(){
		afstand--;
		pxls = section.getElementsByTagName('table')[0].offsetHeight;//ff heeft 'm niet meteen
		section.style.height = String(Math.ceil(section.getElementsByTagName('table')[0].offsetHeight*show/total))+'px';
		section.getElementsByTagName('table')[0].style.top = afstand+'px';
		section.getElementsByTagName('table')[1].style.top = afstand+'px';
		if (afstand<=(0-pxls)) {
			section.appendChild(section.getElementsByTagName('table')[0]);
			afstand = 0;
		}
	}
}
function promo_random_horizon(section, total, show, lapse){
	var stage = section.getElementsByTagName('table')[0];
	var stock = section.getElementsByTagName('table')[1];
	stock.style.visibility = 'hidden';
	var stg_rows = [stage.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0],
		stage.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[1],
		stage.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[2]];
	var sck_rows = [stock.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0],
		stock.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[1],
		stock.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[2]];
	var stg_cells = [stg_rows[0].getElementsByTagName('td'),
		stg_rows[1].getElementsByTagName('td'),
		stg_rows[2].getElementsByTagName('td')];
	var sck_cells = [sck_rows[0].getElementsByTagName('td'),
		sck_rows[1].getElementsByTagName('td'),
		sck_rows[2].getElementsByTagName('td')];
	var stg_walls = [stg_rows[0].getElementsByTagName('th'),
		stg_rows[1].getElementsByTagName('th'),
		stg_rows[2].getElementsByTagName('th')];
	var intv = setInterval(do_random,lapse);
	function do_random(){
	//gooi alle zichtbare td's weg en vervang ze door prm_celX op achtergrond
		choice = random_sequence(1, total, show);
		for (h=0; h<3; h++) {//alle plakken
		for (i=stg_cells[h].length-1; i>-1; i--) stg_cells[h][i].parentNode.removeChild(stg_cells[h][i]);
		for (i=0; i<choice.length;i++) {//alle keuzes
		for (j=0; j<sck_cells[h].length; j++) {//alle broncellen
			if (sck_cells[h][j].className.indexOf('prm_col'+String(choice[i])+' ') > -1) {
				td=sck_cells[h][j].cloneNode(true);
				stg_walls[h][i+1].parentNode.insertBefore(td,stg_walls[h][i+1]);
			}
		}}}
	}
}
function promo_random_vertica(section, total, show, lapse){;
	var stage = section.getElementsByTagName('table')[0];//.getElementsByTagName('tbody');
	var stock = section.getElementsByTagName('table')[1];//.getElementsByTagName('tbody');
//	stock.style.display = 'none';
	stock.style.visibility = 'hidden';
	stock.style.position = 'absolute';
	var stg_bodies = stage.getElementsByTagName('tbody');
	var sck_bodies = stock.getElementsByTagName('tbody');
	var stg_rows = new Array();
	for (b=0;b<stg_bodies.length;b++) stg_rows[stg_rows.length] = stg_bodies[b].getElementsByTagName('tr');
	var sck_rows = new Array();
	for (b=0;b<sck_bodies.length;b++) sck_rows[sck_rows.length] = sck_bodies[b].getElementsByTagName('tr');
	var stg_cells = new Array();
	for (b=0;b<stg_rows.length;b++) {stg_cells[b] = new Array(); for (r=0;r<stg_rows[b].length;r++) stg_cells[b][stg_cells[b].length] = stg_rows[b][r].getElementsByTagName('td')}
	var sck_cells = new Array();
	for (b=0;b<sck_rows.length;b++) {sck_cells[b] = new Array(); for (r=0;r<sck_rows[b].length;r++) sck_cells[b][sck_cells[b].length] = sck_rows[b][r].getElementsByTagName('td')}
	var stg_walls = new Array();
	for (b=0;b<stg_rows.length;b++) {stg_walls[b] = new Array(); for (r=0;r<stg_rows[b].length;r++) stg_walls[b][stg_walls[b].length] = stg_rows[b][r].getElementsByTagName('th')}
	intv = setInterval(do_random,lapse);
	function do_random(){
		choice = random_sequence(0, total-1, show);
		for (b=0;b<stg_bodies.length;b++) {
			if (stg_rows[b][0].className!='') {//niet in prm_junct
				for (r=0;r<3;r++) {
					for (d=stg_cells[b][r].length-1;d>-1;d--) {stg_cells[b][r][d].parentNode.removeChild(stg_cells[b][r][d])}
					for (d=0;d<sck_cells[b][r].length;d++) {
						td=sck_cells[choice[b/2]*2][r][d].cloneNode(true);
						stg_walls[b][r][1].parentNode.insertBefore(td,stg_walls[b][r][1]);
					}
				}
			}
		}
	}
}
function random_sequence(lo, hi, am) {
	if (hi-lo+1 < am) return []; 
	seq = new Array(am);
	for (i=0;i<am;i++) {
		do {
			n = Math.floor(Math.random()*(hi-lo+1)+lo);
			if (seq.join().indexOf(String(n)) > -1 & i>0) n=null;
		} while (n == null);
		seq[i] = n;
	}
	return seq;
}

function showNewPromotion() {
	rsText = this.req.responseText;
	if (rsText.indexOf('<promotion>')==-1) {//HTML-FRAGMENT INPLAKKEN
		s = rsText.indexOf('containerB[') +11;
		e = rsText.indexOf(']containerE');
		containerId = rsText.substring(s, e);
		try {insertHTML(document.getElementById('promo_'+containerId), rsText);}
		catch(e) {
			try {insertHTML(document.getElementById(containerId), rsText);}
			catch(e) {} 
		} 
	} else {//XML/XSL PARSEN EN INPLAKKEN
		promo_xml = this.req.responseXML
		if (promo_xml.getElementsByTagName('container').length == 0) return; //lege promo's
		promosection = promo_xml.getElementsByTagName('section')[0].firstChild.nodeValue;
		if (promo_xsl != null) showXSLTranform(document.getElementById(promosection),promo_xml,promo_xsl);
	}
}

function setRelSearch() {
  if (document.getElementsByName('rankRelevance')[0].checked == true) {
    schrijf_lokaal('relsrch', true);
  } else {
    schrijf_lokaal('relsrch', false);
  }
}

