Mercurial > hg > digilib
comparison client/digitallibrary/jquery/jquery.digilib.js @ 621:7f97716b901c jquery
changed methods to pass "data" around instead of "settings"
renamed makeParamString to getParamString
| author | robcast |
|---|---|
| date | Tue, 18 Jan 2011 00:11:53 +0100 |
| parents | b930fa64c684 |
| children | 2fd6928be5dd |
comparison
equal
deleted
inserted
replaced
| 620:b930fa64c684 | 621:7f97716b901c |
|---|---|
| 213 // store in data element | 213 // store in data element |
| 214 $elem.data('digilib', data); | 214 $elem.data('digilib', data); |
| 215 } | 215 } |
| 216 // create HTML structure | 216 // create HTML structure |
| 217 setupScalerDiv(data); | 217 setupScalerDiv(data); |
| 218 setupButtons($elem, elemSettings, 'actionsStandard'); | 218 setupButtons(data, 'actionsStandard'); |
| 219 // bird's eye view creation - TODO: could be deferred? | 219 // bird's eye view creation - TODO: could be deferred? |
| 220 setupBirdviewDiv($elem, elemSettings); | 220 setupBirdviewDiv(data); |
| 221 // about window creation - TODO: could be deferred? restrict to only one item? | 221 // about window creation - TODO: could be deferred? restrict to only one item? |
| 222 setupAboutDiv($elem, elemSettings); | 222 setupAboutDiv(data); |
| 223 }); | 223 }); |
| 224 }, | 224 }, |
| 225 | 225 |
| 226 // clean up digilib | 226 // clean up digilib |
| 227 destroy : function() { | 227 destroy : function() { |
| 338 }; | 338 }; |
| 339 return params; | 339 return params; |
| 340 }; | 340 }; |
| 341 | 341 |
| 342 // returns a query string from key names from a parameter hash | 342 // returns a query string from key names from a parameter hash |
| 343 var makeParamString = function (settings, keys) { | 343 var getParamString = function (settings, keys) { |
| 344 var paramString = ''; | 344 var paramString = ''; |
| 345 var latter = false; | 345 var latter = false; |
| 346 for (i = 0; i < keys.length; ++i) { | 346 for (i = 0; i < keys.length; ++i) { |
| 347 var key = keys[i]; | 347 var key = keys[i]; |
| 348 if (settings[key]) { | 348 if (settings[key]) { |
| 357 }; | 357 }; |
| 358 | 358 |
| 359 // returns URL and query string for Scaler | 359 // returns URL and query string for Scaler |
| 360 var getScalerString = function (settings) { | 360 var getScalerString = function (settings) { |
| 361 var keys = settings.scalerParamNames; | 361 var keys = settings.scalerParamNames; |
| 362 var queryString = makeParamString(settings, keys); | 362 var queryString = getParamString(settings, keys); |
| 363 var url = settings.scalerBaseUrl + '?' + queryString; | 363 var url = settings.scalerBaseUrl + '?' + queryString; |
| 364 return url; | 364 return url; |
| 365 }; | 365 }; |
| 366 | 366 |
| 367 // returns maximum size for scaler img in fullscreen mode | 367 // returns maximum size for scaler img in fullscreen mode |
| 412 data.img = $img; | 412 data.img = $img; |
| 413 $img.load(scalerImgLoadedFn(data)); | 413 $img.load(scalerImgLoadedFn(data)); |
| 414 }; | 414 }; |
| 415 | 415 |
| 416 // creates HTML structure for buttons in elem | 416 // creates HTML structure for buttons in elem |
| 417 var setupButtons = function ($elem, settings, actionGroup) { | 417 var setupButtons = function (data, actionGroup) { |
| 418 var $elem = data.target; | |
| 419 var settings = data.settings; | |
| 418 if (settings.interactionMode === 'fullscreen') { | 420 if (settings.interactionMode === 'fullscreen') { |
| 419 // fullscreen -- create new | 421 // fullscreen -- create new |
| 420 var $buttonsDiv = $('<div class="buttons"></div>'); | 422 var $buttonsDiv = $('<div class="buttons"></div>'); |
| 421 $elem.append($buttonsDiv); | 423 $elem.append($buttonsDiv); |
| 422 var actionNames = settings[actionGroup]; | 424 var actionNames = settings[actionGroup]; |
| 457 } | 459 } |
| 458 return $buttonsDiv; | 460 return $buttonsDiv; |
| 459 }; | 461 }; |
| 460 | 462 |
| 461 // creates HTML structure for the bird's eye view in elem | 463 // creates HTML structure for the bird's eye view in elem |
| 462 var setupBirdviewDiv = function ($elem, settings) { | 464 var setupBirdviewDiv = function (data) { |
| 465 var $elem = data.target; | |
| 466 var settings = data.settings; | |
| 463 // use only the relevant parameters | 467 // use only the relevant parameters |
| 464 var keys = ['fn','pn','dw','dh']; | 468 var keys = ['fn','pn','dw','dh']; |
| 465 var birdDimensions = { | 469 var birdDimensions = { |
| 466 'dw' : settings.birdMaxX, | 470 'dw' : settings.birdMaxX, |
| 467 'dh' : settings.birdMaxY | 471 'dh' : settings.birdMaxY |
| 468 }; | 472 }; |
| 469 var birdSettings = $.extend({}, settings, birdDimensions); | 473 var birdSettings = $.extend({}, settings, birdDimensions); |
| 470 var birdUrl = settings.scalerBaseUrl + '?' + makeParamString(birdSettings, keys); | 474 var birdUrl = settings.scalerBaseUrl + '?' + getParamString(birdSettings, keys); |
| 471 // the bird's eye div | 475 // the bird's eye div |
| 472 var $birdviewDiv = $('<div class="birdview" style="display:none"/>'); | 476 var $birdviewDiv = $('<div class="birdview" style="display:none"/>'); |
| 473 // the detail indicator frame | 477 // the detail indicator frame |
| 474 var $birdzoomDiv = $('<div class="birdzoom"/>'); | 478 var $birdzoomDiv = $('<div class="birdzoom"/>'); |
| 475 // the small image | 479 // the small image |
| 479 $birdviewDiv.append($birdImg); | 483 $birdviewDiv.append($birdImg); |
| 480 $birdImg.attr('src', birdUrl); | 484 $birdImg.attr('src', birdUrl); |
| 481 }; | 485 }; |
| 482 | 486 |
| 483 // creates HTML structure for the about view in elem | 487 // creates HTML structure for the about view in elem |
| 484 var setupAboutDiv = function ($elem, settings) { | 488 var setupAboutDiv = function (data) { |
| 489 var $elem = data.target; | |
| 490 var settings = data.settings; | |
| 485 var $aboutDiv = $('<div class="about" style="display:none"/>'); | 491 var $aboutDiv = $('<div class="about" style="display:none"/>'); |
| 486 var $header = $('<p>Digilib Graphic Viewer</p>'); | 492 var $header = $('<p>Digilib Graphic Viewer</p>'); |
| 487 var $link = $('<a/>'); | 493 var $link = $('<a/>'); |
| 488 var $logo = $('<img class="logo" title="digilib"/>'); | 494 var $logo = $('<img class="logo" title="digilib"/>'); |
| 489 var $content = $('<p/>'); | 495 var $content = $('<p/>'); |
