/*
  Object finding functions
 */


function locParWithClass ( obj, className ) {

	while ( (obj != null) && (obj.tagName != 'BODY') && (obj.className != className) ) { obj = obj.parentNode; }
	return ((obj == null) || (obj.tagName == 'BODY'))? null : obj;

}

function locParWithTagName ( obj, tagName ) {

	while ( (obj != null) && (obj.tagName != 'BODY') && (obj.tagName != tagName) ) { obj = obj.parentNode; }
	return ((obj == null) || (obj.tagName == 'BODY')) ? null : obj;

}

function locChildWithId ( obj, id ) {

	for ( var x = 0 ; x < obj.childNodes.length ; x++ ) {
		var cnode, node = obj.childNodes[x];
		if ( node.id == id )
			return node;
		else if ( cnode = locChildWithId(node,id) )
			return cnode;			
	}

}

function locChildWithClass ( obj, className ) {

	for ( var x = 0 ; x < obj.childNodes.length ; x++ ) {
		var cnode, node = obj.childNodes[x];
		if ( node.className == className )
			return node;
		else if ( cnode = locChildWithClass(node,className) )
			return cnode;			
	}

}

