From 2ad48aba36b45d7ad386112931eaca837b42a872 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Thu, 30 Jan 2025 18:55:05 +1100 Subject: [PATCH] Fix bug where download CSV icon would disappear on web interface after refreshing table data --- .../bonsai/bim/data/webui/static/js/index.js | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/bonsai/bonsai/bim/data/webui/static/js/index.js b/src/bonsai/bonsai/bim/data/webui/static/js/index.js index d4b6d7fb73..4d8c9083de 100644 --- a/src/bonsai/bonsai/bim/data/webui/static/js/index.js +++ b/src/bonsai/bonsai/bim/data/webui/static/js/index.js @@ -269,13 +269,7 @@ function addTableElement(blenderId, csvData, filename) { }, }); - var downloadCsv = $('') - .css("margin-left", "10px") - .css("cursor", "pointer"); - tableTitle.append(downloadCsv); - downloadCsv.on("click", function () { - table.download("csv", "data.csv"); - }); + createDownloadIcon(blenderId); table.on("rowSelected", function (row) { var index = row.getIndex(); // the guid of the object @@ -301,6 +295,18 @@ function addTableElement(blenderId, csvData, filename) { }); } +function createDownloadIcon(blenderId) { + const table = Tabulator.findTable("#table-" + blenderId)[0]; + const tableTitle = $("#title-" + blenderId); + var downloadCsv = $('') + .css("margin-left", "10px") + .css("cursor", "pointer"); + tableTitle.append(downloadCsv); + downloadCsv.on("click", function () { + table.download("csv", "data.csv"); + }); +} + // Function to update table and filename function updateTableElement(blenderId, csvData, filename) { // check if the headers are the same @@ -329,6 +335,7 @@ function updateTableElement(blenderId, csvData, filename) { } } $("#title-" + blenderId).text(filename); + createDownloadIcon(blenderId); } }