var bodyID = '';
var currHTML = ''
var expanded = false;
var expandedGroup = '';
var expandTimer;
var collapseTimer;
var expandGroups = {};

function makeCleanTitle(str)
{
	var locString = capitalise(str);
	return locString.replace('-',' ');
}
function makeDirtyTitle(str)
{
	var locStr = str.toLowerCase();
	return locStr.replace(' ', '-');
}
function capitalise(str)
{
	var locString = str.charAt(0).toUpperCase() + str.slice(1);
   	return locString;
}
function expandSubs(parent, time) 
{
	$.each(expandGroups[parent].children, function(idx, child){
		$(child).animate({
			'height':30,
			'border-bottom-width':1
		}, time);
	});
	expandGroups[parent].expanded = true;
}
function collapseSubs(parent)
{
	$.each(expandGroups[parent].children, function(idx, child){
		$(child).css({
			'height':0,
			'border-bottom-width':0
			});
	});
	expandGroups[parent].expanded = false;
}

$(function(){
	
	var newTitle = makeCleanTitle($('#content').find('h1').html());
	if(newTitle == 'Home') {newTitle = 'Welkom';}
	$('#content').find('h1').html(newTitle);
	
	//bodyID = $('body').attr('id');
	//currHTML = $('li.current a').html();
	
	$('li.hasSubs').each(function(idx){
		var elm = $(this);
		var parentID = makeDirtyTitle($('a', elm).html());
		elm.attr('id', parentID);
		expandGroups[parentID] = {
			'name'		: parentID,
			'children'  : [],
			'hoverGroup': [$('#' + parentID)],
			'expandedFromStart'  : false,
			'expanded'  : false,
			'timer'		: ''
		}
		while(elm.next().hasClass('isSub')) {
			elm = elm.next();
			elm.data('parent',parentID);
			expandGroups[parentID].children.push(elm);
			expandGroups[parentID].hoverGroup.push(elm);
		}
	});
	
	if($('li.isSub.current').length > 0 || $('li.hasSubs.current').length > 0) {
		expanded = true;
		if($('li.isSub.current').length > 0) {
			var elm = $('li.isSub.current');
			while(!elm.prev().hasClass('hasSubs')) {
				elm = elm.prev();
			}
			elm = elm.prev();
			expandedGroup = elm.attr('id');
		} else if ($('li.hasSubs.current').length > 0) {
			expandedGroup = $('li.hasSubs.current').attr('id');
		}
	}

	$.each(expandGroups, function(idx, group) {
		if (group.name == expandedGroup)	{
			group.expandedFromStart = true;
		} else {
			$.each(group.children, function(idx, child){
				$(child).css({'height':0, 'border-bottom-width':0})
			});
			/*
			
			console.log($(group.hoverGroup));
			var
			$(group.hoverGroup).mouseover(function(){
				console.log('0hovering');
				group.timer = setTimeout(function(){
					expandSubs(group.name, 500);
				}, 350);
			});
			$(group.hoverGroup).mouseout(function(){
				clearTimeout(group.timer);
				collapseSubs(group.name);
			});
			*/
		}
		
	})

	$('li.hasSubs').mouseover(function(){
		var expID = $(this).attr('id');
		if (!expandGroups[expID].expandedFromStart && !expandGroups[expID].expanded) {
			$.each(expandGroups, function(idx, group) {
				if (group.expanded && !group.expandedFromStart) {
					collapseSubs(group.name);
				}
			});
			expandGroups[expID].timer = setTimeout(function(){
				expandSubs(expID, 350);
			}, 350);
		}
	});
	/*
	$('li.hasSubs').mouseout(function(){
		expID = $(this).attr('id');
		clearTimeout(expandGroups[expID].timer);
		if (!expandGroups[expID].expanded && expandGroups[expID].expanded) {
			expandGroups[expID].timer = setTimeout(collapseSubs, 350, expID);
		}
	});
	$('li.isSub').mouseover(function(){
		if (!expandGroups[$(this).data('parent')].expandedFromStart) {
			clearTimeout(expandGroups[$(this).data('parent')].timer);
		}
	});
	$('li.isSub').mouseout(function(){
		if (!expandGroups[$(this).data('parent')].expandedFromStart) {
			expandGroups[$(this).data('parent')].timer = setTimeout(collapseSubs, 350, expID);
		}
	});
	*/
	
});


