
/*
 * cssjs
 * written by Christian Heilmann (http://icant.co.uk)
 * eases the dynamic application of CSS classes via DOM
 * parameters: action a, object o and class names c1 and c2 (c2 optional)
 * actions: swap exchanges c1 and c2 in object o
 *			add adds class c1 to object o
 *			remove removes class c1 from object o
 *			check tests if class c1 is applied to object o
 * example:	cssjs('swap',document.getElementById('foo'),'bar','baz');
 */
function cssjs(a,o,c1,c2)
{
  switch (a) {
		case 'swap':
			o.className=!cssjs('check',o,c1)?o.className.replace(c2,c1):o.className.replace(c1,c2);
		break;
		case 'add':
			if(!cssjs('check',o,c1)){o.className+=o.className?' '+c1:c1;}
		break;
		case 'remove':
			var rep=o.className.match(' '+c1)?' '+c1:c1;
			o.className=o.className.replace(rep,'');
		break;
		case 'check':
			return new RegExp('\\b'+c1+'\\b').test(o.className)
		break;
	}
}

function toggleMenu(ul_name)
{
  if(document.getElementById && document.createTextNode)
  {
    ul=document.getElementById(ul_name);
	  if(!ul){return;}
    cssjs('swap',ul,'show_menu','hide_menu');
    
    //hide other
    lis=document.getElementById('nav').getElementsByTagName('ul');
  	for(i=0;i<lis.length;i++)
  	{
  	  if (lis[i].id != ul_name)
  	  {
  	    ul=document.getElementById(lis[i].id);
  	    ul.className = 'hide_menu';
  	  }
  	}
  }
}