function init() {
	var pages = document.getElementById('menu').getElementsByTagName("a"), total = pages.length, element, parent;
	
	for(var i = 0; i < total; ++i) {
		element = pages[i];
		
		if(element.getAttribute('id') == page) {
			element.className += ' selected';
			
			parent = getParent(element);
			parent.className += ' selected';
			
			if(element.parentNode.parentNode.className == 'sub') {
				getParent(parent).className += ' selected';
			}
		}
	}
	
	$('#search_field', '#search_form').focus(function() {
		$(this).css('backgroundColor', '#eeeeee').css('borderColor', '#333333').css('color', '#000000');
		if($(this).val() == 'Sök') {
			$(this).val('');
		}
	}).blur(function() {
		$(this).css('backgroundColor', '#ffffff').css('borderColor', '#bbbbbb').css('color', '#333333');
		if($(this).val() == '') {
			$(this).val('Sök');
		}
	});
	
	$('select', '#search_form').bind('change', function() {
		$('#search_form').attr('action', '/'+$(this).val());
	});
	
	$('a[target="_image"]').click(enlarge);
}

function getParent(element) {
	return element.parentNode.parentNode.parentNode.childNodes[0];
}

function send(obj, type, returnFunc, target) {
	var params = new Object, validated = true, obj = $(obj), parent = obj.parent();
	
	parent.find('input, textarea').each(function() {
		var input = $(this);
		if(input.attr('req') == 'required' && input.val() == '') {
			input.attr('class', 'required');
			validated = false;
		} else if(input.attr('req') == 'required') {
			input.removeClass('required');
			params[input.attr('name')] = input.val();
		} else {
			params[input.attr('name')] = input.val();
		}
	});
	
	if(validated) {
		obj.attr('disabled', 'disabled').html('Vänta');
		parent.find('input, textarea').attr('disabled', 'disabled');
		parent.find('.form-alert').html('');
		
		if(!isNaN(page)) {
			params.page = page;
			params.type = type;
			
			$.post('resources/send.php', params, function(response) {
				obj.html('Skickat');
				returnFunc(target, response);
			});
		} else {
			alert('Fel: 67');
		}
	} else {
		parent.find('.form-alert').html('Var god fyll i alla rödmarkerade fält');
	}
}

function insert(target, content) {
	$(content).prependTo('#'+target).hide().show('slow');
}

function mail(target, content) {
	if(content == 'Error') {
		alert('Ett fel har uppstått.');
	} else {
		alert('Ditt meddelande har skickats.');
	}
}

function enlarge(event) {
	var tint = $('<div id="tint"></div>').appendTo('body'),
		dialog = $('<div id="dialog" title="Klicka för att stänga förhandsgranskningen"></div>').appendTo('body'),
		src = $(this).find('img').attr('src'),
		node = this.nodeName.toLowerCase(),
		image = new Image();
	
	if(node == 'a') {
		event.preventDefault();
		src = '/bilder/'+src.substr(src.lastIndexOf('/') + 1);
	}
	
	if(node == 'div') {
		src = src.replace("thumbs", "bilder");
	}
	
	image.onload = function(){
		var width = image.width, height = image.height;
		
		if(width > 800 || height > 500) {
			var aspectRatio, newWidth, newHeight;
			if(width >= height) {
				aspectRatio = height / width;
				
				if(width < 800) {
					newHeight = parseInt(aspectRatio * width);
					newWidth = width;
				} else {
					newHeight = parseInt(aspectRatio * 800);
					newWidth = 800;
				}
			} else {
				aspectRatio = width / height;
				newWidth = parseInt(aspectRatio * 500);
				newHeight = 500;
			}
		} else {
			var newWidth = width;
			var newHeight = height;
		}
		
		$(dialog).html('<img src="'+src+'" width="'+newWidth+'" height="'+newHeight+'" /><div id="close_btn"></div>')
				 .css('width', newWidth+'px')
				 .css('height', newHeight+'px')
				 .css('margin-top', '-'+(newHeight/2)+'px')
				 .css('margin-left', '-'+(newWidth/2)+'px');
	}
	image.src = src;

	$('#tint, #dialog').click(removeTint);
}

function removeTint() {
	$('#tint, #dialog').remove();
}


function getHighestDepth(container, selector) {
	var highestZ = 0;
	
	$(container).find(selector).each(function() {
		var thisZ = parseInt($(this).css('z-index'));
		highestZ = (thisZ > highestZ) ? thisZ : highestZ;
	});
		
	return highestZ+1;
}

function slide() {
	if(sli_max > 1) {
		sli=(sli+1==sli_max)?0:sli+1;
		$('#js-slider').find('#'+sli).css('opacity', 0).css('z-index', getHighestDepth('#js-slider', 'img')).animate({'opacity': 1}, 2000);
	}
}

function updateCart(stop) {
	$.post('/resources/cart.php', { action: 'update' }, function(r) {
		if(r == '') return;
		r = $.parseJSON(r);
		
		if((stop || '') == 'stop') {
			$('#total', '#cart').html('Kundvagn - Totalt: '+r.total+'');
			return;
		}
		
		$('html, body').stop().animate({scrollTop: '0px'}, 'slow', function() {
			// $('#total', '#cart').html('Totalt '+r.total+' kr inkl. moms');
			$('#total', '#cart').html('Kundvagn - Totalt: '+r.total+'');
			
			$("#total").animate({opacity:0},150, "linear", function() {
			
				$("#kundvagn").css("background", "#C0F6BA");
			
  				$(this).animate({opacity:1},150, "linear", function() {
  				
  					$("#kundvagn").css("background", "#eeeeee");
  			
  					$(this).animate({opacity:0},150, "linear", function() {
  					
  						$("#kundvagn").css("background", "#C0F6BA");
  						
  						$(this).animate({opacity:1},150, "linear", function() {
  						
  							$("#kundvagn").css("background", "#eeeeee");
  							
  						});
  					
  					});
  					
  				});
  			
			});
			
		});
		
	});
}

function google_maps(coords) {
	var coords = $.trim(coords).split('-');
	if(coords.length != 2) return;

	document.write('<div id="map_canvas"></div>');
	var LatLng = new google.maps.LatLng(coords[0], coords[1]);
	var map = new google.maps.Map(document.getElementById("map_canvas"), { zoom: 13, center: LatLng, mapTypeId: google.maps.MapTypeId.ROADMAP });
	var marker = new google.maps.Marker({ map:map, draggable:false, animation: google.maps.Animation.DROP, position: LatLng});
}
