jQuery(function($){
	$(document).ready(function(){
		
		$('#demo input[type=reset]').click(function(){
			$('#demo').fadeOut('fast');
		});
		
		$('a[rel=demo]').click(function(e){
			
			e.preventDefault();
			
			var position = $(this).offset();
			var top_offset = 20;
			var x = position.left - ($('#demo').width()-$(this).width())/2;
			var y = position.top - $('#demo').height()-10;
			
			// Do not show demo block higher than top side of window
			if (y < top_offset) y=top_offset;
			
			// Take into account document scroll
			var st = $(document).scrollTop();
			if (y<st) y=st+top_offset;
			
			$('#demo').css({top: y, left: x});
			
			$('#demo').fadeIn('slow', function(){
				
			});
		});
		
		// submit form
		var forms = [$('#demo form'), $('#contact-form')];
		for (var i in forms)
		{
		    $(forms[i]).submit(function(){
		        var form = $(this);
		        var submit_btn = $(form).find('input[type=submit]');
		        $.getJSON($(form).attr('action'), $(form).serializeArray(), function(json){
		            if (json.status)
		            {
						alert('Your message were successfully sent.');
		                $(form).find('input[type=text]').each(function(){
							$(this).val('');
						});
						if ('contact-form' != $(form).attr('id')) {
							$('#demo').fadeOut();
						}
		            }
		            else
		            {
						var message = 'Please, check the following data:';
		                for (var key in json.response)
		                {
		                    message += '\n'+json.response[key];
		                }
	                	alert(message);
		            }
	            	$(form).find(':input').attr('disabled', '');
		        });
		        $(form).find(':input').attr('disabled', 'disabled');
		        return false;
		    });
		}
		
	});
});
