nanoGALLERY jQuery plugin - Store Store additional images info with Picasa/Google+image's info with Picasa/Google+

Helpers: fnProcessData and fnViewerInfo

by Christophe Brisbois

HTML

<link rel="stylesheet" href="http://nanogallery.brisbois.fr/css/nanogallery.css">
<script src="http://nanogallery.brisbois.fr/jquery.nanogallery.js"></script>
<h2>nanoGALLERY - helpers fnProcessData and fnViewerInfo</h2>

<div id="nanoGallery"></div>

CSS

body {
    background:#333;
    color:#eee;
}

JavaScript

function fnDemopProcessData(item, kind, sourceData) {
       if (kind == 'picasa' && item.kind == 'image') {
           item.customData['imgOriginalWidth'] = sourceData.gphoto$width.$t;
           item.customData['imgOriginalHeight'] = sourceData.gphoto$height.$t;
           var ex = {
               model: 'na',
               iso: 'na'
           }
           if (typeof sourceData.exif$tags !== 'undefined') {
               if (typeof sourceData.exif$tags.exif$model !== "undefined" 
                           && typeof sourceData.exif$tags.exif$model.$t !== 'undefined') {
                   ex.model = sourceData.exif$tags.exif$model.$t;
               }
           }
           item.customData['exif'] = ex;
       }
   }

   function fnDemoViewerInfo(item, data) {
       var s = 'camera: ' + item.customData.exif.model 
           + ' / width: ' + item.customData.imgOriginalWidth 
           + ' / height: ' + item.customData.imgOriginalHeight;
       alert(s);
   }

   $(document).ready(function () {
       jQuery("#nanoGallery").nanoGallery({
           kind: 'picasa',
           userID: '[email protected]',
           album:'5856259539659194001',
           thumbnailHoverEffect: 'borderLighter',
           fnProcessData: fnDemopProcessData,
           fnViewerInfo: fnDemoViewerInfo
       });
   });