/******************************************************************************************
 *	                        Rollover script - WIND Internet 2003                          *
 ** Wijzigingen ***************************************************************************
 * 24-12-02 : Eerste versie.                                                              *
 * 07-01-03 : Flexibiliteit naamgeving toegevoegd.                                        *
 *            Caching plaatjes.                                                           *
 * 08-01-03 : ID plaatje en url onafhankelijk gemaakt.                                    *
 *            Automatische startup wanneer document geladen.                              *
 *            'Active' knop mogelijkheid toegevoegd.                                      *
 *	          Definitie en code gescheiden.                                               *
 *	          Voorbeeld gemaakt.                                                          *
 ******************************************************************************************/

// gebruikers gedefinieerde variabelen
var buttons = Array();
var tails;
var extension;
var baseUrl;
var activeImage = 0;

// helper vars
var cache = Array();
var buttonRefs = Array();
var buttonUrls = Array();

// wordt uitgevoerd zodra pagina gereed is voor rollover
function Startup()
{
	for ( i = 0; i < buttons.length; i++ )
	{
		button = document.getElementById(buttons[i][0]);
		buttonRefs[i] = button;
		
		buttonUrls[i] = new Array();
		buttonUrls[i][0] = baseUrl + buttons[i][1] + tails[0] + "." + extension;
		buttonUrls[i][1] = baseUrl + buttons[i][1] + tails[1] + "." + extension;
		buttonUrls[i][2] = baseUrl + buttons[i][1] + tails[2] + "." + extension;
		buttonUrls[i][3] = baseUrl + buttons[i][1] + tails[3] + "." + extension;
		
		
		if ( button )
		{
			cache[i] = new Array();
			
			for ( j = 0; j < buttonRefs[i].length; j++)
			{
				cache[i][j] = new Image();
				cache[i][j].src = buttonUrls[i][j];
			}

			AttachImageEvents(button, i);
		}
	}
}		

// 'attached' eventhandlers aan plaatjes
function AttachImageEvents(image, index)
{
	var urls = buttonUrls[index];
	image.onmouseover = function()
						{
							image.src = urls[1];
						}

	image.onmouseout  = function()
						{
							image.src = urls[( activeImage == index  ? 3 : 0)];
						}

	image.onmousedown = function()
						{
							image.src = urls[2];
						}
	image.onmouseup   = function()
						{
							buttonRefs[activeImage].src = buttonUrls[activeImage][0];
							image.src = urls[3];
							activeImage = index;
						}
}

// detectiefunctie voor gereedheid rollover effect
function StartupDetection()
{
	if ( document.body )
	{
		Startup();
	}
	else
	{
		setTimeout(StartupDetection, 100);
	}
}

StartupDetection();
