window.onload=function()
{
	leftmenuFirstSub(); // patch a small ui glitch
	//submitButton(); //deprecated
	init();
	domcollapse('nounique');
}

function init(){
	if(!document.getElementById) return false;

	var loc = window.location.href;
	var searchStr = "jsLogos=";
	var start = loc.lastIndexOf(searchStr);
	if(start>=0){
		start+=searchStr.length;
		var variable = loc.slice(start,start+1)
	}
	
	// test different behavior for logo scroller/swapper on frontpage
	var logotype = (variable)?variable:1;
	if(logotype==1)changeImage();
	else if(logotype==2)slideImage();
	else if(logotype==3)slideUpDownImage();
}

newtop=0;
aant=0;

function changeImage(){

	var lb = document.getElementById('logos');
	if(!lb)return false;
	lb.onmouseover=stopImage;
	lb.onmouseout=changeImage;

	var sizeup = 82;
	var imagequant=10;
	var waittime=2000;

	var maxtop = (-1*sizeup*(imagequant-1));

	lb.style.top = newtop+"px";
	
	if (newtop > maxtop){
		newtop = (newtop-sizeup);
	} else {
		newtop=0;
	}
	timer = setTimeout("changeImage()",waittime);
}

function slideImage(){

	var sl = document.getElementById('logos');
	sl.onmouseover=stopImage;
	sl.onmouseout=slideImage;

	var sizeup = 82;
	var imagequant=10;
	var waittime=10;

	var movement = -1
	var maxtop = (-1*sizeup*(imagequant))+20;

	sl.style.top = newtop+"px";
	
	if (newtop > maxtop){
		newtop = (newtop-1);
	} else {
		newtop=sizeup-20;
	}
	timer = setTimeout("slideImage()",waittime);
}
var topped=0;

function slideUpDownImage(){

	var sl = document.getElementById('logos');
	sl.onmouseover=stopImage;
	sl.onmouseout=slideUpDownImage;

	var sizeup = 82;
	var imagequant=10;
	var waittime=10;

	var movement = -1
	var maxtop = (-1*sizeup*(imagequant-1));

	sl.style.top = newtop+"px";
	
	if (!topped && newtop > maxtop){
		newtop = (newtop-1);
	} else if(topped && newtop < 0){
		newtop = (newtop+1);
	} else {
		waittime=waittime*50;
		if(topped)
			topped=0;
		else
			topped=1;
	}
	timer = setTimeout("slideUpDownImage()",waittime);
}

function stopImage(){
	clearTimeout(timer);
}

/*
	DomCollapse 
	Turns elements of a page into triggers to collapse and expand other elements
	written by Christian Heilmann
	For all enquiries check the homepage: http://www.onlinetools.org/tools/domcollapse/
*/
function domcollapse(cmd)
{
	if(!document.getElementById || !document.createTextNode){return;}
/* Variables */
	// Class Names
	var normalTriggerClass='trigger';
	var expandedTriggerClass='triggerexpanded';
	var hoverTriggerClass='triggerhover';
	var normalElementClass='elementnormal';
	var collapsedElementClass='elementcollapsed'
	// Images
	// the %section% will be replaced by the text content of the trigger element
	var expandMessage='[+]Tonen';
	var expandImage='fileadmin/templates/main/images/plus.gif';
	var collapseMessage='[-]Verbergen';
	var collapseImage='fileadmin/templates/main/images/minus.gif';
	// Messages
	var collapseAllMessage='Alle merken verbergen';
	var expandAllMessage='Alle merken tonen';
	var triggerUniqueMessage='Een merk per keer tonen';
	var triggerNonUniqueMessage='Meerdere merken tonen';
	// element to add collapse/expand all links to
	var collapseAllElement='domcollapseall';
	// id that triggers the 'show only one element' functionality
	// this gets set automatically
	var enableAlternateElement='domcollapsealternate';

//	var triggers=document.getElementsByTagName('*'); // Change as applicable!
	var dealerlist = document.getElementById('dealer-list');
	if(dealerlist){
		var triggers=dealerlist.getElementsByTagName('h3'); // Change as applicable!
	} else {
		var triggers = Array();
	}
	switch(cmd)
	{
/* collapse all */
		case 0:
			for(var i=0;i<triggers.length;i++)
			{
				if(!cssjs('check',triggers[i],normalTriggerClass) && !cssjs('check',triggers[i],expandedTriggerClass)){continue;}
				cssjs('remove',triggers[i],expandedTriggerClass);
				cssjs('add',triggers[i],normalTriggerClass);
				cssjs('remove',triggers[i].hideElement,normalElementClass)
				cssjs('add',triggers[i].hideElement,collapsedElementClass)
				addimage(triggers[i],false);
			}
		break;
/* expand all */
		case 1:
			for(var i=0;i<triggers.length;i++)
			{
				if(!cssjs('check',triggers[i],normalTriggerClass) && !cssjs('check',triggers[i],expandedTriggerClass)){continue;}
				cssjs('remove',triggers[i],normalTriggerClass);
				cssjs('add',triggers[i],expandedTriggerClass);
				cssjs('remove',triggers[i].hideElement,collapsedElementClass)
				cssjs('add',triggers[i].hideElement,normalElementClass)
				addimage(triggers[i],true);
			}
		break;
		default:
/* initialise all */
			for(var i=0;i<triggers.length;i++)
			{
				if(!cssjs('check',triggers[i],normalTriggerClass) && !cssjs('check',triggers[i],expandedTriggerClass)){continue;}
				var newa=document.createElement('a');
				var newimg=document.createElement('img');
				var locexpandMessage=expandMessage.replace(/%section%/,triggers[i].firstChild.nodeValue);
				var loccollapseMessage=collapseMessage.replace(/%section%/,triggers[i].firstChild.nodeValue);
				newimg.src=cssjs('check',triggers[i],expandedTriggerClass)?collapseImage:expandImage;
				newimg.alt=cssjs('check',triggers[i],expandedTriggerClass)?loccollapseMessage:locexpandMessage;
				newimg.title=cssjs('check',triggers[i],expandedTriggerClass)?loccollapseMessage:locexpandMessage;;
				newa.appendChild(newimg);
				newa.href='#';
				triggers[i].insertBefore(newa,triggers[i].firstChild);
				var tohide=triggers[i].nextSibling;
				while(tohide.nodeType!=1)
				{
					tohide=tohide.nextSibling;
				}
				var toadd=cssjs('check',triggers[i],expandedTriggerClass)?normalElementClass:collapsedElementClass;
				cssjs('add',tohide,toadd);
				triggers[i].hideElement=tohide;
				triggers[i].onmouseover=function()
				{
					cssjs('add',this,hoverTriggerClass);
				}
				triggers[i].onmouseout=function()
				{
					cssjs('remove',this,hoverTriggerClass);
				}
				triggers[i].onclick=function()
				{
// collapse all before showing the current element
					if(document.getElementById(enableAlternateElement))
					{
						for(var i=0;i<triggers.length;i++)
						{
							if(!cssjs('check',triggers[i],normalTriggerClass) && !cssjs('check',triggers[i],expandedTriggerClass)){continue;}
							if(triggers[i]==this){continue;}
							cssjs('remove',triggers[i],expandedTriggerClass)
							cssjs('add',triggers[i],normalTriggerClass)
							cssjs('remove',triggers[i].hideElement,normalElementClass)
							cssjs('add',triggers[i].hideElement,collapsedElementClass)
							addimage(triggers[i],false);
						}
						if(cssjs('check',this,expandedTriggerClass))
						{
							cssjs('swap',this,expandedTriggerClass,normalTriggerClass)
							cssjs('swap',this.hideElement,normalElementClass,collapsedElementClass)
							addimage(this,false);
						} else {
							cssjs('swap',this,normalTriggerClass,expandedTriggerClass)
							cssjs('swap',this.hideElement,collapsedElementClass,normalElementClass)
							addimage(this,true);
						}	
					} else {
// show hide on click of the trigger element
						if(cssjs('check',this,expandedTriggerClass))
						{
							cssjs('swap',this,expandedTriggerClass,normalTriggerClass)
							cssjs('swap',this.hideElement,normalElementClass,collapsedElementClass)
							addimage(this,false);
						} else {
							cssjs('swap',this,normalTriggerClass,expandedTriggerClass)
							cssjs('swap',this.hideElement,collapsedElementClass,normalElementClass)
							addimage(this,true);
						}	
					}
					return false;
				}
			}
		break;
	}
/* Collapse and Expand all links */
	var metalinks=document.getElementById(collapseAllElement);
	if(!metalinks || metalinks.getElementsByTagName('ul')[0]){return;}
	var newul=document.createElement('ul');
	var newli=document.createElement('li');
	newa=document.createElement('a');
	newa.href='#';
	newa.onclick=function(){domcollapse(1);return false;}
	newa.appendChild(document.createTextNode(expandAllMessage));
	newli.appendChild(newa);
	newul.appendChild(newli);		

	newli=document.createElement('li');
	newa=document.createElement('a');
	newa.href='#';
	newa.onclick=function(){domcollapse(0);return false;}
	newa.appendChild(document.createTextNode(collapseAllMessage));
	newli.appendChild(newa);
	newul.appendChild(newli);
	if(cmd!='nounique')
	{
		newli=document.createElement('li');
		newa=document.createElement('a');
		newa.href='#';
		newa.onclick=function()
		{
			if(this.id==enableAlternateElement)
			{
				this.removeAttribute('id');
				this.replaceChild(document.createTextNode(triggerUniqueMessage),this.firstChild);					
			} else {
				this.id=enableAlternateElement;
				this.replaceChild(document.createTextNode(triggerNonUniqueMessage),this.firstChild);					
			}
			return false;
		}
		if(cmd=='makeunique')
		{
			newa.id=enableAlternateElement;
			newa.appendChild(document.createTextNode(triggerNonUniqueMessage));
		} else {
			newa.appendChild(document.createTextNode(triggerUniqueMessage));
		}
		newli.appendChild(newa);
		newul.appendChild(newli);
	}
	metalinks.appendChild(newul);			

	function addimage (o,state)
	{
		var locexpandMessage=expandMessage.replace(/%section%/,o.childNodes[1].nodeValue);
		var loccollapseMessage=collapseMessage.replace(/%section%/,o.childNodes[1].nodeValue);
		o.getElementsByTagName('img')[0].src=state?collapseImage:expandImage;
		o.getElementsByTagName('img')[0].alt=state?loccollapseMessage:locexpandMessage;
		o.getElementsByTagName('img')[0].title=state?loccollapseMessage:locexpandMessage;
	}
	function cssjs(a,o,c1,c2)
	{
		switch (a){
			case 'swap':
				o.className=!cssjs('check',o,c1)?o.className.replace(c2,c1):o.className.replace(c1,c2);
			break;
			case 'add':
				if(!cssjs('check',o,c1)){o.className+=o.className?' '+c1:c1;}
			break;
			case 'remove':
				var rep=o.className.match(' '+c1)?' '+c1:c1;
				o.className=o.className.replace(rep,'');
			break;
			case 'check':
				return new RegExp('\\b'+c1+'\\b').test(o.className)
			break;
		}
	}
}

// makes the the first li item in the submenu list of class first
//
function leftmenuFirstSub(){
	var x = document.getElementById('leftmenu');
	if(!x)return;
	var y = x.getElementsByTagName('ul');
	if(!y)return;
	for(var i=0;i<y.length;i++){
    	var z = y[i].getElementsByTagName('li');
    	if(z){
    		z[0].className+=" first";
    	}
    }
}

// make the submit button in the form of class submit
//
function submitButton(){
     var x = document.getElementsByTagName('input');
     for (var i=0;i<x.length;i++){
           if(x[i].type=="submit"){
                  x[i].className="submit";
           }
      }
}