Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
85e8c0f
FDP-523 Criar botão para facilitar a exclusão do item
jspoliv Jul 4, 2025
f71a438
FDP-522 Criar botão para baixar imagens em lote
jspoliv Jul 8, 2025
ad8ef67
FDP-534 Modificar a posição do botão de "fechar imagem" para ser mais…
jspoliv Jul 11, 2025
489fd12
FDP-514 Alterar de rótulo [s.d] para [sem data] na exibição de datas …
jspoliv Jul 11, 2025
2fb3051
FDP-514 Alterar de rótulo [s.d] para [sem data] na exibição de datas …
jspoliv Jul 14, 2025
6bf840f
FDP-529 Criar mecanismo de autocomplete na busca rápida (cabeçalho)
jspoliv Jul 16, 2025
6369888
FDP-530 Criar busca por parte dos identificadores na busca rápida (ca…
jspoliv Jul 16, 2025
0fbde41
FDP-530 Criar busca por parte dos identificadores na busca rápida (ca…
fredaccamargo Jul 25, 2025
134ba61
Merge pull request #67 from paramosoftware/main
fredaccamargo Jul 25, 2025
1da6d02
FDP-514 Alterar de rótulo [s.d] para [sem data] na exibição de datas …
fredaccamargo Jul 25, 2025
1f5b383
FDP-522 Criar botão para baixar imagens em lote
fredaccamargo Jul 25, 2025
a460083
FDP-534 Modificar a posição do botão de "fechar imagem" para ser mais…
fredaccamargo Jul 25, 2025
39a12b8
FDP-519 Criar botão para pular para último item cadastrado no setor d…
jspoliv Aug 6, 2025
4624d3f
patch FDP-519 Criar botão para pular para último item cadastrado no s…
fredaccamargo Aug 12, 2025
b0e2006
FDP-548 Corrigir filtragem de registros por intervalo de data quando …
fredaccamargo Aug 12, 2025
cdd8add
FDP-551 Esconder botão excluir caso usuário não tenha permissão
mthsps Aug 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions app/assets/css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -675,6 +675,33 @@ html:not([dir=rtl]) .list-inline-item:not(:last-child) {
float: left;
}

.close-media-viewer {
margin-bottom: 8px;
float: right;
}

div:has(> .close-media-viewer) {
height: 40px;
}

div:has(.close-media-viewer + #div-image-container > div > iframe) .close-media-viewer {
--cui-gutter-x: 1.5rem;
--cui-gutter-y: 0;
margin-right: calc(var(--cui-gutter-x) * 0.5);
}

.container-lg-com-imagem:nth-of-type(2) {
padding-right: 0;
}

.container-lg-com-imagem .viewer-container {
top: 48px;
}

.ml-auto {
margin-left: auto !important;
}

@media (min-width: 576px) {
.container-sm, .container {
max-width: 540px;
Expand Down Expand Up @@ -14953,4 +14980,43 @@ padding-right: 0px;

.nav-item-active {
background-color: #768192 !important;
}

.header-identificador {
align-items: center !important;
}

.header-identificador > button:has(.icon) {
max-height: fit-content;
}

.header-identificador .autocomplete-icon,
.header-identificador .nenhuma-correspondencia {
display: none;
}

.header-identificador > .mb-3 {
margin-bottom: 0px !important;
}

.header-identificador > div > .autocomplete-group + div {
position: absolute;
width: 100%;
width: -moz-available;
width: -webkit-fill-available;
width: stretch;
}

.row-gap-05 {
row-gap: 0.5rem;
}

.h-40 {
height: 40px;
}

.flex-centered {
display: inline-flex !important;
align-items: center;
justify-content: center;
}
34 changes: 31 additions & 3 deletions app/components/barra_paginacao.php
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,18 @@
?>

<li class="page-item<?php print $vs_css_botao_pagina; ?>">
<a class="page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_pagina_anterior_<?php print $vs_nome_campo_paginacao; ?>" href="#" tabindex="-1" aria-disabled="true">
Anterior
<a class="flex-centered h-40 page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_pagina_primeira_<?php print $vs_nome_campo_paginacao; ?>" href="#" tabindex="-1" aria-disabled="true">
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-chevron-double-left" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M8.354 1.646a.5.5 0 0 1 0 .708L2.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0"/>
<path fill-rule="evenodd" d="M12.354 1.646a.5.5 0 0 1 0 .708L6.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0"/>
</svg>
</a>
</li>
<li class="page-item<?php print $vs_css_botao_pagina; ?>">
<a class="flex-centered h-40 page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_pagina_anterior_<?php print $vs_nome_campo_paginacao; ?>" href="#" tabindex="-1" aria-disabled="true">
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-chevron-left" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0"/>
</svg>
</a>
</li>

Expand Down Expand Up @@ -120,7 +130,19 @@
?>

<li class="page-item<?php print $vs_css_botao_pagina; ?>">
<a class="page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_proxima_pagina_<?php print $vs_nome_campo_paginacao; ?>" href="#">Próxima</a>
<a class="flex-centered h-40 page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_proxima_pagina_<?php print $vs_nome_campo_paginacao; ?>" href="#">
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-chevron-right" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708"/>
</svg>
</a>
</li>
<li class="page-item<?php print $vs_css_botao_pagina; ?>">
<a class="flex-centered h-40 page-link <?php print $vs_nome_campo_paginacao; ?>" id="bnt_ultima_pagina_<?php print $vs_nome_campo_paginacao; ?>" href="#">
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-chevron-double-right" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8 3.646 2.354a.5.5 0 0 1 0-.708"/>
<path fill-rule="evenodd" d="M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8 7.646 2.354a.5.5 0 0 1 0-.708"/>
</svg>
</a>
</li>
</ul>
</nav>
Expand Down Expand Up @@ -156,6 +178,12 @@
else if ($(this).attr("id") == "bnt_pagina_anterior_<?php print $vs_nome_campo_paginacao; ?>")
vn_pagina = parseInt($("#<?php print $vs_nome_campo_paginacao; ?>").val()) - 1;

else if ($(this).attr("id") == "bnt_pagina_primeira_<?php print $vs_nome_campo_paginacao; ?>")
vn_pagina = 1;

else if ($(this).attr("id") == "bnt_ultima_pagina_<?php print $vs_nome_campo_paginacao; ?>")
vn_pagina = "<?php print count($va_paginador); ?>";

else
vn_pagina = $(this).text().trim();

Expand Down
15 changes: 12 additions & 3 deletions app/components/campo_autocomplete.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@
if (isset($pa_parametros_campo["procurar_por"]))
$vs_procurar_por = $pa_parametros_campo["procurar_por"];

$vs_operador = $pa_parametros_campo["operador"] ?? "LIKE";

if (!isset($pa_parametros_campo["multiplos_valores"]))
$vb_multiplos_valores = false;
else
Expand Down Expand Up @@ -248,7 +250,11 @@
?>
>

<label class="form-label" title="<?php if (isset($pa_parametros_campo["descricao"])) print $pa_parametros_campo["descricao"]; ?>">

<?php if(!empty($pa_parametros_campo["descricao"])) : ?>
<label class="form-label" title="<?php if (isset($pa_parametros_campo["descricao"])) print $pa_parametros_campo["descricao"]; ?>">
<?php endif ?>

<?php if ($vs_modo == "lote")
{
?>
Expand Down Expand Up @@ -442,6 +448,9 @@
maxlength="<?php print $vn_tamanho_maximo; ?>"
name="<?php print $vs_nome_campo_lookup ?>"
id="<?php print $vs_nome_campo_lookup ?>"
<?php if(!empty($pa_parametros_campo["placeholder"])) : ?>
placeholder="<?php print $pa_parametros_campo["placeholder"]?>"
<?php endif ?>
value="<?php print htmlentities($vs_valor_campo_nome, ENT_QUOTES, "UTF-8", false);
?>"
<?php
Expand All @@ -461,7 +470,7 @@

print '></div>';

if (($vs_modo == "listagem") && config::get(["f_filtros_busca_preenchimento_campo"]))
if (($vs_modo == "listagem") && config::get(["f_filtros_busca_preenchimento_campo"]) && empty($pa_parametros_campo['nao_exibir_preenchimento']))
{
?>
<input class="form-check-input" type="checkbox" name="<?php print $vs_nome_campo_codigos; ?>_com_valor" id="<?php print $vs_id_campo_codigos ?>_com_valor" onclick="alterar_valor_filtro_<?php print $vs_id_campo_codigos; ?>(this.checked, 'com_valor')"
Expand Down Expand Up @@ -842,7 +851,7 @@ function alterar_valor_filtro_<?php print $vs_id_campo_codigos ?>(pb_checked, ps
}
?>

vs_url_lista_sugestoes = "functions/autocomplete.php?tela=<?php print $vs_tela ?>&campo=<?php print $vs_nome_campo_lookup ?>&campo_codigos=<?php print $pa_parametros_campo["nome"][1]; ?>&termo="+encodeURIComponent(vs_termo)+"&obj=<?php print $vs_objeto_campo ?>"+"&procurar_por=<?php print $vs_procurar_por ?>&permitir_cadastro=<?php print $vb_permitir_cadastro ?>&campo_codigo=<?php print $vs_campo_codigo; ?>&campo_valor=<?php print $vs_campo_valor; ?>"+vs_filtro;
vs_url_lista_sugestoes = "functions/autocomplete.php?tela=<?php print $vs_tela ?>&campo=<?php print $vs_nome_campo_lookup ?>&campo_codigos=<?php print $pa_parametros_campo["nome"][1]; ?>&termo="+encodeURIComponent(vs_termo)+"&obj=<?php print $vs_objeto_campo ?>"+"&procurar_por=<?php print $vs_procurar_por ?>&permitir_cadastro=<?php print $vb_permitir_cadastro ?>&campo_codigo=<?php print $vs_campo_codigo; ?>&campo_valor=<?php print $vs_campo_valor; ?>&operador=<?php print $vs_operador; ?>"+vs_filtro;

<?php if (isset($pa_parametros_campo["excluir"]))
{
Expand Down
2 changes: 1 addition & 1 deletion app/components/campo_lista_selecao.php
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
elseif (!isset($pa_parametros_campo["permitir_entrada_avulsa"]) || (isset($pa_parametros_campo["permitir_entrada_avulsa"]) && !$pa_parametros_campo["permitir_entrada_avulsa"]))
{
?>
<div style="margin-left:5px">Nenhuma correspondência encontrada.</div>
<div class="nenhuma-correspondencia" style="margin-left:5px">Nenhuma correspondência encontrada.</div>
<?php
}
?>
Expand Down
43 changes: 36 additions & 7 deletions app/components/campo_representantes_digitais.php
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
<?php if (!$vs_preview_only)
{
?>
<div class="mb-3">
<div class="mb-3 d-flex gap-1 align-items-center">
<?php if ($vb_pode_editar) { ?>
<button class="btn btn-outline-primary px-4" type="button" id="btn_adicionar_campo_<?php print $vs_nome_campo; ?>">Adicionar</button>
<?php } ?>
Expand All @@ -92,7 +92,7 @@


<?php if (isset($va_valor_campo) && (count($va_valor_campo) > 0) && $vb_pode_editar) : ?>
<button class="btn btn-outline-primary px-4" type="button" id="btn_remover_todos_<?php print $vs_nome_campo; ?>">Remover todos</button>
<button class="btn btn-outline-primary px-4" type="button" id="btn_baixar_todos_<?php print $vs_nome_campo; ?>">Baixar todos</button>

<?php
$vb_todos_publicados_online = true;
Expand All @@ -111,6 +111,7 @@

<input type="checkbox" class="form-check-input" id="chk_publicar_todos_online"<?= ($vb_todos_publicados_online) ? " checked" : "" ?>
> Publicar todos online
<button class="btn btn-outline-primary px-4 ml-auto" type="button" id="btn_remover_todos_<?php print $vs_nome_campo; ?>">Remover todos</button>
<?php endif; ?>

<br>
Expand Down Expand Up @@ -390,10 +391,23 @@ class="filepond"

$.get(vs_url_campo_atualizado, function (data, status) {
$("#div_<?php print $vs_nome_campo ?>").hide();
$("#div-image-container").html(data);

let div = document.createElement('div');
let close_btn = document.createElement('button');
close_btn.type = 'button';
close_btn.classList.add('btn_fechar_imagem');
close_btn.classList.add('btn');
close_btn.classList.add('btn-outline-primary');
close_btn.classList.add('close-media-viewer');
close_btn.textContent = "X";

div.appendChild(close_btn);

$("#div-image-container").html(div);
$("#div-image-container").append(data);

$("#div-image-container").show();
$("#btn_fechar_imagem").show();
$(".btn_fechar_imagem").show();
});
} else if ($(this).hasClass('iframe-viewer')) {
let path = $(this).parent().attr('href');
Expand All @@ -404,6 +418,15 @@ class="filepond"
iframe.height = $(window).height() * 0.75;

let div = document.createElement('div');
let close_btn = document.createElement('button');
close_btn.type = 'button';
close_btn.classList.add('btn_fechar_imagem');
close_btn.classList.add('btn');
close_btn.classList.add('btn-outline-primary');
close_btn.classList.add('close-media-viewer');
close_btn.textContent = "X";

div.appendChild(close_btn);
div.appendChild(iframe);

$("#div_<?php print $vs_nome_campo ?>").hide();
Expand All @@ -414,15 +437,15 @@ class="filepond"
});

$("#div-image-container").show();
$("#btn_fechar_imagem").show();
$(".btn_fechar_imagem").show();
}
});

$(document).on('click', "#btn_fechar_imagem", function () {
$(document).on('click', ".btn_fechar_imagem", function () {
$(".container-lg-com-imagem").addClass("container-lg");
$(".container-lg-com-imagem").removeClass("container-lg-com-imagem");

$(this).hide();
$('.btn_fechar_imagem').hide();

$("#div-image-container").hide();
$("#div_<?php print $vs_nome_campo ?>").show();
Expand Down Expand Up @@ -621,6 +644,12 @@ function atualizar_campo_<?php print $vs_nome_campo ?>() {
?>

<script>
$(document).on('click', "#btn_baixar_todos_<?php print $vs_nome_campo; ?>", function()
{
let obj = $("#obj").val();

window.open('functions/download.php?obj='+obj+'&cod=<?php print $vn_objeto_codigo; ?>'+'&tipo_rd=<?=$vs_nome_campo?>', '_blank');
});

$(document).on('click', "#btn_remover_todos_<?php print $vs_nome_campo; ?>", function()
{
Expand Down
24 changes: 20 additions & 4 deletions app/components/header.php
Original file line number Diff line number Diff line change
Expand Up @@ -44,16 +44,32 @@
<?php if (!$vb_usuario_externo) : ?>
<li class="nav-item">

<div class="input-group">
<div class="input-group row-gap-05">
<form method="get" action="index.php">
<div class="input-group">
<div class="input-group header-identificador">

<?php
if (!isset($vs_busca_id))
$vs_busca_id = "";
?>

<input class="form-control" required type="text" placeholder="Busca por identificador" aria-label="Buscar" name="busca_id" value="<?php print htmlspecialchars($vs_busca_id); ?>">
$vo_autocomplete_identificador = new html_autocomplete("item_acervo", "busca_id");

$pa_parametros_campo = array (
'html_autocomplete',
'nome' => ['busca_id', 'item_acervo_codigo'],
'label' => '',
'objeto' => 'item_acervo',
'atributos' => ['item_acervo_codigo', 'item_acervo_identificador'],
'procurar_por' => 'item_acervo_identificador',
'operador' => 'LIKERIGHT',
'valor_no_input' => true,
'placeholder' => 'Busca por identificador',
);

$pa_valores_form = array('item_acervo_codigo' => '', "busca_id" => $vs_busca_id);

$vo_autocomplete_identificador->build($pa_valores_form, $pa_parametros_campo);
?>

<button class="btn btn-primary" type="submit">
<svg class="icon">
Expand Down
Loading
Loading