/**
 * Effects
 */
 
/**
 * Manual navigation highlight (set in templates)
 */
var HighlightNavCustom = '';

window.addEvent('domready', function() {	



/**
 * Highlight navigation items
 */
function HighlightNavItem(el)
{
	//orig. code
		//alternate code (because each of the first commented lines breaking in IE6/7)

	//el.parentNode.addClass('On');
		el.parentNode.className = el.parentNode.className+' On';
	
	//el.addClass('On');
		el.className = el.className+' On';

	//var childUL = el.parentNode.getElement('ul');
		var cn = el.parentNode.childNodes;
		var childUL = false;
		for(var i=0;i<cn.length;i++)
		{
			if(cn[i].nodeName == 'UL')
			{
				childUL = cn[i];
				break;
			}
		}

	if(childUL)
		childUL.style.display = 'block';
	var pn = el.parentNode.parentNode;
	while(pn.id != 'Nav-Main')//dig up, setting parents On too
	{
		if(pn.nodeName == 'LI')
		{
			pn.className = pn.className+' On';//pn.addClass('On');
			pn.childNodes[0].className = pn.childNodes[0].className+' On';//pn.childNodes[0].addClass('On')//A tag
		}
		if(pn.nodeName == 'UL')
			pn.style.display = 'block';
		pn = pn.parentNode;
	}
}

$('Nav-Main').getElements('a').each(function(el,el_i) {

	myHref = el.href+'*';
	myReq = url+Req+'*';//* for control char to stop unwanted matches
	if(
		myHref == myReq
		|| myHref.indexOf((url+Req)+'&back') != -1 //for /?page=n&id=n&back...
		|| myHref.indexOf('&'+Req.substring(2,Req.length)) != -1 //for /?foo=bar&page=n&id=n&
		|| myHref == HighlightNavCustom+'*'
	)
		HighlightNavItem(el);
});



/**
 * Special highlights for news items
 * 
 * hacks - do something more sophisitcated if other element needs this
 */

if(Req.indexOf('?page=41&') != -1)
{
	if(Req.indexOf('&cat=') == -1)
		//HighlightNavItem($('Nav-News-Current').childNodes[0]);
		HighlightNavItem($('Nav-Main').getElement('.Nav-Main-40').childNodes[0]);
	else
	{
		var Pos = Req.indexOf('&cat=');
		var D = Req.substring(Pos+5,Pos+9);
		var Re = /[0-9]{4}/;
		if(D.match(Re) && $chk('Nav-News-Archive'+D))
			HighlightNavItem($('Nav-News-Archive'+D).childNodes[0]);
	}
}
if(myReq.indexOf('?page=94*') != -1)//submit CV page
{
	HighlightNavItem($('Nav-Main').getElement('.Nav-Main-134').childNodes[0]);
}


/**
 * Accordion "drawer" effect
 */
if($chk($('Drawers')))
{
	function DrawerCtlOver(e)
	{
		if(this.className != 'Drawer-Control Drawer-Control-Open')
			this.className = 'Drawer-Control Drawer-Control-Active';
	}

	function DrawerCtlOut(e)
	{
		if(this.className == 'Drawer-Control Drawer-Control-Active')
			this.className = 'Drawer-Control';
	}

	function DrawerCtlClick(el)
	{
		if(el.Intro)
			el.Intro.style.visibility = 'hidden';
	}

	$('Drawers').getElements('.Drawer-Control').each(function(el,i){
		el.onmouseover = DrawerCtlOver;
		el.onmouseout = DrawerCtlOut;
	});

	var myDrawersList = $('Drawers').getElements('div.Drawer-Control');

	myDrawersList.each(function(el,i) {

		var ContentWrapper = el.getParent().getNext();

		if(ContentWrapper && ContentWrapper.className.indexOf('-Drawer-Content') != -1)
		{
			var Content = ContentWrapper.getElement('.Drawer-Content');
			if(Content)
			{
				Content.Ctl = el;
				el.Slide = new Fx.Slide(Content,{
					mode : 'vertical',
					onComplete : function(Drawer) { 
						if(Drawer.Ctl.Slide.open) {

						}
						else {
							if(Drawer.Ctl.Intro)
								Drawer.Ctl.Intro.style.visibility = 'visible';
						}
					}
				}).hide();
				el.onclick = function() {
					DrawerCtlClick(this);
					this.Slide.toggle(); 
				};
			}
		}
		var Intro = el.getElement('.Intro');
		el.Intro = Intro? Intro:false;
	});

	//Accordion mode
	/*var myDrawers = new Accordion($('Drawers'), 'div.Drawer-Control', 'div.Drawer-Content', {
		opacity: true,
		alwaysHide : true,
		show : -1,
		onActive: function(ctl,Drawer){
			ctl.className = 'Drawer-Control Drawer-Control-Open';
			var Intro = ctl.getElement('.Intro');
			if(Intro)
				Intro.fade('out');
		},
		
		onBackground: function(ctl,Drawer){
			ctl.className = 'Drawer-Control';
			var Intro = ctl.getElement('.Intro');
			if(Intro)
				Intro.fade('in');
		}
	});*/
}

//end window.addEvent()
});