//scriptberichten
$( function() {
	$('.noscriptmessage').livequery(function() { $(this).hide(); });
	$('.scriptmessage').livequery(function() { $(this).show(); });
} );

//image preloading
$.preloadImages = function() { for (var i = 0; i < arguments.length; i++) { $("<img>").attr("src", arguments[i]); } };
$( function() { $.preloadImages("/images/layout/start_over.gif", "/images/layout/fotoboek_over.gif", "/images/layout/activiteiten_over.gif", "/images/layout/info_over.gif", "/images/layout/prikbord_over.gif"); } );

//link icons fix
$( function() {
	$('a[rel="external"]').livequery(function() { $(this).addClass("external"); });
	$('a[href ^="mailto:"]').livequery(function() { $(this).addClass("mailto"); });
} );

//set hash
function setHash(hash) {
	window.location.hash = hash;
	var pos = document.title.lastIndexOf("#");
	if (pos > 0) document.title = document.title.substr (0, pos);
}

//menu-hovers
function getHoverImg(menu) { return "/images/layout/" + menu.substring(menu, menu.length-4) + "_over.gif"; };
function getNormalImg(menu) { return "/images/layout/" + menu.substring(menu, menu.length-4) + ".gif"; };
$( function() {
	$("ul#menu li.mega").hover(
		function() {
			//$(this).children("div.mega").hide();
			var id = $(this).attr("id");
			$(this).children("h2").children("a").children("img").attr("src", getHoverImg(id));
			$(this).children("span").show();
			$(this).children("div.mega").stop().css("padding", "5px").css("height", "auto").slideDown(300);
		},
		function() {
			$(this).children("h2").children("a").children("img").attr("src", getNormalImg($(this).attr("id")));
			$(this).children("span").hide();
			$(this).children("div.mega").stop().slideUp(300);
		}
	);
} );

//uitklaplinks
var klapUitDataStarted = new Object();
var klapUitDataLoaded = new Object();

function klapUit(uitTeKlappen) {
	uitTeKlappen.stop().css("height", "auto").slideDown(function() {
		$("div#footer").hide().show().css("bottom", 0); //IE7 fix
		if (this.style.removeAttribute) //IE7 ClearType fix
			this.style.removeAttribute("filter");
	});
	uitTeKlappen.prev().children().hide();
	uitTeKlappen.prev().children(".closelink").show();
	$("div#footer").hide().show(); //IE7 fix
}

function loadData(id, linkPar, pageLink, fromError) {
	if (klapUitDataStarted[id])
		return;
	klapUitDataStarted[id] = true;
	$.ajax({ url: "/ajax.php?getdata=" + id, type: "GET", dataType: "html", cache: true, timeout: 5000,
		success: function(data, textStatus) {
			klapUitDataLoaded[id] = true;
			var infoDiv = $('<div>' + data + '<p class="backlink"><a href="#">dichtklappen</a></p></div>').hide();
			linkPar.append('<a href="#" class="closelink">Extra info verbergen</a>').after(infoDiv);
			infoDiv.children().css("visibility", "visible"); //IE7 fix
			klapUit(infoDiv);
		},
		error: function() {
			linkPar.children().hide();
			if (fromError)
				linkPar.children(".errorlink").show();
			else
				linkPar.append('<span class="errorlink">De data kon niet worden geladen. <a href="#">Probeer opnieuw</a> of <a href="' + pageLink + '">bekijk de info op een aparte pagina</a>.</span>');
		},
		complete: function(XMLHttpRequest, textStatus) {
			klapUitDataStarted[id] = false;
		}
	});
}

$( function() {
	$("a.openlink").click( function() {
		var linkPar = $(this).parent();
		var id = linkPar.attr("id");
		$(this).hide();
		if (klapUitDataLoaded[id])
			klapUit(linkPar.next());
		else {
			linkPar.append('<span class="slideloading">Data laden&hellip;</span>');
			loadData(id, linkPar, $(this).attr("href"), false);
		}
		return false;
	});
	
	$("span.errorlink a:first-child").live( "click", function() {
		var linkPar = $(this).parent().parent();
		var id = linkPar.attr("id");
		loadData(id, linkPar, $(this).siblings("a").attr("href"), true);
		$(this).parent().hide();
		$(this).parent().siblings(".slideloading").show();
		return false;
	});
	
	$("a.closelink").live( "click", function() {
		$(this).hide();
		$(this).siblings("a").show();
		var linkPar = $(this).parent();
		$(this).parent().next().stop().css("height", "auto").slideUp(function() {
			linkPar.css("height", linkPar.height()).css("height", "auto"); //IE8 height fix
			$("div#footer").hide().show(); //IE7 fix
		});
		return false;
	});
	
	$(".backlink a").live( "click", function() {
		$(this).parent().parent().prev().children("a").toggle();
		$(this).parent().parent().stop().css("height", "auto").slideUp(function() {
			$("div#footer").hide().show(); //IE7 fix
		});
		return false;
	});
} );
