/*
 * SimpleModal OSX Style Modal Dialog
 * http://www.ericmmartin.com/projects/simplemodal/
 * http://code.google.com/p/simplemodal/
 *
 * Copyright (c) 2010 Eric Martin - http://ericmmartin.com
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Revision: $Id: osx.js 238 2010-03-11 05:56:57Z emartin24 $
 */

jQuery(function ($) {
	var OSX = {
		container: null,
		init: function () {
			$(".osx").click(function (e) {
				e.preventDefault();
				var url=$(e.currentTarget).attr('href');
				var html=$.ajax({url:url,async:false}).responseText;
				$(html).modal({
					overlayId: 'osx-overlay',
					containerId: 'osx-container',
					closeHTML: null,
					minHeight: 80,
					opacity: 65, 
					position: ['0',],
					overlayClose: true,
					onOpen: OSX.open,
					onClose: OSX.close
				});
			});
		},
		open: function (d) {
			var self = this;
			self.container = d.container[0];
			d.overlay.fadeIn('slow', function () {
				$("#osx-modal-content", self.container).show();
				var title = $("#osx-modal-title", self.container);
				title.show();
				d.container.slideDown('slow', function () {
					setTimeout(function () {
						var h = $("#osx-modal-data", self.container).height()
							+ title.height()
							+ 20; // padding
						d.container.animate(
							{height: h}, 
							200,
							function () {
								$("div.close", self.container).show();
								$("#osx-modal-data", self.container).show();
							}
						);
					}, 300);
				});
			});
			
			$('form',self.container).submit(function(){
				var form=this;
				var res='#osx-message';
					if( isValidForm(form,'.required') ){
					   $(res).html('sending...');
						loadDATA(form,function(msg){
											   OSX.thankYou(form,res,msg);
											   })		   
					}
					return false;
			});
		},
		close: function (d) {
			var self = this; // this = SimpleModal object
			d.container.animate(
				{top:"-" + (d.container.height() + 20)},
				500,
				function () {
					var form=d.container.find('form')[0];
					if($(form).length) form.reset();
					self.close(); // or $.modal.close();
				}
			);
		},
		thankYou:function(form,res,msg){
			   $(form).find(':submit').blur();
			   if(msg!='sent') {
				   $(res).html(msg);
				   return false;
			   }
				   $('.'+$.modal.defaults.containerId).css('height','auto');
				   $(form).hide(500,function(){this.reset();});
				   $(res).html('Thank you.');
				  //$(res).show(1).delay(2000).show(200,function(){$(this).html('try again?');});
				   //$(form).hide('fast');
			}

	};

	OSX.init();

});
