var mouseOvers, mouseOuts, nameTable;
var uBound = 0;

function eventMouseOver() {
    var id = getIndexFromName(getHoverName(this));
    this.src = mouseOvers[id].src;
}

function eventMouseOut() {
    var id = getIndexFromName(getHoverName(this));
    this.src = mouseOuts[id].src;
}

function getMouseOvers(count) {
    mouseOvers = new Array(count);
    mouseOuts = new Array(count);
    nameTable = new Array(count);
    uBound = 0;

    for (i = 0; i < document.images.length; i++) {
        var currImage = document.images[i];
        var name = getHoverName(currImage);

        if (name != "") {
            nameTable[uBound] = name;

            var pos = currImage.src.lastIndexOf(".");
            var img = currImage.src.substr(0, pos);
            var ext = currImage.src.substring(pos + 1, currImage.src.length); 
            mouseOvers[uBound] = new Image();
            mouseOvers[uBound].src = img + "_h." + ext;

            mouseOuts[uBound] = new Image();
            mouseOuts[uBound].src = img + "." + ext;

            currImage.onmouseover = eventMouseOver;
            currImage.onmouseout = eventMouseOut;

            uBound++;
        }
    }
}

function getIndexFromName(name) {
    var result = -1;

    for (i = 0; i <= uBound; i++) {
        if (nameTable[i] == name) {
            result = i;
            break;
        }
    }

    return result;
}

function getHoverName(obj) {
    if (obj.id.length > 6) {
        if (obj.id.substr(0, 6) == "hover:") {
             return obj.id.substr(6, obj.id.length - 6);
	}
    }

    return "";
}

function registerNavHovers() {
	for (i = 0; i < document.all.length; i++) {
		var curr = document.all[i];
		if (curr.id.substr(0, 7) == "button:") {
			curr.onmouseover = buttonMouseOver;
			curr.onmouseout = buttonMouseOut;
		} else if (curr.id.substr(0, 6) == "hover:") {
			curr.onmouseover = navHoverEnter;
			curr.onmouseout = navHoverExit;
		}
	}
}

function navHoverEnter() {
	this.style.backgroundColor = '#FFB135';
}

function navHoverExit() {
	this.style.backgroundColor = 'transparent';
}
function buttonMouseOver() {
	this.className = this.className + "_hover";
}
function buttonMouseOut() {
	this.className = this.className.substr(0, this.className.length - 6);
}


