X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/931035f064b020f125daf5b905e87f994528020e..d14dd75b263d8f999603b66d23f74667d36a2412:/apps/workbench/app/assets/javascripts/tab_panes.js diff --git a/apps/workbench/app/assets/javascripts/tab_panes.js b/apps/workbench/app/assets/javascripts/tab_panes.js index 11990b0dea..eb574791a5 100644 --- a/apps/workbench/app/assets/javascripts/tab_panes.js +++ b/apps/workbench/app/assets/javascripts/tab_panes.js @@ -2,7 +2,6 @@ // Fire when a tab is selected/clicked. $(document).on('shown.bs.tab', '[data-toggle="tab"]', function(event) { - update_selection_actions(); // reload the pane (unless it's already loaded) $($(event.target).attr('href')). not('.pane-loaded'). @@ -107,8 +106,8 @@ $(document).on('arv:pane:reload', '[data-pane-content-url]', function(e) { var content_url = $pane.attr('data-pane-content-url'); $.ajax(content_url, {dataType: 'html', type: 'GET', context: $pane}). done(function(data, status, jqxhr) { - // Preserve collapsed state var $pane = this; + // Preserve collapsed state var collapsable = {}; $(".collapse", this).each(function(i, c) { collapsable[c.id] = $(c).hasClass('in'); @@ -125,7 +124,7 @@ $(document).on('arv:pane:reload', '[data-pane-content-url]', function(e) { $pane.removeClass('pane-loading'); $pane.addClass('pane-loaded'); $pane.attr('data-loaded-at', (new Date()).getTime()); - $pane.trigger('arv:pane:loaded'); + $pane.trigger('arv:pane:loaded', [$pane]); if ($pane.hasClass('pane-stale')) { $pane.trigger('arv:pane:reload'); @@ -134,7 +133,9 @@ $(document).on('arv:pane:reload', '[data-pane-content-url]', function(e) { var $pane = this; var errhtml; var contentType = jqxhr.getResponseHeader('Content-Type'); - if (contentType && contentType.match(/\btext\/html\b/)) { + if (jqxhr.readyState == 0 || jqxhr.status == 0) { + errhtml = "Cancelled."; + } else if (contentType && contentType.match(/\btext\/html\b/)) { var $response = $(jqxhr.responseText); var $wrapper = $('div#page-wrapper', $response); if ($wrapper.length) { @@ -149,7 +150,7 @@ $(document).on('arv:pane:reload', '[data-pane-content-url]', function(e) { replace(//g, '>'); } - $pane.html('

' + + $pane.html('

' + '' + ' ' + 'Reload tab

');