# HG changeset patch # User robcast # Date 1329240972 -3600 # Node ID c9c9621eb1e68f1efe6faadf81b357b687efef41 # Parent a5a27bc99eef2b357a40661889be699f0c905fe2 CLOSED - # 24: action "digilibUrl" for getting a full digilib url https://it-dev.mpiwg-berlin.mpg.de/tracs/digilib/ticket/24 diff -r a5a27bc99eef -r c9c9621eb1e6 webapp/src/main/webapp/jquery/jquery.digilib.js --- a/webapp/src/main/webapp/jquery/jquery.digilib.js Tue Feb 14 10:17:01 2012 +0100 +++ b/webapp/src/main/webapp/jquery/jquery.digilib.js Tue Feb 14 18:36:12 2012 +0100 @@ -38,7 +38,7 @@ var defaults = { // version of this script - 'version' : 'jquery.digilib.js 2.1.4b1', + 'version' : 'jquery.digilib.js 2.1.5b1', // logo url 'logoUrl' : 'img/digilib-logo-text1.png', // homepage url (behind logo) @@ -456,6 +456,24 @@ return url; }, + /** + * Returns URL to the full digilib.html with the current parameters. + * Redirects immediately with mode=open. + * + * @param data + * @param mode + */ + digilibUrl : function (data, mode) { + var baseUrl = data.settings.digilibBaseUrl + '/jquery/digilib.html'; + var url = getDigilibUrl(data, baseUrl); + if (mode === 'open') { + // redirect + window.location = url; + } + return url; + }, + + /** set image quality * * @param data @@ -616,7 +634,7 @@ /** returns URL and query string for current digilib * */ - var getDigilibUrl = function (data) { + var getDigilibUrl = function (data, baseUrl) { packParams(data); var settings = data.settings; var paramList = settings.additionalParamNames.concat(settings.digilibParamNames); @@ -631,13 +649,15 @@ }); } var queryString = getParamString(settings, paramList, defaults); - // take url from current location - var url = window.location.href; - var pos = url.indexOf('?'); - if (pos > -1) { - url = url.substring(0, pos); + if (baseUrl == null) { + // take url from current location + baseUrl = window.location.href; + var pos = baseUrl.indexOf('?'); + if (pos > -1) { + baseUrl = baseUrl.substring(0, pos); + } } - return url + '?' + queryString; + return baseUrl + '?' + queryString; }; /** loads image information from digilib server via HTTP