(function($){
     var form;

     function on_success(data, textStatus, xhr) {
	 $('div.registration_form', form).html(data);
     }

     function on_error(xhr, textStatus, errorThrown) {
	 $('img.spinner', form).addClass('invisible');
	 $('div.system_message', form).text(xhr.status + ' ' + errorThrown).show();
     }

     function on_submit(event) {
	 event.preventDefault();
	 $('img.spinner', form).removeClass('invisible');
	 $.ajax({url: form.attr('action'),
		 type: 'POST',
		 data: form.serializeArray(),
		 dataType: 'text',
		 success: on_success,
		 error: on_error,
		 global: false});
     }
     
     $.fn.registration_form = function () {
	 form = this;
	 form.live('submit', on_submit);
	 $('input[type=submit]', form).live('click', on_submit);
     };

     $(document).ready(function () { 
			   $('form.registration_form').registration_form();
		       });
 })(jQuery);



