(function($) {
	
    $.fn.gmaps = function(options) {
		
        settings = jQuery.extend({
		
		}, options);
		
		var gmaps = $(this);
		
		switch(settings.lang) {
			
			case 'de':
				
				var lang = {
					
					title				: 'Lage auf Google Maps'
				};
				
				break;
			
			case 'en':
				
				var lang = {
					
					title				: 'Location on Google Maps'
				};
				
				break;
			
			case 'nl':
				
				var lang = {
					
					title				: 'Locatie op Google Maps'
				};
				
				break;
			
			case 'sv':
				
				var lang = {
					
					title				: 'Läge på Google Maps'
				};
				
				break;
		}
		
		gmaps.addClass('gmaps');
		
		var gmapsTitle = $('<div class="gmaps-title"></div>').text(lang.title).appendTo(gmaps);
		
		var gmapsMapHolder = $('<div class="gmaps-map-holder"></div>').appendTo(gmaps);
		
		var mapId = gmaps.attr('id') + '-map';
		
		var gmapsMap = $('<div class="gmaps-map"></div>').attr('id', mapId).appendTo(gmapsMapHolder);
		
		initialize();
		
		function initialize() {
			
			if (GBrowserIsCompatible()) {
				
				map = new GMap2(document.getElementById(mapId));
				
				var center = new GLatLng(settings.latitude, settings.longitude);
				
				map.setCenter(center, 15);
				
				var marker = new GMarker(center);
				
				GEvent.addListener(marker, 'click', function() {
  					marker.openInfoWindowHtml(
						'<p><b>' + settings.title + '</b></p>' +
						'<p>' + settings.address + '</p>' +
						'<p>' + settings.zip + ' ' + settings.city + '</p>'
					);
  				});
				
				map.addOverlay(marker);
			}			
		}
	}
	
})(jQuery);
