N°4085 - Polishing : bulk modify

This commit is contained in:
acognet
2021-06-25 10:11:34 +02:00
parent 671d112452
commit 275daf3b0d
6 changed files with 93 additions and 55 deletions

View File

@@ -42,8 +42,8 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
scrollX: true,
{% if oUIBlock.GetOption('sMaxHeight') is not empty %}
scrollY: "{{ oUIBlock.GetOption('sMaxHeight') }}",
scrollCollapse: true,
{% endif %}
scrollCollapse: true,
lengthMenu: [[ {{ iPageSize }}, {{ iPageSize*2 }}, {{ iPageSize*3 }}, {{ iPageSize*4 }}, -1], [ {{ iPageSize }}, {{ iPageSize*2 }}, {{ iPageSize*3 }}, {{ iPageSize*4 }}, "{{ 'UI:Datatables:Language:DisplayLength:All'|dict_s }}"]],
dom: "<'ibo-datatable--toolbar'<'ibo-datatable--toolbar-left' pl><'ibo-datatable--toolbar-right' i>>t<'ibo-datatable--toolbar'<'ibo-datatable--toolbar-left' pl><'ibo-datatable--toolbar-right' i>>",
{% if( oUIBlock.GetOption("sort")[0] is defined ) %}
@@ -113,7 +113,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
sortable: false,
orderable: false,
title:
{% if oUIBlock.GetOption("select_mode") != "single" %}
{% if oUIBlock.GetOption("select_mode") != "single" %}
'<span class="row_input"><input type="checkbox" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}"/></span>'
{% else %}
'<span class="row_input"><input type="checkbox" style="display: none;" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}"/></span>'
@@ -182,9 +182,9 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
this.find('thead').unblock();
{% if oUIBlock.GetOption("select_mode") is not empty %}
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
{% if oUIBlock.GetOption("select_mode") != "single" %}
this.api().on('select', function (oEvent, dt, type, indexes) {
this.api().on('select', function (oEvent, dt, type, indexes) {
if (bSelectAllowed{{ oUIBlock.GetId() }})
{
let aData = oTable{{ sListIDForVarSuffix }}.rows(indexes).data().toArray();
@@ -199,7 +199,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) > -1)
{
oSelectedItems{{ sListId }}.splice(oSelectedItems{{ sListId }}.indexOf(iItemId), 1);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}
@@ -214,7 +214,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) === -1)
{
oSelectedItems{{ sListId }}.push(iItemId);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}
@@ -236,7 +236,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) === -1)
{
oSelectedItems{{ sListId }}.push(iItemId);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}
@@ -248,7 +248,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) > -1)
{
oSelectedItems{{ sListId }}.splice(oSelectedItems{{ sListId }}.indexOf(iItemId), 1);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}
@@ -268,7 +268,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) === -1)
{
oSelectedItems{{ sListId }}.push(iItemId);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}
@@ -288,7 +288,7 @@ var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
if (oSelectedItems{{ sListId }}.indexOf(iItemId) > -1)
{
oSelectedItems{{ sListId }}.splice(oSelectedItems{{ sListId }}.indexOf(iItemId), 1);
updateDataTableSelection('{{ sListId }}');
updateDataTableSelection('{{ sListId }}', '{{ oUIBlock.GetId() }}');
}
}
}

View File

@@ -1,7 +1,7 @@
{% set sListId = oUIBlock.GetId() %}
{% set sListIDForVarSuffix = ('' ~ sListId)|sanitize(constant('utils::ENUM_SANITIZATION_FILTER_VARIABLE_NAME')) %}
var table{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
language: {
emptyTable: "{{ 'UI:Message:EmptyList:UseAdd'|dict_s }}"
},
@@ -44,17 +44,22 @@ var table{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
});
{% if (oUIBlock.GetOption('bFullscreen')) %}
var myheight = $("#ibo-main-content").height()-$("#ibo-main-content")[0].scrollHeight+$("#{{ oUIBlock.GetId() }}").height();
if (myheight < 200)
var heightS{{ sListIDForVarSuffix }} = 0;
var heightD{{ sListIDForVarSuffix }} = 0;
if ($("#{{ oUIBlock.GetId() }}").height() > 0)
{
myheight = 200;
};
$("#{{ oUIBlock.GetId() }}_wrapper").find(".dataTables_scrollBody").height(myheight);
heightD{{ sListIDForVarSuffix }} = $("#ibo-main-content").height()-$("#ibo-main-content")[0].scrollHeight+$("#{{ oUIBlock.GetId() }}").height();
heightS{{ sListIDForVarSuffix }} = $("#ibo-main-content").height();
if (heightD{{ sListIDForVarSuffix }} > 200)
{
$("#{{ oUIBlock.GetId() }}_wrapper").find(".dataTables_scrollBody").height(heightD{{ sListIDForVarSuffix }});
}
}
{% endif %}
if ($('#{{ oUIBlock.GetId() }}').find('thead').is(':visible'))
{
table{{ sListIDForVarSuffix }}.columns.adjust().draw();
oTable{{ sListIDForVarSuffix }}.columns.adjust().draw();
}
if (window.ResizeObserver)
@@ -67,4 +72,40 @@ if (window.ResizeObserver)
}, 120);
});
oFromTable{{ sListIDForVarSuffix }}Resize.observe($('#{{ oUIBlock.GetId() }}')[0]);
{% if (oUIBlock.GetOption('bFullscreen')) %}
let heightScreen{{ sListIDForVarSuffix }} = heightS{{ sListIDForVarSuffix }};
let heightDatatable{{ sListIDForVarSuffix }} = heightD{{ sListIDForVarSuffix }};
let oFromScreen{{ sListIDForVarSuffix }}ResizeTimeout = null;
const oFromScreen{{ sListIDForVarSuffix }}Resize = new ResizeObserver(function () {
clearTimeout(oFromScreen{{ sListIDForVarSuffix }}ResizeTimeout);
oFromScreen{{ sListIDForVarSuffix }}ResizeTimeout = setTimeout(function () {
if ($("#{{ oUIBlock.GetId() }}_wrapper").height() > 0)
{
console.warn("$_wrapper).height()"+$("#{{ oUIBlock.GetId() }}_wrapper").height());
if (heightDatatable{{ sListIDForVarSuffix }}> 0)
{
let calcul = $("#ibo-main-content").height()+heightDatatable{{ sListIDForVarSuffix }}-heightScreen{{ sListIDForVarSuffix }};
if (calcul > 200)
{
$("#{{ oUIBlock.GetId() }}_wrapper").find(".dataTables_scrollBody").height(calcul);
}
}
else
{
heightDatatable{{ sListIDForVarSuffix }} = $("#ibo-main-content").height()-$("#ibo-main-content")[0].scrollHeight+$("#{{ oUIBlock.GetId() }}_wrapper").height();
heightScreen{{ sListIDForVarSuffix }} = $("#ibo-main-content").height();
if (heightDatatable{{ sListIDForVarSuffix }} > 200)
{
$("#{{ oUIBlock.GetId() }}_wrapper").find(".dataTables_scrollBody").height(heightDatatable{{ sListIDForVarSuffix }});
}
}
}
}, 120);
});
oFromScreen{{ sListIDForVarSuffix }}Resize.observe($('#ibo-main-content')[0]);
{% endif %}
}

View File

@@ -3,12 +3,12 @@
{% set sListId = oUIBlock.GetId() %}
{% set sListIDForVarSuffix = ('' ~ sListId)|sanitize(constant('utils::ENUM_SANITIZATION_FILTER_VARIABLE_NAME')) %}
{% if oUIBlock.GetOption("iPageSize") is not empty %}
{% set iPageSize = oUIBlock.GetOption("iPageSize") %}
{% set iPageSize = oUIBlock.GetOption("iPageSize") %}
{% else %}
{% set iPageSize = 10 %}
{% set iPageSize = 10 %}
{% endif %}
$('#{{ oUIBlock.GetId() }}').DataTable({
var oTable{{ sListIDForVarSuffix }} = $('#{{ oUIBlock.GetId() }}').DataTable({
language: {
processing: "{{ 'UI:Datatables:Language:Processing'|dict_s }}",
search: "{{ 'UI:Datatables:Language:Search'|dict_s }}",
@@ -32,8 +32,8 @@ $('#{{ oUIBlock.GetId() }}').DataTable({
scrollX: true,
{% if oUIBlock.GetOption('sMaxHeight') is not empty %}
scrollY: "{{ oUIBlock.GetOption('sMaxHeight') }}",
scrollCollapse: true,
{% endif %}
scrollCollapse: true,
order: [],
autoWidth: false,
rowId: "id",