(function($) {

	$.fn.map = function(options) {
		
		var current = null;
		
		var defaults = {
			areas: ".location",
			classOver: "over",
			classActive: "active"
		};
		var options = $.extend(defaults, options);
		
		return this.each(function() {
			
			var $areas = $(options.areas, this);
			$areas.mouseover(hilite);
			$areas.mouseout(clear);
			$areas.click(show);
			
			function hilite() {
				var $parent = $(this).parent();
				
				$parent.addClass(options.classOver);
				$parent.siblings().removeClass(options.classActive);
			}
			
			function clear() {
				$(this).parent().removeClass(options.classOver);
			}
			
			function show() {
				var $this = $(this);
				
				$this.mouseout();
				$this.siblings().mouseout();
				$this.parent().toggleClass(options.classActive);
			}
			
		});
		
	};

})(jQuery);

