/**
* Picasa Webalbum Integration jQuery plugin
* This library was inspired aon pwa by Dieter Raber
* @name jquery.pwi.js
* @author Jeroen Diderik - http://www.jdee.nl/
* @author Johan Borkhuis - http://www.borkhuis.com/
* @revision 2.0.0 Beta
* @date December 18, 2011
* @copyright (c) 2010-2011 Jeroen Diderik(www.jdee.nl)
* @license Creative Commons Attribution-Share Alike 3.0 Netherlands License - http://creativecommons.org/licenses/by-sa/3.0/nl/
* @Visit http://pwi.googlecode.com/ for more informations, discussions etc about this library
*/
function formatPhotoTitleColorBox(){var a=this.title;if(this.parentNode.childNodes&&this.parentNode.childNodes.length>1){var b=$(".captiontext",this.parentNode);if(b.length>0){a=b[0].innerHTML}var c=$(".downloadlink",this.parentNode);if(c.length>0){return a+" "+"Download".link(c[0].href)}}return a}function mapOverviewCallback(){var a={zoom:1,center:new google.maps.LatLng(0,0),mapTypeId:google.maps.MapTypeId.HYBRID};var b=new google.maps.Map(document.getElementById("map_canvas"),a);var c=new google.maps.LatLngBounds;var d=new Array;for(i=0;i<$.fn.pwi.additionalMapsSettings.length;i++){var e=$.fn.pwi.additionalMapsSettings[i];var f=e.georss$where.gml$Point.gml$pos.$t.split(" ");var g=parseFloat(f[0]);var h=parseFloat(f[1]);for(j=i+1;j<$.fn.pwi.additionalMapsSettings.length;j++){var k=$.fn.pwi.additionalMapsSettings[j].georss$where.gml$Point.gml$pos.$t.split(" ");if(Math.abs(g-parseFloat(k[0]))<1e-4&&Math.abs(h-parseFloat(k[1]))<1e-4){g+=1e-4;h+=1e-4}}var l={};l.latitude=g;l.longitude=h;l.img=e.media$group.media$thumbnail[0].url;l.summary=e.summary.$t.replace(/\n/g,"
\n");d.push(l)}$.each(d,function(a,d){var e=new google.maps.LatLng(d.latitude,d.longitude);var f=new google.maps.Marker({position:e,map:b});var g="

"+d.summary+"
";var h=new google.maps.InfoWindow({content:g});google.maps.event.addListener(f,"click",function(){h.open(b,f)});c.extend(e)});b.fitBounds(c)}function formatPhotoTitleFancyBox(){var a=this.element.title;if(this.element.parentNode.childNodes&&this.element.parentNode.childNodes.length>1){var b=$(".captiontext",this.element.parentNode);if(b.length>0){a=b[0].innerHTML}var c=$(".downloadlink",this.element.parentNode);if(c.length>0){var d='Download';a=a+" "+d}}this.title=a}(function(a){var b,c={};a.fn.pwi=function(c){function w(b,c){if(b){if(e.loadingImage.length>0){a(e.loadingImage).show()}document.body.style.cursor="wait";if(a.blockUI){d.block(e.blockUIConfig)}}else{if(e.loadingImage.length>0){a(e.loadingImage).hide()}document.body.style.cursor="default";if(a.blockUI){d.unblock()}d.html(c)}}function v(){w(true,"");var b=f.picasaUrl+e.username+(e.album!==""?"/album/"+e.album:"")+"?kind=photo&max-results="+e.maxResults+"&alt=json&q="+(e.authKey!==""?"&authkey="+e.authKey:"")+(e.keyword!==""?"&tag="+e.keyword:"")+"&imgmax=d&thumbsize="+e.thumbSize+(e.thumbCrop?"c":"u")+","+t(e.photoSize);a.getJSON(b,"callback=?",p);return d}function u(){if(e.photostore[e.album]){o(e.photostore[e.album])}else{var b=f.picasaUrl+e.username+(e.album!==""?"/album/"+e.album:"")+"?kind=photo&alt=json"+(e.authKey!==""?"&authkey="+e.authKey:"")+(e.keyword!==""?"&tag="+e.keyword:"")+"&imgmax=d&thumbsize="+e.thumbSize+(e.thumbCrop?"c":"u")+","+t(e.photoSize);w(true,"");a.getJSON(b,"callback=?",o)}return d}function t(b){var c=[94,110,128,200,220,288,320,400,512,576,640,720,800,912,1024,1152,1280,1440,1600];if(e.photoSize==="auto"){var d=a(window).height();var f=a(window).width();var g=d>f?f:d;for(var h=1;h"),d=b.feed?b.feed.entry.length:0,g=0;var h=e.username.replace(/[@\.]/g,"_");k(b.feed.entry,e.sortPhotos);while(g1){var d=a(".captiontext",b.parentNode);if(d.length>0){c=d[0].innerHTML}var e=a(".downloadlink",b.parentNode);if(e.length>0){var f='Download';c=c+" "+f}}return[b.href,c]})}w(false,c);l("div.pwi_photo")}function o(b){var c,d,g="",h=b.feed.openSearch$totalResults.$t,j="",n="",o=b.feed.gphoto$location===undefined?"":b.feed.gphoto$location.$t,p,q=i(b.feed.gphoto$timestamp===undefined?"":b.feed.gphoto$timestamp.$t),r=h=="1"?false:true;var t=e.username.replace(/[@\.]/g,"_");if(b.feed.subtitle===undefined){p=""}else{var v=b.feed.subtitle.$t.match(/\[keywords\s*:\s*.*\s*\](.*)/);if(v){p=v[1]}else{p=b.feed.subtitle.$t}}j=b.feed.title==="undefined"||e.albumTitle.length>0?e.albumTitle:b.feed.title.$t;c=a("");if(e.mode!="album"&&e.mode!="keyword"){g=a(""+e.labels.albums+"
").bind("click.pwi",function(a){a.stopPropagation();s();return false});c.append(g)}if(e.showAlbumDescription){d=a("");d.append(""+j+"
");d.append(""+h+" "+(r?e.labels.photos:e.labels.photo)+(e.showAlbumdate?", "+q:"")+(e.showAlbumLocation&&o?", "+o:"")+"
");d.append(""+p+"
");c.append(d)}if(e.popupPlugin!=="slimbox"&&e.showPhotoLocation&&typeof google!="undefined"){var x=a.grep(b.feed.entry,function(a,b){if(a.georss$where&&a.georss$where.gml$Point&&a.georss$where.gml$Point.gml$pos){return true}else{return false}});var y=a("");var z=a(""+e.labels.showMap+"");if(a.browser.msie&&parseFloat(a.browser.version)<8){z[0].href="#map_canvas"}y.append(z);c.append(y);c.append(f.clearDiv);var A=a("");var B=a(window).height()*.75;var C=a(window).width()*.75;A.append("");c.append(A);a.fn.pwi.additionalMapsSettings=x}if(h>e.maxResults){$pageCount=h/e.maxResults;var D=a("").text(e.labels.prev),E=a("").text(e.labels.next);n=a("");if(e.page>1){D.addClass("link").bind("click.pwi",function(a){a.stopPropagation();e.page=parseInt(e.page,10)-1;u();return false})}n.append(D);for(var F=1;F<$pageCount+1;F++){if(F==e.page){g=" "}else{g=a("").bind("click.pwi",F,function(a){a.stopPropagation();e.page=a.data;u();return false})}n.append(g)}if(e.page<$pageCount){E.addClass("link").bind("click.pwi",function(a){a.stopPropagation();e.page=parseInt(e.page,10)+1;u();return false})}n.append(E);n.append(f.clearDiv)}if(n.length>0&&(e.showPager==="both"||e.showPager==="top")){c.append(n)}k(b.feed.entry,e.sortPhotos);var G=(e.page-1)*e.maxResults;var H=e.maxResults*e.page;for(var I=0;I=G&&I0&&(e.showPager==="both"||e.showPager==="bottom")){c.append(n.clone(true))}if(e.showPermaLink){c.append(f.clearDiv);var K=a("").text(e.labels.showPermaLink).bind("click.pwi",F,function(b){b.stopPropagation();a("#permalinkbox").show();a("#permalinkenable").hide();return false});var L=document.URL.split("?",2);var M=L[0]+"?pwi_album_selected="+b.feed.gphoto$name.$t+"&pwi_albumpage="+e.page;c.append(K);var N=a("");var O=a("");var P=a("").val(M);O.append(P);N.append(O);c.append(N)}e.photostore[e.album]=b;var Q=a(".pwi_photo",c).css(e.thumbCss);if(e.popupPlugin==="fancybox"||e.popupPlugin==="colorbox"){e.popupExt(Q.find("a[rel='lb-"+t+"']"));e.popupExt(Q.find("a[rel='yt-"+t+"']"),"yt");e.popupExt(Q.find("a[rel='map-"+t+"']"),"map");var Q=a(".pwi_overviewmap",c).css(e.thumbCss);e.popupExt(Q.find("a[rel='map_overview-"+t+"']"),"map_overview")}else if(e.popupPlugin==="slimbox"){Q.find("a[rel='lb-"+t+"']").slimbox(e.slimbox_config,function(b){var c=b.title;if(b.parentNode.childNodes&&b.parentNode.childNodes.length>1){var d=a(".captiontext",b.parentNode);if(d.length>0){c=d[0].innerHTML}var e=a(".downloadlink",b.parentNode);if(e.length>0){var f='Download';c=c+" "+f}}return[b.href,c]})}c.append(f.clearDiv);w(false,c);l("div.pwi_photo")}function n(b){var c=a(""),d=0;var g,h;if(navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)/i)==null){g=new Date(e.albumStartDateTime);if(isNaN(g)){g=new Date(e.albumStartDateTime.replace(/-/g,"/"))}h=new Date(e.albumEndDateTime);if(isNaN(h)){h=new Date(e.albumEndDateTime.replace(/-/g,"/"))}}else{g=new Date(e.albumStartDateTime.replace(/-/g,"/"));h=new Date(e.albumEndDateTime.replace(/-/g,"/"))}k(b.feed.entry,e.sortAlbums);var j=0;var m=a.grep(b.feed.entry,function(b,c){if(c>=e.albumMaxResults)return false;var d=new Date(Number(b.gphoto$timestamp.$t));if((a.inArray(b.gphoto$name.$t,e.albums)>-1||e.albums.length===0)&&a.inArray(b.gphoto$name.$t,e.removeAlbums)==-1&&(b.gphoto$albumType===undefined||a.inArray(b.gphoto$albumType.$t,e.removeAlbumTypes)==-1)&&(e.albumStartDateTime==""||d>=g)&&(e.albumEndDateTime==""||d<=h)){var f=true;if(e.albumKeywords.length>0){f=false;var i=b.summary.$t.match(/\[keywords\s*:\s*(.*)\s*\]/);if(i){var k=new Array;var l=i[1].split(/,/);for(var m in l){var n=l[m].match(/\s*['"](.*)['"]\s*/);if(n){k.push(n[1])}}if(k.length>0){f=true;for(var m in e.albumKeywords){if(a.inArray(e.albumKeywords[m],k)<0){f=false;break}}}}}if(f==false)return false;j++;if(j>e.albumsPerPage*e.albumPage||j<=e.albumsPerPage*(e.albumPage-1))return false;else return true}return false});if(m.length==0){c=a("");c.append(""+e.labels.noalbums+"
");w(false,c);return}a.each(m,function(b,d){var f=a("");f.bind("click.pwi",d,function(a){a.stopPropagation();e.page=1;e.album=a.data.gphoto$name.$t;if(typeof e.onclickAlbumThumb==="function"){e.onclickAlbumThumb(a)}else{u()}return false});if(e.showAlbumThumbs){var g=d.media$group.media$thumbnail[0];f.append("
")}if(e.showAlbumTitles){var h=a("");h.append((d.title.$t.length>e.showAlbumTitlesLength?d.title.$t.substring(0,e.showCaptionLength):d.title.$t)+"
"+(e.showAlbumdate?i(d.gphoto$timestamp.$t):"")+(e.showAlbumPhotoCount?" "+d.gphoto$numphotos.$t+" "+(d.gphoto$numphotos.$t=="1"?e.labels.photo:e.labels.photos):""));f.append(h)}c.append(f)});c.append(f.clearDiv);if(j>e.albumsPerPage){var o=j/e.albumsPerPage;var p=a("").text(e.labels.prev),q=a("").text(e.labels.next);$navRow=a("");if(e.albumPage>1){p.addClass("link").bind("click.pwi",function(a){a.stopPropagation();e.albumPage=parseInt(e.albumPage,10)-1;n(b);return false})}$navRow.append(p);for(var r=1;r