﻿// todo: refatorar: colocar reflection

$(document).ready(function() {
    $('input').parent().find('span').change(function() { alert('Ahaaaa!') })
    $('#form_login').submit(formLoginSubmit)
    $('#form_signin').submit(formSigninSubmit)
    if($('#form_signin2 input[name=rg]').length==1)
        $('#form_signin2').submit(formSigninSubmit2PF)
    else
        $('#form_signin2').submit(formSigninSubmit2PJ)
});

formLoginSubmit = function() {
     var fields = ['email', 'senha']
     var serial = serializer('#form_login', fields)
     
    $('#img_continuar_login').hide();
    $('#img_loading_login').show();
    post('/Login.aspx/LoginValidator', serial, functionLoginSubmitHandler, 'json');
    return false;
}

functionLoginSubmitHandler = function(data) {
    data = data.d;

    if (data.IsValid) {
        $('#form_login').unbind('submit', formLoginSubmit)
        $('#form_login').submit();
    }
    else {
        $('#img_continuar_login').show();
        $('#img_loading_login').hide();
        var m = data.Messages
        cleanValidationMessages()
        setErrorMessages(m,'#form_login')
    }
}

formSigninSubmit = function() {
    var fields = ['cgc', 'cep']
    var serial = serializer('#form_signin',fields)
    
    $('#img_continuar_signin').hide();
    $('#img_loading_signin').show();
    post('/login.aspx/Step1Validator', serial, formSigninSubmitHandler, 'json');
    return false;
}

formSigninSubmitHandler = function(data) {
    data = data.d;
    
    if (data.IsValid) {
        $('#form_signin').unbind('submit', formSigninSubmit)
        $('#form_signin').submit();
    }
    else {
        var m = data.Messages;
        cleanValidationMessages();
        setErrorMessages(m, '#form_signin')
        $('#img_continuar_signin').show();
        $('#img_loading_signin').hide();
    }
}

formSigninSubmit2PF = function() {
    var fields = ['nome', 'email', 'senha',
                  'endereco', 'numero', 'bairro',
                  'telefone1ddd', 'telefone1numero']
    var serial = serializer('#form_signin2', fields)

    $('#img_continuar_signin2').hide();
    $('#img_loading_signin2').show();
    post('/Login.aspx/Step2ValidatorPF', serial, formSigninSubmit2PFHandler, 'json')
    return false;
}

formSigninSubmit2PFHandler = function(data) {
    data = data.d;
    if (data.IsValid)
        $('#form_signin2').unbind('submit', formSigninSubmit2PF).submit()
    else {
        var m = data.Messages;
        cleanValidationMessages();
        setErrorMessages(m, '#form_signin2')
        $('#img_continuar_signin2').show();
        $('#img_loading_signin2').hide();
    }
}

formSigninSubmit2PJ = function() {
    var fields = ['razao_social','nome','email',
                  'senha', 'endereco', 'numero',
                  'bairro', 'telefone1ddd', 'telefone1numero']
    var serial = serializer('#form_signin2', fields)
    $('#img_continuar_signin2').hide();
    $('#img_loading_signin2').show();
    post('/Login.aspx/Step2ValidatorPJ', serial, formSigninSubmit2PJHandler, 'json')
    
    return false;
}

formSigninSubmit2PJHandler = function(data) {
    data = data.d
    
    if (data.IsValid)
        $('#form_signin2').unbind('submit', formSigninSubmit2PJ).submit()
    else {
        var m = data.Messages
        cleanValidationMessages()
        setErrorMessages(m, '#form_signin2')
        $('#img_continuar_signin2').show();
        $('#img_loading_signin2').hide();       
    }
}