function addIconContainer(target){
	$('<div class="icons"></div>').appendTo($(target));
}

function fade_in(target, content){
	if(!$(target).is(":hidden")){
		fade_out(target);
	}
	$(target).html(content);
	$(target).slideDown(50);
}
function fade_out(target){
	$(target).slideUp(50);
}

function init_collapsible(){
	$(".collapse").each(function(){
		$(this).find("div,menu,ul").hide();
	});
	$(".collapse").each(function(){
		$(this).mouseenter(function(){
			$(this).find("div,menu,ul").slideDown(70);
		});
		$(this).mouseleave(function(){
			$(this).find("div,menu,ul").slideUp(70);
		});
	});
}

function init_menu(){
	$("menu#main-menu").find("li").each(function(){
		$(this).children("menu").hide();
		$(this).mouseenter(function(){
			$(this).children("menu").slideDown(100);
		});
		$(this).mouseleave(function(){
			$(this).children("menu").slideUp(100);
		});
	});
}

function init_expanding(){
	$(".expanding").find("li").each(function(){
		$(this).animate({height: "25pt"}, 0);
		$(this).mouseenter(function(){
			$(this).animate({height: "100%"}, 100);
		});
		$(this).mouseleave(function(){
			$(this).animate({height: "25pt"}, 100);
		});
	});
}

function init_site(){
	init_collapsible();
	init_expanding();
	init_menu();
}

function addIcon(target, action, icon, help_text){
	icons = $(target).children("div.icons");
	if(!icons.length){
		addIconContainer(target);
		icons = $(target).children("div.icons");
	}
	if(typeof help_text == 'undefined')
		help_text = "";
	switch(typeof action) {
		case "string":
			action = $.get(action);
			break;
		case "function":
			break;
		default:
			alert("JavaScript error: action must be a string or function in addIcon");
	}
	$('<img class="icon_small" src="/media/images/' + icon + '" alt="' + help_text + '"/>').click(action).appendTo(icons);
}

function removeIcons(target) {
	$(".icons", $(target)).remove();
}


function set_loading(element){
	if(!$(element).hasClass("waiting_container")){
		$(element).addClass("waiting_container");
		$(element).append('<div class="waiting">');
	}
}

function clear_loading(element){
	if($(element).hasClass("waiting_container")){
		$(element).find("div.waiting").remove()
		$(element).removeClass("waiting_container");
	}
}

