comparison webapp/src/main/webapp/jquery/jquery.digilib.js @ 1011:5f35e97d8ae3

oops, worked on wrong version
author hertzhaft
date Sat, 18 Feb 2012 10:00:26 +0100
parents ba9d90589ee8
children dc09bccf8357
comparison
equal deleted inserted replaced
1010:ba9d90589ee8 1011:5f35e97d8ae3
36 36
37 (function($) { 37 (function($) {
38 38
39 var defaults = { 39 var defaults = {
40 // version of this script 40 // version of this script
41 'version' : 'jquery.digilib.js 2.1.4b1', 41 'version' : 'jquery.digilib.js 2.1.5b2',
42 // logo url 42 // logo url
43 'logoUrl' : 'img/digilib-logo-text1.png', 43 'logoUrl' : 'img/digilib-logo-text1.png',
44 // homepage url (behind logo) 44 // homepage url (behind logo)
45 'homeUrl' : 'http://digilib.berlios.de', 45 'homeUrl' : 'http://digilib.berlios.de',
46 // base URL to digilib (e.g. 'http://digilib.mpiwg-berlin.mpg.de/digitallibrary') 46 // base URL to digilib (e.g. 'http://digilib.mpiwg-berlin.mpg.de/digitallibrary')
106 var EPSILON = 0.0001; 106 var EPSILON = 0.0001;
107 // list of buttons 107 // list of buttons
108 var buttons = {}; 108 var buttons = {};
109 109
110 var actions = { 110 var actions = {
111 111
112 /** init: digilib initialization 112 /** init: digilib initialization
113 * 113 *
114 * @param options 114 * @param options
115 * @returns 115 * @returns
116 */ 116 */
339 zoomFull : function (data, mode) { 339 zoomFull : function (data, mode) {
340 data.zoomArea = FULL_AREA.copy(); 340 data.zoomArea = FULL_AREA.copy();
341 setFitMode(data, mode); 341 setFitMode(data, mode);
342 // zoom full only works in screen mode 342 // zoom full only works in screen mode
343 setScaleMode(data, 'screen'); 343 setScaleMode(data, 'screen');
344 // bird's eye off for full zoom
345 data.settings.isBirdDivVisible = false; 344 data.settings.isBirdDivVisible = false;
346 redisplay(data); 345 redisplay(data);
347 }, 346 },
348 347
349 /** mirror the image 348 /** mirror the image
450 */ 449 */
451 reference : function (data, noprompt) { 450 reference : function (data, noprompt) {
452 var url = getDigilibUrl(data); 451 var url = getDigilibUrl(data);
453 if (noprompt == null) { 452 if (noprompt == null) {
454 window.prompt("URL reference to the current view", url); 453 window.prompt("URL reference to the current view", url);
454 // return nothing so we can use is in javascript: url without reload
455 return;
455 } 456 }
456 return url; 457 return url;
457 }, 458 },
458 459
460 /**
461 * Returns URL to the full digilib.html with the current parameters.
462 * Redirects immediately with mode=open.
463 *
464 * @param data
465 * @param mode
466 */
467 digilibUrl : function (data, mode) {
468 var url = getDigilibUrl(data, '/jquery/digilib.html');
469 if (mode === 'open') {
470 // redirect
471 window.location = url;
472 } else if (mode === 'open_new') {
473 // open new window
474 window.open(url);
475 return;
476 }
477 return url;
478 },
479
480
459 /** set image quality 481 /** set image quality
460 * 482 *
461 * @param data 483 * @param data
462 * @param qual 484 * @param qual
463 */ 485 */
611 var params = getParamString(bgSettings, settings.previewImgParamNames, defaults); 633 var params = getParamString(bgSettings, settings.previewImgParamNames, defaults);
612 var url = settings.scalerBaseUrl + '?' + params; 634 var url = settings.scalerBaseUrl + '?' + params;
613 return url; 635 return url;
614 }; 636 };
615 637
616 /** returns URL and query string for current digilib 638 /**
617 * 639 * returns URL and query string for current digilib.
618 */ 640 * if digilibPage != null returns URL to page in digilib installation with digilib parameters,
619 var getDigilibUrl = function (data) { 641 * otherwise using current URL and parameters.
642 *
643 */
644 var getDigilibUrl = function (data, digilibPage) {
620 packParams(data); 645 packParams(data);
621 var settings = data.settings; 646 var settings = data.settings;
622 var paramList = settings.additionalParamNames.concat(settings.digilibParamNames); 647 var paramList = settings.digilibParamNames;
623 if (settings.suppressParamNames != null) { 648 if (digilibPage != null) {
624 // eliminate suppressed parameters from list 649 var baseUrl = data.settings.digilibBaseUrl + digilibPage;
625 paramList = $.map(paramList, function(e, idx) { 650 } else {
626 if ($.inArray(e, settings.suppressParamNames) >= 0) { 651 paramList = settings.additionalParamNames.concat(settings.digilibParamNames);
627 return null; 652 if (settings.suppressParamNames != null) {
628 } else { 653 // eliminate suppressed parameters from list
629 return e; 654 paramList = $.map(paramList, function(e, idx) {
630 } 655 if ($.inArray(e, settings.suppressParamNames) >= 0) {
631 }); 656 return null;
657 } else {
658 return e;
659 }
660 });
661 }
662 // take url from current location
663 var baseUrl = window.location.href;
664 var pos = baseUrl.indexOf('?');
665 if (pos > -1) {
666 baseUrl = baseUrl.substring(0, pos);
667 }
632 } 668 }
633 var queryString = getParamString(settings, paramList, defaults); 669 var queryString = getParamString(settings, paramList, defaults);
634 // take url from current location 670 return baseUrl + '?' + queryString;
635 var url = window.location.href;
636 var pos = url.indexOf('?');
637 if (pos > -1) {
638 url = url.substring(0, pos);
639 }
640 return url + '?' + queryString;
641 }; 671 };
642 672
643 /** loads image information from digilib server via HTTP 673 /** loads image information from digilib server via HTTP
644 * 674 *
645 */ 675 */