// JavaScript Document

// prepare the form when the DOM is ready 
jQuery(document).ready(function(){
	var options = { 
    	target: '#emailTarget', // target identifies the element(s) to update with the server response 
		clearForm: true,		 // clear all form fields after successful submit
		url: '/process.php',	 // override for form's 'action' attribute  
		success: showResponse	 // post-submit callback 
	}; 

	jQuery('#emailTarget').hide();

	// show a simple loading indicator
	var loader = jQuery('<div id="loader" style="background-color:#000000;color:#ffffff;padding:10;border: 1px solid #000;z-index: 99;">&nbsp;&nbsp;Processing...<br/><img src="/VPanel/images/loader.gif" alt="loading..." /></div>')
		.css({position: "absolute", top: "25em", left: "35em"})
		.appendTo("body")
		.hide();
	jQuery().ajaxStart(function() {
		loader.show();
	}).ajaxStop(function() {
		loader.hide();
	}).ajaxError(function(a, b, e) {
		throw e;
	});

	var v = jQuery("#newsletter").validate({
		errorClass: "error",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		},
		rules: {
			txtEmail: {
				required: false,
				email: true
			}
		},
		messages: {
			txtEmail: {
				required: "We need your email",
				email: "Email format is name@domain.com"
			}
		}
	});

	var v = jQuery("#tellafriend").validate({
		errorClass: "error",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		},
		rules: {
			txtEmail: {
				required: false,
				email: true
			}
		},
		messages: {
			txtEmail: {
				required: "We need your friend's email",
				email: "Email format is name@domain.com"
			}
		}
	});

	var v = jQuery("#centuryClub").validate({
		errorClass: "error",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		},
		rules: {
			txtEmail: {
				required: false,
				email: true
			}
		},
		messages: {
			txtEmail: {
				required: "We need your email",
				email: "Email format is name@domain.com"
			}
		}
	});

    $(".defaultText").focus(function() {
        if ($(this).val() == $(this)[0].title) {
            $(this).removeClass("defaultTextActive");
            $(this).val("");
        }
    });

    $(".defaultText").blur(function() {
        if ($(this).val() == "") {
            $(this).addClass("defaultTextActive");
            $(this).val($(this)[0].title);
        }
    });

    $(".defaultText").blur();        

});

// post-submit callback 
function showResponse(responseText, statusText)  { 
	jQuery('#emailTarget').fadeIn('slow'); 
    $(".defaultText").blur();        
} 