Mercurial > hg > digilib
changeset 1187:647e8676c8ac
auth plugin switches back to error image mode.
author | robcast |
---|---|
date | Sun, 14 Apr 2013 19:33:58 +0200 |
parents | 7f7e31a4a71e |
children | ddab72e483e7 |
files | webapp/src/main/webapp/jquery/jquery.digilib.auth.js |
diffstat | 1 files changed, 14 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/webapp/src/main/webapp/jquery/jquery.digilib.auth.js Sun Apr 14 18:48:18 2013 +0200 +++ b/webapp/src/main/webapp/jquery/jquery.digilib.auth.js Sun Apr 14 19:33:58 2013 +0200 @@ -37,7 +37,9 @@ // URL of Scaler servlet that does authentication 'authScalerBaseUrl' : null, // URL of Scaler servlet that does not do authentication - 'unauthScalerBaseUrl' : null + 'unauthScalerBaseUrl' : null, + // try to switch back to error image mode after authentication + 'returnToErrorImgMode' : true }; /** @@ -67,12 +69,21 @@ console.debug("auth: handleImgerror"); var data = this; var settings = data.settings; - if (settings.scalerBaseUrl != settings.authScalerBaseUrl && settings.authScalerBaseUrl != null) { - // not using authScalerBaseUrl -- change + if (settings.authScalerBaseUrl == null) return; + if (settings.scalerBaseUrl != settings.authScalerBaseUrl) { + // not using authScalerBaseUrl -- change URL console.debug("auth: switching to authenticated scaler."); settings.noauthScalerBaseUrl = settings.scalerBaseUrl; settings.scalerBaseUrl = settings.authScalerBaseUrl; digilib.fn.redisplay(data); + } else { + // we are authenticated, it must be a different kind of error + if (settings.returnToErrorImgMode && settings.noauthScalerBaseUrl != null) { + // remove error code flag and switch to noauth URL + delete data.scalerFlags['errcode']; + settings.scalerBaseUrl = settings.noauthScalerBaseUrl; + digilib.fn.redisplay(data); + } } };