diff --git a/src/core/js/ext_bookmarks.js b/src/core/js/ext_bookmarks.js index 29173e63da4f3f0d056e15d7ef25645fa1613c20..d9da463699ff7021b9f94a877aa3d9379dffb5dc 100644 --- a/src/core/js/ext_bookmarks.js +++ b/src/core/js/ext_bookmarks.js @@ -569,11 +569,17 @@ var ext_bookmarks = function ($, logger, config) { * Add a button to add all query results to bookmarks. */ const add_add_query_results_button = function () { - const row_id = "caosdb-add-query-to-bookmarks-row" + const row_id = "caosdb-f-add-query-to-bookmarks-row" // do nothing if already existing if ($("#" + row_id).length > 0) { return; } + + // do nothing if no results + if ($(".caosdb-query-response-results").text().trim() == "0") { + return; + } + const button_html = $(`<div class="text-end" id=${row_id}> <button class="btn btn-link" onclick="ext_bookmarks.add_query_results_to_bookmarks();">Bookmark all query results</button> </div>`)[0]; @@ -590,7 +596,7 @@ var ext_bookmarks = function ($, logger, config) { const query_string = get_query_from_response(); const waiting_notification = createWaitingNotification( "Adding results to bookmarks. Please wait and do not reload the page."); - const bookmarks_row = $("#caosdb-add-query-to-bookmarks-row"); + const bookmarks_row = $("#caosdb-f-add-query-to-bookmarks-row"); bookmarks_row.find("button").hide(); bookmarks_row.append(waiting_notification); const resp = await query(query_string); @@ -627,7 +633,7 @@ var ext_bookmarks = function ($, logger, config) { */ const get_query_from_response = function () { - const orig_query = $(".caosdb-query-response-string")[0].innerText; + const orig_query = $(".caosdb-f-query-response-string")[0].innerText; return get_select_id_query_string(orig_query.trim()); } diff --git a/src/core/xsl/query.xsl b/src/core/xsl/query.xsl index 926bf907d34aad63cedd25097c800611b07e39c7..702a390f28ada96e140f40f10218b1740ab10700 100644 --- a/src/core/xsl/query.xsl +++ b/src/core/xsl/query.xsl @@ -56,7 +56,7 @@ <div class="col-sm-10 caosdb-overflow-box"> <div class="caosdb-overflow-content"> <span>Query: </span> - <span class="caosdb-query-response-string"> + <span class="caosdb-f-query-response-string"> <xsl:value-of select="@string"/> </span> </div> diff --git a/test/core/js/modules/ext_bookmarks.js.js b/test/core/js/modules/ext_bookmarks.js.js index a9397d1023b6423a24746da6be953fe561a5ee74..8130fe422a5bd124ef1c6767708b036e2e904f53 100644 --- a/test/core/js/modules/ext_bookmarks.js.js +++ b/test/core/js/modules/ext_bookmarks.js.js @@ -210,7 +210,7 @@ QUnit.test("select-query extraction", function (assert) { <div class="col-sm-10 caosdb-overflow-box"> <div class="caosdb-overflow-content"> <span>Query: </span> - <span class = "caosdb-query-response-string">SELECT name, id FROM RECORD MusicalAnalysis</span> + <span class = "caosdb-f-query-response-string">SELECT name, id FROM RECORD MusicalAnalysis</span> </div> </div> <div class="col-sm-2 text-end"> @@ -224,4 +224,4 @@ QUnit.test("select-query extraction", function (assert) { assert.equal(ext_bookmarks.get_query_from_response(), "SELECT ID FROM RECORD MusicalAnalysis"); -}); +}); \ No newline at end of file