diff --git a/themes/bootstrap3/js/lightbox.js b/themes/bootstrap3/js/lightbox.js index f5565d025dd1cd7d1e45072e7bafbb0470a56575..2adda39c26ce73bb64943d760a7f9923eb9cdb59 100644 --- a/themes/bootstrap3/js/lightbox.js +++ b/themes/bootstrap3/js/lightbox.js @@ -18,7 +18,7 @@ VuFind.lightbox = (function() { if ('undefined' == typeof details) { details = {}; } - document.dispatchEvent( + return document.dispatchEvent( new CustomEvent(msg, { detail: details, bubbles: true, @@ -132,15 +132,17 @@ VuFind.lightbox = (function() { || obj.url.match(/catalogLogin/)) // or catalog login for holds && $('<div/>').html(html).find('.flash-message.alert-danger').length == 0 // skip failed logins ) { + var eventResult = _emit('VuFind.lightbox.login', { + originalUrl: _originalUrl, + formUrl: obj.url + }); if (_originalUrl.match(/UserLogin/) || obj.url.match(/catalogLogin/)) { - _refreshPage(); + if (eventResult) { + _refreshPage(); + } return false; } else { VuFind.lightbox.refreshOnClose = true; - _emit('VuFind.lightbox.login', { - originalUrl: _originalUrl, - formUrl: obj.url - }); } } _update(html);