function bubbleCancel(evt){
	evt.cancelBubble = true;
	if (evt.stopPropagation) {
		evt.stopPropagation();
	}
}

function collapseSiblings(el){
	var otherLists = $(el).siblings();
	for (var i=0; i < otherLists.length; i++){
		if (otherLists[i].hasClassName("Expanded") && otherLists[i].id != 'm_261'){
			menuToggle(otherLists[i]);				   
		}
	}
}

function loadMenu(el){
	var id = el.id.split("_")[1];
	var url = "/LoadMenu/";
	var params = "parentId=" + id;
	$(el).addClassName('Loading');
	var ajax = new Ajax.Updater( {success: el}, url, {method: 'post', parameters: params, insertion: Insertion.Bottom, evalScripts:true} );
}

function menuToggle(el){
	var classNames = $(el).classNames() + "";
	var classes = classNames.split(" ");
	var IsExpanded = false;
	for (var j=0; j < classes.length; j++){
		if (classes[j] == 'Expanded') IsExpanded = true;
		if (classes[j] != 'Current')
			$(el).removeClassName(classes[j]);
	}
	if (IsExpanded) {
		var lists = $A($(el).getElementsByTagName("ul"));
		if (lists.length){
			Effect.BlindUp(lists[0], {duration:0.5});
		}
		$(el).addClassName('Collapsed');
	}
	else {
		var lists = $A($(el).getElementsByTagName("ul"));
		if (lists.length){
			Effect.BlindDown(lists[0], {duration:0.5});
			$(el).addClassName('Expanded');
			collapseSiblings(el);
		}
		else {
			loadMenu(el);
		}
	}
}

Event.observe($('LeftNav'), 'click', function(evt){
	var target = Event.element(evt);
	if (target.tagName.toLowerCase() == 'div') target = target.ancestors()[0];
	if (target.hasClassName('Expanded') || target.hasClassName('Collapsed')){
		return menuToggle(target);
	}
});


//CF
if (window.ColdFusion) ColdFusion.required['keyword']=true;

_CF_checkSearchForm = function(_CF_this)
{
	//reset on submit
	_CF_error_exists = false;
	_CF_error_messages = new Array();
	_CF_error_fields = new Object();
	_CF_FirstErrorField = null;

	//form element keyword required check
	if( !_CF_hasValue(_CF_this['keyword'], "TEXT", false ) )
	{
		_CF_onError(_CF_this, "keyword", _CF_this['keyword'].value, "Please enter a keyword.");
		_CF_error_exists = true;
	}


	//display error messages and return success
	if( _CF_error_exists )
	{
		if( _CF_error_messages.length > 0 )
		{
			// show alert() message
			_CF_onErrorAlert(_CF_error_messages);
			// set focus to first form error, if the field supports js focus().
			if( _CF_this[_CF_FirstErrorField].type == "text" )
			{ _CF_this[_CF_FirstErrorField].focus(); }

		}
		return false;
	}else {
		return true;
	}
}

