WP Photo Album Plus - Version 7.1.05.006

Version Description

= 7.1.05 =

  • This version addresses various security issues.
  • This version addresses various bug fixes.

= 7.1.04 =

  • This version addresses various bug fixes.

= 7.1.03 =

  • This version addresses various security issues.
  • This version addresses various bug fixes.

= 7.1.02 =

  • This version addresses various security issues.
  • This version addresses various bug fixes and feature requests.

= 7.1.01 =

  • This version addresses various bug fixes and feature requests.

= 7.1.00 =

  • This version addresses various bug fixes and feature requests.
  • The Photo Album -> Upload Photos and Import Photos admin pages have been substantially improved. Read the changelog for details.

= 7.0.11 =

  • This version addresses various bug fixes and feature requests.

= 7.0.11 =

  • This version addresses various bug fixes

= 7.0.10 =

  • This version addresses various bug fixes

= 7.0.09 =

  • This version addresses various security issues.
  • This version addresses various bug fixes and feature requests.

= 7.0.08 =

  • This version addresses various security issues.
  • This version addresses various bug fixes

= 7.0.07 =

  • This version addresses various security issues.
  • This version addresses various bug fixes

= 7.0.06 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.05 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 7.0.04 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.03 =

  • This version addresses various minor bug fixes and feature requests.

= 7.0.02 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.01 =

  • This version addresses various minor bug fixes and feature requests.

= 7.0.00 =

  • Shortcode generators for Gutenberg added.
  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.
  • To prevent spamming and give the users the opportunity to decide when they want us to email them, the mailing system has been revised. Configure Table IX-M to enable various mailing lists, and use the WPPA+ Notify widget for full user flexibility.

= 6.9.21 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 6.9.20 =

  • This version addresses various bug fixes

= 6.9.19 =

  • This version addresses various minor bug fixes

= 6.9.18 =

  • This version addresses various minor bug fixes

= 6.9.17 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.16 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.15 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.14 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.13 =

  • Security release.

= 6.9.12 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.11 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.10 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.09 =

  • Panorama support phase III.

= 6.9.08 =

  • This version addresses various minor bug fixes and feature requests.
  • Panorama support phase II.

= 6.9.07 =

  • This version addresses various minor bug fixes and feature requests.
  • Panorama support phase I.

= 6.9.06 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.05 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.04 =

  • This version addresses various minor bug fixes and feature requests.
  • Local CDN functionality has been added.

= 6.9.03 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.02 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.01 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.00 =

  • This version includes the code for the privacy policy requirements.

= 6.8.09

  • This version addresses various bug fixes and code edits.

= 6.8.08 =

  • This version addresses various minor bug fixes and feature requests.
  • This version offers substantial performance improvements when the box in Table IV-A13: Defer Javascript is ticked. This setting is now recommended and set ticked as the default.
  • For more info on performance improvements and compatibility with optimizers: see the changelog.txt

= 6.8.07 =

  • This version addresses various minor bug fixes and enhancements, and a new widget: Statistics.

= 6.8.06 =

  • This version addresses various minor bug fixes and improved cache handling.

= 6.8.05 =

  • This version addresses various minor bug fixes and feture requests.

= 6.8.04 =

  • This version addresses various display issues and a few fixes of bugs that seldom affected the plugins behaviour.
Download this release

Release Info

Developer opajaap
Plugin Icon wp plugin WP Photo Album Plus
Version 7.1.05.006
Comparing to
See all releases

Code changes from version 7.1.04.002 to 7.1.05.006

changelog.txt CHANGED
@@ -1,5 +1,14 @@
1
  WP Photo Album Plus Changelog
2
 
 
 
 
 
 
 
 
 
 
3
  = 7.1.04 =
4
 
5
  * If a video has a posterimage and corresponding thumbnail, the thumbnail image will now be used as poster image for the album cover image.
1
  WP Photo Album Plus Changelog
2
 
3
+ = 7.1.05 =
4
+
5
+ * Various security fixes.
6
+ * Additinal lazy load process during resize handler.
7
+ * Fixed a few 'undefined var' warnings.
8
+ * Comment request mderation emails were not sent when comment notify emails was disabled. Fixed.
9
+ * Unused depot folders will now automatically be deleted.
10
+ * User depot dirs will now be created the moment the user opens the import admin page for the first time.
11
+
12
  = 7.1.04 =
13
 
14
  * If a video has a posterimage and corresponding thumbnail, the thumbnail image will now be used as poster image for the album cover image.
js/wppa.js CHANGED
@@ -2,7 +2,7 @@
2
  //
3
  // conatins common vars and functions
4
  //
5
- var wppaJsVersion = '7.1.02';
6
 
7
  // Important notice:
8
  // All external vars that may be given a value in wppa-non-admin.php must be declared here and not in other front-end js files!!
@@ -346,6 +346,9 @@ function wppaDoAllAutocols(i) {
346
  }
347
  }
348
 
 
 
 
349
  // Do retries if configured
350
  if ( i < wppaExtendedResizeCount ) {
351
  setTimeout(function(){wppaDoAllAutocols(i)}, wppaExtendedResizeDelay);
2
  //
3
  // conatins common vars and functions
4
  //
5
+ var wppaJsVersion = '7.1.05';
6
 
7
  // Important notice:
8
  // All external vars that may be given a value in wppa-non-admin.php must be declared here and not in other front-end js files!!
346
  }
347
  }
348
 
349
+ // Do lazy, just to be sure, for Ale
350
+ wppaMakeLazyVisible();
351
+
352
  // Do retries if configured
353
  if ( i < wppaExtendedResizeCount ) {
354
  setTimeout(function(){wppaDoAllAutocols(i)}, wppaExtendedResizeDelay);
js/wppa.min.js CHANGED
@@ -1 +1 @@
1
- var wppaJsVersion="7.1.02",wppaVersion="0",wppaIsIe=!1,wppaUseSvg=!0,wppaDebug,wppaFullValign=[],wppaFullHalign=[],wppaFullFrameDelta=[],wppaAnimationSpeed,wppaImageDirectory,wppaThumbnailAreaDelta;if(!wppaAutoColumnWidth)var wppaAutoColumnWidth=[];if(!wppaAutoColumnFrac)var wppaAutoColumnFrac=[];var wppaSlideShowTimeOut=2500,wppaFadeInAfterFadeOut=!1,wppaTextFrameDelta=0,wppaBoxDelta=0,wppaPreambule=[],wppaHideWhenEmpty=!1,wppaThumbnailPitch=[],wppaFilmStripLength=[],wppaFilmStripMargin=[],wppaFilmStripAreaDelta=[],wppaFilmShowGlue=!1,wppaIsMini=[],wppaPortraitOnly=[],wppaSlideShow,wppaPhoto,wppaOf,wppaNextPhoto,wppaPreviousPhoto,wppaNextP,wppaPrevP,wppaAvgRating,wppaMyRating,wppaAvgRat,wppaMyRat,wppaDislikeMsg,wppaMiniTreshold=300,wppaStart="Start",wppaStop="Stop",wppaPleaseName,wppaPleaseEmail,wppaPleaseComment,wppaRatingOnce=!0,wppaBGcolorNumbar="transparent",wppaBcolorNumbar="transparent",wppaBGcolorNumbarActive="transparent",wppaBcolorNumbarActive="transparent",wppaFontFamilyNumbar="",wppaFontSizeNumbar="",wppaFontColorNumbar="",wppaFontWeightNumbar="",wppaFontFamilyNumbarActive="",wppaFontSizeNumbarActive="",wppaFontColorNumbarActive="",wppaFontWeightNumbarActive="",wppaNumbarMax="10",wppaAjaxUrl="",wppaLang="",wppaNextOnCallback=!1,wppaStarOpacity=.2,wppaLightBox=[],wppaEmailRequired="required",wppaSlideBorderWidth=0,wppaSlideInitRunning=[],wppaAnimationType="fadeover",wppaSlidePause=[],wppaSlideBlank=[],wppaRatingMax=5,wppaRatingDisplayType="graphic",wppaRatingPrec=2,wppaFilmPageSize=[],wppaAspectRatio=[],wppaFullSize=[],wppaStretch=!1,wppaThumbSpaceAuto=!1,wppaMinThumbSpace=4,wppaMagnifierCursor="",wppaArtMonkyLink="none",wppaAutoOpenComments=!1,wppaUpdateAddressLine=!1,wppaFilmThumbTitle="",wppaClickToView="",wppaUploadUrl="",wppaVoteForMe="",wppaVotedForMe="",wppaSlideSwipe=!0,wppaLightboxSingle=[],wppaMaxCoverWidth=300,wppaDownLoad="Download",wppaSiteUrl="",wppaWppaUrl="",wppaIncludeUrl="",wppaSlideToFullpopup=!1,wppaComAltSize=75,wppaBumpViewCount=!0,wppaBumpClickCount=!1,wppaFotomoto=!1,wppaArtMonkeyButton=!0,wppaShortQargs=!1,wppaOvlHires=!1,wppaMasonryCols=[],wppaVideoPlaying=[],wppaAudioPlaying=[],wppaSlideVideoStart=!1,wppaSlideAudioStart=!1,wppaAudioHeight=28,wppaHis=0,wppaStartHtml=[],wppaCanAjaxRender=!1,wppaCanPushState=!1,wppaAllowAjax=!0,wppaMaxOccur=0,wppaFirstOccur=0,wppaUsePhotoNamesInUrls=!1,wppaShareHideWhenRunning=!1,wppaCommentRequiredAfterVote=!0,wppaTopMoc=0;if(!wppaColWidth)var wppaColWidth=[];var wppaFotomotoHideWhenRunning=!1,wppaFotomotoMinWidth=400,wppaPhotoView=[],wppaBackgroundColorImage="",wppaPopupLinkType="",wppaPopupOnclick=[],wppaThumbTargetBlank=!1,wppaRel="rel",wppaEditPhotoWidth="960",wppaThemeStyles="",wppaStickyHeaderHeight=0,wppaRenderModal=!1,wppaModalBgColor="#ffffff",wppaBoxRadius=0,wppaModalQuitImg,wppaUploadEdit="none",wppaPageArg="",wppaSlideshowNavigationType="icons",wppaCoverImageResponsive=[],wppaSearchBoxSelItems=[],wppaSlideWrap=[],wppaHideRightClick=!1,wppaProcessing="Processing...",wppaDone="Done!",wppaUploadFailed="Upload failed",wppaServerError="Server error",wppaGeoZoom=10,wppaLazyLoad=!0,wppaAreaMaxFrac=1,wppaNiceScroll=!1,wppaIconSizeNormal="default",wppaIconSizeSlide=48,wppaIconSizeStars=24,wppaResponseSpeed=500,wppaExtendedResizeCount=0,wppaExtendedResizeDelay=200,_wppaId=[],_wppaAvg=[],_wppaDisc=[],_wppaMyr=[],_wppaVRU=[],_wppaLinkUrl=[],_wppaLinkTitle=[],_wppaLinkTarget=[],_wppaCommentHtml=[],_wppaIptcHtml=[],_wppaExifHtml=[],_wppaToTheSame=!1,_wppaSlides=[],_wppaNames=[],_wppaFullNames=[],_wppaDsc=[],_wppaOgDsc=[],_wppaCurIdx=[],_wppaNxtIdx=[],_wppaTimeOut=[],_wppaSSRuns=[],_wppaFg=[],_wppaTP=[],_wppaIsBusy=[],_wppaFirst=[],_wppaVoteInProgress=!1,_wppaTextDelay,_wppaUrl=[],_wppaSkipRated=[],_wppaLbTitle=[],_wppaStateCount=0,_wppaDidGoto=[],_wppaShareUrl=[],_wppaShareHtml=[],_wppaFilmNoMove=[],_wppaHiresUrl=[],_wppaIsVideo=[],_wppaVideoHtml=[],_wppaAudioHtml=[],_wppaVideoNatWidth=[],_wppaVideoNatHeight=[],_wppaWaitTexts=[],_wppaImageAlt=[],__wppaOverruleRun=!1,wppaOvlUrls,wppaOvlTitles,wppaOvlAlts,wppaOvlIdx=0,wppaOvlFirst=!0,wppaOvlKbHandler="",wppaOvlSizeHandler="",wppaOvlPadTop=5,wppaOvlIsSingle,wppaOvlRunning=!1,wppaOvlVideoHtmls,wppaOvlAudioHtmls,wppaOvlPdfHtmls,wppaOvlVideoNaturalWidths,wppaOvlVideoNaturalHeights,wppaOvlModeInitial="normal",wppaOvlVideoPlaying=!1,wppaOvlAudioPlaying=!1,wppaOvlShowLegenda=!0,wppaOvlShowStartStop=!0,wppaOvlRadius=0,wppaOvlBorderWidth=16,wppaOvlOpen=!1,wppaOvlTxtHeight=36,wppaOvlOpacity=.8,wppaOvlOnclickType="none",wppaOvlTheme="black",wppaOvlAnimSpeed=300,wppaOvlSlideSpeed=3e3,wppaVer4WindowWidth=800,wppaVer4WindowHeight=600,wppaOvlFontFamily="Helvetica",wppaOvlFontSize="10",wppaOvlFontColor="",wppaOvlFontWeight="bold",wppaOvlLineHeight="12",wppaOvlShowCounter=!0,wppaOvlIsVideo=!1,wppaShowLegenda="",wppaOvlFsPhotoId=0,wppaPhotoId=0,wppaOvlVideoStart=!1,wppaOvlAudioStart=!1,wppaLastIptc="",wppaLastExif="",wppaIsMobile=!1,wppaSvgFillcolor="gray",wppaSvgBgcolor="transparent",wppaSvgCornerStyle="light";function wppaDoInit(){_wppaTextDelay=wppaAnimationSpeed,wppaFadeInAfterFadeOut&&(_wppaTextDelay*=2),jQuery(".wppa-ajax-spin").stop().fadeOut(),jQuery(".wppa-ovl-spin").hide(),setTimeout(function(){for(var p=1;p<wppaTopMoc;)jQuery("#ubb-"+p+"-l")&&(wppaUbb(p,"l","hide"),wppaUbb(p,"r","hide")),p++},3e3),jQuery(window).on("DOMContentLoaded load resize orientationchange",wppaDoAllAutocols),jQuery(window).on("DOMContentLoaded load resize scroll wheel",wppaSizeArea),jQuery(window).on("DOMContentLoaded load resize scroll wheel",wppaMakeLazyVisible),jQuery(".wppa-divnicewrap").on("resize scroll wheel",wppaMakeLazyVisible),jQuery(window).trigger("resize"),wppaProtect()}function wppaSizeAutoDiv(){jQuery(".wppa-autodiv").each(function(p){var a=jQuery(window).height(),e=jQuery(this).attr("data-max-height");jQuery(this).css({maxHeight:a*e})})}function wppaDoAllAutocols(p){for("number"!=typeof p?p=0:p++,wppaConsoleLog("Doing wppaDoAllAutocols("+p+")","force"),mocc=1;mocc<=wppaTopMoc;mocc++)wppaAutoColumnWidth[mocc]&&_wppaDoAutocol(mocc,p);p<wppaExtendedResizeCount&&setTimeout(function(){wppaDoAllAutocols(p)},wppaExtendedResizeDelay)}function wppaProtect(){wppaHideRightClick&&(jQuery("img").bind("contextmenu",function(p){return!1}),jQuery("video").bind("contextmenu",function(p){return!1}))}function wppaUpdateLightboxes(){"function"==typeof wppaInitOverlay&&wppaInitOverlay(),"undefined"!=typeof myLightbox&&"function"==typeof myLightbox.updateImageList&&myLightbox.updateImageList(),jQuery().prettyPhoto&&jQuery("a[rel^='prettyPhoto']").prettyPhoto({deeplinking:!1})}function wppaStopVideo(p){var a,e,t=[];for(t[1]="wppa-overlay-img",t[2]="theimg0-"+p,t[3]="theimg1-"+p,e=0;e<3;)1==++e&&0!=p||(a=document.getElementById(t[e]))&&"function"==typeof a.pause&&(a.pause(),wppaConsoleLog("Video "+t[e]+" paused","force"))}function wppaStopAudio(p){if("number"==typeof p)jQuery("#audio-"+p).pause&&jQuery("#audio-"+p).pause();else{var a=jQuery("audio");if(0<a.length)for(var e=0;e<a.length;)"wppa"==jQuery(a[e]).attr("data-from")&&a[e].pause(),e++}}function wppaMakeFullsizeUrl(p){var a,e;p=(a=(p=p.replace("/thumbs/","/")).split("//"))[1]?(e=a[1].split("/"),a[0]+"//"):(e=a[0].split("/"),"");for(var t=0;t<e.length;){var o=e[t];"w"!=o.split("_")[0]&&(0!=t&&(p+="/"),p+=o),t++}return p}function wppaGetContainerWidth(p){var a=document.getElementById("wppa-container-"+p),e=0;if(!wppaAutoColumnWidth[p])return a.clientWidth;for(;0==e;)a=a.parentNode,e=jQuery(a).width();return parseInt(e*wppaAutoColumnFrac[p])}function _wppaDoAutocol(p,a){if(wppaConsoleLog("Enter auto. mocc = "+p+" retry = "+a,"force"),!wppaAutoColumnWidth[p])return!0;var e;e=wppaGetContainerWidth(p),wppaColWidth[p]=e,0==wppaResponseSpeed?jQuery(".wppa-container-"+p).css({width:e}):jQuery(".wppa-container-"+p).stop().animate({width:e},wppaResponseSpeed),wppaRenderModal&&(jQuery(".ui-dialog").css("width",e),jQuery(".ui-dialog").attr("height","auto")),wppaCoverImageResponsive[p]||(0==wppaResponseSpeed?(jQuery(".wppa-asym-text-frame-"+p).css({width:e-wppaTextFrameDelta}),jQuery(".wppa-cover-box-"+p).css({width:e})):(jQuery(".wppa-asym-text-frame-"+p).stop().animate({width:e-wppaTextFrameDelta},wppaResponseSpeed),jQuery(".wppa-cover-box-"+p).stop().animate({width:e},wppaResponseSpeed)));var t,o=jQuery(".wppa-cover-box-mcr-"+p);if(1<o.length){var r=parseInt((e+8)/(wppaMaxCoverWidth+8))+1,s=r-1;t=parseInt((e+8)/r-8);for(var i=0;i<o.length;){switch(i%r){case 0:jQuery(o[i]).css({marginLeft:"0px",clear:"both",float:"left"});break;case s:jQuery(o[i]).css({marginLeft:"8px",clear:"none",float:"right"});break;default:jQuery(o[i]).css({marginLeft:"8px",clear:"none",float:"left"})}i++}wppaCoverImageResponsive[p]||jQuery(".wppa-asym-text-frame-mcr-"+p).stop().animate({width:t-wppaTextFrameDelta},wppaResponseSpeed),jQuery(".wppa-cover-box-mcr-"+p).stop().animate({width:t},wppaResponseSpeed)}else if(wppaCoverImageResponsive[p]);else{jQuery(".wppa-asym-text-frame-mcr-"+p).stop().animate({width:e-wppaTextFrameDelta},wppaResponseSpeed);jQuery(".wppa-cover-box-mcr-"+p).css({marginLeft:"0px",float:"left"})}if(wppaThumbSpaceAuto){var n=parseInt(jQuery(".thumbnail-frame-"+p).css("width"));if(n){var w=wppaMinThumbSpace,l=e-wppaThumbnailAreaDelta-7,u=Math.max(1,parseInt(l/(n+w))),c=parseInt(.5+(l-u*n)/(u+1));jQuery(".thumbnail-frame-"+p).css({marginLeft:c})}}jQuery(".thumbnail-frame-comalt-"+p).css("width",e-wppaThumbnailAreaDelta),jQuery(".wppa-com-alt-"+p).css("width",e-wppaThumbnailAreaDelta-wppaComAltSize-16);for(var d,y=1,m=jQuery("#wppa-mas-h-"+y+"-"+p).attr("data-height-perc");m;)d=m*(e-wppaThumbnailAreaDelta)/100,jQuery("#wppa-mas-h-"+y+"-"+p).css("height",d),y++,m=jQuery("#wppa-mas-h-"+y+"-"+p).attr("data-height-perc");return wppaSetMasHorFrameWidthsForIeAndChrome(p),wppaFormatSlide(p),jQuery("#audio-slide-"+p).css("width",e-wppaBoxDelta-6),jQuery(".wppa-comment-textarea-"+p).css("width",.7*e),wppaFilmStripLength[p]=e-wppaFilmStripAreaDelta[p],jQuery("#filmwindow-"+p).css("width",wppaFilmStripLength[p]),_wppaAdjustFilmstrip(p),wppaIsMini[p]||void 0===_wppaSlides[p]||(wppaColWidth[p]<wppaMiniTreshold?(jQuery("#wppa-avg-rat-"+p).html(wppaAvgRat),jQuery("#wppa-my-rat-"+p).html(wppaMyRat),jQuery("#counter-"+p).html(_wppaCurIdx[p]+1+" / "+_wppaSlides[p].length)):(jQuery("#wppa-avg-rat-"+p).html(wppaAvgRating),jQuery("#wppa-my-rat-"+p).html(wppaMyRating),jQuery("#counter-"+p).html(wppaPhoto+" "+(_wppaCurIdx[p]+1)+" "+wppaOf+" "+_wppaSlides[p].length))),jQuery(".wppa-sphoto-"+p).css("width",e),jQuery(".wppa-simg-"+p).css("width",e-2*wppaSlideBorderWidth),jQuery(".wppa-simg-"+p).css("height",""),jQuery(".wppa-mphoto-"+p).css("width",e+10),jQuery(".wppa-mimg-"+p).css("width",e),jQuery(".wppa-mimg-"+p).css("height",""),jQuery(".smxpdf-"+p).css("height",.8*wppaWindowHeight()),0<wppaSearchBoxSelItems[p]&&(e/wppaSearchBoxSelItems[p]<125?jQuery(".wppa-searchsel-item-"+p).css("width","100%"):jQuery(".wppa-searchsel-item-"+p).css("width",100/wppaSearchBoxSelItems[p]+"%")),jQuery(".wppa-upload-album-"+p).css("maxWidth",.6*e),!0}function wppaSetMasHorFrameWidthsForIeAndChrome(p){for(var a=jQuery(".wppa-mas-h-"+p),e=wppaMinThumbSpace,t=0;t<a.length;t++){var o=wppaGetChildI(a[t]);if(o){if("IMG"==o.nodeName&&!o.complete)return void setTimeout("wppaSetMasHorFrameWidthsForIeAndChrome( "+p+" )",400);var r=o.naturalWidth/o.naturalHeight*o.height+e;jQuery(a[t]).css({width:r})}}}function wppaGetChildI(p){var a,e=p.childNodes;for(a=0;a<e.length;a++){var t=e[a];if(t.id&&"i-"==t.id.substr(0,2))return t;var o=wppaGetChildI(t);if(o)return o}return!1}jQuery(document).ready(function(){wppaDoInit()}),jQuery(document).ready(function(){jQuery(window).on("DOMContentLoaded load resize scroll",wppaSizeAutoDiv)}),jQuery(document).ready(function(p){if(wppaAllowAjax&&jQuery.ajax&&(wppaCanAjaxRender=!0),void 0!==history.pushState){for(var a=1;a<=wppaMaxOccur;)wppaStartHtml[a]=jQuery("#wppa-container-"+a).html(),a++;wppaCanPushState=!0}});var wppaFotomotoLoaded=!1,wppaFotomotoToolbarIds=[];function fotomoto_loaded(){wppaFotomotoLoaded=!0}function wppaFotomotoToolbar(p,a){if(!(wppaColWidth[p]>=wppaFotomotoMinWidth))return jQuery("#wppa-fotomoto-container-"+p).css("display","none"),void jQuery("#wppa-fotomoto-checkout-"+p).css("display","none");jQuery("#wppa-fotomoto-container-"+p).css("display","inline"),jQuery("#wppa-fotomoto-checkout-"+p).css("display","inline"),wppaFotomoto&&document.getElementById("wppa-fotomoto-container-"+p)&&(wppaFotomotoLoaded?(FOTOMOTO.API.checkinImage(a),wppaFotomotoToolbarIds[p]=FOTOMOTO.API.showToolbar("wppa-fotomoto-container-"+p,a)):(setTimeout("wppaFotomotoToolbar( "+p+',"'+a+'" )',200),wppaConsoleLog("Waiting for Fotomoto")))}function wppaFotomotoHide(p){jQuery("#wppa-fotomoto-container-"+p).css("display","none"),jQuery("#wppa-fotomoto-checkout-"+p).css("display","none")}function wppaStringContainsForbiddenChars(p){for(var a=["?","&","#","/",'"',"'"],e=0;e<a.length;){if(-1!=p.indexOf(a[e]))return!0;e++}return!1}function wppaPushStateSlide(p,a,e){if(!wppaIsMini[p]&&wppaCanPushState&&wppaUpdateAddressLine&&""!=e)try{history.pushState({page:wppaHis,occur:p,type:"slide",slide:a},"---",e),wppaConsoleLog("Slide history stack updated")}catch(p){wppaConsoleLog("Slide history stack update failed")}}function wppaRepairScriptTags(p){if(void 0===p)return"";for(;-1!=p.indexOf("[script");)p=p.replace("[script","<script");for(;-1!=p.indexOf("[/script");)p=p.replace("[/script","</script");return p}function wppaRepairBrTags(p){return void 0===p?"":p.replace("[br /]","<br />").replace("[a","<a").replace("&quot;",'"').replace('"]','">').replace("[/a]","</a>")}function wppaTrimAlt(p){return void 0===p?"":13<p.length?p.substr(0,10)+"...":p}window.onpopstate=function(p){var a=0;if(wppaCanPushState){if(p.state)switch(a=p.state.occur,p.state.type){case"html":jQuery("#wppa-container-"+a).html(p.state.html);break;case"slide":_wppaGoto(a,p.state.slide)}else if(wppaUpdateAddressLine){if(a=wppaFirstOccur,jQuery("#wppa-container-"+a).html(wppaStartHtml[a]),(wppaFirstOccur=0)==a){var e=document.location.href.split("&wppa-occur=");a=parseInt(e[1])}e=document.location.href.split("&wppa-photo=");var t=parseInt(e[1]);if(0<t){for(var o=0;o<_wppaId[a].length&&_wppaId[a][o]!=t;)o++;o<_wppaId[a].length&&_wppaGoto(a,o)}}document.getElementById("theslide0-"+a)&&_wppaStop(a)}"undefined"!=typeof wppaQRUpdate&&wppaQRUpdate(document.location.href)};var wppaFbInitBusy=!1;function wppaFbInit(){wppaFbInitBusy?wppaConsoleLog("Fb Init busy"):"undefined"!=typeof FB?(wppaFbInitBusy=!0,setTimeout("_wppaFbInit()",10)):(wppaConsoleLog("Fb wait"),setTimeout("wppaFbInit()",200))}function _wppaFbInit(){FB.init({status:!0,xfbml:!0}),wppaFbInitBusy=!1}function wppaInsertAtCursor(p,a){if(document.selection)p.focus(),sel=document.selection.createRange(),sel.text=a;else if(p.selectionStart||"0"==p.selectionStart){var e=p.selectionStart,t=p.selectionEnd;p.value=p.value.substring(0,e)+a+p.value.substring(t,p.value.length),p.selectionStart=e+a.length,p.selectionEnd=e+a.length}else p.value+=a}function wppaGeoInit(p,a,e){var t=new google.maps.LatLng(a,e),o={disableDefaultUI:!1,panControl:!1,zoomControl:!0,mapTypeControl:!0,scaleControl:!0,streetViewControl:!0,overviewMapControl:!0,zoom:wppaGeoZoom,center:t},r=new google.maps.Map(document.getElementById("map-canvas-"+p),o),s=new google.maps.Marker({position:t,map:r,title:""});google.maps.event.addListener(r,"center_changed",function(){window.setTimeout(function(){r.panTo(s.getPosition())},1e3)})}function wppaEncode(p){var a;if(void 0!==p){var e=(a=(a=String(p).replace(/#/g,"||HASH||")).replace(/&/g,"||AMP||")).split("+"),t=0;for(a="";t<e.length;)a+=e[t],++t<e.length&&(a+="||PLUS||");return a}}function wppaUrlToId(p){var a=p.split("/wppa/");return 1==a.length&&(a=p.split("/upload/")),1==a.length?0:a=(a=(a=(a=(a=(a=(a=a[1]).split("."))[0].replace("/","")).replace("/","")).replace("/","")).replace("/","")).replace("/","")}function wppaSuperSearchSelect(p,a){jQuery("#wppa-ss-albumopt-"+p).css("display","none"),jQuery("#wppa-ss-albumcat-"+p).css("display","none"),jQuery("#wppa-ss-albumname-"+p).css("display","none"),jQuery("#wppa-ss-albumtext-"+p).css("display","none"),jQuery("#wppa-ss-photoopt-"+p).css("display","none"),jQuery("#wppa-ss-photoname-"+p).css("display","none"),jQuery("#wppa-ss-photoowner-"+p).css("display","none"),jQuery("#wppa-ss-phototag-"+p).css("display","none"),jQuery("#wppa-ss-phototext-"+p).css("display","none"),jQuery("#wppa-ss-photoexif-"+p).css("display","none"),jQuery("#wppa-ss-photoiptc-"+p).css("display","none"),jQuery("#wppa-ss-exifopts-"+p).css("display","none"),jQuery("#wppa-ss-iptcopts-"+p).css("display","none"),jQuery("#wppa-ss-spinner-"+p).css("display","none"),jQuery("#wppa-ss-button-"+p).css("display","none");var e=jQuery("#wppa-ss-pa-"+p).val(),t="",o="",r="";switch(e){case"a":switch(jQuery("#wppa-ss-albumopt-"+p).css("display",""),t=jQuery("#wppa-ss-albumopt-"+p).val()){case"c":jQuery("#wppa-ss-albumcat-"+p).css("display","");var s=jQuery(".wppa-ss-albumcat-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"n":jQuery("#wppa-ss-albumname-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-albumname-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"t":jQuery("#wppa-ss-albumtext-"+p).css("display","");s=jQuery(".wppa-ss-albumtext-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","")}break;case"p":switch(jQuery("#wppa-ss-photoopt-"+p).css("display",""),t=jQuery("#wppa-ss-photoopt-"+p).val()){case"n":jQuery("#wppa-ss-photoname-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-photoname-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"o":jQuery("#wppa-ss-photoowner-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-photoowner-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"g":jQuery("#wppa-ss-phototag-"+p).css("display","");s=jQuery(".wppa-ss-phototag-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"t":jQuery("#wppa-ss-phototext-"+p).css("display","");var i;s=jQuery(".wppa-ss-phototext-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"i":jQuery("#wppa-ss-photoiptc-"+p).css("display",""),(o=jQuery("#wppa-ss-photoiptc-"+p).val())&&(2<o.length&&(o=o.replace("#","H")),""!=o&&(jQuery("#wppa-ss-iptcopts-"+p).css("display",""),wppaLastIptc!=o?(wppaAjaxGetSsIptcList(p,o,"wppa-ss-iptcopts-"+p),wppaLastIptc=o):null!=(r=jQuery("#wppa-ss-iptcopts-"+p).val())&&""!=r&&jQuery("#wppa-ss-button-"+p).css("display","")));break;case"e":jQuery("#wppa-ss-photoexif-"+p).css("display",""),(o=jQuery("#wppa-ss-photoexif-"+p).val())&&(2<o.length&&(o=o.replace("#","H")),""!=o&&(jQuery("#wppa-ss-exifopts-"+p).css("display",""),wppaLastExif!=o?(wppaAjaxGetSsExifList(p,o,"wppa-ss-exifopts-"+p),wppaLastExif=o):null!=(r=jQuery("#wppa-ss-exifopts-"+p).val())&&""!=r&&jQuery("#wppa-ss-button-"+p).css("display","")))}}if(a){var n=jQuery("#wppa-ss-pageurl-"+p).val();-1==n.indexOf("?")?n+="?":n+="&",n+="occur=1&wppa-supersearch="+e+","+t+","+o+","+r,document.location.href=n}}function wppaAjaxGetSsIptcList(t,p,o){jQuery.ajax({url:wppaAjaxUrl,data:"action=wppa&wppa-action=getssiptclist&tag="+p+"&moccur="+t,async:!0,type:"GET",timeout:1e4,beforeSend:function(p){jQuery("#wppa-ss-spinner-"+t).css("display","")},success:function(p,a,e){jQuery("#"+o).html(p),jQuery("#wppa-ss-iptcopts-"+t).css("display",""),wppaSuperSearchSelect(t),setTimeout('wppaSetIptcExifSize( ".wppa-iptclist-'+t+'", "#'+o+'" )',10)},error:function(p,a,e){wppaConsoleLog("wppaAjaxGetSsIptcList failed. Error = "+e+", status = "+a,"force")},complete:function(p,a,e){jQuery("#wppa-ss-spinner-"+t).css("display","none")}})}function wppaAjaxGetSsExifList(t,p,o){jQuery.ajax({url:wppaAjaxUrl,data:"action=wppa&wppa-action=getssexiflist&tag="+p+"&moccur="+t,async:!0,type:"GET",timeout:1e4,beforeSend:function(p){jQuery("#wppa-ss-spinner-"+t).css("display","")},success:function(p,a,e){jQuery("#"+o).html(p),jQuery("#wppa-ss-exifopts-"+t).css("display",""),wppaSuperSearchSelect(t),setTimeout('wppaSetIptcExifSize( ".wppa-exiflist-'+t+'", "#'+o+'" )',10)},error:function(p,a,e){wppaConsoleLog("wppaAjaxGetSsExifList failed. Error = "+e+", status = "+a,"force")},complete:function(p,a,e){jQuery("#wppa-ss-spinner-"+t).css("display","none")}})}function wppaSetIptcExifSize(p,a){var e=jQuery(p).length;6<e&&(e=6),e<2&&(e=2),jQuery(a).attr("size",e)}function wppaUpdateSearchRoot(p,a){for(var e=jQuery(".wppa-search-root"),t=0;t<e.length;)jQuery(e[t]).html(p),t++;for(e=jQuery(".wppa-rootbox"),t=0;t<e.length;)a?(jQuery(e[t]).prop("checked",!1),jQuery(e[t]).prop("disabled",!1)):(jQuery(e[t]).prop("checked",!0),jQuery(e[t]).prop("disabled",!0)),t++;for(e=jQuery(".wppa-search-root-id"),t=0;t<e.length;)jQuery(e[t]).val(a),t++}function wppaSubboxChange(p){jQuery(p).prop("checked")&&jQuery(".wppa-rootbox").each(function(p){jQuery(this).prop("checked",!0)})}function wppaClearSubsearch(){for(var p=jQuery(".wppa-display-searchstring"),a=0;a<p.length;)jQuery(p[a]).html(""),a++;for(p=jQuery(".wppa-search-sub-box"),a=0;a<p.length;)jQuery(p[a]).attr("disabled","disabled"),a++}function wppaEnableSubsearch(){for(var p=jQuery(".wppa-search-sub-box"),a=0;a<p.length;)jQuery(p[a]).removeAttr("disabled"),a++}function wppaDisplaySelectedFiles(p){for(var a=jQuery("#"+p),e=0,t="";e<a[0].files.length;)t+=a[0].files[e].name+" ",e++;jQuery("#"+p+"-display").val(t)}function wppaIsEmpty(p){return null==p||(void 0===p||(""==p||(0==p||(0==p||void 0))))}function wppaGetUploadOptions(yalb,mocc,where,onComplete){var options={beforeSend:function(){jQuery("#progress-"+yalb+"-"+mocc).show(),jQuery("#bar-"+yalb+"-"+mocc).width("0%"),jQuery("#message-"+yalb+"-"+mocc).html(""),jQuery("#percent-"+yalb+"-"+mocc).html("")},uploadProgress:function(p,a,e,t){jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#7F7"),jQuery("#bar-"+yalb+"-"+mocc).width(t+"%"),t<95?jQuery("#percent-"+yalb+"-"+mocc).html(t+"%"):jQuery("#percent-"+yalb+"-"+mocc).html(wppaProcessing)},success:function(){jQuery("#bar-"+yalb+"-"+mocc).width("100%"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaDone),jQuery(".wppa-upload-button").val(wppaUploadButtonText)},complete:function(response){-1!=response.responseText.indexOf(wppaUploadFailed)?(jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#F77"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaUploadFailed),jQuery("#message-"+yalb+"-"+mocc).html('<span style="font-size: 10px;" >'+response.responseText+"</span>")):(jQuery("#message-"+yalb+"-"+mocc).html('<span style="font-size: 10px;" >'+response.responseText+"</span>"),"thumb"!=where&&"cover"!=where||eval(onComplete))},error:function(){jQuery("#message-"+yalb+"-"+mocc).html('<span style="color: red;" >'+wppaServerError+"</span>"),jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#F77"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaUploadFailed)}};return options}wppaConsoleLog("wppa.js version "+wppaJsVersion+" loaded.","force");
1
+ var wppaJsVersion="7.1.05",wppaVersion="0",wppaIsIe=!1,wppaUseSvg=!0,wppaDebug,wppaFullValign=[],wppaFullHalign=[],wppaFullFrameDelta=[],wppaAnimationSpeed,wppaImageDirectory,wppaThumbnailAreaDelta;if(!wppaAutoColumnWidth)var wppaAutoColumnWidth=[];if(!wppaAutoColumnFrac)var wppaAutoColumnFrac=[];var wppaSlideShowTimeOut=2500,wppaFadeInAfterFadeOut=!1,wppaTextFrameDelta=0,wppaBoxDelta=0,wppaPreambule=[],wppaHideWhenEmpty=!1,wppaThumbnailPitch=[],wppaFilmStripLength=[],wppaFilmStripMargin=[],wppaFilmStripAreaDelta=[],wppaFilmShowGlue=!1,wppaIsMini=[],wppaPortraitOnly=[],wppaSlideShow,wppaPhoto,wppaOf,wppaNextPhoto,wppaPreviousPhoto,wppaNextP,wppaPrevP,wppaAvgRating,wppaMyRating,wppaAvgRat,wppaMyRat,wppaDislikeMsg,wppaMiniTreshold=300,wppaStart="Start",wppaStop="Stop",wppaPleaseName,wppaPleaseEmail,wppaPleaseComment,wppaRatingOnce=!0,wppaBGcolorNumbar="transparent",wppaBcolorNumbar="transparent",wppaBGcolorNumbarActive="transparent",wppaBcolorNumbarActive="transparent",wppaFontFamilyNumbar="",wppaFontSizeNumbar="",wppaFontColorNumbar="",wppaFontWeightNumbar="",wppaFontFamilyNumbarActive="",wppaFontSizeNumbarActive="",wppaFontColorNumbarActive="",wppaFontWeightNumbarActive="",wppaNumbarMax="10",wppaAjaxUrl="",wppaLang="",wppaNextOnCallback=!1,wppaStarOpacity=.2,wppaLightBox=[],wppaEmailRequired="required",wppaSlideBorderWidth=0,wppaSlideInitRunning=[],wppaAnimationType="fadeover",wppaSlidePause=[],wppaSlideBlank=[],wppaRatingMax=5,wppaRatingDisplayType="graphic",wppaRatingPrec=2,wppaFilmPageSize=[],wppaAspectRatio=[],wppaFullSize=[],wppaStretch=!1,wppaThumbSpaceAuto=!1,wppaMinThumbSpace=4,wppaMagnifierCursor="",wppaArtMonkyLink="none",wppaAutoOpenComments=!1,wppaUpdateAddressLine=!1,wppaFilmThumbTitle="",wppaClickToView="",wppaUploadUrl="",wppaVoteForMe="",wppaVotedForMe="",wppaSlideSwipe=!0,wppaLightboxSingle=[],wppaMaxCoverWidth=300,wppaDownLoad="Download",wppaSiteUrl="",wppaWppaUrl="",wppaIncludeUrl="",wppaSlideToFullpopup=!1,wppaComAltSize=75,wppaBumpViewCount=!0,wppaBumpClickCount=!1,wppaFotomoto=!1,wppaArtMonkeyButton=!0,wppaShortQargs=!1,wppaOvlHires=!1,wppaMasonryCols=[],wppaVideoPlaying=[],wppaAudioPlaying=[],wppaSlideVideoStart=!1,wppaSlideAudioStart=!1,wppaAudioHeight=28,wppaHis=0,wppaStartHtml=[],wppaCanAjaxRender=!1,wppaCanPushState=!1,wppaAllowAjax=!0,wppaMaxOccur=0,wppaFirstOccur=0,wppaUsePhotoNamesInUrls=!1,wppaShareHideWhenRunning=!1,wppaCommentRequiredAfterVote=!0,wppaTopMoc=0;if(!wppaColWidth)var wppaColWidth=[];var wppaFotomotoHideWhenRunning=!1,wppaFotomotoMinWidth=400,wppaPhotoView=[],wppaBackgroundColorImage="",wppaPopupLinkType="",wppaPopupOnclick=[],wppaThumbTargetBlank=!1,wppaRel="rel",wppaEditPhotoWidth="960",wppaThemeStyles="",wppaStickyHeaderHeight=0,wppaRenderModal=!1,wppaModalBgColor="#ffffff",wppaBoxRadius=0,wppaModalQuitImg,wppaUploadEdit="none",wppaPageArg="",wppaSlideshowNavigationType="icons",wppaCoverImageResponsive=[],wppaSearchBoxSelItems=[],wppaSlideWrap=[],wppaHideRightClick=!1,wppaProcessing="Processing...",wppaDone="Done!",wppaUploadFailed="Upload failed",wppaServerError="Server error",wppaGeoZoom=10,wppaLazyLoad=!0,wppaAreaMaxFrac=1,wppaNiceScroll=!1,wppaIconSizeNormal="default",wppaIconSizeSlide=48,wppaIconSizeStars=24,wppaResponseSpeed=500,wppaExtendedResizeCount=0,wppaExtendedResizeDelay=200,_wppaId=[],_wppaAvg=[],_wppaDisc=[],_wppaMyr=[],_wppaVRU=[],_wppaLinkUrl=[],_wppaLinkTitle=[],_wppaLinkTarget=[],_wppaCommentHtml=[],_wppaIptcHtml=[],_wppaExifHtml=[],_wppaToTheSame=!1,_wppaSlides=[],_wppaNames=[],_wppaFullNames=[],_wppaDsc=[],_wppaOgDsc=[],_wppaCurIdx=[],_wppaNxtIdx=[],_wppaTimeOut=[],_wppaSSRuns=[],_wppaFg=[],_wppaTP=[],_wppaIsBusy=[],_wppaFirst=[],_wppaVoteInProgress=!1,_wppaTextDelay,_wppaUrl=[],_wppaSkipRated=[],_wppaLbTitle=[],_wppaStateCount=0,_wppaDidGoto=[],_wppaShareUrl=[],_wppaShareHtml=[],_wppaFilmNoMove=[],_wppaHiresUrl=[],_wppaIsVideo=[],_wppaVideoHtml=[],_wppaAudioHtml=[],_wppaVideoNatWidth=[],_wppaVideoNatHeight=[],_wppaWaitTexts=[],_wppaImageAlt=[],__wppaOverruleRun=!1,wppaOvlUrls,wppaOvlTitles,wppaOvlAlts,wppaOvlIdx=0,wppaOvlFirst=!0,wppaOvlKbHandler="",wppaOvlSizeHandler="",wppaOvlPadTop=5,wppaOvlIsSingle,wppaOvlRunning=!1,wppaOvlVideoHtmls,wppaOvlAudioHtmls,wppaOvlPdfHtmls,wppaOvlVideoNaturalWidths,wppaOvlVideoNaturalHeights,wppaOvlModeInitial="normal",wppaOvlVideoPlaying=!1,wppaOvlAudioPlaying=!1,wppaOvlShowLegenda=!0,wppaOvlShowStartStop=!0,wppaOvlRadius=0,wppaOvlBorderWidth=16,wppaOvlOpen=!1,wppaOvlTxtHeight=36,wppaOvlOpacity=.8,wppaOvlOnclickType="none",wppaOvlTheme="black",wppaOvlAnimSpeed=300,wppaOvlSlideSpeed=3e3,wppaVer4WindowWidth=800,wppaVer4WindowHeight=600,wppaOvlFontFamily="Helvetica",wppaOvlFontSize="10",wppaOvlFontColor="",wppaOvlFontWeight="bold",wppaOvlLineHeight="12",wppaOvlShowCounter=!0,wppaOvlIsVideo=!1,wppaShowLegenda="",wppaOvlFsPhotoId=0,wppaPhotoId=0,wppaOvlVideoStart=!1,wppaOvlAudioStart=!1,wppaLastIptc="",wppaLastExif="",wppaIsMobile=!1,wppaSvgFillcolor="gray",wppaSvgBgcolor="transparent",wppaSvgCornerStyle="light";function wppaDoInit(){_wppaTextDelay=wppaAnimationSpeed,wppaFadeInAfterFadeOut&&(_wppaTextDelay*=2),jQuery(".wppa-ajax-spin").stop().fadeOut(),jQuery(".wppa-ovl-spin").hide(),setTimeout(function(){for(var p=1;p<wppaTopMoc;)jQuery("#ubb-"+p+"-l")&&(wppaUbb(p,"l","hide"),wppaUbb(p,"r","hide")),p++},3e3),jQuery(window).on("DOMContentLoaded load resize orientationchange",wppaDoAllAutocols),jQuery(window).on("DOMContentLoaded load resize scroll wheel",wppaSizeArea),jQuery(window).on("DOMContentLoaded load resize scroll wheel",wppaMakeLazyVisible),jQuery(".wppa-divnicewrap").on("resize scroll wheel",wppaMakeLazyVisible),jQuery(window).trigger("resize"),wppaProtect()}function wppaSizeAutoDiv(){jQuery(".wppa-autodiv").each(function(p){var a=jQuery(window).height(),e=jQuery(this).attr("data-max-height");jQuery(this).css({maxHeight:a*e})})}function wppaDoAllAutocols(p){for("number"!=typeof p?p=0:p++,wppaConsoleLog("Doing wppaDoAllAutocols("+p+")","force"),mocc=1;mocc<=wppaTopMoc;mocc++)wppaAutoColumnWidth[mocc]&&_wppaDoAutocol(mocc,p);wppaMakeLazyVisible(),p<wppaExtendedResizeCount&&setTimeout(function(){wppaDoAllAutocols(p)},wppaExtendedResizeDelay)}function wppaProtect(){wppaHideRightClick&&(jQuery("img").bind("contextmenu",function(p){return!1}),jQuery("video").bind("contextmenu",function(p){return!1}))}function wppaUpdateLightboxes(){"function"==typeof wppaInitOverlay&&wppaInitOverlay(),"undefined"!=typeof myLightbox&&"function"==typeof myLightbox.updateImageList&&myLightbox.updateImageList(),jQuery().prettyPhoto&&jQuery("a[rel^='prettyPhoto']").prettyPhoto({deeplinking:!1})}function wppaStopVideo(p){var a,e,t=[];for(t[1]="wppa-overlay-img",t[2]="theimg0-"+p,t[3]="theimg1-"+p,e=0;e<3;)1==++e&&0!=p||(a=document.getElementById(t[e]))&&"function"==typeof a.pause&&(a.pause(),wppaConsoleLog("Video "+t[e]+" paused","force"))}function wppaStopAudio(p){if("number"==typeof p)jQuery("#audio-"+p).pause&&jQuery("#audio-"+p).pause();else{var a=jQuery("audio");if(0<a.length)for(var e=0;e<a.length;)"wppa"==jQuery(a[e]).attr("data-from")&&a[e].pause(),e++}}function wppaMakeFullsizeUrl(p){var a,e;p=(a=(p=p.replace("/thumbs/","/")).split("//"))[1]?(e=a[1].split("/"),a[0]+"//"):(e=a[0].split("/"),"");for(var t=0;t<e.length;){var o=e[t];"w"!=o.split("_")[0]&&(0!=t&&(p+="/"),p+=o),t++}return p}function wppaGetContainerWidth(p){var a=document.getElementById("wppa-container-"+p),e=0;if(!wppaAutoColumnWidth[p])return a.clientWidth;for(;0==e;)a=a.parentNode,e=jQuery(a).width();return parseInt(e*wppaAutoColumnFrac[p])}function _wppaDoAutocol(p,a){if(wppaConsoleLog("Enter auto. mocc = "+p+" retry = "+a,"force"),!wppaAutoColumnWidth[p])return!0;var e;e=wppaGetContainerWidth(p),wppaColWidth[p]=e,0==wppaResponseSpeed?jQuery(".wppa-container-"+p).css({width:e}):jQuery(".wppa-container-"+p).stop().animate({width:e},wppaResponseSpeed),wppaRenderModal&&(jQuery(".ui-dialog").css("width",e),jQuery(".ui-dialog").attr("height","auto")),wppaCoverImageResponsive[p]||(0==wppaResponseSpeed?(jQuery(".wppa-asym-text-frame-"+p).css({width:e-wppaTextFrameDelta}),jQuery(".wppa-cover-box-"+p).css({width:e})):(jQuery(".wppa-asym-text-frame-"+p).stop().animate({width:e-wppaTextFrameDelta},wppaResponseSpeed),jQuery(".wppa-cover-box-"+p).stop().animate({width:e},wppaResponseSpeed)));var t,o=jQuery(".wppa-cover-box-mcr-"+p);if(1<o.length){var r=parseInt((e+8)/(wppaMaxCoverWidth+8))+1,s=r-1;t=parseInt((e+8)/r-8);for(var i=0;i<o.length;){switch(i%r){case 0:jQuery(o[i]).css({marginLeft:"0px",clear:"both",float:"left"});break;case s:jQuery(o[i]).css({marginLeft:"8px",clear:"none",float:"right"});break;default:jQuery(o[i]).css({marginLeft:"8px",clear:"none",float:"left"})}i++}wppaCoverImageResponsive[p]||jQuery(".wppa-asym-text-frame-mcr-"+p).stop().animate({width:t-wppaTextFrameDelta},wppaResponseSpeed),jQuery(".wppa-cover-box-mcr-"+p).stop().animate({width:t},wppaResponseSpeed)}else if(wppaCoverImageResponsive[p]);else{jQuery(".wppa-asym-text-frame-mcr-"+p).stop().animate({width:e-wppaTextFrameDelta},wppaResponseSpeed);jQuery(".wppa-cover-box-mcr-"+p).css({marginLeft:"0px",float:"left"})}if(wppaThumbSpaceAuto){var n=parseInt(jQuery(".thumbnail-frame-"+p).css("width"));if(n){var w=wppaMinThumbSpace,l=e-wppaThumbnailAreaDelta-7,u=Math.max(1,parseInt(l/(n+w))),c=parseInt(.5+(l-u*n)/(u+1));jQuery(".thumbnail-frame-"+p).css({marginLeft:c})}}jQuery(".thumbnail-frame-comalt-"+p).css("width",e-wppaThumbnailAreaDelta),jQuery(".wppa-com-alt-"+p).css("width",e-wppaThumbnailAreaDelta-wppaComAltSize-16);for(var d,y=1,m=jQuery("#wppa-mas-h-"+y+"-"+p).attr("data-height-perc");m;)d=m*(e-wppaThumbnailAreaDelta)/100,jQuery("#wppa-mas-h-"+y+"-"+p).css("height",d),y++,m=jQuery("#wppa-mas-h-"+y+"-"+p).attr("data-height-perc");return wppaSetMasHorFrameWidthsForIeAndChrome(p),wppaFormatSlide(p),jQuery("#audio-slide-"+p).css("width",e-wppaBoxDelta-6),jQuery(".wppa-comment-textarea-"+p).css("width",.7*e),wppaFilmStripLength[p]=e-wppaFilmStripAreaDelta[p],jQuery("#filmwindow-"+p).css("width",wppaFilmStripLength[p]),_wppaAdjustFilmstrip(p),wppaIsMini[p]||void 0===_wppaSlides[p]||(wppaColWidth[p]<wppaMiniTreshold?(jQuery("#wppa-avg-rat-"+p).html(wppaAvgRat),jQuery("#wppa-my-rat-"+p).html(wppaMyRat),jQuery("#counter-"+p).html(_wppaCurIdx[p]+1+" / "+_wppaSlides[p].length)):(jQuery("#wppa-avg-rat-"+p).html(wppaAvgRating),jQuery("#wppa-my-rat-"+p).html(wppaMyRating),jQuery("#counter-"+p).html(wppaPhoto+" "+(_wppaCurIdx[p]+1)+" "+wppaOf+" "+_wppaSlides[p].length))),jQuery(".wppa-sphoto-"+p).css("width",e),jQuery(".wppa-simg-"+p).css("width",e-2*wppaSlideBorderWidth),jQuery(".wppa-simg-"+p).css("height",""),jQuery(".wppa-mphoto-"+p).css("width",e+10),jQuery(".wppa-mimg-"+p).css("width",e),jQuery(".wppa-mimg-"+p).css("height",""),jQuery(".smxpdf-"+p).css("height",.8*wppaWindowHeight()),0<wppaSearchBoxSelItems[p]&&(e/wppaSearchBoxSelItems[p]<125?jQuery(".wppa-searchsel-item-"+p).css("width","100%"):jQuery(".wppa-searchsel-item-"+p).css("width",100/wppaSearchBoxSelItems[p]+"%")),jQuery(".wppa-upload-album-"+p).css("maxWidth",.6*e),!0}function wppaSetMasHorFrameWidthsForIeAndChrome(p){for(var a=jQuery(".wppa-mas-h-"+p),e=wppaMinThumbSpace,t=0;t<a.length;t++){var o=wppaGetChildI(a[t]);if(o){if("IMG"==o.nodeName&&!o.complete)return void setTimeout("wppaSetMasHorFrameWidthsForIeAndChrome( "+p+" )",400);var r=o.naturalWidth/o.naturalHeight*o.height+e;jQuery(a[t]).css({width:r})}}}function wppaGetChildI(p){var a,e=p.childNodes;for(a=0;a<e.length;a++){var t=e[a];if(t.id&&"i-"==t.id.substr(0,2))return t;var o=wppaGetChildI(t);if(o)return o}return!1}jQuery(document).ready(function(){wppaDoInit()}),jQuery(document).ready(function(){jQuery(window).on("DOMContentLoaded load resize scroll",wppaSizeAutoDiv)}),jQuery(document).ready(function(p){if(wppaAllowAjax&&jQuery.ajax&&(wppaCanAjaxRender=!0),void 0!==history.pushState){for(var a=1;a<=wppaMaxOccur;)wppaStartHtml[a]=jQuery("#wppa-container-"+a).html(),a++;wppaCanPushState=!0}});var wppaFotomotoLoaded=!1,wppaFotomotoToolbarIds=[];function fotomoto_loaded(){wppaFotomotoLoaded=!0}function wppaFotomotoToolbar(p,a){if(!(wppaColWidth[p]>=wppaFotomotoMinWidth))return jQuery("#wppa-fotomoto-container-"+p).css("display","none"),void jQuery("#wppa-fotomoto-checkout-"+p).css("display","none");jQuery("#wppa-fotomoto-container-"+p).css("display","inline"),jQuery("#wppa-fotomoto-checkout-"+p).css("display","inline"),wppaFotomoto&&document.getElementById("wppa-fotomoto-container-"+p)&&(wppaFotomotoLoaded?(FOTOMOTO.API.checkinImage(a),wppaFotomotoToolbarIds[p]=FOTOMOTO.API.showToolbar("wppa-fotomoto-container-"+p,a)):(setTimeout("wppaFotomotoToolbar( "+p+',"'+a+'" )',200),wppaConsoleLog("Waiting for Fotomoto")))}function wppaFotomotoHide(p){jQuery("#wppa-fotomoto-container-"+p).css("display","none"),jQuery("#wppa-fotomoto-checkout-"+p).css("display","none")}function wppaStringContainsForbiddenChars(p){for(var a=["?","&","#","/",'"',"'"],e=0;e<a.length;){if(-1!=p.indexOf(a[e]))return!0;e++}return!1}function wppaPushStateSlide(p,a,e){if(!wppaIsMini[p]&&wppaCanPushState&&wppaUpdateAddressLine&&""!=e)try{history.pushState({page:wppaHis,occur:p,type:"slide",slide:a},"---",e),wppaConsoleLog("Slide history stack updated")}catch(p){wppaConsoleLog("Slide history stack update failed")}}function wppaRepairScriptTags(p){if(void 0===p)return"";for(;-1!=p.indexOf("[script");)p=p.replace("[script","<script");for(;-1!=p.indexOf("[/script");)p=p.replace("[/script","</script");return p}function wppaRepairBrTags(p){return void 0===p?"":p.replace("[br /]","<br />").replace("[a","<a").replace("&quot;",'"').replace('"]','">').replace("[/a]","</a>")}function wppaTrimAlt(p){return void 0===p?"":13<p.length?p.substr(0,10)+"...":p}window.onpopstate=function(p){var a=0;if(wppaCanPushState){if(p.state)switch(a=p.state.occur,p.state.type){case"html":jQuery("#wppa-container-"+a).html(p.state.html);break;case"slide":_wppaGoto(a,p.state.slide)}else if(wppaUpdateAddressLine){if(a=wppaFirstOccur,jQuery("#wppa-container-"+a).html(wppaStartHtml[a]),(wppaFirstOccur=0)==a){var e=document.location.href.split("&wppa-occur=");a=parseInt(e[1])}e=document.location.href.split("&wppa-photo=");var t=parseInt(e[1]);if(0<t){for(var o=0;o<_wppaId[a].length&&_wppaId[a][o]!=t;)o++;o<_wppaId[a].length&&_wppaGoto(a,o)}}document.getElementById("theslide0-"+a)&&_wppaStop(a)}"undefined"!=typeof wppaQRUpdate&&wppaQRUpdate(document.location.href)};var wppaFbInitBusy=!1;function wppaFbInit(){wppaFbInitBusy?wppaConsoleLog("Fb Init busy"):"undefined"!=typeof FB?(wppaFbInitBusy=!0,setTimeout("_wppaFbInit()",10)):(wppaConsoleLog("Fb wait"),setTimeout("wppaFbInit()",200))}function _wppaFbInit(){FB.init({status:!0,xfbml:!0}),wppaFbInitBusy=!1}function wppaInsertAtCursor(p,a){if(document.selection)p.focus(),sel=document.selection.createRange(),sel.text=a;else if(p.selectionStart||"0"==p.selectionStart){var e=p.selectionStart,t=p.selectionEnd;p.value=p.value.substring(0,e)+a+p.value.substring(t,p.value.length),p.selectionStart=e+a.length,p.selectionEnd=e+a.length}else p.value+=a}function wppaGeoInit(p,a,e){var t=new google.maps.LatLng(a,e),o={disableDefaultUI:!1,panControl:!1,zoomControl:!0,mapTypeControl:!0,scaleControl:!0,streetViewControl:!0,overviewMapControl:!0,zoom:wppaGeoZoom,center:t},r=new google.maps.Map(document.getElementById("map-canvas-"+p),o),s=new google.maps.Marker({position:t,map:r,title:""});google.maps.event.addListener(r,"center_changed",function(){window.setTimeout(function(){r.panTo(s.getPosition())},1e3)})}function wppaEncode(p){var a;if(void 0!==p){var e=(a=(a=String(p).replace(/#/g,"||HASH||")).replace(/&/g,"||AMP||")).split("+"),t=0;for(a="";t<e.length;)a+=e[t],++t<e.length&&(a+="||PLUS||");return a}}function wppaUrlToId(p){var a=p.split("/wppa/");return 1==a.length&&(a=p.split("/upload/")),1==a.length?0:a=(a=(a=(a=(a=(a=(a=a[1]).split("."))[0].replace("/","")).replace("/","")).replace("/","")).replace("/","")).replace("/","")}function wppaSuperSearchSelect(p,a){jQuery("#wppa-ss-albumopt-"+p).css("display","none"),jQuery("#wppa-ss-albumcat-"+p).css("display","none"),jQuery("#wppa-ss-albumname-"+p).css("display","none"),jQuery("#wppa-ss-albumtext-"+p).css("display","none"),jQuery("#wppa-ss-photoopt-"+p).css("display","none"),jQuery("#wppa-ss-photoname-"+p).css("display","none"),jQuery("#wppa-ss-photoowner-"+p).css("display","none"),jQuery("#wppa-ss-phototag-"+p).css("display","none"),jQuery("#wppa-ss-phototext-"+p).css("display","none"),jQuery("#wppa-ss-photoexif-"+p).css("display","none"),jQuery("#wppa-ss-photoiptc-"+p).css("display","none"),jQuery("#wppa-ss-exifopts-"+p).css("display","none"),jQuery("#wppa-ss-iptcopts-"+p).css("display","none"),jQuery("#wppa-ss-spinner-"+p).css("display","none"),jQuery("#wppa-ss-button-"+p).css("display","none");var e=jQuery("#wppa-ss-pa-"+p).val(),t="",o="",r="";switch(e){case"a":switch(jQuery("#wppa-ss-albumopt-"+p).css("display",""),t=jQuery("#wppa-ss-albumopt-"+p).val()){case"c":jQuery("#wppa-ss-albumcat-"+p).css("display","");var s=jQuery(".wppa-ss-albumcat-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"n":jQuery("#wppa-ss-albumname-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-albumname-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"t":jQuery("#wppa-ss-albumtext-"+p).css("display","");s=jQuery(".wppa-ss-albumtext-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","")}break;case"p":switch(jQuery("#wppa-ss-photoopt-"+p).css("display",""),t=jQuery("#wppa-ss-photoopt-"+p).val()){case"n":jQuery("#wppa-ss-photoname-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-photoname-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"o":jQuery("#wppa-ss-photoowner-"+p).css("display",""),null!=(r=jQuery("#wppa-ss-photoowner-"+p).val())&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"g":jQuery("#wppa-ss-phototag-"+p).css("display","");s=jQuery(".wppa-ss-phototag-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"t":jQuery("#wppa-ss-phototext-"+p).css("display","");var i;s=jQuery(".wppa-ss-phototext-"+p);for(r="",i=0;i<s.length;i++)"selected"==jQuery(s[i]).attr("selected")&&(r+="."+jQuery(s[i]).val());""!=(r=r.substr(1))&&jQuery("#wppa-ss-button-"+p).css("display","");break;case"i":jQuery("#wppa-ss-photoiptc-"+p).css("display",""),(o=jQuery("#wppa-ss-photoiptc-"+p).val())&&(2<o.length&&(o=o.replace("#","H")),""!=o&&(jQuery("#wppa-ss-iptcopts-"+p).css("display",""),wppaLastIptc!=o?(wppaAjaxGetSsIptcList(p,o,"wppa-ss-iptcopts-"+p),wppaLastIptc=o):null!=(r=jQuery("#wppa-ss-iptcopts-"+p).val())&&""!=r&&jQuery("#wppa-ss-button-"+p).css("display","")));break;case"e":jQuery("#wppa-ss-photoexif-"+p).css("display",""),(o=jQuery("#wppa-ss-photoexif-"+p).val())&&(2<o.length&&(o=o.replace("#","H")),""!=o&&(jQuery("#wppa-ss-exifopts-"+p).css("display",""),wppaLastExif!=o?(wppaAjaxGetSsExifList(p,o,"wppa-ss-exifopts-"+p),wppaLastExif=o):null!=(r=jQuery("#wppa-ss-exifopts-"+p).val())&&""!=r&&jQuery("#wppa-ss-button-"+p).css("display","")))}}if(a){var n=jQuery("#wppa-ss-pageurl-"+p).val();-1==n.indexOf("?")?n+="?":n+="&",n+="occur=1&wppa-supersearch="+e+","+t+","+o+","+r,document.location.href=n}}function wppaAjaxGetSsIptcList(t,p,o){jQuery.ajax({url:wppaAjaxUrl,data:"action=wppa&wppa-action=getssiptclist&tag="+p+"&moccur="+t,async:!0,type:"GET",timeout:1e4,beforeSend:function(p){jQuery("#wppa-ss-spinner-"+t).css("display","")},success:function(p,a,e){jQuery("#"+o).html(p),jQuery("#wppa-ss-iptcopts-"+t).css("display",""),wppaSuperSearchSelect(t),setTimeout('wppaSetIptcExifSize( ".wppa-iptclist-'+t+'", "#'+o+'" )',10)},error:function(p,a,e){wppaConsoleLog("wppaAjaxGetSsIptcList failed. Error = "+e+", status = "+a,"force")},complete:function(p,a,e){jQuery("#wppa-ss-spinner-"+t).css("display","none")}})}function wppaAjaxGetSsExifList(t,p,o){jQuery.ajax({url:wppaAjaxUrl,data:"action=wppa&wppa-action=getssexiflist&tag="+p+"&moccur="+t,async:!0,type:"GET",timeout:1e4,beforeSend:function(p){jQuery("#wppa-ss-spinner-"+t).css("display","")},success:function(p,a,e){jQuery("#"+o).html(p),jQuery("#wppa-ss-exifopts-"+t).css("display",""),wppaSuperSearchSelect(t),setTimeout('wppaSetIptcExifSize( ".wppa-exiflist-'+t+'", "#'+o+'" )',10)},error:function(p,a,e){wppaConsoleLog("wppaAjaxGetSsExifList failed. Error = "+e+", status = "+a,"force")},complete:function(p,a,e){jQuery("#wppa-ss-spinner-"+t).css("display","none")}})}function wppaSetIptcExifSize(p,a){var e=jQuery(p).length;6<e&&(e=6),e<2&&(e=2),jQuery(a).attr("size",e)}function wppaUpdateSearchRoot(p,a){for(var e=jQuery(".wppa-search-root"),t=0;t<e.length;)jQuery(e[t]).html(p),t++;for(e=jQuery(".wppa-rootbox"),t=0;t<e.length;)a?(jQuery(e[t]).prop("checked",!1),jQuery(e[t]).prop("disabled",!1)):(jQuery(e[t]).prop("checked",!0),jQuery(e[t]).prop("disabled",!0)),t++;for(e=jQuery(".wppa-search-root-id"),t=0;t<e.length;)jQuery(e[t]).val(a),t++}function wppaSubboxChange(p){jQuery(p).prop("checked")&&jQuery(".wppa-rootbox").each(function(p){jQuery(this).prop("checked",!0)})}function wppaClearSubsearch(){for(var p=jQuery(".wppa-display-searchstring"),a=0;a<p.length;)jQuery(p[a]).html(""),a++;for(p=jQuery(".wppa-search-sub-box"),a=0;a<p.length;)jQuery(p[a]).attr("disabled","disabled"),a++}function wppaEnableSubsearch(){for(var p=jQuery(".wppa-search-sub-box"),a=0;a<p.length;)jQuery(p[a]).removeAttr("disabled"),a++}function wppaDisplaySelectedFiles(p){for(var a=jQuery("#"+p),e=0,t="";e<a[0].files.length;)t+=a[0].files[e].name+" ",e++;jQuery("#"+p+"-display").val(t)}function wppaIsEmpty(p){return null==p||(void 0===p||(""==p||(0==p||(0==p||void 0))))}function wppaGetUploadOptions(yalb,mocc,where,onComplete){var options={beforeSend:function(){jQuery("#progress-"+yalb+"-"+mocc).show(),jQuery("#bar-"+yalb+"-"+mocc).width("0%"),jQuery("#message-"+yalb+"-"+mocc).html(""),jQuery("#percent-"+yalb+"-"+mocc).html("")},uploadProgress:function(p,a,e,t){jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#7F7"),jQuery("#bar-"+yalb+"-"+mocc).width(t+"%"),t<95?jQuery("#percent-"+yalb+"-"+mocc).html(t+"%"):jQuery("#percent-"+yalb+"-"+mocc).html(wppaProcessing)},success:function(){jQuery("#bar-"+yalb+"-"+mocc).width("100%"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaDone),jQuery(".wppa-upload-button").val(wppaUploadButtonText)},complete:function(response){-1!=response.responseText.indexOf(wppaUploadFailed)?(jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#F77"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaUploadFailed),jQuery("#message-"+yalb+"-"+mocc).html('<span style="font-size: 10px;" >'+response.responseText+"</span>")):(jQuery("#message-"+yalb+"-"+mocc).html('<span style="font-size: 10px;" >'+response.responseText+"</span>"),"thumb"!=where&&"cover"!=where||eval(onComplete))},error:function(){jQuery("#message-"+yalb+"-"+mocc).html('<span style="color: red;" >'+wppaServerError+"</span>"),jQuery("#bar-"+yalb+"-"+mocc).css("backgroundColor","#F77"),jQuery("#percent-"+yalb+"-"+mocc).html(wppaUploadFailed)}};return options}wppaConsoleLog("wppa.js version "+wppaJsVersion+" loaded.","force");
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: opajaap
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=OpaJaap@OpaJaap.nl&item_name=WP-Photo-Album-Plus&item_number=Support-Open-Source&currency_code=USD&lc=US
4
  Tags: photo, album, slideshow, video, audio, lightbox, iptc, exif, cloudinary, fotomoto, imagemagick, pdf
5
- Version: 7.1.04
6
- Stable tag: 7.1.03.005
7
  Author: J.N. Breetvelt
8
  Author URI: http://www.opajaap.nl/
9
  Requires at least: 3.9
@@ -137,6 +137,11 @@ See for the full changelog: <a href="http://www.wppa.nl/changelog/" >The documen
137
 
138
  == Upgrade Notice ==
139
 
 
 
 
 
 
140
  = 7.1.04 =
141
 
142
  * This version addresses various bug fixes.
2
  Contributors: opajaap
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=OpaJaap@OpaJaap.nl&item_name=WP-Photo-Album-Plus&item_number=Support-Open-Source&currency_code=USD&lc=US
4
  Tags: photo, album, slideshow, video, audio, lightbox, iptc, exif, cloudinary, fotomoto, imagemagick, pdf
5
+ Version: 7.1.05
6
+ Stable tag: 7.1.04.002
7
  Author: J.N. Breetvelt
8
  Author URI: http://www.opajaap.nl/
9
  Requires at least: 3.9
137
 
138
  == Upgrade Notice ==
139
 
140
+ = 7.1.05 =
141
+
142
+ * This version addresses various security issues.
143
+ * This version addresses various bug fixes.
144
+
145
  = 7.1.04 =
146
 
147
  * This version addresses various bug fixes.
wppa-admin-functions.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * gp admin functions
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -749,14 +749,14 @@ global $warning_given_small;
749
  // Verify file exists
750
  if ( ! wppa( 'is_remote' ) && ! file_exists( $file ) ) {
751
  if ( ! wppa_is_dir( dirname( $file ) ) ) {
752
- wppa_error_message( 'Error: Directory '.dirname( $file ).' does not exist.' );
753
  return false;
754
  }
755
  if ( ! is_writable( dirname( $file ) ) ) {
756
- wppa_error_message( 'Error: Directory '.dirname( $file ).' is not writable.' );
757
  return false;
758
  }
759
- wppa_error_message( 'Error: File '.$file.' does not exist.' );
760
  return false;
761
  }
762
  elseif ( wppa( 'is_remote' ) ) {
@@ -774,12 +774,12 @@ global $warning_given_small;
774
  // Assume success finding image size
775
  if ( $img_size ) {
776
  if ( wppa_check_memory_limit( '', $img_size['0'], $img_size['1'] ) === false ) {
777
- wppa_error_message( sprintf( __( 'ERROR: Attempt to upload a photo that is too large to process (%s).' , 'wp-photo-album-plus'), $name ).wppa_check_memory_limit() );
778
  wppa( 'ajax_import_files_error', __( 'Too big', 'wp-photo-album-plus' ) );
779
  return false;
780
  }
781
  if ( ! $warning_given_small && ( $img_size['0'] < wppa_get_minisize() && $img_size['1'] < wppa_get_minisize() ) ) {
782
- wppa_warning_message( __( 'WARNING: You are uploading photos that are too small. Photos must be larger than the thumbnail size and larger than the coverphotosize.' , 'wp-photo-album-plus') );
783
  wppa( 'ajax_import_files_error', __( 'Too small', 'wp-photo-album-plus' ) );
784
  $warning_given_small = true;
785
  }
@@ -787,7 +787,7 @@ global $warning_given_small;
787
 
788
  // No image size found
789
  else {
790
- wppa_error_message( __( 'ERROR: Unable to retrieve image size of' , 'wp-photo-album-plus').' '.$file.' '.__( 'Are you sure it is a photo?' , 'wp-photo-album-plus') );
791
  wppa( 'ajax_import_files_error', __( 'No photo found', 'wp-photo-album-plus' ) );
792
  return false;
793
  }
@@ -798,7 +798,7 @@ global $warning_given_small;
798
  case 2: $ext = 'jpg'; break;
799
  case 3: $ext = 'png'; break;
800
  default:
801
- wppa_error_message( __( 'Unsupported mime type encountered:' , 'wp-photo-album-plus').' '.$img_size[2].'.' );
802
  return false;
803
  }
804
  // Get an id if not yet there
@@ -819,7 +819,7 @@ global $warning_given_small;
819
  return false;
820
  }
821
  if ( ! wppa_have_access( $alb ) ) {
822
- wppa_error_message( sprintf( __( 'Album %s does not exist or is not accessible while trying to add a photo' , 'wp-photo-album-plus'), $alb ) );
823
  return false;
824
  }
825
  $status = ( wppa_switch( 'moderatephoto' ) && ! current_user_can( 'wppa_admin' ) ) ? 'pending' : 'publish';
3
  * Package: wp-photo-album-plus
4
  *
5
  * gp admin functions
6
+ * Version 7.1.05
7
  *
8
  */
9
 
749
  // Verify file exists
750
  if ( ! wppa( 'is_remote' ) && ! file_exists( $file ) ) {
751
  if ( ! wppa_is_dir( dirname( $file ) ) ) {
752
+ wppa_error_message( htmlentities( 'Error: Directory '.dirname( $file ).' does not exist.' ) );
753
  return false;
754
  }
755
  if ( ! is_writable( dirname( $file ) ) ) {
756
+ wppa_error_message( htmlentities( 'Error: Directory '.dirname( $file ).' is not writable.' ) );
757
  return false;
758
  }
759
+ wppa_error_message( htmlentities( 'Error: File '.$file.' does not exist.' ) );
760
  return false;
761
  }
762
  elseif ( wppa( 'is_remote' ) ) {
774
  // Assume success finding image size
775
  if ( $img_size ) {
776
  if ( wppa_check_memory_limit( '', $img_size['0'], $img_size['1'] ) === false ) {
777
+ wppa_error_message( htmlentities( sprintf( __( 'ERROR: Attempt to upload a photo that is too large to process (%s).' , 'wp-photo-album-plus'), $name ).wppa_check_memory_limit() ) );
778
  wppa( 'ajax_import_files_error', __( 'Too big', 'wp-photo-album-plus' ) );
779
  return false;
780
  }
781
  if ( ! $warning_given_small && ( $img_size['0'] < wppa_get_minisize() && $img_size['1'] < wppa_get_minisize() ) ) {
782
+ wppa_warning_message( htmlentities( __( 'WARNING: You are uploading photos that are too small. Photos must be larger than the thumbnail size and larger than the coverphotosize.' , 'wp-photo-album-plus') ) );
783
  wppa( 'ajax_import_files_error', __( 'Too small', 'wp-photo-album-plus' ) );
784
  $warning_given_small = true;
785
  }
787
 
788
  // No image size found
789
  else {
790
+ wppa_error_message( htmlentities( __( 'ERROR: Unable to retrieve image size of' , 'wp-photo-album-plus').' '.$file.' '.__( 'Are you sure it is a photo?' , 'wp-photo-album-plus') ) );
791
  wppa( 'ajax_import_files_error', __( 'No photo found', 'wp-photo-album-plus' ) );
792
  return false;
793
  }
798
  case 2: $ext = 'jpg'; break;
799
  case 3: $ext = 'png'; break;
800
  default:
801
+ wppa_error_message( htmentities( __( 'Unsupported mime type encountered:' , 'wp-photo-album-plus').' '.$img_size[2].'.' ) );
802
  return false;
803
  }
804
  // Get an id if not yet there
819
  return false;
820
  }
821
  if ( ! wppa_have_access( $alb ) ) {
822
+ wppa_error_message( htmlentities( sprintf( __( 'Album %s does not exist or is not accessible while trying to add a photo' , 'wp-photo-album-plus'), $alb ) ) );
823
  return false;
824
  }
825
  $status = ( wppa_switch( 'moderatephoto' ) && ! current_user_can( 'wppa_admin' ) ) ? 'pending' : 'publish';
wppa-ajax.php CHANGED
@@ -2,7 +2,7 @@
2
  /* wppa-ajax.php
3
  *
4
  * Functions used in ajax requests
5
- * Version 7.1.03
6
  *
7
  */
8
 
@@ -1470,8 +1470,8 @@ global $wppa_log_file_new;
1470
  case 'name':
1471
  $value = trim( strip_tags( $value ) );
1472
  if ( ! wppa_sanitize_file_name( $value ) ) { // Empty album name is not allowed
1473
- $value = 'Album-#'.$album;
1474
- echo '||5||' . sprintf( __( 'Album name may not be empty.<br />Reset to %s' , 'wp-photo-album-plus'), $value );
1475
  }
1476
  $itemname = __( 'Name' , 'wp-photo-album-plus');
1477
  wppa_update_album( array( 'id' => $album, 'name' => $value ) );
@@ -1574,7 +1574,7 @@ global $wppa_log_file_new;
1574
  if ( $item == 'min' ) $temp[4] = $value;
1575
  $scheduledtm = implode( ',', $temp );
1576
  wppa_update_album( array( 'id' => $album, 'scheduledtm' => $scheduledtm ) );
1577
- echo '||0||'.sprintf( __( '%s of album %s updated' , 'wp-photo-album-plus'), $itemname, $album );
1578
  wppa_exit();
1579
  break;
1580
 
@@ -1630,7 +1630,7 @@ global $wppa_log_file_new;
1630
  if ( $item == 'name' ) {
1631
  wppa_create_pl_htaccess();
1632
  }
1633
- echo '||0||'.sprintf( __( '%s of album %s updated' , 'wp-photo-album-plus'), $itemname, $album );
1634
  if ( $item == 'upload_limit' ) {
1635
  echo '||';
1636
  $a = wppa_allow_uploads( $album );
@@ -1639,7 +1639,7 @@ global $wppa_log_file_new;
1639
  }
1640
  }
1641
  else {
1642
- echo '||2||'.sprintf( __( 'An error occurred while trying to update %s of album %s' , 'wp-photo-album-plus'), $itemname, $album );
1643
  echo '<br>'.__( 'Press CTRL+F5 and try again.' , 'wp-photo-album-plus');
1644
  }
1645
  wppa_clear_cache();
2
  /* wppa-ajax.php
3
  *
4
  * Functions used in ajax requests
5
+ * Version 7.1.05
6
  *
7
  */
8
 
1470
  case 'name':
1471
  $value = trim( strip_tags( $value ) );
1472
  if ( ! wppa_sanitize_file_name( $value ) ) { // Empty album name is not allowed
1473
+ $value = 'Album-#' . $album;
1474
+ echo '||5||' . sprintf( __( 'Album name may not be empty.<br />Reset to %s', 'wp-photo-album-plus' ), htmlentities( $value ) );
1475
  }
1476
  $itemname = __( 'Name' , 'wp-photo-album-plus');
1477
  wppa_update_album( array( 'id' => $album, 'name' => $value ) );
1574
  if ( $item == 'min' ) $temp[4] = $value;
1575
  $scheduledtm = implode( ',', $temp );
1576
  wppa_update_album( array( 'id' => $album, 'scheduledtm' => $scheduledtm ) );
1577
+ echo '||0||'.sprintf( __( '%s of album %s updated', 'wp-photo-album-plus' ), $itemname, htmlentities( $album ) );
1578
  wppa_exit();
1579
  break;
1580
 
1630
  if ( $item == 'name' ) {
1631
  wppa_create_pl_htaccess();
1632
  }
1633
+ echo '||0||'.sprintf( __( '%s of album %s updated', 'wp-photo-album-plus' ), $itemname, htmlentities( $album ) );
1634
  if ( $item == 'upload_limit' ) {
1635
  echo '||';
1636
  $a = wppa_allow_uploads( $album );
1639
  }
1640
  }
1641
  else {
1642
+ echo '||2||'.sprintf( __( 'An error occurred while trying to update %s of album %s' , 'wp-photo-album-plus'), $itemname, htmlentities( $album ) );
1643
  echo '<br>'.__( 'Press CTRL+F5 and try again.' , 'wp-photo-album-plus');
1644
  }
1645
  wppa_clear_cache();
wppa-common-functions.php CHANGED
@@ -2,7 +2,7 @@
2
  /* wppa-common-functions.php
3
  *
4
  * Functions used in admin and in themes
5
- * Version 7.1.02
6
  *
7
  */
8
 
@@ -233,69 +233,72 @@ global $wppa_session;
233
  static $volatile_randseed;
234
  static $randseed_modified;
235
 
 
236
 
 
 
 
 
237
 
238
- // This randseed survives pageloads up to the duration of the session ( usually 1 hour )
239
- if ( $type == 'session' ) {
240
- // wppa_log( 'dbg', 'get_randseed called with type=session returned ' . $wppa_session['id'] );
241
- return $wppa_session['id'];
242
- }
243
-
244
- // This randseed is for the page only
245
- if ( $type == 'page' ) {
246
- if ( ! $volatile_randseed ) {
247
- $volatile_randseed = time() % 7487;
248
- }
249
- // wppa_log( 'dbg', 'get_randseed called with type=page returned ' . $volatile_randseed );
250
- return $volatile_randseed;
251
- }
252
 
253
- // Init, get the session save one
254
- if ( isset( $wppa_session['randseed'] ) && $wppa_session['randseed'] ) {
255
- $randseed = $wppa_session['randseed'];
256
- }
 
 
257
 
258
- // No saved one, initialize randseed
259
- else {
 
 
260
 
261
- $randseed = time() % 4721;;
262
- $wppa_session['randseed'] = $randseed;
263
- $wppa_session['randseedtime'] = time();
264
- // wppa_log( 'obs', 'Randseed initialized to ' . $randseed . ' uri= ' . $_SERVER['REQUEST_URI'] );
265
 
266
- // Make sure we save it
267
- wppa_save_session();
 
 
 
268
 
269
- return $randseed;
270
- }
271
 
272
- // We have a seed. Assume we need to renew it
273
- $renew = true;
274
 
275
- // The following conditions make we do not need to renew
276
- if ( $randseed_modified ) $renew = false; // Already renewd this pageload
277
- if ( wppa( 'ajax' ) ) $renew = false; // Not during ajax call
278
- if ( strpos( $_SERVER['REQUEST_URI'], 'wp-content' ) !== false ) $renew = false; // Url to a content item needs no renew
279
- if ( isset( $_REQUEST['wppa-page'] ) ) $renew = false; // A subsequent wppa page needs the same sequence
280
- if ( isset( $wppa_session['randseedtime'] ) && $wppa_session['randseedtime'] > ( time() - 10 ) ) $renew = false;
281
 
282
- // Make new
283
- if ( $renew ) {
284
 
285
- $randseed = time() % 4721;
286
- $wppa_session['randseed'] = $randseed;
287
- $wppa_session['randseedtime'] = time();
288
- // wppa_log( 'obs', 'Randseed set to ' . $randseed . ' uri= ' . $_SERVER['REQUEST_URI'] );
289
 
290
- // Indicaate we found a new randseed during this pageload
291
- $randseed_modified = true;
292
 
293
- // Make sure we save it
294
- wppa_save_session();
 
295
  }
296
 
297
- // Return either the old saved one or the new saved one
298
- return $randseed;
 
 
 
299
  }
300
 
301
  // get the url to the plugins image directory
2
  /* wppa-common-functions.php
3
  *
4
  * Functions used in admin and in themes
5
+ * Version 7.1.05
6
  *
7
  */
8
 
233
  static $volatile_randseed;
234
  static $randseed_modified;
235
 
236
+ switch ( $type ) {
237
 
238
+ // This randseed survives pageloads up to the duration of the session ( usually 1 hour )
239
+ case 'session':
240
+ $result = $wppa_session['id'];
241
+ break;
242
 
243
+ // This randseed is for one pageload only
244
+ case 'page':
 
 
 
 
 
 
 
 
 
 
 
 
245
 
246
+ // Not Been here before?
247
+ if ( ! $volatile_randseed ) {
248
+ $volatile_randseed = time() % 7487;
249
+ }
250
+ $result = $volatile_randseed;
251
+ break;
252
 
253
+ // This randseed is new for each pagelad and all subsequent ajax calls.
254
+ // It must remain at lease 30 seconds the same, even when non ajax pageloads happen.
255
+ // This is to survive themes that do a reload right after the beginning.
256
+ default:
257
 
258
+ // Init, get the now saved in the session
259
+ if ( isset( $wppa_session['randseed'] ) && $wppa_session['randseed'] ) {
260
+ $result = $wppa_session['randseed'];
261
+ }
262
 
263
+ // No saved one, initialize randseed, save it and save the time we made it
264
+ else {
265
+ $result = time() % 4721;
266
+ $wppa_session['randseed'] = $result;
267
+ $wppa_session['randseedtime'] = time();
268
 
269
+ wppa_save_session();
270
+ }
271
 
272
+ // We have a seed. Assume we need to renew it
273
+ $renew = true;
274
 
275
+ // The following conditions make we do not need to renew
276
+ if ( $randseed_modified ) $renew = false; // Already renewed this pageload
277
+ if ( wppa( 'ajax' ) ) $renew = false; // Not during ajax call
278
+ if ( strpos( $_SERVER['REQUEST_URI'], 'wp-content' ) !== false ) $renew = false; // Url to a content item needs no renew
279
+ if ( isset( $_REQUEST['wppa-page'] ) ) $renew = false; // A subsequent wppa page needs the same sequence
280
+ if ( isset( $wppa_session['randseedtime'] ) && $wppa_session['randseedtime'] > ( time() - 30 ) ) $renew = false; // Not within 30 seconds
281
 
282
+ // Make new
283
+ if ( $renew ) {
284
 
285
+ $result = time() % 4721;
286
+ $wppa_session['randseed'] = $result;
287
+ $wppa_session['randseedtime'] = time();
 
288
 
289
+ // Indicaate we found a new randseed during this pageload
290
+ $randseed_modified = true;
291
 
292
+ // Make sure we save it
293
+ wppa_save_session();
294
+ }
295
  }
296
 
297
+ // Log
298
+ wppa_log( 'dbg', 'wppa_get_randseed returned {b}' . $result . '{/b}, type= {b}' . ( $type ? $type : 'default' ) . '{/b}, uri= ' . $_SERVER['REQUEST_URI'], true );
299
+
300
+ // Return the randseed
301
+ return $result;
302
  }
303
 
304
  // get the url to the plugins image directory
wppa-cron.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all cron functions
6
- * Version 7.1.02
7
  *
8
  *
9
  */
@@ -154,6 +154,7 @@ function wppa_schedule_cleanup( $now = false ) {
154
  function wppa_do_cleanup() {
155
  global $wpdb;
156
  global $wppa_endtime;
 
157
 
158
  // Are we temp disbled?
159
  if ( wppa_switch( 'maint_ignore_cron' ) ) {
@@ -316,6 +317,26 @@ global $wppa_endtime;
316
  wppa_delete_obsolete_tempfiles();
317
  wppa_log( 'Cron', 'Phase 12, time left = '.($wppa_endtime-time()) );
318
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
319
  // Done?
320
  wppa_log( 'Cron', 'Phase 13, time left = '.($wppa_endtime-time()) );
321
 
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all cron functions
6
+ * Version 7.1.05
7
  *
8
  *
9
  */
154
  function wppa_do_cleanup() {
155
  global $wpdb;
156
  global $wppa_endtime;
157
+ global $wp_filesystem;
158
 
159
  // Are we temp disbled?
160
  if ( wppa_switch( 'maint_ignore_cron' ) ) {
317
  wppa_delete_obsolete_tempfiles();
318
  wppa_log( 'Cron', 'Phase 12, time left = '.($wppa_endtime-time()) );
319
 
320
+ // Cleanup unused depot dirs
321
+ wppa_init_fs();
322
+ $root = is_user_logged_in() ? dirname( WPPA_DEPOT_PATH ) : WPPA_DEPOT_PATH;
323
+ $depot = dir( $root );
324
+ if ( substr( $root, -10 ) != 'wppa-depot' ) $depot = false; // Just to be sure we are in the right dir
325
+ if ( $depot ) {
326
+ while ( false !== ( $entry = $depot->read() ) && ! wppa_is_time_up() ) {
327
+ if ( $entry != '.' && $entry != '..' && is_dir( $root . '/' . $entry ) ) {
328
+ $user = get_user_by( 'login', $entry );
329
+ if ( ! $user || ! user_can( $user, 'wppa_import' ) ) {
330
+ $wp_filesystem->delete( $root . '/' . $entry, true );
331
+ wppa_log( 'fso', 'Removed unused depot dir for' . ( $user ? '': ' non existent' ) . ' user {b}' . $entry . '{/b}' );
332
+ }
333
+ }
334
+ }
335
+ }
336
+ else {
337
+ wppa_log( 'err', 'No depot found ' . $root );
338
+ }
339
+
340
  // Done?
341
  wppa_log( 'Cron', 'Phase 13, time left = '.($wppa_endtime-time()) );
342
 
wppa-filter.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * get the albums via shortcode handler
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -129,6 +129,10 @@ global $wppa_revno;
129
 
130
  // Sanitize input
131
  if ( $atts['alt'] && $atss['alt'] != 'none' ) $atts['alt'] = strval( intval( $atts['alt'] ) );
 
 
 
 
132
 
133
  // Init
134
  wppa_reset_occurrance();
3
  * Package: wp-photo-album-plus
4
  *
5
  * get the albums via shortcode handler
6
+ * Version 7.1.05
7
  *
8
  */
9
 
129
 
130
  // Sanitize input
131
  if ( $atts['alt'] && $atss['alt'] != 'none' ) $atts['alt'] = strval( intval( $atts['alt'] ) );
132
+ foreach ( array_keys( $atts ) as $key ) {
133
+ $atts[$key] = htmlentities( $atts[$key] );
134
+ }
135
+ $content = htmlentities( $content );
136
 
137
  // Init
138
  wppa_reset_occurrance();
wppa-functions.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Various functions
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -2546,7 +2546,12 @@ global $wppa_done;
2546
  }
2547
 
2548
  // SEND EMAILS
2549
- wppa_schedule_mailinglist( 'commentnotify', 0, $photo, $key, wppa_get_post( 'returnurl' ) );
 
 
 
 
 
2550
 
2551
  // Process any pending votes of this user for this photo if rating needs comment, do it anyway, feature may have been on but now off
2552
  // if ( wppa_switch( 'vote_needs_comment' ) ) {
@@ -3420,6 +3425,7 @@ global $cover_count_key;
3420
  ( $nice ? 'overflow:hidden;' : 'overflow:auto;' ) .
3421
  '"' . '
3422
  class="albumlist"
 
3423
  >' );
3424
 
3425
  if ( $nice ) {
@@ -5136,11 +5142,11 @@ global $wpdb;
5136
  function wppa_check_comment( $user, $email, $comment ) {
5137
  global $wpdb;
5138
 
5139
- // If manual moderation is enabled, skip all checks and return 'pending'.
5140
- if ( 1 == get_option( 'moderatecomment' ) ) {
5141
- wppa_log( 'Com', 'Comment {i}' . $comment . '{/i} held for moderation (1)' );
5142
- return 'pending';
5143
- }
5144
 
5145
  // Some other required data
5146
  $user_ip = $_SERVER["REMOTE_ADDR"];
3
  * Package: wp-photo-album-plus
4
  *
5
  * Various functions
6
+ * Version 7.1.05
7
  *
8
  */
9
 
2546
  }
2547
 
2548
  // SEND EMAILS
2549
+ if ( $status == 'pending' ) {
2550
+ wppa_schedule_mailinglist( 'moderatecomment', 0, $photo, $key, wppa_get_post( 'returnurl' ) );
2551
+ }
2552
+ if ( $status == 'approved' ) {
2553
+ wppa_schedule_mailinglist( 'commentnotify', 0, $photo, $key, wppa_get_post( 'returnurl' ) );
2554
+ }
2555
 
2556
  // Process any pending votes of this user for this photo if rating needs comment, do it anyway, feature may have been on but now off
2557
  // if ( wppa_switch( 'vote_needs_comment' ) ) {
3425
  ( $nice ? 'overflow:hidden;' : 'overflow:auto;' ) .
3426
  '"' . '
3427
  class="albumlist"
3428
+ onscroll="wppaMakeLazyVisible();"
3429
  >' );
3430
 
3431
  if ( $nice ) {
5142
  function wppa_check_comment( $user, $email, $comment ) {
5143
  global $wpdb;
5144
 
5145
+ // // If manual moderation is enabled, skip all checks and return 'pending'.
5146
+ // if ( 1 == get_option( 'moderatecomment' ) ) {
5147
+ // wppa_log( 'Com', 'Comment {i}' . $comment . '{/i} held for moderation (1)' );
5148
+ // return 'pending';
5149
+ // }
5150
 
5151
  // Some other required data
5152
  $user_ip = $_SERVER["REMOTE_ADDR"];
wppa-import.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all the import pages and functions
6
- * Version 7.1.03
7
  *
8
  */
9
 
@@ -3082,7 +3082,7 @@ global $wppa_session;
3082
  $xfile = str_replace( array( '[', ']', '(', ')', '{', '}', '$', '+' ), array( '\[', '\]', '\(', '\)', '\{', '\}', '\$', '\+' ), $file );
3083
  $photofiles = wppa_glob( $xfile.'/*' );
3084
  if ( $photofiles ) foreach ( $photofiles as $photofile ) {
3085
- wppa_log('obs', 'FOUND:'.$photofile);
3086
  if ( ! wppa_is_dir( $photofile ) ) {
3087
 
3088
  if ( ! isset( $wppa_session[$photofile] ) || ! wppa_switch( 'keep_import_files' ) ) {
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all the import pages and functions
6
+ * Version 7.1.05
7
  *
8
  */
9
 
3082
  $xfile = str_replace( array( '[', ']', '(', ')', '{', '}', '$', '+' ), array( '\[', '\]', '\(', '\)', '\{', '\}', '\$', '\+' ), $file );
3083
  $photofiles = wppa_glob( $xfile.'/*' );
3084
  if ( $photofiles ) foreach ( $photofiles as $photofile ) {
3085
+
3086
  if ( ! wppa_is_dir( $photofile ) ) {
3087
 
3088
  if ( ! isset( $wppa_session[$photofile] ) || ! wppa_switch( 'keep_import_files' ) ) {
wppa-mailing.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * Contains mailing functions
6
  *
7
- * Version 7.0.12
8
  *
9
  */
10
 
@@ -258,11 +258,11 @@ global $wpdb;
258
  $alb = wppa_get_photo_item( $pho, 'album' );
259
  }
260
 
261
- // If moderation required, do the moderatecomment mailing
262
- if ( $comment['status'] == 'pending' ) {
263
- wppa_do_mailinglist( 'moderatecomment', $alb, $pho, $com, $url );
264
- return;
265
- }
266
 
267
  // If limited receivers activated, reduce subscriptionlist
268
  if ( wppa_switch( 'commentnotify_limit' ) ) {
4
  *
5
  * Contains mailing functions
6
  *
7
+ * Version 7.1.05
8
  *
9
  */
10
 
258
  $alb = wppa_get_photo_item( $pho, 'album' );
259
  }
260
 
261
+ // // If moderation required, do the moderatecomment mailing
262
+ // if ( $comment['status'] == 'pending' ) {
263
+ // wppa_do_mailinglist( 'moderatecomment', $alb, $pho, $com, $url );
264
+ // return;
265
+ // }
266
 
267
  // If limited receivers activated, reduce subscriptionlist
268
  if ( wppa_switch( 'commentnotify_limit' ) ) {
wppa-maintenance.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains (not yet, but in the future maybe) all the maintenance routines
6
- * Version 7.1.03
7
  *
8
  */
9
 
@@ -1466,9 +1466,11 @@ global $wppa_log_file_new;
1466
  // End nicescroller wrapper
1467
  $result .= '
1468
  <script type="text/javascript" >
1469
- jQuery(document).ready(function(){
1470
- jQuery("#wppa-maintenance-list").niceScroll(".wppa-nicewrap",{' . wppa_opt( 'nicescroll_opts' ) . '});
1471
- });
 
 
1472
  </script>
1473
  </div>';
1474
 
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains (not yet, but in the future maybe) all the maintenance routines
6
+ * Version 7.1.05
7
  *
8
  */
9
 
1466
  // End nicescroller wrapper
1467
  $result .= '
1468
  <script type="text/javascript" >
1469
+ if ( jQuery("#wppa-maintenance-list").niceScroll ) {
1470
+ jQuery(document).ready(function(){
1471
+ jQuery("#wppa-maintenance-list").niceScroll(".wppa-nicewrap",{' . wppa_opt( 'nicescroll_opts' ) . '});
1472
+ });
1473
+ }
1474
  </script>
1475
  </div>';
1476
 
wppa-settings-autosave.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * manage all options
6
- * Version 7.1.04
7
  *
8
  */
9
 
@@ -11400,7 +11400,7 @@ global $wppa_totcols;
11400
  echo '
11401
  <td><small>' . $desc . '</small></td>';
11402
 
11403
- // Thr html
11404
  if ( $htmls ) foreach ( $htmls as $html ) {
11405
  echo '
11406
  <td>' . $html . '</td>';
@@ -11738,7 +11738,7 @@ global $wppa_opt;
11738
  $cnt = count($options);
11739
  while ($idx < $cnt) {
11740
  $html .= "\n";
11741
- $html .= '<option value="'.$values[$idx].'" ';
11742
  $dis = false;
11743
  if ($idx == 0 && $first_disable) $dis = true;
11744
  $opt = trim($options[$idx], '|');
@@ -11794,7 +11794,7 @@ global $wppa_opt;
11794
 
11795
  $html .= '<option' .
11796
  ' class="' . $slug . '"' .
11797
- ' value="' . $values[$idx] . '" ' .
11798
  ( $sel ? ' selected="selected"' : '' ) .
11799
  ( $dis ? ' disabled="disabled"' : '' ) .
11800
  ' >' .
@@ -11829,7 +11829,7 @@ function wppa_select_e( $xslug, $curval, $options, $values, $onchange = '', $cla
11829
  $cnt = count($options);
11830
  while ($idx < $cnt) {
11831
  $html .= "\n";
11832
- $html .= '<option value="'.$values[$idx].'" ';
11833
  if ($val == $values[$idx]) $html .= ' selected="selected"';
11834
  $html .= '>'.$options[$idx].'</option>';
11835
  $idx++;
3
  * Package: wp-photo-album-plus
4
  *
5
  * manage all options
6
+ * Version 7.1.05
7
  *
8
  */
9
 
11400
  echo '
11401
  <td><small>' . $desc . '</small></td>';
11402
 
11403
+ // The html
11404
  if ( $htmls ) foreach ( $htmls as $html ) {
11405
  echo '
11406
  <td>' . $html . '</td>';
11738
  $cnt = count($options);
11739
  while ($idx < $cnt) {
11740
  $html .= "\n";
11741
+ $html .= '<option value="'.esc_attr($values[$idx]).'" ';
11742
  $dis = false;
11743
  if ($idx == 0 && $first_disable) $dis = true;
11744
  $opt = trim($options[$idx], '|');
11794
 
11795
  $html .= '<option' .
11796
  ' class="' . $slug . '"' .
11797
+ ' value="' . esc_attr( $values[$idx] ) . '" ' .
11798
  ( $sel ? ' selected="selected"' : '' ) .
11799
  ( $dis ? ' disabled="disabled"' : '' ) .
11800
  ' >' .
11829
  $cnt = count($options);
11830
  while ($idx < $cnt) {
11831
  $html .= "\n";
11832
+ $html .= '<option value="'.esc_attr($values[$idx]).'" ';
11833
  if ($val == $values[$idx]) $html .= ' selected="selected"';
11834
  $html .= '>'.$options[$idx].'</option>';
11835
  $idx++;
wppa-setup.php CHANGED
@@ -1987,63 +1987,63 @@ function wppa_check_dirs() {
1987
 
1988
  // check if wppa dir exists
1989
  $dir = WPPA_UPLOAD_PATH;
1990
- if ( ! wppa_is_dir( $dir ) ) {
1991
- wppa_mktree( $dir );
1992
  }
1993
- wppa_chmod( $dir, true );
1994
 
1995
  // check if thumbs dir exists
1996
  $dir = WPPA_UPLOAD_PATH . '/thumbs';
1997
- if ( ! wppa_is_dir( $dir ) ) {
1998
- wppa_mktree( $dir );
1999
  }
2000
- wppa_chmod( $dir, true );
2001
 
2002
  // check if watermarks dir exists
2003
  $dir = WPPA_UPLOAD_PATH . '/watermarks';
2004
- if ( ! wppa_is_dir( $dir ) ) {
2005
- wppa_mktree( $dir );
2006
  }
2007
- wppa_chmod( $dir, true );
2008
 
2009
  // check if fonts dir exists
2010
  $dir = WPPA_UPLOAD_PATH . '/fonts';
2011
- if ( ! wppa_is_dir( $dir ) ) {
2012
- wppa_mktree( $dir );
2013
  }
2014
- wppa_chmod( $dir, true );
2015
 
2016
  // The icons dir
2017
  $dir = WPPA_UPLOAD_PATH . '/icons';
2018
- if ( ! wppa_is_dir( $dir ) ) {
2019
- wppa_mktree( $dir );
2020
  }
2021
- wppa_chmod( $dir, true );
2022
 
2023
  // check if depot dir exists
2024
  if ( ! is_multisite() ) {
2025
 
2026
  // check if master depot dir exists
2027
  $dir = WPPA_CONTENT_PATH . '/wppa-depot';
2028
- if ( ! wppa_is_dir( $dir ) ) {
2029
- wppa_mktree( $dir );
2030
  }
2031
- wppa_chmod( $dir, true );
2032
  }
2033
 
2034
  // check the plugin activators depot directory
2035
  $dir = WPPA_DEPOT_PATH;
2036
- if ( ! wppa_is_dir( $dir ) ) {
2037
- wppa_mktree( $dir );
2038
  }
2039
- wppa_chmod( $dir, true );
2040
 
2041
  // check the temp dir
2042
  $dir = WPPA_UPLOAD_PATH . '/temp/';
2043
- if ( ! wppa_is_dir( $dir ) ) {
2044
- wppa_mktree( $dir );
2045
  }
2046
- wppa_chmod( $dir, true );
2047
 
2048
  return true;
2049
  }
1987
 
1988
  // check if wppa dir exists
1989
  $dir = WPPA_UPLOAD_PATH;
1990
+ if ( ! is_dir( $dir ) ) {
1991
+ mkdir( $dir );
1992
  }
1993
+ chmod( $dir, 0755 );
1994
 
1995
  // check if thumbs dir exists
1996
  $dir = WPPA_UPLOAD_PATH . '/thumbs';
1997
+ if ( ! is_dir( $dir ) ) {
1998
+ mkdir( $dir );
1999
  }
2000
+ chmod( $dir, 0755 );
2001
 
2002
  // check if watermarks dir exists
2003
  $dir = WPPA_UPLOAD_PATH . '/watermarks';
2004
+ if ( ! is_dir( $dir ) ) {
2005
+ mkdir( $dir );
2006
  }
2007
+ chmod( $dir, 0755 );
2008
 
2009
  // check if fonts dir exists
2010
  $dir = WPPA_UPLOAD_PATH . '/fonts';
2011
+ if ( ! is_dir( $dir ) ) {
2012
+ mkdir( $dir );
2013
  }
2014
+ chmod( $dir, 0755 );
2015
 
2016
  // The icons dir
2017
  $dir = WPPA_UPLOAD_PATH . '/icons';
2018
+ if ( ! is_dir( $dir ) ) {
2019
+ mkdir( $dir );
2020
  }
2021
+ chmod( $dir, 0755 );
2022
 
2023
  // check if depot dir exists
2024
  if ( ! is_multisite() ) {
2025
 
2026
  // check if master depot dir exists
2027
  $dir = WPPA_CONTENT_PATH . '/wppa-depot';
2028
+ if ( ! is_dir( $dir ) ) {
2029
+ mkdir( $dir );
2030
  }
2031
+ chmod( $dir, 0755 );
2032
  }
2033
 
2034
  // check the plugin activators depot directory
2035
  $dir = WPPA_DEPOT_PATH;
2036
+ if ( ! is_dir( $dir ) ) {
2037
+ mkdir( $dir );
2038
  }
2039
+ chmod( $dir, 0755 );
2040
 
2041
  // check the temp dir
2042
  $dir = WPPA_UPLOAD_PATH . '/temp/';
2043
+ if ( ! is_dir( $dir ) ) {
2044
+ mkdir( $dir );
2045
  }
2046
+ chmod( $dir, 0755 );
2047
 
2048
  return true;
2049
  }
wppa-thumbnails.php CHANGED
@@ -5,7 +5,7 @@
5
  * Various funcions to display a thumbnail image
6
  * Contains all possible frontend thumbnail types
7
  *
8
- * Version 7.1.01
9
  *
10
  */
11
 
@@ -1081,6 +1081,7 @@ global $wpdb;
1081
  $is_video = wppa_is_video( $id );
1082
  $has_audio = wppa_has_audio( $id );
1083
  $imgsrc = wppa_get_thumb_path( $id );
 
1084
 
1085
  if ( ! wppa_is_video( $id ) && ! is_file( $imgsrc ) ) {
1086
  $result .= '<div' .
@@ -1596,6 +1597,7 @@ function wppa_get_the_widget_thumb( $type, $image, $album, $display, $link, $tit
1596
  // Get the video and audio bodies
1597
  $videobody = $id ? wppa_get_video_body( $id ) : '';
1598
  $audiobody = $id ? wppa_get_audio_body( $id ) : '';
 
1599
 
1600
  // Open container if an image must be displayed
1601
  if ( $display == 'thumbs' ) {
@@ -1823,6 +1825,7 @@ function wppa_do_filmthumb( $id, $idx, $do_for_feed = false, $glue = false ) {
1823
  $psotitle = $thumb['linktitle'] ? 'title="'.esc_attr($thumb['linktitle']).'" ' : '';
1824
  $psourl = wppa_switch( 'film_overrule' ) && $thumb['linkurl'] ? 'href="'.$thumb['linkurl'].'" '.$target.$psotitle : '';
1825
  $imgalt = wppa_get_imgalt( $thumb['id'] );
 
1826
 
1827
  if ( wppa_opt( 'film_linktype' ) == 'lightbox' ) {
1828
  // $title = esc_attr( wppa_zoom_in( $thumb['id'] ) );
5
  * Various funcions to display a thumbnail image
6
  * Contains all possible frontend thumbnail types
7
  *
8
+ * Version 7.1.05
9
  *
10
  */
11
 
1081
  $is_video = wppa_is_video( $id );
1082
  $has_audio = wppa_has_audio( $id );
1083
  $imgsrc = wppa_get_thumb_path( $id );
1084
+ $is_pdf = wppa_is_pdf( $id );
1085
 
1086
  if ( ! wppa_is_video( $id ) && ! is_file( $imgsrc ) ) {
1087
  $result .= '<div' .
1597
  // Get the video and audio bodies
1598
  $videobody = $id ? wppa_get_video_body( $id ) : '';
1599
  $audiobody = $id ? wppa_get_audio_body( $id ) : '';
1600
+ $is_pdf = $id ? wppa_is_pdf( $id ) : '';
1601
 
1602
  // Open container if an image must be displayed
1603
  if ( $display == 'thumbs' ) {
1825
  $psotitle = $thumb['linktitle'] ? 'title="'.esc_attr($thumb['linktitle']).'" ' : '';
1826
  $psourl = wppa_switch( 'film_overrule' ) && $thumb['linkurl'] ? 'href="'.$thumb['linkurl'].'" '.$target.$psotitle : '';
1827
  $imgalt = wppa_get_imgalt( $thumb['id'] );
1828
+ $is_pdf = wppa_is_pdf( $id );
1829
 
1830
  if ( wppa_opt( 'film_linktype' ) == 'lightbox' ) {
1831
  // $title = esc_attr( wppa_zoom_in( $thumb['id'] ) );
wppa-wrappers.php CHANGED
@@ -5,7 +5,7 @@
5
  * Contains wrappers for standard php functions
6
  * For security and bug reasons
7
  *
8
- * Version 7.1.04
9
  *
10
  */
11
 
@@ -412,16 +412,16 @@ global $wp_filesystem;
412
  function wppa_is_dir( $dir ) {
413
  global $wp_filesystem;
414
 
415
- return is_dir($dir);
416
- /*
417
  if ( ! wppa_is_path_safe( $dir ) ) {
418
  wppa_log( 'Err', 'Unsafe path detected in wppa_is_dir(): ' . sanitize_text_field( $dir ), true );
419
  return false;
420
  }
421
 
422
  wppa_init_fs();
 
 
 
423
  return $wp_filesystem->is_dir( $dir );
424
- */
425
  }
426
 
427
  // Wrapper for is_file
@@ -434,6 +434,9 @@ global $wp_filesystem;
434
  }
435
 
436
  wppa_init_fs();
 
 
 
437
  return $wp_filesystem->is_file( $path );
438
  }
439
 
5
  * Contains wrappers for standard php functions
6
  * For security and bug reasons
7
  *
8
+ * Version 7.1.05
9
  *
10
  */
11
 
412
  function wppa_is_dir( $dir ) {
413
  global $wp_filesystem;
414
 
 
 
415
  if ( ! wppa_is_path_safe( $dir ) ) {
416
  wppa_log( 'Err', 'Unsafe path detected in wppa_is_dir(): ' . sanitize_text_field( $dir ), true );
417
  return false;
418
  }
419
 
420
  wppa_init_fs();
421
+ if ( ! $wp_filesystem->exists( $dir ) ) {
422
+ return false;
423
+ }
424
  return $wp_filesystem->is_dir( $dir );
 
425
  }
426
 
427
  // Wrapper for is_file
434
  }
435
 
436
  wppa_init_fs();
437
+ if ( ! $wp_filesystem->exists( $path ) ) {
438
+ return false;
439
+ }
440
  return $wp_filesystem->is_file( $path );
441
  }
442
 
wppa.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  * Plugin Name: WP Photo Album Plus
4
  * Description: Easily manage and display your photo albums and slideshows within your WordPress site.
5
- * Version: 7.1.04.002
6
  * Author: J.N. Breetvelt a.k.a. OpaJaap
7
  * Author URI: http://wppa.opajaap.nl/
8
  * Plugin URI: http://wordpress.org/extend/plugins/wp-photo-album-plus/
@@ -22,8 +22,8 @@ global $wpdb;
22
  global $wp_version;
23
 
24
  /* WPPA GLOBALS */
25
- global $wppa_revno; $wppa_revno = '7104'; // WPPA db version
26
- global $wppa_api_version; $wppa_api_version = '7.1.04.002'; // WPPA software version
27
 
28
  /* start timers */
29
  add_action( 'plugins_loaded', 'wppa_init_timer' );
2
  /*
3
  * Plugin Name: WP Photo Album Plus
4
  * Description: Easily manage and display your photo albums and slideshows within your WordPress site.
5
+ * Version: 7.1.05.006
6
  * Author: J.N. Breetvelt a.k.a. OpaJaap
7
  * Author URI: http://wppa.opajaap.nl/
8
  * Plugin URI: http://wordpress.org/extend/plugins/wp-photo-album-plus/
22
  global $wp_version;
23
 
24
  /* WPPA GLOBALS */
25
+ global $wppa_revno; $wppa_revno = '7105'; // WPPA db version
26
+ global $wppa_api_version; $wppa_api_version = '7.1.05.006'; // WPPA software version
27
 
28
  /* start timers */
29
  add_action( 'plugins_loaded', 'wppa_init_timer' );