//
//  Copyright 2002-2005 Agachi Valentin ( http://agachi.name/ )
//


var brIE = ( /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent) );


document.imgsw = new Array;
document.imgp = new Array;

function getObj(n, d) { 
	var p,i,x;  
	if (!d) d=document; 
	if (d.getElementById) {
		x = d.getElementById(n);
	}
	if (!(x=d[n]) && d.all) x=d.all[n]; 
	return x;
}

/**
 * opens a link in the target window
 */

function popup(link, width, height, name) {
	window.open(link, name, 'width='+width+',height='+height+',toolbar=yes,location=yes,status=yes,resizable=yes');
}


/**
 * Events
 */

function attachEvent(el, eventName, func) {
	if (el.attachEvent) { // IE
		el.attachEvent("on" + eventName, func);
	} else if (el.addEventListener) { // Gecko / W3C
		el.addEventListener(eventName, func, true);
	} else {
		el["on" + eventName] = func;
	}
};

function removeEvent(el, eventName, func) {
	if (el.detachEvent) { // IE
		el.detachEvent("on" + eventName, func);
	} else if (el.removeEventListener) { // Gecko / W3C
		el.removeEventListener(eventName, func, true);
	} else {
		el["on" + eventName] = null;
	}
};

function eventGetElement(ev) {
	if (brIE) {
		return window.event.srcElement;
	} else {
		return ev.currentTarget;
	}
};



function highlightTable(oTable, sColorEven, sColorOdd) {
	if (!document.getElementById || !document.getElementsByTagName) {
		return false;
	}
	if (typeof(oTable) == 'string') {
		oTable = document.getElementById(oTable);
	}
	if (oTable == null) {
		return false;
	}
	var bDOM = (typeof(oTable.setAttribute) != 'undefined');
	oTrs = oTable.getElementsByTagName('tr');
	iTrs = oTrs.length;
	for (var i = 0; i < iTrs; i++) {
		if (oTrs[i].className != 'header') {
//			attachEvent(oTrs[i], 'mouseover', highlightRowOver);
//			attachEvent(oTrs[i], 'mouseout', highlightRowOut);
		}
		if (oTrs[i].className.length > 0) {
			continue;
		}
		oTds = oTrs[i].getElementsByTagName('td');
		sColor = (i % 2) ? sColorOdd : sColorEven;
		if (oTds.length > 0) {
			iTds = oTds.length;
			for (var j = 0; j < iTds; j++) {
				if (bDOM) {
					oTds[j].setAttribute('bgColor', sColor, 0);
				} else {
					oTds[j].style.backgroundColor = sColor;
				}
			}
		}
	}
	return true;
}

function highlightRowOver(ev) {
	var o = eventGetElement(ev);
	while (o.tagName != 'TR') {
		o = o.parentNode;
	}
	highlight(o, 'over');
}
function highlightRowOut(ev) {
	var o = eventGetElement(ev);
	while (o.tagName != 'TR') {
		o = o.parentNode;
	}
	highlight(o, 'out');
}



/**
 * Page onload functions handling
 */

var icd_onload_funcs = new Array();

function icd_onload_register(func) {
	if (func != null) {
		icd_onload_funcs[icd_onload_funcs.length] = func;
	}
}
function icd_onload() {
	for (i=0; i < icd_onload_funcs.length; i++) {
		icd_onload_funcs[i]();
	}
}



Array.prototype.indexOf = function(elem) {
	for (var i = 0; i < this.length; i++) {
		if (this[i] == elem) {
			return i;
		}
	}
	return -1;
}