diff --git a/CHANGELOG b/CHANGELOG index 430d2a345d380a2ac38106412aaffd99d5e8139a..4b8b7d1773de0647ed26e41a9d2eb4fe2ad7374e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -7,6 +7,8 @@ minerva (15.0.0~alpha.1) stable; urgency=medium * Small improvement: uploaded map is automatically cached (#983) * Small improvement: molart updated to version 1.5.0: Ability to show unobserved structure regions in the sequence view. + * Small improvement: list of genomes is automatically refreshed during genome + upload (#820) * Bug fix: structural states of proteins are imported properly from SBGNML PD (#995) * Bug fix: clear button icon, refresh comments button and show overview diff --git a/frontend-js/package-lock.json b/frontend-js/package-lock.json index 16c9668d51f2c97a5ee52bcbcdf1694600eb3d77..93eecbbc3851bf594b1fb2dd96e298b8704f53f5 100644 --- a/frontend-js/package-lock.json +++ b/frontend-js/package-lock.json @@ -3586,9 +3586,9 @@ } }, "molart": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/molart/-/molart-1.4.0.tgz", - "integrity": "sha512-+HPcwFZTxa3BwBcyimgsg5pCSphy6hdidYUeQ8VcMOd8UhfdmdhZAsSQkF/E31jjlwnIuYTDqLAbKE8GsX5clA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/molart/-/molart-1.5.0.tgz", + "integrity": "sha512-3hxf1++izKhqVdc+X5NyGjOS9wu1PQd7+JpSeUJBIRKOO4fqmhUyYflQ2asymYwQv7GGxenFh2PQ24hmbOAXwQ==", "dev": true }, "mold-source-map": { diff --git a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js index b377358beae7b69ab52666dbfee732d4f220a0d0..e8bf33d5c132541938d37d4d68086c9a1ec95a9c 100644 --- a/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js +++ b/frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js @@ -35,6 +35,8 @@ function GenomeAdminPanel(params) { GenomeAdminPanel.prototype = Object.create(AbstractAdminPanel.prototype); GenomeAdminPanel.prototype.constructor = GenomeAdminPanel; +GenomeAdminPanel.AUTO_REFRESH_TIME = 5000; + /** * * @private @@ -202,6 +204,7 @@ GenomeAdminPanel.prototype.setReferenceGenomes = function (referenceGenomes) { var self = this; return self.getServerConnector().getLoggedUser().then(function (user) { + var requireUpdate = false; var dataTable = $("[name='genomeTable']", self.getElement()).DataTable(); var data = []; @@ -211,10 +214,24 @@ GenomeAdminPanel.prototype.setReferenceGenomes = function (referenceGenomes) { var genome = referenceGenomes[i]; var rowData = self.genomeToTableRow(genome, user); data.push(rowData); + if (genome.getDownloadProgressStatus() !== "READY" && + genome.getDownloadProgressStatus() !== "ERROR" && + genome.getDownloadProgressStatus() !== "N/A") { + requireUpdate = true; + } + } //it should be simplified, but I couldn't make it work dataTable.clear().rows.add(data).page(page).draw(false).page(page).draw(false); - }) + + if (requireUpdate) { + setTimeout(function () { + logger.debug("Genomes auto refresh"); + return self.onRefreshClicked(); + }, GenomeAdminPanel.AUTO_REFRESH_TIME); + } + + }); }; /**