//TRUNCATE A STRING, THIS ONE IS A HARD CUT AT THE NUMBER OF CHARACTORS SPECIFIED BEFORE THE "..."
	function truncate_string($str, $max, $rep = '...') {
	  if(strlen($str) > $max) {
		$leave = $max - strlen($rep);
		return substr_replace($str, $rep, $leave);
	  } else {
		return $str;
	  }
	}

		
//SHORTEN A STRING, THIS ONE LEAVES THE FULL WORD BEFORE THE "..." 	
	function shorten_string($tr, $len, $tail = '...') {
		if(strlen($tr) > $len) {
		$tr = explode("\n", wordwrap(str_replace("\n", "\0", $tr), $len), 2);
		$tr = str_replace("\0", "\n", substr($tr[0], 0, $len) . $tail);
		}
		return $tr;
	}
//JAVA DROP DOWN MENU ONE ----------------------------------------------------------------------------------------------------------------------------------
	// Copyright 2006-2007 javascript-array.com
	var timeout	= 500;
	var closetimer	= 0;
	var ddmenuitem	= 0;

	// open hidden layer
	function mopen(id)
	{	
		// cancel close timer
		mcancelclosetime();

		// close old layer
		if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';

		// get new layer and show it
		ddmenuitem = document.getElementById(id);
		ddmenuitem.style.visibility = 'visible';

	}
	// close showed layer
	function mclose()
	{
		if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
	}

	// go close timer
	function mclosetime()
	{
		closetimer = window.setTimeout(mclose, timeout);
	}

	// cancel close timer
	function mcancelclosetime()
	{
		if(closetimer)
		{
			window.clearTimeout(closetimer);
			closetimer = null;
		}
	}

	// close layer when click-out
	document.onclick = mclose; 
// END OF SCRIPT -------------------------------------------------------------------------------------------------------------------------------------------

