//
// Claudio Gobetti 
// updated at 17/01/2008
//

function hide( elem, id ) 
{
	var elem_name = elem;
	if( !!id )
	{
		elem_name += String(id);
	}
	var item = document.getElementById(elem_name);
	if( item )
	{
		item.style.display = 'none';
	}
}

function show( elem, id )
{
	var elem_name = elem;
	if( !!id )
	{
		elem_name += String(id);
	}
	var item = document.getElementById(elem_name);
	if( item )
	{
		item.style.display = '';
	}
}


function hide_child_DIVs( id_parent )
{
	// how to use:
	// <div id="id_parent"><div>...</div> <div>...</div> <div>...</div> ... </div>
	// it is going to hide all the div children
	var DIVs = document.getElementById( id_parent ).childNodes;
	for( var i = 0; i < DIVs.length; i++ )
	{
		if( DIVs[i].tagName == 'DIV' )
		{
			DIVs[i].style.display = 'none';
		}
	}
}

function select_li( A_elem )
{
	// how to use:
	// <ul><li><a ... onclick="select_li(this);">...</a><li>...</ul>
	// it is going to set LI.selected and reset all the other LIs
	var LIs = A_elem.parentNode.parentNode.childNodes;
	for( var i = 0; i < LIs.length; i++ ) //(var i in LIs)
	{
		if( LIs[i].tagName == 'LI' )
		{
			old_className = LIs[i].className;
			LIs[i].className = old_className.replace(/selected/gi, '');
		}
	}
	old_className = A_elem.parentNode.className;
	A_elem.parentNode.className = old_className + ' selected';
}


function add_css_class_element( elem, css_class )
{
	var old_className = String( elem.className );
	if ( old_className != '' )
		old_className = ' ' + old_className;
	elem.className = css_class + old_className;	
}
function del_css_class_element( elem, css_class )
{
	var old_className = String( elem.className );
	old_className = old_className.replace(css_class, '');
	old_className = old_className.replace(css_class, '');
	elem.className = old_className;
}
function add_css_class_id( elem, css_class )
{
	var old_className = String( document.getElementById( id ).className );
	if ( old_className != '' )
		old_className = ' ' + old_className;
	document.getElementById( id ).className = css_class + old_className;	
}
function del_css_class_id( elem, css_class )
{
	var old_className = String( document.getElementById( id ).className );
	old_className = old_className.replace(css_class, '');
	old_className = old_className.replace(css_class, '');
	document.getElementById( id ).className = old_className;
}


function select_element( elem )
{
	add_css_class_element( elem, 'selected' );
}
function unselect_element( elem )
{
	del_css_class_element( elem, 'selected' );
}

function select_id( id )
{
	add_css_class_id( id, 'selected' );
}
function unselect_id( id )
{
	del_css_class_id( id, 'selected' );
}


function check_checkbox( elem_id )
{
	 document.getElementById( elem_id ).checked = true;
}
function uncheck_checkbox( elem_id )
{
	 document.getElementById( elem_id ).checked = false;
}


	function click_checkbox_id( checkbox_id )
	{
		if( document.getElementById( checkbox_id ).checked )
		{
			document.getElementById( checkbox_id ).checked = false;
		}
		else
		{
			document.getElementById( checkbox_id ).checked = true;
		}
	}
	
	function highlight_row( checkbox_id )
	{
		var tr = document.getElementById( checkbox_id );
		for( var i=0; i<10; i++ )
		{
			tr = tr.parentNode;
			if( tr.tagName == 'TR' )
			{
				break;
			}
		}
		
		if( document.getElementById( checkbox_id ).checked )
		{
			select_element( tr );
		}
		else
		{
			unselect_element( tr );
		}
	}








