/** 

 * NVS_POPUP

 * 

 * @author		Sebastiaan Smid <sebastiaan@netvlies.nl>

 * 

 * Optional parameters:

 * @category		jQuery Plugin

 * @package			Netvlies Popup

 * @version			1.1

 * @requires		jquery-easing.js

 *

 * Version history

 * 1.1	added optional fade  

 * 1.0

 */

 

(function($) {



	$.nvsPopup= { 

		

		/**

		 * Show a popup with default settings or the given params

		 * Also binds window resizing to overlayResize

		 * @param 	Object		background string (cssProperty), width int (pixels), height int (pixels), padding int (pixels), background boolean,  callback function

		 */

		 

		show : function (options) { 

		// default settings	

			var defaults = {

				background: 'white',

				width: '250px',

				height: '250px',

				padding: '10px',

				fade: true,

				callback: false

			};	

			

			options = $.extend(defaults, options);

		

		//add popup to the DOM	

			$('<div></div>').attr({

					id: 'nvs_popup_container' 

				}).css({

					position: 'absolute',

					top: $(document).scrollTop() + (($(window).height())/10),

					left: '0px',

					width: '100%',

					textAlign: 'center',

					zIndex: '10000'

				}).appendTo('body');

			

			$('<div></div>').attr({

					id: 'nvs_popup' 

				}).css({

					position: 'relative',

					background: options.background,

					width: options.width, 

					height: options.height,

					padding: options.padding,

					margin: '0 auto'

				}).appendTo('#nvs_popup_container')

			

			if(options.fade) { 

				$('#nvs_popup').css({ opacity :0 }).fadeTo(1000, 1, options.callback); 

			} else {

				$('#nvs_popup').show(1, options.callback)

			}

			

			$(window).bind('scroll', this.popUpScroll);

		},

		

		//resize the popup

		resize : function (options,callback) {

			var defaults = {

				width: false,

				height: false,

				speed: 500

			};	

			

			options = $.extend(defaults, options);

			$('#nvs_popup').animate({width: options.width, height: options.height}, options.speed, callback); 

		},

		

		//reposition popup on scrolling		

		popUpScroll : function () { 

			$('#nvs_popup_container').stop();

			$('#nvs_popup_container').animate({top: $(document).scrollTop() + (($(window).height())/10)},500,"easeOutBack");

		}

		

	}

	

})(jQuery);
