// Lovefeast script file

// Mah banner-window-opening crap.

function banner() {
window.open("banner.php", "banner", "width=770,height=400,scrollbars=1,status=0,resizable=1,toolbar=0");
}

function results() {
window.open("pollresults.php", "results", "width=350,height=470,scrollbars=1,status=0,resizable=1,toolbar=0");
}

// Dropdowns in old versions of IE

startList = function() {
if (document.all&&document.getElementById) {
navRoot = document.getElementById("nav");
for (i=0; i<navRoot.childNodes.length; i++) {
node = navRoot.childNodes[i];
if (node.nodeName=="LI") {
node.onmouseover=function() {
this.className+=" over";
  }
  node.onmouseout=function() {
  this.className=this.className.replace(" over", "");
   }
   }
  }
 }
}
window.onload=startList;

// Preloading images

pre1 = new Image(45,55);
pre1.src = "images/skin/2-cast-over.jpg";

pre2 = new Image(45,67);
pre2.src = "images/skin/2-comic-over.jpg";

pre3 = new Image(45,111);
pre3.src = "images/skin/2-contact-over.jpg";

pre4 = new Image(45,80);
pre4.src = "images/skin/2-extras-over.jpg";

pre5 = new Image(45,95);
pre5.src = "images/skin/2-galleries-over.jpg";

pre6 = new Image(45,82);
pre6.src = "images/skin/2-home-over.jpg";

pre7 = new Image(45,50);
pre7.src = "images/skin/2-info-over.jpg";

pre8 = new Image(45,65);
pre8.src = "images/skin/2-links-over.jpg";

// For expanding and collapsing divs

function switchMenu(obj) {
var el = document.getElementById(obj);
if ( el.style.display != 'none' ) {
el.style.display = 'none';
}
else {
el.style.display = '';
}
}

function $() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}

function collapseAll(objs) {
var i;
for (i=0;i<objs.length;i++ ) {
objs[i].style.display = 'none';
}
}
function pageLoad() {
collapseAll($('aboutp','legendp','overp','systemp','typesp','becomingp','gemsp','aimsp','deathp','weaponsp','planep','ronadap','itemsp', 'classesp','recp'));
}
addEvent(window,'load',pageLoad);


// addEvent, required apparently

function addEvent( obj, type, fn ) {
	if (obj.addEventListener) {
		obj.addEventListener( type, fn, false );
		EventCache.add(obj, type, fn);
	}
	else if (obj.attachEvent) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
		EventCache.add(obj, type, fn);
	}
	else {
		obj["on"+type] = obj["e"+type+fn];
	}
}

var EventCache = function(){
	var listEvents = [];
	return {
		listEvents : listEvents,
		add : function(node, sEventName, fHandler){
			listEvents.push(arguments);
		},
		flush : function(){
			var i, item;
			for(i = listEvents.length - 1; i >= 0; i = i - 1){
				item = listEvents[i];
				if(item[0].removeEventListener){
					item[0].removeEventListener(item[1], item[2], item[3]);
				};
				if(item[1].substring(0, 2) != "on"){
					item[1] = "on" + item[1];
				};
				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
				};
				item[0][item[1]] = null;
			};
		}
	};
}();
addEvent(window,'unload',EventCache.flush);
