From f7e7951cba95f8a4e49477832c849c461c7f69fe Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 21 Jul 2025 11:10:44 +0200 Subject: đŸ’„ import tables: vertical scroll buttons (#6400) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ishtar_common/static/js/ishtar.js | 27 ++++++++++++++++++++++++ ishtar_common/templates/ishtar/import_table.html | 21 +++++++++++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) (limited to 'ishtar_common') diff --git a/ishtar_common/static/js/ishtar.js b/ishtar_common/static/js/ishtar.js index 1ef2e4c1d..0be326aae 100644 --- a/ishtar_common/static/js/ishtar.js +++ b/ishtar_common/static/js/ishtar.js @@ -39,6 +39,12 @@ if (typeof String.prototype.format !== 'function') { }; } +(function($) { + $.fn.hasHorizontalScrollBar = function() { + return this.get(0).scrollWidth > this.get(0).clientWidth; + } +})(jQuery); + $.urlParam = function(name){ var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href); if (results==null) { @@ -2228,3 +2234,24 @@ function load_window(url, speed, on_success, no_jump){ } }); } + +var display_horizontal_nav = function(div){ + if ($(div).hasHorizontalScrollBar()){ + $(".vscroll-arrows").show(); + } else { + $(".vscroll-arrows").hide(); + } +}; + +var register_vscroll_icons = function(){ + $("#vscroll-left").click(function(){ + let item = $(this).parent().parent(); + item.scrollLeft(0); + return false; + }); + $("#vscroll-right").click(function(){ + let item = $(this).parent().parent(); + item.scrollLeft(item.get(0).scrollWidth); + return false; + }); +}; diff --git a/ishtar_common/templates/ishtar/import_table.html b/ishtar_common/templates/ishtar/import_table.html index 6ea09ecfb..d9394f424 100644 --- a/ishtar_common/templates/ishtar/import_table.html +++ b/ishtar_common/templates/ishtar/import_table.html @@ -20,15 +20,34 @@ {% endif %}{% endfor %} var need_refresh = false; if (import_table_update_import_ids.length) need_refresh = true; - $(document).ready(function(){ setTimeout(function(){$(".alert-info.alert-dismissible").hide("fade");}, 5000); register_qa(); + register_vscroll_icons(); + display_horizontal_nav("#import-container"); + $(window).on('resize', function() {display_horizontal_nav("#import-container")}); if (need_refresh) setInterval(function(){ import_table_update_import_list(import_table_update_import_ids) }, 3 * 1000); }); + + + +
+ + +
+

{{page_name}}

{% if not object_list %} -- cgit v1.2.3