Photo Gallery by WD – Responsive Photo Gallery - Version 1.3.15

Version Description

  • Added: Images bulk rotate.
  • Fixed: Messages in masonry album view.
  • Fixed: Show info on image change effect end.
Download this release

Release Info

Developer webdorado
Plugin Icon 128x128 Photo Gallery by WD – Responsive Photo Gallery
Version 1.3.15
Comparing to
See all releases

Code changes from version 1.3.14 to 1.3.15

admin/controllers/BWGControllerGalleries_bwg.php CHANGED
@@ -1109,6 +1109,91 @@ class BWGControllerGalleries_bwg {
1109
  }
1110
  }
1111
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1112
  ////////////////////////////////////////////////////////////////////////////////////////
1113
  // Getters & Setters //
1114
  ////////////////////////////////////////////////////////////////////////////////////////
1109
  }
1110
  }
1111
 
1112
+ public function rotate_left() {
1113
+ $this->rotate(90);
1114
+ }
1115
+
1116
+ public function rotate_right() {
1117
+ $this->rotate(270);
1118
+ }
1119
+
1120
+ public function rotate($edit_type) {
1121
+ global $WD_BWG_UPLOAD_DIR;
1122
+ global $wpdb;
1123
+ $flag = FALSE;
1124
+ $gallery_id = ((isset($_POST['current_id'])) ? esc_html(stripslashes($_POST['current_id'])) : 0);
1125
+ $images_data = $wpdb->get_results($wpdb->prepare('SELECT id, image_url, thumb_url FROM ' . $wpdb->prefix . 'bwg_image WHERE gallery_id="%d"', $gallery_id));
1126
+ @ini_set('memory_limit', '-1');
1127
+ foreach ($images_data as $image_data) {
1128
+ if (isset($_POST['check_' . $image_data->id]) || isset($_POST['check_all_items'])) {
1129
+ $flag = TRUE;
1130
+ $image_data->image_url = stripcslashes($image_data->image_url);
1131
+ $filename = htmlspecialchars_decode(ABSPATH . $WD_BWG_UPLOAD_DIR . $image_data->image_url, ENT_COMPAT | ENT_QUOTES);
1132
+ $thumb_filename = htmlspecialchars_decode(ABSPATH . $WD_BWG_UPLOAD_DIR . $image_data->thumb_url, ENT_COMPAT | ENT_QUOTES);
1133
+ list($width_rotate, $height_rotate, $type_rotate) = getimagesize($filename);
1134
+ if ($edit_type == '270' || $edit_type == '90') {
1135
+ if ($type_rotate == 2) {
1136
+ $source = imagecreatefromjpeg($filename);
1137
+ $thumb_source = imagecreatefromjpeg($thumb_filename);
1138
+ $rotate = imagerotate($source, $edit_type, 0);
1139
+ $thumb_rotate = imagerotate($thumb_source, $edit_type, 0);
1140
+ imagejpeg($thumb_rotate, $thumb_filename, 90);
1141
+ imagejpeg($rotate, $filename, 100);
1142
+ imagedestroy($source);
1143
+ imagedestroy($rotate);
1144
+ imagedestroy($thumb_source);
1145
+ imagedestroy($thumb_rotate);
1146
+ }
1147
+ elseif ($type_rotate == 3) {
1148
+ $source = imagecreatefrompng($filename);
1149
+ $thumb_source = imagecreatefrompng($thumb_filename);
1150
+ imagealphablending($source, FALSE);
1151
+ imagealphablending($thumb_source, FALSE);
1152
+ imagesavealpha($source, TRUE);
1153
+ imagesavealpha($thumb_source, TRUE);
1154
+ $rotate = imagerotate($source, $edit_type, imageColorAllocateAlpha($source, 0, 0, 0, 127));
1155
+ $thumb_rotate = imagerotate($thumb_source, $edit_type, imageColorAllocateAlpha($source, 0, 0, 0, 127));
1156
+ imagealphablending($rotate, FALSE);
1157
+ imagealphablending($thumb_rotate, FALSE);
1158
+ imagesavealpha($rotate, TRUE);
1159
+ imagesavealpha($thumb_rotate, TRUE);
1160
+ imagepng($rotate, $filename, 9);
1161
+ imagepng($thumb_rotate, $thumb_filename, 9);
1162
+ imagedestroy($source);
1163
+ imagedestroy($rotate);
1164
+ imagedestroy($thumb_source);
1165
+ imagedestroy($thumb_rotate);
1166
+ }
1167
+ elseif ($type_rotate == 1) {
1168
+ $source = imagecreatefromgif($filename);
1169
+ $thumb_source = imagecreatefromgif($thumb_filename);
1170
+ imagealphablending($source, FALSE);
1171
+ imagealphablending($thumb_source, FALSE);
1172
+ imagesavealpha($source, TRUE);
1173
+ imagesavealpha($thumb_source, TRUE);
1174
+ $rotate = imagerotate($source, $edit_type, imageColorAllocateAlpha($source, 0, 0, 0, 127));
1175
+ $thumb_rotate = imagerotate($thumb_source, $edit_type, imageColorAllocateAlpha($source, 0, 0, 0, 127));
1176
+ imagealphablending($rotate, FALSE);
1177
+ imagealphablending($thumb_rotate, FALSE);
1178
+ imagesavealpha($rotate, TRUE);
1179
+ imagesavealpha($thumb_rotate, TRUE);
1180
+ imagegif($rotate, $filename);
1181
+ imagegif($thumb_rotate, $thumb_filename);
1182
+ imagedestroy($source);
1183
+ imagedestroy($rotate);
1184
+ imagedestroy($thumb_source);
1185
+ imagedestroy($thumb_rotate);
1186
+ }
1187
+ }
1188
+ }
1189
+ }
1190
+ if ($flag == false) {
1191
+ echo WDWLibrary::message(__('You must select at least one item.', 'bwg_back'), 'wd_error');
1192
+ }
1193
+ else {
1194
+ echo WDWLibrary::message(__('Items successfully rotated.', 'bwg_back'), 'wd_updated');
1195
+ }
1196
+ }
1197
  ////////////////////////////////////////////////////////////////////////////////////////
1198
  // Getters & Setters //
1199
  ////////////////////////////////////////////////////////////////////////////////////////
admin/views/BWGViewGalleries_bwg.php CHANGED
@@ -378,7 +378,7 @@ class BWGViewGalleries_bwg {
378
  span_edit_recover.setAttribute('class', "edit_thumb");
379
  div_edit.appendChild(span_edit_recover);
380
  var a_recover = document.createElement('a');
381
- a_recover.setAttribute('onclick', 'if (confirm("<?php echo addslashes(__("Do you want to reset the image?", 'bwg_back')); ?>")) { spider_set_input_value("ajax_task", "recover"); spider_set_input_value("image_current_id", "' + bwg_j + '"); spider_ajax_save("galleries_form");} return false;');
382
  a_recover.innerHTML = "<?php _e('Reset', 'bwg_back'); ?>";
383
  span_edit_recover.appendChild(a_recover);
384
  }
@@ -712,6 +712,8 @@ class BWGViewGalleries_bwg {
712
  'image_set_watermark' => __('Set Watermark', 'bwg_back'),
713
  'image_get_resize' => __('Resize', 'bwg_back'),
714
  'resize_image_thumb' => __('Recreate Thumbnail', 'bwg_back'),
 
 
715
  'image_recover_all' => __('Reset', 'bwg_back'),
716
  'image_publish_all' => __('Publish', 'bwg_back'),
717
  'image_unpublish_all' => __('Unpublish', 'bwg_back'),
378
  span_edit_recover.setAttribute('class', "edit_thumb");
379
  div_edit.appendChild(span_edit_recover);
380
  var a_recover = document.createElement('a');
381
+ a_recover.setAttribute('onclick', 'if (confirm("<?php echo addslashes(__('Do you want to reset the image?', 'bwg_back')); ?>")) { spider_set_input_value("ajax_task", "recover"); spider_set_input_value("image_current_id", "' + bwg_j + '"); spider_ajax_save("galleries_form");} return false;');
382
  a_recover.innerHTML = "<?php _e('Reset', 'bwg_back'); ?>";
383
  span_edit_recover.appendChild(a_recover);
384
  }
712
  'image_set_watermark' => __('Set Watermark', 'bwg_back'),
713
  'image_get_resize' => __('Resize', 'bwg_back'),
714
  'resize_image_thumb' => __('Recreate Thumbnail', 'bwg_back'),
715
+ 'rotate_left' => __('Rotate left', 'bwg_back'),
716
+ 'rotate_right' => __('Rotate right', 'bwg_back'),
717
  'image_recover_all' => __('Reset', 'bwg_back'),
718
  'image_publish_all' => __('Publish', 'bwg_back'),
719
  'image_unpublish_all' => __('Unpublish', 'bwg_back'),
frontend/views/BWGViewGalleryBox.php CHANGED
@@ -887,7 +887,7 @@ class BWGViewGalleryBox {
887
  <img class="bwg_popup_image bwg_popup_watermark" src="<?php echo site_url() . '/' . $WD_BWG_UPLOAD_DIR . $image_row->image_url; ?>" alt="<?php echo $image_row->alt; ?>" />
888
  <?php
889
  }
890
- else { /*$is_embed*/ ?>
891
  <span class="bwg_popup_embed bwg_popup_watermark" style="diplay: table; table-layout: fixed;">
892
  <?php
893
  if ($is_embed_instagram_post) {
@@ -1098,7 +1098,7 @@ class BWGViewGalleryBox {
1098
  jQuery(".bwg_slider").removeAttr('style');
1099
  jQuery(current_image_class).css({'opacity' : 0, filter: 'Alpha(opacity=0)', 'z-index': 1});
1100
  jQuery(next_image_class).css({'opacity' : 1, filter: 'Alpha(opacity=100)', 'z-index' : 2});
1101
-
1102
  bwg_trans_in_progress = false;
1103
  jQuery(current_image_class).html('');
1104
  if (typeof event_stack !== 'undefined') {
@@ -1132,6 +1132,7 @@ class BWGViewGalleryBox {
1132
  function bwg_none(current_image_class, next_image_class, direction) {
1133
  jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
1134
  jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
 
1135
  /* Set active thumbnail.*/
1136
  jQuery(".bwg_filmstrip_thumbnail").removeClass("bwg_thumb_active").addClass("bwg_thumb_deactive");
1137
  jQuery("#bwg_filmstrip_thumbnail_" + bwg_current_key).removeClass("bwg_thumb_deactive").addClass("bwg_thumb_active");
@@ -1147,7 +1148,11 @@ class BWGViewGalleryBox {
1147
  jQuery(next_image_class).css('transition', 'opacity ' + bwg_transition_duration + 'ms linear');
1148
  jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
1149
  jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
1150
- bwg_change_watermark_container();
 
 
 
 
1151
  }
1152
  else {
1153
  jQuery(current_image_class).animate({'opacity' : 0, 'z-index' : 1}, bwg_transition_duration);
@@ -1160,6 +1165,7 @@ class BWGViewGalleryBox {
1160
 
1161
  bwg_trans_in_progress = false;
1162
  jQuery(current_image_class).html('');
 
1163
  bwg_change_watermark_container(); }
1164
  });
1165
  /* For IE.*/
@@ -1279,6 +1285,7 @@ class BWGViewGalleryBox {
1279
  cur_img.css('opacity', 1);
1280
  grid.remove();
1281
  bwg_trans_in_progress = false;
 
1282
  jQuery(current_image_class).html('');
1283
  if (typeof event_stack !== 'undefined') {
1284
  if (event_stack.length > 0) {
@@ -1308,6 +1315,7 @@ class BWGViewGalleryBox {
1308
  function bwg_change_image(current_key, key, data, from_effect) {
1309
  jQuery("#spider_popup_left").show();
1310
  jQuery("#spider_popup_right").show();
 
1311
  if (<?php echo $option_row->enable_loop; ?> == 0) {
1312
  if (key == (parseInt(data.length) - 1)) {
1313
  jQuery("#spider_popup_right").hide();
@@ -1358,18 +1366,18 @@ class BWGViewGalleryBox {
1358
  /* Change image title, description.*/
1359
  jQuery(".bwg_image_title").html(jQuery('<span style="display: block;" />').html(data[key]["alt"]).text());
1360
  jQuery(".bwg_image_description").html(jQuery('<span style="display: block;" />').html(data[key]["description"]).text());
1361
- jQuery(".bwg_image_info").removeAttr("style");
1362
  if (data[key]["alt"].trim() == "") {
1363
  if (data[key]["description"].trim() == "") {
1364
  jQuery(".bwg_image_info").css("background", "none");
1365
  }
1366
  }
1367
- if (jQuery(".bwg_image_info_container1").css("display") != 'none') {
1368
- jQuery(".bwg_image_info_container1").css("display", "table-cell");
1369
- }
1370
- else {
1371
- jQuery(".bwg_image_info_container1").css("display", "none");
1372
- }
1373
  var current_image_class = jQuery(".bwg_popup_image_spun").css("zIndex") == 2 ? ".bwg_popup_image_spun" : ".bwg_popup_image_second_spun";
1374
  var next_image_class = current_image_class == ".bwg_popup_image_second_spun" ? ".bwg_popup_image_spun" : ".bwg_popup_image_second_spun";
1375
 
887
  <img class="bwg_popup_image bwg_popup_watermark" src="<?php echo site_url() . '/' . $WD_BWG_UPLOAD_DIR . $image_row->image_url; ?>" alt="<?php echo $image_row->alt; ?>" />
888
  <?php
889
  }
890
+ else { /*$is_embed*/ ?>
891
  <span class="bwg_popup_embed bwg_popup_watermark" style="diplay: table; table-layout: fixed;">
892
  <?php
893
  if ($is_embed_instagram_post) {
1098
  jQuery(".bwg_slider").removeAttr('style');
1099
  jQuery(current_image_class).css({'opacity' : 0, filter: 'Alpha(opacity=0)', 'z-index': 1});
1100
  jQuery(next_image_class).css({'opacity' : 1, filter: 'Alpha(opacity=100)', 'z-index' : 2});
1101
+ jQuery(".bwg_image_info").show();
1102
  bwg_trans_in_progress = false;
1103
  jQuery(current_image_class).html('');
1104
  if (typeof event_stack !== 'undefined') {
1132
  function bwg_none(current_image_class, next_image_class, direction) {
1133
  jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
1134
  jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
1135
+ jQuery(".bwg_image_info").show();
1136
  /* Set active thumbnail.*/
1137
  jQuery(".bwg_filmstrip_thumbnail").removeClass("bwg_thumb_active").addClass("bwg_thumb_deactive");
1138
  jQuery("#bwg_filmstrip_thumbnail_" + bwg_current_key).removeClass("bwg_thumb_deactive").addClass("bwg_thumb_active");
1148
  jQuery(next_image_class).css('transition', 'opacity ' + bwg_transition_duration + 'ms linear');
1149
  jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
1150
  jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
1151
+ jQuery(next_image_class).one('webkitTransitionEnd transitionend otransitionend oTransitionEnd mstransitionend', jQuery.proxy(bwg_after_trans));
1152
+ function bwg_after_trans() {
1153
+ jQuery(".bwg_image_info").show();
1154
+ bwg_change_watermark_container();
1155
+ }
1156
  }
1157
  else {
1158
  jQuery(current_image_class).animate({'opacity' : 0, 'z-index' : 1}, bwg_transition_duration);
1165
 
1166
  bwg_trans_in_progress = false;
1167
  jQuery(current_image_class).html('');
1168
+ jQuery(".bwg_image_info").show();
1169
  bwg_change_watermark_container(); }
1170
  });
1171
  /* For IE.*/
1285
  cur_img.css('opacity', 1);
1286
  grid.remove();
1287
  bwg_trans_in_progress = false;
1288
+ jQuery(".bwg_image_info").show();
1289
  jQuery(current_image_class).html('');
1290
  if (typeof event_stack !== 'undefined') {
1291
  if (event_stack.length > 0) {
1315
  function bwg_change_image(current_key, key, data, from_effect) {
1316
  jQuery("#spider_popup_left").show();
1317
  jQuery("#spider_popup_right").show();
1318
+ jQuery(".bwg_image_info").hide();
1319
  if (<?php echo $option_row->enable_loop; ?> == 0) {
1320
  if (key == (parseInt(data.length) - 1)) {
1321
  jQuery("#spider_popup_right").hide();
1366
  /* Change image title, description.*/
1367
  jQuery(".bwg_image_title").html(jQuery('<span style="display: block;" />').html(data[key]["alt"]).text());
1368
  jQuery(".bwg_image_description").html(jQuery('<span style="display: block;" />').html(data[key]["description"]).text());
1369
+ /*jQuery(".bwg_image_info").removeAttr("style");*/
1370
  if (data[key]["alt"].trim() == "") {
1371
  if (data[key]["description"].trim() == "") {
1372
  jQuery(".bwg_image_info").css("background", "none");
1373
  }
1374
  }
1375
+ if (jQuery(".bwg_image_info_container1").css("display") != 'none') {
1376
+ jQuery(".bwg_image_info_container1").css("display", "table-cell");
1377
+ }
1378
+ else {
1379
+ jQuery(".bwg_image_info_container1").css("display", "none");
1380
+ }
1381
  var current_image_class = jQuery(".bwg_popup_image_spun").css("zIndex") == 2 ? ".bwg_popup_image_spun" : ".bwg_popup_image_second_spun";
1382
  var next_image_class = current_image_class == ".bwg_popup_image_second_spun" ? ".bwg_popup_image_spun" : ".bwg_popup_image_second_spun";
1383
 
photo-gallery.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Photo Gallery
5
  * Plugin URI: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
6
  * Description: This plugin is a fully responsive gallery plugin with advanced functionality. It allows having different image galleries for your posts and pages. You can create unlimited number of galleries, combine them into albums, and provide descriptions and tags.
7
- * Version: 1.3.14
8
  * Author: WebDorado
9
  * Author URI: https://web-dorado.com/
10
  * License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
@@ -642,6 +642,7 @@ function bwg_activate() {
642
  `hit_count` bigint(20) NOT NULL,
643
  `redirect_url` varchar(255) NOT NULL,
644
  `pricelist_id` bigint(20) NOT NULL,
 
645
  PRIMARY KEY (`id`)
646
  ) DEFAULT CHARSET=utf8;";
647
  $wpdb->query($bwg_image);
@@ -671,6 +672,7 @@ function bwg_activate() {
671
  `image_enable_page` tinyint(1) NOT NULL,
672
  `image_title_show_hover` varchar(20) NOT NULL,
673
  `ecommerce_icon_show_hover` varchar(20) NOT NULL,
 
674
  `album_column_number` int(4) NOT NULL,
675
  `albums_per_page` int(4) NOT NULL,
676
  `album_title_show_hover` varchar(8) NOT NULL,
@@ -727,7 +729,7 @@ function bwg_activate() {
727
  `popup_enable_google` tinyint(1) NOT NULL,
728
  `popup_enable_ecommerce` tinyint(1) NOT NULL,
729
  `popup_effect_duration` int(4) NOT NULL,
730
-
731
  `watermark_type` varchar(8) NOT NULL,
732
  `watermark_position` varchar(16) NOT NULL,
733
  `watermark_width` int(4) NOT NULL,
@@ -1924,7 +1926,7 @@ function bwg_activate() {
1924
  ));
1925
  }
1926
  $version = WD_BWG_VERSION;
1927
- $new_version = '1.3.14';
1928
  if ($version && version_compare($version, $new_version, '<')) {
1929
  require_once WD_BWG_DIR . "/update/bwg_update.php";
1930
  bwg_update($version);
@@ -1976,7 +1978,7 @@ wp_oembed_add_provider( '#https://instagr(\.am|am\.com)/p/.*#i', 'https://api.in
1976
 
1977
  function bwg_update_hook() {
1978
  $version = WD_BWG_VERSION;
1979
- $new_version = '1.3.14';
1980
  if ($version && version_compare($version, $new_version, '<')) {
1981
  require_once WD_BWG_DIR . "/update/bwg_update.php";
1982
  bwg_update($version);
@@ -2365,7 +2367,7 @@ function wd_bwg_version() {
2365
  $version = substr_replace($version, '2', 0, 1);
2366
  }
2367
  }
2368
- else{
2369
  $version = '';
2370
  }
2371
  return $version;
4
  * Plugin Name: Photo Gallery
5
  * Plugin URI: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
6
  * Description: This plugin is a fully responsive gallery plugin with advanced functionality. It allows having different image galleries for your posts and pages. You can create unlimited number of galleries, combine them into albums, and provide descriptions and tags.
7
+ * Version: 1.3.15
8
  * Author: WebDorado
9
  * Author URI: https://web-dorado.com/
10
  * License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
642
  `hit_count` bigint(20) NOT NULL,
643
  `redirect_url` varchar(255) NOT NULL,
644
  `pricelist_id` bigint(20) NOT NULL,
645
+
646
  PRIMARY KEY (`id`)
647
  ) DEFAULT CHARSET=utf8;";
648
  $wpdb->query($bwg_image);
672
  `image_enable_page` tinyint(1) NOT NULL,
673
  `image_title_show_hover` varchar(20) NOT NULL,
674
  `ecommerce_icon_show_hover` varchar(20) NOT NULL,
675
+
676
  `album_column_number` int(4) NOT NULL,
677
  `albums_per_page` int(4) NOT NULL,
678
  `album_title_show_hover` varchar(8) NOT NULL,
729
  `popup_enable_google` tinyint(1) NOT NULL,
730
  `popup_enable_ecommerce` tinyint(1) NOT NULL,
731
  `popup_effect_duration` int(4) NOT NULL,
732
+
733
  `watermark_type` varchar(8) NOT NULL,
734
  `watermark_position` varchar(16) NOT NULL,
735
  `watermark_width` int(4) NOT NULL,
1926
  ));
1927
  }
1928
  $version = WD_BWG_VERSION;
1929
+ $new_version = '1.3.15';
1930
  if ($version && version_compare($version, $new_version, '<')) {
1931
  require_once WD_BWG_DIR . "/update/bwg_update.php";
1932
  bwg_update($version);
1978
 
1979
  function bwg_update_hook() {
1980
  $version = WD_BWG_VERSION;
1981
+ $new_version = '1.3.15';
1982
  if ($version && version_compare($version, $new_version, '<')) {
1983
  require_once WD_BWG_DIR . "/update/bwg_update.php";
1984
  bwg_update($version);
2367
  $version = substr_replace($version, '2', 0, 1);
2368
  }
2369
  }
2370
+ else {
2371
  $version = '';
2372
  }
2373
  return $version;
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
4
  Tags: album, image gallery, gallery, image, images, lightbox, photo, photo gallery, photos, responsive, thumbnail, widget
5
  Requires at least: 3.4
6
  Tested up to: 4.6
7
- Stable tag: 1.3.14
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -224,6 +224,11 @@ To enable the feature of adding Media Library images, go to Photo Gallery > Opti
224
 
225
  == Changelog ==
226
 
 
 
 
 
 
227
  = 1.3.14 =
228
  * Fixed: Social Bulk Embed bug for facebook.
229
  * Fixed: Add facebook album bug.
4
  Tags: album, image gallery, gallery, image, images, lightbox, photo, photo gallery, photos, responsive, thumbnail, widget
5
  Requires at least: 3.4
6
  Tested up to: 4.6
7
+ Stable tag: 1.3.15
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
224
 
225
  == Changelog ==
226
 
227
+ = 1.3.15 =
228
+ * Added: Images bulk rotate.
229
+ * Fixed: Messages in masonry album view.
230
+ * Fixed: Show info on image change effect end.
231
+
232
  = 1.3.14 =
233
  * Fixed: Social Bulk Embed bug for facebook.
234
  * Fixed: Add facebook album bug.
update/bwg_update.php CHANGED
@@ -342,14 +342,15 @@ function bwg_update($version) {
342
  }
343
  if (version_compare($version, '1.2.84') == -1) {
344
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `placeholder` varchar(32) NOT NULL DEFAULT ''");
345
- }
346
- // Ecommerce update
 
347
  if (version_compare($version, '1.2.86') == -1) {
348
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_image ADD `pricelist_id` int(16) NOT NULL DEFAULT 0");
349
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `ecommerce_icon_show_hover` varchar(32) NOT NULL DEFAULT 0");
350
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `popup_enable_ecommerce` tinyint(1) NOT NULL DEFAULT 0");
351
  }
352
- if (version_compare($version, '1.2.104') == -1) {
353
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `slideshow_effect_duration` int(4) NOT NULL DEFAULT 1");
354
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `popup_effect_duration` int(4) NOT NULL DEFAULT 1");
355
  }
342
  }
343
  if (version_compare($version, '1.2.84') == -1) {
344
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `placeholder` varchar(32) NOT NULL DEFAULT ''");
345
+ }
346
+
347
+ // Ecommerce update
348
  if (version_compare($version, '1.2.86') == -1) {
349
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_image ADD `pricelist_id` int(16) NOT NULL DEFAULT 0");
350
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `ecommerce_icon_show_hover` varchar(32) NOT NULL DEFAULT 0");
351
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `popup_enable_ecommerce` tinyint(1) NOT NULL DEFAULT 0");
352
  }
353
+ if (version_compare($version, '1.2.104') == -1) {
354
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `slideshow_effect_duration` int(4) NOT NULL DEFAULT 1");
355
  $wpdb->query("ALTER TABLE " . $wpdb->prefix . "bwg_option ADD `popup_effect_duration` int(4) NOT NULL DEFAULT 1");
356
  }