﻿(function($){
	$.fn.contactable = function(options) {
		//opcje 
		var defaults = {
			name: 'Imię',
			email: 'Email',
			message : 'Wiadomość',
			recipient : 'kontakt@twoja-strona.com.pl',
			subject : 'Wiadomość z serwisu',
			recievedMsg : 'Dziękujemy za wiadomość',
			notRecievedMsg : 'Przepraszamy ale Twoja wiadomość nie została wysłana. Wyślij ją jeszcze raz.',
			disclaimer: 'Chętnie odpowiemy na wszystkie Państwa pytania. Proszę skorzystać z formularza, powyżej aby wysłać wiadomość. '
		};

		var options = $.extend(defaults, options);  
		return this.each(function(options) {
			$(this).html('<div id="contactable"></div><form id="contactForm" method="" action=""><div id="loading"></div><div id="callback"></div><div class="holder"><input type="hidden" id="recipient" name="recipient" value="'+defaults.recipient+'" /><input type="hidden" id="subject" name="subject" value="'+defaults.subject+'" /><p><label for="name">Imię <span class="red"> * </span></label><br /><input id="name" class="contact" name="name" /></p><p><label for="email">E-Mail <span class="red"> * </span></label><br /><input id="email" class="contact" name="email" /></p><p><label for="comment">Twoja wiadomość <span class="red"> * </span></label><br /><textarea id="comment" name="comment" class="comment" rows="4" cols="30" ></textarea></p><p><input class="submit" type="submit" value="WYŚLIJ"/></p><p>'+defaults.disclaimer+'</p></div></form>');
			$('div#contactable').toggle(function() {
				$('#overlay').css({display: 'block'});
				$(this).animate({"marginLeft": "-=5px"}, "fast"); 
				$('#contactForm').animate({"marginLeft": "-=0px"}, "fast");
				$(this).animate({"marginLeft": "+=387px"}, "slow"); 
				$('#contactForm').animate({"marginLeft": "+=390px"}, "slow"); 
			}, 
			function() {
				$('#contactForm').animate({"marginLeft": "-=390px"}, "slow");
				$(this).animate({"marginLeft": "-=387px"}, "slow").animate({"marginLeft": "+=5px"}, "fast"); 
				$('#overlay').css({display: 'none'});
			});
			
			$("#contactForm").validate({

				rules: {
					name: {
						required: true,
						minlength: 2
					},
					email: {
						required: true,
						email: true
					},
					comment: {
						required: true
					}
				},
				messages: {
					name: "",
					email: "",
					comment: ""
				},
				submitHandler: function() {
					$('.holder').hide();
					$('#loading').show();
					$.get('mail.php',{recipient:$('#recipient').val(), subject:$('#subject').val(), name:$('#name').val(), email:$('#email').val(), comment:$('#comment').val()},
					function(data){
						$('#loading').css({display:'none'}); 
						if( data == 'success') {
							$('#callback').show().append(defaults.recievedMsg);
						} else {
							$('#callback').show().append(defaults.notRecievedMsg);
						}
					});		
				}
			});
		});
	};
})(jQuery);


