(function($) {
$.fn.teste = function(settings) {
	settings = jQuery.extend({
		bgColor: '#000',
		bgOpacity: 0.8,
		mapWidth: 600,
		mapHeight: 350,
		mapText: '',
		mapUrl: ''
	},settings);
	function _initialize(){
		_createInterface();
		return false;
	}
	function _createInterface(){
		$('body').append("<div id='gMapModal-overlay'></div><div id='gMapModal-text'></div><div id='gMapModal-box'></div>");
		$('#gMapModal-box').append('<iframe width="' + settings.mapWidth + '" height="' + settings.mapHeight + '" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="' + settings.mapUrl + '"></iframe>');
		$('#gMapModal-text').append('<p>' + settings.mapText + '</p><a id="gMapModal-closeButton"></a>');
		objHidden = $('embed, object, select').css({ 'visibility' : 'hidden' });
		$('#gMapModal-overlay, #gMapModal-box, #gMapModal-text').hide();
		var alturadobody = $('.body').outerHeight();
		$('#gMapModal-overlay').css({
			'position' 	: 'absolute',
			'top' 		: 0,
			'left' 		: 0,
			'width' 	: '100%',
			'height' 	: '900px',
			'background-color' : settings.bgColor,
			'opacity' 			: settings.bgOpacity
		});
		mgLeft = ((settings.mapWidth/2) * -1);
		mgTop = $(window).scrollTop() + 50;
		$('#gMapModal-box').css({
			'position'		: 'absolute',
			'left'			: '50%',
			'width'			: settings.mapWidth + "px",
			'height'		: settings.mapHeight + "px",
			'margin-left'	: mgLeft + "px",
			'top'			: mgTop + "px"
		});
		mgTop = mgTop + settings.mapHeight;
		$('#gMapModal-text').css({
			'position'		: 'absolute',
			'left'			: '50%',
			'width'			: settings.mapWidth + "px",
			'margin-left'	: mgLeft + "px",
			'top'			: mgTop + "px"	 
		});
		_setActions();
		$('#gMapModal-overlay, #gMapModal-box').show();
		setTimeout(function(){
			$('#gMapModal-text').slideDown();
		}, 500);
		return false;
	}
	function _setActions(){
		$('#gMapModal-overlay').bind('click', closeModal);
		$('#gMapModal-closeButton').bind('click', closeModal);
		return false;
	}
	closeModal = function(){
		$('#gMapModal-overlay').remove();
		$('#gMapModal-box').remove();
		$('#gMapModal-text').remove();
		$(objHidden).css({ 'visibility' : 'visible' });
		return false;
	}
	var objHidden = [];
	return this.unbind('click').click(_initialize);
}})(jQuery);