function headerImages($container)
{
	if($container.children().length)
	{
		$container.innerfade(
		{
			speed: "slow",
			timeout: 7000,
			type: "random"
		});
	}
}

function deleteEmptyMessages()
{
	var $emptyMessages = $("li.emptyMessage", "#content");
	$emptyMessages.remove();
}

function checkEmptyUls()
{
	var $uls = $("#content ul");
	var liMessage = '<li class="emptyMessage activiteit">Sorry geen activiteiten voor deze maand met deze categorie</li>';
	var count = $uls.length;

	deleteEmptyMessages();

	for(var i=0; i < count;i++)
	{
		var $tempUl = $($uls[i]);

		if($tempUl.find("li:visible").length === 0)
		{
			$tempUl.append(liMessage);
		}
	}
}

function handleEventFilter(e)
{
	var $spans = $("#filter span");
	var span = e.target;
	var $span = $(span);
	var id = span.id;

	var $items = $("ul.activiteiten li", document.getElementById('content'));

	if(id !== 'all')
	{
		$items.filter("."+id).show();
		$items.not("."+id).hide();
		$spans.css('opacity',0.5);
		$span.css('opacity',1);
		checkEmptyUls();
	}
	else
	{
		deleteEmptyMessages();
		$spans.css('opacity',1);
		$items.show();
	}
}

function setEventFilter($filter)
{
	$filter.find('span').click(handleEventFilter);
}

function facebookWidget()
{
	var widget = '<fb:like-box profile_id="106232046085163" width="250" height="260" connections="8" stream="false" header="false"></fb:like-box>';
	$('#fb-fans').append(widget);
}

function facebookComments()
{
	if($('#fb-comments').length > 0)
	{
		var url = $('link[rel=canonical]').attr('href');
		var comments = '<fb:comments migrated="1" href="'+url+'"></fb:comments>';
		$('#fb-comments').append(comments);
	}
}

// Shop
var orders = [];
var $product_container = {};
var $product_empty = {};

function calcTotal()
{
	var count = orders.length;
	var total = 0;
	for(var i=0;i<count;i++)
	{
		total += (parseInt(orders[i].amount) * parseFloat(orders[i].price))
	}
	return total;
}

function getProductById(id)
{
	var count = products.length;
	for(var i=0;i<count;i++)
	{
		if(products[i].id === id)
		{
			return products[i];
			break;
		}
	}
	return {};
}

function addOrder(id, amount_product)
{
	// Delete order if already in pool
	deleteOrder(id);
	// Create order by product and amount
	var order = getProductById(id);
	order.amount = amount_product;
	// Add product to array
	orders.push(order);
	// Hide empty-message
	$product_empty.css('display', 'none');
	// Micro template orders
	var output = $.template(true, '/js/orders.tpl', orders, true);
	output += '<p id="total">Totaal: '+calcTotal()+' Euro</p>';
	$product_container.html(output);
}

function deleteOrder(id)
{
	var amount = orders.length;
	var new_array = [];
	for(var i=0;i<amount;i++)
	{
		if(orders[i].id !== id)
		{
			new_array.push(orders[i]);
		}
	}
	orders = new_array;
	if(orders.length != 0)
	{
		$product_container.html($.template('/js/orders.tpl', orders));
	}
	else
	{
		$product_empty.show();
		$product_container.html("");
	}
}

// Document.load
jQuery(function($)
{
	// Setup Google Analytics
	$.glamGA('UA-21371766-1');

	// Setup Utilities
	$.glamUtilities();

	var $body = $("body");

	if($body.hasClass("kalender"))
	{
		setEventFilter($("#filter"));
	}

	headerImages($("#headerimages"));

	// Shop
	var $shop_buttons = $("div.product button");
	$product_container = $("#orders_text");
	$product_empty = $("#no_orders");

	$shop_buttons.click(function()
	{
		var product_id = parseInt(this.id.replace('product-',''));
		addOrder(product_id,parseInt($("#select-"+product_id).val()));
	});

	$('p span.delete', $product_container).live('click', function() {
		deleteOrder(parseInt(this.id.replace('del-','')));
	});

	$('p select.cart-editor', $product_container).live('change', function() {
		addOrder(parseInt(this.id.replace('selectorder-','')), this.value);
	});
});

facebookWidget();
facebookComments();
