Caminho no Gestor bibliotecas/configuracao.php
Monta e grava o editor das variáveis de texto de um módulo (a tabela variaveis, lida por gestor_variaveis()): a tela em que cada variável aparece com um campo conforme o tipo, e a gravação das mudanças. É o que os módulos variables e modulos mostram na edição de um registro.
Tela: configuracao_administracao()
gestor_incluir_biblioteca('configuracao');
configuracao_administracao([
'modulo' => $id, // módulo cujas variáveis serão editadas
'linguagemCodigo' => $_GESTOR['linguagem-codigo'],
'marcador' => '<!-- configuracao-administracao -->',
]);Lê as variáveis do módulo e do idioma, monta os componentes configuracao-widget e configuracao-campos e troca o marcador em $_GESTOR['pagina'] pelo editor. Os tipos de campo ficam em $_GESTOR['biblioteca-configuracao']['camposTipos']: string, text, bool, number, quantidade, dinheiro, css, js, html, editor-texto, datas-multiplas, data e data-hora. O tipo antigo tinymce é lido como editor-texto (configuracao_campo_tipo()).
Gravação: configuracao_administracao_salvar()
configuracao_administracao_salvar([
'modulo' => $id,
'linguagemCodigo' => $_GESTOR['linguagem-codigo'],
'tabela' => $modulo['tabela'], // para subir a versão do registro e gravar o histórico
]);Compara o formulário (variaveis-total, e para cada índice ref-N, id-N, grupo-N, descricao-N, tipo-N e valor-N) com o banco:
-
variável existente com mudança: atualiza, e marca
user_modified=1(o deploy passa a preservar o valor, veja recursos); -
variável nova (com
id): insere; -
variável que existia e não veio no formulário: é apagada do banco;
-
se algo mudou, incrementa a versão do registro do módulo e grava
module-variablesno histórico.
modulo e linguagemCodigo entram no SQL sem escape: os chamadores do core passam valores já escapados (modulo-registro-id).
Legado de hosts
configuracao_hosts_variaveis() (sobrepõe às variáveis do módulo os valores de hosts_variaveis) e configuracao_hosts_salvar() são do modo multi-host. A tabela hosts_variaveis não existe nas instalações atuais e $_GESTOR['host-id'] nunca é definido (host.php); configuracao_hosts_salvar() não tem chamadores e configuracao_hosts_variaveis() só é chamada pela comunicacao.php num ramo que também depende de host.
A tela esconde partes com a html.php (html_adicionar_classe(... 'escondido')).
Funções
Gerado a partir de gestor/bibliotecas/configuracao.php · 5 funções
configuracao_campo_tipo
ver no código · linha 52 ↗configuracao_campo_tipo(string $tipo): stringNormaliza o tipo de um campo de configuração (req-144 / BATCH-147).
Parâmetros
$tipostring- Tipo gravado no banco.
Retorno
configuracao_administracao_salvar
ver no código · linha 75 ↗configuracao_administracao_salvar(array|false $params = false): voidSalva as configurações de administração de um módulo.
Parâmetros
$paramsarray|false- Parâmetros da função.
Retorno
configuracao_administracao
ver no código · linha 262 ↗configuracao_administracao(array|false $params = false): voidExibe o widget de administração de configurações de um módulo.
Parâmetros
$paramsarray|false- Parâmetros da função.
Retorno
configuracao_hosts_salvar
ver no código · linha 549 ↗configuracao_hosts_salvar(array|false $params = false): arraySalva as configurações de hosts para variáveis de um módulo.
Parâmetros
$paramsarray|false- Parâmetros da função.
Retorno
configuracao_hosts_variaveis
ver no código · linha 829 ↗configuracao_hosts_variaveis(array|false $params = false): arrayRetorna as variáveis de configuração de um módulo para um host específico.
Parâmetros
$paramsarray|false- Parâmetros da função.
Retorno