X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e74ede4659428af77c50057d69a0d08e4e74a6ef..ad4fcf639b3a75ddd40aeb659b090c9037d3507e:/apps/workbench/app/assets/javascripts/tab_panes.js?ds=sidebyside diff --git a/apps/workbench/app/assets/javascripts/tab_panes.js b/apps/workbench/app/assets/javascripts/tab_panes.js index ec4a519e96..0b7800c460 100644 --- a/apps/workbench/app/assets/javascripts/tab_panes.js +++ b/apps/workbench/app/assets/javascripts/tab_panes.js @@ -12,6 +12,44 @@ $(document).on('shown.bs.tab', '[data-toggle="tab"]', function(e) { done(function(data, status, jqxhr) { $('> div > div', this).html(data); $(this).addClass('loaded'); + }).fail(function(jqxhr, status, error) { + var errhtml; + if (jqxhr.getResponseHeader('Content-Type').match(/\btext\/html\b/)) { + var $response = $(jqxhr.responseText); + var $wrapper = $('div#page-wrapper', $response); + if ($wrapper.length) { + errhtml = $wrapper.html(); + } else { + errhtml = jqxhr.responseText; + } + } else { + errhtml = ("An error occurred: " + + (jqxhr.responseText || status)). + replace(/&/g, '&'). + replace(//g, '>'); + } + $('> div > div', this).html( + '
' + + '' + + ' ' + + 'Reload tab