From ddceeafc52acf526fdd9e8c4c0fdf009fed9a3fd Mon Sep 17 00:00:00 2001 From: Stephen Abello Date: Wed, 7 Apr 2021 09:56:35 +0200 Subject: [PATCH] Display ajax tab placeholder when loading regular displayed ajax tab --- js/layouts/tab-container/regular-tabs.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/js/layouts/tab-container/regular-tabs.js b/js/layouts/tab-container/regular-tabs.js index 962332b92..49a8ecbe0 100644 --- a/js/layouts/tab-container/regular-tabs.js +++ b/js/layouts/tab-container/regular-tabs.js @@ -3,6 +3,18 @@ $.widget( "itop.regulartabs", $.ui.tabs, { { tab_container_list: '[data-role="ibo-tab-container--tab-container-list"]' }, + options:{ + remotePanelCreated: function( panel, tab ) { + if(tab.attr('data-role') === 'ibo-tab-container--tab-header') + { + panel.prepend('
' + tab.text() + '
'); + let oTempDiv = $('
').addClass('ibo-tab--temporary-remote-content') + let oPlaceholder = $('
').addClass('ibo-tab--temporary-remote-content--placeholder').load(tab.attr('data-placeholder')); + oTempDiv.append(oPlaceholder) + panel.append(oTempDiv); + } + }, + }, // jQuery UI overload _processTabs: function() { var that = this, @@ -82,8 +94,8 @@ $.widget( "itop.regulartabs", $.ui.tabs, { } else { panel.insertAfter( that.tablist ); - } + that.options.remotePanelCreated(panel, tab, that.options.remote_tab_load_dict); } panel.attr( "aria-live", "polite" ); }