# HG changeset patch # User robcast # Date 1296555512 -3600 # Node ID 203ef842de132bdd535db23cfecef977276ff124 # Parent e2429ec1976e494caa1d04b8133ef656fa8b249b first steps to storing embedded state in cookie diff -r e2429ec1976e -r 203ef842de13 client/digitallibrary/jquery/jquery.digilib.js --- a/client/digitallibrary/jquery/jquery.digilib.js Tue Feb 01 00:12:02 2011 +0100 +++ b/client/digitallibrary/jquery/jquery.digilib.js Tue Feb 01 11:18:32 2011 +0100 @@ -288,6 +288,19 @@ params = queryParams; } else { params = parseImgParams($elem); + if (jQuery.cookie) { + // retrieve params from cookie + var ck = "digilib-embed:fn:" + escape(params.fn) + ":pn:" + (params.pn || '1'); + var cs = jQuery.cookie(ck); + console.debug("get cookie=", ck, " value=", cs); + if (cs) { + var cp = parseQueryString(cs); + // ignore fn and pn from cookie + cp.fn = params.fn; + cp.pn = params.pn; + params = cp; + } + } } // store $(this) element in the settings elemSettings = $.extend({}, settings, params); @@ -735,6 +748,13 @@ jQuery.cookie(ck, clop); } } + if (settings.interactionMode !== 'fullscreen' && jQuery.cookie) { + // store normal parameters in cookie for embedded mode + var qs = getParamString(settings, settings.digilibParamNames, defaults); + var ck = "digilib-embed:fn:" + escape(settings.fn) + ":pn:" + settings.pn; + console.debug("set cookie=", ck, " value=", qs); + jQuery.cookie(ck, qs); + } }; var retrieveOptions = function (data) {