var Vormwijs = {};

Vormwijs.loadMap = function(path, latitude, longitude)
{
	// Stop image from loading
	$('.map img').removeAttr('src');

	google.load('maps', 2, {'language' : 'nl'});
	google.setOnLoadCallback(function()
	{
		Vormwijs.gmapsBuild(path, latitude, longitude);
	});
}

Vormwijs.gmapsBuild = function(path, latitude, longitude)
{
	var map = new google.maps.Map2(document.getElementById('map'));
	var center = new GLatLng(latitude, longitude);
	var posish = new GLatLng(latitude + .001, longitude); // make space for marker

	map.setCenter(posish, 16);
	map.addControl(new GSmallMapControl());
	map.savePosition();

	// Expanded marker (default show)
	var markerImgExp = new GIcon();
	markerImgExp.image = path + '/src/img/pijl-pand.png';
	markerImgExp.iconSize = new GSize(204, 203);
	markerImgExp.iconAnchor = new GPoint(99, 203);

	var markerExpanded = new GMarker(center, {icon : markerImgExp});
	map.addOverlay(markerExpanded);

	// Collapsed marker
	var markerImgCol = new GIcon();
	markerImgCol.image = path + '/src/img/pijl-klein.png';
	markerImgCol.iconSize = new GSize(16, 16);
	markerImgCol.iconAnchor = new GPoint(7, 9);

	var markerCollapsed = new GMarker(center, {icon : markerImgCol});
	map.addOverlay(markerCollapsed);


	markerExpanded.show();
	markerCollapsed.hide();

	// Marker 1 click: show marker 2
	GEvent.addDomListener(markerCollapsed, 'click', function()
	{
		markerCollapsed.hide();
		markerExpanded.show();
	});

	// Marker 2 click: show marker 1
	GEvent.addDomListener(markerExpanded, 'click', function()
	{
		markerExpanded.hide();
		markerCollapsed.show();
	});
}

Vormwijs.initLightbox = function()
{
	$(document).ready(function()
	{
		$('[rel*=lightbox]').bind('click', function(e)
		{
			// Overlay
			var imageLoc = this.href;
			var overlay = $('<div></div>')
				.addClass('lightbox-overlay')
				.css({
					height: $(document).height(),
					width: $(window).width()
				})
				.appendTo('body')
				.css({opacity: 0})
				.animate({opacity: .8}, 200);

			// Image container
			var container = $('<div></div>')
				.addClass('lightbox-container')
				.appendTo('body')
				.bind('click', function(e)
				{
					$(container).fadeOut(200, function(){ $(this).remove(); });
					  $(overlay).fadeOut(200, function(){ $(this).remove(); });
				});

			// Vertical offset for funny browsers that dont support position: fixed
			var vOffset = 0;
			if ($.browser.msie && $.browser.version < 7)
			{
				vOffset = document.documentElement.scrollTop;
			}

			// Load image
			var image = $('<img src="' + this.href + '">')
				.load(function()
				{
					// Hide spinner
					container.css({
						background: 'none'
					});

					// Append image and fade in
					$(this)
						.appendTo('.lightbox-container')
						.attr('title', 'Klik om terug te gaan naar de website')
						.css({
							marginTop:	vOffset + this.offsetHeight / -2,
							marginLeft:	this.offsetWidth / -2,
							opacity:	0
						})
						.animate({opacity: 1}, 200);
				});
			return false;
		});
	});
}();

Vormwijs.initExternalLinks = function()
{
	$(document).ready(function()
	{
		$('[rel*=external]').bind('click', function(e)
		{
			window.open(this.href);
			return false;
		});
	});
}();