From d641c00528e95e44bd74f7ed232ec2858f6358bf Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Sat, 6 Feb 2021 20:11:23 +0100 Subject: [PATCH] System/Diagnostics/Activity: use bootgrid's api to write rows instead of build the table, closes https://github.com/opnsense/core/issues/4681 --- .../OPNsense/Diagnostics/systemactivity.volt | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/opnsense/mvc/app/views/OPNsense/Diagnostics/systemactivity.volt b/src/opnsense/mvc/app/views/OPNsense/Diagnostics/systemactivity.volt index e40d61fa7..21dd1ebfc 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Diagnostics/systemactivity.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Diagnostics/systemactivity.volt @@ -40,23 +40,24 @@ POSSIBILITY OF SUCH DAMAGE. selection: true, multiSelect: true, }; - $("#grid-top").bootgrid('destroy'); + if ($("#grid-top").hasClass('bootgrid-table')) { + $("#grid-top").bootgrid('clear'); + } else { + $("#grid-top").bootgrid(gridopt); + } ajaxGet("/api/diagnostics/activity/getActivity", {}, function (data, status) { if (status == "success") { + let table = []; $("#grid-top > tbody").html(''); $.each(data['details'], function (key, value) { var fields = ["PID", "USERNAME", "PRI", "NICE", "SIZE", "RES", "STATE", "C", "TIME", "WCPU", "COMMAND"]; - let tr_str = ''; + let record = {}; for (var i = 0; i < fields.length; i++) { - if (value[fields[i]] != null) { - tr_str += '' + value[fields[i]] + ''; - } else { - tr_str += ''; - } + record[fields[i]] = value[fields[i]] != null ? value[fields[i]] : ""; } - tr_str += ''; - $("#grid-top > tbody").append(tr_str); + table.push(record); }); + $("#grid-top").bootgrid('append', table); var header_txt = ""; $.each(data['headers'], function (key, value) { header_txt += value; @@ -66,7 +67,6 @@ POSSIBILITY OF SUCH DAMAGE. $('#header_data').fadeOut('slow'); $('#header_data_show').fadeIn('slow'); } - $("#grid-top").bootgrid(gridopt); } ); }