Slideshow Gallery - Version 1.6.9

Version Description

  • ADD: Search box in admin sections to find slides and galleries
  • IMPROVE: ALT attributes on slide images
  • IMPROVE: Change "Configuration" to "Settings" throughout
  • IMPROVE: http:// to https://
  • FIX: Possible XSS and SQLi vulnerability
  • FIX: Media library loading very slowly
  • FIX: Buttons/icons not showing in some browsers like FireFox
  • FIX: Serial key overlay not showing correctly
Download this release

Release Info

Developer contrid
Plugin Icon 128x128 Slideshow Gallery
Version 1.6.9
Comparing to
See all releases

Code changes from version 1.6.8 to 1.6.9

.gitignore ADDED
@@ -0,0 +1,2 @@
 
 
1
+ # Ignore .vscode folder
2
+ .vscode
css/colorbox.css CHANGED
@@ -7,15 +7,13 @@ top: 0;
7
  left: 0;
8
  z-index: 9999;
9
  overflow: hidden;
10
- border-bottom: 21px white solid; }
11
  #cboxOverlay{position:fixed; width:100%; height:100%;}
12
  #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
13
  #cboxContent{position:relative;}
14
  #cboxLoadedContent{overflow:auto;}
15
  #cboxTitle{margin:0;}
16
-
17
- #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute;top:50%;left:45%;width:auto;}
18
-
19
  #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
20
  .cboxPhoto{float:left; margin:auto; border:0; display:block;}
21
  .cboxIframe{width:100%; height:100%; display:block; border:0;}
@@ -27,7 +25,7 @@ border-bottom: 21px white solid; }
27
  */
28
 
29
  #cboxOverlay{background:#000;}
30
- #colorbox{outline:0;}
31
  #cboxContent{margin-top: 40px;
32
  background: white;
33
  padding: 21px 0 0 0;}
@@ -35,42 +33,20 @@ padding: 21px 0 0 0;}
35
  #cboxError{padding:50px; border:1px solid #ccc;}
36
  #cboxLoadedContent{ }
37
  #cboxTitle{position: absolute;
38
- top: -34px;
39
  left: -11px;
40
  color: #ccc;
41
- font-size: 100%;
42
  font-weight: bold;
43
  }
44
  #cboxCurrent{position: absolute;
45
- top: -34px;
46
  right: 11px;
47
  color: #ccc;
48
- font-size: 100%;
49
  }
50
 
51
- #cboxLoadingGraphic {
52
- color: #333;
53
- -webkit-animation: fa-spin 2s infinite linear;
54
- animation: fa-spin 2s infinite linear;
55
- }
56
-
57
- @keyframes fa-spin {
58
- 0% {
59
- -webkit-transform: rotate(0deg);
60
- transform: rotate(0deg);
61
- }
62
- 100% {
63
- -webkit-transform: rotate(359deg);
64
- transform: rotate(359deg);
65
- }
66
- }
67
-
68
- #cboxLoadingGraphic:before {
69
- font-family: FontAwesome;
70
- content: "\f1ce";
71
- font-size: 24px;
72
- color: #FFF !important;
73
- }
74
 
75
  /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
76
  #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
@@ -80,12 +56,10 @@ font-size: 100%;
80
  #cboxSlideshow{position:absolute; top:-20px; right:90px; color:#fff;}
81
 
82
  #cboxPrevious, #cboxNext{
83
- visibility: hidden;
84
- font-size: 0px;
85
  position:absolute;
86
  margin-top: -30px;
87
  top:50%;
88
- width:50%;
89
  height:100px;
90
  padding: 10px;
91
  color: #ccc;
@@ -95,10 +69,8 @@ outline: none;
95
  }
96
  #cboxPrevious{
97
  left: 5px;
98
- text-align: left;
99
  }
100
  #cboxPrevious:before{
101
- visibility: visible;
102
  font-size: 72px;
103
  font-family: FontAwesome;
104
  content: "\f104";
@@ -107,10 +79,8 @@ content: "\f104";
107
  #cboxPrevious:hover{color: #fff;}
108
  #cboxNext{
109
  right: 15px;
110
- text-align: right;
111
  }
112
  #cboxNext:before{
113
- visibility: visible;
114
  font-size: 72px;
115
  font-family: FontAwesome;
116
  content: "\f105";
@@ -118,18 +88,15 @@ content: "\f105";
118
  }
119
  #cboxNext:hover{color: #fff;}
120
  #cboxClose{
121
- /*visibility: hidden;*/
122
  position:absolute;
123
- top: -30px;
124
  right: -21px;
125
  display:block;
126
  width: 24px;
127
  height:24px;
128
  color: #ccc;
129
- outline: 0;
130
  }
131
  #cboxClose:before{
132
- visibility: visible;
133
  font-family: FontAwesome;
134
  font-size: 24px;
135
  content: "\f00d";
@@ -139,12 +106,10 @@ margin: 0 99999px 0 0;
139
  color: #fff;
140
  }
141
 
142
- #cboxTopLeft{/* width: 21px; */
143
- /* height: 21px; */
144
- /* background: white; */}
145
- #cboxTopRight{/* width: 21px; */
146
- /* height: 21px; */
147
- /* background: white; */}
148
  #cboxBottomLeft{width:21px; height:21px; background:white;}
149
  #cboxBottomRight{width:21px; height:21px; background:white;}
150
  #cboxMiddleLeft{width: 21px;
@@ -155,34 +120,11 @@ padding-bottom: 21px;}
155
  background: white;
156
  margin-top: 40px;
157
  padding-bottom: 21px;}
158
- #cboxTopCenter{/* height: 21px; */
159
- /* background: white; */}
160
- #cboxBottomCenter{height:21px; background:white;}
161
 
162
- /*#cboxOverlay{background:url(../images/colorbox/overlay.png) repeat 0 0;}
163
- #colorbox{}
164
- #cboxTopLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -100px 0;}
165
- #cboxTopRight{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -129px 0;}
166
- #cboxBottomLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -100px -29px;}
167
- #cboxBottomRight{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -129px -29px;}
168
- #cboxMiddleLeft{width:21px; background:url(../images/colorbox/controls.png) left top repeat-y;}
169
- #cboxMiddleRight{width:21px; background:url(../images/colorbox/controls.png) right top repeat-y;}
170
- #cboxTopCenter{height:21px; background:url(../images/colorbox/border.png) 0 0 repeat-x;}
171
- #cboxBottomCenter{height:21px; background:url(../images/colorbox/border.png) 0 -29px repeat-x;}
172
- #cboxContent{background:#fff; overflow:hidden;}
173
- #cboxError{padding:50px; border:1px solid #ccc;}
174
- #cboxLoadedContent{margin-bottom:28px;}
175
- #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
176
- #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
177
- #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
178
- #cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/colorbox/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
179
- #cboxPrevious.hover{background-position:-75px -25px;}
180
- #cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/colorbox/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
181
- #cboxNext.hover{background-position:-50px -25px;}
182
- #cboxLoadingOverlay{background:url(../images/colorbox/loading_background.png) no-repeat center center;}
183
- #cboxLoadingGraphic{background:url(../images/colorbox/loading.gif) no-repeat center center;}
184
- #cboxClose{position:absolute; bottom:0; right:0; background:url(../images/colorbox/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
185
- #cboxClose.hover{background-position:-25px -25px;}*/
186
 
187
  /*
188
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
@@ -197,27 +139,4 @@ padding-bottom: 21px;}
197
  .cboxIE #cboxMiddleLeft,
198
  .cboxIE #cboxMiddleRight {
199
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
200
- }
201
-
202
- /*
203
- The following provides PNG transparency support for IE6
204
- */
205
- .cboxIE6 #cboxTopLeft{background:url(../images/colorbox/ie6/borderTopLeft.png);}
206
- .cboxIE6 #cboxTopCenter{background:url(../images/colorbox/ie6/borderTopCenter.png);}
207
- .cboxIE6 #cboxTopRight{background:url(../images/colorbox/ie6/borderTopRight.png);}
208
- .cboxIE6 #cboxBottomLeft{background:url(../images/colorbox/ie6/borderBottomLeft.png);}
209
- .cboxIE6 #cboxBottomCenter{background:url(../images/colorbox/ie6/borderBottomCenter.png);}
210
- .cboxIE6 #cboxBottomRight{background:url(../images/colorbox/ie6/borderBottomRight.png);}
211
- .cboxIE6 #cboxMiddleLeft{background:url(../images/colorbox/ie6/borderMiddleLeft.png);}
212
- .cboxIE6 #cboxMiddleRight{background:url(../images/colorbox/ie6/borderMiddleRight.png);}
213
-
214
- .cboxIE6 #cboxTopLeft,
215
- .cboxIE6 #cboxTopCenter,
216
- .cboxIE6 #cboxTopRight,
217
- .cboxIE6 #cboxBottomLeft,
218
- .cboxIE6 #cboxBottomCenter,
219
- .cboxIE6 #cboxBottomRight,
220
- .cboxIE6 #cboxMiddleLeft,
221
- .cboxIE6 #cboxMiddleRight {
222
- _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')");
223
  }
7
  left: 0;
8
  z-index: 9999;
9
  overflow: hidden;
10
+ /* border-bottom: 21px white solid; */}
11
  #cboxOverlay{position:fixed; width:100%; height:100%;}
12
  #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
13
  #cboxContent{position:relative;}
14
  #cboxLoadedContent{overflow:auto;}
15
  #cboxTitle{margin:0;}
16
+ #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%;}
 
 
17
  #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
18
  .cboxPhoto{float:left; margin:auto; border:0; display:block;}
19
  .cboxIframe{width:100%; height:100%; display:block; border:0;}
25
  */
26
 
27
  #cboxOverlay{background:#000;}
28
+ #colorbox:focus {outline:0;}
29
  #cboxContent{margin-top: 40px;
30
  background: white;
31
  padding: 21px 0 0 0;}
33
  #cboxError{padding:50px; border:1px solid #ccc;}
34
  #cboxLoadedContent{ }
35
  #cboxTitle{position: absolute;
36
+ top: -24px;
37
  left: -11px;
38
  color: #ccc;
39
+ font-size: 110%;
40
  font-weight: bold;
41
  }
42
  #cboxCurrent{position: absolute;
43
+ top: -24px;
44
  right: 11px;
45
  color: #ccc;
46
+ font-size: 110%;
47
  }
48
 
49
+ #cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
 
51
  /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
52
  #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
56
  #cboxSlideshow{position:absolute; top:-20px; right:90px; color:#fff;}
57
 
58
  #cboxPrevious, #cboxNext{
 
 
59
  position:absolute;
60
  margin-top: -30px;
61
  top:50%;
62
+ width:16px;
63
  height:100px;
64
  padding: 10px;
65
  color: #ccc;
69
  }
70
  #cboxPrevious{
71
  left: 5px;
 
72
  }
73
  #cboxPrevious:before{
 
74
  font-size: 72px;
75
  font-family: FontAwesome;
76
  content: "\f104";
79
  #cboxPrevious:hover{color: #fff;}
80
  #cboxNext{
81
  right: 15px;
 
82
  }
83
  #cboxNext:before{
 
84
  font-size: 72px;
85
  font-family: FontAwesome;
86
  content: "\f105";
88
  }
89
  #cboxNext:hover{color: #fff;}
90
  #cboxClose{
 
91
  position:absolute;
92
+ top: -24px;
93
  right: -21px;
94
  display:block;
95
  width: 24px;
96
  height:24px;
97
  color: #ccc;
 
98
  }
99
  #cboxClose:before{
 
100
  font-family: FontAwesome;
101
  font-size: 24px;
102
  content: "\f00d";
106
  color: #fff;
107
  }
108
 
109
+ #cboxTopLeft{
110
+ }
111
+ #cboxTopRight{
112
+ }
 
 
113
  #cboxBottomLeft{width:21px; height:21px; background:white;}
114
  #cboxBottomRight{width:21px; height:21px; background:white;}
115
  #cboxMiddleLeft{width: 21px;
120
  background: white;
121
  margin-top: 40px;
122
  padding-bottom: 21px;}
 
 
 
123
 
124
+ #cboxTopCenter{
125
+ }
126
+
127
+ #cboxBottomCenter{height:21px; background:white;}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
 
129
  /*
130
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
139
  .cboxIE #cboxMiddleLeft,
140
  .cboxIE #cboxMiddleRight {
141
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  }
css/jquery-ui.css CHANGED
@@ -287,7 +287,7 @@
287
 
288
 
289
  position: relative;
290
- margin-bottom: 18px;
291
  color: #ffffff;
292
  border-width: 1px;
293
  border-style: solid;
287
 
288
 
289
  position: relative;
290
+ /*margin-bottom: 18px;*/
291
  color: #ffffff;
292
  border-width: 1px;
293
  border-style: solid;
helpers/db.php CHANGED
@@ -335,7 +335,7 @@ class GalleryDbHelper extends GalleryPlugin {
335
  }
336
 
337
  $query1 .= "`" . $field . "`";
338
- $query2 .= "'" . ($value) . "'";
339
 
340
  if ($c < count($this -> fields)) {
341
  $query1 .= ", ";
@@ -380,7 +380,7 @@ class GalleryDbHelper extends GalleryPlugin {
380
  $value = ($this -> data -> {$field});
381
  }
382
 
383
- $query .= "`" . $field . "` = '" . ($value) . "'";
384
 
385
  if ($c < count($this -> fields)) {
386
  $query .= ", ";
335
  }
336
 
337
  $query1 .= "`" . $field . "`";
338
+ $query2 .= "'" . esc_sql($value) . "'";
339
 
340
  if ($c < count($this -> fields)) {
341
  $query1 .= ", ";
380
  $value = ($this -> data -> {$field});
381
  }
382
 
383
+ $query .= "`" . $field . "` = '" . esc_sql($value) . "'";
384
 
385
  if ($c < count($this -> fields)) {
386
  $query .= ", ";
helpers/html.php CHANGED
@@ -126,7 +126,7 @@ class GalleryHtmlHelper extends GalleryPlugin {
126
  $name = __('Manage Galleries', 'slideshow-gallery');
127
  break;
128
  case 'settings' :
129
- $name = __('Configuration', 'slideshow-gallery');
130
  break;
131
  }
132
 
@@ -251,6 +251,7 @@ class GalleryHtmlHelper extends GalleryPlugin {
251
  $upload_dir = wp_upload_dir();
252
  $upload_path = $upload_dir['basedir'] . '/' . $slide -> image;
253
  if (file_exists($upload_path)) {
 
254
  $image_path = $upload_dir['baseurl'] . '/' . $slide -> image;
255
  return $image_path;
256
  }
@@ -270,7 +271,7 @@ class GalleryHtmlHelper extends GalleryPlugin {
270
  break;
271
  }
272
 
273
- return $image_path;
274
  }
275
 
276
  return false;
126
  $name = __('Manage Galleries', 'slideshow-gallery');
127
  break;
128
  case 'settings' :
129
+ $name = __('Settings', 'slideshow-gallery');
130
  break;
131
  }
132
 
251
  $upload_dir = wp_upload_dir();
252
  $upload_path = $upload_dir['basedir'] . '/' . $slide -> image;
253
  if (file_exists($upload_path)) {
254
+ $upload_dir['baseurl'] = $this -> replace_https($upload_dir['baseurl']);
255
  $image_path = $upload_dir['baseurl'] . '/' . $slide -> image;
256
  return $image_path;
257
  }
271
  break;
272
  }
273
 
274
+ return $this -> replace_https($image_path);
275
  }
276
 
277
  return false;
images/plugins/newsletters.png CHANGED
Binary file
includes/checkinit.php CHANGED
@@ -40,7 +40,20 @@ if (!class_exists('GalleryCheckinit')) {
40
  $this -> add_filter('set-screen-option', 'set_screen_option', 10, 3);
41
  $this -> add_filter('removable_query_args', 'removable_query_args', 10, 1);
42
  $this -> add_filter('transient_update_plugins', 'check_update', 10, 1);
43
- $this -> add_filter('site_transient_update_plugins', 'check_update', 10, 1);
 
 
 
 
 
 
 
 
 
 
 
 
 
44
 
45
  return true;
46
  }
40
  $this -> add_filter('set-screen-option', 'set_screen_option', 10, 3);
41
  $this -> add_filter('removable_query_args', 'removable_query_args', 10, 1);
42
  $this -> add_filter('transient_update_plugins', 'check_update', 10, 1);
43
+ $this -> add_filter('site_transient_update_plugins', 'check_update', 10, 1);
44
+
45
+ // SSL stuff
46
+ add_filter('upload_dir', array($this, 'replace_https'));
47
+ add_filter('option_siteurl', array($this, 'replace_https'));
48
+ add_filter('option_home', array($this, 'replace_https'));
49
+ add_filter('option_url', array($this, 'replace_https'));
50
+ add_filter('option_wpurl', array($this, 'replace_https'));
51
+ add_filter('option_stylesheet_url', array($this, 'replace_https'));
52
+ add_filter('option_template_url', array($this, 'replace_https'));
53
+ add_filter('wp_get_attachment_url', array($this, 'replace_https'));
54
+ add_filter('widget_text', array($this, 'replace_https'));
55
+ add_filter('login_url', array($this, 'replace_https'));
56
+ add_filter('language_attributes', array($this, 'replace_https'));
57
 
58
  return true;
59
  }
includes/class.gallery-list-table.php CHANGED
@@ -240,13 +240,13 @@ class Gallery_List_Table extends WP_List_Table {
240
  $title = '';
241
  $title .= '<a class="row-title" href="' . admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=save&id=' . $item['id']) . '">' . __($item['title']) . '</a>';
242
 
243
- $actions = [
244
  'view' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=view&id=' . $item['id']), __('View', 'slideshow-gallery')),
245
  'edit' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=save&id=' . $item['id']), __('Edit', 'slideshow-gallery')),
246
  'embed' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=hardcode&id=' . $item['id']), __('Embed', 'slideshow-gallery')),
247
  'order' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=order&gallery_id=' . $item['id']), __('Order Slides', 'slideshow-gallery')),
248
  'delete' => sprintf('<a href="%s" onclick="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=delete&id=' . $item['id']), "if (!confirm('" . __('Are you sure you want to delete this gallery?', 'slideshow-gallery') . "')) { return false; }", __('Delete', 'slideshow-gallery')),
249
- ];
250
 
251
  $title .= $this -> row_actions($actions);
252
 
@@ -279,7 +279,7 @@ class Gallery_List_Table extends WP_List_Table {
279
 
280
  /** Text displayed when no customer data is available */
281
  public function no_items() {
282
- _e('No galleries avaliable.', 'slideshow-gallery');
283
  }
284
 
285
  /**
240
  $title = '';
241
  $title .= '<a class="row-title" href="' . admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=save&id=' . $item['id']) . '">' . __($item['title']) . '</a>';
242
 
243
+ $actions = array(
244
  'view' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=view&id=' . $item['id']), __('View', 'slideshow-gallery')),
245
  'edit' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=save&id=' . $item['id']), __('Edit', 'slideshow-gallery')),
246
  'embed' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=hardcode&id=' . $item['id']), __('Embed', 'slideshow-gallery')),
247
  'order' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=order&gallery_id=' . $item['id']), __('Order Slides', 'slideshow-gallery')),
248
  'delete' => sprintf('<a href="%s" onclick="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=delete&id=' . $item['id']), "if (!confirm('" . __('Are you sure you want to delete this gallery?', 'slideshow-gallery') . "')) { return false; }", __('Delete', 'slideshow-gallery')),
249
+ );
250
 
251
  $title .= $this -> row_actions($actions);
252
 
279
 
280
  /** Text displayed when no customer data is available */
281
  public function no_items() {
282
+ echo sprintf(__('No galleries avaliable. You can %s', 'slideshow-gallery'), '<a href="' . admin_url('admin.php?page=' . SG() -> sections -> galleries . '&method=save') . '">' . __('add one', 'slideshow-gallery') . '</a>');
283
  }
284
 
285
  /**
includes/class.slide-list-table.php CHANGED
@@ -259,21 +259,23 @@ class Slide_List_Table extends WP_List_Table {
259
  if (!empty($which) && $which == "top") {
260
  ?>
261
 
262
- <div class="alignleft actions">
263
- <a href="<?php echo admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=order' . ((!empty($_GET['id'])) ? '&gallery_id=' . esc_html($_GET['id']) : '')); ?>" class="button"><i class="fa fa-sort fa-fw"></i> <?php _e('Order Slides', 'slideshow-gallery'); ?></a>
264
- </div>
265
-
266
- <div id="action_galleries_div" style="display:none;">
267
- <br class="clear" />
268
- <?php if ($galleries = SG() -> Gallery() -> select()) : ?>
269
- <div><label style="font-weight:bold"><input onclick="jqCheckAll(this, false, 'galleries');" type="checkbox" name="checkboxall" value="1" /> <?php _e('Select all', 'slideshow-gallery'); ?></label></div>
270
- <?php foreach ($galleries as $gallery_id => $gallery_name) : ?>
271
- <div><label><input type="checkbox" name="galleries[]" value="<?php echo $gallery_id; ?>" /> <?php _e($gallery_name); ?></label></div>
272
- <?php endforeach; ?>
273
- <?php else : ?>
274
- <p class="slideshow_error"><?php _e('No galleries are available', 'slideshow-gallery'); ?></p>
275
- <?php endif; ?>
276
- </div>
 
 
277
 
278
  <?php
279
  }
@@ -306,7 +308,7 @@ class Slide_List_Table extends WP_List_Table {
306
 
307
  function column_image($item) {
308
 
309
- $image = '<a href="' . $item['image_path'] . '" title="' . esc_attr(stripslashes(__($item['title']))) . '" class="colorbox" rel="slides"><img style="width:50px; height:50px;" class="img-rounded" src="' . SG() -> Html -> otf_image_src((object) $item, 50, 50, 100) . '" alt="' . SG() -> Html -> sanitize(__($slide -> title)) . '" /></a>';
310
 
311
  return $image;
312
  }
@@ -316,10 +318,10 @@ class Slide_List_Table extends WP_List_Table {
316
  $title = '';
317
  $title .= '<a class="row-title" href="' . admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save&id=' . $item['id']) . '">' . __($item['title']) . '</a>';
318
 
319
- $actions = [
320
  'edit' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save&id=' . $item['id']), __('Edit', 'slideshow-gallery')),
321
  'delete' => sprintf('<a href="%s" onclick="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=delete&id=' . $item['id']), "if (!confirm('" . __('Are you sure you want to delete this slide?', 'slideshow-gallery') . "')) { return false; }", __('Delete', 'slideshow-gallery')),
322
- ];
323
 
324
  $title .= $this -> row_actions($actions);
325
 
@@ -381,7 +383,7 @@ class Slide_List_Table extends WP_List_Table {
381
 
382
  /** Text displayed when no customer data is available */
383
  public function no_items() {
384
- _e('No slides avaliable.', 'slideshow-gallery');
385
  }
386
 
387
  /**
259
  if (!empty($which) && $which == "top") {
260
  ?>
261
 
262
+ <?php if (!empty($this -> items)) : ?>
263
+ <div class="alignleft actions">
264
+ <a href="<?php echo admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=order' . ((!empty($_GET['id'])) ? '&gallery_id=' . esc_html($_GET['id']) : '')); ?>" class="button"><i class="fa fa-sort fa-fw"></i> <?php _e('Order Slides', 'slideshow-gallery'); ?></a>
265
+ </div>
266
+
267
+ <div id="action_galleries_div" style="display:none;">
268
+ <br class="clear" />
269
+ <?php if ($galleries = SG() -> Gallery() -> select()) : ?>
270
+ <div><label style="font-weight:bold"><input onclick="jqCheckAll(this, false, 'galleries');" type="checkbox" name="checkboxall" value="1" /> <?php _e('Select all', 'slideshow-gallery'); ?></label></div>
271
+ <?php foreach ($galleries as $gallery_id => $gallery_name) : ?>
272
+ <div><label><input type="checkbox" name="galleries[]" value="<?php echo $gallery_id; ?>" /> <?php _e($gallery_name); ?></label></div>
273
+ <?php endforeach; ?>
274
+ <?php else : ?>
275
+ <p class="slideshow_error"><?php _e('No galleries are available', 'slideshow-gallery'); ?></p>
276
+ <?php endif; ?>
277
+ </div>
278
+ <?php endif; ?>
279
 
280
  <?php
281
  }
308
 
309
  function column_image($item) {
310
 
311
+ $image = '<a href="' . $item['image_path'] . '" title="' . esc_attr(stripslashes(__($item['title']))) . '" class="colorbox" rel="slides"><img style="width:50px; height:50px;" class="img-rounded" src="' . SG() -> Html -> otf_image_src((object) $item, 50, 50, 100) . '" alt="' . esc_attr(SG() -> Html -> sanitize(__($slide -> title))) . '" /></a>';
312
 
313
  return $image;
314
  }
318
  $title = '';
319
  $title .= '<a class="row-title" href="' . admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save&id=' . $item['id']) . '">' . __($item['title']) . '</a>';
320
 
321
+ $actions = array(
322
  'edit' => sprintf('<a href="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save&id=' . $item['id']), __('Edit', 'slideshow-gallery')),
323
  'delete' => sprintf('<a href="%s" onclick="%s">%s</a>', admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=delete&id=' . $item['id']), "if (!confirm('" . __('Are you sure you want to delete this slide?', 'slideshow-gallery') . "')) { return false; }", __('Delete', 'slideshow-gallery')),
324
+ );
325
 
326
  $title .= $this -> row_actions($actions);
327
 
383
 
384
  /** Text displayed when no customer data is available */
385
  public function no_items() {
386
+ echo sprintf(__('No slides avaliable. You can %s or %s.', 'slideshow-gallery'), '<a href="' . admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save') . '">' . __('add one', 'slideshow-gallery') . '</a>', '<a href="' . admin_url('admin.php?page=' . SG() -> sections -> slides . '&method=save-multiple') . '">' . __('add multiple', 'slideshow-gallery') . '</a>');
387
  }
388
 
389
  /**
languages/readme.txt CHANGED
@@ -21,7 +21,7 @@ Follow these steps to use the language file(s) you want:
21
  1. Pick the .MO files from Github for the languages that you want to use. For example "slideshow-gallery-de_DE.mo"
22
  2. Go to "wp-content/languages/" in your WordPress installation and create a "slideshow-gallery" folder there.
23
  3. Upload the "slideshow-gallery-de_DE.mo" file to "wp-content/languages/slideshow-gallery/" folder you created.
24
- 4. Go to Slideshow > Configuration > WordPress Related in the plugin and tick/check "Yes, load external language file" for the "Load External Language" setting.
25
 
26
  Please note, if you don't tick/check that setting in #4 above, the plugin will look inside "wp-content/languages/slideshow-gallery/" for a language file.
27
 
21
  1. Pick the .MO files from Github for the languages that you want to use. For example "slideshow-gallery-de_DE.mo"
22
  2. Go to "wp-content/languages/" in your WordPress installation and create a "slideshow-gallery" folder there.
23
  3. Upload the "slideshow-gallery-de_DE.mo" file to "wp-content/languages/slideshow-gallery/" folder you created.
24
+ 4. Go to Slideshow > Settings > WordPress Related in the plugin and tick/check "Yes, load external language file" for the "Load External Language" setting.
25
 
26
  Please note, if you don't tick/check that setting in #4 above, the plugin will look inside "wp-content/languages/slideshow-gallery/" for a language file.
27
 
models/gallery.php CHANGED
@@ -27,7 +27,7 @@ class GalleryGallery extends GalleryDbHelper {
27
 
28
  if (!empty($data)) {
29
  foreach ($data as $dkey => $dval) {
30
- $this -> {$dkey} = (stripslashes_deep($dval));
31
 
32
  switch ($dkey) {
33
  case 'id' :
27
 
28
  if (!empty($data)) {
29
  foreach ($data as $dkey => $dval) {
30
+ $this -> {$dkey} = stripslashes_deep($dval);
31
 
32
  switch ($dkey) {
33
  case 'id' :
models/slide.php CHANGED
@@ -42,7 +42,7 @@ class GallerySlide extends GalleryDbHelper {
42
 
43
  if (!empty($data)) {
44
  foreach ($data as $dkey => $dval) {
45
- $this -> {$dkey} = (stripslashes_deep($dval));
46
 
47
  switch ($dkey) {
48
  case 'id' :
42
 
43
  if (!empty($data)) {
44
  foreach ($data as $dkey => $dval) {
45
+ $this -> {$dkey} = stripslashes_deep($dval);
46
 
47
  switch ($dkey) {
48
  case 'id' :
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://tribulant.com/
4
  Tags: wordpress plugins, wordpress slideshow gallery, slides, slideshow, image gallery, images, gallery, featured content, content gallery, javascript, javascript slideshow, slideshow gallery
5
  Requires at least: 3.1
6
  Tested up to: 4.9.7
7
- Stable tag: 1.6.8
8
 
9
  Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website
10
 
@@ -86,7 +86,7 @@ Hardcode Ex 2:
86
 
87
  `<?php slideshow(true, false, 379, array('layout' => "specific", 'width' => "600", 'height' => "300", 'auto' => "false", 'showinfo' => "false")); ?>`
88
 
89
- This way you can customize each slideshow you embed or hardcode, despite the settings you saved under **Slideshow > Configuration**.
90
 
91
  * `effect` [ fade | slide ] = Choose the transition effect of the slideshow. Either fade or slide
92
  * `slide_direction` [ lr | tb ] = If you're using `slide` for the `effect`, you can choose left/right or top/bottom sliding
@@ -138,7 +138,7 @@ Installing the WordPress slideshow gallery plugin is very easy. Simply follow th
138
  1. Extract the package to obtain the `slideshow-gallery` folder
139
  1. Upload the `slideshow-gallery` folder to the `/wp-content/plugins/` directory
140
  1. Activate the plugin through the 'Plugins' menu in WordPress
141
- 1. Configure the settings according to your needs through the **Slideshow > Configuration** menu
142
  1. Add and manage your slides in the 'Slideshow' section
143
  1. Put `[tribulant_slideshow post_id="X"]` to embed a slideshow with the images of a post into your posts/pages or use `[tribulant_slideshow gallery_id="X"]` to display the slides of a specific gallery by ID or use `[tribulant_slideshow]` to embed a slideshow with your custom added slides under **Slideshow > Manage Slides** or `<?php if (function_exists('slideshow')) { slideshow($output = true, $gallery_id = false, $post_id = false, $params = array()); } ?>` into your WordPress theme using PHP code.
144
 
@@ -162,7 +162,7 @@ Yes, you can use the `exclude` parameter to exclude post images by their order i
162
 
163
  = How can I fix slide images or thumbnails not displaying? =
164
 
165
- There is an "Images Tester" utility under Slideshow > Configuration on the right-hand side. Use that to determine the problem.
166
 
167
  == Screenshots ==
168
 
@@ -175,6 +175,16 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
175
 
176
  == Changelog ==
177
 
 
 
 
 
 
 
 
 
 
 
178
  = 1.6.8 =
179
  * ADD: Set an expiry date on a slide
180
  * ADD: Use WP_List_Table for proper, responsive tables in admin
@@ -268,7 +278,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
268
  * ADD: Max height setting for auto height
269
  * IMPROVE: Upgrade Colorbox and load from CDN
270
  * IMPROVE: WordPress 4.4 headings changes compatibility
271
- * IMPROVE: Headings in admin settings for easier configuration
272
  * IMPROVE: Use post_id="X" to pull current post/page ID automatically
273
  * IMPROVE: Make sure links in information bar is the same colour as information text
274
  * IMPROVE: WordPress configured date format in admin sections for dates
@@ -337,7 +347,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
337
 
338
  = 1.5 =
339
  * ADD: Add multiple slides at once from the media gallery/uploader
340
- * ADD: "Check/optimize database tables" feature under configuration
341
  * ADD: Load external language files from wp-content/languages/slideshow-gallery/
342
  * ADD: "Continue editing" checkboxes in admin sections
343
  * ADD: Indexes on MySQL database tables for performance
@@ -362,7 +372,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
362
  * FIX: Hide information bar on mobile checkbox resets to on
363
 
364
  = 1.4.7 =
365
- * ADD: Recommended plugin under configuration
366
  * IMPROVE: TimThumb absolute URLs to prevent permission problems
367
  * IMPROVE: Allow long filenames for custom slides
368
  * IMPROVE: Replace direct Ajax calls with wp_ajax_
@@ -385,7 +395,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
385
  * ADD: Welcome/about screen on update
386
  * ADD: Child theme folder support
387
  * ADD: Multilingual with (m)qTranslate
388
- * IMPROVE: New style for sliders in configuration
389
  * IMPROVE: Deprecated: Function split() is deprecated
390
  * IMPROVE: Deprecated: Function eregi() is deprecated
391
  * FIX: Uppercase file extensions
@@ -451,11 +461,11 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
451
  * FIX: PHP Strict, Notice and Warning messages
452
 
453
  = 1.3.1.2 =
454
- * FIX: Not all configuration settings loading
455
 
456
  = 1.3.1 =
457
 
458
- * ADD: Images tester utility under Configuration to fix broken images
459
  * FIX: Issue with turning off navigation images
460
  * FIX: Issue with new slider settings if empty or set to zero (0)
461
 
@@ -473,7 +483,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
473
  * ADD: WordPress 3.8+ design and compatibility
474
  * ADD: Multiple slideshows on a single page
475
  * ADD: Responsive design for mobiles and tablets
476
- * ADD: Debugging setting in configuration
477
  * IMPROVE: Colorbox upgrade/fix
478
  * IMPROVE: Use wp_upload_dir() for dynamic paths
479
  * IMPROVE: Better thumbnail slider using CSS calc
@@ -524,7 +534,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
524
  * FIX: Colorbox script should only load with this featured turned on
525
 
526
  = 1.2 =
527
- * ADD: 'About Us' box in the Configuration section
528
  * IMPROVE: Better, more usable hardcoding procedure
529
  * FIX: Slideshow goes left
530
  * IMPROVE: auto width property
@@ -575,7 +585,7 @@ There is an "Images Tester" utility under Slideshow > Configuration on the right
575
 
576
  = 1.0.3 =
577
  * ADDED: Default, English language file in the `languages` folder.
578
- * ADDED: Configuration setting to turn On/Off resizing of images via CSS.
579
  * ADDED: Webkit border radius in CSS for thumbnail images.
580
  * ADDED: `post_id` parameter for the `[tribulant_slideshow]` shortcode to display images from a post/page.
581
  * IMPROVED: Plugin doesn't utilize PHP short open tags anymore.
4
  Tags: wordpress plugins, wordpress slideshow gallery, slides, slideshow, image gallery, images, gallery, featured content, content gallery, javascript, javascript slideshow, slideshow gallery
5
  Requires at least: 3.1
6
  Tested up to: 4.9.7
7
+ Stable tag: 1.6.9
8
 
9
  Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website
10
 
86
 
87
  `<?php slideshow(true, false, 379, array('layout' => "specific", 'width' => "600", 'height' => "300", 'auto' => "false", 'showinfo' => "false")); ?>`
88
 
89
+ This way you can customize each slideshow you embed or hardcode, despite the settings you saved under **Slideshow > Settings**.
90
 
91
  * `effect` [ fade | slide ] = Choose the transition effect of the slideshow. Either fade or slide
92
  * `slide_direction` [ lr | tb ] = If you're using `slide` for the `effect`, you can choose left/right or top/bottom sliding
138
  1. Extract the package to obtain the `slideshow-gallery` folder
139
  1. Upload the `slideshow-gallery` folder to the `/wp-content/plugins/` directory
140
  1. Activate the plugin through the 'Plugins' menu in WordPress
141
+ 1. Configure the settings according to your needs through the **Slideshow > Settings** menu
142
  1. Add and manage your slides in the 'Slideshow' section
143
  1. Put `[tribulant_slideshow post_id="X"]` to embed a slideshow with the images of a post into your posts/pages or use `[tribulant_slideshow gallery_id="X"]` to display the slides of a specific gallery by ID or use `[tribulant_slideshow]` to embed a slideshow with your custom added slides under **Slideshow > Manage Slides** or `<?php if (function_exists('slideshow')) { slideshow($output = true, $gallery_id = false, $post_id = false, $params = array()); } ?>` into your WordPress theme using PHP code.
144
 
162
 
163
  = How can I fix slide images or thumbnails not displaying? =
164
 
165
+ There is an "Images Tester" utility under Slideshow > Settings on the right-hand side. Use that to determine the problem.
166
 
167
  == Screenshots ==
168
 
175
 
176
  == Changelog ==
177
 
178
+ = 1.6.9 =
179
+ * ADD: Search box in admin sections to find slides and galleries
180
+ * IMPROVE: ALT attributes on slide images
181
+ * IMPROVE: Change "Configuration" to "Settings" throughout
182
+ * IMPROVE: http:// to https://
183
+ * FIX: Possible XSS and SQLi vulnerability
184
+ * FIX: Media library loading very slowly
185
+ * FIX: Buttons/icons not showing in some browsers like FireFox
186
+ * FIX: Serial key overlay not showing correctly
187
+
188
  = 1.6.8 =
189
  * ADD: Set an expiry date on a slide
190
  * ADD: Use WP_List_Table for proper, responsive tables in admin
278
  * ADD: Max height setting for auto height
279
  * IMPROVE: Upgrade Colorbox and load from CDN
280
  * IMPROVE: WordPress 4.4 headings changes compatibility
281
+ * IMPROVE: Headings in admin settings for easier settings
282
  * IMPROVE: Use post_id="X" to pull current post/page ID automatically
283
  * IMPROVE: Make sure links in information bar is the same colour as information text
284
  * IMPROVE: WordPress configured date format in admin sections for dates
347
 
348
  = 1.5 =
349
  * ADD: Add multiple slides at once from the media gallery/uploader
350
+ * ADD: "Check/optimize database tables" feature under settings
351
  * ADD: Load external language files from wp-content/languages/slideshow-gallery/
352
  * ADD: "Continue editing" checkboxes in admin sections
353
  * ADD: Indexes on MySQL database tables for performance
372
  * FIX: Hide information bar on mobile checkbox resets to on
373
 
374
  = 1.4.7 =
375
+ * ADD: Recommended plugin under settings
376
  * IMPROVE: TimThumb absolute URLs to prevent permission problems
377
  * IMPROVE: Allow long filenames for custom slides
378
  * IMPROVE: Replace direct Ajax calls with wp_ajax_
395
  * ADD: Welcome/about screen on update
396
  * ADD: Child theme folder support
397
  * ADD: Multilingual with (m)qTranslate
398
+ * IMPROVE: New style for sliders in settings
399
  * IMPROVE: Deprecated: Function split() is deprecated
400
  * IMPROVE: Deprecated: Function eregi() is deprecated
401
  * FIX: Uppercase file extensions
461
  * FIX: PHP Strict, Notice and Warning messages
462
 
463
  = 1.3.1.2 =
464
+ * FIX: Not all Settings loading
465
 
466
  = 1.3.1 =
467
 
468
+ * ADD: Images tester utility under Settings to fix broken images
469
  * FIX: Issue with turning off navigation images
470
  * FIX: Issue with new slider settings if empty or set to zero (0)
471
 
483
  * ADD: WordPress 3.8+ design and compatibility
484
  * ADD: Multiple slideshows on a single page
485
  * ADD: Responsive design for mobiles and tablets
486
+ * ADD: Debugging setting in settings
487
  * IMPROVE: Colorbox upgrade/fix
488
  * IMPROVE: Use wp_upload_dir() for dynamic paths
489
  * IMPROVE: Better thumbnail slider using CSS calc
534
  * FIX: Colorbox script should only load with this featured turned on
535
 
536
  = 1.2 =
537
+ * ADD: 'About Us' box in the Settings section
538
  * IMPROVE: Better, more usable hardcoding procedure
539
  * FIX: Slideshow goes left
540
  * IMPROVE: auto width property
585
 
586
  = 1.0.3 =
587
  * ADDED: Default, English language file in the `languages` folder.
588
+ * ADDED: Settings setting to turn On/Off resizing of images via CSS.
589
  * ADDED: Webkit border radius in CSS for thumbnail images.
590
  * ADDED: `post_id` parameter for the `[tribulant_slideshow]` shortcode to display images from a post/page.
591
  * IMPROVED: Plugin doesn't utilize PHP short open tags anymore.
slideshow-gallery-plugin.php CHANGED
@@ -4,12 +4,12 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
4
 
5
  class GalleryPlugin extends GalleryCheckinit {
6
 
7
- var $version = '1.6.8';
8
  var $plugin_name;
9
  var $plugin_base;
10
- var $pre = 'Gallery';
11
 
12
- var $menus = array();
13
  var $sections = array(
14
  'welcome' => 'slideshow-slides',
15
  'submitserial' => 'slideshow-submitserial',
@@ -231,6 +231,19 @@ class GalleryPlugin extends GalleryCheckinit {
231
  die();
232
  }
233
 
 
 
 
 
 
 
 
 
 
 
 
 
 
234
  function init_class($name = null, $params = array()) {
235
  if (!empty($name)) {
236
  $name = $this -> pre . $name;
@@ -303,10 +316,10 @@ class GalleryPlugin extends GalleryCheckinit {
303
  $version = "1.5.3";
304
  }
305
 
306
- if (version_compare($cur_version, "1.6.8") < 0) {
307
  $this -> initialize_options();
308
 
309
- $version = "1.6.8";
310
  }
311
 
312
  //the current version is older.
@@ -637,10 +650,10 @@ class GalleryPlugin extends GalleryCheckinit {
637
  if (!empty($page) && in_array($page, (array) $this -> sections)) {
638
  wp_enqueue_style('wp-color-picker');
639
  wp_enqueue_style('jquery-ui', $this -> render_url('css/jquery-ui.css', "admin"), null, "1.0", "all");
640
- wp_enqueue_style('colorbox', $this -> render_url('css/colorbox.css', "admin"), null, "1.3.19", "all");
641
  wp_enqueue_style('select2', $this -> render_url('css/select2.css', "admin"), false, '4.0.0', "all");
642
  }
643
 
 
644
  wp_enqueue_style($this -> plugin_name, $this -> render_url('css/admin.css', "admin"), null, "1.0", "all");
645
  } else {
646
  wp_enqueue_style('colorbox', $this -> render_url('css/colorbox.css', "default"), null, "1.3.19", "all");
4
 
5
  class GalleryPlugin extends GalleryCheckinit {
6
 
7
+ var $version = '1.6.9';
8
  var $plugin_name;
9
  var $plugin_base;
10
+ var $pre = 'Gallery';
11
 
12
+ var $menus = array();
13
  var $sections = array(
14
  'welcome' => 'slideshow-slides',
15
  'submitserial' => 'slideshow-submitserial',
231
  die();
232
  }
233
 
234
+ function replace_https($value = null) {
235
+ if (!empty($value)) {
236
+ if (is_ssl()) {
237
+ if (!is_array($value) && !is_object($value)) {
238
+ $value = preg_replace('|/+$|', '', $value);
239
+ $value = preg_replace('|http://|', 'https://', $value);
240
+ }
241
+ }
242
+ }
243
+
244
+ return apply_filters('slideshow_replace_https', $value);
245
+ }
246
+
247
  function init_class($name = null, $params = array()) {
248
  if (!empty($name)) {
249
  $name = $this -> pre . $name;
316
  $version = "1.5.3";
317
  }
318
 
319
+ if (version_compare($cur_version, "1.6.9") < 0) {
320
  $this -> initialize_options();
321
 
322
+ $version = "1.6.9";
323
  }
324
 
325
  //the current version is older.
650
  if (!empty($page) && in_array($page, (array) $this -> sections)) {
651
  wp_enqueue_style('wp-color-picker');
652
  wp_enqueue_style('jquery-ui', $this -> render_url('css/jquery-ui.css', "admin"), null, "1.0", "all");
 
653
  wp_enqueue_style('select2', $this -> render_url('css/select2.css', "admin"), false, '4.0.0', "all");
654
  }
655
 
656
+ wp_enqueue_style('colorbox', $this -> render_url('css/colorbox.css', "admin"), null, "1.3.19", "all");
657
  wp_enqueue_style($this -> plugin_name, $this -> render_url('css/admin.css', "admin"), null, "1.0", "all");
658
  } else {
659
  wp_enqueue_style('colorbox', $this -> render_url('css/colorbox.css', "default"), null, "1.3.19", "all");
slideshow-gallery.php CHANGED
@@ -5,8 +5,8 @@ Plugin Name: Slideshow Gallery
5
  Plugin URI: https://tribulant.com/plugins/view/13/wordpress-slideshow-gallery
6
  Author: Tribulant Software
7
  Author URI: https://tribulant.com
8
- Description: Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website. The slideshow is flexible and all aspects can easily be configured. Embedding or hardcoding the slideshow gallery is a breeze. To embed into a post/page, simply insert <code>[tribulant_slideshow]</code> into its content with an optional <code>post_id</code> parameter. To hardcode into any PHP file of your WordPress theme, simply use <code>&lt;?php if (function_exists('slideshow')) { slideshow($output = true, $post_id = false, $gallery_id = false, $params = array()); } ?&gt;</code>.
9
- Version: 1.6.8
10
  License: GNU General Public License v2 or later
11
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
  Tags: slideshow gallery, slideshow, gallery, slider, jquery, bfithumb, galleries, photos, images
@@ -18,7 +18,7 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
18
 
19
  if (!defined('DS')) { define('DS', DIRECTORY_SEPARATOR); }
20
 
21
- $path = dirname(__FILE__) . DS . 'slideshow-gallery-plugin.php';
22
  if (file_exists($path)) {
23
  require_once(dirname(__FILE__) . DS . 'includes' . DS . 'checkinit.php');
24
  require_once(dirname(__FILE__) . DS . 'includes' . DS . 'constants.php');
@@ -68,7 +68,7 @@ if (!class_exists('SlideshowGallery')) {
68
  }
69
 
70
  $this -> updating_plugin();
71
- }
72
 
73
  function excerpt_more($more = null) {
74
  global $slideshow_post;
@@ -99,8 +99,15 @@ if (!class_exists('SlideshowGallery')) {
99
  $this_plugin = plugin_basename(__FILE__);
100
 
101
  if (!empty($plugin_file) && $plugin_file == $this_plugin) {
102
- $actions[] = '<a href="" onclick="jQuery.colorbox({href:ajaxurl + \'?action=slideshow_serialkey\'}); return false;" id="slideshow_submitseriallink">' . __('Serial Key', 'slideshow-gallery') . '</a>';
103
- $actions[] = '<a href="' . admin_url('admin.php?page=' . $this -> sections -> settings) . '">' . __('Settings', 'slideshow-gallery') . '</a>';
 
 
 
 
 
 
 
104
  }
105
 
106
  return $actions;
@@ -181,7 +188,7 @@ if (!class_exists('SlideshowGallery')) {
181
  add_menu_page(__('Slideshow', 'slideshow-gallery'), __('Slideshow', 'slideshow-gallery') . $update_icon, 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'), false, "26.113");
182
  $this -> menus['slideshow-slides'] = add_submenu_page($this -> sections -> slides, __('Manage Slides', 'slideshow-gallery'), __('Manage Slides', 'slideshow-gallery'), 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'));
183
  $this -> menus['slideshow-galleries'] = add_submenu_page($this -> sections -> slides, __('Manage Galleries', 'slideshow-gallery'), __('Manage Galleries', 'slideshow-gallery'), 'slideshow_galleries', $this -> sections -> galleries, array($this, 'admin_galleries'));
184
- $this -> menus['slideshow-settings'] = add_submenu_page($this -> sections -> slides, __('Configuration', 'slideshow-gallery'), __('Configuration', 'slideshow-gallery'), 'slideshow_settings', $this -> sections -> settings, array($this, 'admin_settings'));
185
 
186
  if (!$this -> ci_serial_valid()) {
187
  $this -> menus['slideshow-submitserial'] = add_submenu_page($this -> sections -> slides, __('Submit Serial Key', 'slideshow-gallery'), __('Submit Serial Key', 'slideshow-gallery'), 'slideshow_submitserial', $this -> sections -> submitserial, array($this, 'admin_submitserial'));
@@ -286,7 +293,7 @@ if (!class_exists('SlideshowGallery')) {
286
  add_meta_box('submitdiv', __('Save Settings', 'slideshow-gallery'), array($this -> Metabox, "settings_submit"), $this -> menus['slideshow-settings'], 'side', 'core');
287
  add_meta_box('pluginsdiv', __('Recommended Plugin', 'slideshow-gallery'), array($this -> Metabox, "settings_plugins"), $this -> menus['slideshow-settings'], 'side', 'core');
288
  add_meta_box('aboutdiv', __('About This Plugin', 'slideshow-gallery') . $this -> Html -> help(__('More about this plugin and the creators of it', 'slideshow-gallery')), array($this -> Metabox, "settings_about"), $this -> menus['slideshow-settings'], 'side', 'core');
289
- add_meta_box('generaldiv', __('General Settings', 'slideshow-gallery') . $this -> Html -> help(__('General configuration settings for the inner workings and some default behaviours', 'slideshow-gallery')), array($this -> Metabox, "settings_general"), $this -> menus['slideshow-settings'], 'normal', 'core');
290
  add_meta_box('postsdiv', __('Posts/Pages Settings', 'slideshow-gallery'), array($this -> Metabox, "settings_postspages"), $this -> menus['slideshow-settings'], 'normal', 'core');
291
  add_meta_box('linksimagesdiv', __('Links &amp; Images Overlay', 'slideshow-gallery') . $this -> Html -> help(__('Configure the way that slides with links are opened', 'slideshow-gallery')), array($this -> Metabox, "settings_linksimages"), $this -> menus['slideshow-settings'], 'normal', 'core');
292
  add_meta_box('stylesdiv', __('Appearance &amp; Styles', 'slideshow-gallery') . $this -> Html -> help(__('Change the way the slideshows look so that it suits your needs', 'slideshow-gallery')), array($this -> Metabox, "settings_styles"), $this -> menus['slideshow-settings'], 'normal', 'core');
@@ -312,7 +319,7 @@ if (!class_exists('SlideshowGallery')) {
312
  else {
313
  delete_transient($this -> pre . 'update_info');
314
  $success = true;
315
- $this -> redirect('?page=' . $this -> sections -> welcome);
316
  }
317
  }
318
  }
@@ -557,8 +564,9 @@ if (!class_exists('SlideshowGallery')) {
557
  if (!empty($slides)) {
558
  $imagespath = $this -> get_option('imagespath');
559
 
560
- foreach ($slides as $skey => $slide) {
561
- $slides[$skey] -> image_path = $this -> Html -> image_path($slide);
 
562
  }
563
 
564
  if ($orderby == "random") { shuffle($slides); }
@@ -950,11 +958,11 @@ if (!class_exists('SlideshowGallery')) {
950
  if ($wpdb -> query($query)) {
951
  $this -> initialize_options();
952
 
953
- $message = __('All configuration settings have been reset to their defaults', 'slideshow-gallery');
954
  $msg_type = 'message';
955
  $this -> render_msg($message);
956
  } else {
957
- $message = __('Configuration settings could not be reset', 'slideshow-gallery');
958
  $msg_type = 'error';
959
  $this -> render_err($message);
960
  }
@@ -1049,7 +1057,7 @@ if (!class_exists('SlideshowGallery')) {
1049
  $this -> delete_option('thumbhideonmobile');
1050
  }
1051
 
1052
- $message = __('Configuration has been saved', 'slideshow-gallery');
1053
  $this -> render_msg($message);
1054
  }
1055
 
@@ -1093,8 +1101,10 @@ if (!class_exists('SlideshowGallery')) {
1093
  }
1094
  }
1095
 
1096
- function SG($param = null) {
1097
- return new SlideshowGallery($param);
 
 
1098
  }
1099
 
1100
  //initialize a Gallery object
5
  Plugin URI: https://tribulant.com/plugins/view/13/wordpress-slideshow-gallery
6
  Author: Tribulant Software
7
  Author URI: https://tribulant.com
8
+ Description: Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website. The slideshow is flexible and all aspects can easily be configured. Embedding or hardcoding the slideshow gallery is a breeze. See the <a href="https://tribulant.com/docs/wordpress-slideshow-gallery/1758/wordpress-slideshow-gallery-plugin/" target="_blank">online documentation</a> for instructions on using and embedding slideshow galleries.
9
+ Version: 1.6.9
10
  License: GNU General Public License v2 or later
11
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
  Tags: slideshow gallery, slideshow, gallery, slider, jquery, bfithumb, galleries, photos, images
18
 
19
  if (!defined('DS')) { define('DS', DIRECTORY_SEPARATOR); }
20
 
21
+ $path = dirname(__FILE__) . DS . 'slideshow-gallery-plugin.php';
22
  if (file_exists($path)) {
23
  require_once(dirname(__FILE__) . DS . 'includes' . DS . 'checkinit.php');
24
  require_once(dirname(__FILE__) . DS . 'includes' . DS . 'constants.php');
68
  }
69
 
70
  $this -> updating_plugin();
71
+ }
72
 
73
  function excerpt_more($more = null) {
74
  global $slideshow_post;
99
  $this_plugin = plugin_basename(__FILE__);
100
 
101
  if (!empty($plugin_file) && $plugin_file == $this_plugin) {
102
+ $actions[] = '<a href="" onclick="jQuery.colorbox({href:ajaxurl + \'?action=slideshow_serialkey\'}); return false;" id="slideshow_submitseriallink"><i class="fa fa-key fa-fw"></i> ' . __('Serial Key', 'slideshow-gallery') . '</a>';
103
+ $actions[] = '<a href="' . admin_url('admin.php?page=' . $this -> sections -> settings) . '"><i class="fa fa-cog fa-fw"></i> ' . __('Settings', 'slideshow-gallery') . '</a>';
104
+
105
+ if ($update = $this -> vendor('update')) {
106
+ $version_info = $update -> get_version_info();
107
+ if (!empty($version_info['dtype']) && $version_info['dtype'] == "single") {
108
+ $actions[] = '<a href="https://tribulant.com/items/upgrade/' . $version_info['item_id'] . '" target="_blank"><i class="fa fa-level-up fa-fw"></i> ' . __('Upgrade', 'slideshow-gallery') . '</a>';
109
+ }
110
+ }
111
  }
112
 
113
  return $actions;
188
  add_menu_page(__('Slideshow', 'slideshow-gallery'), __('Slideshow', 'slideshow-gallery') . $update_icon, 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'), false, "26.113");
189
  $this -> menus['slideshow-slides'] = add_submenu_page($this -> sections -> slides, __('Manage Slides', 'slideshow-gallery'), __('Manage Slides', 'slideshow-gallery'), 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'));
190
  $this -> menus['slideshow-galleries'] = add_submenu_page($this -> sections -> slides, __('Manage Galleries', 'slideshow-gallery'), __('Manage Galleries', 'slideshow-gallery'), 'slideshow_galleries', $this -> sections -> galleries, array($this, 'admin_galleries'));
191
+ $this -> menus['slideshow-settings'] = add_submenu_page($this -> sections -> slides, __('Settings', 'slideshow-gallery'), __('Settings', 'slideshow-gallery'), 'slideshow_settings', $this -> sections -> settings, array($this, 'admin_settings'));
192
 
193
  if (!$this -> ci_serial_valid()) {
194
  $this -> menus['slideshow-submitserial'] = add_submenu_page($this -> sections -> slides, __('Submit Serial Key', 'slideshow-gallery'), __('Submit Serial Key', 'slideshow-gallery'), 'slideshow_submitserial', $this -> sections -> submitserial, array($this, 'admin_submitserial'));
293
  add_meta_box('submitdiv', __('Save Settings', 'slideshow-gallery'), array($this -> Metabox, "settings_submit"), $this -> menus['slideshow-settings'], 'side', 'core');
294
  add_meta_box('pluginsdiv', __('Recommended Plugin', 'slideshow-gallery'), array($this -> Metabox, "settings_plugins"), $this -> menus['slideshow-settings'], 'side', 'core');
295
  add_meta_box('aboutdiv', __('About This Plugin', 'slideshow-gallery') . $this -> Html -> help(__('More about this plugin and the creators of it', 'slideshow-gallery')), array($this -> Metabox, "settings_about"), $this -> menus['slideshow-settings'], 'side', 'core');
296
+ add_meta_box('generaldiv', __('General Settings', 'slideshow-gallery') . $this -> Html -> help(__('General settings for the inner workings and some default behaviours', 'slideshow-gallery')), array($this -> Metabox, "settings_general"), $this -> menus['slideshow-settings'], 'normal', 'core');
297
  add_meta_box('postsdiv', __('Posts/Pages Settings', 'slideshow-gallery'), array($this -> Metabox, "settings_postspages"), $this -> menus['slideshow-settings'], 'normal', 'core');
298
  add_meta_box('linksimagesdiv', __('Links &amp; Images Overlay', 'slideshow-gallery') . $this -> Html -> help(__('Configure the way that slides with links are opened', 'slideshow-gallery')), array($this -> Metabox, "settings_linksimages"), $this -> menus['slideshow-settings'], 'normal', 'core');
299
  add_meta_box('stylesdiv', __('Appearance &amp; Styles', 'slideshow-gallery') . $this -> Html -> help(__('Change the way the slideshows look so that it suits your needs', 'slideshow-gallery')), array($this -> Metabox, "settings_styles"), $this -> menus['slideshow-settings'], 'normal', 'core');
319
  else {
320
  delete_transient($this -> pre . 'update_info');
321
  $success = true;
322
+ $this -> redirect(admin_url('admin.php?page=' . $this -> sections -> welcome));
323
  }
324
  }
325
  }
564
  if (!empty($slides)) {
565
  $imagespath = $this -> get_option('imagespath');
566
 
567
+ foreach ($slides as $skey => $slide) {
568
+ $slides[$skey] = $this -> init_class($this -> Slide() -> model, $slide);
569
+ //$slides[$skey] -> image_path = $this -> Html -> image_path($slide);
570
  }
571
 
572
  if ($orderby == "random") { shuffle($slides); }
958
  if ($wpdb -> query($query)) {
959
  $this -> initialize_options();
960
 
961
+ $message = __('All settings have been reset to their defaults', 'slideshow-gallery');
962
  $msg_type = 'message';
963
  $this -> render_msg($message);
964
  } else {
965
+ $message = __('Settings could not be reset', 'slideshow-gallery');
966
  $msg_type = 'error';
967
  $this -> render_err($message);
968
  }
1057
  $this -> delete_option('thumbhideonmobile');
1058
  }
1059
 
1060
+ $message = __('Settings has been saved', 'slideshow-gallery');
1061
  $this -> render_msg($message);
1062
  }
1063
 
1101
  }
1102
  }
1103
 
1104
+ if (!function_exists('SG')) {
1105
+ function SG($param = null) {
1106
+ return new SlideshowGallery($param);
1107
+ }
1108
  }
1109
 
1110
  //initialize a Gallery object
vendors/class.update.php CHANGED
@@ -58,6 +58,8 @@ if (!class_exists('Galleryupdate')) {
58
  if(count($array) == 4) {
59
  $info["expiration_time"] = $array[3];
60
  }
 
 
61
 
62
  return $info;
63
  }
58
  if(count($array) == 4) {
59
  $info["expiration_time"] = $array[3];
60
  }
61
+
62
+ $info['dtype'] = $array[5];
63
 
64
  return $info;
65
  }
vendors/otf_regen_thumbs.php CHANGED
@@ -20,7 +20,6 @@ if ( ! function_exists( 'gambit_otf_regen_thumbs_media_downsize' ) ) {
20
  * @return mixed False if the custom downsize failed, or an array of the image if successful
21
  */
22
  function gambit_otf_regen_thumbs_media_downsize( $out, $id, $size ) {
23
-
24
  // Gather all the different image sizes of WP (thumbnail, medium, large) and,
25
  // all the theme/plugin-introduced sizes.
26
  global $_gambit_otf_regen_thumbs_all_image_sizes;
@@ -179,5 +178,8 @@ if ( ! function_exists( 'gambit_otf_regen_thumbs_media_downsize' ) ) {
179
 
180
  return false;
181
  }
182
- add_filter( 'image_downsize', 'gambit_otf_regen_thumbs_media_downsize', 10, 3 );
 
 
 
183
  }
20
  * @return mixed False if the custom downsize failed, or an array of the image if successful
21
  */
22
  function gambit_otf_regen_thumbs_media_downsize( $out, $id, $size ) {
 
23
  // Gather all the different image sizes of WP (thumbnail, medium, large) and,
24
  // all the theme/plugin-introduced sizes.
25
  global $_gambit_otf_regen_thumbs_all_image_sizes;
178
 
179
  return false;
180
  }
181
+
182
+ if (!is_admin()) {
183
+ add_filter( 'image_downsize', 'gambit_otf_regen_thumbs_media_downsize', 10, 3 );
184
+ }
185
  }
views/admin/metaboxes/settings-about.php CHANGED
@@ -16,9 +16,6 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
16
  <div class="misc-pub-section">
17
  <a href="https://www.facebook.com/tribulantsoftware" target="_blank"><?php _e('Find Us on Facebook', 'slideshow-gallery'); ?></a>
18
  </div>
19
- <div class="misc-pub-section">
20
- <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=YGCRFTX84K9AS" target="_blank"><?php _e('Make a Donation, please', 'slideshow-gallery'); ?></a>
21
- </div>
22
  <div class="misc-pub-section misc-pub-section-last">
23
  <a href="https://tribulant.com" target="_blank" style="color:red;"><?php _e('More Amazing Plugins!!!', 'slideshow-gallery'); ?></a>
24
  </div>
16
  <div class="misc-pub-section">
17
  <a href="https://www.facebook.com/tribulantsoftware" target="_blank"><?php _e('Find Us on Facebook', 'slideshow-gallery'); ?></a>
18
  </div>
 
 
 
19
  <div class="misc-pub-section misc-pub-section-last">
20
  <a href="https://tribulant.com" target="_blank" style="color:red;"><?php _e('More Amazing Plugins!!!', 'slideshow-gallery'); ?></a>
21
  </div>
views/admin/metaboxes/settings-submit.php CHANGED
@@ -15,7 +15,7 @@ $debugging = get_option('tridebugging');
15
  <a href="<?php echo admin_url('admin.php?page=' . $this -> sections -> settings . '&method=checkdb'); ?>"><?php _e('Check/optimize database tables', 'slideshow-gallery'); ?></a>
16
  </div>
17
  <div class="misc-pub-section">
18
- <a href="<?php echo $this -> url; ?>&amp;method=reset" title="<?php _e('Reset all configuration settings to their default values', 'slideshow-gallery'); ?>" onclick="if (!confirm('<?php _e('Are you sure you wish to reset all configuration settings?', 'slideshow-gallery'); ?>')) { return false; }"><?php _e('Reset to Defaults', 'slideshow-gallery'); ?></a>
19
  </div>
20
  <div class="misc-pub-section misc-pub-section-last">
21
  <label><input <?php echo (!empty($debugging) && $debugging == 1) ? 'checked="checked"' : ''; ?> type="checkbox" name="debugging" value="1" id="debugging" /> <?php _e('Turn on debugging', 'slideshow-gallery'); ?></label>
@@ -25,7 +25,7 @@ $debugging = get_option('tridebugging');
25
  <div id="major-publishing-actions">
26
  <div id="publishing-action">
27
  <button class="button-primary button button-large" type="submit" name="save" value="1">
28
- <i class="fa fa-check fa-fw"></i> <?php _e('Save Configuration', 'slideshow-gallery'); ?>
29
  </button>
30
  </div>
31
  <br class="clear" />
15
  <a href="<?php echo admin_url('admin.php?page=' . $this -> sections -> settings . '&method=checkdb'); ?>"><?php _e('Check/optimize database tables', 'slideshow-gallery'); ?></a>
16
  </div>
17
  <div class="misc-pub-section">
18
+ <a href="<?php echo $this -> url; ?>&amp;method=reset" title="<?php _e('Reset all settings to their default values', 'slideshow-gallery'); ?>" onclick="if (!confirm('<?php _e('Are you sure you wish to reset all settings?', 'slideshow-gallery'); ?>')) { return false; }"><?php _e('Reset to Defaults', 'slideshow-gallery'); ?></a>
19
  </div>
20
  <div class="misc-pub-section misc-pub-section-last">
21
  <label><input <?php echo (!empty($debugging) && $debugging == 1) ? 'checked="checked"' : ''; ?> type="checkbox" name="debugging" value="1" id="debugging" /> <?php _e('Turn on debugging', 'slideshow-gallery'); ?></label>
25
  <div id="major-publishing-actions">
26
  <div id="publishing-action">
27
  <button class="button-primary button button-large" type="submit" name="save" value="1">
28
+ <i class="fa fa-check fa-fw"></i> <?php _e('Save Settings', 'slideshow-gallery'); ?>
29
  </button>
30
  </div>
31
  <br class="clear" />
views/admin/settings.php CHANGED
@@ -11,7 +11,7 @@ wp_nonce_field('meta-box-order', 'meta-box-order-nonce', false);
11
  ?>
12
 
13
  <div class="wrap slideshow <?php echo $this -> pre; ?>">
14
- <h1><?php _e('Configuration Settings', 'slideshow-gallery'); ?></h1>
15
 
16
  <form action="<?php echo $this -> url; ?>" name="post" id="post" method="post">
17
  <?php wp_nonce_field($this -> sections -> settings); ?>
11
  ?>
12
 
13
  <div class="wrap slideshow <?php echo $this -> pre; ?>">
14
+ <h1><?php _e('Settings', 'slideshow-gallery'); ?></h1>
15
 
16
  <form action="<?php echo $this -> url; ?>" name="post" id="post" method="post">
17
  <?php wp_nonce_field($this -> sections -> settings); ?>
views/admin/slides/save-multiple.php CHANGED
@@ -47,7 +47,9 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
47
  <input type="hidden" value="<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>" name="Slide[slides][<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>][attachment_id]" />
48
  </td>
49
  <td style="vertical-align:bottom;">
50
- <input onclick="if (confirm('<?php echo __('Are you sure you want to remove this slide?', 'slideshow-gallery'); ?>')) { jQuery('#Slide_mediaupload_row_<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>').remove(); } return false;" class="button button-secondary button-small" type="button" name="remove" value="<?php echo __('Remove', 'slideshow-gallery'); ?>" id="remove<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>" />
 
 
51
  </td>
52
  </tr>
53
  <?php endforeach; ?>
@@ -126,7 +128,7 @@ jQuery(document).ready(function() {
126
  attachment_html += '<input class="widefat" readonly="readonly" type="text" value="' + attachment.url + '" name="Slide[slides][' + attachment.id + '][url]" />';
127
  attachment_html += '<input type="hidden" value="' + attachment.id + '" name="Slide[slides][' + attachment.id + '][attachment_id]" />';
128
  attachment_html += '</td>';
129
- attachment_html += '<td style="vertical-align:bottom;"><input onclick="if (confirm(\'<?php echo __('Are you sure you want to remove this slide?', 'slideshow-gallery'); ?>\')) { jQuery(\'#Slide_mediaupload_row_' + attachment.id + '\').remove(); } return false;" class="button button-secondary button-small" type="button" name="remove" value="<?php echo __('Remove', 'slideshow-gallery'); ?>" id="remove' + attachment.id + '" /></td>';
130
  attachment_html += '</tr>';
131
 
132
  jQuery('#Slide_mediaslides').show();
47
  <input type="hidden" value="<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>" name="Slide[slides][<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>][attachment_id]" />
48
  </td>
49
  <td style="vertical-align:bottom;">
50
+ <button onclick="if (confirm('<?php echo __('Are you sure you want to remove this slide?', 'slideshow-gallery'); ?>')) { jQuery('#Slide_mediaupload_row_<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>').remove(); } return false;" class="button button-secondary button-small" type="button" name="remove" value="1" id="remove<?php echo esc_attr(stripslashes($slide['attachment_id'])); ?>">
51
+ <i class="fa fa-trash fa-fw"></i> <?php echo __('Remove', 'slideshow-gallery'); ?>
52
+ </button>
53
  </td>
54
  </tr>
55
  <?php endforeach; ?>
128
  attachment_html += '<input class="widefat" readonly="readonly" type="text" value="' + attachment.url + '" name="Slide[slides][' + attachment.id + '][url]" />';
129
  attachment_html += '<input type="hidden" value="' + attachment.id + '" name="Slide[slides][' + attachment.id + '][attachment_id]" />';
130
  attachment_html += '</td>';
131
+ attachment_html += '<td style="vertical-align:bottom;"><button onclick="if (confirm(\'<?php echo __('Are you sure you want to remove this slide?', 'slideshow-gallery'); ?>\')) { jQuery(\'#Slide_mediaupload_row_' + attachment.id + '\').remove(); } return false;" class="button button-secondary button-small" type="button" name="remove" value="1" id="remove' + attachment.id + '"><i class="fa fa-trash fa-fw"></i> <?php echo __('Remove', 'slideshow-gallery'); ?></button></td>';
132
  attachment_html += '</tr>';
133
 
134
  jQuery('#Slide_mediaslides').show();
views/admin/slides/save.php CHANGED
@@ -89,7 +89,7 @@ $expiry = $this -> Slide() -> data -> expiry;
89
  </tr>
90
  <tr>
91
  <th><label for="showinfo_both"><?php _e('Show Information?', 'slideshow-gallery'); ?></label>
92
- <?php echo $this -> Html -> help(__('You can choose to show both title and description, only title, only description or not show the information bar at all. Please note that this setting is only effective when the information bar is turned on in configuration or via a parameter in shortcode or hardcode.', 'slideshow-gallery')); ?></th>
93
  <td>
94
  <label><input onclick="jQuery('#showinfo_div').show();" <?php echo ((empty($showinfo)) || (!empty($showinfo) && $showinfo == "both")) ? 'checked="checked"' : ''; ?> type="radio" name="Slide[showinfo]" value="both" id="showinfo_both" /> <?php _e('Both title and description', 'slideshow-gallery'); ?></label><br/>
95
  <label><input onclick="jQuery('#showinfo_div').show();" <?php echo (!empty($showinfo) && $showinfo == "title") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[showinfo]" value="title" id="showinfo_title" /> <?php _e('Title only', 'slideshow-gallery'); ?></label><br/>
@@ -161,7 +161,9 @@ $expiry = $this -> Slide() -> data -> expiry;
161
  <?php endif; ?>
162
  </div>
163
 
164
- <input type="button" name="Slide_mediaupload" value="<?php _e('Choose File', 'slideshow-gallery'); ?>" id="Slide_mediaupload" class="button button-secondary" />
 
 
165
  <input type="text" name="Slide[media_file]" readonly="readonly" style="width:50%;" id="Slide_image_file" value="<?php echo esc_attr(stripslashes($this -> Slide() -> data -> image_url)); ?>" />
166
  <input type="hidden" name="Slide[attachment_id]" value="<?php echo esc_attr(stripslashes($this -> Slide() -> data -> attachment_id)); ?>" id="Slide_attachment_id" />
167
 
89
  </tr>
90
  <tr>
91
  <th><label for="showinfo_both"><?php _e('Show Information?', 'slideshow-gallery'); ?></label>
92
+ <?php echo $this -> Html -> help(__('You can choose to show both title and description, only title, only description or not show the information bar at all. Please note that this setting is only effective when the information bar is turned on in settings or via a parameter in shortcode or hardcode.', 'slideshow-gallery')); ?></th>
93
  <td>
94
  <label><input onclick="jQuery('#showinfo_div').show();" <?php echo ((empty($showinfo)) || (!empty($showinfo) && $showinfo == "both")) ? 'checked="checked"' : ''; ?> type="radio" name="Slide[showinfo]" value="both" id="showinfo_both" /> <?php _e('Both title and description', 'slideshow-gallery'); ?></label><br/>
95
  <label><input onclick="jQuery('#showinfo_div').show();" <?php echo (!empty($showinfo) && $showinfo == "title") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[showinfo]" value="title" id="showinfo_title" /> <?php _e('Title only', 'slideshow-gallery'); ?></label><br/>
161
  <?php endif; ?>
162
  </div>
163
 
164
+ <button type="button" name="Slide_mediaupload" value="1" id="Slide_mediaupload" class="button button-secondary">
165
+ <i class="fa fa-image fa-fw"></i> <?php _e('Choose Image', 'slideshow-gallery'); ?>
166
+ </button>
167
  <input type="text" name="Slide[media_file]" readonly="readonly" style="width:50%;" id="Slide_image_file" value="<?php echo esc_attr(stripslashes($this -> Slide() -> data -> image_url)); ?>" />
168
  <input type="hidden" name="Slide[attachment_id]" value="<?php echo esc_attr(stripslashes($this -> Slide() -> data -> attachment_id)); ?>" id="Slide_attachment_id" />
169
 
views/admin/submitserial.php CHANGED
@@ -1,3 +1,10 @@
 
 
 
 
 
 
 
1
  <h3><?php _e('Slideshow Gallery Serial Key', 'slideshow-gallery'); ?></h3>
2
 
3
  <?php if (empty($success) || $success == false) : ?>
@@ -22,21 +29,43 @@
22
  <input type="text" class="widefat" style="width:400px;" name="serialkey" value="<?php echo esc_attr(stripslashes($_POST['serialkey'])); ?>" /><br/>
23
  </p>
24
  <p class="submit">
25
- <input type="button" class="button-secondary" name="close" onclick="jQuery.colorbox.close();" value="<?php _e('Cancel', 'slideshow-gallery'); ?>" />
26
- <input id="slideshow_submitserial_button" type="submit" class="button-primary" name="submit" value="<?php _e('Submit Serial Key', 'slideshow-gallery'); ?>" />
27
- <span style="display:none;" id="slideshow_submitserial_loading"><i class="fa fa-refresh fa-spin fa-fw"></i></span>
 
 
 
 
28
  </p>
29
  </form>
30
  <?php else : ?>
31
  <p><?php _e('Serial Key:', 'slideshow-gallery'); ?> <strong><?php echo $this -> get_option('serialkey'); ?></strong></p>
32
  <p><?php _e('Your current serial is valid and working.', 'slideshow-gallery'); ?></p>
 
 
 
 
 
 
 
 
 
 
33
  <p>
34
- <input type="button" onclick="jQuery.colorbox.close();" name="close" class="button-primary" value="<?php _e('Close', 'slideshow-gallery'); ?>" />
35
- <input id="slideshow_deleteserial_button" type="button" onclick="if (confirm('<?php _e('Are you sure you want to delete your serial key?', 'slideshow-gallery'); ?>')) { slideshow_deleteserial(); } return false;" name="delete" class="button-secondary" value="<?php _e('Delete Serial', 'slideshow-gallery'); ?>" />
36
- <span style="display:none;" id="slideshow_submitserial_loading"><i class="fa fa-refresh fa-spin fa-fw"></i></span>
 
 
 
 
37
  </p>
38
  <?php endif; ?>
39
  <?php else : ?>
40
  <p><?php _e('The serial key is valid and you can now continue using the Slideshow Gallery plugin. Thank you for your business and support!', 'slideshow-gallery'); ?></p>
41
- <p><input type="button" onclick="jQuery.colorbox.close(); parent.location = '<?php echo rtrim(get_admin_url(), '/'); ?>/admin.php?page=<?php echo $this -> sections -> slides; ?>';" class="button-primary" name="close" value="<?php _e('Apply Serial and Close Window', 'slideshow-gallery'); ?>" /></p>
 
 
 
 
42
  <?php endif; ?>
1
+ <?php
2
+
3
+ $update = $this -> vendor('update');
4
+ $version_info = $update -> get_version_info();
5
+
6
+ ?>
7
+
8
  <h3><?php _e('Slideshow Gallery Serial Key', 'slideshow-gallery'); ?></h3>
9
 
10
  <?php if (empty($success) || $success == false) : ?>
29
  <input type="text" class="widefat" style="width:400px;" name="serialkey" value="<?php echo esc_attr(stripslashes($_POST['serialkey'])); ?>" /><br/>
30
  </p>
31
  <p class="submit">
32
+ <button type="button" class="button-secondary" name="close" onclick="jQuery.colorbox.close();" value="1">
33
+ <i class="fa fa-times fa-fw"></i> <?php _e('Cancel', 'slideshow-gallery'); ?>
34
+ </button>
35
+ <button id="slideshow_submitserial_button" type="submit" class="button-primary" name="submit" value="1">
36
+ <i class="fa fa-check fa-fw"></i> <?php _e('Submit Serial Key', 'slideshow-gallery'); ?>
37
+ <span style="display:none;" id="slideshow_submitserial_loading"><i class="fa fa-refresh fa-spin fa-fw"></i></span>
38
+ </button>
39
  </p>
40
  </form>
41
  <?php else : ?>
42
  <p><?php _e('Serial Key:', 'slideshow-gallery'); ?> <strong><?php echo $this -> get_option('serialkey'); ?></strong></p>
43
  <p><?php _e('Your current serial is valid and working.', 'slideshow-gallery'); ?></p>
44
+
45
+ <?php if (!empty($version_info['dtype']) && $version_info['dtype'] == "single") : ?>
46
+ <h2><?php _e('Upgrade to Unlimited', 'wp-mailinglist'); ?></h2>
47
+ <p><?php _e('You can upgrade one or more single domain licenses to an unlimited domains license.', 'wp-mailinglist'); ?>
48
+ <br/><?php _e('You only pay the difference.', 'wp-mailinglist'); ?></p>
49
+ <p>
50
+ <a class="button" href="https://tribulant.com/items/upgrade/<?php echo $version_info['item_id']; ?>" target="_blank"><i class="fa fa-level-up fa-fw"></i> <?php _e('Upgrade Now', 'wp-mailinglist'); ?></a>
51
+ </p>
52
+ <?php endif; ?>
53
+
54
  <p>
55
+ <button type="button" onclick="jQuery.colorbox.close();" name="close" class="button-primary" value="1">
56
+ <i class="fa fa-times fa-fw"></i> <?php _e('Close', 'slideshow-gallery'); ?>
57
+ </button>
58
+ <button id="slideshow_deleteserial_button" type="button" onclick="if (confirm('<?php _e('Are you sure you want to delete your serial key?', 'slideshow-gallery'); ?>')) { slideshow_deleteserial(); } return false;" name="delete" class="button-secondary" value="1">
59
+ <i class="fa fa-trash fa-fw"></i> <?php _e('Delete Serial', 'slideshow-gallery'); ?>
60
+ <span style="display:none;" id="slideshow_submitserial_loading"><i class="fa fa-refresh fa-spin fa-fw"></i></span>
61
+ </button>
62
  </p>
63
  <?php endif; ?>
64
  <?php else : ?>
65
  <p><?php _e('The serial key is valid and you can now continue using the Slideshow Gallery plugin. Thank you for your business and support!', 'slideshow-gallery'); ?></p>
66
+ <p>
67
+ <button type="button" onclick="jQuery.colorbox.close(); parent.location = '<?php echo rtrim(get_admin_url(), '/'); ?>/admin.php?page=<?php echo $this -> sections -> slides; ?>';" class="button-primary" name="close" value="1">
68
+ <i class="fa fa-check fa-fw"></i> <?php _e('Apply Serial and Close Window', 'slideshow-gallery'); ?>
69
+ </button>
70
+ </p>
71
  <?php endif; ?>
views/admin/tinymce-dialog.php CHANGED
@@ -3,15 +3,7 @@
3
  global $wpdb;
4
  if(!current_user_can('edit_posts')) die;
5
 
6
- $galleriesquery = "SELECT * FROM `" . $wpdb -> prefix . "gallery_galleries` ORDER BY `title` ASC";
7
-
8
- $query_hash = md5($galleriesquery);
9
- if ($oc_galleries = wp_cache_get($query_hash, 'slideshowgallery')) {
10
- $galleries = $oc_galleries;
11
- } else {
12
- $galleries = $wpdb -> get_results($galleriesquery);
13
- wp_cache_set($query_hash, $galleries, 'slideshowgallery', 0);
14
- }
15
 
16
  $checkout_active = is_plugin_active('wp-checkout' . DS . 'wp-checkout.php');
17
  $post_types = get_post_types(array('public' => true), 'objects');
@@ -91,11 +83,11 @@ $post_types = get_post_types(array('public' => true), 'objects');
91
  </script>
92
 
93
  <style type="text/css">
94
- @import url('<?php echo $this -> url(); ?>/css/admin.css');
95
- table th { vertical-align: top; }
96
- .panel_wrapper { border-top: 1px solid #909B9C; }
97
- .panel_wrapper div.current { height:auto !important; }
98
- #product-menu { width: 180px; }
99
  </style>
100
 
101
  </head>
@@ -187,11 +179,15 @@ $post_types = get_post_types(array('public' => true), 'objects');
187
 
188
  <div class="mceActionPanel">
189
  <div style="float: left">
190
- <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="closePopup()"/>
 
 
191
  </div>
192
 
193
  <div style="float: right">
194
- <input type="button" id="insert" name="insert" value="{#insert}" onclick="insertTag()" />
 
 
195
  </div>
196
  </div>
197
  </form>
3
  global $wpdb;
4
  if(!current_user_can('edit_posts')) die;
5
 
6
+ $galleries = SG() -> Gallery() -> find_all(false, false, array('title', "ASC"));
 
 
 
 
 
 
 
 
7
 
8
  $checkout_active = is_plugin_active('wp-checkout' . DS . 'wp-checkout.php');
9
  $post_types = get_post_types(array('public' => true), 'objects');
83
  </script>
84
 
85
  <style type="text/css">
86
+ @import url('<?php echo SG() -> url(); ?>/css/admin.css');
87
+ table th { vertical-align: top; }
88
+ .panel_wrapper { border-top: 1px solid #909B9C; }
89
+ .panel_wrapper div.current { height:auto !important; }
90
+ #product-menu { width: 180px; }
91
  </style>
92
 
93
  </head>
179
 
180
  <div class="mceActionPanel">
181
  <div style="float: left">
182
+ <button type="button" id="cancel" name="cancel" value="1" onclick="closePopup();">
183
+ {#cancel}
184
+ </button>
185
  </div>
186
 
187
  <div style="float: right">
188
+ <button type="button" id="insert" name="insert" value="1" onclick="insertTag();">
189
+ {#insert}
190
+ </button>
191
  </div>
192
  </div>
193
  </form>
views/default/css/colorbox.css CHANGED
@@ -80,16 +80,16 @@ font-size: 100%;
80
  #cboxSlideshow{position:absolute; top:-20px; right:90px; color:#fff;}
81
 
82
  #cboxPrevious, #cboxNext{
83
- visibility: hidden;
84
  font-size: 0px;
85
- position:absolute;
86
  margin-top: -30px;
87
- top:50%;
88
- width:50%;
89
- height:100px;
90
  padding: 10px;
91
- color: #ccc;
92
- outline: none;
93
  overflow: hidden;
94
  vertical-align: middle;
95
  }
80
  #cboxSlideshow{position:absolute; top:-20px; right:90px; color:#fff;}
81
 
82
  #cboxPrevious, #cboxNext{
83
+ /*visibility: hidden;*/
84
  font-size: 0px;
85
+ position:absolute;
86
  margin-top: -30px;
87
+ top:50%;
88
+ width:50%;
89
+ height:100px;
90
  padding: 10px;
91
+ color: #ccc;
92
+ outline: none;
93
  overflow: hidden;
94
  vertical-align: middle;
95
  }
views/default/gallery.php CHANGED
@@ -81,9 +81,9 @@ $thumbopacity = $this -> get_option('thumbopacity');
81
  <p><?php echo substr(stripslashes(__($slide -> description)), 0, 255); ?></p>
82
  <?php if ($options['showthumbs'] == "true") : ?>
83
  <?php if (!empty($slide -> post_id)) : ?>
84
- <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr(__($slide -> title)); ?>"><img class="skip-lazy" src="<?php echo $this -> Html -> otf_image_src($slide, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" /></a>
85
  <?php else : ?>
86
- <a><img class="skip-lazy" src="<?php echo $this -> Html -> otf_image_src($slide, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" /></a>
87
  <?php endif; ?>
88
  <?php else : ?>
89
  <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr(__($slide -> title)); ?>"></a>
81
  <p><?php echo substr(stripslashes(__($slide -> description)), 0, 255); ?></p>
82
  <?php if ($options['showthumbs'] == "true") : ?>
83
  <?php if (!empty($slide -> post_id)) : ?>
84
+ <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr(__($slide -> title)); ?>"><img class="skip-lazy" src="<?php echo $this -> Html -> otf_image_src($slide, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" alt="<?php echo $this -> Html -> sanitize(__($slide -> title)); ?>" /></a>
85
  <?php else : ?>
86
+ <a><img class="skip-lazy" src="<?php echo $this -> Html -> otf_image_src($slide, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" alt="<?php echo $this -> Html -> sanitize(__($slide -> title)); ?>" /></a>
87
  <?php endif; ?>
88
  <?php else : ?>
89
  <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr(__($slide -> title)); ?>"></a>