function initAuthForm() {
	// auth form handler
	$('#auth_form input').bind('keydown', function(event) {
		if ( event.which == 13 ) $('#auth_form a#enter').click();
	});
	$('#auth_form a#enter').bind('click', function(event) {
		var form = $('#auth_form');
		$.ajax({
			type: form.attr('method'),
			url: form.attr('action'),
			data: form.serialize(),
			success: function(data) {
				$('#progress').addClass('hidden');
				var active_block = null;
				switch ( data ) {
					case '0': 
						active_block = $('#auth_successful');
						break;
					case '1':
						active_block = $('#login_failure');
						break;
					case '2':
						active_block = $('#bad_input');
						break;
					default:
						active_block = $('#global_error');						
				}
				active_block.removeClass('hidden');
			},
			error: function(jqXHR, errstring, exception) {
				$('#progress').addClass('hidden');
				$('#global_error').removeClass('hidden');
				$('#error_description').html(errstring);
			},
			dataType: 'text'
		});
		form.addClass('hidden');
		$('#progress').removeClass('hidden');
		event.preventDefault();
	});
	$('#auth_block a.showauthform').bind('click', function(event) {
		$('#auth_block>div').each( function() {
			$(this).addClass('hidden');
		});
		$('#auth_form').removeClass('hidden');
		event.preventDefault();
	});	
}
