From 8d1998dd8e04b0916b5adec3f928a58afb366661 Mon Sep 17 00:00:00 2001 From: Ere Maijala <ere.maijala@helsinki.fi> Date: Thu, 25 Feb 2016 11:06:01 +0200 Subject: [PATCH] Fix AJAX fail handlers to not cause JS errors if responseJSON is not defined. --- themes/bootstrap3/js/check_item_statuses.js | 5 +++-- themes/bootstrap3/js/openurl.js | 6 +++--- themes/bootstrap3/js/record.js | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/themes/bootstrap3/js/check_item_statuses.js b/themes/bootstrap3/js/check_item_statuses.js index 0aeec0d860a..04dec21f4a7 100644 --- a/themes/bootstrap3/js/check_item_statuses.js +++ b/themes/bootstrap3/js/check_item_statuses.js @@ -80,9 +80,10 @@ function checkItemStatuses() { $(".ajax-availability").removeClass('ajax-availability'); }) .fail(function(response, textStatus) { - if (textStatus == "abort") { return; } + $('.ajax-availability').empty(); + if (textStatus == 'abort' || typeof response.responseJSON === 'undefined') { return; } // display the error message on each of the ajax status place holder - $(".ajax-availability").empty().append(response.responseJSON.data).addClass('text-danger'); + $('.ajax-availability').append(response.responseJSON.data).addClass('text-danger'); }); } diff --git a/themes/bootstrap3/js/openurl.js b/themes/bootstrap3/js/openurl.js index 638c6373b5a..88f50d1dbd4 100644 --- a/themes/bootstrap3/js/openurl.js +++ b/themes/bootstrap3/js/openurl.js @@ -11,9 +11,9 @@ function loadResolverLinks($target, openUrl, searchClassId) { $target.removeClass('ajax_availability').empty().append(response.data); }) .fail(function(response, textStatus) { - if (textStatus == "abort") { return; } - $target.removeClass('ajax_availability').addClass('text-danger') - .empty().append(response.responseJSON.data); + $target.removeClass('ajax_availability').addClass('text-danger').empty(); + if (textStatus == 'abort' || typeof response.responseJSON === 'undefined') { return; } + $target.append(response.responseJSON.data); }); } diff --git a/themes/bootstrap3/js/record.js b/themes/bootstrap3/js/record.js index b57f6b22fa9..6ed8710bde7 100644 --- a/themes/bootstrap3/js/record.js +++ b/themes/bootstrap3/js/record.js @@ -96,7 +96,7 @@ function registerAjaxCommentRecord() { $(form).find('input[type="submit"]').button('loading'); }) .fail(function(response, textStatus) { - if (textStatus == "abort") { return; } + if (textStatus == 'abort' || typeof response.responseJSON === 'undefined') { return; } Lightbox.displayError(response.responseJSON.data); }); return false; -- GitLab