var browserOK = true;

var oActiveButton = 0;

var aButtons = new Array();
var countButtons = 0;

var aButtonObjects = new Array();
var countButtonObjects = 0;

var enableButtonClass = "buttonNormal";
var disableButtonClass = "buttonNone";

// ------------------------------------------------------------------

// gibt Button-Nr. nach Vorgabe vom Namen
function getButtonNr(vName) {
	for (i = 0; i < countButtons; i++) {
		if (aButtons[i][1] == vName) {
			return i;
		}		
	}
	return -1;
}

// gibt Button-Nr. nach Vorgabe vom Link
function getLinkButtonNr(vLink) {
	for (i = 0; i < countButtons; i++) {
		if (aButtons[i][2] == vLink) {
			return i;
		}		
	}
	return -1;
}

// gibt ButtonObjekt-Nr. nach Vorgabe vom Objekt
function getButtonObjectNr(oButton) {
	for (i = 0; i < countButtonObjects; i++) {
		if (aButtonObjects[i] == oButton) {
			return i;
		}		
	}
	return 0;
}

// liefert Button-Nr. im Menu nach Vorgabe der Nummer
function getMenuButtonNr(vButtonNr) {
	var vMenuNr = 0;
	var vCounter = -1;
	for (i = 0; i < vButtonNr+1; i++) {
		if (vMenuNr != aButtons[i][0]) {
			vMenuNr = aButtons[i][0];
			vCounter = 0;
		}
		else vCounter++;		
		if (showAlert) { alert("Name: "+ aButtons[i][1]+", Menu-Nr.: "+ vMenuNr+ ", ButtonMenu-Nr. "+ aButtons[i][0]+ ", Counter: "+ vCounter); }
	}
	return vCounter;
}

function setActiveButton(oButton) {
	oActiveButton = oButton;
	if (oActiveButton != null) {
		oActiveButton.className = "buttonClicked";
		aMenus[aButtons[getButtonNr(oButton.innerHTML)][0]][1] = getButtonObjectNr(oButton); // aktive Button-Nr. an Menu zuweisen
	}
}

function loadButtonObject(oButton) {
	aButtonObjects[countButtonObjects] = oButton;	
	countButtonObjects++;
}

function loadButton(vMenuNr, vName, vLink, vImageNr, bIFrame) {
	aButtons[countButtons] = new Array(4);
	aButtons[countButtons][0] = vMenuNr;
	aButtons[countButtons][1] = vName;	
	aButtons[countButtons][2] = vLink;
	aButtons[countButtons][3] = vImageNr;
	// aButtons[countButtons][4] = bIFrame;
	countButtons++;		
}

function setMenuButtons(vMenuNr) {
	var k = 0;
	for (i = 0; i < countButtons; i++) {
		if (aButtons[i][0]  == vMenuNr) {
			aButtonObjects[k].className = enableButtonClass;
			aButtonObjects[k].innerHTML = aButtons[i][1];			
			k++;
		}
	}
	if (k < countButtonObjects-1) {
		for (j = k; j < countButtonObjects; j++) {
			aButtonObjects[j].className = disableButtonClass;
			aButtonObjects[j].innerHTML = "";
		}
	}
	
	if (showAlert) { alert("Aktiver Button: "+ aMenus[vMenuNr][1]); }
	setActiveButton(aButtonObjects[aMenus[vMenuNr][1]]);
}

// ------------------------------------------------------------------

function normalButton() {
  window.event.cancelBubble = true;
  var oButton = window.event.srcElement;
  if (oButton != oActiveButton)
		if ((oButton.className == "buttonOver") || (oButton.className == "buttonClicked")) {
	  	oButton.className = "buttonNormal";
	}
}

function overButton() {
  window.event.cancelBubble = true;
  var oButton = window.event.srcElement;
  if ((oButton != oActiveButton) && (oButton.className != "buttonNone")) {		
   	if (oButton.className == "buttonNormal") {			
  	  oButton.className = "buttonOver"
		}
	}
}

function clickedButton() {
  window.event.cancelBubble = true;
	var oButton = window.event.srcElement;
	if (oButton.className == "buttonOver") {
	  if (oActiveButton != null) {
  	  oActiveButton.className = "buttonNormal";
		}
		setActiveButton(oButton);
		setFrame(oButton);
	}
}
