var currentPage, hashName, hashPath, hashVars = "";

function updateSubcontent()
{	
	if (hashPath != "")
	{
		var pathItems = hashPath.split('/');
		var firstStep = pathItems[1];
		
		if (hashName == "opinie" || hashName == "persberichten"){
			var blogtype = (hashName == "opinie") ? 0 : 1;
			if (firstStep == "all"){
				$("div#all-posts").html('<div id="contentloader"></div>');
				$("div#all-posts").load("scripts/blogall.php?t="+blogtype);
			} else {
				$("div#main-post").html('<div id="contentloader"></div>');
				$("div#main-post").load("scripts/blogitem.php?id="+firstStep);
			}
		}
		
		if (hashName == "standpunten"){
			$("div.standpunt").each(function(){
				if ($(this).hasClass(firstStep)) {
					$(this).css("display","inline");
				} else {
					$(this).css("display","none");
				}
			});
		}
	}
}

function updateContent()
{	
	var fullHash = location.hash;

	hashName = (hashName = fullHash.match(/^(?:#)([a-z0-9_\-]*)/i)) ? hashName[1] : "";
	hashName = (hashName == "") ? "home" : hashName;
		
	hashPath = (hashPath = fullHash.match(/^(?:#)(?:[a-z0-9_\-]*)((?:\/[a-z0-9_\-]+)+\/?)/i)) ? hashPath[1] : "";
	hashVars = (hashVars = fullHash.match(/^(?:#)(?:(?:[a-z0-9_\/\-]*)\?)(.+)/i)) ? hashVars[1] : "";
	
	if (currentPage != hashName)
	{
		$("div#content").html('<div id="contentloader"></div>');
		currentPage = hashName;
		
		switch (hashName)
		{
			// Home
			case "home":
				$("div#content").load("content/home.php",updateSubcontent);
				break
			
			// Wie zijn wij?
			case "missieenvisie":
				$("div#content").load("content/missieenvisie.php",updateSubcontent);
				break
			case "statuten":
				$("div#content").load("content/statuten.php",updateSubcontent);
				break
			case "bestuur":
				$("div#content").load("content/bestuur.php",updateSubcontent);
				break
			
			// Standpunten
			case "opinie":
				$("div#content").load("content/opinie.php",updateSubcontent);
				break
			case "persberichten":
				$("div#content").load("content/pers.php",updateSubcontent);
				break
			case "standpunten":
				$("div#content").load("content/standpunten.php",updateSubcontent);
				break
			
			// Doe mee
			case "kalender":
				$("div#content").load("content/kalender.php",updateSubcontent);
				break
			case "doneer":
				$("div#content").load("content/doneer.php",updateSubcontent);
				break
			
			// Lid worden?
			case "lidworden":
				$("div#content").load("content/lidworden.php",function(){
					updateSubcontent();
					
					// After load
					$("input#btnLid").click(function(){
						// Check Fields
						var fieldsok = true;
						$("form#frmLid input.req").each(function(){
							if ($(this).attr("value") == "")
							{
								fieldsok = false;
							}
						});
						
						// Submit data or...
						if (fieldsok)
						{
							$("form#frmLid input#btnLid").attr("disabled","disabled");
						
							var frmData = new Object();
							$("form#frmLid :input").each(function(){
								frmData[$(this).attr('name')] = $(this).attr('value');
							});
							
							$.ajax({type: "POST", url: "scripts/subscribe.php", data: frmData, dataType: "json", success: function(response){
									alert(response.msg);
									if (response.success) {
										location.hash = '#lidworden-succes';
									} else {
										$("form#frmLid input#btnLid").removeAttr("disabled");
									}
								}
							});
						// show an error message
						} else {
							alert("Gelieve alle verplichte velden in te vullen");
						}
					});
					
				});
				break
				
			case "lidworden-succes":
				location.hash = '#lidworden';
				break
			
			case "disclaimer":
				$("div#content").load("content/disclaimer.php",updateSubcontent);
				break
			
			// Error...
			default:
				$("div#content").html('Page ' + hash + ' not found.');
		}
	} else {
		updateSubcontent();
	}
}

var calObj = new Object();
	calObj.curMonth = $.datepicker.formatDate('mm',new Date());
	calObj.curYear 	= $.datepicker.formatDate('yy',new Date());
	
	$.ajax({url: "scripts/calender.php?y=" + calObj.curYear + "&t=0", dataType: "json", async: false,
		success: function(data){
			calObj.events = data;
		}
	});
	
	calObj.today 	= '';
	calObj.selDate 	= '';
	calObj.jumped	= false;

function popDate(str)
{
	$("div#datepop").remove();
	if(calObj.selDate != str)
	{
		var activities = "";
		$.each(calObj.events[calObj.curYear][calObj.curMonth], function(i,v){
			if (v[0] == str)
			{
				activities += (activities !='') ? '<div class="sidebardivider white small"></div>' : '';
				activities += '<p class="white">' + v[1] + '</p>';
			}
		});
	
		var popcontent = '<b>' + str + '</b><div class="sidebardivider white"></div>' + activities;
		$("div#sidebar").prepend('<div id="datepop">' + popcontent + '</div>');
		calObj.selDate = str;
	} else {
		calObj.jumped = true;
		
		$('div#kalenderbox').datepicker( 'setDate' , calObj.today )
		calObj.selDate = '';
	}
}

function loadDates(y,m)
{
	calObj.curMonth = (m < 10) ? '0' + m : m;
	if (calObj.curYear != y)
	{
		if (y > calObj.curYear && !(calObj.jumped))
		{
			var ajaxurl = "scripts/calender.php?y=" + (y+1) + "&t=1";
		} else {
			var ajaxurl = "scripts/calender.php?y=" + (y-1) + "&t=1";
		}
		
		$.ajax({url: ajaxurl, dataType: "json",
			success: function(data){
				$.extend(calObj.events, data);
			}
		});
		
		calObj.jumped = false;
	}
	calObj.curYear 	= y;
}

function checkDates(fullDate)
{
	var found = false;
	$.each(calObj.events[calObj.curYear][calObj.curMonth], function(i,v){
		if (v[0] == fullDate)
		{
			found = true;
			return false;
		}
	});
	return found;
}

function loadBlog()
{
	$("div#latest-blog").load("scripts/bloglatest.php");
	setTimeout('loadBlog()',120000);
}

$(function(){	
	loadBlog();

	$("<img/>").attr("src", "images/btnHomeOn.jpg");
	$("<img/>").attr("src", "images/btnWieOn.jpg");
	$("<img/>").attr("src", "images/btnStandpuntenOn.jpg");
	$("<img/>").attr("src", "images/btnKalenderOn.jpg");
	$("<img/>").attr("src", "images/btnLidOn.jpg");
	$("<img/>").attr("src", "images/btnDot.jpg");
	
	$('div#kalenderbox').datepicker($.datepicker.regional['nl']);
	calObj.today = $('div#kalenderbox').datepicker('getDate');
	
	$('div#kalenderbox')
		.datepicker('option', 'onSelect', function(dateString) { popDate(dateString); })
		.datepicker('option', 'onChangeMonthYear', function(y,m) { loadDates(y,m); })
		.datepicker('option', 'beforeShowDay', function(fullDate) { return [checkDates($.datepicker.formatDate('dd/mm/y',fullDate)), '', '']; });

	$("div.button")
	.click(function(){
		window.location = '#' + $(this).attr('class').substr(7,$(this).attr('class').length-10);
	})
	.mouseenter(function(){
		$(this)
		.toggleClass("on")
		.prepend('<div id="hoverdot"></div>');
		
		if ($(this).hasClass('missieenvisie'))
		{
			$(this).prepend('<div id="linkdown"><a href="#missieenvisie" title="Missie en Visie">Missie en Visie</a> -<br /><a href="#statuten" title="Statuten">Statuten</a> -<br /><a href="#bestuur" title="Bestuur">Bestuur</a> -<br /></div>');
		}
		
		if ($(this).hasClass('standpunten'))
		{
			$(this).prepend('<div id="linkdown"><a href="#opinie" title="Nieuws &amp; Opinie">Nieuws &amp; Opinie</a> -<br /><a href="#persberichten" title="Persberichten">Persberichten</a> -<br /><a href="#standpunten" title="Standpunten">Standpunten</a> -<br /></div>');
		}
		
		if ($(this).hasClass('kalender'))
		{
			$(this).prepend('<div id="linkdown"><a href="#kalender" title="Kalender">Kalender</a> -<br /><a href="http://forum.animo-antwerpen.be/" title="Forum" target="_blank">Forum</a> -<br /><a href="#doneer" title="Doneer">Doneer</a> -<br /></div>');
		}
	})
	.mouseleave(function(){
		$(this).toggleClass("on");
		$("div#hoverdot").remove();
		$("div#linkdown").remove();
	});
	
	$("div.socialbutton.facebook").click(function(){ window.location = 'http://www.facebook.com/group.php?gid=24223026099&v=wall'; });
	$("div.socialbutton.twitter").click(function(){ window.location = 'http://www.twitter.com/AnimoAntwerpen'; });
	$("div.socialbutton.youtube").click(function(){ window.location = 'http://www.youtube.com'; });
	
	$("div.socialbutton.spa").click(function(){ window.location = 'http://www.s-p-a.be'; });
	$("div.socialbutton.stuant").click(function(){ window.location = 'http://www.animostuant.be'; });
	$("div.socialbutton.abvv").click(function(){ window.location = 'http://www.abvv-regio-antwerpen.be'; });
	$("div.socialbutton.abvvj").click(function(){ window.location = 'http://www.abvvjongeren.be'; });
	
	if ("onhashchange" in window) {
		window.onhashchange = updateContent;
		updateContent();
	} else {
		$(document.body).hashchange(updateContent);
		$.History.init();
	}
});