var timeout = 300;

$(document).ready(function(){
	var forgotShown = false;
	var curValue = '';
	if (!presets.auth_login()) {
		duplicatePassFields('sign-in-form');
	}
	clearFormInputs('sign-in-form');
	clearFormInputs('sign-up-form');
	duplicatePassFields('sign-up-form');
	clearFormInputs('forgot-pass-form');
	
	$('.sign-box input').live('focus', function(){
		$(this).parent().addClass('focus');
	});
	$('.sign-box input').live('blur', function(){
		$(this).parent().removeClass('focus');
		if (this.value == '') {
			curValue = $(this).attr('value');
			$(this).addClass('default_value').val(curValue);
		}
	});
	
	$('.button').live('click', function(e){
		if (!$(this).hasClass('active')) {
			e.preventDefault();
			var parentBox = $(this).parent();
			var parentBoxFade = $(parentBox).find('.to_fade');
			var direction = $(parentBox).attr('id') == 'sign-up-box' ? 'up' : 'down';
			
			var toHideBox = $(parentBox).attr('id') == 'sign-up-box' ? $('#sign-in-box') : $('#sign-up-box');
			var toHideBoxFade = $(toHideBox).find('.to_fade');
			
			var distance = 86;
			if (forgotShown) {
				$('#forgot-pass-box').animate({top: '0'}, timeout);
				$('#forgot-pass-box .to_fade').fadeOut(timeout);
				direction = 'up';
				if ($(parentBox).attr('id') == 'sign-up-box') {
					distance = distance * 2;
				}
				forgotShown = false;
			}
			
			if (direction == 'up') {
				$(parentBox).animate({top: '-=' + distance}, timeout);
				$(toHideBox).animate({top: '-=' + distance}, timeout);
			} else {
				$(parentBox).animate({top: '+=' + distance}, timeout);
				$(toHideBox).animate({top: '+=' + distance}, timeout);
			}
			
			$(toHideBoxFade).fadeOut(timeout);
			$(parentBoxFade).fadeIn(timeout);
			
			$(toHideBox).find('.button').removeClass('active');
			$(this).addClass('active');
		}
	});
	formValidation(postSubmitAction, 'user/sign', 'sign-in-form');
	formValidation(postSubmitAction, 'user/sign', 'sign-up-form');
	
	// forgot password
	$('.forgot').live('click', function(e){
		e.preventDefault();
		forgotShown = true;
		var parentBox = $('#forgot-pass-box');
		var parentBoxFade = $(parentBox).find('.to_fade');

		$('#sign-in-box').animate({top: '+=86'}, timeout);
		$('#sign-up-box').animate({top: '+=86'}, timeout);
		$('#sign-in-box .to_fade').fadeOut(timeout);
		$('#sign-up-box .to_fade').fadeOut(timeout);
		
		$(parentBox).animate({top: '+=86'}, timeout);
		$(parentBoxFade).fadeIn(timeout);
		
		$('.button').removeClass('active');
	});
	
	formValidation(postSubmitForgotPassAction, 'user/forgot_password', 'forgot-pass-form');
});

function postSubmitAction(json)
{
	if(json.user.logged == true){
		window.location = 'lists';
	} else {
		$('.sign-box input').addClass('error');
		show_message(json.message, json.type);
	}
	return true;
}

function postSubmitForgotPassAction()
{
	$('#sign-in-form .button').trigger('click');
	show_message('Your new password has been sent to your email address', 'info');
}
