/* 
 * Find next Siblings untill a tag is found
 */
function nextSib(start, searchTag) {
	if (start)
		if (start.nextSibling && start.nextSibling.tagName == searchTag)
			return start.nextSibling;
		else
			return nextSib(start.nextSibling, searchTag)
	return false;
}

function addEvent(elm, evType, fn, useCapture) {
    if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
    }
    else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
    }
    else {
		elm['on' + evType] = fn;
    }
}



function byId() {
    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;
}




/* 
 * Find previoisSiblings untill a tag is found
 */
function previousSibling(start, searchTag) {
	if (start)
		if (start.previousSibling && start.previousSibling.tagName == searchTag)
			return start.previousSibling;
		else
			return previousSibling(start.previousSibling, searchTag)
	return false;
}

function toggleDisplay(tag) {
	if (tag) {
		if (tag.style.display=="block")  {
			tag.style.display="none"
		} else {
			tag.style.display="block"
		}
	}
}