jQuery.fn.topspinEmail = function(settings) {
	 settings = jQuery.extend({
     emailSubmitText: 'Email address',
     tabsSelector: '#emailSubmitTabs',
     panesSelector: '#emailSubmitPanes > div',
     submitStart:'#emailSubmitStart',
     emailSubmitEmail:'#emailSubmitEmail',
     emailSubmit:'#emailSubmit'
}, settings);
	return this.each(function(i) {
		var emailSubmitTabs;
		var $emailSubmitEmail;
		emailSubmitTabs = $(this).tabs(settings.panesSelector,{effect:'fade',api:true});		
		$emailSubmitEmail = $(settings.emailSubmitEmail);
		if($(settings.submitStart)) {
			$(settings.submitStart).click(function(e) {
				e.preventDefault();
				emailSubmitTabs.click(1);
				$(settings.emailSubmitEmail).val(settings.emailSubmitText);
			});
		}
		$emailSubmitEmail.val(settings.emailSubmitText);
		$emailSubmitEmail.focus(function(e) {
			if($emailSubmitEmail.val() == settings.emailSubmitText) {
				$emailSubmitEmail.val('');
			}
		});
		$emailSubmitEmail.blur(function(e) {
			if($emailSubmitEmail.val() == '') {
				$emailSubmitEmail.val(settings.emailSubmitText);	
			};
		});
		$(settings.emailSubmit).click(function(e) {
			e.preventDefault();
			var $this = $(this);
			var $fieldSet = $this.parents('fieldset');
			if(isValidEmail($('input[name=email]',$fieldSet).val())) {
				$('input[name=email]',$fieldSet).css('background-color','#FFFFFF');
				emailSubmitTabs.click(2);
				$.ajax({
					cache:false,
					data:$('input',$fieldSet).serialize(),
					dataType:'jsonp',
					success:function(data,textStatus,XHR) {
						emailSubmitTabs.click(3);
					},
					url:'http://api.oniracom.com/topSpinProxyJSONP.php'
				});
			} else {
				$('input[name=email]',$fieldSet).css('background-color','#CC3333');
			}
		});
	});
}
function isValidEmail(emailAddress) {
    					    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(2([0-4]\d|5[0-5])|1?\d{1,2})(\.(2([0-4]\d|5[0-5])|1?\d{1,2})){3} \])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    					    return re.test(emailAddress);
    					}


