Projeto

Geral

Perfil

Melhoria #1175

Melhorias na consistência de campos do ExpressoAdmin

Adicionado por Mauricio Luiz Viani mais de 1 ano atrás. Atualizado mais de 1 ano atrás.

Situação:
Fechada
Prioridade:
Normal
Categoria:
ExpressoAdmin
Início:
04/11/2022
Data prevista:
% Terminado:

100%


Descrição

Realizar manutenção no ExpressoAdmin para melhorar a consistência de campos no lado servidor.

Tem-se entrada de dados pela interface web e pela api, e objetiva-se consistir de forma eficiente antes do salvamento

Como exemplo, a API do Expresso, encontra-se nesta situação:

accountContext         => Não valida se o gerente tem permissão para o contexto de destino
accountName            => Não valida caracteres inválidos, é possivel gerar inconsistencia entre givename.' '.sn e cn
accountSurname         => Não valida caracteres inválidos, é possivel gerar inconsistencia entre givename.' '.sn e cn
accountPhone           => Não valida caracteres inválidos
accountPassword        => OK
accountPasswordExpired => OK
accountPasswordChange  => obs: só funciona se "accountPasswordExpired" for false
accountStatus          => OK
accountVisible         => OK
accountPhoto           => OK
accountDeletePhoto     => OK
accountEmployeeNumber  => Não valida caracteres inválidos
accountBirthDate       => Não valida nada
accountCpf             => Não valida CPF inválido
accountRg              => Não valida nada
accountRgUf            => Não valida nada
accountDescription     => OK
accountEmail           => não valida formato email
accountMailStatus      => OK -> mesmo com email inválido
accountMailForwardOnly => OK -> mesmo com email inválido
accountMailAlternate   => não valida formato email -> mesmo com email inválido
accountMailForwarding  => não valida formato email -> mesmo com email inválido
accountMailQuota       => não valida negativo e numero grande -> mesmo com email inválido
accountGroups          => não valida nada
accountGIDNumber       => não valida nada
accountMailLists       => não avisa se deu erro, não encontrado ou fora do contexto
accountApps            => não valida nada
accountRadius          => OK
accountSambaEnabled    => OK
accountStatusSamba     => OK
accountSambaDomain     => não valida dominio
accountSambaScript     => não valida nada
accountHomeDir         => não valida nada
accountShell           => não valida nada

Realizar também padronização no retorno de operações realizadas, informando o estado anterior e posterior à atualização:

array(
    'context'?                                => array( 'old'  => string, 'new'  => string ),
    'givenname'?                              => array( 'old'  => string, 'new'  => string ),
    'sn'?                                     => array( 'old'  => string, 'new'  => string ),
    'telephonenumber'?                        => array( 'old'? => string, 'new'? => string ),
    'passwd'?                                 => string,
    'passwd_expired'?                         => 'add' | 'rem';
    'changepassword'?                         => 'add' | 'rem';
    'phpgwaccountstatus'?                     => 'add' | 'rem';
    'phpgwaccountvisible'?                    => 'add' | 'rem';
    'photo'?                                  => 'add' | 'mod' | 'rem';
    'corporative_information_employeenumber'? => array( 'old'? => string, 'new'? => string ),
    'birthdate'?                              => array( 'old'? => string, 'new'? => string ),
    'corporative_information_cpf'?            => array( 'old'? => string, 'new'? => string ),
    'corporative_information_rg'?             => array( 'old'? => string, 'new'? => string ),
    'corporative_information_rguf'?           => array( 'old'? => string, 'new'? => string ),
    'corporative_information_description'?    => array( 'old'? => string, 'new'? => string ),
    'mail'?                                   => array( 'old'  => string, 'new'  => string ),
    'accountstatus'?                          => 'add' | 'rem';
    'mailalternateaddress'?                   => array( 'add'? => array(mail),  'rem'? => array(mail)  ),
    'mailforwardingaddress'?                  => array( 'add'? => array(mail),  'rem'? => array(mail)  ),
    'deliverymode'?                           => 'add' | 'rem';
    'mailquota'?                              => array( 'old'  => int,    'new'  => int    ),
    'groups'?                                 => array( 'add'? => array(gid), 'rem'? => array(gid) ),
    'gidnumber'?                              => array( 'old'? => string, 'new'? => string ),
    'maillists'?                              => array( 'add'? => array(uid), 'rem'? => array(uid) ),
    'apps'?                                   => array( 'add'? => array(app), 'rem'? => array(app) ),
    'create_user_inbox'?                      => true,
    'domainsambasid'?                         => array( 'old'? => string, 'new'? => string ),
    'sambasid'?                               => array( 'old'? => string, 'new'? => string ),
    'sambaprimarygroupsid'?                   => array( 'old'? => string, 'new'? => string ),
    'sambaacctflags'?                         => array( 'old'? => string, 'new'? => string ),
    'sambalogonscript'?                       => array( 'old'? => string, 'new'? => string ),
    'homedirectory'?                          => array( 'old'  => string, 'new'  => string ),
    'loginshell'?                             => array( 'old'  => string, 'new'  => string ),
    'radius'?                                 => array( 'add'? => array(string), 'rem'? => array(string) ),
)

Revisões associadas

Revisão 89b5a62c
Adicionado por Alexandre Rocha Wendling Cassol mais de 1 ano atrás

Issue #1175 - Melhorias na consistência de campos do ExpressoAdmin

Histórico

#1 Atualizado por Alexandre Rocha Wendling Cassolmais de 1 ano

  • % Terminado alterado de 0 para 80
  • Situação alterado de Nova para Resolvida

#2 Atualizado por Mauricio Luiz Vianimais de 1 ano

  • % Terminado alterado de 80 para 100
  • Situação alterado de Resolvida para Fechada

Exportar para Atom PDF