var ro_class = "rollover";
var suffix = "_sel";
window.onload = setup;

function getChildImage(element) {
	var images = element.getElementsByTagName("img");
	return images.length ? images[0] : false;
}

function newSource(element, over) {
	var src = element.getAttribute("src");
	var index = src.lastIndexOf(".");
	if (over) {
		return src.substring(0, index) + suffix + src.substring(index, src.length);
	} else {
		return src.substring(0, index - suffix.length) + src.substring(index, src.length);
	}
}

function setHandler(element) {
    var closures = {
      rollover:
        function() {
			if (img = getChildImage(element)) img.src = newSource(img, 1);
        },
      rollout:
        function() {
            if (img = getChildImage(element)) img.src = newSource(img, 0);
        }
    }
    element.onmouseover = closures["rollover"];
	element.onmouseout = closures["rollout"];
}

function setup() {
	if (!document.getElementById) return false;
	var elements = document.getElementsByTagName("a");
	for (i = 0; i < elements.length; i++) {
		var e = elements[i];
		if ((e.getAttribute("class") || e.getAttribute("className")) == ro_class) {
			if (img = getChildImage(e)) {
				var preload = new Image();
				preload.src = newSource(img, 1);
				setHandler(e);
			}
		}
	}
}
