$().ready(function() {
	var formulario = '#form-cliente';
	var classeErro = 'Erro';
	// AUTO-FOCUS NO PRIMEIRO CAMPO DO FORMULARIO
	$('#cad-nome').focus();
	
	$.validator.addMethod('aceitoTermos', function(value,element) {
		return ($('#cad-termos:checked').length == '1') ? true : false;
	});
	
	$(formulario).validate({
		rules: {
			nome: {required: true, minlength: 2},
			email: {required: true, email: true, remote:{url:'ajax/email-disponivel', type:'post'}},
			confirmarEmail: {required: true, email: true, equalTo: '#cad-email'},
			senha: {required: true, minlength: 6},
			confirmarSenha: {required: true, minlength: 6, equalTo: '#cad-senha'},
			aceitoTermos: 'aceitoTermos'
		},
		messages: {
			nome: {required: 'Informe seu nome', minlength: 'Nome incorreto'},
			email: {required: 'Informe seu email', email: 'Email inválido', remote: 'E-mail já cadastrado'},
			confirmarEmail: {required: 'Confirme seu email', email: 'Email inválido', equalTo: 'Informe o mesmo email'},
			senha: {required: 'Informe uma senha', minlength: jQuery.format('Mínimo de {0} caracteres')},
			confirmarSenha: {required: 'Repita a senha', minlength: 'Repita a senha', equalTo: 'Senha diferente'},
			aceitoTermos: 'Obrigatório'
		},		
		highlight: function(element, errorClass){
			if(element.name != 'aceitoTermos'){
				$(element).addClass(classeErro);
				$(element).prev().addClass(classeErro);
			}
		},
		unhighlight: function(element, errorClass){
			$(element).removeClass(classeErro);
			$(element).prev().removeClass(classeErro);
		},
		errorPlacement: function(error, element){
			if(element.attr('name') == 'aceitoTermos'){
				error.appendTo(element.next());
			}else{
				error.appendTo(element.prev());
			}
		},
		errorElement: 'strong',
		submitHandler: function(form){
			// ADICIONA O LOADING
			$('#carregando').append(carregando);
			// DESABILITA O BOTAO
			$('#form-cliente button').attr('disabled', true);

			$(form).ajaxSubmit({
				dataType: 'json',
				success: function(data){
					if(data.resposta == 'cadastrado'){
						var destino = (data.ultimaURI != null) ? data.ultimaURI : 'home'
						window.location.href='./'+destino+'/';
					}else{
						// REMOVE O LOADING
						$('#carregando').empty();
						// HABILITA O BOTAO
						$('#form-cliente button').attr('disabled', false);
						alert('resposta: '+data.resposta);
					}
				}
			});
		}
			
	});
	
	$(formulario).submit(function(e){
		e.preventDefault();
	});
});


