jQuery Pin It Button for Images - Version 1.34

Version Description

  • Release 2014-06-16
  • Added support for plugins lazy loading images
Download this release

Release Info

Developer mrsztuczkens
Plugin Icon wp plugin jQuery Pin It Button for Images
Version 1.34
Comparing to
See all releases

Code changes from version 1.33 to 1.34

includes/admin/views/admin.php CHANGED
@@ -12,7 +12,6 @@ foreach( $settings_tabs as $tab_name => $tab_settings)
12
 
13
  $tab = false == $tab_found ? 'selection_options' : $tab;
14
  $current_settings = $settings_tabs[ $tab ];
15
- //TODO dokończyć pętlę
16
  ?>
17
  <div id="icon-plugins" class="icon32"></div>
18
  <h2 class="nav-tab-wrapper">
@@ -22,6 +21,7 @@ $current_settings = $settings_tabs[ $tab ];
22
  </h2>
23
 
24
  <p>
 
25
  <a href="http://mrsztuczkens.me/jquery-pin-it-button-for-images-customization/" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Plugin Customization', 'jpibfi' ); ?></b></a>
26
  <a href="http://mrsztuczkens.me/jquery-pin-it-button-for-images-extensions/" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Plugin Extensions', 'jpibfi' ); ?></b></a>
27
  <a href="http://bit.ly/Uw2mEP" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Donate', 'jpibfi' ); ?></b></a>
12
 
13
  $tab = false == $tab_found ? 'selection_options' : $tab;
14
  $current_settings = $settings_tabs[ $tab ];
 
15
  ?>
16
  <div id="icon-plugins" class="icon32"></div>
17
  <h2 class="nav-tab-wrapper">
21
  </h2>
22
 
23
  <p>
24
+ <a href="http://mrsztuczkens.me/how-to-get-the-most-out-of-jpibfi/" class="button" target="_blank" rel="nofollow"><b><?php _e( 'How to Get The Most Out of JPIBFI', 'jpibfi' ); ?></b></a>
25
  <a href="http://mrsztuczkens.me/jquery-pin-it-button-for-images-customization/" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Plugin Customization', 'jpibfi' ); ?></b></a>
26
  <a href="http://mrsztuczkens.me/jquery-pin-it-button-for-images-extensions/" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Plugin Extensions', 'jpibfi' ); ?></b></a>
27
  <a href="http://bit.ly/Uw2mEP" class="button" target="_blank" rel="nofollow"><b><?php _e( 'Donate', 'jpibfi' ); ?></b></a>
jquery-pin-it-button-for-images.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: jQuery Pin It Button For Images
4
  Plugin URI: http://mrsztuczkens.me/jpibfi/
5
  Description: Highlights images on hover and adds a "Pin It" button over them for easy pinning.
6
  Author: Marcin Skrzypiec
7
- Version: 1.33
8
  Author URI: http://mrsztuczkens.me/
9
  */
10
 
@@ -47,7 +47,7 @@ if ( ! class_exists( 'jQuery_Pin_It_Button_For_Images' ) ) :
47
  /* VERSIONING */
48
  //plugin version
49
  if ( ! defined( 'JPIBFI_VERSION' ) )
50
- define( 'JPIBFI_VERSION', '1.33' );
51
 
52
  //used in versioning css and js files
53
  if ( ! defined( 'JPIBFI_VERSION_MINOR' ) )
4
  Plugin URI: http://mrsztuczkens.me/jpibfi/
5
  Description: Highlights images on hover and adds a "Pin It" button over them for easy pinning.
6
  Author: Marcin Skrzypiec
7
+ Version: 1.34
8
  Author URI: http://mrsztuczkens.me/
9
  */
10
 
47
  /* VERSIONING */
48
  //plugin version
49
  if ( ! defined( 'JPIBFI_VERSION' ) )
50
+ define( 'JPIBFI_VERSION', '1.34' );
51
 
52
  //used in versioning css and js files
53
  if ( ! defined( 'JPIBFI_VERSION_MINOR' ) )
js/script.js CHANGED
@@ -55,10 +55,6 @@
55
  var imageCount = 0;
56
  $elements.each(function () {
57
  var $image = $(this);
58
- if ( this.clientWidth < jpibfi.settings.minImageWidth || this.clientHeight < jpibfi.settings.minImageHeight ) {
59
- $image.removeAttr( 'data-jpibfi-indexer' );
60
- return;
61
- }
62
  if ( jpibfi.settings.mode == 'static' )
63
  jpibfiCreateAndShowOverlayDiv( $image, jpibfi.settings.buttonPosition );
64
 
@@ -119,10 +115,15 @@
119
  jpibfiLog( 'Adding static mode delegates');
120
 
121
  $( document).delegate( 'div.pinit-overlay', 'hover', function( event ) {
122
- var hover = event.type === 'mouseenter';
123
  var indexer = $(this).data("jpibfi-indexer");
 
 
 
 
 
 
124
  $('.pinit-button[data-jpibfi-indexer="' + indexer + '"]').toggle( hover );
125
- $('img[data-jpibfi-indexer="' + indexer + '"]').toggleClass( 'pinit-hover', hover );
126
  });
127
 
128
  } else if ( 'dynamic' == jpibfi.settings.mode ) {
@@ -145,8 +146,11 @@
145
 
146
  $( document ).delegate( 'img[data-jpibfi-indexer]', 'mouseenter', function() {
147
  var $image = $( this );
148
- var indexer = $image.data( 'jpibfi-indexer' );
149
 
 
 
 
 
150
  var $button = $('a.pinit-button[data-jpibfi-indexer="' + indexer + '"]');
151
 
152
  if ( $button.length == 0 ) {
@@ -216,7 +220,7 @@
216
  href: '#',
217
  "class": 'pinit-button',
218
  "data-jpibfi-indexer": indexer,
219
- text: "Pin It"
220
  });
221
 
222
  $anchor.click( function(e) {
@@ -260,6 +264,13 @@
260
  return $anchor;
261
  }
262
 
 
 
 
 
 
 
 
263
 
264
  function jpibfiCreateAndShowOverlayDiv( $image, buttonPosition ) {
265
  var position = $image.offset();
55
  var imageCount = 0;
56
  $elements.each(function () {
57
  var $image = $(this);
 
 
 
 
58
  if ( jpibfi.settings.mode == 'static' )
59
  jpibfiCreateAndShowOverlayDiv( $image, jpibfi.settings.buttonPosition );
60
 
115
  jpibfiLog( 'Adding static mode delegates');
116
 
117
  $( document).delegate( 'div.pinit-overlay', 'hover', function( event ) {
 
118
  var indexer = $(this).data("jpibfi-indexer");
119
+ var $image = $('img[data-jpibfi-indexer="' + indexer + '"]');
120
+
121
+ if (jpibfiCheckImageSize ( $image ) == false )
122
+ return;
123
+
124
+ var hover = event.type === 'mouseenter';
125
  $('.pinit-button[data-jpibfi-indexer="' + indexer + '"]').toggle( hover );
126
+ $image.toggleClass( 'pinit-hover', hover );
127
  });
128
 
129
  } else if ( 'dynamic' == jpibfi.settings.mode ) {
146
 
147
  $( document ).delegate( 'img[data-jpibfi-indexer]', 'mouseenter', function() {
148
  var $image = $( this );
 
149
 
150
+ if (jpibfiCheckImageSize ( $image) == false )
151
+ return;
152
+
153
+ var indexer = $image.data( 'jpibfi-indexer' );
154
  var $button = $('a.pinit-button[data-jpibfi-indexer="' + indexer + '"]');
155
 
156
  if ( $button.length == 0 ) {
220
  href: '#',
221
  "class": 'pinit-button',
222
  "data-jpibfi-indexer": indexer,
223
+ text: ""
224
  });
225
 
226
  $anchor.click( function(e) {
264
  return $anchor;
265
  }
266
 
267
+ function jpibfiCheckImageSize( $image ) {
268
+ if ( $image[0].clientWidth < jpibfi.settings.minImageWidth || $image[0].clientHeight < jpibfi.settings.minImageHeight ) {
269
+ $image.removeAttr( 'data-jpibfi-indexer' );
270
+ return false;
271
+ }
272
+ return true;
273
+ }
274
 
275
  function jpibfiCreateAndShowOverlayDiv( $image, buttonPosition ) {
276
  var position = $image.offset();
js/script.min.js CHANGED
@@ -1 +1 @@
1
- (function(e){"use strict";window.jpibfi=function(){function a(t){var n=jQuery("<a/>",{href:"#","class":"pinit-button","data-jpibfi-indexer":t,text:"Pin It"});n.click(function(t){p("Pin In button clicked");var n=e(this).data("jpibfi-indexer");var r=e('img[data-jpibfi-indexer="'+n+'"]');var i="",s="",o="";if(u.settings.usePostUrl){var a=r.closest(".jpibfi_container").find("input.jpibfi").first();if(a.length){s=a.data("jpibfi-description");o=a.data("jpibfi-url")}}o=o||u.settings.pageUrl;if(u.settings.descriptionOption==3)i=r.attr("title")||r.attr("alt");else if(u.settings.descriptionOption==2)i=s||u.settings.pageDescription;else if(u.settings.descriptionOption==4)i=u.settings.siteTitle;else if(u.settings.descriptionOption==5)i=r.data("jpibfi-description");i=i||s||u.settings.pageTitle;var f="http://pinterest.com/pin/create/bookmarklet/?is_video="+encodeURIComponent("false")+"&url="+encodeURIComponent(o)+"&media="+encodeURIComponent(u.fn.getImageUrl(r))+"&description="+encodeURIComponent(i);window.open(f,"Pinterest","width=632,height=253,status=0,toolbar=0,menubar=0,location=1,scrollbars=1");return false});return n}function f(e,t){var n=e.offset();var r=l(e,t);e.after(r);r.css({height:e.get(0).clientHeight+"px",width:e.get(0).clientWidth+"px"}).show().offset({left:n.left,top:n.top});return r}function l(e,t){var n=e.data("jpibfi-indexer");return jQuery("<div/>",{"class":"pinit-overlay","data-jpibfi-indexer":n,title:e.attr("title")||"",html:a(n).addClass(c(t))})}function c(e){switch(e){case"0":return"pinit-top-left";case"1":return"pinit-top-right";case"2":return"pinit-bottom-left";case"3":return"pinit-bottom-right";case"4":return"pinit-middle";default:return""}}function h(e){var t=e.split(";");var n="";for(var r=0;r<t.length;r++){if(t[r])n+="."+t[r]+","}if(n)n=n.substr(0,n.length-1);return n}function p(e){if(t&&console&&console.log){if("string"==typeof e||e instanceof String){console.log("jpibfi debug: "+e)}else if("object"==typeof e&&typeof JSON!=="undefined"&&typeof JSON.stringify==="function"){console.log("jpibfi debug: "+JSON.stringify(e,null,4))}else if("object"==typeof e){var n="";for(var r in e)n+=r+": "+e[r]+"\n";console.log("jpibfi debug: "+n)}}}var t=false;var n={};var r={};var i="";var s="*";var o=0;var u={};u.settings={};u.fn={};u.fn.getImageUrl=function(e){return e.data("media")||e.attr("src")};u.addImages=function(t){p(">>addImages");var n=e(t).not(i).not("[data-jpibfi-indexer]").filter(s);n.each(function(){e(this).attr("data-jpibfi-indexer",o);o++});p("Images caught by selectors: "+o);return n};u.prepareImages=function(t){p(">>Add Elements");p("Elements: "+t.length);p("Min width:"+u.settings.minImageWidth);p("Min height:"+u.settings.minImageHeight);var n=0;t.each(function(){var t=e(this);if(this.clientWidth<u.settings.minImageWidth||this.clientHeight<u.settings.minImageHeight){t.removeAttr("data-jpibfi-indexer");return}if(u.settings.mode=="static")f(t,u.settings.buttonPosition);n++});p("Images caught after filtering: "+n)};u.removeAllImages=function(){p("Remove Elements called");e("div.pinit-overlay").remove()};u.init=function(o){u.settings={pageUrl:document.URL,pageTitle:document.title,pageDescription:e('meta[name="description"]').attr("content")||""};u.settings=e.extend(u.settings,o);n={height:parseInt(o.pinImageHeight),width:parseInt(o.pinImageWidth)};r={top:parseInt(o.buttonMarginTop),right:parseInt(o.buttonMarginRight),bottom:parseInt(o.buttonMarginBottom),left:parseInt(o.buttonMarginLeft)};t="1"==o.debug;p(u.settings);p(n);p(r);var f=e(".jpibfi").closest(u.settings.containerSelector).addClass("jpibfi_container");p("Number of containers added: "+f.length);i=h(u.settings.disabledClasses);s=h(u.settings.enabledClasses)||"*";p("Filter selector: "+s);p("Not selector: "+i);if("static"==u.settings.mode){p("Adding static mode delegates");e(document).delegate("div.pinit-overlay","hover",function(t){var n=t.type==="mouseenter";var r=e(this).data("jpibfi-indexer");e('.pinit-button[data-jpibfi-indexer="'+r+'"]').toggle(n);e('img[data-jpibfi-indexer="'+r+'"]').toggleClass("pinit-hover",n)})}else if("dynamic"==u.settings.mode){p("Adding dynamic mode delegates");e(document).delegate("a.pinit-button","mouseenter",function(){var t=e(this);clearTimeout(t.data("jpibfi-timeoutId"))});e(document).delegate("a.pinit-button","mouseleave",function(){var t=e(this);var n=setTimeout(function(){t.remove();e('img[data-jpibfi-indexer="'+t.data("jpibfi-indexer")+'"]').removeClass("pinit-hover")},100);t.data("jpibfi-timeoutId",n)});e(document).delegate("img[data-jpibfi-indexer]","mouseenter",function(){var t=e(this);var i=t.data("jpibfi-indexer");var s=e('a.pinit-button[data-jpibfi-indexer="'+i+'"]');if(s.length==0){s=a(i);var o=t.offset();var f={width:t.get(0).clientWidth,height:t.get(0).clientHeight};switch(u.settings.buttonPosition){case"0":o.left+=r.left;o.top+=r.top;break;case"1":o.top+=r.top;o.left=o.left+f.width-r.right-n.width;break;case"2":o.left+=r.left;o.top=o.top+f.height-r.bottom-n.height;break;case"3":o.left=o.left+f.width-r.right-n.width;o.top=o.top+f.height-r.bottom-n.height;break;case"4":o.left=Math.round(o.left+f.width/2-n.width/2);o.top=Math.round(o.top+f.height/2-n.height/2);break}t.after(s);s.show().offset({left:o.left,top:o.top})}else{clearTimeout(s.data("jpibfi-timeoutId"))}t.addClass("pinit-hover")});e(document).delegate("img[data-jpibfi-indexer]","mouseleave",function(){var t=e(this).data("jpibfi-indexer");var n=e('a.pinit-button[data-jpibfi-indexer="'+t+'"]');var r=setTimeout(function(){n.remove();e('img[data-jpibfi-indexer="'+n.data("jpibfi-indexer")+'"]').removeClass("pinit-hover")},100);n.data("jpibfi-timeoutId",r)})}};return u;}()})(jQuery);(function(e){"use strict";e(document).ready(function(){jpibfi.init(jpibfi_options);e(document).trigger("jpibfi_beforeAddImages",{});jpibfi.addImages(jpibfi_options.imageSelector);e(document).trigger("jpibfi_afterAddImages",{});e(window).load(function(){jpibfi.prepareImages(e("img[data-jpibfi-indexer]"))});e(window).resize(function(){jpibfi.removeAllImages();jpibfi.prepareImages(e("img[data-jpibfi-indexer]"))})})})(jQuery)
1
+ (function(e){"use strict";window.jpibfi=function(){function a(t){var n=jQuery("<a/>",{href:"#","class":"pinit-button","data-jpibfi-indexer":t,text:""});n.click(function(t){d("Pin In button clicked");var n=e(this).data("jpibfi-indexer");var r=e('img[data-jpibfi-indexer="'+n+'"]');var i="",s="",o="";if(u.settings.usePostUrl){var a=r.closest(".jpibfi_container").find("input.jpibfi").first();if(a.length){s=a.data("jpibfi-description");o=a.data("jpibfi-url")}}o=o||u.settings.pageUrl;if(u.settings.descriptionOption==3)i=r.attr("title")||r.attr("alt");else if(u.settings.descriptionOption==2)i=s||u.settings.pageDescription;else if(u.settings.descriptionOption==4)i=u.settings.siteTitle;else if(u.settings.descriptionOption==5)i=r.data("jpibfi-description");i=i||s||u.settings.pageTitle;var f="http://pinterest.com/pin/create/bookmarklet/?is_video="+encodeURIComponent("false")+"&url="+encodeURIComponent(o)+"&media="+encodeURIComponent(u.fn.getImageUrl(r))+"&description="+encodeURIComponent(i);window.open(f,"Pinterest","width=632,height=253,status=0,toolbar=0,menubar=0,location=1,scrollbars=1");return false});return n}function f(e){if(e[0].clientWidth<u.settings.minImageWidth||e[0].clientHeight<u.settings.minImageHeight){e.removeAttr("data-jpibfi-indexer");return false}return true}function l(e,t){var n=e.offset();var r=c(e,t);e.after(r);r.css({height:e.get(0).clientHeight+"px",width:e.get(0).clientWidth+"px"}).show().offset({left:n.left,top:n.top});return r}function c(e,t){var n=e.data("jpibfi-indexer");return jQuery("<div/>",{"class":"pinit-overlay","data-jpibfi-indexer":n,title:e.attr("title")||"",html:a(n).addClass(h(t))})}function h(e){switch(e){case"0":return"pinit-top-left";case"1":return"pinit-top-right";case"2":return"pinit-bottom-left";case"3":return"pinit-bottom-right";case"4":return"pinit-middle";default:return""}}function p(e){var t=e.split(";");var n="";for(var r=0;r<t.length;r++){if(t[r])n+="."+t[r]+","}if(n)n=n.substr(0,n.length-1);return n}function d(e){if(t&&console&&console.log){if("string"==typeof e||e instanceof String){console.log("jpibfi debug: "+e)}else if("object"==typeof e&&typeof JSON!=="undefined"&&typeof JSON.stringify==="function"){console.log("jpibfi debug: "+JSON.stringify(e,null,4))}else if("object"==typeof e){var n="";for(var r in e)n+=r+": "+e[r]+"\n";console.log("jpibfi debug: "+n)}}}var t=false;var n={};var r={};var i="";var s="*";var o=0;var u={};u.settings={};u.fn={};u.fn.getImageUrl=function(e){return e.data("media")||e.attr("src")};u.addImages=function(t){d(">>addImages");var n=e(t).not(i).not("[data-jpibfi-indexer]").filter(s);n.each(function(){e(this).attr("data-jpibfi-indexer",o);o++});d("Images caught by selectors: "+o);return n};u.prepareImages=function(t){d(">>Add Elements");d("Elements: "+t.length);d("Min width:"+u.settings.minImageWidth);d("Min height:"+u.settings.minImageHeight);var n=0;t.each(function(){var t=e(this);if(u.settings.mode=="static")l(t,u.settings.buttonPosition);n++});d("Images caught after filtering: "+n)};u.removeAllImages=function(){d("Remove Elements called");e("div.pinit-overlay").remove()};u.init=function(o){u.settings={pageUrl:document.URL,pageTitle:document.title,pageDescription:e('meta[name="description"]').attr("content")||""};u.settings=e.extend(u.settings,o);n={height:parseInt(o.pinImageHeight),width:parseInt(o.pinImageWidth)};r={top:parseInt(o.buttonMarginTop),right:parseInt(o.buttonMarginRight),bottom:parseInt(o.buttonMarginBottom),left:parseInt(o.buttonMarginLeft)};t="1"==o.debug;d(u.settings);d(n);d(r);var l=e(".jpibfi").closest(u.settings.containerSelector).addClass("jpibfi_container");d("Number of containers added: "+l.length);i=p(u.settings.disabledClasses);s=p(u.settings.enabledClasses)||"*";d("Filter selector: "+s);d("Not selector: "+i);if("static"==u.settings.mode){d("Adding static mode delegates");e(document).delegate("div.pinit-overlay","hover",function(t){var n=e(this).data("jpibfi-indexer");var r=e('img[data-jpibfi-indexer="'+n+'"]');if(f(r)==false)return;var i=t.type==="mouseenter";e('.pinit-button[data-jpibfi-indexer="'+n+'"]').toggle(i);r.toggleClass("pinit-hover",i)})}else if("dynamic"==u.settings.mode){d("Adding dynamic mode delegates");e(document).delegate("a.pinit-button","mouseenter",function(){var t=e(this);clearTimeout(t.data("jpibfi-timeoutId"))});e(document).delegate("a.pinit-button","mouseleave",function(){var t=e(this);var n=setTimeout(function(){t.remove();e('img[data-jpibfi-indexer="'+t.data("jpibfi-indexer")+'"]').removeClass("pinit-hover")},100);t.data("jpibfi-timeoutId",n)});e(document).delegate("img[data-jpibfi-indexer]","mouseenter",function(){var t=e(this);if(f(t)==false)return;var i=t.data("jpibfi-indexer");var s=e('a.pinit-button[data-jpibfi-indexer="'+i+'"]');if(s.length==0){s=a(i);var o=t.offset();var l={width:t.get(0).clientWidth,height:t.get(0).clientHeight};switch(u.settings.buttonPosition){case"0":o.left+=r.left;o.top+=r.top;break;case"1":o.top+=r.top;o.left=o.left+l.width-r.right-n.width;break;case"2":o.left+=r.left;o.top=o.top+l.height-r.bottom-n.height;break;case"3":o.left=o.left+l.width-r.right-n.width;o.top=o.top+l.height-r.bottom-n.height;break;case"4":o.left=Math.round(o.left+l.width/2-n.width/2);o.top=Math.round(o.top+l.height/2-n.height/2);break}t.after(s);s.show().offset({left:o.left,top:o.top})}else{clearTimeout(s.data("jpibfi-timeoutId"))}t.addClass("pinit-hover")});e(document).delegate("img[data-jpibfi-indexer]","mouseleave",function(){var t=e(this).data("jpibfi-indexer");var n=e('a.pinit-button[data-jpibfi-indexer="'+t+'"]');var r=setTimeout(function(){n.remove();e('img[data-jpibfi-indexer="'+n.data("jpibfi-indexer")+'"]').removeClass("pinit-hover")},100);n.data("jpibfi-timeoutId",r)})}};return u;}()})(jQuery);(function(e){"use strict";e(document).ready(function(){jpibfi.init(jpibfi_options);e(document).trigger("jpibfi_beforeAddImages",{});jpibfi.addImages(jpibfi_options.imageSelector);e(document).trigger("jpibfi_afterAddImages",{});e(window).load(function(){jpibfi.prepareImages(e("img[data-jpibfi-indexer]"))});e(window).resize(function(){jpibfi.removeAllImages();jpibfi.prepareImages(e("img[data-jpibfi-indexer]"))})})})(jQuery)
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://bit.ly/Uw2mEP
4
  Tags: pinterest, pin it, button, image, images, pinit, social media, hover, click, photo, photos
5
  Requires at least: 3.3.0
6
  Tested up to: 3.9
7
- Stable tag: 1.33
8
  License: GPLv2 or later
9
 
10
  Highlights images on hover and adds a Pinterest "Pin It" button over them for easy pinning.
@@ -76,6 +76,10 @@ Please report them in the plugin's support forum on Wordpress.org.
76
 
77
  == Changelog ==
78
 
 
 
 
 
79
  = 1.33 =
80
  * Release 2014-05-18
81
  * Minor changes
@@ -206,6 +210,9 @@ Please report them in the plugin's support forum on Wordpress.org.
206
 
207
  == Upgrade Notice ==
208
 
 
 
 
209
  = 1.33 =
210
  Minor addition.
211
 
4
  Tags: pinterest, pin it, button, image, images, pinit, social media, hover, click, photo, photos
5
  Requires at least: 3.3.0
6
  Tested up to: 3.9
7
+ Stable tag: 1.34
8
  License: GPLv2 or later
9
 
10
  Highlights images on hover and adds a Pinterest "Pin It" button over them for easy pinning.
76
 
77
  == Changelog ==
78
 
79
+ = 1.34 =
80
+ * Release 2014-06-16
81
+ * Added support for plugins lazy loading images
82
+
83
  = 1.33 =
84
  * Release 2014-05-18
85
  * Minor changes
210
 
211
  == Upgrade Notice ==
212
 
213
+ = 1.34 =
214
+ Minor update.
215
+
216
  = 1.33 =
217
  Minor addition.
218