Mercurial > hg > digilib
changeset 1514:ea7b4cc626cc
put auth token in explicit cookie for scaler to use.
author | robcast |
---|---|
date | Wed, 04 May 2016 20:05:52 +0200 |
parents | 2bee7503ff87 |
children | 70a487a10319 |
files | webapp/src/main/webapp/jquery/jquery.digilib.oauth.js |
diffstat | 1 files changed, 16 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/webapp/src/main/webapp/jquery/jquery.digilib.oauth.js Wed May 04 20:04:55 2016 +0200 +++ b/webapp/src/main/webapp/jquery/jquery.digilib.oauth.js Wed May 04 20:05:52 2016 +0200 @@ -55,6 +55,8 @@ 'returnToErrorImgMode' : true, // url param for ID Token 'id_token' : null, + // name for ID token cookie + 'token_cookie_name' : 'id_token' }; @@ -107,18 +109,23 @@ // TODO: what now? return; } else if (fragp['id_token'] != null) { - // save id_token - data.dlOpts.id_token = fragp['id_token']; - fn.storeOptions(data); + var token = fragp['id_token']; + // save id_token in cookie + if ($.cookie) { + // set path so Scaler can see it (relative part of base url) + var cp = data.settings.digilibBaseUrl.replace(/^.*\/\/[^\/]+\//, '/'); + $.cookie(data.settings.token_cookie_name, token, {'path': cp}); + } // and set for Scaler - data.settings.id_token = fragp['id_token']; + data.settings.id_token = token; // remove fragment from URL window.location.hash = ''; } } else { - if (data.dlOpts.id_token) { + // get token from cookie + if ($.cookie && $.cookie(data.settings.token_cookie_name)) { // set token for Scaler - data.settings.id_token = data.dlOpts.id_token; + data.settings.id_token = $.cookie(data.settings.token_cookie_name); } } checkToken(data); @@ -185,8 +192,9 @@ */ var discardToken = function (data) { delete data.settings.id_token; - delete data.dlOpts.id_token; - fn.storeOptions(data); + if ($.cookie) { + $.removeCookie(data.settings.token_cookie_name); + } }; /**