Smooth Slider - Version 2.8.2

Version Description

If you have Smooth Slider 2.6 or plus, kindly update to 2.6.3 for proper height calcualtion for responsiveness.

= Before Upgrading =

  • Note the Title and Content fonts on your old Smooth Slider.
  • Go to 'Settings' panel and 'Save Changes'.
  • Recheck the Slider Title, Post Title and the Slider Content fonts on the Settings Panel.

Get older versions

Download this release

Release Info

Developer internet techies
Plugin Icon 128x128 Smooth Slider
Version 2.8.2
Comparing to
See all releases

Code changes from version 2.8.1 to 2.8.2

css/skins/default/functions.php CHANGED
@@ -179,7 +179,7 @@ function smooth_post_processor_default( $posts, $smooth_slider,$out_echo){
179
  return $r_array;
180
 
181
  }
182
- function smooth_slider_get_default($slider_handle,$r_array,$slider_id='',$echo='1'){
183
  $skin='default';
184
  global $smooth_slider,$default_slider;
185
  foreach($default_slider as $key=>$value){
@@ -188,7 +188,7 @@ function smooth_slider_get_default($slider_handle,$r_array,$slider_id='',$echo='
188
  $smooth_sldr_j = $r_array[0];
189
  $smooth_slider_css = smooth_get_inline_css();
190
  $html='';
191
- if(isset($smooth_sldr_j) && $smooth_sldr_j >= 1) : //is slider empty?
192
  wp_enqueue_script( 'smooth', smooth_slider_plugin_url( 'js/smooth.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
193
  wp_enqueue_script( 'smooth-dim', smooth_slider_plugin_url( 'js/dim.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
194
  wp_enqueue_script( 'jquery.touchwipe', smooth_slider_plugin_url( 'js/jquery.touchwipe.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
@@ -201,7 +201,7 @@ function smooth_slider_get_default($slider_handle,$r_array,$slider_id='',$echo='
201
  }
202
  else{
203
  $fouc_dom=$fouc_ready='';
204
- }
205
  /* Changed fouc code end 2.6 */
206
  $html.='<script type="text/javascript">';
207
  $html.=$fouc_ready;
179
  return $r_array;
180
 
181
  }
182
+ function smooth_slider_get_default($slider_handle,$r_array,$slider_id='',$echo='1') {
183
  $skin='default';
184
  global $smooth_slider,$default_slider;
185
  foreach($default_slider as $key=>$value){
188
  $smooth_sldr_j = $r_array[0];
189
  $smooth_slider_css = smooth_get_inline_css();
190
  $html='';
191
+ if(isset($smooth_sldr_j) && $smooth_sldr_j >= 1) : //is slider empty?
192
  wp_enqueue_script( 'smooth', smooth_slider_plugin_url( 'js/smooth.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
193
  wp_enqueue_script( 'smooth-dim', smooth_slider_plugin_url( 'js/dim.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
194
  wp_enqueue_script( 'jquery.touchwipe', smooth_slider_plugin_url( 'js/jquery.touchwipe.js' ),array('jquery'), SMOOTH_SLIDER_VER, false);
201
  }
202
  else{
203
  $fouc_dom=$fouc_ready='';
204
+ }
205
  /* Changed fouc code end 2.6 */
206
  $html.='<script type="text/javascript">';
207
  $html.=$fouc_ready;
css/smooth-meta-box.css ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Toggele Switch */
2
+ #sslider_box1 .smooth-meta-toggle {
3
+ position: absolute;
4
+ visibility: hidden;
5
+ }
6
+ #sslider_box1 .smooth-meta-toggle + label {
7
+ display: block;
8
+ position: relative;
9
+ cursor: pointer;
10
+ outline: none;
11
+ -webkit-user-select: none;
12
+ -moz-user-select: none;
13
+ -ms-user-select: none;
14
+ user-select: none;
15
+ }
16
+
17
+ #sslider_box1 input.smooth-meta-toggle-round + label {
18
+ padding: 2px;
19
+ width: 38px;
20
+ height: 20px;
21
+ background-color: #dddddd;
22
+ -webkit-border-radius: 60px;
23
+ -moz-border-radius: 60px;
24
+ -ms-border-radius: 60px;
25
+ -o-border-radius: 60px;
26
+ border-radius: 60px;
27
+ float: left;
28
+ margin-right: 20px;
29
+ }
30
+ #sslider_box1 input.smooth-meta-toggle-round + label:before, input.smooth-meta-toggle-round + label:after {
31
+ display: block;
32
+ position: absolute;
33
+ top: 1px;
34
+ left: 1px;
35
+ bottom: 1px;
36
+ content: "";
37
+ }
38
+ #sslider_box1 input.smooth-meta-toggle-round + label:before {
39
+ right: 1px;
40
+ background-color: #f1f1f1;
41
+ -webkit-border-radius: 60px;
42
+ -moz-border-radius: 60px;
43
+ -ms-border-radius: 60px;
44
+ -o-border-radius: 60px;
45
+ border-radius: 60px;
46
+ -webkit-transition: background 0.4s;
47
+ -moz-transition: background 0.4s;
48
+ -o-transition: background 0.4s;
49
+ transition: background 0.4s;
50
+ }
51
+ #sslider_box1 input.smooth-meta-toggle-round + label:after {
52
+ width: 22px;
53
+ background-color: #fff;
54
+ -webkit-border-radius: 100%;
55
+ -moz-border-radius: 100%;
56
+ -ms-border-radius: 100%;
57
+ -o-border-radius: 100%;
58
+ border-radius: 100%;
59
+ -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
60
+ -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
61
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
62
+ -webkit-transition: margin 0.4s;
63
+ -moz-transition: margin 0.4s;
64
+ -o-transition: margin 0.4s;
65
+ transition: margin 0.4s;
66
+ }
67
+ #sslider_box1 input.smooth-meta-toggle-round:checked + label:before {
68
+ background-color: #6AA84F;
69
+ }
70
+ #sslider_box1 input.smooth-meta-toggle-round:checked + label:after {
71
+ margin-left: 17px;
72
+ }
73
+ #sslider_box1 .smooth-psldr-post {
74
+ display:none;
75
+ }
76
+ /* End Toggle Switch */
includes/smooth-slider-functions.php CHANGED
@@ -213,8 +213,8 @@ function add_cf5_column_if_not_exist($table_name, $column_name, $create_ddl) {
213
  }
214
  return false;
215
  }
216
- add_action( 'wp_ajax_update_review_me', 'update_review_me' );
217
- function update_review_me() {
218
  $smooth_slider=array();
219
  $smooth_slider = get_option('smooth_slider_options');
220
  $reviewme=(isset($_POST['reviewme']))?($_POST['reviewme']):(strtotime("now"));
213
  }
214
  return false;
215
  }
216
+ add_action( 'wp_ajax_smooth_update_review_me', 'smooth_update_review_me' );
217
+ function smooth_update_review_me() {
218
  $smooth_slider=array();
219
  $smooth_slider = get_option('smooth_slider_options');
220
  $reviewme=(isset($_POST['reviewme']))?($_POST['reviewme']):(strtotime("now"));
js/admin.js CHANGED
@@ -3,7 +3,7 @@ jQuery(document).ready(function(){
3
  var r = jQuery('#smooth_reviewme').val();
4
  var data = {};
5
  data['reviewme'] = parseInt(r);
6
- data['action'] = 'update_review_me';
7
  jQuery.post(ajaxurl, data, function(response) {
8
  if(response) {
9
  alert(jQuery('#smooth_reviewme').val(response));
@@ -15,7 +15,7 @@ jQuery(document).ready(function(){
15
  jQuery('#already').on("click", function(){
16
  var data = {};
17
  data['reviewme'] = 0;
18
- data['action'] = 'update_review_me';
19
  jQuery.post(ajaxurl, data, function(response) {
20
  if(response) {
21
  jQuery('#smooth_reviewme').val(response);
3
  var r = jQuery('#smooth_reviewme').val();
4
  var data = {};
5
  data['reviewme'] = parseInt(r);
6
+ data['action'] = 'smooth_update_review_me';
7
  jQuery.post(ajaxurl, data, function(response) {
8
  if(response) {
9
  alert(jQuery('#smooth_reviewme').val(response));
15
  jQuery('#already').on("click", function(){
16
  var data = {};
17
  data['reviewme'] = 0;
18
+ data['action'] = 'smooth_update_review_me';
19
  jQuery.post(ajaxurl, data, function(response) {
20
  if(response) {
21
  jQuery('#smooth_reviewme').val(response);
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.clickonf5.org/go/smooth-slider/
4
  Tags: best slider plugin, carousel, carousel slider, coin slider, content slider, content slideshow, custom video slider, flex slider, free video slider, free video slideshow, Horizontal slider, Image Rotator, image slider, image slideshow, javascript slider, javascript slideshow, jquery slider, jquery slideshow, Photo Slider, posts slider, responsive slider, responsive slideshow, sidebar, slide, slide show, slider, slider plugin, slider widget, slides, slideshow,slideshow manager, slideshow plugin, vertical slider, video slider, video slideshow,vimeo slideshow, vimeo slider, widget slider, widget slideshow, wordpress slider, wordpress slideshow, wp slider, youtube slider, youtube slideshow, post slider, fullscreen Slider, css3 slider, responsive image slider, banner slider, social slider, cycle slider, text slider, revolution slider, thumbnail slider, touch slider, sliders, parallax slider, coinslider, featured-content-slider, image, images, picture, pictures, picture slider, responsive, shortcode, widget, vertical slides, autoplay, auto, jquery, rotate, flexslider, gallery, photo gallery, javascript, rotator, wordpress picture slider, wordpress responsive slider, animation, best slider, fullwidth slider, mobile slider, swipe, layer, layer slider, product slider, mp3, video
5
  Requires at least: 3.0
6
  Tested up to: 4.3.1
7
- Stable tag: 2.8.1
8
  License: GPLv2 or later
9
 
10
  Responsive WordPress Slider for Featured Content, Videos and Media Images
@@ -151,6 +151,10 @@ Check the other FAQs on Smooth [Slider Documetation on SliderVilla](http://guide
151
 
152
 
153
  == Changelog ==
 
 
 
 
154
 
155
  Version 2.8.1 (10/23/2015)
156
 
4
  Tags: best slider plugin, carousel, carousel slider, coin slider, content slider, content slideshow, custom video slider, flex slider, free video slider, free video slideshow, Horizontal slider, Image Rotator, image slider, image slideshow, javascript slider, javascript slideshow, jquery slider, jquery slideshow, Photo Slider, posts slider, responsive slider, responsive slideshow, sidebar, slide, slide show, slider, slider plugin, slider widget, slides, slideshow,slideshow manager, slideshow plugin, vertical slider, video slider, video slideshow,vimeo slideshow, vimeo slider, widget slider, widget slideshow, wordpress slider, wordpress slideshow, wp slider, youtube slider, youtube slideshow, post slider, fullscreen Slider, css3 slider, responsive image slider, banner slider, social slider, cycle slider, text slider, revolution slider, thumbnail slider, touch slider, sliders, parallax slider, coinslider, featured-content-slider, image, images, picture, pictures, picture slider, responsive, shortcode, widget, vertical slides, autoplay, auto, jquery, rotate, flexslider, gallery, photo gallery, javascript, rotator, wordpress picture slider, wordpress responsive slider, animation, best slider, fullwidth slider, mobile slider, swipe, layer, layer slider, product slider, mp3, video
5
  Requires at least: 3.0
6
  Tested up to: 4.3.1
7
+ Stable tag: 2.8.2
8
  License: GPLv2 or later
9
 
10
  Responsive WordPress Slider for Featured Content, Videos and Media Images
151
 
152
 
153
  == Changelog ==
154
+ Version 2.8.2 (11/25/2015)
155
+
156
+ 1. New: WPML compatability
157
+ 2. New: Add slide (post/page/CPT) to slider toggle button instead of checkbox
158
 
159
  Version 2.8.1 (10/23/2015)
160
 
settings/settings.php CHANGED
@@ -1047,8 +1047,6 @@ jQuery('#saveResult').html("<div id='popup'><div class='modal_shortcode'>Quick E
1047
 
1048
  </div> <!--end of poststuff -->
1049
 
1050
-
1051
-
1052
  <?php
1053
  }
1054
  function register_mysettings() { // whitelist options
1047
 
1048
  </div> <!--end of poststuff -->
1049
 
 
 
1050
  <?php
1051
  }
1052
  function register_mysettings() { // whitelist options
settings/sliders.php CHANGED
@@ -335,7 +335,7 @@ wp_enqueue_script( 'media-uploader', smooth_slider_plugin_url( 'js/media-uploade
335
  </div>
336
 
337
 
338
- <div id="poststuff" class="metabox-holder has-right-sidebar" style="float:left;width:25%;max-width:300px;margin-top:20px;">
339
 
340
  <div class="postbox">
341
  <h3 class="hndle"><span><?php _e('About this Plugin:','smooth-slider'); ?></span></h3>
335
  </div>
336
 
337
 
338
+ <div id="poststuff" class="metabox-holder has-right-sidebar" style="float:left;width:25%;max-width:300px;min-width: 255px;margin-top:20px;">
339
 
340
  <div class="postbox">
341
  <h3 class="hndle"><span><?php _e('About this Plugin:','smooth-slider'); ?></span></h3>
slider_versions/shortcodes_1.php CHANGED
@@ -75,7 +75,7 @@ function return_smooth_slider_recent($offset=0, $data=array()) {
75
 
76
  function smooth_slider_recent_shortcode($atts) {
77
  extract(shortcode_atts(array(
78
- 'offset' => '',
79
  ), $atts));
80
  return return_smooth_slider_recent($offset);
81
  }
75
 
76
  function smooth_slider_recent_shortcode($atts) {
77
  extract(shortcode_atts(array(
78
+ 'offset' => '0',
79
  ), $atts));
80
  return return_smooth_slider_recent($offset);
81
  }
slider_versions/smooth_1.php CHANGED
@@ -83,11 +83,25 @@ function carousel_posts_on_slider($max_posts, $offset=0, $slider_id = '1',$out_e
83
  else {
84
  $orderby = 'a.slide_order ASC, a.date DESC';
85
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  $posts = $wpdb->get_results("SELECT b.* FROM
87
  $table_name a LEFT OUTER JOIN $post_table b
88
  ON a.post_id = b.ID
89
- WHERE (b.post_status = 'publish' OR (b.post_type='attachment' AND b.post_status = 'inherit')) AND a.slider_id = '$slider_id' AND (a.expiry IS NULL OR DATE(a.expiry) >= DATE(NOW()) ) ORDER BY ".$orderby." LIMIT $offset, $max_posts", OBJECT);
90
-
91
  $r_array=smooth_global_posts_processor( $posts, $smooth_slider, $out_echo, $set, $data );
92
  return $r_array;
93
  }
@@ -127,7 +141,23 @@ function carousel_posts_on_slider_category($max_posts='5', $catg_slug='', $offse
127
  $category = get_the_category();
128
  $slider_cat = $category[0]->cat_ID;
129
  }
130
- $rand = $smooth_slider['rand'];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
131
  if(isset($rand) and $rand=='1'){
132
  $orderby = '&orderby=rand';
133
  }
@@ -159,9 +189,26 @@ function carousel_posts_on_slider_recent($max_posts='5', $offset=0, $out_echo =
159
  else {
160
  $orderby = '';
161
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
162
  //extract posts data
163
- $posts = get_posts('numberposts='.$max_posts.'&offset='.$offset.$orderby);
164
-
165
  $r_array=smooth_global_posts_processor( $posts, $smooth_slider, $out_echo, $set,$data );
166
  return $r_array;
167
  }
83
  else {
84
  $orderby = 'a.slide_order ASC, a.date DESC';
85
  }
86
+ //WPML
87
+ if( function_exists('icl_plugin_action_links') ) {
88
+ $tr_table = $table_prefix."icl_translations";
89
+ $posts = $wpdb->get_results("SELECT b.* FROM
90
+ $table_name a
91
+ LEFT OUTER JOIN $post_table b
92
+ ON a.post_id = b.ID
93
+ LEFT OUTER JOIN $tr_table t
94
+ ON a.post_id = t.element_id
95
+ WHERE ((b.post_status = 'publish' AND t.language_code = '".ICL_LANGUAGE_CODE."') OR (b.post_type='attachment' AND b.post_status = 'inherit'))
96
+ AND a.slider_id = '$slider_id' AND (a.expiry IS NULL OR a.expiry='0000-00-00' OR DATE(a.expiry) >= DATE(NOW()))
97
+ ORDER BY ".$orderby." LIMIT $offset, $max_posts", OBJECT);
98
+ }
99
+ else {
100
  $posts = $wpdb->get_results("SELECT b.* FROM
101
  $table_name a LEFT OUTER JOIN $post_table b
102
  ON a.post_id = b.ID
103
+ WHERE (b.post_status = 'publish' OR (b.post_type='attachment' AND b.post_status = 'inherit')) AND a.slider_id = '$slider_id' AND (a.expiry IS NULL OR a.expiry='0000-00-00' OR DATE(a.expiry) >= DATE(NOW()) ) ORDER BY ".$orderby." LIMIT $offset, $max_posts", OBJECT);
104
+ }
105
  $r_array=smooth_global_posts_processor( $posts, $smooth_slider, $out_echo, $set, $data );
106
  return $r_array;
107
  }
141
  $category = get_the_category();
142
  $slider_cat = $category[0]->cat_ID;
143
  }
144
+ //WPML
145
+ if( function_exists('icl_plugin_action_links') ) {
146
+ $tr_table = $table_prefix."icl_translations";
147
+ $slider_cat = $wpdb->get_var("
148
+ SELECT element_id
149
+ FROM $tr_table
150
+ WHERE element_type = 'tax_category'
151
+ AND language_code = '".ICL_LANGUAGE_CODE."'
152
+ AND trid = ( SELECT trid
153
+ FROM $tr_table
154
+ WHERE element_type = 'tax_category'
155
+ AND element_id = $slider_cat
156
+ )
157
+ ");
158
+ }
159
+ //WPML END
160
+ $rand = $smooth_slider['rand'];
161
  if(isset($rand) and $rand=='1'){
162
  $orderby = '&orderby=rand';
163
  }
189
  else {
190
  $orderby = '';
191
  }
192
+ //WPML
193
+ if( function_exists('icl_plugin_action_links') ) {
194
+ global $wpdb, $table_prefix;
195
+ $post_table = $table_prefix."posts";
196
+ $tr_table = $table_prefix."icl_translations";
197
+ $posts=$wpdb->get_results("SELECT *
198
+ FROM $post_table AS p
199
+ LEFT OUTER JOIN $tr_table AS t
200
+ ON p.ID = t.element_id
201
+ WHERE t.element_type = 'post_post'
202
+ AND t.language_code = '".ICL_LANGUAGE_CODE."'
203
+ AND p.post_status = 'publish'
204
+ ORDER BY p.post_date DESC
205
+ LIMIT $offset, $max_posts
206
+ ");
207
+ }
208
+ else {
209
  //extract posts data
210
+ $posts = get_posts('numberposts='.$max_posts.'&offset='.$offset.$orderby);
211
+ }
212
  $r_array=smooth_global_posts_processor( $posts, $smooth_slider, $out_echo, $set,$data );
213
  return $r_array;
214
  }
smooth-slider.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Smooth Slider
4
  Plugin URI: http://slidervilla.com/smooth-slider/
5
  Description: Smooth slider adds a responsive featured content on image slider using shortcode, widget and template tags. Create and embed featured content slider, recent post slider, category slider in less than 60 seconds.
6
- Version: 2.8.1
7
  Author: SliderVilla
8
  Text Domain: smooth-slider
9
  Author URI: http://slidervilla.com/
@@ -31,12 +31,12 @@ Wordpress version supported: 2.9 and above
31
  //defined global variables and constants here
32
  global $smooth_slider,$default_slider,$smooth_db_version,$default_smooth_slider_settings;
33
  $smooth_slider = get_option('smooth_slider_options');
34
- $smooth_db_version='2.8.1'; //current version of smooth slider database
35
  define('SLIDER_TABLE','smooth_slider'); //Slider TABLE NAME
36
  define('PREV_SLIDER_TABLE','slider'); //Slider TABLE NAME
37
  define('SLIDER_META','smooth_slider_meta'); //Meta TABLE NAME
38
  define('SLIDER_POST_META','smooth_slider_postmeta'); //Meta TABLE NAME
39
- define("SMOOTH_SLIDER_VER","2.8.1",false);//Current Version of Smooth Slider
40
  if ( ! defined( 'SMOOTH_SLIDER_PLUGIN_BASENAME' ) )
41
  define( 'SMOOTH_SLIDER_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
42
  if ( ! defined( 'SMOOTH_SLIDER_CSS_DIR' ) ){
@@ -270,139 +270,116 @@ require_once (dirname (__FILE__) . '/includes/sslider-get-the-image-functions.ph
270
  //This adds the post to the slider
271
  function add_to_slider($post_id) {
272
  global $smooth_slider;
273
- if(isset($_POST['sldr-verify']) and current_user_can( $smooth_slider['user_level'] ) ) {
274
- global $wpdb, $table_prefix, $post;
275
- $table_name = $table_prefix.SLIDER_TABLE;
276
 
277
- if(isset($_POST['slider']) and !isset($_POST['slider_name'])) {
278
- $slider_id = '1';
279
- if(is_post_on_any_slider($post_id)){
280
- $wpdb->delete( $table_name, array( 'post_id' => $post_id ), array( '%d' ) );
281
- }
282
- $expiry=get_post_meta($post_id,'_sslider_expiry',true);
283
- if(isset($_POST['slider']) and $_POST['slider'] == "slider" and !slider($post_id,$slider_id)) {
284
- $dt = date('Y-m-d H:i:s');
285
- $wpdb->query(
286
- $wpdb->prepare(
287
- "INSERT INTO $table_name
288
- (post_id, date, slider_id)
289
- VALUES ( %d, %s, %d, )",
290
- $post_id,
291
- $dt,
292
- $slider_id
293
- )
294
- );
295
- }
296
- }
297
- if(isset($_POST['sslider_expiry']) ) {
298
- if(!empty($_POST['sslider_expiry'])){
299
- $date=$_POST['sslider_expiry'];
300
- $dt = date("Y-m-d",strtotime($date));
301
- $wpdb->update($table_name, array('expiry' => $dt), array('post_id' => $post_id), array('%s'), array('%s'));
302
- update_post_meta($post_id, '_sslider_expiry', $dt);
303
  }
304
- else {
305
- //$wpdb->update($table_name, array('expiry' => NULL), array('post_id' => $post_id), array('%s'), array('%s'));
306
- $sql = "UPDATE $table_name SET expiry = NULL WHERE post_id ='$post_id'";
307
- $wpdb->query($sql);
308
- update_post_meta($post_id, '_sslider_expiry', '');
309
- }
310
-
311
- }
312
- if(isset($_POST['slider']) and $_POST['slider'] == "slider" and isset($_POST['slider_name'])){
313
- $slider_id_arr = $_POST['slider_name'];
314
- $post_sliders_data = ss_get_post_sliders($post_id);
315
-
316
- foreach($post_sliders_data as $post_slider_data){
317
- if(!in_array($post_slider_data['slider_id'],$slider_id_arr)) {
318
- $wpdb->delete( $table_name, array( 'post_id' => $post_id ), array( '%d' ) );
319
  }
320
- }
321
- foreach($slider_id_arr as $slider_id) {
322
- if(!slider($post_id,$slider_id)) {
323
- $dt = date('Y-m-d H:i:s');
324
- $wpdb->query(
325
- $wpdb->prepare(
326
- "INSERT INTO $table_name
327
- (post_id, date, slider_id)
328
- VALUES ( %d, %s, %d )",
329
- $post_id,
330
- $dt,
331
- $slider_id
332
- )
333
- );
334
  }
335
  }
336
- }
337
-
338
- $table_name = $table_prefix.SLIDER_POST_META;
339
- if(isset($_POST['display_slider']) and !isset($_POST['display_slider_name'])) {
340
- $slider_id = '1';
341
- }
342
- if(isset($_POST['display_slider']) and isset($_POST['display_slider_name'])){
343
- $slider_id = $_POST['display_slider_name'];
344
- }
345
- if(isset($_POST['display_slider'])){
346
- if(!ss_post_on_slider($post_id,$slider_id)) {
347
- $wpdb->delete( $table_name, array( 'post_id' => $post_id ), array( '%d' ) );
348
- $wpdb->query(
349
- $wpdb->prepare(
350
- "INSERT INTO $table_name
351
- (post_id, slider_id)
352
- VALUES ( %d, %d )",
353
- $post_id,
354
- $slider_id
355
- )
356
- );
357
  }
358
- }
359
-
 
 
 
 
 
 
360
 
361
- $thumbnail_key = $smooth_slider['img_pick'][1];
362
- $sslider_thumbnail = get_post_meta($post_id,$thumbnail_key,true);
363
- $post_slider_thumbnail=isset($_POST['sslider_thumbnail'])?$_POST['sslider_thumbnail']:'';
364
- if($sslider_thumbnail != $post_slider_thumbnail) {
365
- update_post_meta($post_id, $thumbnail_key, $post_slider_thumbnail);
366
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
367
 
368
- $sslider_link = get_post_meta($post_id,'slide_redirect_url',true);
369
- $link=isset($_POST['sslider_link'])?$_POST['sslider_link']:'';
370
- //$sldr_post=get_post($post_id);
371
- //if((!isset($link) or empty($link)) and $sldr_post->post_status == 'publish' ){$link=get_permalink($post_id);}//from 2.3.3
372
- if($sslider_link != $link) {
373
- update_post_meta($post_id, 'slide_redirect_url', $link);
374
- }
375
 
376
- $sslider_expiry = get_post_meta($post_id,'sslider_expiry',true);
377
- $post_sslider_expiry = isset($_POST['sslider_expiry'])?$_POST['sslider_expiry']:'';
378
- if($sslider_expiry != $post_sslider_expiry) {
379
- update_post_meta($post_id, '_sslider_expiry', $post_sslider_expiry);
380
- }
381
-
382
- $sslider_nolink = get_post_meta($post_id,'sslider_nolink',true);
383
- $post_sslider_nolink = isset($_POST['sslider_nolink'])?$_POST['sslider_nolink']:'';
384
- if($sslider_nolink != $post_sslider_nolink) {
385
- update_post_meta($post_id, 'sslider_nolink', $post_sslider_nolink);
386
- }
387
- /* Added for embed shortcode - start */
388
- $disable_image = get_post_meta($post_id,'_disable_image',true);
389
- $post_disable_image = isset($_POST['disable_image'])?$_POST['disable_image']:'';
390
- if($disable_image != $post_disable_image ) {
391
- update_post_meta($post_id, '_disable_image', $post_disable_image );
392
- }
393
- $smooth_sslider_eshortcode = get_post_meta($post_id,'_smooth_embed_shortcode',true);
394
- $post_smooth_sslider_eshortcode = isset($_POST['smooth_sslider_eshortcode'])?$_POST['smooth_sslider_eshortcode']:'';
395
- if($smooth_sslider_eshortcode != $post_smooth_sslider_eshortcode) {
396
- update_post_meta($post_id, '_smooth_embed_shortcode', $post_smooth_sslider_eshortcode);
397
- }
398
- $slider_style = get_post_meta($post_id,'_smooth_slider_style',true);
399
- $post_slider_style=isset($_POST['_smooth_slider_style'])?$_POST['_smooth_slider_style']:'';
400
- if($slider_style != $post_slider_style) {
401
- update_post_meta($post_id, '_smooth_slider_style', $post_slider_style);
402
- }
403
- /* Added for embed shortcode -end */
404
 
405
- } //sldr_verify
406
  }
407
 
408
  //Removes the post from the slider, if you uncheck the checkbox from the edit post screen
@@ -418,7 +395,7 @@ function remove_from_slider($post_id) {
418
  if (!wp_verify_nonce($_POST['sldr-verify'], 'SmoothSlider'))
419
  return $post_id;
420
 
421
- if(isset($_POST['slider']) and empty($_POST['slider']) and is_post_on_any_slider($post_id)) {
422
  $wpdb->delete( $table_name, array( 'post_id' => $post_id ), array( '%d' ) );
423
  }
424
 
@@ -485,7 +462,37 @@ function smooth_slider_add_custom_box() {
485
  add_action('admin_menu', 'smooth_slider_add_custom_box');
486
 
487
  function add_to_slider_checkbox() {
488
- global $post, $smooth_slider;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
489
  if (current_user_can( $smooth_slider['user_level'] )) {
490
  $extra = "";
491
 
@@ -514,7 +521,8 @@ function add_to_slider_checkbox() {
514
  $sslider_disable_image=get_post_meta($post_id, '_disable_image', true);
515
  $smooth_embed_shortcode=get_post_meta($post_id, '_smooth_embed_shortcode', true);
516
  $sslider_expiry=get_post_meta($post_id, '_sslider_expiry', true);
517
- //wp_enqueue_style( 'smooth-meta-box', smooth_slider_plugin_url( 'css/css/smooth-metabox.css' ), false, SMOOTH_SLIDER_VER, 'all');
 
518
  wp_enqueue_script( 'jquery-ui-datepicker', false,array('jquery','jQuery-ui-core'),SMOOTH_SLIDER_VER, true);
519
  wp_enqueue_style('jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css');
520
  $dtpicker = smooth_dateformat_PHP_to_jQueryUI($wpDateFormat);
@@ -539,6 +547,17 @@ function add_to_slider_checkbox() {
539
  jQuery("#smooth_basic").css({"background":"buttonface","color":"#222222"});
540
 
541
  });
 
 
 
 
 
 
 
 
 
 
 
542
  });
543
  </script>
544
  <?php /* End tab 2.6 */ ?>
@@ -549,14 +568,28 @@ function add_to_slider_checkbox() {
549
  <div id="smooth_basic_tab">
550
  <div id="slider_checkbox">
551
  <table class="form-table">
552
- <tr valign="top">
553
- <th scope="row"><input type="checkbox" class="sldr_post" name="slider" value="slider" <?php echo $extra;?> />
554
- <label for="slider"><?php _e('Add this post/page to','smooth-slider'); ?> </label></th>
555
- <td><select name="slider_name[]" multiple="multiple" size="2" style="height:4em;">
556
- <?php foreach ($sliders as $slider) { ?>
557
- <option value="<?php echo $slider['slider_id'];?>" <?php if(in_array($slider['slider_id'],$post_slider_arr)){echo 'selected';} ?>><?php echo $slider['slider_name'];?></option>
558
- <?php } ?>
559
- </select></td></tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
560
 
561
  <tr valign="top">
562
  <th scope="row"><label for="sslider_link"><?php _e('Slide Link URL ','smooth-slider'); ?></label></th>
3
  Plugin Name: Smooth Slider
4
  Plugin URI: http://slidervilla.com/smooth-slider/
5
  Description: Smooth slider adds a responsive featured content on image slider using shortcode, widget and template tags. Create and embed featured content slider, recent post slider, category slider in less than 60 seconds.
6
+ Version: 2.8.2
7
  Author: SliderVilla
8
  Text Domain: smooth-slider
9
  Author URI: http://slidervilla.com/
31
  //defined global variables and constants here
32
  global $smooth_slider,$default_slider,$smooth_db_version,$default_smooth_slider_settings;
33
  $smooth_slider = get_option('smooth_slider_options');
34
+ $smooth_db_version='2.8.2'; //current version of smooth slider database
35
  define('SLIDER_TABLE','smooth_slider'); //Slider TABLE NAME
36
  define('PREV_SLIDER_TABLE','slider'); //Slider TABLE NAME
37
  define('SLIDER_META','smooth_slider_meta'); //Meta TABLE NAME
38
  define('SLIDER_POST_META','smooth_slider_postmeta'); //Meta TABLE NAME
39
+ define("SMOOTH_SLIDER_VER","2.8.2",false);//Current Version of Smooth Slider
40
  if ( ! defined( 'SMOOTH_SLIDER_PLUGIN_BASENAME' ) )
41
  define( 'SMOOTH_SLIDER_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
42
  if ( ! defined( 'SMOOTH_SLIDER_CSS_DIR' ) ){
270
  //This adds the post to the slider
271
  function add_to_slider($post_id) {
272
  global $smooth_slider;
 
 
 
273
 
274
+ if(isset($_POST['sldr-verify']) and current_user_can( $smooth_slider['user_level'] ) ) {
275
+ global $wpdb, $table_prefix, $post;
276
+ $table_name = $table_prefix.SLIDER_TABLE;
277
+
278
+ if( !isset($_POST['smooth-slider']) and is_post_on_any_slider($post_id) ){
279
+ $wpdb->delete($table_name, array('post_id' => $post_id));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
280
  }
281
+
282
+ if(isset($_POST['smooth-slider']) and !isset($_POST['smooth_slider_name'])) {
283
+ $slider_id = '1';
284
+ if(is_post_on_any_slider($post_id)){
285
+ $wpdb->delete($table_name, array('post_id' => $post_id));
286
+ }
287
+
288
+ if(isset($_POST['smooth-slider']) and $_POST['smooth-slider'] == "smooth-slider" and !slider($post_id,$slider_id)) {
289
+ $dt = date('Y-m-d H:i:s');
290
+ $wpdb->insert($table_name, array('post_id' => $post_id, 'date' => $dt, 'slider_id' => $slider_id));
291
+ }
 
 
 
 
292
  }
293
+ if(isset($_POST['sslider_expiry']) ) {
294
+ $expiry=$_POST['sslider_expiry'];
295
+ if(!empty($expiry)){
296
+ $date=$expiry;
297
+ $dt = date("Y-m-d",strtotime($date));
298
+ $wpdb->update($table_name, array('expiry' => $dt), array('post_id' => $post_id));
299
+ update_post_meta($post_id, '_sslider_expiry', $dt);
300
+ }
301
+ else{
302
+ $wpdb->update($table_name, array('expiry' => NULL), array('post_id' => $post_id));
303
+ update_post_meta($post_id, '_sslider_expiry', '');
 
 
 
304
  }
305
  }
306
+ if(isset($_POST['smooth-slider']) and $_POST['smooth-slider'] == "smooth-slider" and isset($_POST['smooth_slider_name'])){
307
+ $slider_id_arr = $_POST['smooth_slider_name'];
308
+ $post_sliders_data = ss_get_post_sliders($post_id);
309
+
310
+ foreach($post_sliders_data as $post_slider_data){
311
+ if(!in_array($post_slider_data['slider_id'],$slider_id_arr)) {
312
+ $wpdb->delete($table_name, array('post_id' => $post_id));
313
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
314
  }
315
+
316
+ foreach($slider_id_arr as $slider_id) {
317
+ if(!slider($post_id,$slider_id)) {
318
+ $dt = date('Y-m-d H:i:s');
319
+ $wpdb->insert($table_name, array('post_id' => $post_id, 'date' => $dt, 'slider_id' => $slider_id));
320
+ }
321
+ }
322
+ }
323
 
324
+ $table_name = $table_prefix.SLIDER_POST_META;
325
+ if(isset($_POST['smooth_display_slider']) and !isset($_POST['smooth_display_slider_name'])) {
326
+ $slider_id = '1';
327
+ }
328
+ if(isset($_POST['smooth_display_slider']) and isset($_POST['smooth_display_slider_name'])){
329
+ $slider_id = $_POST['smooth_display_slider_name'];
330
+ }
331
+ if(isset($_POST['smooth_display_slider'])){
332
+ if(!ss_post_on_slider($post_id,$slider_id)) {
333
+ $wpdb->delete($table_name, array('post_id' => $post_id));
334
+ $wpdb->insert($table_name, array('post_id' => $post_id, 'slider_id' => $slider_id));
335
+ }
336
+ }
337
+
338
+ $thumbnail_key = $smooth_slider['img_pick'][1];
339
+ $sslider_thumbnail = get_post_meta($post_id,$thumbnail_key,true);
340
+ $post_slider_thumbnail=isset($_POST['sslider_thumbnail'])?$_POST['sslider_thumbnail']:'';
341
+ if($sslider_thumbnail != $post_slider_thumbnail) {
342
+ update_post_meta($post_id, $thumbnail_key, $post_slider_thumbnail);
343
+ }
344
 
345
+ $sslider_link = get_post_meta($post_id,'slide_redirect_url',true);
346
+ $link=isset($_POST['sslider_link'])?$_POST['sslider_link']:'';
347
+ //$sldr_post=get_post($post_id);
348
+ //if((!isset($link) or empty($link)) and $sldr_post->post_status == 'publish' ){$link=get_permalink($post_id);}//from 2.3.3
349
+ if($sslider_link != $link) {
350
+ update_post_meta($post_id, 'slide_redirect_url', $link);
351
+ }
352
 
353
+ $sslider_expiry = get_post_meta($post_id,'sslider_expiry',true);
354
+ $post_sslider_expiry = isset($_POST['sslider_expiry'])?$_POST['sslider_expiry']:'';
355
+ if($sslider_expiry != $post_sslider_expiry) {
356
+ update_post_meta($post_id, '_sslider_expiry', $post_sslider_expiry);
357
+ }
358
+
359
+ $sslider_nolink = get_post_meta($post_id,'sslider_nolink',true);
360
+ $post_sslider_nolink = isset($_POST['sslider_nolink'])?$_POST['sslider_nolink']:'';
361
+ if($sslider_nolink != $post_sslider_nolink) {
362
+ update_post_meta($post_id, 'sslider_nolink', $post_sslider_nolink);
363
+ }
364
+ /* Added for embed shortcode - start */
365
+ $disable_image = get_post_meta($post_id,'_disable_image',true);
366
+ $post_disable_image = isset($_POST['disable_image'])?$_POST['disable_image']:'';
367
+ if($disable_image != $post_disable_image ) {
368
+ update_post_meta($post_id, '_disable_image', $post_disable_image );
369
+ }
370
+ $smooth_sslider_eshortcode = get_post_meta($post_id,'_smooth_embed_shortcode',true);
371
+ $post_smooth_sslider_eshortcode = isset($_POST['smooth_sslider_eshortcode'])?$_POST['smooth_sslider_eshortcode']:'';
372
+ if($smooth_sslider_eshortcode != $post_smooth_sslider_eshortcode) {
373
+ update_post_meta($post_id, '_smooth_embed_shortcode', $post_smooth_sslider_eshortcode);
374
+ }
375
+ $slider_style = get_post_meta($post_id,'_smooth_slider_style',true);
376
+ $post_slider_style=isset($_POST['_smooth_slider_style'])?$_POST['_smooth_slider_style']:'';
377
+ if($slider_style != $post_slider_style) {
378
+ update_post_meta($post_id, '_smooth_slider_style', $post_slider_style);
379
+ }
380
+ /* Added for embed shortcode -end */
381
 
382
+ } //sldr_verify
383
  }
384
 
385
  //Removes the post from the slider, if you uncheck the checkbox from the edit post screen
395
  if (!wp_verify_nonce($_POST['sldr-verify'], 'SmoothSlider'))
396
  return $post_id;
397
 
398
+ if(empty($_POST['smooth-slider']) and is_post_on_any_slider($post_id)) {
399
  $wpdb->delete( $table_name, array( 'post_id' => $post_id ), array( '%d' ) );
400
  }
401
 
462
  add_action('admin_menu', 'smooth_slider_add_custom_box');
463
 
464
  function add_to_slider_checkbox() {
465
+ global $post, $smooth_slider;
466
+ //for WPML start
467
+ if( function_exists('icl_plugin_action_links') ) {
468
+ if( isset($_GET['source_lang']) && isset($_GET['trid']) ) {
469
+ global $wpdb, $table_prefix;
470
+ $id = $wpdb->get_var( "SELECT element_id FROM {$wpdb->prefix}icl_translations WHERE trid=".$_GET['trid']." AND language_code='".$_GET['source_lang']."'" );
471
+ $table_name = $table_prefix.SLIDER_TABLE;
472
+ $q = "select * from $table_name where post_id=".$id;
473
+ $res = $wpdb->get_results($q);
474
+ if( count($res) > 0 ) {
475
+ $sarr=array();
476
+ foreach($res as $re) {
477
+ $sarr[] = $re->slider_id;
478
+ }
479
+ echo "<script type='text/javascript'>";
480
+ echo "jQuery(document).ready(function($) {";
481
+ echo "jQuery('.smooth-psldr-post').prop('checked','true');";
482
+ $sliders = ss_get_sliders();
483
+ foreach ($sliders as $slider) {
484
+ if(in_array($slider['slider_id'],$sarr)) {
485
+ echo "jQuery('#smooth_slider_name".$slider['slider_id']."').prop('checked','true');";
486
+ }
487
+ }
488
+ echo "});";
489
+ echo "</script>";
490
+ }
491
+ }
492
+ }
493
+ //for WPML end
494
+
495
+
496
  if (current_user_can( $smooth_slider['user_level'] )) {
497
  $extra = "";
498
 
521
  $sslider_disable_image=get_post_meta($post_id, '_disable_image', true);
522
  $smooth_embed_shortcode=get_post_meta($post_id, '_smooth_embed_shortcode', true);
523
  $sslider_expiry=get_post_meta($post_id, '_sslider_expiry', true);
524
+ /* Post Meta Box Style */
525
+ wp_enqueue_style( 'smooth-meta-box', smooth_slider_plugin_url( 'css/smooth-meta-box.css' ), false, SMOOTH_SLIDER_VER, 'all');
526
  wp_enqueue_script( 'jquery-ui-datepicker', false,array('jquery','jQuery-ui-core'),SMOOTH_SLIDER_VER, true);
527
  wp_enqueue_style('jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css');
528
  $dtpicker = smooth_dateformat_PHP_to_jQueryUI($wpDateFormat);
547
  jQuery("#smooth_basic").css({"background":"buttonface","color":"#222222"});
548
 
549
  });
550
+ jQuery(".smooth-add-to-slider").click(function() {
551
+ var added = 0;
552
+ jQuery(".smooth-add-to-slider").each(function() {
553
+ if(jQuery(this).prop("checked") == true) { added = added + 1; }
554
+ });
555
+ if( added >= 1 ) {
556
+ jQuery(".smooth-psldr-post").prop("checked", true );
557
+ } else {
558
+ jQuery(".smooth-psldr-post").prop("checked", false );
559
+ }
560
+ });
561
  });
562
  </script>
563
  <?php /* End tab 2.6 */ ?>
568
  <div id="smooth_basic_tab">
569
  <div id="slider_checkbox">
570
  <table class="form-table">
571
+ </tr>
572
+ <tr valign="top">
573
+ <td scope="row">
574
+ <input id="smooth-slider" name="smooth-slider" class="smooth-psldr-post" type="checkbox" value="smooth-slider" <?php echo $extra;?> >
575
+ <label><?php _e('Add this post/page to','smooth-slider'); ?></label>
576
+ </td>
577
+ <td>
578
+ <?php $i = 0;
579
+ foreach ($sliders as $slider) {
580
+ if($i < 3) $display="display:block;"; else $display="display:none;"; ?>
581
+ <div style="margin-bottom: 16px;float: left;width: 100%;<?php echo $display;?>" class="slider-name">
582
+ <span style="float: left;margin-right: 20px;min-width: 100px;"><?php echo $slider['slider_name'];?></span>
583
+ <input id="smooth_slider_name<?php echo $slider['slider_id'];?>" name="smooth_slider_name[]" class="smooth-meta-toggle smooth-meta-toggle-round smooth-add-to-slider" type="checkbox" value="<?php echo $slider['slider_id'];?>" <?php if(in_array($slider['slider_id'],$post_slider_arr)){echo 'checked';} ?> >
584
+ <label for="smooth_slider_name<?php echo $slider['slider_id'];?>"></label>
585
+ </div>
586
+ <?php $i++;
587
+ } if($i > 3) { ?>
588
+ <a href="" class='show-all'><?php _e('Show All','smooth-slider'); ?></a>
589
+ <?php } ?>
590
+ <input type="hidden" name="smooth-sldr-verify" id="smooth-sldr-verify" value="<?php echo wp_create_nonce('SmoothProSlider');?>" />
591
+ </td>
592
+ </tr>
593
 
594
  <tr valign="top">
595
  <th scope="row"><label for="sslider_link"><?php _e('Slide Link URL ','smooth-slider'); ?></label></th>
wpml-config.xml ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <wpml-config>
2
+ <custom-fields>
3
+ </custom-fields>
4
+ <custom-types>
5
+ <custom-type translate="1">testimonial</custom-type>
6
+ <custom-type translate="1">flashcard</custom-type>
7
+ <custom-type translate="1">slidervilla</custom-type>
8
+ </custom-types>
9
+ <taxonomies>
10
+ <taxonomy translate="1">testimonial_category</taxonomy>
11
+ <taxonomy translate="1">flashcard_category</taxonomy>
12
+ </taxonomies>
13
+ <admin-texts>
14
+ <key name="smooth_slider_options">
15
+ <key name="noscript" />
16
+ <key name="title_text" />
17
+ </key>
18
+ </admin-texts>
19
+ <language-switcher-settings>
20
+ <key name="icl_lang_sel_config">
21
+ <key name="font-current-normal">#444444</key>
22
+ <key name="font-current-hover">#000000</key>
23
+ <key name="background-current-normal">#ffffff</key>
24
+ <key name="background-current-hover">#eeeeee</key>
25
+ <key name="font-other-normal">#444444</key>
26
+ <key name="font-other-hover">#000000</key>
27
+ <key name="background-other-normal">#ffffff</key>
28
+ <key name="background-other-hover">#eeeeee</key>
29
+ <key name="border">#cdcdcd</key>
30
+ </key>
31
+ <key name="icl_lang_sel_footer_config">
32
+ <key name="font-current-normal">#444444</key>
33
+ <key name="font-current-hover">#000000</key>
34
+ <key name="background-current-normal">#ffffff</key>
35
+ <key name="background-current-hover">#eeeeee</key>
36
+ <key name="font-other-normal">#444444</key>
37
+ <key name="font-other-hover">#000000</key>
38
+ <key name="background-other-normal">#ffffff</key>
39
+ <key name="background-other-hover">#eeeeee</key>
40
+ <key name="border">#cdcdcd</key>
41
+ </key>
42
+ <key name="icl_language_switcher_sidebar">0</key>
43
+ <key name="icl_widget_title_show">0</key>
44
+ <key name="icl_lang_sel_type">dropdown</key>
45
+ <key name="icl_lso_link_empty">0</key>
46
+ <key name="icl_lso_flags">0</key>
47
+ <key name="icl_lso_native_lang">1</key>
48
+ <key name="icl_lso_display_lang">1</key>
49
+ <key name="icl_lang_sel_footer">0</key>
50
+ <key name="icl_post_availability">0</key>
51
+ <key name="icl_post_availability_position">below</key>
52
+ <key name="icl_post_availability_text">This post is also available in: %s</key>
53
+ </language-switcher-settings>
54
+ </wpml-config>