Mercurial > hg > digilib-old
diff client/digitallibrary/jquery/jquery.digilib.js @ 744:95e6dc1b34ec jquery
get reference works now in embedded.
url configurable or taken from scaler url.
author | robcast |
---|---|
date | Thu, 03 Feb 2011 10:30:15 +0100 |
parents | 05665cc70a5f |
children | ad483c008159 |
line wrap: on
line diff
--- a/client/digitallibrary/jquery/jquery.digilib.js Wed Feb 02 22:28:36 2011 +0100 +++ b/client/digitallibrary/jquery/jquery.digilib.js Thu Feb 03 10:30:15 2011 +0100 @@ -183,6 +183,8 @@ 'logoUrl' : '../img/digilib-logo-text1.png', // homepage url (behind logo) 'homeUrl' : 'http://digilib.berlios.de', + // base URL to digilib viewer (for reference URLs) + 'digilibBaseUrl' : null, // base URL to Scaler servlet 'scalerBaseUrl' : null, // list of Scaler parameters @@ -315,7 +317,7 @@ $elem.data('digilib', data); } unpackParams(data); - // check if browser knows background-size + // check if browser knows *background-size for (var bs in {'':1, '-moz-':1, '-webkit-':1, '-o-':1}) { if ($elem.css(bs+'background-size')) { data.hasBgSize = true; @@ -323,6 +325,22 @@ break; } } + // check digilib base URL + if (elemSettings.digilibBaseUrl == null) { + if (isFullscreen) { + // take current host + var url = window.location.toString(); + var pos = url.indexOf('?'); + elemSettings.digilibBaseUrl = url.substring(0, pos); + } else { + var url = elemSettings.scalerBaseUrl; + if (url) { + // build it from scaler URL + var bp = url.indexOf('/servlet/Scaler'); + elemSettings.digilibBaseUrl = url.substring(0, bp) + '/digilib.jsp'; + } + } + } // create HTML structure for scaler setupScalerDiv(data); // add buttons @@ -547,12 +565,7 @@ // presents a reference url (returns value if noprompt) reference : function (data, noprompt) { var settings = data.settings; - var url; - if (settings.interactionMode === 'fullscreen') { - url = getDigilibUrl(data); - } else { - url = getScalerUrl(data); - } + var url = getDigilibUrl(data); if (noprompt == null) { window.prompt("URL reference to the current view", url); } @@ -663,11 +676,7 @@ packParams(data); var settings = data.settings; var queryString = getParamString(settings, settings.digilibParamNames, defaults); - var url = window.location.toString(); - var pos = url.indexOf('?'); - var baseUrl = url.substring(0, pos); - var newurl = baseUrl + '?' + queryString; - return newurl; + return settings.digilibBaseUrl + '?' + queryString; }; // processes some parameters into objects and stuff