if (oJavaScriptLibrary) {
	oJavaScriptLibrary.register('functions/dom.js')
}

function _childNodes(obj)
{
	if (!obj || !obj.childNodes) {
		return new Array()
	}

	var aoChildNodes = obj.childNodes

	var res=new Array();

	for(var i=0;i<aoChildNodes.length;i++) {
		if (aoChildNodes[i].nodeType==3) {
			if (aoChildNodes[i].nodeValue.trim().length==0) {
				continue;
			}
		}
		res.length++
		res[res.length-1] = aoChildNodes[i]
	}
	return res
}

function _firstChild(obj)
{
	return _childNodes(obj)[0]
}

function _nextSibling(obj)
{
	var oNextSibling = obj

	do {
		oNextSibling = oNextSibling.nextSibling
	}
	while(oNextSibling && oNextSibling.nodeType!=1)

	return oNextSibling
}

function _prevSibling(node)
{
	var parent = node.parentNode

	if (!parent) {
		return false
	}

	for (var i=1;i<parent.childNodes.length;i++) {
		if (parent.childNodes[i]==node) {
			return parent.childNodes[i-1]
		}
	}

	return false
}

function _removeNode(obj)
{
	if (obj.removeNode) {
		obj.removeNode(true)
		return true;
	}
	if (obj.removeChild) {
		obj.parentNode.removeChild(obj)
		return true;
	}
}

function _display(element,value)
{
	element.style.display = value

	if (oBrowserInfo && oBrowserInfo.isBrowser("opera lte 6.x.x.x")) {
		element.style.visibility = (value=="none" ? "hidden" : "visible")
	}
}
