// Event.observe(window, 'load', setupShop);
function populateCartDiv() {
	// populate shopping cart div:
	var url = '/bestilling/cartajax?task=count';
	var cartDiv = $('cart');
	var options = {
		method: 'post',
		onFailure: function(transport) {
			alert('Failed AJAX');
		},
		onSuccess: function(transport) {
			var json = transport.responseText.evalJSON(true);
	        var noOfItems = json.noOfItems;
			string = '<div style="height: 42px; line-height: 42px;">';
			string += '<div style="line-height: 42px; float: left;">';
			string += 'Du har '+noOfItems+' produkter i handlevognen. ';
			string += '<a href="" onclick="javascript: deleteCart(); return false;" title="Tøm handlevogn">';
			string += 'Tøm handlevogn</a></div>';
			string += '<a href="/bestilling/kasse" title="Fullfør bestilling" style="display: block; float: right;">';
			string += '<img src="/images/til_kassen_knapp.png" width="135" height="42" alt="Til kassen" /></a></div>';
			cartDiv.update(string);
		} 
	}
	new Ajax.Request(url, options)
}
function deleteCart() {
	if (!confirm('Sikker på at du vil tømme handlevognen?'))
		return;
	if (settings.busy)
		return;
	settings.busy = true;
	showBusyMessage();
	var url = '/bestilling/cartajax?task=delete';
	var cartDiv = $('cart');
	var options = {
		method: 'post',
		onFailure: function(transport) {
			alert('Failed AJAX');
		},
		onSuccess: function(transport) {
			settings.ajaxmessage = 'Handlevognen er tømt';
			var div = $(settings.popupmessage);
			div.update(settings.ajaxmessage);
			setTimeout('hideBusyMessage()', 1000);
			settings.busy = false;
			location.reload(true);
		} 
	}
	new Ajax.Request(url, options);
}
function deleteItem(id) {
	 $('q'+id).value = 0;
	 changeQuantity(id);
}
function changeQuantity(id) {
	if (settings.busy)
		return;
	var quantity = $('q'+id).value;
	if (quantity == 0)  {
		if(!confirm('Sikker på at du vil slette varelinjen?')) {
			location.reload(true);
			return;
		}
	}
	settings.busy = true;
	showBusyMessage();
	var url = '/bestilling/cartajax?task=changequantity&id='+id+'&quantity='+quantity;
	var quantityInput = $('q'+id);
	var options = {
		method: 'post',
		onFailure: function(transport) {
			alert('Failed AJAX');
		},
		onSuccess: function(transport) {
			settings.ajaxmessage = 'Antallet ble endret';
			var div = $(settings.popupmessage);
			div.update(settings.ajaxmessage);
			setTimeout('hideBusyMessage()', 1000);
			settings.busy = false;
			if (quantity == 0) {
				location.reload(true);
			} else {
				new Effect.Highlight(quantityInput);
				location.reload(true);
			}
		}
	}
	new Ajax.Request(url, options);
}
function addToCart(id) {
	if (settings.busy)
		return;
	settings.busy = true;
	var propertyChooser = $('propertyChooser'+id);
	if (propertyChooser) {
		if (propertyChooser.value == 0) {
			alert('Du må velge '+propertyChooser.name);
			return;
		} else {
			var extendedId = id+'~~'+propertyChooser.value;
		}
	} else {
		var extendedId = id;
	}
	showBusyMessage();
	var quantity = $('add'+id).value;
	var url = '/bestilling/cartajax?task=add&id='+extendedId+'&quantity='+quantity;
	var cartDiv = $('cart');
	var options = {
		method: 'post',
		onFailure: function(transport) {
			settings.busy = false;
			alert('Failed AJAX');
		},
		onSuccess: function(transport) {
            var json = transport.responseText.evalJSON(true);
            var text = json.text;
			settings.ajaxmessage = 'Varen er lagt til i kurven';
			var div = $(settings.popupmessage);
			div.update(settings.ajaxmessage);
			setTimeout('hideBusyMessage()', 1000);
			settings.busy = false;
			populateCartDiv();
			location.reload(true);
	        new Effect.Highlight(cartDiv);
		}
	}
	new Ajax.Request(url, options);
}
function hideBusyMessage() {
	var div = $(settings.popupmessage);
	Effect.Fade(div);
	settings.ajaxmessage = '';
}
function showBusyMessage() {
	var div = $(settings.popupmessage);
	div.update('Vent...');
	div.up(0).makePositioned();
	var size = div.up(0).getDimensions();
	div.style.left = (size.width / 2) - 130 +'px';
	var scrollTop = f_scrollTop();
	var clientHeight = f_clientHeight();
	div.style.top = scrollTop + (clientHeight / 2) - (div.getHeight()) +'px';
	Effect.Appear(div, {duration: 0.1});
}
// FROM http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html
function f_clientWidth() {
	return f_filterResults (
		window.innerWidth ? window.innerWidth : 0,
		document.documentElement ? document.documentElement.clientWidth : 0,
		document.body ? document.body.clientWidth : 0
	);
}
// FROM http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html
function f_clientHeight() {
	return f_filterResults (
		window.innerHeight ? window.innerHeight : 0,
		document.documentElement ? document.documentElement.clientHeight : 0,
		document.body ? document.body.clientHeight : 0
	);
}

// FROM http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html
function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
// FROM http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}
function chooseEvent(redirect) {
	alert('ehllo');
	// window.location = '/bestilling/velgarrangement?redirect='+redirect;
}