Version Description
Download this release
Release Info
Developer | averta |
Plugin | Master Slider – Responsive Touch Slider |
Version | 2.7.0 |
Comparing to | |
See all releases |
Code changes from version 2.6.4 to 2.7.0
- README.txt +7 -2
- admin/class-master-slider-admin.php +244 -244
- admin/includes/classes/class-msp-admin-ajax.php +144 -144
- admin/includes/classes/class-msp-admin-assets.php +419 -419
- admin/includes/classes/class-msp-importer.php +534 -534
- admin/includes/classes/class-msp-list-table.php +142 -142
- admin/includes/classes/class-msp-parser.php +701 -701
- admin/includes/classes/class-msp-pointers.php +181 -181
- admin/includes/classes/class-msp-screen-help.php +112 -112
- admin/includes/classes/class-msp-shortcode-factory.php +18 -14
- admin/includes/msp-admin-templates.php +6 -6
- admin/includes/msp-hooks.php +9 -9
- admin/includes/msp-sample-sliders.php +107 -107
- admin/views/index.php +19 -19
- admin/views/setting/class-msp-settings.php +17 -17
- admin/views/slider-dashboard/list-sliders.php +150 -150
- admin/views/slider-dashboard/preview.php +20 -20
- admin/views/slider-panel/index.php +291 -291
- includes/classes/class-msp-core-widget.php +1 -1
- includes/classes/class-msp-db.php +651 -651
- includes/classes/class-msp-main-widget.php +6 -6
- includes/init/define.php +1 -1
- includes/lib/vcomposer.php +12 -12
- includes/msp-functions.php +167 -167
- includes/msp-shortcodes.php +116 -112
- includes/msp-template-tags.php +198 -198
- master-slider.php +2 -2
- public/assets/css/masterslider.main.css +2497 -2496
- public/class-master-slider.php +317 -317
README.txt
CHANGED
@@ -6,7 +6,7 @@ License URI: http://www.gnu.org/licenses/gpl.html
|
|
6 |
Tags: banner rotator, carousel, content slider, gallery, image slider, responsive slider, showcase, slideshow, swipe, touch slider, video gallery, SEO, vertical slide, HTML5 slider, hardware accelerate, best slider, animation, mobile slider, iOS, android, video slider, youtube slider, horizontal slider, vertical slider, fullwidth slider, fullscreen slider, post slider, photo slider, online album, mobile slider, WordPress slider,wpml, ,ultisite, wistia, woocommerce, product slider, woocommerce slider, portfolio, gallery
|
7 |
Requires at least: 4.0
|
8 |
Tested up to: 4.3.0
|
9 |
-
Stable tag: 2.
|
10 |
|
11 |
The most advanced responsive and HTML5 WordPress slider plugin with touch swipe navigation that works smoothly on desktop and devices.
|
12 |
|
@@ -225,6 +225,11 @@ Bugs can be reported in our [support forums](http://wordpress.org/tags/master-sl
|
|
225 |
11. Flexible slider controls
|
226 |
|
227 |
|
|
|
|
|
|
|
|
|
|
|
228 |
= Version 2.6.4 / (22.9.2015) =
|
229 |
- [Fix]: Legacy widget constructor replaced with new one
|
230 |
|
@@ -392,5 +397,5 @@ Bugs can be reported in our [support forums](http://wordpress.org/tags/master-sl
|
|
392 |
|
393 |
== Upgrade Notice ==
|
394 |
|
395 |
-
= 2.
|
396 |
- [Fix]: Legacy widget constructor replaced with new one
|
6 |
Tags: banner rotator, carousel, content slider, gallery, image slider, responsive slider, showcase, slideshow, swipe, touch slider, video gallery, SEO, vertical slide, HTML5 slider, hardware accelerate, best slider, animation, mobile slider, iOS, android, video slider, youtube slider, horizontal slider, vertical slider, fullwidth slider, fullscreen slider, post slider, photo slider, online album, mobile slider, WordPress slider,wpml, ,ultisite, wistia, woocommerce, product slider, woocommerce slider, portfolio, gallery
|
7 |
Requires at least: 4.0
|
8 |
Tested up to: 4.3.0
|
9 |
+
Stable tag: 2.7.0
|
10 |
|
11 |
The most advanced responsive and HTML5 WordPress slider plugin with touch swipe navigation that works smoothly on desktop and devices.
|
12 |
|
225 |
11. Flexible slider controls
|
226 |
|
227 |
|
228 |
+
= Version 2.7.0 / (26.9.2015) =
|
229 |
+
- [Improvement]: Now the slide info sections with no conent are no longer visible
|
230 |
+
- [Improvement]: Now Master Slider is fully compatible with new upcoming translation service on wp.org
|
231 |
+
- [Improvement]: Now auto crop is disabled for thumbnail when user set a custom thumbnail
|
232 |
+
|
233 |
= Version 2.6.4 / (22.9.2015) =
|
234 |
- [Fix]: Legacy widget constructor replaced with new one
|
235 |
|
397 |
|
398 |
== Upgrade Notice ==
|
399 |
|
400 |
+
= 2.7.0 =
|
401 |
- [Fix]: Legacy widget constructor replaced with new one
|
admin/class-master-slider-admin.php
CHANGED
@@ -21,253 +21,253 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
21 |
*/
|
22 |
class Master_Slider_Admin {
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
|
42 |
|
43 |
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
}
|
272 |
|
273 |
return Master_Slider_Admin::get_instance();
|
21 |
*/
|
22 |
class Master_Slider_Admin {
|
23 |
|
24 |
+
/**
|
25 |
+
* Instance of this class.
|
26 |
+
*
|
27 |
+
* @since 1.0.0
|
28 |
+
*
|
29 |
+
* @var object
|
30 |
+
*/
|
31 |
+
protected static $instance = null;
|
32 |
+
|
33 |
+
/**
|
34 |
+
* Slug of the plugin screen.
|
35 |
+
*
|
36 |
+
* @since 1.0.0
|
37 |
+
*
|
38 |
+
* @var string
|
39 |
+
*/
|
40 |
+
protected $sliders_screen_hook_suffix = null;
|
41 |
|
42 |
|
43 |
|
44 |
+
/**
|
45 |
+
* Initialize the plugin by loading admin classes and functions
|
46 |
+
*
|
47 |
+
* @since 1.0.0
|
48 |
+
*/
|
49 |
+
private function __construct() {
|
50 |
+
|
51 |
+
// include admin files
|
52 |
+
$this->includes();
|
53 |
+
|
54 |
+
add_action( 'init', array( $this, 'init' ) );
|
55 |
+
}
|
56 |
+
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Include admin essential classes and functions
|
60 |
+
*
|
61 |
+
* @return void
|
62 |
+
*/
|
63 |
+
private function includes(){
|
64 |
+
include_once( MSWP_AVERTA_ADMIN_DIR . '/includes/index.php' );
|
65 |
+
include_once( MSWP_AVERTA_ADMIN_DIR . '/views/setting/class-msp-settings.php' );
|
66 |
+
}
|
67 |
+
|
68 |
+
|
69 |
+
public function init() {
|
70 |
+
|
71 |
+
// Before init action
|
72 |
+
do_action( 'before_masterslider_admin_init' );
|
73 |
+
|
74 |
+
// A filter hook to restrict access to plugin panel only for super admin on multiste
|
75 |
+
if( apply_filters( 'masterslider_access_only_for_super_admins' , 0 ) && ! is_super_admin() ) {
|
76 |
+
return;
|
77 |
+
}
|
78 |
+
|
79 |
+
// Assign masterslider custom capabilities
|
80 |
+
Master_Slider::assign_custom_caps();
|
81 |
+
// Inject default styles and effects
|
82 |
+
Master_Slider::set_default_options();
|
83 |
+
|
84 |
+
|
85 |
+
// Initial tasks on admin init
|
86 |
+
add_action( 'admin_init', array( $this, 'admin_init') );
|
87 |
+
|
88 |
+
// Load admin Stylesheet and JavaScript.
|
89 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts') );
|
90 |
+
|
91 |
+
// Add some essential content in admin page header
|
92 |
+
add_action( 'admin_head', array( $this, 'admin_header' ), 9 );
|
93 |
+
|
94 |
+
// Add the options page and menu item.
|
95 |
+
add_action( 'admin_menu', array( $this, 'add_plugin_admin_menu' ) );
|
96 |
+
|
97 |
+
// Add an action link pointing to the setting page.
|
98 |
+
add_filter( 'plugin_action_links_'. MSWP_AVERTA_BASE_NAME, array( $this, 'add_action_links' ) );
|
99 |
+
|
100 |
+
// Add an action link on plugin row meta in plugins page
|
101 |
+
add_filter( 'plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 4 );
|
102 |
+
|
103 |
+
// Admin init action
|
104 |
+
do_action( 'masterslider_admin_init' );
|
105 |
+
}
|
106 |
+
|
107 |
+
|
108 |
+
/**
|
109 |
+
* Triggers on admin init
|
110 |
+
*
|
111 |
+
* @return void
|
112 |
+
*/
|
113 |
+
public function admin_init(){
|
114 |
+
|
115 |
+
$this->after_plugin_update();
|
116 |
+
}
|
117 |
+
|
118 |
+
|
119 |
+
/**
|
120 |
+
* Regenerate and cache custom css codes for all slider after plugin update
|
121 |
+
*
|
122 |
+
* @return bool TRUE on success, FALSE otherwise
|
123 |
+
*/
|
124 |
+
public function after_plugin_update (){
|
125 |
+
|
126 |
+
if( get_option( 'masterslider_lite_plugin_version', '0' ) == MSWP_AVERTA_VERSION )
|
127 |
+
return false;
|
128 |
+
|
129 |
+
msp_save_custom_styles();
|
130 |
+
// msp_flush_all_sliders_cache(); 2.0.0
|
131 |
+
update_option( 'masterslider_lite_plugin_version', MSWP_AVERTA_VERSION );
|
132 |
+
do_action( 'masterslider_after_plugin_updated' );
|
133 |
+
|
134 |
+
return true;
|
135 |
+
}
|
136 |
+
|
137 |
+
|
138 |
+
/**
|
139 |
+
* Return an instance of this class.
|
140 |
+
*
|
141 |
+
* @since 1.0.0
|
142 |
+
*
|
143 |
+
* @return object A single instance of this class.
|
144 |
+
*/
|
145 |
+
public static function get_instance() {
|
146 |
+
|
147 |
+
if( apply_filters( 'masterslider_access_only_for_super_admins' , 0 ) && ! is_super_admin() ) {
|
148 |
+
return;
|
149 |
+
}
|
150 |
+
|
151 |
+
// If the single instance hasn't been set, set it now.
|
152 |
+
if ( null == self::$instance ) {
|
153 |
+
self::$instance = new self;
|
154 |
+
}
|
155 |
+
|
156 |
+
return self::$instance;
|
157 |
+
}
|
158 |
+
|
159 |
+
|
160 |
+
/**
|
161 |
+
* Register and enqueue admin-specific JavaScript & Stylesheet.
|
162 |
+
*
|
163 |
+
* @since 1.0.0
|
164 |
+
*
|
165 |
+
* @return null Return early if no settings page is registered.
|
166 |
+
*/
|
167 |
+
public function enqueue_admin_scripts() {
|
168 |
+
|
169 |
+
$admin_assets = new MSP_Admin_Assets();
|
170 |
+
$admin_assets->enqueue_global_assets();
|
171 |
+
|
172 |
+
if ( ! isset( $this->sliders_screen_hook_suffix ) )
|
173 |
+
return;
|
174 |
+
|
175 |
+
// load masterslider spesific assets only on it's admin page
|
176 |
+
$screen = get_current_screen();
|
177 |
+
if ( $this->sliders_screen_hook_suffix == $screen->id ) {
|
178 |
+
|
179 |
+
$admin_assets->enqueue_panel_assets();
|
180 |
+
}
|
181 |
+
|
182 |
+
}
|
183 |
+
|
184 |
+
|
185 |
+
/**
|
186 |
+
* Print essential content in admin page header
|
187 |
+
*
|
188 |
+
* @since 1.0.0
|
189 |
+
*
|
190 |
+
* @return void
|
191 |
+
*/
|
192 |
+
public function admin_header() {
|
193 |
+
|
194 |
+
if ( ! isset( $this->sliders_screen_hook_suffix ) ) {
|
195 |
+
return;
|
196 |
+
}
|
197 |
+
|
198 |
+
$screen = get_current_screen();
|
199 |
+
if ( $this->sliders_screen_hook_suffix == $screen->id ) {
|
200 |
+
|
201 |
+
if ( isset( $_REQUEST['slider_id'] ) ) {
|
202 |
+
|
203 |
+
$slider_id = $_REQUEST['slider_id'];
|
204 |
+
global $mspdb;
|
205 |
+
$custom_fonts = $mspdb->get_slider_field_val( $slider_id, 'custom_fonts' );
|
206 |
+
|
207 |
+
if ( ! empty( $custom_fonts ) )
|
208 |
+
printf( "<link rel='stylesheet' id='masterslider-admin-fonts' href='http://fonts.googleapis.com/css?family=%s' type='text/css' />\n", $custom_fonts );
|
209 |
+
}
|
210 |
+
}
|
211 |
+
}
|
212 |
+
|
213 |
+
|
214 |
+
/**
|
215 |
+
* Register the administration menu for this plugin into the WordPress Dashboard menu.
|
216 |
+
*
|
217 |
+
* @since 1.0.0
|
218 |
+
*/
|
219 |
+
public function add_plugin_admin_menu() {
|
220 |
+
|
221 |
+
$ms_page_title = apply_filters( 'masterslider_admin_page_title', __( 'Master Sliders', 'master-slider' ) );
|
222 |
+
$ms_menu_title = apply_filters( 'masterslider_admin_menu_title', __( 'Master Slider' , 'master-slider' ) );
|
223 |
+
|
224 |
+
// Add a top-level menu for master slider
|
225 |
+
$this->sliders_screen_hook_suffix = add_menu_page(
|
226 |
+
$ms_page_title,
|
227 |
+
$ms_menu_title,
|
228 |
+
apply_filters( 'masterslider_access_capability', 'access_masterslider' ),
|
229 |
+
MSWP_SLUG,
|
230 |
+
array( $this, 'display_master_slider_panel_page' )
|
231 |
+
);
|
232 |
+
|
233 |
+
}
|
234 |
+
|
235 |
+
|
236 |
+
/**
|
237 |
+
* Render the panel page for this plugin.
|
238 |
+
*
|
239 |
+
* @since 1.0.0
|
240 |
+
*/
|
241 |
+
public function display_master_slider_panel_page() {
|
242 |
+
include_once( 'views/index.php' );
|
243 |
+
}
|
244 |
+
|
245 |
+
|
246 |
+
/**
|
247 |
+
* Add settings action link to the plugins page.
|
248 |
+
*
|
249 |
+
* @since 1.2.0
|
250 |
+
*/
|
251 |
+
public function add_action_links( $links ) {
|
252 |
+
|
253 |
+
$links['settings'] = '<a href="' . admin_url( 'admin.php?page=' . MSWP_SLUG . '-setting' ) . '">' . __( 'Settings', 'master-slider' ) . '</a>';
|
254 |
+
$links['go_pro'] = '<a href="http://avt.li/mslgo">' . __( 'Go Pro', 'master-slider' ) . '</a>';
|
255 |
+
|
256 |
+
return $links;
|
257 |
+
}
|
258 |
+
|
259 |
+
|
260 |
+
/**
|
261 |
+
* Add extra action link to the plugin meta on plugins page.
|
262 |
+
*
|
263 |
+
* @since 1.8.0
|
264 |
+
*/
|
265 |
+
public function plugin_row_meta( $plugin_meta, $plugin_file, $plugin_data, $status ){
|
266 |
+
if( $plugin_file == MSWP_AVERTA_BASE_NAME ) { }
|
267 |
+
return $plugin_meta;
|
268 |
+
}
|
269 |
+
|
270 |
+
|
271 |
}
|
272 |
|
273 |
return Master_Slider_Admin::get_instance();
|
admin/includes/classes/class-msp-admin-ajax.php
CHANGED
@@ -4,150 +4,150 @@
|
|
4 |
*
|
5 |
*/
|
6 |
class MSP_Admin_Ajax {
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
|
152 |
|
153 |
}
|
4 |
*
|
5 |
*/
|
6 |
class MSP_Admin_Ajax {
|
7 |
+
|
8 |
+
|
9 |
+
|
10 |
+
function __construct () {
|
11 |
+
|
12 |
+
// get and save data on ajax data post
|
13 |
+
add_action( 'wp_ajax_msp_panel_handler' , array( $this, 'save_panel_ajax' ) );
|
14 |
+
add_action( 'wp_ajax_msp_create_new_handler', array( $this, 'create_new_slider' ) );
|
15 |
+
}
|
16 |
+
|
17 |
+
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Save ajax handler for main panel data
|
21 |
+
*
|
22 |
+
* @since 1.0.0
|
23 |
+
*/
|
24 |
+
public function save_panel_ajax() {
|
25 |
+
|
26 |
+
header( "Content-Type: application/json" );
|
27 |
+
|
28 |
+
// verify nonce
|
29 |
+
if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], "msp_panel") ) {
|
30 |
+
echo json_encode( array( 'success' => false, 'message' => __("Authorization failed!", 'master-slider' ) ) );
|
31 |
+
exit();
|
32 |
+
}
|
33 |
+
|
34 |
+
// ignore the request if the current user doesn't have sufficient permissions
|
35 |
+
if ( ! current_user_can( 'publish_masterslider' ) ) {
|
36 |
+
echo json_encode( array( 'success' => false,
|
37 |
+
'message' => apply_filters( 'masterslider_insufficient_permissions_to_publish_message', __( "Sorry, You don't have enough permission to publish slider!", 'master-slider' ) )
|
38 |
+
)
|
39 |
+
);
|
40 |
+
exit();
|
41 |
+
}
|
42 |
+
|
43 |
+
/////////////////////////////////////////////////////////////////////////////////////////
|
44 |
+
|
45 |
+
// Get the slider id
|
46 |
+
$slider_id = isset( $_REQUEST['slider_id'] ) ? $_REQUEST['slider_id'] : '';
|
47 |
+
|
48 |
+
if ( empty( $slider_id ) ) {
|
49 |
+
echo json_encode( array( 'success' => false, 'type' => 'save' , 'message' => __( "Slider id is not defined.", 'master-slider' ) ) );
|
50 |
+
exit;
|
51 |
+
}
|
52 |
+
|
53 |
+
// get the slider type
|
54 |
+
$slider_type = isset( $_REQUEST['slider_type'] ) ? $_REQUEST['slider_type'] : 'custom';
|
55 |
+
|
56 |
+
// get panel data
|
57 |
+
$msp_data = isset( $_REQUEST['msp_data'] ) ? $_REQUEST['msp_data'] : NULL;
|
58 |
+
|
59 |
+
|
60 |
+
// get parse and database tools
|
61 |
+
global $mspdb;
|
62 |
+
|
63 |
+
// load and get parser and start parsing data
|
64 |
+
$parser = msp_get_parser();
|
65 |
+
$parser->set_data( $msp_data, $slider_id );
|
66 |
+
|
67 |
+
// get required parsed data
|
68 |
+
$slider_setting = $parser->get_slider_setting();
|
69 |
+
$slides = $parser->get_slides();
|
70 |
+
$slider_custom_styles = $parser->get_styles();
|
71 |
+
|
72 |
+
$fields = array(
|
73 |
+
'title' => $slider_setting[ 'title' ],
|
74 |
+
'type' => $slider_setting[ 'slider_type' ],
|
75 |
+
'slides_num' => count( $slides ),
|
76 |
+
'params' => $msp_data,
|
77 |
+
'custom_styles' => $slider_custom_styles,
|
78 |
+
'custom_fonts' => $slider_setting[ 'gfonts' ],
|
79 |
+
'status' => 'published'
|
80 |
+
);
|
81 |
+
|
82 |
+
// store slider data in database
|
83 |
+
$is_saved = $mspdb->update_slider( $slider_id, $fields );
|
84 |
+
|
85 |
+
msp_save_custom_styles();
|
86 |
+
|
87 |
+
|
88 |
+
// flush slider cache if slider cache is enabled
|
89 |
+
msp_flush_slider_cache( $slider_id );
|
90 |
+
|
91 |
+
|
92 |
+
// create and output the response
|
93 |
+
if( isset( $is_saved ) )
|
94 |
+
$response = json_encode( array( 'success' => true, 'type' => 'save' , 'message' => __( "Saved Successfully.", 'master-slider' ) ) );
|
95 |
+
else
|
96 |
+
$response = json_encode( array( 'success' => true, 'type' => 'save' , 'message' => __( "No Data Recieved." , 'master-slider' ) ) );
|
97 |
+
|
98 |
+
echo $response;
|
99 |
+
|
100 |
+
exit;// IMPORTANT
|
101 |
+
}
|
102 |
+
|
103 |
+
|
104 |
+
|
105 |
+
/**
|
106 |
+
* Create new slider by type
|
107 |
+
*
|
108 |
+
* @since 1.0.0
|
109 |
+
*/
|
110 |
+
public function create_new_slider() {
|
111 |
+
|
112 |
+
header( "Content-Type: application/json" );
|
113 |
+
|
114 |
+
// verify nonce
|
115 |
+
if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], "msp_panel") ) {
|
116 |
+
echo json_encode( array( 'success' => false, 'message' => __("Authorization failed!", 'master-slider' ) ) );
|
117 |
+
exit();
|
118 |
+
}
|
119 |
+
|
120 |
+
// ignore the request if the current user doesn't have sufficient permissions
|
121 |
+
if ( ! current_user_can( 'create_masterslider' ) && ! current_user_can( 'publish_masterslider' ) ) {
|
122 |
+
echo json_encode( array( 'success' => false,
|
123 |
+
'message' => apply_filters( 'masterslider_create_slider_permissions_message', __( "Sorry, You don't have enough permission to create slider!", 'master-slider' ) )
|
124 |
+
)
|
125 |
+
);
|
126 |
+
exit();
|
127 |
+
}
|
128 |
+
|
129 |
+
|
130 |
+
/////////////////////////////////////////////////////////////////////////////////////////
|
131 |
+
|
132 |
+
// Get the slider id
|
133 |
+
$slider_type = isset( $_REQUEST['slider_type'] ) ? $_REQUEST['slider_type'] : '';
|
134 |
+
|
135 |
+
|
136 |
+
// Get new slider id
|
137 |
+
global $mspdb;
|
138 |
+
$slider_id = $mspdb->add_slider( array( 'status' => 'draft', 'type' => $slider_type ) );
|
139 |
+
|
140 |
+
|
141 |
+
// create and output the response
|
142 |
+
if( false !== $slider_id )
|
143 |
+
$response = json_encode( array( 'success' => true, 'slider_id' => $slider_id , 'redirect' => admin_url( 'admin.php?page='.MSWP_SLUG.'&action=edit&slider_id='.$slider_id.'&slider_type='.$slider_type ), 'message' => __( "Slider Created Successfully.", 'master-slider' ) ) );
|
144 |
+
else
|
145 |
+
$response = json_encode( array( 'success' => true, 'slider_id' => '' , 'redirect' => '', message => __( "Slider can not be created." , 'master-slider' ) ) );
|
146 |
+
|
147 |
+
echo $response;
|
148 |
+
|
149 |
+
exit;// IMPORTANT
|
150 |
+
}
|
151 |
|
152 |
|
153 |
}
|
admin/includes/classes/class-msp-admin-assets.php
CHANGED
@@ -13,424 +13,424 @@
|
|
13 |
* Class to load and print master slider panel scripts
|
14 |
*/
|
15 |
class MSP_Admin_Assets {
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
|
436 |
}
|
13 |
* Class to load and print master slider panel scripts
|
14 |
*/
|
15 |
class MSP_Admin_Assets {
|
16 |
+
|
17 |
+
|
18 |
+
/**
|
19 |
+
* __construct
|
20 |
+
*/
|
21 |
+
function __construct() {
|
22 |
+
|
23 |
+
}
|
24 |
+
|
25 |
+
|
26 |
+
public function enqueue_panel_assets (){
|
27 |
+
|
28 |
+
// general assets
|
29 |
+
$this->load_general_styles();
|
30 |
+
$this->load_panel_styles();
|
31 |
+
|
32 |
+
$this->add_general_variables();
|
33 |
+
$this->add_general_script_localizations();
|
34 |
+
$this->load_general_scripts();
|
35 |
+
|
36 |
+
// panel spesific assets
|
37 |
+
if( isset( $_REQUEST['action'] ) && in_array( $_REQUEST['action'], array( 'edit', 'add' ) ) ) {
|
38 |
+
|
39 |
+
$this->load_panel_scripts();
|
40 |
+
$this->add_panel_variables();
|
41 |
+
$this->add_panel_script_localizations();
|
42 |
+
}
|
43 |
+
|
44 |
+
}
|
45 |
+
|
46 |
+
|
47 |
+
public function enqueue_global_assets(){
|
48 |
+
|
49 |
+
$this->load_global_styles();
|
50 |
+
$this->add_global_variables();
|
51 |
+
}
|
52 |
+
|
53 |
+
|
54 |
+
public function load_global_styles(){
|
55 |
+
// load global style - loads on all admin area
|
56 |
+
wp_enqueue_style( MSWP_SLUG .'-global-styles', MSWP_AVERTA_ADMIN_URL . '/assets/css/global.css', array(), MSWP_AVERTA_VERSION );
|
57 |
+
}
|
58 |
+
|
59 |
+
|
60 |
+
public function add_global_variables(){
|
61 |
+
// load global variables about Master Slider
|
62 |
+
wp_localize_script( 'jquery', '__MS_GLOBAL', array(
|
63 |
+
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
64 |
+
'admin_url' => admin_url(),
|
65 |
+
'menu_page_url' => menu_page_url( MSWP_SLUG, false ),
|
66 |
+
'plugin_url' => MSWP_AVERTA_URL,
|
67 |
+
'plugin_name' => esc_js( __( 'Master Slider', 'master-slider' ) )
|
68 |
+
));
|
69 |
+
}
|
70 |
+
|
71 |
+
|
72 |
+
/**
|
73 |
+
* Load scripts for master slider admin panel
|
74 |
+
* @return void
|
75 |
+
*/
|
76 |
+
public function load_panel_scripts() {
|
77 |
+
|
78 |
+
// Load wp media uploader
|
79 |
+
wp_enqueue_media();
|
80 |
+
|
81 |
+
// Master Slider Panel Scripts
|
82 |
+
wp_enqueue_script( MSWP_SLUG . '-handlebars' , MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/js/handlebars.min.js', array( 'jquery' ), MSWP_AVERTA_VERSION, true );
|
83 |
+
wp_enqueue_script( MSWP_SLUG . '-ember-js' , MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/js/ember.min.js', array( 'jquery' ), MSWP_AVERTA_VERSION, true );
|
84 |
+
wp_enqueue_script( MSWP_SLUG . '-ember-model' , MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/js/ember-model.min.js', array( 'jquery' ), MSWP_AVERTA_VERSION, true );
|
85 |
+
wp_enqueue_script( MSWP_SLUG . '-msp-required' , MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/js/msp.required.js',
|
86 |
+
array(
|
87 |
+
'jquery', 'jquery-ui-core', 'jquery-ui-dialog', 'jquery-ui-draggable',
|
88 |
+
'jquery-ui-sortable', 'jquery-ui-slider', 'jquery-ui-spinner'
|
89 |
+
),
|
90 |
+
MSWP_AVERTA_VERSION, true
|
91 |
+
);
|
92 |
+
|
93 |
+
wp_enqueue_script( MSWP_SLUG . '-masterslider-wp', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/js/masterslider.wp.js', array( MSWP_SLUG . '-msp-required' ), MSWP_AVERTA_VERSION, true );
|
94 |
+
}
|
95 |
+
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Print required variable for master slider panel
|
99 |
+
*/
|
100 |
+
public function add_panel_variables() {
|
101 |
+
|
102 |
+
$slider_skins = array(
|
103 |
+
array( 'class' => 'ms-skin-default', 'label' => 'Default' ),
|
104 |
+
array( 'class' => 'ms-skin-light-2', 'label' => 'Light 2' ),
|
105 |
+
array( 'class' => 'ms-skin-light-3', 'label' => 'Light 3' ),
|
106 |
+
array( 'class' => 'ms-skin-light-4', 'label' => 'Light 4' ),
|
107 |
+
array( 'class' => 'ms-skin-light-5', 'label' => 'Light 5' ),
|
108 |
+
array( 'class' => 'ms-skin-light-6', 'label' => 'Light 6' ),
|
109 |
+
array( 'class' => 'ms-skin-light-6 round-skin', 'label' => 'Light 6 Round' ),
|
110 |
+
|
111 |
+
array( 'class' => 'ms-skin-contrast', 'label' => 'Contrast' ),
|
112 |
+
array( 'class' => 'ms-skin-black-1' , 'label' => 'Black 1' ),
|
113 |
+
array( 'class' => 'ms-skin-black-2' , 'label' => 'Black 2' ),
|
114 |
+
array( 'class' => 'ms-skin-black-2 round-skin', 'label' => 'Black 2 Round' ),
|
115 |
+
array( 'class' => 'ms-skin-metro' , 'label' => 'Metro' )
|
116 |
+
);
|
117 |
+
|
118 |
+
wp_localize_script( 'jquery', '__MSP_SKINS', apply_filters( 'masterslider_skins', $slider_skins ) );
|
119 |
+
|
120 |
+
// get and print slider id
|
121 |
+
if ( isset( $_REQUEST['slider_id'] ) ) {
|
122 |
+
|
123 |
+
$slider_id = $_REQUEST['slider_id'];
|
124 |
+
|
125 |
+
} else {
|
126 |
+
global $mspdb;
|
127 |
+
$slider_id = 0;
|
128 |
+
|
129 |
+
if ( isset( $_REQUEST['action'] ) && 'add' == $_REQUEST['action'] ) {
|
130 |
+
$slider_id = $mspdb->add_slider( array( 'status' => 'draft' ) );
|
131 |
+
wp_localize_script( 'jquery', '__MSP_SLIDER_ID', (string) $slider_id );
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
// Get and print panel data
|
136 |
+
if ( $slider_id ) {
|
137 |
+
|
138 |
+
global $mspdb;
|
139 |
+
$slider_data = $mspdb->get_slider( $slider_id );
|
140 |
+
|
141 |
+
$slider_type = isset( $slider_data[ 'type' ] ) ? $slider_data[ 'type' ] : 'custom';
|
142 |
+
$slider_type = empty( $slider_type ) ? 'custom' : $slider_type;
|
143 |
+
|
144 |
+
$msp_data = isset( $slider_data[ 'params' ] ) ? $slider_data[ 'params' ] : NULL;
|
145 |
+
$msp_data = empty( $slider_data[ 'params' ] ) ? NULL : $slider_data[ 'params' ];
|
146 |
+
|
147 |
+
$msp_preset_style = msp_get_option( 'preset_style' , NULL );
|
148 |
+
$msp_preset_effect = msp_get_option( 'preset_effect', NULL );
|
149 |
+
$msp_buttons_style = msp_get_option( 'buttons_style', NULL );
|
150 |
+
|
151 |
+
$msp_preset_style = empty( $msp_preset_style ) ? NULL : $msp_preset_style;
|
152 |
+
$msp_preset_effect = empty( $msp_preset_effect ) ? NULL : $msp_preset_effect;
|
153 |
+
$msp_buttons_style = empty( $msp_buttons_style ) ? NULL : $msp_buttons_style;
|
154 |
+
|
155 |
+
wp_localize_script( 'jquery', '__MSP_DATA' , $msp_data );
|
156 |
+
wp_localize_script( 'jquery', '__MSP_PRESET_STYLE' , $msp_preset_style );
|
157 |
+
wp_localize_script( 'jquery', '__MSP_PRESET_EFFECT' , $msp_preset_effect );
|
158 |
+
wp_localize_script( 'jquery', '__MSP_TYPE' , $slider_type );
|
159 |
+
wp_localize_script( 'jquery', '__MSP_PRESET_BUTTON' , $msp_buttons_style );
|
160 |
+
}
|
161 |
+
|
162 |
+
|
163 |
+
// define panel directory path
|
164 |
+
wp_localize_script( 'jquery', '__MSP_PATH', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/' );
|
165 |
+
|
166 |
+
$slider_panel_default_setting = array(
|
167 |
+
|
168 |
+
'width' => 1000,
|
169 |
+
'height' => 500,
|
170 |
+
|
171 |
+
'autoCrop' => false,
|
172 |
+
'autoplay' => false,
|
173 |
+
'layout' => 'boxed',
|
174 |
+
'autoHeight' => false,
|
175 |
+
'transition' => 'basic',
|
176 |
+
'speed' => 20,
|
177 |
+
'className' => '',
|
178 |
+
|
179 |
+
|
180 |
+
'start' => 1,
|
181 |
+
'space' => 0,
|
182 |
+
|
183 |
+
'grabCursor' => true,
|
184 |
+
'swipe' => true,
|
185 |
+
|
186 |
+
'wheel' => false,
|
187 |
+
'mouse' => true,
|
188 |
+
|
189 |
+
'loop' => false,
|
190 |
+
'shuffle' => false,
|
191 |
+
'preload' => '-1',
|
192 |
+
|
193 |
+
'overPause' => true,
|
194 |
+
'endPause' => false,
|
195 |
+
|
196 |
+
'hideLayers' => false,
|
197 |
+
'dir' => 'h',
|
198 |
+
'parallaxMode' => 'swipe',
|
199 |
+
'centerControls'=> true,
|
200 |
+
'instantShowLayers' => false,
|
201 |
+
|
202 |
+
'skin' => 'ms-skin-default',
|
203 |
+
'duration' => 3,
|
204 |
+
'slideFillMode' => 'fill',
|
205 |
+
'sliderVideoFillMode' => 'fill',
|
206 |
+
'slideVideoLoop'=> true,
|
207 |
+
'slideVideoMute'=> true,
|
208 |
+
'slideVideoAutopause'=> false,
|
209 |
+
'layerContent' => 'Lorem Ipsum'
|
210 |
+
);
|
211 |
+
|
212 |
+
wp_localize_script( 'jquery', '__MSP_DEF_OPTIONS', apply_filters( 'masterslider_panel_default_setting', $slider_panel_default_setting ) );
|
213 |
+
|
214 |
+
do_action( 'masterslider_admin_add_panel_variables', $slider_type );
|
215 |
+
}
|
216 |
+
|
217 |
+
|
218 |
+
|
219 |
+
|
220 |
+
/**
|
221 |
+
* Print required variable for master slider admin page
|
222 |
+
*/
|
223 |
+
public function add_general_variables() {
|
224 |
+
|
225 |
+
$uploads = wp_upload_dir();
|
226 |
+
|
227 |
+
// define admin ajax address and master slider page
|
228 |
+
wp_localize_script( 'jquery', '__MS', array(
|
229 |
+
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
230 |
+
'msp_menu_page' => menu_page_url( MSWP_SLUG, false ),
|
231 |
+
'msp_plugin_url' => MSWP_AVERTA_URL,
|
232 |
+
'upload_dir' => $uploads['baseurl'],
|
233 |
+
'importer' => admin_url( 'admin.php?import=masterslider-importer' )
|
234 |
+
));
|
235 |
+
}
|
236 |
+
|
237 |
+
|
238 |
+
/**
|
239 |
+
* Add script localizations
|
240 |
+
*/
|
241 |
+
public function add_panel_script_localizations() {
|
242 |
+
|
243 |
+
wp_localize_script( 'jquery', '__MSP_LAN', apply_filters( 'masterslider_admin_localize', array(
|
244 |
+
|
245 |
+
// CallbacksController.js
|
246 |
+
'cb_001' => __( 'On slide change start', 'master-slider' ),
|
247 |
+
'cb_002' => __( 'On slide change end', 'master-slider' ),
|
248 |
+
'cb_003' => __( 'On slide timer change', 'master-slider' ),
|
249 |
+
'cb_004' => __( 'On slider resize', 'master-slider' ),
|
250 |
+
'cb_005' => __( 'On Youtube/Vimeo video play', 'master-slider' ),
|
251 |
+
'cb_006' => __( 'On Youtube/Vimeo video close', 'master-slider' ),
|
252 |
+
'cb_007' => __( 'On swipe start', 'master-slider' ),
|
253 |
+
'cb_008' => __( 'On swipe move', 'master-slider' ),
|
254 |
+
'cb_009' => __( 'On swipe end', 'master-slider' ),
|
255 |
+
'cb_010' => __( 'Are you sure you want to remove "%s" callback?', 'master-slider' ),
|
256 |
+
'cb_011' => __( 'On slider Init', 'master-slider' ),
|
257 |
+
|
258 |
+
// ControlsController.js
|
259 |
+
'cc_001' => __( 'Arrows', 'master-slider' ),
|
260 |
+
'cc_002' => __( 'Line Timer', 'master-slider' ),
|
261 |
+
'cc_003' => __( 'Bullets', 'master-slider' ),
|
262 |
+
'cc_004' => __( 'Circle Timer', 'master-slider' ),
|
263 |
+
'cc_005' => __( 'Scrollbar', 'master-slider' ),
|
264 |
+
'cc_006' => __( 'Slide Info', 'master-slider' ),
|
265 |
+
'cc_007' => __( 'Thumblist/Tabs', 'master-slider' ),
|
266 |
+
|
267 |
+
// EffectsController
|
268 |
+
'ec_001' => __( 'Please enter name for new preset effect', 'master-slider' ),
|
269 |
+
'ec_002' => __( 'Custom effect', 'master-slider' ),
|
270 |
+
|
271 |
+
// LayersController.js
|
272 |
+
'lc_001' => __( 'Text Layer', 'master-slider' ),
|
273 |
+
'lc_002' => __( 'Image Layer', 'master-slider' ),
|
274 |
+
'lc_003' => __( 'Video Layer', 'master-slider' ),
|
275 |
+
'lc_004' => __( 'Hotspot', 'master-slider' ),
|
276 |
+
'lc_006' => __( 'Button Layer', 'master-slider' ),
|
277 |
+
|
278 |
+
// StylesController.js
|
279 |
+
'sc_001' => __( 'Please enter name for new preset style', 'master-slider' ),
|
280 |
+
'sc_002' => __( 'Custom style', 'master-slider' ),
|
281 |
+
|
282 |
+
//SliderModel.js
|
283 |
+
'sm_001' => __( 'Untitled Slider', 'master-slider' ),
|
284 |
+
|
285 |
+
// EffectEditorView.js
|
286 |
+
'ee_001' => __( 'Preset Transitions', 'master-slider' ),
|
287 |
+
'ee_002' => __( 'Apply transition', 'master-slider' ),
|
288 |
+
'ee_003' => __( 'Save as preset', 'master-slider' ),
|
289 |
+
'ee_006' => __( 'Transition Editor', 'master-slider' ),
|
290 |
+
|
291 |
+
// StageView.js
|
292 |
+
'sv_001' => __( 'Align to stage :', 'master-slider' ),
|
293 |
+
'sv_002' => __( 'Snapping :', 'master-slider' ),
|
294 |
+
'sv_003' => __( 'Zoom :', 'master-slider' ),
|
295 |
+
'sv_010' => __( 'Layer position origin : ', 'master-slider' ),
|
296 |
+
|
297 |
+
//StyleEditorView.js
|
298 |
+
'se_001' => __( 'Apply style', 'master-slider' ),
|
299 |
+
'se_002' => __( 'Save as preset', 'master-slider' ),
|
300 |
+
'se_003' => __( 'Preset Styles', 'master-slider' ),
|
301 |
+
'se_004' => __( 'By deleting preset style it also will be removed from other sliders in your website. Are you sure you want to delete "%s"?', 'master-slider' ),
|
302 |
+
'se_006' => __( 'Style Editor', 'master-slider' ),
|
303 |
+
|
304 |
+
//TemplatesView.js
|
305 |
+
'tv_001' => __( 'Master Slider Templates', 'master-slider' ),
|
306 |
+
'tv_002' => __( 'Changing template will reset all slider controls and will change some slider settings. Continue?', 'master-slider'),
|
307 |
+
//TimelineView.js
|
308 |
+
'tl_001' => __( 'Show/Hide all', 'master-slider' ),
|
309 |
+
'tl_002' => __( 'Solo All', 'master-slider' ),
|
310 |
+
'tl_003' => __( 'Lock/Unlock all', 'master-slider' ),
|
311 |
+
'tl_004' => __( 'Exit preview', 'master-slider' ),
|
312 |
+
'tl_005' => __( 'Preview slide', 'master-slider' ),
|
313 |
+
'tl_006' => __( 'Show/Hide', 'master-slider' ),
|
314 |
+
'tl_007' => __( 'Solo', 'master-slider' ),
|
315 |
+
'tl_008' => __( 'Lock/Unlock', 'master-slider' ),
|
316 |
+
'tl_009' => __( 'Are you sure you want to remove this layer?', 'master-slider' ),
|
317 |
+
'tl_010' => __( 'Start delay :', 'master-slider' ),
|
318 |
+
'tl_011' => __( 'Show duration :', 'master-slider' ),
|
319 |
+
'tl_012' => __( 'Waiting duration :', 'master-slider' ),
|
320 |
+
'tl_013' => __( 'Hide duration :', 'master-slider' ),
|
321 |
+
|
322 |
+
//UIViews.js
|
323 |
+
'ui_001' => __( 'Show/Hide slide', 'master-slider' ),
|
324 |
+
'ui_002' => __( 'Duplicate slide', 'master-slider' ),
|
325 |
+
'ui_003' => __( 'Remove slide', 'master-slider' ),
|
326 |
+
'ui_004' => __( 'Are you sure you want to delete this slide?', 'master-slider' ),
|
327 |
+
'ui_005' => __( 'Open on the same page', 'master-slider' ),
|
328 |
+
'ui_006' => __( 'Open on new page', 'master-slider' ),
|
329 |
+
'ui_007' => __( 'Open in parent frame', 'master-slider' ),
|
330 |
+
'ui_008' => __( 'Open in main frame', 'master-slider' ),
|
331 |
+
'ui_009' => __( 'Fill', 'master-slider' ),
|
332 |
+
'ui_010' => __( 'Fit', 'master-slider' ),
|
333 |
+
'ui_011' => __( 'Center', 'master-slider' ),
|
334 |
+
'ui_012' => __( 'Stretch', 'master-slider' ),
|
335 |
+
'ui_013' => __( 'Tile', 'master-slider' ),
|
336 |
+
'ui_014' => __( 'None', 'master-slider' ),
|
337 |
+
'ui_015' => __( 'Align top', 'master-slider' ),
|
338 |
+
'ui_016' => __( 'Align vertical center', 'master-slider' ),
|
339 |
+
'ui_017' => __( 'Align bottom', 'master-slider' ),
|
340 |
+
'ui_018' => __( 'Align left', 'master-slider' ),
|
341 |
+
'ui_019' => __( 'Align horizontal center', 'master-slider' ),
|
342 |
+
'ui_020' => __( 'Align right', 'master-slider' ),
|
343 |
+
|
344 |
+
'ui_030' => __( 'Scroll to an element in page :', 'master-slider' ),
|
345 |
+
'ui_031' => __( 'Target element :', 'master-slider' ),
|
346 |
+
|
347 |
+
// ApplicationController.js
|
348 |
+
'ap_001' => __( 'Sending data...', 'master-slider' ),
|
349 |
+
'ap_002' => __( 'An Error accorded, please try again.', 'master-slider' ),
|
350 |
+
'ap_003' => __( 'Data saved successfully.', 'master-slider' ),
|
351 |
+
|
352 |
+
'flk_001' => __( 'Photo title', 'master-slider' ),
|
353 |
+
'flk_002' => __( 'Photo owner name', 'master-slider' ),
|
354 |
+
'flk_003' => __( 'Date taken', 'master-slider' ),
|
355 |
+
'flk_004' => __( 'Photo description', 'master-slider' ),
|
356 |
+
|
357 |
+
'fb_001' => __( 'Photo name', 'master-slider' ),
|
358 |
+
'fb_002' => __( 'Photo owner name', 'master-slider' ),
|
359 |
+
'fb_003' => __( 'Photo link', 'master-slider' ),
|
360 |
+
|
361 |
+
'ui_021' => __( 'Goto next slide', 'master-slider' ),
|
362 |
+
'ui_022' => __( 'Goto previous slide', 'master-slider' ),
|
363 |
+
'ui_022' => __( 'Goto slide', 'master-slider' ),
|
364 |
+
'ui_023' => __( 'Pause timer', 'master-slider' ),
|
365 |
+
'ui_024' => __( 'Resume timer', 'master-slider' ),
|
366 |
+
|
367 |
+
'be_001' => __( 'Update Button Style', 'master-slider' ),
|
368 |
+
'be_002' => __( 'Save As New Button', 'master-slider' ),
|
369 |
+
'be_003' => __( 'Are you sure you want to delete this button?', 'master-slider' ),
|
370 |
+
'be_004' => __( 'Buttons', 'master-slider' ),
|
371 |
+
'be_005' => __( 'Button Editor', 'master-slider' ),
|
372 |
+
'be_006' => __( 'By updating a button it will be changed in all of your sliders. Are you sure you want to update this button?', 'master-slider' )
|
373 |
+
|
374 |
+
) ) );
|
375 |
+
|
376 |
+
}
|
377 |
+
|
378 |
+
|
379 |
+
|
380 |
+
/**
|
381 |
+
* Add general script localizations
|
382 |
+
*/
|
383 |
+
public function add_general_script_localizations() {
|
384 |
+
|
385 |
+
wp_localize_script( 'jquery', '__MSP_GEN_LAN', apply_filters( 'masterslider_admin_general_localize', array(
|
386 |
+
|
387 |
+
'genl_001' => __( 'The changes you made will be lost if you navigate away from this page. To exit preview mode click on close (X) button.', 'master-slider' ),
|
388 |
+
'genl_002' => __( 'Master Slider Preview', 'master-slider' ),
|
389 |
+
'genl_003' => __( 'Loading Slider ..', 'master-slider' ),
|
390 |
+
'genl_004' => __( 'Creating The Slider ..', 'master-slider' ),
|
391 |
+
'genl_005' => __( 'Select a Starter', 'master-slider' ),
|
392 |
+
'genl_006' => __( 'No slider is selected to export.', 'master-slider' ),
|
393 |
+
'genl_007' => __( 'Import', 'master-slider' )
|
394 |
+
|
395 |
+
) ) );
|
396 |
+
|
397 |
+
}
|
398 |
+
|
399 |
+
|
400 |
+
|
401 |
+
/**
|
402 |
+
* Panel spesific styles
|
403 |
+
*
|
404 |
+
* @return void
|
405 |
+
*/
|
406 |
+
public function load_panel_styles() {
|
407 |
+
|
408 |
+
// Master Slider Panel styles
|
409 |
+
wp_enqueue_style( MSWP_SLUG .'-reset', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/reset.css', array(), MSWP_AVERTA_VERSION );
|
410 |
+
wp_enqueue_style( MSWP_SLUG .'-jq-ui', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/jquery-ui-1.10.4.min.css', array(), MSWP_AVERTA_VERSION );
|
411 |
+
wp_enqueue_style( MSWP_SLUG .'-spectrum', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/spectrum.css', array(), MSWP_AVERTA_VERSION );
|
412 |
+
wp_enqueue_style( MSWP_SLUG .'-codemirror', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/codemirror.css', array(), MSWP_AVERTA_VERSION );
|
413 |
+
wp_enqueue_style( MSWP_SLUG .'-jscrollpane', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/jquery.jscrollpane.css', array(), MSWP_AVERTA_VERSION );
|
414 |
+
wp_enqueue_style( MSWP_SLUG .'-main-style', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/msp-style.css', array(), MSWP_AVERTA_VERSION );
|
415 |
+
wp_enqueue_style( MSWP_SLUG .'-components', MSWP_AVERTA_ADMIN_URL . '/views/slider-panel/css/msp-components.css', array(), MSWP_AVERTA_VERSION );
|
416 |
+
|
417 |
+
}
|
418 |
+
|
419 |
+
/**
|
420 |
+
* Master slider general/common styles
|
421 |
+
*
|
422 |
+
* @return void
|
423 |
+
*/
|
424 |
+
public function load_general_styles() {
|
425 |
+
// gnereal styles for masterslider admin page
|
426 |
+
wp_enqueue_style( MSWP_SLUG .'-admin-styles', MSWP_AVERTA_ADMIN_URL . '/assets/css/msp-general.css', array(), MSWP_AVERTA_VERSION );
|
427 |
+
}
|
428 |
+
|
429 |
+
|
430 |
+
public function load_general_scripts() {
|
431 |
+
// disable wp autosave on master slider panel
|
432 |
+
wp_dequeue_script( 'autosave' );
|
433 |
+
wp_enqueue_script( MSWP_SLUG .'-admin-scripts', MSWP_AVERTA_ADMIN_URL . '/assets/js/admin.js', array('jquery', 'jquery-ui-core', 'jquery-ui-dialog'), MSWP_AVERTA_VERSION, true );
|
434 |
+
}
|
435 |
|
436 |
}
|
admin/includes/classes/class-msp-importer.php
CHANGED
@@ -20,100 +20,100 @@ if (!defined('ABSPATH')) {
|
|
20 |
* @since 1.2.0
|
21 |
*/
|
22 |
class MSP_Importer {
|
23 |
-
|
24 |
|
25 |
-
|
26 |
|
27 |
-
|
28 |
|
29 |
-
|
30 |
|
31 |
-
|
32 |
|
33 |
-
|
34 |
|
35 |
-
|
36 |
|
37 |
|
38 |
|
39 |
-
|
40 |
|
41 |
-
|
42 |
-
|
43 |
|
44 |
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
|
51 |
-
|
52 |
|
53 |
-
|
54 |
-
|
55 |
|
56 |
|
57 |
-
|
58 |
|
59 |
-
|
60 |
|
61 |
-
|
62 |
|
63 |
-
|
64 |
-
|
65 |
|
66 |
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
if( $this->is_absolute_url( $url ) || $this->contains_origin_upload_dir( $url ) )
|
116 |
-
|
117 |
|
118 |
return $this->origin_upload_baseurl . $url;
|
119 |
}
|
@@ -125,658 +125,658 @@ class MSP_Importer {
|
|
125 |
* @return boolean true if the url is absolue and false otherwise
|
126 |
*/
|
127 |
public function is_absolute_url( $url ){
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
/**
|
133 |
-
* Wheather url contains origin_upload_baseurl or not
|
134 |
-
* @param string $url the url
|
135 |
-
* @return bool TRUE, if url contains origin_upload_baseurl
|
136 |
-
*/
|
137 |
-
public function contains_origin_upload_dir( $url ){
|
138 |
-
return strpos( $url, $this->origin_upload_baseurl ) !== false;
|
139 |
-
}
|
140 |
-
|
141 |
-
|
142 |
-
/**
|
143 |
-
* Process incoming requests for importing sliders
|
144 |
-
* @return void
|
145 |
-
*/
|
146 |
-
public function process_import_request(){
|
147 |
|
148 |
-
$step = isset( $_REQUEST['step'] ) && ! empty( $_REQUEST['step'] ) ? (int)$_REQUEST['step'] : 0;
|
149 |
|
150 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
151 |
|
152 |
-
$bytes = apply_filters( 'masterslider_import_upload_size_limit', wp_max_upload_size() );
|
153 |
-
$size = size_format( $bytes );
|
154 |
-
?>
|
155 |
|
156 |
-
|
|
|
|
|
|
|
|
|
157 |
|
158 |
-
|
159 |
|
160 |
-
|
161 |
-
<br />
|
162 |
-
<hr />
|
163 |
-
<br />
|
164 |
-
<fieldset>
|
165 |
-
<?php wp_nonce_field('import-msp-sliders'); ?>
|
166 |
|
167 |
-
|
|
|
|
|
168 |
|
169 |
-
|
170 |
|
171 |
-
|
172 |
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
|
|
|
|
177 |
|
178 |
-
|
179 |
-
|
180 |
-
</form>
|
181 |
|
182 |
-
|
183 |
|
184 |
-
|
185 |
-
}
|
186 |
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
|
192 |
-
|
|
|
|
|
193 |
|
194 |
-
|
195 |
|
196 |
-
|
|
|
197 |
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
}
|
203 |
-
|
204 |
-
}
|
205 |
-
}
|
206 |
|
207 |
-
|
208 |
-
add_action( 'admin_notices', array( $this, 'import_export_notice' ) );
|
209 |
-
}
|
210 |
-
}
|
211 |
|
212 |
-
|
213 |
-
if( isset( $_REQUEST['starter_id'] ) && ! empty( $_REQUEST['starter_id'] ) ) {
|
214 |
-
|
215 |
-
if( current_user_can('export_masterslider') || apply_filters( 'masterslider_user_can_import_starter_content', 0 ) ) {
|
216 |
|
217 |
-
|
218 |
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
|
221 |
-
|
222 |
-
|
|
|
|
|
223 |
|
224 |
-
|
225 |
-
|
226 |
-
|
|
|
227 |
|
228 |
-
|
229 |
-
_e( 'Starter ID is not valid.', MSWP_TEXT_DOMAIN );
|
230 |
-
}
|
231 |
|
232 |
-
|
233 |
-
add_action( 'admin_notices', array( $this, 'import_export_notice' ) );
|
234 |
-
}
|
235 |
|
236 |
-
|
|
|
237 |
|
238 |
-
|
|
|
|
|
239 |
|
|
|
|
|
|
|
240 |
|
|
|
|
|
|
|
241 |
|
242 |
-
|
243 |
|
244 |
-
|
245 |
-
if( isset( $_POST['msp-export'] ) ) {
|
246 |
-
|
247 |
-
if( current_user_can('export_masterslider') ) {
|
248 |
|
249 |
-
if( check_admin_referer('export-msp-sliders') ) {
|
250 |
|
251 |
-
$sliders = isset( $_POST['msp-export-sliders'] ) ? $_POST['msp-export-sliders'] : '';
|
252 |
|
253 |
-
|
254 |
-
$this->export_slider_data_in_file( $sliders, $args );
|
255 |
-
}
|
256 |
-
}
|
257 |
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
|
263 |
-
|
264 |
|
|
|
265 |
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
public function import_export_notice(){
|
271 |
-
printf( '<div class="error" style="display:block;" ><p>%s</p></div>',
|
272 |
-
apply_filters( 'masterslider_import_export_access_denied_message', __( "Sorry, You don't have enough permission to import/export sliders.", MSWP_TEXT_DOMAIN ) )
|
273 |
-
);
|
274 |
-
}
|
275 |
|
|
|
|
|
|
|
|
|
276 |
|
|
|
277 |
|
278 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
279 |
|
280 |
|
281 |
-
/**
|
282 |
-
* Get slider export data
|
283 |
-
*
|
284 |
-
* @param int|array $slider_id the slider id(s)
|
285 |
-
* @param array The other options that should be included in export data ( preset_styles, preset_effects )
|
286 |
-
* @param bool $base64 encode output data to base64 or not
|
287 |
-
* @return string the slider export data
|
288 |
-
*/
|
289 |
-
function get_slider_export_data( $slider_ids = array() , $args = null, $base64 = true ){
|
290 |
|
291 |
-
$slider_ids = (array) $slider_ids;
|
292 |
-
$args = (array) $args;
|
293 |
|
294 |
-
// stores export data
|
295 |
-
$export_data = array();
|
296 |
|
297 |
-
$export_data['sliders_data'] = array();
|
298 |
|
299 |
-
|
300 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
301 |
|
302 |
-
|
303 |
-
|
304 |
|
305 |
-
|
306 |
-
|
307 |
-
$slider_type = $mspdb->get_slider_field_val( $slider_id, 'type' );
|
308 |
-
$slides_num = $mspdb->get_slider_field_val( $slider_id, 'slides_num');
|
309 |
|
310 |
-
|
311 |
-
'title' => $slider_title,
|
312 |
-
'params' => $slider_params,
|
313 |
-
'type' => $slider_type,
|
314 |
-
'slides_num' => $slides_num
|
315 |
-
);
|
316 |
-
}
|
317 |
|
318 |
-
|
|
|
319 |
|
320 |
-
|
321 |
-
|
322 |
-
// if you need to bundle sample sliders in your theme you can change the origin_uploads_url
|
323 |
-
// by default origin_uploads_url is the uploads baseurl on domain you exported the sliders from (e.g www.domain.com/wp-content/uploads)
|
324 |
-
// when you decide to import data to new domain, importer will use the origin_uploads_url to fetch images from.
|
325 |
-
// you can change origin_uploads_url by using 'masterslider_export_origin_uploads_url' filter
|
326 |
-
// if you change origin_uploads_url to something else, importer will import slider images
|
327 |
-
// from your custom origin_uploads_url instead of default origin_uploads_url
|
328 |
-
$custom_export_origin_uploads_url = apply_filters( 'masterslider_export_origin_uploads_url', null );
|
329 |
|
330 |
-
|
331 |
-
|
332 |
-
|
|
|
333 |
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
|
|
|
|
|
|
338 |
|
339 |
-
|
340 |
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
346 |
|
347 |
|
348 |
-
|
349 |
-
|
350 |
|
351 |
-
|
352 |
-
|
353 |
|
354 |
-
|
355 |
-
|
356 |
|
357 |
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
|
371 |
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
|
385 |
-
|
386 |
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
|
392 |
|
393 |
|
394 |
|
395 |
|
396 |
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
|
405 |
-
|
406 |
-
|
407 |
|
408 |
-
|
409 |
-
|
410 |
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
|
417 |
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
|
435 |
|
436 |
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
|
449 |
-
|
450 |
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
|
459 |
-
|
460 |
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
|
466 |
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
|
475 |
-
|
476 |
-
|
477 |
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
|
482 |
-
|
483 |
|
484 |
-
|
485 |
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
|
494 |
-
|
495 |
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
|
507 |
|
508 |
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
|
520 |
-
|
521 |
-
|
522 |
|
523 |
-
|
524 |
-
|
525 |
|
526 |
-
|
527 |
-
|
528 |
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
|
535 |
-
|
536 |
-
|
537 |
|
538 |
|
539 |
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
|
554 |
|
555 |
-
|
556 |
|
557 |
-
|
558 |
|
559 |
// remove upload directory and get relative url
|
560 |
if( $this->contains_origin_upload_dir( $url ) ) {
|
561 |
-
|
562 |
}
|
563 |
|
564 |
// skip if url was not internal media url
|
565 |
if( $this->is_absolute_url( $url ) ) {
|
566 |
-
|
567 |
-
|
568 |
}
|
569 |
|
570 |
|
571 |
$relative_url = $url;
|
572 |
|
573 |
// extract the file name and extension from the url
|
574 |
-
|
575 |
|
576 |
-
|
577 |
-
|
578 |
|
579 |
-
|
580 |
-
|
581 |
|
582 |
-
|
583 |
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
|
590 |
-
|
591 |
|
592 |
-
|
593 |
|
594 |
-
|
595 |
|
596 |
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
|
602 |
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
|
617 |
-
|
618 |
|
619 |
-
|
620 |
-
|
621 |
|
622 |
-
|
623 |
-
|
624 |
|
625 |
-
|
626 |
|
627 |
|
628 |
|
629 |
-
|
630 |
-
|
631 |
|
632 |
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
|
642 |
-
|
643 |
|
644 |
-
|
645 |
-
|
646 |
|
647 |
-
|
648 |
-
|
649 |
|
650 |
-
|
651 |
-
|
652 |
|
653 |
-
|
654 |
-
|
655 |
|
656 |
-
|
657 |
-
|
658 |
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
|
671 |
-
|
672 |
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
|
689 |
-
|
690 |
-
|
691 |
|
692 |
|
693 |
|
694 |
|
695 |
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
|
718 |
-
|
719 |
-
|
720 |
|
721 |
-
|
722 |
|
723 |
-
|
724 |
-
|
725 |
|
726 |
-
|
727 |
|
728 |
-
|
729 |
-
|
730 |
|
731 |
|
732 |
-
|
733 |
|
734 |
-
|
735 |
|
736 |
-
|
737 |
|
738 |
-
|
739 |
|
740 |
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
|
766 |
-
|
767 |
-
|
768 |
|
769 |
-
|
770 |
-
|
771 |
|
772 |
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
|
781 |
|
782 |
|
20 |
* @since 1.2.0
|
21 |
*/
|
22 |
class MSP_Importer {
|
23 |
+
|
24 |
|
25 |
+
var $origin_upload_baseurl = '';
|
26 |
|
27 |
+
var $upload_baseurl = '';
|
28 |
|
29 |
+
var $upload_basedir = '';
|
30 |
|
31 |
+
var $image_import_queue = array();
|
32 |
|
33 |
+
var $import_medias = true;
|
34 |
|
35 |
+
var $last_new_slider_id = null;
|
36 |
|
37 |
|
38 |
|
39 |
+
function __construct() {
|
40 |
|
41 |
+
add_action( 'admin_menu', array( $this, 'admin_init' ) );
|
42 |
+
}
|
43 |
|
44 |
|
45 |
+
public function admin_init() {
|
46 |
+
|
47 |
+
$upload = wp_upload_dir();
|
48 |
+
$this->upload_baseurl = $upload['baseurl'];
|
49 |
+
$this->upload_basedir = $upload['basedir'];
|
50 |
|
51 |
+
$this->process_export_request();
|
52 |
|
53 |
+
register_importer( 'masterslider-importer', __( 'Master Slider', 'master-slider' ), __( 'Import sliders and images from a Master Slider export file.', 'master-slider' ), array( $this, 'render_importer_page' ) );
|
54 |
+
}
|
55 |
|
56 |
|
57 |
+
public function render_importer_page() {
|
58 |
|
59 |
+
$this->header();
|
60 |
|
61 |
+
$this->process_import_request();
|
62 |
|
63 |
+
$this->footer();
|
64 |
+
}
|
65 |
|
66 |
|
67 |
+
/**
|
68 |
+
* Display import page title
|
69 |
+
*/
|
70 |
+
function header() {
|
71 |
+
echo '<div class="wrap">';
|
72 |
+
screen_icon();
|
73 |
+
echo '<h2>' . __( 'Importing Master Slider', 'wordpress-importer' ) . '</h2><br />';
|
74 |
+
}
|
75 |
|
76 |
+
/**
|
77 |
+
* Close div.wrap
|
78 |
+
*/
|
79 |
+
function footer() {
|
80 |
+
echo '</div>';
|
81 |
+
?>
|
82 |
+
<script>
|
83 |
+
function mspGetParameterByName(name) {
|
84 |
+
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
|
85 |
+
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
|
86 |
+
results = regex.exec(location.search);
|
87 |
+
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
|
88 |
+
}
|
89 |
+
jQuery(window).load(function(){
|
90 |
+
if (typeof redirect_link !== 'undefined' && redirect_link !== '' ) {
|
91 |
+
window.location.replace( redirect_link );
|
92 |
+
} else {
|
93 |
+
console.log('redirect link not found');
|
94 |
+
}
|
95 |
+
});
|
96 |
+
</script>
|
97 |
+
<?php
|
98 |
+
}
|
99 |
+
|
100 |
+
|
101 |
+
/**
|
102 |
+
* Decide what the maximum file size for downloaded attachments is.
|
103 |
+
* Default is 0 (unlimited), can be filtered via masterslider_import_attachment_size_limit
|
104 |
+
*
|
105 |
+
* @return int Maximum attachment file size to import
|
106 |
+
*/
|
107 |
+
function max_attachment_size() {
|
108 |
+
return apply_filters( 'masterslider_import_attachment_size_limit', 0 );
|
109 |
+
}
|
110 |
+
|
111 |
+
|
112 |
+
// if it's relative url, get absolute origin url
|
113 |
+
function get_absolute_media_url( $url ){
|
114 |
+
|
115 |
if( $this->is_absolute_url( $url ) || $this->contains_origin_upload_dir( $url ) )
|
116 |
+
return $url;
|
117 |
|
118 |
return $this->origin_upload_baseurl . $url;
|
119 |
}
|
125 |
* @return boolean true if the url is absolue and false otherwise
|
126 |
*/
|
127 |
public function is_absolute_url( $url ){
|
128 |
+
return preg_match( "~^(?:f|ht)tps?://~i", $url );
|
129 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
|
|
|
131 |
|
132 |
+
/**
|
133 |
+
* Wheather url contains origin_upload_baseurl or not
|
134 |
+
* @param string $url the url
|
135 |
+
* @return bool TRUE, if url contains origin_upload_baseurl
|
136 |
+
*/
|
137 |
+
public function contains_origin_upload_dir( $url ){
|
138 |
+
return strpos( $url, $this->origin_upload_baseurl ) !== false;
|
139 |
+
}
|
140 |
|
|
|
|
|
|
|
141 |
|
142 |
+
/**
|
143 |
+
* Process incoming requests for importing sliders
|
144 |
+
* @return void
|
145 |
+
*/
|
146 |
+
public function process_import_request(){
|
147 |
|
148 |
+
$step = isset( $_REQUEST['step'] ) && ! empty( $_REQUEST['step'] ) ? (int)$_REQUEST['step'] : 0;
|
149 |
|
150 |
+
if( 2 > $step ) {
|
|
|
|
|
|
|
|
|
|
|
151 |
|
152 |
+
$bytes = apply_filters( 'masterslider_import_upload_size_limit', wp_max_upload_size() );
|
153 |
+
$size = size_format( $bytes );
|
154 |
+
?>
|
155 |
|
156 |
+
<div class="msp-import-wrapper">
|
157 |
|
158 |
+
<form action="<?php echo admin_url( 'admin.php?import=masterslider-importer&step=2' ); ?>" method="post" enctype="multipart/form-data" class="msp-import-form msp-dialog-inner-section">
|
159 |
|
160 |
+
<span class="msp-dialog-section-desc"><?php _e( 'To import sliders select Masterslider Export file that you downloaded before then click import button.', 'master-slider' ) ?></span>
|
161 |
+
<br />
|
162 |
+
<hr />
|
163 |
+
<br />
|
164 |
+
<fieldset>
|
165 |
+
<?php wp_nonce_field('import-msp-sliders'); ?>
|
166 |
|
167 |
+
<input type="hidden" name="msp-import" value="1">
|
|
|
|
|
168 |
|
169 |
+
<input type="hidden" name="max_file_size" value="<?php echo $bytes; ?>" />
|
170 |
|
171 |
+
<input type="file" name="msp-import-file" class="msp-select-file">
|
|
|
172 |
|
173 |
+
<small><?php printf( __( 'Maximum size: %s', 'master-slider' ), $size ); ?></small><br /><br /><br />
|
174 |
+
|
175 |
+
<input type="submit" class="button" value="<?php esc_attr_e( 'Upload file and import', 'master-slider' ); ?>" />
|
176 |
+
</fieldset>
|
177 |
|
178 |
+
|
179 |
+
|
180 |
+
</form>
|
181 |
|
182 |
+
</div>
|
183 |
|
184 |
+
<?php
|
185 |
+
}
|
186 |
|
187 |
+
// Import sliders from export file
|
188 |
+
if( isset( $_POST['msp-import'] ) ) {
|
189 |
+
|
190 |
+
if( current_user_can('export_masterslider') ) {
|
|
|
|
|
|
|
|
|
191 |
|
192 |
+
if( check_admin_referer('import-msp-sliders') ) {
|
|
|
|
|
|
|
193 |
|
194 |
+
$step = isset( $_REQUEST['step'] ) && ! empty( $_REQUEST['step'] ) ? (int)$_REQUEST['step'] : 0;
|
|
|
|
|
|
|
195 |
|
196 |
+
if( 2 == $step ){
|
197 |
|
198 |
+
if ( $_FILES['msp-import-file']['error'] == UPLOAD_ERR_OK && is_uploaded_file( $_FILES['msp-import-file']['tmp_name'] ) ) {
|
199 |
+
// get import file content
|
200 |
+
$import_data = file_get_contents( $_FILES['msp-import-file']['tmp_name'] );
|
201 |
+
$this->import_data( $import_data );
|
202 |
+
}
|
203 |
+
|
204 |
+
}
|
205 |
+
}
|
206 |
|
207 |
+
} else {
|
208 |
+
add_action( 'admin_notices', array( $this, 'import_export_notice' ) );
|
209 |
+
}
|
210 |
+
}
|
211 |
|
212 |
+
// Import slider by starter id
|
213 |
+
if( isset( $_REQUEST['starter_id'] ) && ! empty( $_REQUEST['starter_id'] ) ) {
|
214 |
+
|
215 |
+
if( current_user_can('export_masterslider') || apply_filters( 'masterslider_user_can_import_starter_content', 0 ) ) {
|
216 |
|
217 |
+
if ( $starter_field = msp_get_slider_starter_field( $_REQUEST['starter_id'] ) ) {
|
|
|
|
|
218 |
|
219 |
+
if ( isset( $starter_field['importdata'] ) && ! empty( $starter_field['importdata'] ) ) {
|
|
|
|
|
220 |
|
221 |
+
$this->import_data( $starter_field['importdata'] );
|
222 |
+
printf( "<script> var redirect_link = '%s';</script>", admin_url( 'admin.php?page='.MSWP_SLUG.'&action=edit&slider_id='.$this->last_new_slider_id. '&fr' ) );
|
223 |
|
224 |
+
} else {
|
225 |
+
_e( 'Import data not found ..', 'master-slider' );
|
226 |
+
}
|
227 |
|
228 |
+
} else {
|
229 |
+
_e( 'Starter ID is not valid.', 'master-slider' );
|
230 |
+
}
|
231 |
|
232 |
+
} else {
|
233 |
+
add_action( 'admin_notices', array( $this, 'import_export_notice' ) );
|
234 |
+
}
|
235 |
|
236 |
+
}
|
237 |
|
238 |
+
}
|
|
|
|
|
|
|
239 |
|
|
|
240 |
|
|
|
241 |
|
242 |
+
public function process_export_request(){
|
|
|
|
|
|
|
243 |
|
244 |
+
// Export sliders
|
245 |
+
if( isset( $_POST['msp-export'] ) ) {
|
246 |
+
|
247 |
+
if( current_user_can('export_masterslider') ) {
|
248 |
|
249 |
+
if( check_admin_referer('export-msp-sliders') ) {
|
250 |
|
251 |
+
$sliders = isset( $_POST['msp-export-sliders'] ) ? $_POST['msp-export-sliders'] : '';
|
252 |
|
253 |
+
if( ! empty( $sliders ) || ! empty( $args ) ) {
|
254 |
+
$this->export_slider_data_in_file( $sliders, $args );
|
255 |
+
}
|
256 |
+
}
|
|
|
|
|
|
|
|
|
|
|
257 |
|
258 |
+
}else {
|
259 |
+
add_action( 'admin_notices', array( $this, 'import_export_notice' ) );
|
260 |
+
}
|
261 |
+
}
|
262 |
|
263 |
+
}
|
264 |
|
265 |
|
266 |
+
/**
|
267 |
+
* Add admin notice if access to import/export is denied
|
268 |
+
* @return void
|
269 |
+
*/
|
270 |
+
public function import_export_notice(){
|
271 |
+
printf( '<div class="error" style="display:block;" ><p>%s</p></div>',
|
272 |
+
apply_filters( 'masterslider_import_export_access_denied_message', __( "Sorry, You don't have enough permission to import/export sliders.", 'master-slider' ) )
|
273 |
+
);
|
274 |
+
}
|
275 |
|
276 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
277 |
|
|
|
|
|
278 |
|
|
|
|
|
279 |
|
|
|
280 |
|
281 |
+
/**
|
282 |
+
* Get slider export data
|
283 |
+
*
|
284 |
+
* @param int|array $slider_id the slider id(s)
|
285 |
+
* @param array The other options that should be included in export data ( preset_styles, preset_effects )
|
286 |
+
* @param bool $base64 encode output data to base64 or not
|
287 |
+
* @return string the slider export data
|
288 |
+
*/
|
289 |
+
function get_slider_export_data( $slider_ids = array() , $args = null, $base64 = true ){
|
290 |
|
291 |
+
$slider_ids = (array) $slider_ids;
|
292 |
+
$args = (array) $args;
|
293 |
|
294 |
+
// stores export data
|
295 |
+
$export_data = array();
|
|
|
|
|
296 |
|
297 |
+
$export_data['sliders_data'] = array();
|
|
|
|
|
|
|
|
|
|
|
|
|
298 |
|
299 |
+
// loop through selected sliders and store in sliders_data
|
300 |
+
foreach ( $slider_ids as $slider_id ) {
|
301 |
|
302 |
+
if( is_numeric( $slider_id ) ) {
|
303 |
+
global $mspdb;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
304 |
|
305 |
+
$slider_title = $mspdb->get_slider_field_val( $slider_id, 'title' );
|
306 |
+
$slider_params = $mspdb->get_slider_field_val( $slider_id, 'params' );
|
307 |
+
$slider_type = $mspdb->get_slider_field_val( $slider_id, 'type' );
|
308 |
+
$slides_num = $mspdb->get_slider_field_val( $slider_id, 'slides_num');
|
309 |
|
310 |
+
$export_data['sliders_data'][ $slider_id ] = array(
|
311 |
+
'title' => $slider_title,
|
312 |
+
'params' => $slider_params,
|
313 |
+
'type' => $slider_type,
|
314 |
+
'slides_num' => $slides_num
|
315 |
+
);
|
316 |
+
}
|
317 |
|
318 |
+
}
|
319 |
|
320 |
+
// add origin_uploads_url to export data - this helps us to fetch images from origin domian
|
321 |
+
|
322 |
+
// if you need to bundle sample sliders in your theme you can change the origin_uploads_url
|
323 |
+
// by default origin_uploads_url is the uploads baseurl on domain you exported the sliders from (e.g www.domain.com/wp-content/uploads)
|
324 |
+
// when you decide to import data to new domain, importer will use the origin_uploads_url to fetch images from.
|
325 |
+
// you can change origin_uploads_url by using 'masterslider_export_origin_uploads_url' filter
|
326 |
+
// if you change origin_uploads_url to something else, importer will import slider images
|
327 |
+
// from your custom origin_uploads_url instead of default origin_uploads_url
|
328 |
+
$custom_export_origin_uploads_url = apply_filters( 'masterslider_export_origin_uploads_url', null );
|
329 |
+
|
330 |
+
// if filter passed empty string, origin_uploads_url will be plugins/masterslider/samples folder
|
331 |
+
if( '' === $custom_export_origin_uploads_url ) {
|
332 |
+
$export_data['origin_uploads_url'] = '{{masterslider}}/samples';
|
333 |
+
|
334 |
+
// if filter passed a string with our special tags :
|
335 |
+
} elseif( false !== strpos( $custom_export_origin_uploads_url, '{{masterslider}}' ) ||
|
336 |
+
false !== strpos( $custom_export_origin_uploads_url, '{{theme_dir}}' ) ||
|
337 |
+
false !== strpos( $custom_export_origin_uploads_url, '{{child_theme_dir}}' ) ) {
|
338 |
+
|
339 |
+
$export_data['origin_uploads_url'] = $custom_export_origin_uploads_url;
|
340 |
+
|
341 |
+
// if filter value not changed use upload baseurl for current domain
|
342 |
+
} else {
|
343 |
+
$uploads = wp_upload_dir();
|
344 |
+
$export_data['origin_uploads_url'] = $uploads['baseurl'];
|
345 |
+
}
|
346 |
|
347 |
|
348 |
+
$export_json_data = json_encode( $export_data );
|
349 |
+
$export_b64_data = base64_encode( $export_json_data );
|
350 |
|
351 |
+
if ( $base64 )
|
352 |
+
return base64_encode( json_encode( $export_data ) );
|
353 |
|
354 |
+
return $export_data;
|
355 |
+
}
|
356 |
|
357 |
|
358 |
+
/**
|
359 |
+
* Print slider export data
|
360 |
+
*
|
361 |
+
* @param int|array $slider_id the slider id(s)
|
362 |
+
* @param array The other options that should be included in export data ( preset_styles, preset_effects )
|
363 |
+
* @param bool $base64 encode output data to base64 or not
|
364 |
+
* @return void
|
365 |
+
*/
|
366 |
+
function the_slider_export_data ( $slider_id, $args = null, $base64 = true ){
|
367 |
+
$export = $this->get_slider_export_data( $slider_id, $args, $base64 );
|
368 |
+
axpp( $export );
|
369 |
+
}
|
370 |
|
371 |
|
372 |
+
/**
|
373 |
+
* Export slider(s) data to file
|
374 |
+
*
|
375 |
+
* @param int|array $slider_id slider(s) ID to export
|
376 |
+
* @param array The other options that should be included in export data ( preset_style, preset_effect )
|
377 |
+
* @return void
|
378 |
+
*/
|
379 |
+
function export_slider_data_in_file( $slider_id, $args = null ){
|
380 |
|
381 |
+
$blogname = str_replace( " ", "", get_option('blogname') );
|
382 |
+
$date = date("m-d-Y");
|
383 |
+
$export_file_name = $blogname."-".MSWP_SLUG."-".$date;
|
384 |
|
385 |
+
$export_b64_data = $this->get_slider_export_data( $slider_id, $args );
|
386 |
|
387 |
+
header( "Content-Type: application/force-download; charset=" . get_option( 'blog_charset') );
|
388 |
+
header( "Content-Disposition: attachment; filename=$export_file_name.json" );
|
389 |
+
exit( $export_b64_data );
|
390 |
+
}
|
391 |
|
392 |
|
393 |
|
394 |
|
395 |
|
396 |
|
397 |
+
/**
|
398 |
+
* Import sliders and options by previousely exported data
|
399 |
+
*
|
400 |
+
* @param string $exported_data the exported string
|
401 |
+
* @return bool true on success and false on failure
|
402 |
+
*/
|
403 |
+
function import_data( $exported_data ){
|
404 |
|
405 |
+
if( empty( $exported_data ) )
|
406 |
+
return false;
|
407 |
|
408 |
+
$exported_b64_decoded = msp_maybe_base64_decode( $exported_data );
|
409 |
+
$export_array = json_decode( $exported_b64_decoded, true );
|
410 |
|
411 |
+
// validate export data
|
412 |
+
if ( ! is_array( $export_array ) ){
|
413 |
+
echo __( 'Import data is not valid.', 'master-slider' ) . "<br />";
|
414 |
+
return false;
|
415 |
+
}
|
416 |
|
417 |
|
418 |
+
// if you need to change "origin_upload_baseurl" while importing content, just define MSWP_IMPORT_FETCH_DIR const
|
419 |
+
if( defined( 'MSWP_IMPORT_FETCH_DIR' ) ){
|
420 |
+
$this->origin_upload_baseurl = MSWP_IMPORT_FETCH_DIR;
|
421 |
|
422 |
+
// set origin_upload_baseurl
|
423 |
+
} elseif( isset( $export_array['origin_uploads_url'] ) && ! empty( $export_array['origin_uploads_url'] ) ) {
|
424 |
+
$this->origin_upload_baseurl = $export_array['origin_uploads_url'];
|
425 |
|
426 |
+
} else {
|
427 |
+
$this->origin_upload_baseurl = MSWP_AVERTA_URL . '/samples';
|
428 |
+
}
|
429 |
|
430 |
+
// find and replace special template tags
|
431 |
+
$this->origin_upload_baseurl = str_replace( '{{masterslider}}' , MSWP_AVERTA_URL, $this->origin_upload_baseurl );
|
432 |
+
$this->origin_upload_baseurl = str_replace( '{{theme_dir}}' , get_template_directory_uri() , $this->origin_upload_baseurl );
|
433 |
+
$this->origin_upload_baseurl = str_replace( '{{child_theme_dir}}', get_stylesheet_directory_uri() , $this->origin_upload_baseurl );
|
434 |
|
435 |
|
436 |
|
437 |
+
// import preset styles if it's included in export data
|
438 |
+
if( isset( $export_array['preset_styles'] ) && ! empty( $export_array['preset_styles'] ) ) {
|
439 |
+
msp_update_option( 'preset_style' , $export_array['preset_styles'] );
|
440 |
+
echo __( 'Preset styles imported successfully.', 'master-slider' ) . "<br />";
|
441 |
+
}
|
442 |
|
443 |
+
// import preset effects if it's included in export data
|
444 |
+
if( isset( $export_array['preset_effects'] ) && ! empty( $export_array['preset_effects'] ) ) {
|
445 |
+
msp_update_option( 'preset_effect' , $export_array['preset_effects'] );
|
446 |
+
echo __( 'Preset transitions imported successfully.', 'master-slider' ) . "<br />";
|
447 |
+
}
|
448 |
|
449 |
+
echo __( 'Importing slides ..', 'master-slider' ) . "<br /><br />";
|
450 |
|
451 |
+
// import sliders
|
452 |
+
if( isset( $export_array['sliders_data'] ) ) {
|
453 |
+
// reset image import queue
|
454 |
+
$this->image_import_queue = array();
|
455 |
+
$this->last_new_slider_id = null;
|
456 |
+
$this->import_add_sliders( $export_array['sliders_data'] );
|
457 |
+
}
|
458 |
|
459 |
+
echo "<br />" . __( 'All data imported successfully, have fun :)' ) . "<br />";
|
460 |
|
461 |
+
printf( '<a href="%s">%s</a>', admin_url( 'admin.php?page=' . MSWP_SLUG ), __( 'Back to panel ..', 'master-slider' ) );
|
462 |
+
|
463 |
+
return true;
|
464 |
+
}
|
465 |
|
466 |
|
467 |
+
/**
|
468 |
+
* Import slider(s) by exported data
|
469 |
+
*
|
470 |
+
* @param string $sliders_data the exported string
|
471 |
+
* @return bool true on success and false on failure
|
472 |
+
*/
|
473 |
+
function import_add_sliders( $sliders_data ){
|
474 |
|
475 |
+
if( empty( $sliders_data ) )
|
476 |
+
return false;
|
477 |
|
478 |
+
if ( ! is_array( $sliders_data ) ){
|
479 |
+
return false;
|
480 |
+
}
|
481 |
|
482 |
+
foreach ( $sliders_data as $slider_fields ) {
|
483 |
|
484 |
+
global $mspdb;
|
485 |
|
486 |
+
// do not publish slider if user has not enough permission to publish sliders
|
487 |
+
$slider_fields['status'] = current_user_can( 'publish_masterslider' ) ? 'published' : 'draft';
|
488 |
+
|
489 |
+
// import slider
|
490 |
+
$new_slider_id = $mspdb->import_slider( $slider_fields );
|
491 |
+
$this->last_new_slider_id = $new_slider_id;
|
492 |
+
msp_update_slider_custom_css_and_fonts( $new_slider_id );
|
493 |
|
494 |
+
echo sprintf( 'Slider "%s" created successfully.', $new_slider_id ) . "<br />";
|
495 |
|
496 |
+
// extact and collect images from each slider
|
497 |
+
if( $this->import_medias && isset( $slider_fields['params'] ) )
|
498 |
+
$this->extract_slider_images( $slider_fields['params'] );
|
499 |
+
}
|
500 |
|
501 |
+
if( $this->import_medias )
|
502 |
+
$this->fetch_all_medias();
|
503 |
+
|
504 |
+
return true;
|
505 |
+
}
|
506 |
|
507 |
|
508 |
|
509 |
+
/**
|
510 |
+
* Extract images from slider data and add them to image_import_queue list
|
511 |
+
* @param string $slider_params the slider params
|
512 |
+
* @return void
|
513 |
+
*/
|
514 |
+
public function extract_slider_images( $slider_params ) {
|
515 |
|
516 |
+
$parser = msp_get_parser();
|
517 |
+
$parser->set_data( $slider_params );
|
518 |
+
$results = $parser->get_results();
|
519 |
|
520 |
+
// collect slider background image
|
521 |
+
$this->image_import_queue[] = $results['setting']['bg_image'];
|
522 |
|
523 |
+
if( isset( $results['setting']['ps_slide_bg'] ) )
|
524 |
+
$this->image_import_queue[] = $results['setting']['ps_slide_bg'];
|
525 |
|
526 |
+
// collect slide's images
|
527 |
+
if( isset( $results['slides'] ) ) {
|
528 |
|
529 |
+
foreach ( $results['slides'] as $slide ) {
|
530 |
+
$this->image_import_queue[] = $slide['src'];
|
531 |
+
$this->image_import_queue[] = $slide['thumb'];
|
532 |
+
}
|
533 |
+
}
|
534 |
|
535 |
+
$this->image_import_queue = apply_filters( 'masterslider_extract_slider_images_to_import', $this->image_import_queue, $results );
|
536 |
+
}
|
537 |
|
538 |
|
539 |
|
540 |
+
/**
|
541 |
+
* Download and save slider images in upload directory
|
542 |
+
* @return void
|
543 |
+
*/
|
544 |
+
public function fetch_all_medias(){
|
545 |
|
546 |
+
echo "<br />";
|
547 |
+
$this->image_import_queue = array_filter( $this->image_import_queue );
|
548 |
+
|
549 |
+
foreach ( $this->image_import_queue as $url ) {
|
550 |
+
$this->download_media( $url );
|
551 |
+
}
|
552 |
+
}
|
553 |
|
554 |
|
555 |
+
public function download_media( $url ){
|
556 |
|
557 |
+
if( ! isset( $url ) || empty( $url ) ) return '';
|
558 |
|
559 |
// remove upload directory and get relative url
|
560 |
if( $this->contains_origin_upload_dir( $url ) ) {
|
561 |
+
$url = str_replace( $this->origin_upload_baseurl, '', $url );
|
562 |
}
|
563 |
|
564 |
// skip if url was not internal media url
|
565 |
if( $this->is_absolute_url( $url ) ) {
|
566 |
+
echo "Media already exists.<br />";
|
567 |
+
return '';
|
568 |
}
|
569 |
|
570 |
|
571 |
$relative_url = $url;
|
572 |
|
573 |
// extract the file name and extension from the url
|
574 |
+
$file_name = basename( $relative_url );
|
575 |
|
576 |
+
// extract upload date
|
577 |
+
$upload_date = untrailingslashit( str_replace( $file_name, '', $relative_url ) );
|
578 |
|
579 |
+
// get absolute media url
|
580 |
+
$absolute_url = $this->get_absolute_media_url( $relative_url );
|
581 |
|
582 |
+
// printf( "Importing ( %s ) file from ( %s ) .. <br />", $relative_url, $absolute_url );
|
583 |
|
584 |
+
// check if import media already exist
|
585 |
+
if( is_file( $this->upload_basedir . $relative_url ) ) {
|
586 |
+
echo sprintf( 'Media “%s” already exists.', $file_name ) . "<br />";
|
587 |
+
return;
|
588 |
+
}
|
589 |
|
590 |
+
printf( "Importing ( %s ) file .. <br />", $relative_url );
|
591 |
|
592 |
+
// printf( "upload date ( %s ) .. <br />", $upload_date ); printf( "absolute url ( %s ) .. <br /><br />", $absolute_url ); return;
|
593 |
|
594 |
+
$upload = $this->fetch_remote_file( $absolute_url, $upload_date );
|
595 |
|
596 |
|
597 |
+
if( is_wp_error( $upload ) || $upload['error'] ) {
|
598 |
+
echo "Failed to import media." . "<br />";
|
599 |
+
return $upload;
|
600 |
+
}
|
601 |
|
602 |
|
603 |
+
// Prepare an array of post data for the attachment.
|
604 |
+
$attachment = array(
|
605 |
+
'guid' => '',
|
606 |
+
'post_mime_type' => '',
|
607 |
+
'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $upload['file'] ) ),
|
608 |
+
'post_content' => '',
|
609 |
+
'post_status' => 'inherit'
|
610 |
+
);
|
611 |
|
612 |
+
if ( $info = wp_check_filetype( $upload['file'] ) )
|
613 |
+
$attachment['post_mime_type'] = $info['type'];
|
614 |
+
else
|
615 |
+
return new WP_Error( 'attachment_processing_error', __('Invalid file type', 'wordpress-importer') );
|
616 |
|
617 |
+
$attachment['guid'] = $upload['url'];
|
618 |
|
619 |
+
// as per wp-admin/includes/upload.php
|
620 |
+
$attachment_id = wp_insert_attachment( $attachment, $upload['file'] );
|
621 |
|
622 |
+
// Make sure that this file is included, as wp_generate_attachment_metadata() depends on it.
|
623 |
+
require_once( ABSPATH . 'wp-admin/includes/image.php' );
|
624 |
|
625 |
+
wp_update_attachment_metadata( $attachment_id, wp_generate_attachment_metadata( $attachment_id, $upload['file'] ) );
|
626 |
|
627 |
|
628 |
|
629 |
+
echo sprintf( '<a href="%s" target="_blank" >%s</a> Imported successfully.', $upload['url'], $file_name ) . "<br />";
|
630 |
+
}
|
631 |
|
632 |
|
633 |
+
/**
|
634 |
+
* Attempt to download a remote file attachment
|
635 |
+
*
|
636 |
+
* @param string $url URL of item to fetch
|
637 |
+
* @param array $post Attachment details
|
638 |
+
* @return array|WP_Error Local file location details on success, WP_Error otherwise
|
639 |
+
*/
|
640 |
+
function fetch_remote_file( $url, $subdir = null ) {
|
641 |
|
642 |
+
add_filter( 'http_request_timeout', array( $this, 'bump_request_timeout' ) );
|
643 |
|
644 |
+
// extract the file name and extension from the url
|
645 |
+
$file_name = basename( $url );
|
646 |
|
647 |
+
// get placeholder file in the upload dir with a unique, sanitized filename
|
648 |
+
$upload = $this->wp_upload_bits( $file_name, '', $subdir );
|
649 |
|
650 |
+
// var_dump( $upload );
|
651 |
+
//echo "<br />" . $url . "<br />"; return new WP_Error( 'import_file_error', '' );
|
652 |
|
653 |
+
if ( $upload['error'] )
|
654 |
+
return new WP_Error( 'upload_dir_error', $upload['error'] );
|
655 |
|
656 |
+
// fetch the remote url and write it to the placeholder file
|
657 |
+
$headers = wp_get_http( $url, $upload['file'] );
|
658 |
|
659 |
+
// request failed
|
660 |
+
if ( ! $headers ) {
|
661 |
+
@unlink( $upload['file'] );
|
662 |
+
return new WP_Error( 'import_file_error', __('Remote server did not respond', 'wordpress-importer') );
|
663 |
+
}
|
664 |
|
665 |
+
// make sure the fetch was successful
|
666 |
+
if ( $headers['response'] != '200' ) {
|
667 |
+
@unlink( $upload['file'] );
|
668 |
+
return new WP_Error( 'import_file_error', sprintf( __('Remote server returned error response %1$d %2$s', 'wordpress-importer'), esc_html( $headers['response'] ), get_status_header_desc( $headers['response'] ) ) );
|
669 |
+
}
|
670 |
|
671 |
+
$filesize = filesize( $upload['file'] );
|
672 |
|
673 |
+
if ( isset( $headers['content-length'] ) && $filesize != $headers['content-length'] ) {
|
674 |
+
@unlink( $upload['file'] );
|
675 |
+
return new WP_Error( 'import_file_error', __('Remote file is incorrect size', 'wordpress-importer') );
|
676 |
+
}
|
677 |
|
678 |
+
if ( 0 == $filesize ) {
|
679 |
+
@unlink( $upload['file'] );
|
680 |
+
return new WP_Error( 'import_file_error', __('Zero size file downloaded', 'wordpress-importer') );
|
681 |
+
}
|
682 |
|
683 |
+
$max_size = (int) $this->max_attachment_size();
|
684 |
+
if ( ! empty( $max_size ) && $filesize > $max_size ) {
|
685 |
+
@unlink( $upload['file'] );
|
686 |
+
return new WP_Error( 'import_file_error', sprintf(__('Remote file is too large, limit is %s', 'wordpress-importer'), size_format( $max_size ) ) );
|
687 |
+
}
|
688 |
|
689 |
+
return $upload;
|
690 |
+
}
|
691 |
|
692 |
|
693 |
|
694 |
|
695 |
|
696 |
+
/**
|
697 |
+
* Create a file in the upload folder with given content.
|
698 |
+
*
|
699 |
+
* If there is an error, then the key 'error' will exist with the error message.
|
700 |
+
* If success, then the key 'file' will have the unique file path, the 'url' key
|
701 |
+
* will have the link to the new file. and the 'error' key will be set to false.
|
702 |
+
*
|
703 |
+
* This function will not move an uploaded file to the upload folder. It will
|
704 |
+
* create a new file with the content in $bits parameter. If you move the upload
|
705 |
+
* file, read the content of the uploaded file, and then you can give the
|
706 |
+
* filename and content to this function, which will add it to the upload
|
707 |
+
* folder.
|
708 |
+
*
|
709 |
+
* The permissions will be set on the new file automatically by this function.
|
710 |
+
*
|
711 |
+
* @param string $name
|
712 |
+
* @param mixed $bits File content
|
713 |
+
* @param string $subdir Optional. Time formatted in 'yyyy/mm'.
|
714 |
+
* @return array
|
715 |
+
*/
|
716 |
+
function wp_upload_bits( $name, $bits, $subdir = '' ) {
|
717 |
|
718 |
+
if ( empty( $name ) )
|
719 |
+
return array( 'error' => __( 'Empty filename' ) );
|
720 |
|
721 |
+
$wp_filetype = wp_check_filetype( $name );
|
722 |
|
723 |
+
if ( ! $wp_filetype['ext'] && ! current_user_can( 'unfiltered_upload' ) )
|
724 |
+
return array( 'error' => __( 'Invalid file type' ) );
|
725 |
|
726 |
+
$upload = wp_upload_dir();
|
727 |
|
728 |
+
if ( $upload['error'] !== false )
|
729 |
+
return $upload;
|
730 |
|
731 |
|
732 |
+
$upload_path = $upload['basedir'] . $subdir;
|
733 |
|
734 |
+
$filename = wp_unique_filename( $upload_path, $name );
|
735 |
|
736 |
+
$new_file = $upload_path . "/$filename";
|
737 |
|
738 |
+
// echo "file path : {$new_file} <br />";
|
739 |
|
740 |
|
741 |
+
if ( ! wp_mkdir_p( dirname( $new_file ) ) ) {
|
742 |
+
if ( 0 === strpos( $upload['basedir'], ABSPATH ) )
|
743 |
+
$error_path = str_replace( ABSPATH, '', $upload['basedir'] ) . $upload['subdir'];
|
744 |
+
else
|
745 |
+
$error_path = basename( $upload['basedir'] ) . $upload['subdir'];
|
746 |
|
747 |
+
$message = sprintf( __( 'Unable to create directory %s. Is its parent directory writable by the server?' ), $error_path );
|
748 |
+
return array( 'error' => $message );
|
749 |
+
}
|
750 |
|
751 |
+
$ifp = @ fopen( $new_file, 'wb' );
|
752 |
+
if ( ! $ifp )
|
753 |
+
return array( 'error' => sprintf( __( 'Could not write file %s' ), $new_file ) );
|
754 |
|
755 |
+
@fwrite( $ifp, $bits );
|
756 |
+
fclose( $ifp );
|
757 |
+
clearstatcache();
|
758 |
|
759 |
+
// Set correct file permissions
|
760 |
+
$stat = @ stat( dirname( $new_file ) );
|
761 |
+
$perms = $stat['mode'] & 0007777;
|
762 |
+
$perms = $perms & 0000666;
|
763 |
+
@ chmod( $new_file, $perms );
|
764 |
+
clearstatcache();
|
765 |
|
766 |
+
// Compute the URL
|
767 |
+
$url = $upload['baseurl'] . "$subdir/$filename";
|
768 |
|
769 |
+
return array( 'file' => $new_file, 'url' => $url, 'error' => false );
|
770 |
+
}
|
771 |
|
772 |
|
773 |
+
/**
|
774 |
+
* Added to http_request_timeout filter to force timeout at 60 seconds during import
|
775 |
+
* @return int 60
|
776 |
+
*/
|
777 |
+
function bump_request_timeout() {
|
778 |
+
return 60;
|
779 |
+
}
|
780 |
|
781 |
|
782 |
|
admin/includes/classes/class-msp-list-table.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
class MSP_List_Table extends Axiom_List_Table {
|
4 |
|
5 |
|
6 |
-
|
7 |
|
8 |
//Set parent defaults
|
9 |
parent::__construct( array(
|
@@ -15,57 +15,57 @@ class MSP_List_Table extends Axiom_List_Table {
|
|
15 |
}
|
16 |
|
17 |
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
|
32 |
|
33 |
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
|
43 |
|
44 |
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
|
53 |
-
|
54 |
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
|
70 |
|
71 |
|
@@ -77,124 +77,124 @@ class MSP_List_Table extends Axiom_List_Table {
|
|
77 |
if( current_user_can( 'delete_masterslider' ) && 'delete' === $this->current_action() ) {
|
78 |
|
79 |
global $mspdb;
|
80 |
-
|
81 |
-
|
82 |
|
83 |
} else {
|
84 |
-
|
85 |
}
|
86 |
|
87 |
// check if a duplicate request recieved
|
88 |
if( current_user_can( 'duplicate_masterslider' ) && 'duplicate' === $this->current_action() ) {
|
89 |
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
|
98 |
}
|
99 |
|
100 |
|
101 |
function delete_error_notice () {
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
}
|
106 |
|
107 |
|
108 |
function duplicate_error_notice () {
|
109 |
-
|
110 |
-
|
111 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
|
|
|
|
|
114 |
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
global $mspdb;
|
122 |
-
|
123 |
-
switch( $column_name ) {
|
124 |
-
case 'shortcode':
|
125 |
-
return sprintf('[masterslider id="%s"]', $item['ID']);
|
126 |
-
case 'date_modified':
|
127 |
-
|
128 |
-
$orig_time = isset( $item['date_modified'] ) ? strtotime($item['date_modified']) : '';
|
129 |
-
$time = date_i18n( 'Y/m/d @ g:i:s A', $orig_time );
|
130 |
-
$human = human_time_diff( $orig_time );
|
131 |
-
return sprintf( '<abbr title="%s">%s</abbr>', $time, $human . __(' ago', MSWP_TEXT_DOMAIN) ) ;
|
132 |
-
case 'date_created':
|
133 |
-
$orig_time = isset( $item['date_created'] ) ? strtotime($item['date_created']) : '';
|
134 |
-
$date = date_i18n( 'Y/m/d', $orig_time );
|
135 |
-
$time = date_i18n( 'Y/m/d @ g:i:s A', $orig_time );
|
136 |
-
return sprintf( '<abbr title="%s">%s</abbr>', $time, $date );
|
137 |
-
case 'slides_num':
|
138 |
-
global $mspdb;
|
139 |
-
return $mspdb->get_slider_field_val( $item['ID'], 'slides_num' );
|
140 |
-
case 'ID':
|
141 |
-
case 'title':
|
142 |
-
return $item[ $column_name ];
|
143 |
-
default:
|
144 |
-
return;
|
145 |
-
//return print_r( $item, true ) ; //Show the whole array for troubleshooting purposes
|
146 |
-
}
|
147 |
-
}
|
148 |
-
|
149 |
-
|
150 |
-
function get_records( $perpage = 20, $paged = 1, $orderby = 'ID', $order = 'DESC', $where = "status='published'" ){
|
151 |
-
global $mspdb;
|
152 |
-
|
153 |
-
$offset = ( (int)$paged - 1 ) * $perpage;
|
154 |
-
$orderby = isset( $_REQUEST['orderby'] ) ? $_REQUEST['orderby'] : 'ID';
|
155 |
-
$order = isset( $_REQUEST['order'] ) ? $_REQUEST['order'] : 'ASC';
|
156 |
-
|
157 |
-
$search = isset( $_REQUEST['s'] ) ? " AND title LIKE '%%" . $_REQUEST['s'] . "%%'" : '';
|
158 |
-
|
159 |
-
return $mspdb->get_sliders( $perpage, $offset, $orderby, $order, $where.$search );
|
160 |
-
}
|
161 |
-
|
162 |
-
|
163 |
-
function get_total_count(){
|
164 |
-
global $mspdb;
|
165 |
-
|
166 |
-
$all_items = $this->get_records( 0 );
|
167 |
-
return count( $all_items );
|
168 |
-
}
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
function prepare_items() {
|
173 |
-
|
174 |
-
$columns = $this->get_columns();
|
175 |
-
$hidden = array();
|
176 |
-
$sortable = $this->get_sortable_columns();
|
177 |
-
|
178 |
-
$this->_column_headers = array( $columns, $hidden, $sortable );
|
179 |
-
|
180 |
-
$this->process_bulk_action();
|
181 |
-
|
182 |
-
$perpage = (int) apply_filters( 'masterslider_admin_sliders_per_page', 10 );
|
183 |
-
$current_page = $this->get_pagenum();
|
184 |
-
$orderby = 'ID';
|
185 |
-
$order = 'DESC';
|
186 |
-
$total_items = $this->get_total_count();
|
187 |
-
|
188 |
-
|
189 |
-
$this->items = $this->get_records( $perpage, $current_page, $orderby, $order );
|
190 |
-
// echo '<pre>'; print_r( $this->items ); echo '</pre>';
|
191 |
-
|
192 |
-
// tell the class the total number of items and how many items to show on a page
|
193 |
-
$this->set_pagination_args( array(
|
194 |
-
'total_items' => $total_items,
|
195 |
-
'per_page' => $perpage
|
196 |
-
));
|
197 |
-
}
|
198 |
|
199 |
}
|
200 |
|
3 |
class MSP_List_Table extends Axiom_List_Table {
|
4 |
|
5 |
|
6 |
+
function __construct(){
|
7 |
|
8 |
//Set parent defaults
|
9 |
parent::__construct( array(
|
15 |
}
|
16 |
|
17 |
|
18 |
+
function get_columns(){
|
19 |
+
$columns = array(
|
20 |
+
'ID' => __('ID' , 'master-slider' ),
|
21 |
+
'title' => __('Name' , 'master-slider' ),
|
22 |
+
'shortcode' => __('Shortcode', 'master-slider' ),
|
23 |
+
'slides_num' => __('Slides', 'master-slider' ),
|
24 |
+
'type' => __('Type', 'master-slider' ),
|
25 |
+
'date_modified' => __('Last Modify', 'master-slider' ),
|
26 |
+
'date_created' => __('Date Created', 'master-slider' ),
|
27 |
+
'action' => __('Action', 'master-slider' )
|
28 |
+
);
|
29 |
+
return $columns;
|
30 |
+
}
|
31 |
|
32 |
|
33 |
|
34 |
+
function get_sortable_columns() {
|
35 |
+
$sortable_columns = array(
|
36 |
+
'ID' => array('ID',false),
|
37 |
+
'date_created' => array('date_created' ,false),
|
38 |
+
'date_modified' => array('date_modified',false)
|
39 |
+
);
|
40 |
+
return $sortable_columns;
|
41 |
+
}
|
42 |
|
43 |
|
44 |
|
45 |
+
function column_title($item) {
|
46 |
+
return sprintf('<a href="?page=%s&action=%s&slider_id=%s">%s</a>',$_REQUEST['page'],'edit', $item['ID'], $item['title'] );
|
47 |
+
}
|
48 |
|
49 |
+
function column_action( $item ) {
|
50 |
+
$paged = $this->get_pagenum();
|
51 |
+
$paged_arg = (int)$paged > 1 ? '&paged=' . $paged : '';
|
52 |
|
53 |
+
$buttons = '';
|
54 |
|
55 |
+
if( current_user_can( 'duplicate_masterslider' ) || apply_filters( 'masterslider_admin_display_duplicate_btn', 0 ) )
|
56 |
+
$buttons .= sprintf( '<a class="action-duplicate msp-ac-btn msp-btn-gray msp-iconic" href="?page=%s&action=%s&slider_id=%s%s"><span></span>%s</a>',$_REQUEST['page'],'duplicate' ,$item['ID'], $paged_arg, __('duplicate') );
|
57 |
+
|
58 |
+
if( current_user_can( 'delete_masterslider' ) || apply_filters( 'masterslider_admin_display_delete_btn', 0 ) ) {
|
59 |
+
$buttons .= sprintf( '<a class="action-delete msp-ac-btn msp-btn-red msp-iconic" href="?page=%s&action=%s&slider_id=%s%s" onClick="return confirm(\'%s\');" ><span></span>%s</a>', $_REQUEST['page'],'delete' ,$item['ID'],
|
60 |
+
$paged_arg, wp_slash( apply_filters( 'masterslider_admin_delete_btn_alert_message', __( 'Are you sure you want to delete this slider?' , 'master-slider' ) ) ),
|
61 |
+
__('delete')
|
62 |
+
);
|
63 |
+
}
|
64 |
+
|
65 |
+
$buttons .= sprintf( '<a class="action-preview msp-ac-btn msp-btn-blue msp-iconic" href="?page=%s&action=%s&slider_id=%s" onClick="lunchMastersliderPreviewBySliderID(%s);return false;" ><span></span>%s</a>',$_REQUEST['page'],'preview' ,$item['ID'], $item['ID'], __('preview') );
|
66 |
+
|
67 |
+
return $buttons;
|
68 |
+
}
|
69 |
|
70 |
|
71 |
|
77 |
if( current_user_can( 'delete_masterslider' ) && 'delete' === $this->current_action() ) {
|
78 |
|
79 |
global $mspdb;
|
80 |
+
$mspdb->delete_slider($slider_id);
|
81 |
+
// echo "Slider id ($slider_id) Removed";
|
82 |
|
83 |
} else {
|
84 |
+
add_action( 'admin_notices', array( $this, 'delete_error_notice' ) );
|
85 |
}
|
86 |
|
87 |
// check if a duplicate request recieved
|
88 |
if( current_user_can( 'duplicate_masterslider' ) && 'duplicate' === $this->current_action() ) {
|
89 |
|
90 |
+
global $mspdb;
|
91 |
+
$mspdb->duplicate_slider($slider_id);
|
92 |
+
// echo "Slider id ($slider_id) duplicated";
|
93 |
+
|
94 |
+
} else {
|
95 |
+
add_action( 'admin_notices', array( $this, 'duplicate_error_notice' ) );
|
96 |
+
}
|
97 |
|
98 |
}
|
99 |
|
100 |
|
101 |
function delete_error_notice () {
|
102 |
+
printf( '<div class="error" style="display:block;" ><p>%s</p></div>',
|
103 |
+
apply_filters( 'masterslider_delete_insufficient_permissions_notice', __( "Sorry, You don't have enough permission to delete slider.", 'master-slider' ) )
|
104 |
+
);
|
105 |
}
|
106 |
|
107 |
|
108 |
function duplicate_error_notice () {
|
109 |
+
printf( '<div class="error" style="display:block;" ><p>%s</p></div>',
|
110 |
+
apply_filters( 'masterslider_duplicate_insufficient_permissions_notice', __( "Sorry, You don't have enough permission to duplicate slider.", 'master-slider' ) )
|
111 |
+
);
|
112 |
+
}
|
113 |
+
|
114 |
+
|
115 |
+
function no_items() {
|
116 |
+
_e( 'No slider found.', 'master-slider' );
|
117 |
+
}
|
118 |
+
|
119 |
+
|
120 |
+
function column_default( $item, $column_name ) {
|
121 |
+
global $mspdb;
|
122 |
+
|
123 |
+
switch( $column_name ) {
|
124 |
+
case 'shortcode':
|
125 |
+
return sprintf('[masterslider id="%s"]', $item['ID']);
|
126 |
+
case 'date_modified':
|
127 |
+
|
128 |
+
$orig_time = isset( $item['date_modified'] ) ? strtotime($item['date_modified']) : '';
|
129 |
+
$time = date_i18n( 'Y/m/d @ g:i:s A', $orig_time );
|
130 |
+
$human = human_time_diff( $orig_time );
|
131 |
+
return sprintf( '<abbr title="%s">%s</abbr>', $time, $human . __(' ago', 'master-slider') ) ;
|
132 |
+
case 'date_created':
|
133 |
+
$orig_time = isset( $item['date_created'] ) ? strtotime($item['date_created']) : '';
|
134 |
+
$date = date_i18n( 'Y/m/d', $orig_time );
|
135 |
+
$time = date_i18n( 'Y/m/d @ g:i:s A', $orig_time );
|
136 |
+
return sprintf( '<abbr title="%s">%s</abbr>', $time, $date );
|
137 |
+
case 'slides_num':
|
138 |
+
global $mspdb;
|
139 |
+
return $mspdb->get_slider_field_val( $item['ID'], 'slides_num' );
|
140 |
+
case 'ID':
|
141 |
+
case 'title':
|
142 |
+
return $item[ $column_name ];
|
143 |
+
default:
|
144 |
+
return;
|
145 |
+
//return print_r( $item, true ) ; //Show the whole array for troubleshooting purposes
|
146 |
}
|
147 |
+
}
|
148 |
+
|
149 |
+
|
150 |
+
function get_records( $perpage = 20, $paged = 1, $orderby = 'ID', $order = 'DESC', $where = "status='published'" ){
|
151 |
+
global $mspdb;
|
152 |
+
|
153 |
+
$offset = ( (int)$paged - 1 ) * $perpage;
|
154 |
+
$orderby = isset( $_REQUEST['orderby'] ) ? $_REQUEST['orderby'] : 'ID';
|
155 |
+
$order = isset( $_REQUEST['order'] ) ? $_REQUEST['order'] : 'ASC';
|
156 |
+
|
157 |
+
$search = isset( $_REQUEST['s'] ) ? " AND title LIKE '%%" . $_REQUEST['s'] . "%%'" : '';
|
158 |
+
|
159 |
+
return $mspdb->get_sliders( $perpage, $offset, $orderby, $order, $where.$search );
|
160 |
+
}
|
161 |
+
|
162 |
+
|
163 |
+
function get_total_count(){
|
164 |
+
global $mspdb;
|
165 |
+
|
166 |
+
$all_items = $this->get_records( 0 );
|
167 |
+
return count( $all_items );
|
168 |
+
}
|
169 |
+
|
170 |
+
|
171 |
+
|
172 |
+
function prepare_items() {
|
173 |
+
|
174 |
+
$columns = $this->get_columns();
|
175 |
+
$hidden = array();
|
176 |
+
$sortable = $this->get_sortable_columns();
|
177 |
+
|
178 |
+
$this->_column_headers = array( $columns, $hidden, $sortable );
|
179 |
+
|
180 |
+
$this->process_bulk_action();
|
181 |
+
|
182 |
+
$perpage = (int) apply_filters( 'masterslider_admin_sliders_per_page', 10 );
|
183 |
+
$current_page = $this->get_pagenum();
|
184 |
+
$orderby = 'ID';
|
185 |
+
$order = 'DESC';
|
186 |
+
$total_items = $this->get_total_count();
|
187 |
+
|
188 |
|
189 |
+
$this->items = $this->get_records( $perpage, $current_page, $orderby, $order );
|
190 |
+
// echo '<pre>'; print_r( $this->items ); echo '</pre>';
|
191 |
|
192 |
+
// tell the class the total number of items and how many items to show on a page
|
193 |
+
$this->set_pagination_args( array(
|
194 |
+
'total_items' => $total_items,
|
195 |
+
'per_page' => $perpage
|
196 |
+
));
|
197 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
198 |
|
199 |
}
|
200 |
|
admin/includes/classes/class-msp-parser.php
CHANGED
@@ -14,324 +14,324 @@
|
|
14 |
class MSP_Parser {
|
15 |
|
16 |
|
17 |
-
|
18 |
|
19 |
-
|
20 |
-
|
21 |
|
22 |
-
|
23 |
-
|
24 |
|
25 |
-
|
26 |
-
|
27 |
|
28 |
-
|
29 |
-
|
30 |
|
31 |
|
32 |
-
|
33 |
|
34 |
-
|
35 |
-
|
36 |
|
37 |
|
38 |
-
|
39 |
-
public function __construct() {
|
40 |
|
|
|
41 |
|
42 |
-
if ( apply_filters( 'masterslider_compress_custom_css' , 1 ) ) {
|
43 |
-
$this->join_char = "";
|
44 |
-
$this->tab_char = "";
|
45 |
-
}
|
46 |
-
}
|
47 |
|
48 |
-
|
|
|
|
|
|
|
|
|
49 |
|
50 |
-
|
51 |
|
52 |
-
|
53 |
-
if( isset( $array[ $key ] ) ) {
|
54 |
-
return $array[ $key ] ? 'true' : 'false';
|
55 |
-
} else {
|
56 |
-
return $default;
|
57 |
-
}
|
58 |
-
}
|
59 |
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
|
62 |
-
|
63 |
-
$setting = maybe_unserialize( $setting );
|
64 |
|
65 |
-
|
|
|
66 |
|
67 |
-
|
68 |
-
$post_tags = isset( $setting['postTags'] ) ? (array) $setting['postTags'] : array();
|
69 |
-
$tax_term_ids = implode( ',', array_merge( $post_cats, $post_tags ) );
|
70 |
|
71 |
-
|
72 |
-
|
|
|
73 |
|
74 |
-
|
75 |
-
|
76 |
-
'class' => isset( $setting['className'] ) ? (string) $setting['className'] : '', // a class that adds to slider wrapper
|
77 |
-
'margin' => 0,
|
78 |
|
79 |
-
|
|
|
|
|
|
|
80 |
|
81 |
-
|
82 |
-
'bg_color' => isset( $setting['bgColor'] ) ? (string) $setting['bgColor'] : '',
|
83 |
-
'bg_image' => isset( $setting['bgImage'] ) ? msp_get_the_relative_media_url( $setting['bgImage'] ) : '',
|
84 |
|
85 |
-
|
|
|
|
|
86 |
|
87 |
-
|
88 |
-
|
89 |
|
90 |
-
|
91 |
-
'height' => isset( $setting['height'] ) ? (int) rtrim($setting['height'], 'px' ) : 150, // base height of slides, It helps the slider to resize in correct ratio.
|
92 |
-
'min_height' => isset( $setting['minHeight'] ) ? (int) rtrim($setting['minHeight'], 'px' ) : 0,
|
93 |
|
94 |
-
'start' => isset( $setting['start'] ) ? (int) $setting['start'] : 1,
|
95 |
-
'space' => isset( $setting['space'] ) ? (int) $setting['space'] : 0,
|
96 |
|
97 |
-
|
98 |
-
|
|
|
99 |
|
100 |
-
|
101 |
-
|
102 |
|
103 |
-
|
|
|
104 |
|
105 |
-
|
106 |
-
|
107 |
-
'shuffle' => $this->is_key_true( $setting, 'shuffle', 'false' ), // Enables the shuffle slide order
|
108 |
-
'preload' => isset( $setting['preload'] ) ? $setting['preload'] : 0,
|
109 |
|
110 |
-
|
111 |
-
'wrapper_width_unit' => isset( $setting['wrapperWidthUnit'] ) ? $setting['wrapperWidthUnit'] : 'px',
|
112 |
-
|
113 |
-
'layout' => isset( $setting['layout'] ) ? (string) $setting['layout'] : 'boxed',
|
114 |
|
115 |
-
|
|
|
|
|
|
|
116 |
|
|
|
|
|
117 |
|
118 |
-
|
119 |
-
'auto_height' => $this->is_key_true( $setting, 'autoHeight', 'false' ),
|
120 |
-
'smooth_height' => 'true',
|
121 |
-
|
122 |
-
'end_pause' => $this->is_key_true( $setting, 'endPause' , 'false' ),
|
123 |
-
'over_pause' => $this->is_key_true( $setting, 'overPause', 'false' ),
|
124 |
-
|
125 |
-
'fill_mode' => apply_filters( 'masterslider_params_default_fill_mode', 'fill' ),
|
126 |
-
'center_controls'=> $this->is_key_true( $setting, 'centerControls', 'true' ),
|
127 |
-
|
128 |
-
'speed' => isset( $setting['speed'] ) ? (int) $setting['speed'] : 17,
|
129 |
-
|
130 |
-
'skin' => isset( $setting['skin'] ) ? $setting['skin'] : 'ms-skin-default', // slider skin. should be seperated by space
|
131 |
-
'template' => isset( $setting['msTemplate'] ) ? (string) $setting['msTemplate'] : 'custom',
|
132 |
-
'template_class'=> isset( $setting['msTemplateClass'] ) ? (string) $setting['msTemplateClass'] : '',
|
133 |
-
'direction' => isset( $setting['dir'] ) ? (string) $setting['dir'] : 'h',
|
134 |
-
'view' => isset( $setting['trView'] ) ? (string) $setting['trView'] : 'basic',
|
135 |
-
|
136 |
-
'gfonts' => isset( $setting['usedFonts'] ) ? (string) $setting['usedFonts'] : '',
|
137 |
-
|
138 |
-
'parallax_mode' => isset( $setting['parallaxMode'] ) ? (string) $setting['parallaxMode'] : 'swipe',
|
139 |
-
|
140 |
-
'start_on_appear' => $this->is_key_true( $setting, 'startOnAppear', 'false' ),
|
141 |
-
|
142 |
-
'flickr_key' => isset( $setting['apiKey'] ) ? (string) $setting['apiKey'] : '',
|
143 |
-
'flickr_id' => $setid,
|
144 |
-
'flickr_count' => isset( $setting['imgCount'] ) ? (int) $setting['imgCount'] : 10,
|
145 |
-
'flickr_type' => isset( $setting['setType'] ) ? (string) $setting['setType'] : 'photos',
|
146 |
-
'flickr_size' => isset( $setting['imgSize'] ) ? (string) $setting['imgSize'] : 'c',
|
147 |
-
'flickr_thumb_size' => isset( $setting['thumbSize'] ) ? (string) $setting['thumbSize'] : 'q',
|
148 |
-
|
149 |
-
|
150 |
-
'ps_post_type' => isset( $setting['postType'] ) ? (string) $setting['postType'] : '',
|
151 |
-
'ps_tax_term_ids' => $tax_term_ids,
|
152 |
-
'ps_post_count' => isset( $setting['postCount'] ) ? (int) $setting['postCount'] : 10,
|
153 |
-
'ps_image_from' => isset( $setting['postImageType'] ) ? (string) $setting['postImageType'] : 'auto',
|
154 |
-
'ps_order' => isset( $setting['postOrder'] ) ? (string) $setting['postOrder'] : 'DESC',
|
155 |
-
'ps_orderby' => isset( $setting['postOrderDir'] ) ? (string) $setting['postOrderDir'] : 'menu_order date',
|
156 |
-
'ps_posts_not_in' => isset( $setting['postExcludeIds'] ) ? (string) $setting['postExcludeIds'] : '',
|
157 |
-
'ps_excerpt_len' => isset( $setting['postExcerptLen'] ) ? (int) $setting['postExcerptLen'] : 100,
|
158 |
-
'ps_offset' => isset( $setting['postOffset'] ) ? (int) $setting['postOffset'] : 0,
|
159 |
-
'ps_link_slide' => isset( $setting['postLinkSlide'] ) ? (boolean) $setting['postLinkSlide'] : false,
|
160 |
-
'ps_link_target' => isset( $setting['postLinkTarget'] ) ? (string) $setting['postLinkTarget'] : '_self',
|
161 |
-
'ps_slide_bg' => isset( $setting['postSlideBg'] ) ? msp_get_the_relative_media_url( $setting['postSlideBg'] ) : '',
|
162 |
-
|
163 |
-
'wc_only_featured' => $this->is_key_true( $setting, 'wcOnlyFeatured', 'false' ),
|
164 |
-
'wc_only_instock' => $this->is_key_true( $setting, 'wcOnlyInstock' , 'false' ),
|
165 |
-
'wc_only_onsale' => $this->is_key_true( $setting, 'wcOnlyOnsale' , 'false' ),
|
166 |
-
|
167 |
-
|
168 |
-
'facebook_username' => isset( $setting['setType'] ) && ( 'photostream' == $setting['setType'] ) ? $setid : '',
|
169 |
-
'facebook_albumid' => isset( $setting['setType'] ) && ( 'album' == $setting['setType'] ) ? $setid : '',
|
170 |
-
'facebook_count' => isset( $setting['imgCount'] ) ? (int) $setting['imgCount'] : 10,
|
171 |
-
'facebook_type' => isset( $setting['setType'] ) ? (string) $setting['setType'] : 'album',
|
172 |
-
'facebook_size' => isset( $setting['imgSize'] ) ? (string) $setting['imgSize'] : 'orginal',
|
173 |
-
'facebook_thumb_size' => isset( $setting['thumbSize'] ) ? (string) $setting['thumbSize'] : '320',
|
174 |
-
|
175 |
-
'arrows' => 'false', // display arrows?
|
176 |
-
'arrows_autohide' => 'true', // auto hide arrows?
|
177 |
-
'arrows_overvideo' => 'true', // visible over slide video while playing?
|
178 |
-
'arrows_hideunder' => '',
|
179 |
-
|
180 |
-
'bullets' => 'false', // display bullets?
|
181 |
-
'bullets_autohide' => 'true', // auto hide bullets?
|
182 |
-
'bullets_overvideo'=> 'true', // visible over slide video while playing?
|
183 |
-
'bullets_align' => 'bottom',
|
184 |
-
'bullets_margin' => '',
|
185 |
-
'bullets_hideunder'=> '',
|
186 |
-
|
187 |
-
'thumbs' => 'false', // display thumbnails?
|
188 |
-
'thumbs_autohide' => 'true', // auto hide thumbs?
|
189 |
-
'thumbs_overvideo' => 'true', // visible over slide video while playing?
|
190 |
-
'thumbs_type' => 'thumbs', // thumb or tabs
|
191 |
-
'thumbs_speed' => 17, // scrolling speed. It accepts float values between 0 and 100
|
192 |
-
'thumbs_inset' => 'true', // insert thumbs inside slider
|
193 |
-
'thumbs_align' => 'bottom',
|
194 |
-
'thumbs_margin' => 0,
|
195 |
-
'thumbs_width' => 100,
|
196 |
-
'thumbs_height' => 80,
|
197 |
-
'thumbs_space' => 5,
|
198 |
-
'thumbs_hideunder' => '',
|
199 |
-
'thumbs_arrows' => 'false',
|
200 |
-
'thumbs_in_tab' => 'false',
|
201 |
-
'thumbs_hoverchange'=> 'false',
|
202 |
-
|
203 |
-
'scroll' => 'false', // display scrollbar?
|
204 |
-
'scroll_autohide' => 'true', // auto hide scroll?
|
205 |
-
'scroll_overvideo' => 'true', // visible over slide video while playing?
|
206 |
-
'scroll_align' => 'top',
|
207 |
-
'scroll_inset' => 'true',
|
208 |
-
'scroll_margin' => '',
|
209 |
-
'scroll_hideunder' => '',
|
210 |
-
'scroll_color' => '#3D3D3D',
|
211 |
-
'scroll_width' => '',
|
212 |
-
|
213 |
-
|
214 |
-
'circletimer' => 'false', // display circletimer?
|
215 |
-
'circletimer_autohide' => 'true', // auto hide circletimer?
|
216 |
-
'circletimer_overvideo'=> 'true', // visible over slide video while playing?
|
217 |
-
'circletimer_color' => '#A2A2A2',// color of circle timer
|
218 |
-
'circletimer_radius' => 4, // radius of circle timer in pixels
|
219 |
-
'circletimer_stroke' => 10, // the stroke of circle timer in pixels
|
220 |
-
'circletimer_margin' => '',
|
221 |
-
'circletimer_hideunder'=> '',
|
222 |
-
|
223 |
-
'timebar' => 'false', // display timebar?
|
224 |
-
'timebar_autohide' => 'true', // auto hide timebar?
|
225 |
-
'timebar_overvideo'=> 'true', // visible over slide video while playing?
|
226 |
-
'timebar_align' => 'bottom',
|
227 |
-
'timebar_hideunder'=> '',
|
228 |
-
'timebar_color' => '#FFFFFF',
|
229 |
-
'timebar_width' => '',
|
230 |
-
|
231 |
-
|
232 |
-
'slideinfo' => 'false', // display timebar?
|
233 |
-
'slideinfo_autohide' => 'true', // auto hide timebar?
|
234 |
-
'slideinfo_overvideo'=> 'true', // visible over slide video while playing?
|
235 |
-
'slideinfo_align' => 'bottom',
|
236 |
-
'slideinfo_inset' => 'false',
|
237 |
-
'slideinfo_margin' => '',
|
238 |
-
'slideinfo_hideunder'=> '',
|
239 |
-
'slideinfo_width' => '',
|
240 |
-
'slideinfo_height' => '',
|
241 |
-
|
242 |
-
'on_change_start' => '',
|
243 |
-
'on_change_end' => '',
|
244 |
-
'on_waiting' => '',
|
245 |
-
'on_resize' => '',
|
246 |
-
'on_video_play' => '',
|
247 |
-
'on_video_close' => '',
|
248 |
-
'on_swipe_start' => '',
|
249 |
-
'on_swipe_move' => '',
|
250 |
-
'on_swipe_end' => ''
|
251 |
-
|
252 |
-
);
|
253 |
-
|
254 |
-
|
255 |
-
}
|
256 |
-
|
257 |
-
|
258 |
-
public function parse_slide( $slide = array() ) {
|
259 |
-
|
260 |
-
// make sure $slide is not serialized
|
261 |
-
$slide = maybe_unserialize( $slide );
|
262 |
-
|
263 |
-
if( empty( $slide ) )
|
264 |
-
return $slide;
|
265 |
-
|
266 |
-
// get slider setting and controls
|
267 |
-
$slider_setting = $this->get_slider_setting();
|
268 |
-
|
269 |
-
// get slide onfo if is set (usage: for tab content if is set)
|
270 |
-
$info = isset( $slide['info'] ) ? $slide['info'] : '';
|
271 |
-
|
272 |
-
if( isset( $slide['bg'] ) ) {
|
273 |
-
$slide_src = msp_get_the_absolute_media_url( $slide['bg'] );
|
274 |
-
|
275 |
-
// generate thumb for master slider panel
|
276 |
-
msp_get_the_resized_image_src( $slide_src, 150, 150, true );
|
277 |
-
}
|
278 |
-
|
279 |
-
|
280 |
-
// stores a URL for thumbnail in thumbnail list
|
281 |
-
$thumb = '';
|
282 |
-
|
283 |
-
// add thumb just if thumblist is added to controls list
|
284 |
-
// also always add thumbnail if slider template is gallery
|
285 |
-
if( ( 'true' == $slider_setting['thumbs'] && 'thumbs' == $slider_setting['thumbs_type'] ) ||
|
286 |
-
'image-gallery' == $slider_setting['template']
|
287 |
-
){
|
288 |
-
|
289 |
-
if( isset( $slide['thumb'] ) && ! empty( $slide['thumb'] ) ) {
|
290 |
-
$thumb = $slide['thumb'];
|
291 |
-
$thumb = msp_get_the_relative_media_url( $thumb );
|
292 |
-
|
293 |
-
} elseif( isset( $slide['bg'] ) ) {
|
294 |
-
|
295 |
-
// set custom thumb size if slider template is gallery
|
296 |
-
if( 'image-gallery' == $slider_setting['template'] )
|
297 |
-
$thumb = msp_get_the_resized_image_src( $slide_src, 175, 140, true );
|
298 |
-
else
|
299 |
-
$thumb = msp_get_the_resized_image_src( $slide_src, $slider_setting['thumbs_width'], $slider_setting['thumbs_height'], true );
|
300 |
-
|
301 |
-
$thumb = msp_get_the_relative_media_url( $thumb );
|
302 |
|
303 |
-
|
304 |
-
|
305 |
-
}
|
306 |
|
307 |
-
// stores a URL for thumbnail in tab
|
308 |
-
$tab_thumb = '';
|
309 |
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
'true' == $slider_setting['thumbs_in_tab'] ){
|
314 |
|
315 |
-
|
316 |
-
|
317 |
-
$tab_thumb = msp_get_the_relative_media_url( $tab_thumb );
|
318 |
|
319 |
-
|
320 |
-
|
321 |
-
$tab_thumb = msp_get_the_resized_image_src( $slide_src, $slider_setting['thumbs_height'], $slider_setting['thumbs_height'], true );
|
322 |
-
$tab_thumb = msp_get_the_relative_media_url( $tab_thumb );
|
323 |
-
}
|
324 |
-
}
|
325 |
|
|
|
326 |
|
327 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
328 |
|
329 |
'slide_order'=> isset( $slide['order'] ) ? (int) $slide['order'] : 0,
|
330 |
|
331 |
'css_class' => isset( $slide['cssClass'] ) ? (string) $slide['cssClass'] : '',
|
332 |
'css_id' => isset( $slide['cssId'] ) ? (string) $slide['cssId'] : '',
|
333 |
|
334 |
-
'ishide'
|
335 |
|
336 |
'src' => isset( $slide['bg'] ) ? esc_attr( msp_get_the_relative_media_url( $slide['bg'] ) ) : '',
|
337 |
'src_full' => isset( $slide['bg'] ) ? esc_attr( msp_get_the_relative_media_url( $slide['bg'] ) ) : '',
|
@@ -360,9 +360,9 @@ class MSP_Parser {
|
|
360 |
'vbgalign' => isset( $slide['bgv_fillmode'] ) ? (string) $slide['bgv_fillmode'] : 'fill',
|
361 |
|
362 |
'thumb' => $thumb,
|
363 |
-
'tab'
|
364 |
'tab_thumb' => $tab_thumb,
|
365 |
-
'delay' => isset( $slide['duration'] ) ? (string) $slide['duration'] : '', // data-delay
|
366 |
'bgalign' => isset( $slide['fillMode'] ) ? (string) $slide['fillMode'] : 'fill', // data-fill-mode
|
367 |
'bgcolor' => isset( $slide['bgColor'] ) ? (string) $slide['bgColor'] : '',
|
368 |
|
@@ -370,71 +370,71 @@ class MSP_Parser {
|
|
370 |
'tintcolor' => isset( $slide['colorOverlay'] ) ? (string) $slide['colorOverlay'] : '',
|
371 |
);
|
372 |
|
373 |
-
|
374 |
-
|
375 |
|
376 |
|
377 |
-
|
378 |
|
379 |
-
|
380 |
-
|
381 |
|
382 |
-
|
383 |
-
|
384 |
|
385 |
-
|
386 |
|
387 |
-
|
388 |
-
|
389 |
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
|
395 |
$supported_css_props = array(
|
396 |
|
397 |
-
'backgroundColor'
|
398 |
-
|
399 |
-
'paddingTop'
|
400 |
-
'paddingRight'
|
401 |
-
'paddingBottom'
|
402 |
-
'paddingLeft'
|
403 |
-
|
404 |
-
'borderTop'
|
405 |
-
'borderRight'
|
406 |
-
'borderBottom'
|
407 |
-
'borderLeft'
|
408 |
-
|
409 |
-
'borderColor'
|
410 |
-
'borderRadius'
|
411 |
-
'borderStyle'
|
412 |
-
|
413 |
-
'fontFamily'
|
414 |
-
'fontWeight'
|
415 |
-
'fontSize'
|
416 |
-
|
417 |
-
'textAlign'
|
418 |
-
'letterSpacing' => array('letter-spacing'
|
419 |
-
'lineHeight'
|
420 |
-
'whiteSpace'
|
421 |
-
'color'
|
422 |
);
|
423 |
|
424 |
foreach ( $supported_css_props as $js_prop => $parse_option ) {
|
425 |
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
|
431 |
-
|
432 |
-
|
433 |
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
}
|
439 |
|
440 |
// add custom styles at the end
|
@@ -442,383 +442,388 @@ class MSP_Parser {
|
|
442 |
// create css block
|
443 |
$css_block = $this->join_char.$class_name." { ".$this->join_char.$css." } \n";
|
444 |
//$css_block = sprintf( "\n%s {\n%s\n} \n", $class_name, $css );
|
445 |
-
|
446 |
return apply_filters( 'msp_parse_each_style', $css_block, $class_name, $css, $supported_css_props );
|
447 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
448 |
|
449 |
|
450 |
|
|
|
|
|
|
|
|
|
451 |
|
452 |
|
453 |
|
454 |
-
// set/store panel raw and parsed data for further use
|
455 |
-
public function set_data( $data, $slider_id = null ) {
|
456 |
-
$this->reset();
|
457 |
|
458 |
-
$this->maybe_encoded_data = $data;
|
459 |
-
$this->current_slider_id = $slider_id;
|
460 |
|
461 |
-
$decoded = msp_maybe_base64_decode( $data );
|
462 |
-
$this->parsable_data = json_decode($decoded);
|
463 |
-
}
|
464 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
465 |
|
466 |
-
|
467 |
-
public function reset() {
|
468 |
-
$this->recent_setting = null;
|
469 |
-
$this->recent_slides = null;
|
470 |
-
$this->recent_styles = null;
|
471 |
-
$this->maybe_encoded_data = null;
|
472 |
-
}
|
473 |
|
474 |
|
475 |
|
476 |
-
// get decoded and parsable panel data
|
477 |
-
public function get_parsable_data() {
|
478 |
-
return $this->parsable_data;
|
479 |
-
}
|
480 |
|
481 |
|
|
|
|
|
|
|
|
|
|
|
482 |
|
483 |
|
|
|
|
|
|
|
|
|
|
|
484 |
|
485 |
|
486 |
-
|
487 |
-
|
488 |
-
return $this->parsable_data->{'MSPanel.Callback'};
|
489 |
-
return array();
|
490 |
-
}
|
491 |
|
|
|
|
|
|
|
492 |
|
493 |
-
|
494 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
495 |
|
496 |
-
$callbacks_params = array();
|
497 |
|
498 |
-
foreach ($callbacks_list as $id => $callback_json) {
|
499 |
-
$raw_json_decoded_callback = json_decode( $callback_json, true );
|
500 |
-
$callback_params = $this->get_callback_params( $raw_json_decoded_callback );
|
501 |
-
$callbacks_params = wp_parse_args( $callback_params, $callbacks_params );
|
502 |
-
}
|
503 |
|
504 |
-
return $callbacks_params;
|
505 |
-
}
|
506 |
|
507 |
|
508 |
-
public function get_callback_params( $callback ) {
|
509 |
-
|
510 |
-
$name = isset( $callback['name'] ) ? (string) $callback['name'] : '';
|
511 |
|
512 |
-
switch ( $name ) {
|
513 |
-
case 'CHANGE_START':
|
514 |
-
return array( 'on_change_start' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
515 |
-
case 'CHANGE_END':
|
516 |
-
return array( 'on_change_end' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
517 |
-
case 'WAITING':
|
518 |
-
return array( 'on_waiting' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
519 |
-
case 'RESIZE':
|
520 |
-
return array( 'on_resize' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
521 |
-
case 'VIDEO_PLAY':
|
522 |
-
return array( 'on_video_play' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
523 |
-
case 'VIDEO_CLOSE':
|
524 |
-
return array( 'on_video_close' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
525 |
-
case 'SWIPE_START':
|
526 |
-
return array( 'on_swipe_start' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
527 |
-
case 'SWIPE_MOVE':
|
528 |
-
return array( 'on_swipe_move' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
529 |
-
case 'SWIPE_END':
|
530 |
-
return array( 'on_swipe_end' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
531 |
-
default:
|
532 |
-
return array();
|
533 |
-
}
|
534 |
-
|
535 |
-
}
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
public function get_raw_controls(){
|
545 |
-
if ( isset( $this->parsable_data->{'MSPanel.Control'} ) )
|
546 |
-
return $this->parsable_data->{'MSPanel.Control'};
|
547 |
-
return array();
|
548 |
-
}
|
549 |
-
|
550 |
-
|
551 |
-
public function get_controls_params(){
|
552 |
-
$controls_list = $this->get_raw_controls();
|
553 |
-
|
554 |
-
$controls_params = array();
|
555 |
-
|
556 |
-
foreach ($controls_list as $id => $control_json) {
|
557 |
-
$raw_json_decoded_control = json_decode( $control_json, true );
|
558 |
-
$control_params = $this->get_control_params( $raw_json_decoded_control );
|
559 |
-
$controls_params = wp_parse_args( $control_params, $controls_params );
|
560 |
-
}
|
561 |
-
|
562 |
-
return $controls_params;
|
563 |
-
}
|
564 |
-
|
565 |
-
|
566 |
-
public function get_control_params( $control ) {
|
567 |
-
|
568 |
-
$name = isset( $control['name'] ) ? (string) $control['name'] : '';
|
569 |
-
|
570 |
-
switch ( $name ) {
|
571 |
-
case 'thumblist':
|
572 |
-
return array(
|
573 |
-
'thumbs' => 'true',
|
574 |
-
'thumbs_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
575 |
-
'thumbs_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
576 |
-
'thumbs_speed' => isset( $control['speed'] ) ? (int) $control['speed'] : 17,
|
577 |
-
'thumbs_type' => isset( $control['type'] ) ? (string) $control['type'] : 'thumbs',
|
578 |
-
'thumbs_inset' => $this->is_key_true( $control, 'inset', 'false' ),
|
579 |
-
'thumbs_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
580 |
-
'thumbs_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
581 |
-
'thumbs_width' => isset( $control['width'] ) ? (int) $control['width'] : 100,
|
582 |
-
'thumbs_height' => isset( $control['height'] ) ? (int) $control['height'] : 80,
|
583 |
-
'thumbs_space' => isset( $control['space'] ) ? (int) $control['space'] : 5,
|
584 |
-
'thumbs_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
585 |
-
'thumbs_fillmode' => isset( $control['fillMode'] ) ? (string) $control['fillMode'] : 'fill',
|
586 |
-
'thumbs_custom_class' => isset( $control['customClass'] ) ? (string) $control['customClass'] : 'ms-tab-thumb',
|
587 |
-
'thumbs_arrows' => $this->is_key_true( $control, 'arrows' , 'false' ),
|
588 |
-
'thumbs_in_tab' => $this->is_key_true( $control, 'insertThumb' , 'false' ),
|
589 |
-
'thumbs_hoverchange' => $this->is_key_true( $control, 'hoverChange' , 'false' )
|
590 |
-
);
|
591 |
-
case 'bullets':
|
592 |
-
return array(
|
593 |
-
'bullets' => 'true',
|
594 |
-
'bullets_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
595 |
-
'bullets_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
596 |
-
'bullets_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
597 |
-
'bullets_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
598 |
-
'bullets_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
599 |
-
);
|
600 |
-
case 'scrollbar':
|
601 |
-
return array(
|
602 |
-
'scroll' => 'true',
|
603 |
-
'scroll_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
604 |
-
'scroll_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
605 |
-
//'scroll_width' => isset( $control['width'] ) ? (int) $control['width'] : '',
|
606 |
-
'scroll_align' => isset( $control['align'] ) ? (string) $control['align'] : 'top',
|
607 |
-
'scroll_color' => isset( $control['color'] ) ? (string) $control['color'] : '#3D3D3D',
|
608 |
-
'scroll_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
609 |
-
'scroll_inset' => $this->is_key_true( $control, 'inset', 'true' ),
|
610 |
-
'scroll_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
611 |
-
'scroll_width' => isset( $control['width'] ) ? (int) $control['width'] : ''
|
612 |
-
);
|
613 |
-
case 'arrows':
|
614 |
-
return array(
|
615 |
-
'arrows' => 'true',
|
616 |
-
'arrows_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
617 |
-
'arrows_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
618 |
-
'arrows_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
619 |
-
);
|
620 |
-
case 'timebar':
|
621 |
-
return array(
|
622 |
-
'timebar' => 'true',
|
623 |
-
'timebar_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
624 |
-
'timebar_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
625 |
-
'timebar_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
626 |
-
'timebar_color' => isset( $control['color'] ) ? (string) $control['color'] : '#FFFFFF',
|
627 |
-
'timebar_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
628 |
-
'timebar_width' => isset( $control['width'] ) ? (int) $control['width'] : ''
|
629 |
-
);
|
630 |
-
case 'circletimer':
|
631 |
-
return array(
|
632 |
-
'circletimer' => 'true',
|
633 |
-
'circletimer_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
634 |
-
'circletimer_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
635 |
-
'circletimer_color' => isset( $control['color'] ) ? (string) $control['color'] : '#A2A2A2',
|
636 |
-
'circletimer_radius' => isset( $control['radius'] ) ? (int) $control['radius'] : 4,
|
637 |
-
'circletimer_stroke' => isset( $control['stroke'] ) ? (int) $control['stroke'] : 10,
|
638 |
-
'circletimer_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
639 |
-
'circletimer_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
640 |
-
);
|
641 |
-
case 'slideinfo':
|
642 |
-
return array(
|
643 |
-
'slideinfo' => 'true',
|
644 |
-
'slideinfo_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
645 |
-
'slideinfo_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
646 |
-
'slideinfo_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
647 |
-
'slideinfo_inset' => $this->is_key_true( $control, 'inset', 'false' ),
|
648 |
-
'slideinfo_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
649 |
-
'slideinfo_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
650 |
-
'slideinfo_width' => isset( $control['width'] ) ? (int) $control['width'] : '',
|
651 |
-
'slideinfo_height' => isset( $control['height'] ) ? (int) $control['height'] : ''
|
652 |
-
);
|
653 |
-
default:
|
654 |
-
return array();
|
655 |
-
}
|
656 |
-
|
657 |
-
}
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
public function has_raw_setting(){
|
664 |
-
if ( isset( $this->parsable_data->{'MSPanel.Settings'} ) && isset( $this->parsable_data->{'MSPanel.Settings'}->{'1'} ) )
|
665 |
-
return true;
|
666 |
-
return false;
|
667 |
-
}
|
668 |
-
|
669 |
-
|
670 |
-
public function get_raw_setting(){
|
671 |
-
if ( $this->has_raw_setting() )
|
672 |
-
return $this->parsable_data->{'MSPanel.Settings'}->{'1'};
|
673 |
-
return null;
|
674 |
-
}
|
675 |
-
|
676 |
-
|
677 |
-
public function get_slider_setting( $force_new_parse = false ){
|
678 |
-
$raw_setting = $this->get_raw_setting();
|
679 |
-
|
680 |
-
if( is_null( $raw_setting ) ){
|
681 |
-
return $this->parse_setting();
|
682 |
-
}
|
683 |
-
|
684 |
-
if( is_null( $this->recent_setting ) || $force_new_parse ) {
|
685 |
-
$raw_json_decoded_setting = json_decode( $raw_setting, true );
|
686 |
-
$this->recent_setting = $this->parse_setting( $raw_json_decoded_setting );
|
687 |
-
$this->recent_setting = wp_parse_args( $this->get_controls_params() , $this->recent_setting );
|
688 |
-
$this->recent_setting = wp_parse_args( $this->get_callbacks_params(), $this->recent_setting );
|
689 |
-
}
|
690 |
-
return $this->recent_setting;
|
691 |
-
}
|
692 |
|
|
|
|
|
|
|
|
|
|
|
|
|
693 |
|
694 |
|
|
|
|
|
|
|
|
|
|
|
|
|
695 |
|
696 |
|
|
|
697 |
|
|
|
|
|
|
|
698 |
|
699 |
-
|
700 |
-
public function has_raw_slide() {
|
701 |
-
if ( isset( $this->parsable_data->{'MSPanel.Slide'} ) )
|
702 |
-
return true;
|
703 |
-
return false;
|
704 |
-
}
|
705 |
|
|
|
|
|
|
|
|
|
706 |
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
}
|
711 |
-
return null;
|
712 |
-
}
|
713 |
|
714 |
|
715 |
-
|
716 |
|
717 |
-
|
718 |
-
return array();
|
719 |
-
}
|
720 |
|
721 |
-
|
722 |
|
723 |
-
|
724 |
-
|
725 |
-
$valid_slides[ $raw_json_decoded_slide['order'] ] = $raw_json_decoded_slide;
|
726 |
-
}
|
727 |
|
728 |
-
|
729 |
-
return $valid_slides;
|
730 |
-
}
|
731 |
|
|
|
|
|
|
|
732 |
|
733 |
-
|
|
|
|
|
|
|
734 |
|
735 |
-
if( is_null( $this->recent_slides ) || $force_new_parse ) {
|
736 |
|
737 |
-
$parsable_slides = $this->get_parsable_slides();
|
738 |
|
739 |
-
if ( empty( $parsable_slides ) )
|
740 |
-
return $parsable_slides;
|
741 |
|
742 |
-
$slides = array();
|
743 |
|
744 |
-
foreach ( $parsable_slides as $slide ) {
|
745 |
-
$slides[] = $this->parse_slide( $slide );
|
746 |
-
}
|
747 |
|
748 |
-
$this->recent_slides = $slides;
|
749 |
-
}
|
750 |
-
return $this->recent_slides;
|
751 |
-
}
|
752 |
|
|
|
|
|
|
|
|
|
|
|
753 |
|
754 |
|
|
|
|
|
|
|
|
|
|
|
|
|
755 |
|
756 |
|
|
|
757 |
|
|
|
|
|
|
|
758 |
|
759 |
-
|
760 |
-
if ( isset( $this->parsable_data->{'MSPanel.Style'} ) )
|
761 |
-
return true;
|
762 |
-
return false;
|
763 |
-
}
|
764 |
|
|
|
|
|
|
|
|
|
765 |
|
766 |
-
|
767 |
-
|
768 |
-
return $this->parsable_data->{'MSPanel.Style'};
|
769 |
-
}
|
770 |
-
return null;
|
771 |
-
}
|
772 |
|
773 |
|
774 |
-
|
775 |
|
776 |
-
|
777 |
-
return array();
|
778 |
-
}
|
779 |
|
780 |
-
|
781 |
|
782 |
-
|
783 |
-
|
784 |
-
$valid_styles[] = $raw_json_decoded_style;
|
785 |
-
}
|
786 |
|
787 |
-
|
788 |
-
}
|
789 |
|
|
|
|
|
|
|
790 |
|
791 |
-
|
|
|
792 |
|
793 |
-
|
|
|
794 |
|
795 |
-
$parsable_styles = $this->get_parsable_styles();
|
796 |
|
797 |
-
|
798 |
-
|
799 |
|
800 |
-
|
|
|
|
|
801 |
|
802 |
-
|
803 |
-
|
804 |
-
}
|
805 |
|
806 |
-
$this->recent_styles = $styles;
|
807 |
-
}
|
808 |
|
809 |
-
return $this->recent_styles;
|
810 |
-
}
|
811 |
|
812 |
|
813 |
-
public function get_styles( $force_new_parse = false ) {
|
814 |
-
$styles_list = $this->get_styles_list();
|
815 |
-
|
816 |
-
// custom css code for sliders added
|
817 |
-
$setting = $this->get_slider_setting();
|
818 |
-
$styles_list[] = $setting['custom_style'];
|
819 |
|
820 |
-
return implode( $this->join_char, $styles_list );
|
821 |
-
}
|
822 |
|
823 |
|
824 |
|
@@ -826,128 +831,123 @@ class MSP_Parser {
|
|
826 |
|
827 |
|
828 |
|
|
|
829 |
|
|
|
|
|
830 |
|
|
|
831 |
|
|
|
|
|
|
|
832 |
|
|
|
|
|
833 |
|
834 |
-
|
|
|
835 |
|
836 |
-
|
837 |
-
|
|
|
|
|
838 |
|
839 |
-
|
|
|
|
|
840 |
|
841 |
-
|
842 |
-
$preset_styles[$id] = $this->parse_each_style( $preset_style, 'preset' );
|
843 |
-
}
|
844 |
|
845 |
-
|
846 |
-
|
847 |
|
848 |
-
|
849 |
-
|
850 |
|
851 |
-
|
852 |
-
$raw_json_decoded_preset_style = json_decode( $raw_preset_style, true );
|
853 |
-
$valid_preset_styles[] = $raw_json_decoded_preset_style;
|
854 |
-
}
|
855 |
|
856 |
-
|
857 |
-
|
858 |
-
}
|
859 |
|
860 |
-
public function get_preset_styles( $raw_preset ) {
|
861 |
|
862 |
-
$b64_decoded = msp_maybe_base64_decode( $raw_preset );
|
863 |
-
$preset_data = json_decode( $b64_decoded );
|
864 |
-
|
865 |
-
if ( ! isset( $preset_data->{'MSPanel.PresetStyle'} ) )
|
866 |
-
return '';
|
867 |
|
868 |
-
$raw_preset_styles = $preset_data->{'MSPanel.PresetStyle'};
|
869 |
|
870 |
-
return $this->preset_data_to_styles( $raw_preset_styles );
|
871 |
-
}
|
872 |
|
873 |
|
|
|
874 |
|
|
|
|
|
875 |
|
|
|
876 |
|
|
|
|
|
877 |
|
878 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
879 |
|
880 |
-
|
881 |
-
|
882 |
|
883 |
-
|
|
|
884 |
|
885 |
-
|
886 |
-
|
|
|
|
|
887 |
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
$button_styles[] = sprintf( ".%s:hover{ %s }", $button_style['className'], str_replace("\n", "", $button_style['hover'] ) );
|
892 |
-
if( isset( $button_style['active'] ) )
|
893 |
-
$button_styles[] = sprintf( ".%s:active{ %s }", $button_style['className'], str_replace("\n", "", $button_style['active'] ) );
|
894 |
-
}
|
895 |
-
|
896 |
-
return $button_styles;
|
897 |
-
}
|
898 |
|
899 |
-
|
900 |
-
$valid_buttons_styles = array();
|
901 |
|
902 |
-
|
903 |
-
|
904 |
-
$valid_buttons_styles[] = $raw_json_decoded_buttons_style;
|
905 |
-
}
|
906 |
-
|
907 |
-
$buttons_styles_list = $this->get_buttons_styles_list( $valid_buttons_styles );
|
908 |
-
return implode( $this->join_char. " ", $buttons_styles_list );
|
909 |
-
}
|
910 |
|
911 |
-
|
|
|
912 |
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
if ( ! isset( $buttons_data->{'MSPanel.ButtonStyle'} ) )
|
917 |
-
return '';
|
918 |
|
919 |
-
$raw_buttons_styles = $buttons_data->{'MSPanel.ButtonStyle'};
|
920 |
-
return $this->buttons_data_to_styles( $raw_buttons_styles );
|
921 |
-
}
|
922 |
-
|
923 |
|
924 |
|
925 |
|
926 |
|
927 |
|
928 |
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
|
935 |
|
936 |
-
|
937 |
-
|
938 |
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
|
943 |
-
|
944 |
-
|
945 |
|
946 |
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
|
952 |
|
953 |
-
}
|
14 |
class MSP_Parser {
|
15 |
|
16 |
|
17 |
+
public $maybe_encoded_data;
|
18 |
|
19 |
+
// ready to parse data
|
20 |
+
public $parsable_data ;
|
21 |
|
22 |
+
// recent parsed slider setting
|
23 |
+
public $recent_setting;
|
24 |
|
25 |
+
// recent parsed slides
|
26 |
+
public $recent_slides ;
|
27 |
|
28 |
+
// recent parsed styles
|
29 |
+
public $recent_styles ;
|
30 |
|
31 |
|
32 |
+
public $current_slider_id;
|
33 |
|
34 |
+
public $join_char = "\n";
|
35 |
+
public $tab_char = "\t";
|
36 |
|
37 |
|
|
|
|
|
38 |
|
39 |
+
public function __construct() {
|
40 |
|
|
|
|
|
|
|
|
|
|
|
41 |
|
42 |
+
if ( apply_filters( 'masterslider_compress_custom_css' , 1 ) ) {
|
43 |
+
$this->join_char = "";
|
44 |
+
$this->tab_char = "";
|
45 |
+
}
|
46 |
+
}
|
47 |
|
48 |
+
public function get_setting() {
|
49 |
|
50 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
|
52 |
+
public function is_key_true( $array, $key, $default = 'true' ) {
|
53 |
+
if( isset( $array[ $key ] ) ) {
|
54 |
+
return $array[ $key ] ? 'true' : 'false';
|
55 |
+
} else {
|
56 |
+
return $default;
|
57 |
+
}
|
58 |
+
}
|
59 |
|
60 |
+
public function parse_setting( $setting = array() ) {
|
|
|
61 |
|
62 |
+
// make sure $setting is not serialized
|
63 |
+
$setting = maybe_unserialize( $setting );
|
64 |
|
65 |
+
$setid = isset( $setting['setId'] ) ? (string) $setting['setId'] : '';
|
|
|
|
|
66 |
|
67 |
+
$post_cats = isset( $setting['postCats'] ) ? (array) $setting['postCats'] : array();
|
68 |
+
$post_tags = isset( $setting['postTags'] ) ? (array) $setting['postTags'] : array();
|
69 |
+
$tax_term_ids = implode( ',', array_merge( $post_cats, $post_tags ) );
|
70 |
|
71 |
+
// slider options
|
72 |
+
return array(
|
|
|
|
|
73 |
|
74 |
+
'id' => is_numeric( $this->current_slider_id ) ? $this->current_slider_id : ( isset( $setting['sliderId'] ) ? (string) $setting['sliderId'] : '' ),
|
75 |
+
'uid' => '', // an unique and temporary id
|
76 |
+
'class' => isset( $setting['className'] ) ? (string) $setting['className'] : '', // a class that adds to slider wrapper
|
77 |
+
'margin' => 0,
|
78 |
|
79 |
+
'custom_style' => isset( $setting['customStyle'] ) ? $setting['customStyle'] : '',
|
|
|
|
|
80 |
|
81 |
+
'inline_style' => isset( $setting['inlineStyle'] ) ? esc_attr( $setting['inlineStyle'] ) : '',
|
82 |
+
'bg_color' => isset( $setting['bgColor'] ) ? (string) $setting['bgColor'] : '',
|
83 |
+
'bg_image' => isset( $setting['bgImage'] ) ? msp_get_the_relative_media_url( $setting['bgImage'] ) : '',
|
84 |
|
85 |
+
'title' => isset( $setting['name'] ) ? (string) $setting['name'] : __( 'Untitled Slider', 'master-slider' ), // slider name
|
|
|
86 |
|
87 |
+
'slider_type' => isset( $setting['type'] ) ? (string) $setting['type'] : 'custom', // values: custom, express, flickr, post_view
|
|
|
|
|
88 |
|
|
|
|
|
89 |
|
90 |
+
'width' => isset( $setting['width'] ) ? (int) rtrim($setting['width'] , 'px' ) : 300, // base width of slides. It helps the slider to resize in correct ratio.
|
91 |
+
'height' => isset( $setting['height'] ) ? (int) rtrim($setting['height'], 'px' ) : 150, // base height of slides, It helps the slider to resize in correct ratio.
|
92 |
+
'min_height' => isset( $setting['minHeight'] ) ? (int) rtrim($setting['minHeight'], 'px' ) : 0,
|
93 |
|
94 |
+
'start' => isset( $setting['start'] ) ? (int) $setting['start'] : 1,
|
95 |
+
'space' => isset( $setting['space'] ) ? (int) $setting['space'] : 0,
|
96 |
|
97 |
+
'grab_cursor' => $this->is_key_true( $setting, 'grabCursor', 'true' ), // Whether the slider uses grab mouse cursor
|
98 |
+
'swipe' => $this->is_key_true( $setting, 'swipe', 'true' ), // Whether the drag/swipe navigation is enabled
|
99 |
|
100 |
+
'wheel' => $this->is_key_true( $setting, 'wheel', 'true' ), // Enables mouse scroll wheel navigation
|
101 |
+
'mouse' => $this->is_key_true( $setting, 'mouse', 'true' ), // Whether the user can use mouse drag navigation
|
|
|
|
|
102 |
|
103 |
+
'crop' => $this->is_key_true( $setting, 'autoCrop', 'false' ), // Automatically crop slide images?
|
|
|
|
|
|
|
104 |
|
105 |
+
'autoplay' => $this->is_key_true( $setting, 'autoplay', 'false' ), // Enables the autoplay slideshow
|
106 |
+
'loop' => $this->is_key_true( $setting, 'loop', 'false' ), //
|
107 |
+
'shuffle' => $this->is_key_true( $setting, 'shuffle', 'false' ), // Enables the shuffle slide order
|
108 |
+
'preload' => isset( $setting['preload'] ) ? $setting['preload'] : 0,
|
109 |
|
110 |
+
'wrapper_width' => isset( $setting['wrapperWidth'] ) ? (int) $setting['wrapperWidth'] : '',
|
111 |
+
'wrapper_width_unit' => isset( $setting['wrapperWidthUnit'] ) ? $setting['wrapperWidthUnit'] : 'px',
|
112 |
|
113 |
+
'layout' => isset( $setting['layout'] ) ? (string) $setting['layout'] : 'boxed',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
|
115 |
+
'fullscreen_margin' => isset( $setting['fullscreenMargin'] ) ? (int) $setting['fullscreenMargin'] : 0,
|
|
|
|
|
116 |
|
|
|
|
|
117 |
|
118 |
+
'height_limit' => 'true', // It force the slide to use max height value as its base specified height value.
|
119 |
+
'auto_height' => $this->is_key_true( $setting, 'autoHeight', 'false' ),
|
120 |
+
'smooth_height' => 'true',
|
|
|
121 |
|
122 |
+
'end_pause' => $this->is_key_true( $setting, 'endPause' , 'false' ),
|
123 |
+
'over_pause' => $this->is_key_true( $setting, 'overPause', 'false' ),
|
|
|
124 |
|
125 |
+
'fill_mode' => apply_filters( 'masterslider_params_default_fill_mode', 'fill' ),
|
126 |
+
'center_controls'=> $this->is_key_true( $setting, 'centerControls', 'true' ),
|
|
|
|
|
|
|
|
|
127 |
|
128 |
+
'speed' => isset( $setting['speed'] ) ? (int) $setting['speed'] : 17,
|
129 |
|
130 |
+
'skin' => isset( $setting['skin'] ) ? $setting['skin'] : 'ms-skin-default', // slider skin. should be seperated by space
|
131 |
+
'template' => isset( $setting['msTemplate'] ) ? (string) $setting['msTemplate'] : 'custom',
|
132 |
+
'template_class'=> isset( $setting['msTemplateClass'] ) ? (string) $setting['msTemplateClass'] : '',
|
133 |
+
'direction' => isset( $setting['dir'] ) ? (string) $setting['dir'] : 'h',
|
134 |
+
'view' => isset( $setting['trView'] ) ? (string) $setting['trView'] : 'basic',
|
135 |
+
|
136 |
+
'gfonts' => isset( $setting['usedFonts'] ) ? (string) $setting['usedFonts'] : '',
|
137 |
+
|
138 |
+
'parallax_mode' => isset( $setting['parallaxMode'] ) ? (string) $setting['parallaxMode'] : 'swipe',
|
139 |
+
|
140 |
+
'start_on_appear' => $this->is_key_true( $setting, 'startOnAppear', 'false' ),
|
141 |
+
|
142 |
+
'flickr_key' => isset( $setting['apiKey'] ) ? (string) $setting['apiKey'] : '',
|
143 |
+
'flickr_id' => $setid,
|
144 |
+
'flickr_count' => isset( $setting['imgCount'] ) ? (int) $setting['imgCount'] : 10,
|
145 |
+
'flickr_type' => isset( $setting['setType'] ) ? (string) $setting['setType'] : 'photos',
|
146 |
+
'flickr_size' => isset( $setting['imgSize'] ) ? (string) $setting['imgSize'] : 'c',
|
147 |
+
'flickr_thumb_size' => isset( $setting['thumbSize'] ) ? (string) $setting['thumbSize'] : 'q',
|
148 |
+
|
149 |
+
|
150 |
+
'ps_post_type' => isset( $setting['postType'] ) ? (string) $setting['postType'] : '',
|
151 |
+
'ps_tax_term_ids' => $tax_term_ids,
|
152 |
+
'ps_post_count' => isset( $setting['postCount'] ) ? (int) $setting['postCount'] : 10,
|
153 |
+
'ps_image_from' => isset( $setting['postImageType'] ) ? (string) $setting['postImageType'] : 'auto',
|
154 |
+
'ps_order' => isset( $setting['postOrder'] ) ? (string) $setting['postOrder'] : 'DESC',
|
155 |
+
'ps_orderby' => isset( $setting['postOrderDir'] ) ? (string) $setting['postOrderDir'] : 'menu_order date',
|
156 |
+
'ps_posts_not_in' => isset( $setting['postExcludeIds'] ) ? (string) $setting['postExcludeIds'] : '',
|
157 |
+
'ps_excerpt_len' => isset( $setting['postExcerptLen'] ) ? (int) $setting['postExcerptLen'] : 100,
|
158 |
+
'ps_offset' => isset( $setting['postOffset'] ) ? (int) $setting['postOffset'] : 0,
|
159 |
+
'ps_link_slide' => isset( $setting['postLinkSlide'] ) ? (boolean) $setting['postLinkSlide'] : false,
|
160 |
+
'ps_link_target' => isset( $setting['postLinkTarget'] ) ? (string) $setting['postLinkTarget'] : '_self',
|
161 |
+
'ps_slide_bg' => isset( $setting['postSlideBg'] ) ? msp_get_the_relative_media_url( $setting['postSlideBg'] ) : '',
|
162 |
+
|
163 |
+
'wc_only_featured' => $this->is_key_true( $setting, 'wcOnlyFeatured', 'false' ),
|
164 |
+
'wc_only_instock' => $this->is_key_true( $setting, 'wcOnlyInstock' , 'false' ),
|
165 |
+
'wc_only_onsale' => $this->is_key_true( $setting, 'wcOnlyOnsale' , 'false' ),
|
166 |
+
|
167 |
+
|
168 |
+
'facebook_username' => isset( $setting['setType'] ) && ( 'photostream' == $setting['setType'] ) ? $setid : '',
|
169 |
+
'facebook_albumid' => isset( $setting['setType'] ) && ( 'album' == $setting['setType'] ) ? $setid : '',
|
170 |
+
'facebook_count' => isset( $setting['imgCount'] ) ? (int) $setting['imgCount'] : 10,
|
171 |
+
'facebook_type' => isset( $setting['setType'] ) ? (string) $setting['setType'] : 'album',
|
172 |
+
'facebook_size' => isset( $setting['imgSize'] ) ? (string) $setting['imgSize'] : 'orginal',
|
173 |
+
'facebook_thumb_size' => isset( $setting['thumbSize'] ) ? (string) $setting['thumbSize'] : '320',
|
174 |
+
|
175 |
+
'arrows' => 'false', // display arrows?
|
176 |
+
'arrows_autohide' => 'true', // auto hide arrows?
|
177 |
+
'arrows_overvideo' => 'true', // visible over slide video while playing?
|
178 |
+
'arrows_hideunder' => '',
|
179 |
+
|
180 |
+
'bullets' => 'false', // display bullets?
|
181 |
+
'bullets_autohide' => 'true', // auto hide bullets?
|
182 |
+
'bullets_overvideo'=> 'true', // visible over slide video while playing?
|
183 |
+
'bullets_align' => 'bottom',
|
184 |
+
'bullets_margin' => '',
|
185 |
+
'bullets_hideunder'=> '',
|
186 |
+
|
187 |
+
'thumbs' => 'false', // display thumbnails?
|
188 |
+
'thumbs_autohide' => 'true', // auto hide thumbs?
|
189 |
+
'thumbs_overvideo' => 'true', // visible over slide video while playing?
|
190 |
+
'thumbs_type' => 'thumbs', // thumb or tabs
|
191 |
+
'thumbs_speed' => 17, // scrolling speed. It accepts float values between 0 and 100
|
192 |
+
'thumbs_inset' => 'true', // insert thumbs inside slider
|
193 |
+
'thumbs_align' => 'bottom',
|
194 |
+
'thumbs_margin' => 0,
|
195 |
+
'thumbs_width' => 100,
|
196 |
+
'thumbs_height' => 80,
|
197 |
+
'thumbs_space' => 5,
|
198 |
+
'thumbs_hideunder' => '',
|
199 |
+
'thumbs_arrows' => 'false',
|
200 |
+
'thumbs_in_tab' => 'false',
|
201 |
+
'thumbs_hoverchange'=> 'false',
|
202 |
+
|
203 |
+
'scroll' => 'false', // display scrollbar?
|
204 |
+
'scroll_autohide' => 'true', // auto hide scroll?
|
205 |
+
'scroll_overvideo' => 'true', // visible over slide video while playing?
|
206 |
+
'scroll_align' => 'top',
|
207 |
+
'scroll_inset' => 'true',
|
208 |
+
'scroll_margin' => '',
|
209 |
+
'scroll_hideunder' => '',
|
210 |
+
'scroll_color' => '#3D3D3D',
|
211 |
+
'scroll_width' => '',
|
212 |
+
|
213 |
+
|
214 |
+
'circletimer' => 'false', // display circletimer?
|
215 |
+
'circletimer_autohide' => 'true', // auto hide circletimer?
|
216 |
+
'circletimer_overvideo'=> 'true', // visible over slide video while playing?
|
217 |
+
'circletimer_color' => '#A2A2A2',// color of circle timer
|
218 |
+
'circletimer_radius' => 4, // radius of circle timer in pixels
|
219 |
+
'circletimer_stroke' => 10, // the stroke of circle timer in pixels
|
220 |
+
'circletimer_margin' => '',
|
221 |
+
'circletimer_hideunder'=> '',
|
222 |
+
|
223 |
+
'timebar' => 'false', // display timebar?
|
224 |
+
'timebar_autohide' => 'true', // auto hide timebar?
|
225 |
+
'timebar_overvideo'=> 'true', // visible over slide video while playing?
|
226 |
+
'timebar_align' => 'bottom',
|
227 |
+
'timebar_hideunder'=> '',
|
228 |
+
'timebar_color' => '#FFFFFF',
|
229 |
+
'timebar_width' => '',
|
230 |
+
|
231 |
+
|
232 |
+
'slideinfo' => 'false', // display timebar?
|
233 |
+
'slideinfo_autohide' => 'true', // auto hide timebar?
|
234 |
+
'slideinfo_overvideo'=> 'true', // visible over slide video while playing?
|
235 |
+
'slideinfo_align' => 'bottom',
|
236 |
+
'slideinfo_inset' => 'false',
|
237 |
+
'slideinfo_margin' => '',
|
238 |
+
'slideinfo_hideunder'=> '',
|
239 |
+
'slideinfo_width' => '',
|
240 |
+
'slideinfo_height' => '',
|
241 |
+
|
242 |
+
'on_change_start' => '',
|
243 |
+
'on_change_end' => '',
|
244 |
+
'on_waiting' => '',
|
245 |
+
'on_resize' => '',
|
246 |
+
'on_video_play' => '',
|
247 |
+
'on_video_close' => '',
|
248 |
+
'on_swipe_start' => '',
|
249 |
+
'on_swipe_move' => '',
|
250 |
+
'on_swipe_end' => ''
|
251 |
+
|
252 |
+
);
|
253 |
+
|
254 |
+
|
255 |
+
}
|
256 |
+
|
257 |
+
|
258 |
+
public function parse_slide( $slide = array() ) {
|
259 |
+
|
260 |
+
// make sure $slide is not serialized
|
261 |
+
$slide = maybe_unserialize( $slide );
|
262 |
+
|
263 |
+
if( empty( $slide ) )
|
264 |
+
return $slide;
|
265 |
+
|
266 |
+
// get slider setting and controls
|
267 |
+
$slider_setting = $this->get_slider_setting();
|
268 |
+
|
269 |
+
// get slide onfo if is set (usage: for tab content if is set)
|
270 |
+
$info = isset( $slide['info'] ) ? $slide['info'] : '';
|
271 |
+
|
272 |
+
if( isset( $slide['bg'] ) ) {
|
273 |
+
$slide_src = msp_get_the_absolute_media_url( $slide['bg'] );
|
274 |
+
|
275 |
+
// generate thumb for master slider panel
|
276 |
+
msp_get_the_resized_image_src( $slide_src, 150, 150, true );
|
277 |
+
}
|
278 |
+
|
279 |
+
|
280 |
+
// stores a URL for thumbnail in thumbnail list
|
281 |
+
$thumb = '';
|
282 |
+
|
283 |
+
// add thumb just if thumblist is added to controls list
|
284 |
+
// also always add thumbnail if slider template is gallery
|
285 |
+
if( ( 'true' == $slider_setting['thumbs'] && 'thumbs' == $slider_setting['thumbs_type'] ) ||
|
286 |
+
'image-gallery' == $slider_setting['template']
|
287 |
+
){
|
288 |
+
|
289 |
+
if( isset( $slide['thumbOrginal'] ) && ! empty( $slide['thumbOrginal'] ) ) {
|
290 |
+
$thumb = $slide['thumbOrginal'];
|
291 |
+
$thumb = msp_get_the_relative_media_url( $thumb );
|
292 |
+
|
293 |
+
} elseif( isset( $slide['bg'] ) ) {
|
294 |
+
|
295 |
+
// set custom thumb size if slider template is gallery
|
296 |
+
if( 'image-gallery' == $slider_setting['template'] )
|
297 |
+
$thumb = msp_get_the_resized_image_src( $slide_src, 175, 140, true );
|
298 |
+
else
|
299 |
+
$thumb = msp_get_the_resized_image_src( $slide_src, $slider_setting['thumbs_width'], $slider_setting['thumbs_height'], true );
|
300 |
+
|
301 |
+
$thumb = msp_get_the_relative_media_url( $thumb );
|
302 |
+
|
303 |
+
}
|
304 |
+
|
305 |
+
}
|
306 |
+
|
307 |
+
// stores a URL for thumbnail in tab
|
308 |
+
$tab_thumb = '';
|
309 |
+
|
310 |
+
// get thumb for tab if thumblist is added to controls list
|
311 |
+
if( ( 'true' == $slider_setting['thumbs'] &&
|
312 |
+
'tabs' == $slider_setting['thumbs_type'] ) &&
|
313 |
+
'true' == $slider_setting['thumbs_in_tab'] ){
|
314 |
+
|
315 |
+
if( isset( $slide['thumbOrginal'] ) && ! empty( $slide['thumbOrginal'] ) ) {
|
316 |
+
$tab_thumb = $slide['thumbOrginal'];
|
317 |
+
$tab_thumb = msp_get_the_relative_media_url( $tab_thumb );
|
318 |
+
|
319 |
+
} elseif( isset( $slide['bg'] ) ) {
|
320 |
+
// generate a square thumb for tab
|
321 |
+
$tab_thumb = msp_get_the_resized_image_src( $slide_src, $slider_setting['thumbs_height'], $slider_setting['thumbs_height'], true );
|
322 |
+
$tab_thumb = msp_get_the_relative_media_url( $tab_thumb );
|
323 |
+
}
|
324 |
+
}
|
325 |
+
|
326 |
+
|
327 |
+
$slides = array(
|
328 |
|
329 |
'slide_order'=> isset( $slide['order'] ) ? (int) $slide['order'] : 0,
|
330 |
|
331 |
'css_class' => isset( $slide['cssClass'] ) ? (string) $slide['cssClass'] : '',
|
332 |
'css_id' => isset( $slide['cssId'] ) ? (string) $slide['cssId'] : '',
|
333 |
|
334 |
+
'ishide' => $this->is_key_true( $slide, 'ishide', 'false' ),
|
335 |
|
336 |
'src' => isset( $slide['bg'] ) ? esc_attr( msp_get_the_relative_media_url( $slide['bg'] ) ) : '',
|
337 |
'src_full' => isset( $slide['bg'] ) ? esc_attr( msp_get_the_relative_media_url( $slide['bg'] ) ) : '',
|
360 |
'vbgalign' => isset( $slide['bgv_fillmode'] ) ? (string) $slide['bgv_fillmode'] : 'fill',
|
361 |
|
362 |
'thumb' => $thumb,
|
363 |
+
'tab' => 'true' == $slider_setting['thumbs'] && 'tabs' == $slider_setting['thumbs_type'] ? str_replace( '"', '"e;', $info ) : '',
|
364 |
'tab_thumb' => $tab_thumb,
|
365 |
+
'delay' => isset( $slide['duration'] ) ? (string) $slide['duration'] : '', // data-delay
|
366 |
'bgalign' => isset( $slide['fillMode'] ) ? (string) $slide['fillMode'] : 'fill', // data-fill-mode
|
367 |
'bgcolor' => isset( $slide['bgColor'] ) ? (string) $slide['bgColor'] : '',
|
368 |
|
370 |
'tintcolor' => isset( $slide['colorOverlay'] ) ? (string) $slide['colorOverlay'] : '',
|
371 |
);
|
372 |
|
373 |
+
return $slides;
|
374 |
+
}
|
375 |
|
376 |
|
377 |
+
public function parse_each_style( $style_obj, $allowed_style_type = array( 'custom' ) ) {
|
378 |
|
379 |
+
// make sure $style_obj is not serialized
|
380 |
+
$style_obj = maybe_unserialize( $style_obj );
|
381 |
|
382 |
+
if( empty( $style_obj ) )
|
383 |
+
return $style_obj;
|
384 |
|
385 |
+
$allowed_style_type = (array) $allowed_style_type;
|
386 |
|
387 |
+
if( ! isset( $style_obj['type'] ) || ( ! in_array( $style_obj['type'], $allowed_style_type ) ) )
|
388 |
+
return '';
|
389 |
|
390 |
+
// the css block selector
|
391 |
+
$class_name = isset( $style_obj['className'] ) ? ".". $style_obj['className'] : '';
|
392 |
+
// store css styles
|
393 |
+
$css = '';
|
394 |
|
395 |
$supported_css_props = array(
|
396 |
|
397 |
+
'backgroundColor' => array('background-color' , '' ),
|
398 |
+
|
399 |
+
'paddingTop' => array('padding-top' , 'px'),
|
400 |
+
'paddingRight' => array('padding-right' , 'px'),
|
401 |
+
'paddingBottom' => array('padding-bottom' , 'px'),
|
402 |
+
'paddingLeft' => array('padding-left' , 'px'),
|
403 |
+
|
404 |
+
'borderTop' => array('border-top' , 'px'),
|
405 |
+
'borderRight' => array('border-right' , 'px'),
|
406 |
+
'borderBottom' => array('border-bottom' , 'px'),
|
407 |
+
'borderLeft' => array('border-left' , 'px'),
|
408 |
+
|
409 |
+
'borderColor' => array('border-color' , '' ),
|
410 |
+
'borderRadius' => array('border-radius' , 'px'),
|
411 |
+
'borderStyle' => array('border-style' , '' ),
|
412 |
+
|
413 |
+
'fontFamily' => array('font-family' , '' ),
|
414 |
+
'fontWeight' => array('font-weight' , '' ),
|
415 |
+
'fontSize' => array('font-size' , 'px'),
|
416 |
+
|
417 |
+
'textAlign' => array('text-align' , '' ),
|
418 |
+
'letterSpacing' => array('letter-spacing' , 'px'),
|
419 |
+
'lineHeight' => array('line-height' , 'px'),
|
420 |
+
'whiteSpace' => array('white-space' , '' ),
|
421 |
+
'color' => array('color' , '' )
|
422 |
);
|
423 |
|
424 |
foreach ( $supported_css_props as $js_prop => $parse_option ) {
|
425 |
|
426 |
+
if( isset( $style_obj[$js_prop] ) && ! empty( $style_obj[$js_prop] ) ) {
|
427 |
+
// if prop is font-family add quote around font name
|
428 |
+
if ( 'fontFamily' == $js_prop )
|
429 |
+
$css .= sprintf( "%s%s:\"%s\";", $this->tab_char, $parse_option['0'], rtrim( $style_obj[$js_prop] ) ) . $this->join_char;
|
430 |
|
431 |
+
elseif ( 'lineHeight' == $js_prop && 'normal' == $style_obj[$js_prop] )
|
432 |
+
$css .= sprintf( "%s%s:%s;", $this->tab_char, $parse_option['0'], rtrim( $style_obj[$js_prop] ) ) . $this->join_char;
|
433 |
|
434 |
+
else
|
435 |
+
$css .= sprintf( "%s%s:%s%s;" , $this->tab_char, $parse_option['0'], rtrim( $style_obj[$js_prop], $parse_option['1'] ), $parse_option['1'] ) . $this->join_char;
|
436 |
+
|
437 |
+
}
|
438 |
}
|
439 |
|
440 |
// add custom styles at the end
|
442 |
// create css block
|
443 |
$css_block = $this->join_char.$class_name." { ".$this->join_char.$css." } \n";
|
444 |
//$css_block = sprintf( "\n%s {\n%s\n} \n", $class_name, $css );
|
445 |
+
|
446 |
return apply_filters( 'msp_parse_each_style', $css_block, $class_name, $css, $supported_css_props );
|
447 |
+
}
|
448 |
+
|
449 |
+
|
450 |
+
|
451 |
+
|
452 |
+
|
453 |
+
|
454 |
+
// set/store panel raw and parsed data for further use
|
455 |
+
public function set_data( $data, $slider_id = null ) {
|
456 |
+
$this->reset();
|
457 |
+
|
458 |
+
$this->maybe_encoded_data = $data;
|
459 |
+
$this->current_slider_id = $slider_id;
|
460 |
+
|
461 |
+
$decoded = msp_maybe_base64_decode( $data );
|
462 |
+
$this->parsable_data = json_decode($decoded);
|
463 |
+
}
|
464 |
+
|
465 |
+
|
466 |
+
// reset cache data
|
467 |
+
public function reset() {
|
468 |
+
$this->recent_setting = null;
|
469 |
+
$this->recent_slides = null;
|
470 |
+
$this->recent_styles = null;
|
471 |
+
$this->maybe_encoded_data = null;
|
472 |
+
}
|
473 |
|
474 |
|
475 |
|
476 |
+
// get decoded and parsable panel data
|
477 |
+
public function get_parsable_data() {
|
478 |
+
return $this->parsable_data;
|
479 |
+
}
|
480 |
|
481 |
|
482 |
|
|
|
|
|
|
|
483 |
|
|
|
|
|
484 |
|
|
|
|
|
|
|
485 |
|
486 |
+
public function get_raw_callbacks(){
|
487 |
+
if ( isset( $this->parsable_data->{'MSPanel.Callback'} ) )
|
488 |
+
return $this->parsable_data->{'MSPanel.Callback'};
|
489 |
+
return array();
|
490 |
+
}
|
491 |
+
|
492 |
+
|
493 |
+
public function get_callbacks_params(){
|
494 |
+
$callbacks_list = $this->get_raw_callbacks();
|
495 |
+
|
496 |
+
$callbacks_params = array();
|
497 |
+
|
498 |
+
foreach ($callbacks_list as $id => $callback_json) {
|
499 |
+
$raw_json_decoded_callback = json_decode( $callback_json, true );
|
500 |
+
$callback_params = $this->get_callback_params( $raw_json_decoded_callback );
|
501 |
+
$callbacks_params = wp_parse_args( $callback_params, $callbacks_params );
|
502 |
+
}
|
503 |
+
|
504 |
+
return $callbacks_params;
|
505 |
+
}
|
506 |
+
|
507 |
+
|
508 |
+
public function get_callback_params( $callback ) {
|
509 |
+
|
510 |
+
$name = isset( $callback['name'] ) ? (string) $callback['name'] : '';
|
511 |
+
|
512 |
+
switch ( $name ) {
|
513 |
+
case 'CHANGE_START':
|
514 |
+
return array( 'on_change_start' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
515 |
+
case 'CHANGE_END':
|
516 |
+
return array( 'on_change_end' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
517 |
+
case 'WAITING':
|
518 |
+
return array( 'on_waiting' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
519 |
+
case 'RESIZE':
|
520 |
+
return array( 'on_resize' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
521 |
+
case 'VIDEO_PLAY':
|
522 |
+
return array( 'on_video_play' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
523 |
+
case 'VIDEO_CLOSE':
|
524 |
+
return array( 'on_video_close' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
525 |
+
case 'SWIPE_START':
|
526 |
+
return array( 'on_swipe_start' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
527 |
+
case 'SWIPE_MOVE':
|
528 |
+
return array( 'on_swipe_move' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
529 |
+
case 'SWIPE_END':
|
530 |
+
return array( 'on_swipe_end' => isset( $callback['content'] ) ? base64_encode( $callback['content'] ) : '' );
|
531 |
+
default:
|
532 |
+
return array();
|
533 |
+
}
|
534 |
+
|
535 |
+
}
|
536 |
+
|
537 |
+
|
538 |
+
|
539 |
+
|
540 |
+
|
541 |
+
|
542 |
+
|
543 |
+
|
544 |
+
public function get_raw_controls(){
|
545 |
+
if ( isset( $this->parsable_data->{'MSPanel.Control'} ) )
|
546 |
+
return $this->parsable_data->{'MSPanel.Control'};
|
547 |
+
return array();
|
548 |
+
}
|
549 |
+
|
550 |
+
|
551 |
+
public function get_controls_params(){
|
552 |
+
$controls_list = $this->get_raw_controls();
|
553 |
+
|
554 |
+
$controls_params = array();
|
555 |
+
|
556 |
+
foreach ($controls_list as $id => $control_json) {
|
557 |
+
$raw_json_decoded_control = json_decode( $control_json, true );
|
558 |
+
$control_params = $this->get_control_params( $raw_json_decoded_control );
|
559 |
+
$controls_params = wp_parse_args( $control_params, $controls_params );
|
560 |
+
}
|
561 |
+
|
562 |
+
return $controls_params;
|
563 |
+
}
|
564 |
+
|
565 |
+
|
566 |
+
public function get_control_params( $control ) {
|
567 |
+
|
568 |
+
$name = isset( $control['name'] ) ? (string) $control['name'] : '';
|
569 |
+
|
570 |
+
switch ( $name ) {
|
571 |
+
case 'thumblist':
|
572 |
+
return array(
|
573 |
+
'thumbs' => 'true',
|
574 |
+
'thumbs_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
575 |
+
'thumbs_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
576 |
+
'thumbs_speed' => isset( $control['speed'] ) ? (int) $control['speed'] : 17,
|
577 |
+
'thumbs_type' => isset( $control['type'] ) ? (string) $control['type'] : 'thumbs',
|
578 |
+
'thumbs_inset' => $this->is_key_true( $control, 'inset', 'false' ),
|
579 |
+
'thumbs_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
580 |
+
'thumbs_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
581 |
+
'thumbs_width' => isset( $control['width'] ) ? (int) $control['width'] : 100,
|
582 |
+
'thumbs_height' => isset( $control['height'] ) ? (int) $control['height'] : 80,
|
583 |
+
'thumbs_space' => isset( $control['space'] ) ? (int) $control['space'] : 5,
|
584 |
+
'thumbs_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
585 |
+
'thumbs_fillmode' => isset( $control['fillMode'] ) ? (string) $control['fillMode'] : 'fill',
|
586 |
+
'thumbs_custom_class' => isset( $control['customClass'] ) ? (string) $control['customClass'] : 'ms-tab-thumb',
|
587 |
+
'thumbs_arrows' => $this->is_key_true( $control, 'arrows' , 'false' ),
|
588 |
+
'thumbs_in_tab' => $this->is_key_true( $control, 'insertThumb' , 'false' ),
|
589 |
+
'thumbs_hoverchange' => $this->is_key_true( $control, 'hoverChange' , 'false' )
|
590 |
+
);
|
591 |
+
case 'bullets':
|
592 |
+
return array(
|
593 |
+
'bullets' => 'true',
|
594 |
+
'bullets_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
595 |
+
'bullets_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
596 |
+
'bullets_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
597 |
+
'bullets_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
598 |
+
'bullets_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
599 |
+
);
|
600 |
+
case 'scrollbar':
|
601 |
+
return array(
|
602 |
+
'scroll' => 'true',
|
603 |
+
'scroll_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
604 |
+
'scroll_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
605 |
+
//'scroll_width' => isset( $control['width'] ) ? (int) $control['width'] : '',
|
606 |
+
'scroll_align' => isset( $control['align'] ) ? (string) $control['align'] : 'top',
|
607 |
+
'scroll_color' => isset( $control['color'] ) ? (string) $control['color'] : '#3D3D3D',
|
608 |
+
'scroll_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
609 |
+
'scroll_inset' => $this->is_key_true( $control, 'inset', 'true' ),
|
610 |
+
'scroll_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
611 |
+
'scroll_width' => isset( $control['width'] ) ? (int) $control['width'] : ''
|
612 |
+
);
|
613 |
+
case 'arrows':
|
614 |
+
return array(
|
615 |
+
'arrows' => 'true',
|
616 |
+
'arrows_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
617 |
+
'arrows_overvideo' => $this->is_key_true( $control, 'overVideo', 'true' ),
|
618 |
+
'arrows_hideunder' => isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
619 |
+
);
|
620 |
+
case 'timebar':
|
621 |
+
return array(
|
622 |
+
'timebar' => 'true',
|
623 |
+
'timebar_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
624 |
+
'timebar_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
625 |
+
'timebar_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
626 |
+
'timebar_color' => isset( $control['color'] ) ? (string) $control['color'] : '#FFFFFF',
|
627 |
+
'timebar_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
628 |
+
'timebar_width' => isset( $control['width'] ) ? (int) $control['width'] : ''
|
629 |
+
);
|
630 |
+
case 'circletimer':
|
631 |
+
return array(
|
632 |
+
'circletimer' => 'true',
|
633 |
+
'circletimer_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
634 |
+
'circletimer_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
635 |
+
'circletimer_color' => isset( $control['color'] ) ? (string) $control['color'] : '#A2A2A2',
|
636 |
+
'circletimer_radius' => isset( $control['radius'] ) ? (int) $control['radius'] : 4,
|
637 |
+
'circletimer_stroke' => isset( $control['stroke'] ) ? (int) $control['stroke'] : 10,
|
638 |
+
'circletimer_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
639 |
+
'circletimer_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : ''
|
640 |
+
);
|
641 |
+
case 'slideinfo':
|
642 |
+
return array(
|
643 |
+
'slideinfo' => 'true',
|
644 |
+
'slideinfo_autohide' => $this->is_key_true( $control, 'autoHide' , 'true' ),
|
645 |
+
'slideinfo_overvideo'=> $this->is_key_true( $control, 'overVideo', 'true' ),
|
646 |
+
'slideinfo_align' => isset( $control['align'] ) ? (string) $control['align'] : 'bottom',
|
647 |
+
'slideinfo_inset' => $this->is_key_true( $control, 'inset', 'false' ),
|
648 |
+
'slideinfo_margin' => isset( $control['margin'] ) ? (int) $control['margin'] : '',
|
649 |
+
'slideinfo_hideunder'=> isset( $control['hideUnder'] ) ? (int) $control['hideUnder'] : '',
|
650 |
+
'slideinfo_width' => isset( $control['width'] ) ? (int) $control['width'] : '',
|
651 |
+
'slideinfo_height' => isset( $control['height'] ) ? (int) $control['height'] : ''
|
652 |
+
);
|
653 |
+
default:
|
654 |
+
return array();
|
655 |
+
}
|
656 |
|
657 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
658 |
|
659 |
|
660 |
|
|
|
|
|
|
|
|
|
661 |
|
662 |
|
663 |
+
public function has_raw_setting(){
|
664 |
+
if ( isset( $this->parsable_data->{'MSPanel.Settings'} ) && isset( $this->parsable_data->{'MSPanel.Settings'}->{'1'} ) )
|
665 |
+
return true;
|
666 |
+
return false;
|
667 |
+
}
|
668 |
|
669 |
|
670 |
+
public function get_raw_setting(){
|
671 |
+
if ( $this->has_raw_setting() )
|
672 |
+
return $this->parsable_data->{'MSPanel.Settings'}->{'1'};
|
673 |
+
return null;
|
674 |
+
}
|
675 |
|
676 |
|
677 |
+
public function get_slider_setting( $force_new_parse = false ){
|
678 |
+
$raw_setting = $this->get_raw_setting();
|
|
|
|
|
|
|
679 |
|
680 |
+
if( is_null( $raw_setting ) ){
|
681 |
+
return $this->parse_setting();
|
682 |
+
}
|
683 |
|
684 |
+
if( is_null( $this->recent_setting ) || $force_new_parse ) {
|
685 |
+
$raw_json_decoded_setting = json_decode( $raw_setting, true );
|
686 |
+
$this->recent_setting = $this->parse_setting( $raw_json_decoded_setting );
|
687 |
+
$this->recent_setting = wp_parse_args( $this->get_controls_params() , $this->recent_setting );
|
688 |
+
$this->recent_setting = wp_parse_args( $this->get_callbacks_params(), $this->recent_setting );
|
689 |
+
}
|
690 |
+
return $this->recent_setting;
|
691 |
+
}
|
692 |
|
|
|
693 |
|
|
|
|
|
|
|
|
|
|
|
694 |
|
|
|
|
|
695 |
|
696 |
|
|
|
|
|
|
|
697 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
698 |
|
699 |
+
// is slides data passed in raw panel data?
|
700 |
+
public function has_raw_slide() {
|
701 |
+
if ( isset( $this->parsable_data->{'MSPanel.Slide'} ) )
|
702 |
+
return true;
|
703 |
+
return false;
|
704 |
+
}
|
705 |
|
706 |
|
707 |
+
public function get_raw_slides() {
|
708 |
+
if ( $this->has_raw_slide() ) {
|
709 |
+
return $this->parsable_data->{'MSPanel.Slide'};
|
710 |
+
}
|
711 |
+
return null;
|
712 |
+
}
|
713 |
|
714 |
|
715 |
+
public function get_parsable_slides() {
|
716 |
|
717 |
+
if( ! $raw_slides = $this->get_raw_slides() ){
|
718 |
+
return array();
|
719 |
+
}
|
720 |
|
721 |
+
$valid_slides = array();
|
|
|
|
|
|
|
|
|
|
|
722 |
|
723 |
+
foreach ( $raw_slides as $id => $raw_slide ) {
|
724 |
+
$raw_json_decoded_slide = json_decode( $raw_slide, true );
|
725 |
+
$valid_slides[ $raw_json_decoded_slide['order'] ] = $raw_json_decoded_slide;
|
726 |
+
}
|
727 |
|
728 |
+
ksort( $valid_slides );
|
729 |
+
return $valid_slides;
|
730 |
+
}
|
|
|
|
|
|
|
731 |
|
732 |
|
733 |
+
public function get_slides( $force_new_parse = false ) {
|
734 |
|
735 |
+
if( is_null( $this->recent_slides ) || $force_new_parse ) {
|
|
|
|
|
736 |
|
737 |
+
$parsable_slides = $this->get_parsable_slides();
|
738 |
|
739 |
+
if ( empty( $parsable_slides ) )
|
740 |
+
return $parsable_slides;
|
|
|
|
|
741 |
|
742 |
+
$slides = array();
|
|
|
|
|
743 |
|
744 |
+
foreach ( $parsable_slides as $slide ) {
|
745 |
+
$slides[] = $this->parse_slide( $slide );
|
746 |
+
}
|
747 |
|
748 |
+
$this->recent_slides = $slides;
|
749 |
+
}
|
750 |
+
return $this->recent_slides;
|
751 |
+
}
|
752 |
|
|
|
753 |
|
|
|
754 |
|
|
|
|
|
755 |
|
|
|
756 |
|
|
|
|
|
|
|
757 |
|
|
|
|
|
|
|
|
|
758 |
|
759 |
+
public function has_raw_style() {
|
760 |
+
if ( isset( $this->parsable_data->{'MSPanel.Style'} ) )
|
761 |
+
return true;
|
762 |
+
return false;
|
763 |
+
}
|
764 |
|
765 |
|
766 |
+
public function get_raw_styles() {
|
767 |
+
if ( $this->has_raw_style() ) {
|
768 |
+
return $this->parsable_data->{'MSPanel.Style'};
|
769 |
+
}
|
770 |
+
return null;
|
771 |
+
}
|
772 |
|
773 |
|
774 |
+
public function get_parsable_styles() {
|
775 |
|
776 |
+
if( ! $raw_styles = $this->get_raw_styles() ){
|
777 |
+
return array();
|
778 |
+
}
|
779 |
|
780 |
+
$valid_styles = array();
|
|
|
|
|
|
|
|
|
781 |
|
782 |
+
foreach ( $raw_styles as $id => $raw_style ) {
|
783 |
+
$raw_json_decoded_style = json_decode( $raw_style, true );
|
784 |
+
$valid_styles[] = $raw_json_decoded_style;
|
785 |
+
}
|
786 |
|
787 |
+
return $valid_styles;
|
788 |
+
}
|
|
|
|
|
|
|
|
|
789 |
|
790 |
|
791 |
+
public function get_styles_list( $force_new_parse = false ) {
|
792 |
|
793 |
+
if( is_null( $this->recent_styles ) || $force_new_parse ) {
|
|
|
|
|
794 |
|
795 |
+
$parsable_styles = $this->get_parsable_styles();
|
796 |
|
797 |
+
if ( empty( $parsable_styles ) )
|
798 |
+
return $parsable_styles;
|
|
|
|
|
799 |
|
800 |
+
$styles = array();
|
|
|
801 |
|
802 |
+
foreach ( $parsable_styles as $id => $style ) {
|
803 |
+
$styles[$id] = $this->parse_each_style( $style );
|
804 |
+
}
|
805 |
|
806 |
+
$this->recent_styles = $styles;
|
807 |
+
}
|
808 |
|
809 |
+
return $this->recent_styles;
|
810 |
+
}
|
811 |
|
|
|
812 |
|
813 |
+
public function get_styles( $force_new_parse = false ) {
|
814 |
+
$styles_list = $this->get_styles_list();
|
815 |
|
816 |
+
// custom css code for sliders added
|
817 |
+
$setting = $this->get_slider_setting();
|
818 |
+
$styles_list[] = $setting['custom_style'];
|
819 |
|
820 |
+
return implode( $this->join_char, $styles_list );
|
821 |
+
}
|
|
|
822 |
|
|
|
|
|
823 |
|
|
|
|
|
824 |
|
825 |
|
|
|
|
|
|
|
|
|
|
|
|
|
826 |
|
|
|
|
|
827 |
|
828 |
|
829 |
|
831 |
|
832 |
|
833 |
|
834 |
+
private function get_preset_styles_list( $parsable_preset_styles ) {
|
835 |
|
836 |
+
if ( empty( $parsable_preset_styles ) )
|
837 |
+
return $parsable_preset_styles;
|
838 |
|
839 |
+
$preset_styles = array();
|
840 |
|
841 |
+
foreach ( $parsable_preset_styles as $id => $preset_style ) {
|
842 |
+
$preset_styles[$id] = $this->parse_each_style( $preset_style, 'preset' );
|
843 |
+
}
|
844 |
|
845 |
+
return $preset_styles;
|
846 |
+
}
|
847 |
|
848 |
+
public function preset_data_to_styles( $raw_preset_styles ){
|
849 |
+
$valid_preset_styles = array();
|
850 |
|
851 |
+
foreach ( $raw_preset_styles as $id => $raw_preset_style ) {
|
852 |
+
$raw_json_decoded_preset_style = json_decode( $raw_preset_style, true );
|
853 |
+
$valid_preset_styles[] = $raw_json_decoded_preset_style;
|
854 |
+
}
|
855 |
|
856 |
+
$preset_styles_list = $this->get_preset_styles_list( $valid_preset_styles );
|
857 |
+
return implode( $this->join_char, $preset_styles_list );
|
858 |
+
}
|
859 |
|
860 |
+
public function get_preset_styles( $raw_preset ) {
|
|
|
|
|
861 |
|
862 |
+
$b64_decoded = msp_maybe_base64_decode( $raw_preset );
|
863 |
+
$preset_data = json_decode( $b64_decoded );
|
864 |
|
865 |
+
if ( ! isset( $preset_data->{'MSPanel.PresetStyle'} ) )
|
866 |
+
return '';
|
867 |
|
868 |
+
$raw_preset_styles = $preset_data->{'MSPanel.PresetStyle'};
|
|
|
|
|
|
|
869 |
|
870 |
+
return $this->preset_data_to_styles( $raw_preset_styles );
|
871 |
+
}
|
|
|
872 |
|
|
|
873 |
|
|
|
|
|
|
|
|
|
|
|
874 |
|
|
|
875 |
|
|
|
|
|
876 |
|
877 |
|
878 |
+
private function get_buttons_styles_list( $parsable_buttons_styles ) {
|
879 |
|
880 |
+
if ( empty( $parsable_buttons_styles ) )
|
881 |
+
return $parsable_buttons_styles;
|
882 |
|
883 |
+
$buttons_styles = array();
|
884 |
|
885 |
+
foreach ( $parsable_buttons_styles as $id => $button_style ) {
|
886 |
+
if( ! isset( $button_style['className'] ) ) continue;
|
887 |
|
888 |
+
if( isset( $button_style['normal'] ) )
|
889 |
+
$button_styles[] = sprintf( ".%s{ %s }", $button_style['className'], str_replace("\n", "", $button_style['normal'] ) );
|
890 |
+
if( isset( $button_style['hover'] ) )
|
891 |
+
$button_styles[] = sprintf( ".%s:hover{ %s }", $button_style['className'], str_replace("\n", "", $button_style['hover'] ) );
|
892 |
+
if( isset( $button_style['active'] ) )
|
893 |
+
$button_styles[] = sprintf( ".%s:active{ %s }", $button_style['className'], str_replace("\n", "", $button_style['active'] ) );
|
894 |
+
}
|
895 |
|
896 |
+
return $button_styles;
|
897 |
+
}
|
898 |
|
899 |
+
public function buttons_data_to_styles( $raw_buttons_styles ){
|
900 |
+
$valid_buttons_styles = array();
|
901 |
|
902 |
+
foreach ( $raw_buttons_styles as $id => $raw_buttons_style ) {
|
903 |
+
$raw_json_decoded_buttons_style = json_decode( $raw_buttons_style, true );
|
904 |
+
$valid_buttons_styles[] = $raw_json_decoded_buttons_style;
|
905 |
+
}
|
906 |
|
907 |
+
$buttons_styles_list = $this->get_buttons_styles_list( $valid_buttons_styles );
|
908 |
+
return implode( $this->join_char. " ", $buttons_styles_list );
|
909 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
910 |
|
911 |
+
public function get_buttons_styles( $raw_buttons ) {
|
|
|
912 |
|
913 |
+
$b64_decoded = msp_maybe_base64_decode( $raw_buttons );
|
914 |
+
$buttons_data = json_decode( $b64_decoded );
|
|
|
|
|
|
|
|
|
|
|
|
|
915 |
|
916 |
+
if ( ! isset( $buttons_data->{'MSPanel.ButtonStyle'} ) )
|
917 |
+
return '';
|
918 |
|
919 |
+
$raw_buttons_styles = $buttons_data->{'MSPanel.ButtonStyle'};
|
920 |
+
return $this->buttons_data_to_styles( $raw_buttons_styles );
|
921 |
+
}
|
|
|
|
|
922 |
|
|
|
|
|
|
|
|
|
923 |
|
924 |
|
925 |
|
926 |
|
927 |
|
928 |
|
929 |
+
public function parser_slider( $force_new_parse = false ) {
|
930 |
+
$this->get_slider_setting( $force_new_parse );
|
931 |
+
$this->get_slides( $force_new_parse );
|
932 |
+
$this->get_styles( $force_new_parse );
|
933 |
+
}
|
934 |
|
935 |
|
936 |
+
public function get_results( $force_new_parse = false ) {
|
937 |
+
$result = array();
|
938 |
|
939 |
+
$result['setting'] = $this->get_slider_setting( $force_new_parse );
|
940 |
+
$result['slides'] = $this->get_slides( $force_new_parse );
|
941 |
+
$result['styles'] = $this->get_styles( $force_new_parse );
|
942 |
|
943 |
+
return $result;
|
944 |
+
}
|
945 |
|
946 |
|
947 |
+
// pretty human readable print for parsed data
|
948 |
+
public function pretty_print() {
|
949 |
+
axpp( $this->parsable_data );
|
950 |
+
}
|
951 |
|
952 |
|
953 |
+
}
|
admin/includes/classes/class-msp-pointers.php
CHANGED
@@ -1,182 +1,182 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Master Slider Pointers Class.
|
4 |
-
*
|
5 |
-
* @package MasterSlider
|
6 |
-
* @author averta [averta.net]
|
7 |
-
* @license LICENSE.txt
|
8 |
-
* @link http://masterslider.com
|
9 |
-
* @copyright Copyright © 2014 averta
|
10 |
-
*/
|
11 |
-
|
12 |
-
/**
|
13 |
-
*
|
14 |
-
*/
|
15 |
-
class MSP_Pointers {
|
16 |
-
|
17 |
-
/* */
|
18 |
-
public $pointers = array();
|
19 |
-
public $seen_ids = array();
|
20 |
-
public $not_seen_pointers = array();
|
21 |
-
public $version_file = '';
|
22 |
-
|
23 |
-
/**
|
24 |
-
* Set theme or plugine file path to get version from
|
25 |
-
* @param string $version_file a path to plugin or theme file to get and compare version with it
|
26 |
-
*/
|
27 |
-
|
28 |
-
$this->version_file = $version_file;
|
29 |
-
}
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
public function add( $options = array() ){
|
34 |
-
// return if no data passed
|
35 |
-
if( empty( $options ) || ! is_array( $options ) ) return false;
|
36 |
-
|
37 |
-
$options = array_merge( $this->default_point(), $options );
|
38 |
-
// add pointer to pointers list
|
39 |
-
$this->pointers[] = $options;
|
40 |
-
|
41 |
-
return true;
|
42 |
-
}
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
public function init(){
|
48 |
-
global $wp_version;
|
49 |
-
|
50 |
-
if ( version_compare( $wp_version, '3.4', '<' ) )
|
51 |
-
return false;
|
52 |
-
|
53 |
-
if( ! count( $this->pointers) ) return "No Point Available.";
|
54 |
-
|
55 |
-
add_action( 'admin_enqueue_scripts' , array( $this, 'add_hooks' ) );
|
56 |
-
add_action( 'admin_print_footer_scripts', array( $this, 'print_pointer_scripts' ) );
|
57 |
-
return true;
|
58 |
-
}
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
public function add_hooks(){
|
65 |
-
if ( ! current_user_can( 'manage_options' ) ) return;
|
66 |
-
|
67 |
-
if( ! count( $this->pointers ) ) return false;
|
68 |
-
|
69 |
-
$this->seen_ids = explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) );
|
70 |
-
|
71 |
-
foreach ( $this->pointers as $key => $pointer_data ) {
|
72 |
-
if( ! in_array( $pointer_data["id"], $this->seen_ids ) )
|
73 |
-
$this->not_seen_pointers[] = $pointer_data;
|
74 |
-
}
|
75 |
-
|
76 |
-
if( count( $this->not_seen_pointers ) ) {
|
77 |
-
/* Load wp-pointer scripts and styles */
|
78 |
-
wp_enqueue_style ( 'wp-pointer' );
|
79 |
-
wp_enqueue_script( 'wp-pointer' );
|
80 |
-
|
81 |
-
add_action( 'admin_print_footer_scripts', array( $this, 'print_pointer_scripts' ) );
|
82 |
-
}
|
83 |
-
|
84 |
-
return true;
|
85 |
-
}
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
public function print_pointer_scripts() {
|
93 |
-
if ( ! current_user_can( 'manage_options' ) ) return;
|
94 |
-
|
95 |
-
global $hook_suffix;
|
96 |
-
|
97 |
-
$info = empty( $this->version_file ) ? wp_get_theme() : get_plugin_data( $this->version_file );
|
98 |
-
|
99 |
-
foreach ( $this->not_seen_pointers as $key => $pointer_data ) {
|
100 |
-
// check if we are on correct page to display pointer
|
101 |
-
if( ! empty( $pointer_data["hook_suffix"] ) && $pointer_data["hook_suffix"] != $hook_suffix ) continue;
|
102 |
-
// display pointer for specified theme version and above
|
103 |
-
if( version_compare( $info["Version"], $pointer_data["version"], '<' ) ) continue;
|
104 |
-
?>
|
105 |
-
<script type="text/javascript">
|
106 |
-
jQuery(document).ready(function($) {
|
107 |
-
if( typeof(jQuery().pointer) != 'undefined' ) {
|
108 |
-
$('<?php echo $pointer_data["target"]; ?>').pointer({
|
109 |
-
content: '<?php printf('<h3>%s</h3><p>%s</p>', $pointer_data["title"],$pointer_data["content"]); ?>',
|
110 |
-
pointerClass: '<?php echo $pointer_data["id"]; ?>',
|
111 |
-
pointerWidth: <?php echo isset( $pointer_data["width"] ) ? (int) $pointer_data["width"] : 320; ?>,
|
112 |
-
position: {
|
113 |
-
edge: '<?php echo $pointer_data["position"]["edge"]; ?>',
|
114 |
-
align: '<?php echo $pointer_data["position"]["align"]; ?>'
|
115 |
-
},
|
116 |
-
close: function() {
|
117 |
-
$.post( ajaxurl, {
|
118 |
-
pointer: '<?php echo $pointer_data["id"]; ?>',
|
119 |
-
action: 'dismiss-wp-pointer'
|
120 |
-
});
|
121 |
-
}
|
122 |
-
}).pointer('open');
|
123 |
-
}
|
124 |
-
});
|
125 |
-
</script>
|
126 |
-
<?php
|
127 |
-
if( isset( $pointer_data["css"] ) )
|
128 |
-
printf( '<style>%s</style>', $pointer_data["css"] );
|
129 |
-
}
|
130 |
-
}
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
public function default_point(){
|
136 |
-
return array(
|
137 |
-
'id' => 'mspo', // Unique id for pointer
|
138 |
-
'hook_suffix'=> '', // Screen hook suffix to show pointer on [empty means display every where on admin] (dashboard : index.php)
|
139 |
-
'target' => '#menu-settings',// CSS selector to hang the pointer to that element
|
140 |
-
'version' => '1', // The theme or plugin version to display tooltip on
|
141 |
-
'title' => '', // Tooltip title
|
142 |
-
'content' => '', // Tooltip description
|
143 |
-
'position' => array(
|
144 |
-
'edge' => 'left', //top, bottom, left, right
|
145 |
-
'align' => 'middle' //top, bottom, left, right, middle
|
146 |
-
)
|
147 |
-
);
|
148 |
-
}
|
149 |
-
}
|
150 |
-
|
151 |
-
|
152 |
-
/*-----------------------------------------------------------------------------------*/
|
153 |
-
/* Display Admin Pointers
|
154 |
-
/*-----------------------------------------------------------------------------------*/
|
155 |
-
|
156 |
-
function msp_add_custom_pointers(){
|
157 |
-
|
158 |
-
// admin pointers /////////////////////////////////////////////////////////
|
159 |
-
$msp_pointers = new MSP_Pointers( MSWP_AVERTA_DIR . '/' . MSWP_SLUG . '.php' );
|
160 |
-
$msp_pointers->add( array(
|
161 |
-
'id' => 'master_1_0_view_help', // Unique id for pointer
|
162 |
-
'hook_suffix'=> 'toplevel_page_masterslider', // Screen hook suffix to show pointer on [empty means display every where on admin] (dashboard : index.php)
|
163 |
-
'target' => '#contextual-help-link', // CSS selector to hang the pointer to that element
|
164 |
-
'version' => '1.0.0', // The theme or plugin version to display tooltip on
|
165 |
-
'title' => __( 'Do you need any help on Master Slider?',
|
166 |
-
'content' => sprintf( __( 'Please open contextual help panel (click the %s button at top right side of this page)',
|
167 |
-
'width' => 370,
|
168 |
-
'css' => '.master_1_0_view_help { left:auto !important; right:20px !important; } .master_1_0_view_help .wp-pointer-arrow { left:auto !important; right:25px; }',
|
169 |
-
'position' => array(
|
170 |
-
'edge' => 'top', //top, bottom, left, right
|
171 |
-
'align' => 'middle' //top, bottom, left, right, middle
|
172 |
-
)
|
173 |
-
)
|
174 |
-
);
|
175 |
-
|
176 |
-
$msp_pointers->init();
|
177 |
-
|
178 |
-
}
|
179 |
-
|
180 |
-
// msp_add_custom_pointers();
|
181 |
-
|
182 |
?>
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Master Slider Pointers Class.
|
4 |
+
*
|
5 |
+
* @package MasterSlider
|
6 |
+
* @author averta [averta.net]
|
7 |
+
* @license LICENSE.txt
|
8 |
+
* @link http://masterslider.com
|
9 |
+
* @copyright Copyright © 2014 averta
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
*
|
14 |
+
*/
|
15 |
+
class MSP_Pointers {
|
16 |
+
|
17 |
+
/* */
|
18 |
+
public $pointers = array();
|
19 |
+
public $seen_ids = array();
|
20 |
+
public $not_seen_pointers = array();
|
21 |
+
public $version_file = '';
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Set theme or plugine file path to get version from
|
25 |
+
* @param string $version_file a path to plugin or theme file to get and compare version with it
|
26 |
+
*/
|
27 |
+
function __construct( $version_file = '' ) {
|
28 |
+
$this->version_file = $version_file;
|
29 |
+
}
|
30 |
+
|
31 |
+
|
32 |
+
|
33 |
+
public function add( $options = array() ){
|
34 |
+
// return if no data passed
|
35 |
+
if( empty( $options ) || ! is_array( $options ) ) return false;
|
36 |
+
|
37 |
+
$options = array_merge( $this->default_point(), $options );
|
38 |
+
// add pointer to pointers list
|
39 |
+
$this->pointers[] = $options;
|
40 |
+
|
41 |
+
return true;
|
42 |
+
}
|
43 |
+
|
44 |
+
|
45 |
+
|
46 |
+
|
47 |
+
public function init(){
|
48 |
+
global $wp_version;
|
49 |
+
|
50 |
+
if ( version_compare( $wp_version, '3.4', '<' ) )
|
51 |
+
return false;
|
52 |
+
|
53 |
+
if( ! count( $this->pointers) ) return "No Point Available.";
|
54 |
+
|
55 |
+
add_action( 'admin_enqueue_scripts' , array( $this, 'add_hooks' ) );
|
56 |
+
add_action( 'admin_print_footer_scripts', array( $this, 'print_pointer_scripts' ) );
|
57 |
+
return true;
|
58 |
+
}
|
59 |
+
|
60 |
+
|
61 |
+
|
62 |
+
|
63 |
+
|
64 |
+
public function add_hooks(){
|
65 |
+
if ( ! current_user_can( 'manage_options' ) ) return;
|
66 |
+
|
67 |
+
if( ! count( $this->pointers ) ) return false;
|
68 |
+
|
69 |
+
$this->seen_ids = explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) );
|
70 |
+
|
71 |
+
foreach ( $this->pointers as $key => $pointer_data ) {
|
72 |
+
if( ! in_array( $pointer_data["id"], $this->seen_ids ) )
|
73 |
+
$this->not_seen_pointers[] = $pointer_data;
|
74 |
+
}
|
75 |
+
|
76 |
+
if( count( $this->not_seen_pointers ) ) {
|
77 |
+
/* Load wp-pointer scripts and styles */
|
78 |
+
wp_enqueue_style ( 'wp-pointer' );
|
79 |
+
wp_enqueue_script( 'wp-pointer' );
|
80 |
+
|
81 |
+
add_action( 'admin_print_footer_scripts', array( $this, 'print_pointer_scripts' ) );
|
82 |
+
}
|
83 |
+
|
84 |
+
return true;
|
85 |
+
}
|
86 |
+
|
87 |
+
|
88 |
+
|
89 |
+
|
90 |
+
|
91 |
+
|
92 |
+
public function print_pointer_scripts() {
|
93 |
+
if ( ! current_user_can( 'manage_options' ) ) return;
|
94 |
+
|
95 |
+
global $hook_suffix;
|
96 |
+
|
97 |
+
$info = empty( $this->version_file ) ? wp_get_theme() : get_plugin_data( $this->version_file );
|
98 |
+
|
99 |
+
foreach ( $this->not_seen_pointers as $key => $pointer_data ) {
|
100 |
+
// check if we are on correct page to display pointer
|
101 |
+
if( ! empty( $pointer_data["hook_suffix"] ) && $pointer_data["hook_suffix"] != $hook_suffix ) continue;
|
102 |
+
// display pointer for specified theme version and above
|
103 |
+
if( version_compare( $info["Version"], $pointer_data["version"], '<' ) ) continue;
|
104 |
+
?>
|
105 |
+
<script type="text/javascript">
|
106 |
+
jQuery(document).ready(function($) {
|
107 |
+
if( typeof(jQuery().pointer) != 'undefined' ) {
|
108 |
+
$('<?php echo $pointer_data["target"]; ?>').pointer({
|
109 |
+
content: '<?php printf('<h3>%s</h3><p>%s</p>', $pointer_data["title"],$pointer_data["content"]); ?>',
|
110 |
+
pointerClass: '<?php echo $pointer_data["id"]; ?>',
|
111 |
+
pointerWidth: <?php echo isset( $pointer_data["width"] ) ? (int) $pointer_data["width"] : 320; ?>,
|
112 |
+
position: {
|
113 |
+
edge: '<?php echo $pointer_data["position"]["edge"]; ?>',
|
114 |
+
align: '<?php echo $pointer_data["position"]["align"]; ?>'
|
115 |
+
},
|
116 |
+
close: function() {
|
117 |
+
$.post( ajaxurl, {
|
118 |
+
pointer: '<?php echo $pointer_data["id"]; ?>',
|
119 |
+
action: 'dismiss-wp-pointer'
|
120 |
+
});
|
121 |
+
}
|
122 |
+
}).pointer('open');
|
123 |
+
}
|
124 |
+
});
|
125 |
+
</script>
|
126 |
+
<?php
|
127 |
+
if( isset( $pointer_data["css"] ) )
|
128 |
+
printf( '<style>%s</style>', $pointer_data["css"] );
|
129 |
+
}
|
130 |
+
}
|
131 |
+
|
132 |
+
|
133 |
+
|
134 |
+
|
135 |
+
public function default_point(){
|
136 |
+
return array(
|
137 |
+
'id' => 'mspo', // Unique id for pointer
|
138 |
+
'hook_suffix'=> '', // Screen hook suffix to show pointer on [empty means display every where on admin] (dashboard : index.php)
|
139 |
+
'target' => '#menu-settings',// CSS selector to hang the pointer to that element
|
140 |
+
'version' => '1', // The theme or plugin version to display tooltip on
|
141 |
+
'title' => '', // Tooltip title
|
142 |
+
'content' => '', // Tooltip description
|
143 |
+
'position' => array(
|
144 |
+
'edge' => 'left', //top, bottom, left, right
|
145 |
+
'align' => 'middle' //top, bottom, left, right, middle
|
146 |
+
)
|
147 |
+
);
|
148 |
+
}
|
149 |
+
}
|
150 |
+
|
151 |
+
|
152 |
+
/*-----------------------------------------------------------------------------------*/
|
153 |
+
/* Display Admin Pointers
|
154 |
+
/*-----------------------------------------------------------------------------------*/
|
155 |
+
|
156 |
+
function msp_add_custom_pointers(){
|
157 |
+
|
158 |
+
// admin pointers /////////////////////////////////////////////////////////
|
159 |
+
$msp_pointers = new MSP_Pointers( MSWP_AVERTA_DIR . '/' . MSWP_SLUG . '.php' );
|
160 |
+
$msp_pointers->add( array(
|
161 |
+
'id' => 'master_1_0_view_help', // Unique id for pointer
|
162 |
+
'hook_suffix'=> 'toplevel_page_masterslider', // Screen hook suffix to show pointer on [empty means display every where on admin] (dashboard : index.php)
|
163 |
+
'target' => '#contextual-help-link', // CSS selector to hang the pointer to that element
|
164 |
+
'version' => '1.0.0', // The theme or plugin version to display tooltip on
|
165 |
+
'title' => __( 'Do you need any help on Master Slider?', 'master-slider' ), // Tooltip title
|
166 |
+
'content' => sprintf( __( 'Please open contextual help panel (click the %s button at top right side of this page)', 'master-slider' ), '<strong style="color:#1D86AC;">'.__( 'Help', 'master-slider' ).'</strong>' ), // Tooltip description
|
167 |
+
'width' => 370,
|
168 |
+
'css' => '.master_1_0_view_help { left:auto !important; right:20px !important; } .master_1_0_view_help .wp-pointer-arrow { left:auto !important; right:25px; }',
|
169 |
+
'position' => array(
|
170 |
+
'edge' => 'top', //top, bottom, left, right
|
171 |
+
'align' => 'middle' //top, bottom, left, right, middle
|
172 |
+
)
|
173 |
+
)
|
174 |
+
);
|
175 |
+
|
176 |
+
$msp_pointers->init();
|
177 |
+
|
178 |
+
}
|
179 |
+
|
180 |
+
// msp_add_custom_pointers();
|
181 |
+
|
182 |
?>
|
admin/includes/classes/class-msp-screen-help.php
CHANGED
@@ -10,37 +10,37 @@ class MSP_Screen_Help extends Axiom_Screen_Help {
|
|
10 |
/**
|
11 |
* __construct
|
12 |
*/
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
|
28 |
parent::__construct( $tabs, msp_get_screen_ids(), 'masterslider_help_tab_' );
|
29 |
-
|
30 |
|
31 |
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
|
45 |
<img src="<?php echo MSWP_AVERTA_ADMIN_URL. '/assets/images/misc/where-is-ms-shortcode.png'; ?>" />
|
46 |
<p>To insert the slider, edit a page or post and insert its shortcode into the WordPress text editor like following screenshot. </p>
|
@@ -49,100 +49,100 @@ class MSP_Screen_Help extends Axiom_Screen_Help {
|
|
49 |
</div>
|
50 |
</div>
|
51 |
|
52 |
-
|
53 |
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
|
60 |
-
|
61 |
</p>
|
62 |
</div>
|
63 |
</div>
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
</p>
|
98 |
</div>
|
99 |
</div>
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
|
147 |
|
148 |
}
|
10 |
/**
|
11 |
* __construct
|
12 |
*/
|
13 |
+
function __construct() {
|
14 |
+
|
15 |
+
// define tabs data
|
16 |
+
$tabs = array (
|
17 |
+
|
18 |
+
array('id' => 'msp-how-use-tab',
|
19 |
+
'title' => __( 'Display Sliders on pages', 'master-slider' ),
|
20 |
+
'callback' => array( $this, 'display_masterslider' ) // callback to display tab content @km!
|
21 |
+
),
|
22 |
+
array('id' => 'msp-supp-tab',
|
23 |
+
'title' => __( 'Master Slider Support', 'master-slider' ),
|
24 |
+
'callback' => array( $this, 'display_support' ) // callback to display tab content @km!
|
25 |
+
)
|
26 |
+
);
|
27 |
|
28 |
parent::__construct( $tabs, msp_get_screen_ids(), 'masterslider_help_tab_' );
|
29 |
+
}
|
30 |
|
31 |
|
32 |
+
public function display_masterslider(){
|
33 |
+
?>
|
34 |
+
<h2>How to Display Sliders on Pages</h2>
|
35 |
+
<p>You can display Master Slider on your website with using one of the three ways that are explained below.</p>
|
36 |
+
<hr />
|
37 |
|
38 |
+
<div class="row-fluid">
|
39 |
+
|
40 |
+
<div>
|
41 |
+
<h3>1 - Inserting the slider with shortcode (Easiest way)</h3>
|
42 |
+
<p>You can place your sliders into pages and posts with their shortcodes.</p>
|
43 |
+
<p>You can find the shortcode for each slider in Master Slider admin page next to their names in the list view.</p>
|
44 |
|
45 |
<img src="<?php echo MSWP_AVERTA_ADMIN_URL. '/assets/images/misc/where-is-ms-shortcode.png'; ?>" />
|
46 |
<p>To insert the slider, edit a page or post and insert its shortcode into the WordPress text editor like following screenshot. </p>
|
49 |
</div>
|
50 |
</div>
|
51 |
|
52 |
+
<hr>
|
53 |
|
54 |
+
<div class="row-fluid">
|
55 |
+
<div >
|
56 |
+
<h3>2 - Inserting the slider with the Master Slider WP widget</h3>
|
57 |
+
<p>
|
58 |
+
MasterSlider WP supports widgets, so you can place your slider in your front-end page just by a drag n' drop. To do that, navigate to the Appearance menu on your left sidebar and select "Widgets". Grab the MasterSlider WP Widget and drop it into one of your widget area.
|
59 |
|
60 |
+
Please note that some themes may not support a widget area what you need. In this case, you can create a new widget area by editing your theme files.
|
61 |
</p>
|
62 |
</div>
|
63 |
</div>
|
64 |
+
|
65 |
+
<hr>
|
66 |
+
|
67 |
+
<div class="row-fluid">
|
68 |
+
<div>
|
69 |
+
<h3>3 - Calling the slider from your theme files (For Advanced users)</h3>
|
70 |
+
<p>
|
71 |
+
Because a slider can be an integral part of your site, you may want to place it into your theme files. There are some PHP function which you can call for example from the header.php file of your theme and it inserts your slider into your home page or certail other pages. Here they are :
|
72 |
+
</p>
|
73 |
+
<br />
|
74 |
+
|
75 |
+
<h5>Description</h5>
|
76 |
+
<p>Displays Master Slider markup for specific slider ID</p>
|
77 |
+
|
78 |
+
<h5>Usage :</h5>
|
79 |
+
<p><code><?php masterslider( $id ); ?></code></p>It's equal to :
|
80 |
+
<p><code><?php echo get_masterslider( $id ); ?></code></p>
|
81 |
+
|
82 |
+
<h5>Parameters :</h5>
|
83 |
+
<dl>
|
84 |
+
<dt><tt>$id</tt></dt>
|
85 |
+
<dd> (int) The slider ID that can be found on the plugin page in the slider list view at the first table column. Default: <i>Null</i></dd>
|
86 |
+
</dl><br />
|
87 |
+
|
88 |
+
<h5>Example :</h5>
|
89 |
+
<p>If you've created a slider and the slider ID is equal to <code>1</code> you can use the following code to display the slider on your website.</p>
|
90 |
+
<p><code><?php masterslider ( 1 ); ?></code></p>OR
|
91 |
+
<p><code><?php echo get_masterslider ( 1 ); ?></code></p><br />
|
92 |
+
|
93 |
+
<hr>
|
94 |
+
|
95 |
+
<p>
|
96 |
+
It is important when you want to insert a slider to check its ID on the MasterSlider WP slider list page. When you remove some sliders, their IDs won't be re-indexed and the sequence may broke up. This is important to keep persistent your sliders preventing unwanted changes on the already inserted ones.
|
97 |
</p>
|
98 |
</div>
|
99 |
</div>
|
100 |
+
|
101 |
+
<?php
|
102 |
+
}
|
103 |
+
|
104 |
+
public function display_support(){
|
105 |
+
?>
|
106 |
+
<h3><strong>Support</strong></h3>
|
107 |
+
<hr />
|
108 |
+
|
109 |
+
<h4>If you have any questions please follow these steps:</h4>
|
110 |
+
<ol>
|
111 |
+
<li>Please read item's <a href="http://masterslider.com/doc/wp/free" target="_blank">Documentation </a> </li>
|
112 |
+
<li>Take a look in our <a href="http://wordpress.org/plugins/master-slider/faq/" target="_blank">FAQ</a> page</li>
|
113 |
+
<li>Search plugin's support forum using <a href="https://www.google.com/search?q=site:wordpress.org+%22master+slider%22+%22support%22+your+question+here" target="_blank">this link</a> for finding already asked or similar questions.</li>
|
114 |
+
<li>If you did not find your answer, please post new topic in <a href="http://wordpress.org/support/plugin/master-slider" target="_blank">support forum</a></li>
|
115 |
+
</ol>
|
116 |
+
<br />
|
117 |
+
|
118 |
+
|
119 |
+
<strong>Why support forum?</strong>
|
120 |
+
<ul>
|
121 |
+
<li>It is organized and searchable (that makes support easier and faster)</li>
|
122 |
+
</ul>
|
123 |
+
<br />
|
124 |
+
|
125 |
+
<strong>Supporting our Items INCLUDES</strong>:
|
126 |
+
<ul>
|
127 |
+
<li>Responding to questions or problems regarding our item and its features</li>
|
128 |
+
<li>Fixing bugs and reported issues</li>
|
129 |
+
<li>Providing updates to ensure compatibility with new software versions</li>
|
130 |
+
</ul>
|
131 |
+
<br/>
|
132 |
+
|
133 |
+
<strong>Item support does NOT include</strong>:
|
134 |
+
<ul>
|
135 |
+
<li>Customization and installation services</li>
|
136 |
+
<li>Support for third party software and plug-ins</li>
|
137 |
+
</ul>
|
138 |
+
<br/>
|
139 |
+
|
140 |
+
<p><span class="label label-info">Note</span> We <strong>CANNOT</strong> provide support via email, Please ask your support related questions only in <a href="http://wordpress.org/support/plugin/master-slider/" target="_blank">support forum</a>.</p>
|
141 |
+
<br />
|
142 |
+
<p><span class="label label-info">Important Note</span> For the fast troubleshooting, please send us detailed informations about the issue and make sure that you don't forget to send us your site url where you are using or want to use the item. Please note, that we cannot troubleshoot from screencast videos or screenshots.</p>
|
143 |
+
|
144 |
+
<?php
|
145 |
+
}
|
146 |
|
147 |
|
148 |
}
|
admin/includes/classes/class-msp-shortcode-factory.php
CHANGED
@@ -1,26 +1,26 @@
|
|
1 |
<?php
|
2 |
|
3 |
/**
|
4 |
-
*
|
5 |
*/
|
6 |
class MSP_Shortcode_Factory {
|
7 |
-
|
8 |
public $parsed_slider_data = array();
|
9 |
private $post_id;
|
10 |
private $post_slider_args = array();
|
11 |
|
12 |
function __construct() {
|
13 |
-
|
14 |
}
|
15 |
|
16 |
public function set_data( $parsed_data ) {
|
17 |
-
|
18 |
$this->parsed_slider_data = $parsed_data;
|
19 |
}
|
20 |
|
21 |
/**
|
22 |
* Get generated ms_slider shortcode
|
23 |
-
*
|
24 |
* @return string [ms_slider] shortcode or empty string on error
|
25 |
*/
|
26 |
public function get_ms_slider_shortcode( $the_content = '' ){
|
@@ -60,7 +60,7 @@ class MSP_Shortcode_Factory {
|
|
60 |
// stores shortcode attributes
|
61 |
$attrs = '';
|
62 |
|
63 |
-
// the list of attributes which should be excluded from slide shortcode
|
64 |
$exclude_slide_attrs = array( 'layers', 'layer_ids', 'ishide', 'info' );
|
65 |
|
66 |
foreach ( $slide as $attr => $attr_value ) {
|
@@ -73,13 +73,13 @@ class MSP_Shortcode_Factory {
|
|
73 |
$attrs .= sprintf( '%s="%s" ', $attr, '{{image}}' );
|
74 |
|
75 |
} elseif( 'alt' == $attr || 'title' == $attr ) {
|
76 |
-
|
77 |
if( in_array( $this->parsed_slider_data['setting']['slider_type'], array( "flickr", "facebook", "instagram" ) ) ){
|
78 |
$attrs .= sprintf( '%s="%s" ', $attr, '{{title}}' );
|
79 |
} else {
|
80 |
$attrs .= sprintf( '%s="%s" ', $attr, $this->escape_square_brackets( $attr_value ) );
|
81 |
}
|
82 |
-
|
83 |
// encode backets ([]) to prevent any conflict while generating slider shortcode
|
84 |
} elseif( 'link_title' == $attr || 'link_rel' == $attr ) {
|
85 |
$attrs .= sprintf( '%s="%s" ', $attr, $this->escape_square_brackets( $attr_value ) );
|
@@ -97,7 +97,7 @@ class MSP_Shortcode_Factory {
|
|
97 |
$tab_content = sprintf( '{{thumb%s}}', $thumb_height ) . $tab_content;
|
98 |
}
|
99 |
$attrs .= sprintf( '%s="%s" ', $attr, esc_attr( $tab_content ) );
|
100 |
-
|
101 |
} else {
|
102 |
$attrs .= sprintf( '%s="%s" ', $attr, esc_attr( $attr_value ) );
|
103 |
}
|
@@ -112,8 +112,8 @@ class MSP_Shortcode_Factory {
|
|
112 |
$the_content = '';
|
113 |
|
114 |
// generate slide_info shortcode if slideinfo control is added
|
115 |
-
if( 'image-gallery' == $this->parsed_slider_data['setting']['template'] ||
|
116 |
-
( isset( $this->parsed_slider_data['setting']['slideinfo'] ) && 'true' == $this->parsed_slider_data['setting']['slideinfo'] )
|
117 |
){
|
118 |
if( ! empty( $slide['info'] ) )
|
119 |
$the_content .= $this->get_ms_slide_info_shortcode( $slide['info'] );
|
@@ -158,7 +158,11 @@ class MSP_Shortcode_Factory {
|
|
158 |
if( empty( $the_content ) )
|
159 |
return '';
|
160 |
|
161 |
-
|
|
|
|
|
|
|
|
|
162 |
}
|
163 |
|
164 |
|
@@ -168,8 +172,8 @@ class MSP_Shortcode_Factory {
|
|
168 |
|
169 |
$tag_name = preg_replace('/[{}]/', '', $matches['0'] );
|
170 |
$tag_name = msp_get_template_tag_value( $tag_name, $this->post_id, $this->post_slider_args );
|
171 |
-
|
172 |
return is_array( $tag_name ) ? implode( ',', $tag_name ) : $tag_name;
|
173 |
}
|
174 |
|
175 |
-
}
|
1 |
<?php
|
2 |
|
3 |
/**
|
4 |
+
*
|
5 |
*/
|
6 |
class MSP_Shortcode_Factory {
|
7 |
+
|
8 |
public $parsed_slider_data = array();
|
9 |
private $post_id;
|
10 |
private $post_slider_args = array();
|
11 |
|
12 |
function __construct() {
|
13 |
+
|
14 |
}
|
15 |
|
16 |
public function set_data( $parsed_data ) {
|
17 |
+
|
18 |
$this->parsed_slider_data = $parsed_data;
|
19 |
}
|
20 |
|
21 |
/**
|
22 |
* Get generated ms_slider shortcode
|
23 |
+
*
|
24 |
* @return string [ms_slider] shortcode or empty string on error
|
25 |
*/
|
26 |
public function get_ms_slider_shortcode( $the_content = '' ){
|
60 |
// stores shortcode attributes
|
61 |
$attrs = '';
|
62 |
|
63 |
+
// the list of attributes which should be excluded from slide shortcode
|
64 |
$exclude_slide_attrs = array( 'layers', 'layer_ids', 'ishide', 'info' );
|
65 |
|
66 |
foreach ( $slide as $attr => $attr_value ) {
|
73 |
$attrs .= sprintf( '%s="%s" ', $attr, '{{image}}' );
|
74 |
|
75 |
} elseif( 'alt' == $attr || 'title' == $attr ) {
|
76 |
+
|
77 |
if( in_array( $this->parsed_slider_data['setting']['slider_type'], array( "flickr", "facebook", "instagram" ) ) ){
|
78 |
$attrs .= sprintf( '%s="%s" ', $attr, '{{title}}' );
|
79 |
} else {
|
80 |
$attrs .= sprintf( '%s="%s" ', $attr, $this->escape_square_brackets( $attr_value ) );
|
81 |
}
|
82 |
+
|
83 |
// encode backets ([]) to prevent any conflict while generating slider shortcode
|
84 |
} elseif( 'link_title' == $attr || 'link_rel' == $attr ) {
|
85 |
$attrs .= sprintf( '%s="%s" ', $attr, $this->escape_square_brackets( $attr_value ) );
|
97 |
$tab_content = sprintf( '{{thumb%s}}', $thumb_height ) . $tab_content;
|
98 |
}
|
99 |
$attrs .= sprintf( '%s="%s" ', $attr, esc_attr( $tab_content ) );
|
100 |
+
|
101 |
} else {
|
102 |
$attrs .= sprintf( '%s="%s" ', $attr, esc_attr( $attr_value ) );
|
103 |
}
|
112 |
$the_content = '';
|
113 |
|
114 |
// generate slide_info shortcode if slideinfo control is added
|
115 |
+
if( 'image-gallery' == $this->parsed_slider_data['setting']['template'] ||
|
116 |
+
( isset( $this->parsed_slider_data['setting']['slideinfo'] ) && 'true' == $this->parsed_slider_data['setting']['slideinfo'] )
|
117 |
){
|
118 |
if( ! empty( $slide['info'] ) )
|
119 |
$the_content .= $this->get_ms_slide_info_shortcode( $slide['info'] );
|
158 |
if( empty( $the_content ) )
|
159 |
return '';
|
160 |
|
161 |
+
if( " " == $the_content ){
|
162 |
+
$css_class = 'ms-info-empty';
|
163 |
+
}
|
164 |
+
|
165 |
+
return sprintf( '[%1$s css_class="%3$s"]%2$s[/%1$s]', 'ms_slide_info', $the_content, $css_class )."\n";
|
166 |
}
|
167 |
|
168 |
|
172 |
|
173 |
$tag_name = preg_replace('/[{}]/', '', $matches['0'] );
|
174 |
$tag_name = msp_get_template_tag_value( $tag_name, $this->post_id, $this->post_slider_args );
|
175 |
+
|
176 |
return is_array( $tag_name ) ? implode( ',', $tag_name ) : $tag_name;
|
177 |
}
|
178 |
|
179 |
+
}
|
admin/includes/msp-admin-templates.php
CHANGED
@@ -2,15 +2,15 @@
|
|
2 |
|
3 |
function msp_get_panel_header(){
|
4 |
?>
|
5 |
-
|
6 |
<div class="msp-logo">
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
</div>
|
11 |
<?php if( isset( $_GET['action'] ) && 'edit' == $_GET['action'] ) { ?>
|
12 |
-
<a class="upgrade-pro" href="http://avt.li/mslpan" title="<?php _e( "Upgrade to PRO version to unlock more features. Click to see the list of features." ); ?>" target="_blank"><?php _e( "Upgrade to PRO Version",
|
13 |
-
|
14 |
</div>
|
15 |
<?php
|
16 |
}
|
2 |
|
3 |
function msp_get_panel_header(){
|
4 |
?>
|
5 |
+
<div id="msp-header">
|
6 |
<div class="msp-logo">
|
7 |
+
<a href="<?php echo admin_url( 'admin.php?page='.MSWP_SLUG ); ?>">
|
8 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL; ?>/views/slider-panel/images/masterslider.gif">
|
9 |
+
</a>
|
10 |
</div>
|
11 |
<?php if( isset( $_GET['action'] ) && 'edit' == $_GET['action'] ) { ?>
|
12 |
+
<a class="upgrade-pro" href="http://avt.li/mslpan" title="<?php _e( "Upgrade to PRO version to unlock more features. Click to see the list of features." ); ?>" target="_blank"><?php _e( "Upgrade to PRO Version", 'master-slider' ); ?></a>
|
13 |
+
<?php } ?>
|
14 |
</div>
|
15 |
<?php
|
16 |
}
|
admin/includes/msp-hooks.php
CHANGED
@@ -1,23 +1,23 @@
|
|
1 |
<?php
|
2 |
|
3 |
function msp_filter_masterslider_admin_menu_title( $menu_title ){
|
4 |
-
|
5 |
|
6 |
if ( ! isset( $current->response[ MSWP_AVERTA_BASE_NAME ] ) )
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
}
|
11 |
|
12 |
add_filter( 'masterslider_admin_menu_title', 'msp_filter_masterslider_admin_menu_title');
|
13 |
|
14 |
|
15 |
function after_master_slider_row_meta( $plugin_meta, $plugin_file, $plugin_data, $status ){
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
}
|
22 |
|
23 |
add_filter( "plugin_row_meta", 'after_master_slider_row_meta', 10, 4 );
|
1 |
<?php
|
2 |
|
3 |
function msp_filter_masterslider_admin_menu_title( $menu_title ){
|
4 |
+
$current = get_site_transient( 'update_plugins' );
|
5 |
|
6 |
if ( ! isset( $current->response[ MSWP_AVERTA_BASE_NAME ] ) )
|
7 |
+
return $menu_title;
|
8 |
+
|
9 |
+
return $menu_title . ' <span class="update-plugins"><span class="plugin-count">1</span></span>';
|
10 |
}
|
11 |
|
12 |
add_filter( 'masterslider_admin_menu_title', 'msp_filter_masterslider_admin_menu_title');
|
13 |
|
14 |
|
15 |
function after_master_slider_row_meta( $plugin_meta, $plugin_file, $plugin_data, $status ){
|
16 |
+
if( MSWP_AVERTA_BASE_NAME == $plugin_file ) {
|
17 |
+
$plugin_meta[] = '<a href="http://wordpress.org/support/view/plugin-reviews/' . MSWP_SLUG . '?rating=5#postform" target="_blank" title="' . esc_attr__( 'Rate this plugin', 'master-slider' ) . '">' . __( 'Rate this plugin', 'master-slider' ) . '</a>';
|
18 |
+
$plugin_meta[] = '<a href="http://masterslider.com/doc/wp/free/#donate" target="_blank" title="' . esc_attr__( 'Donate', 'master-slider' ) . '">' . __( 'Donate', 'master-slider' ) . '</a>';
|
19 |
+
}
|
20 |
+
return $plugin_meta;
|
21 |
}
|
22 |
|
23 |
add_filter( "plugin_row_meta", 'after_master_slider_row_meta', 10, 4 );
|
admin/includes/msp-sample-sliders.php
CHANGED
@@ -4,13 +4,13 @@ function msp_get_slider_starter_sections () {
|
|
4 |
|
5 |
$sections = array(
|
6 |
array(
|
7 |
-
'id'
|
8 |
-
'title' => __( 'Slider Types',
|
9 |
'desc' => ''
|
10 |
),
|
11 |
array(
|
12 |
-
'id'
|
13 |
-
'title' => __( 'Sample Sliders',
|
14 |
'desc' => ''
|
15 |
)
|
16 |
);
|
@@ -21,114 +21,114 @@ function msp_get_slider_starter_sections () {
|
|
21 |
|
22 |
function msp_get_slider_starter_fields () {
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTgiOnsidGl0bGUiOiJTaW1wbGUgU2xpZGVyIHdpdGggU2xpZGUgSW5mbyIsInBhcmFtcyI6ImV5SnRaWFJoSWpwN0lsTmxkSFJwYm1keklXbGtjeUk2SWpFaUxDSlRaWFIwYVc1bmN5RnVaWGgwU1dRaU9qSXNJbE5zYVdSbElXbGtjeUk2SWpFc01pd3pMRFFzTlN3MkxEY3NPU3d4TWl3eE5DSXNJbE5zYVdSbElXNWxlSFJKWkNJNk1UVXNJa052Ym5SeWIyd2hhV1J6SWpvaU1TdzBJaXdpUTI5dWRISnZiQ0Z1WlhoMFNXUWlPalY5TENKTlUxQmhibVZzTGxObGRIUnBibWR6SWpwN0lqRWlPaUo3WENKcFpGd2lPbHdpTVZ3aUxGd2ljMjVoY0hCcGJtZGNJanAwY25WbExGd2libUZ0WlZ3aU9sd2lVMmx0Y0d4bElGTnNhV1JsY2lCM2FYUm9JRk5zYVdSbElFbHVabTljSWl4Y0luZHBaSFJvWENJNk9EQXdMRndpYUdWcFoyaDBYQ0k2TkRnd0xGd2lkM0poY0hCbGNsZHBaSFJvWENJNk9EQXdMRndpZDNKaGNIQmxjbGRwWkhSb1ZXNXBkRndpT2x3aWNIaGNJaXhjSW1GMWRHOURjbTl3WENJNlptRnNjMlVzWENKMGVYQmxYQ0k2WENKamRYTjBiMjFjSWl4Y0luTnNhV1JsY2tsa1hDSTZYQ0kxT0Z3aUxGd2liR0Y1YjNWMFhDSTZYQ0ppYjNobFpGd2lMRndpWVhWMGIwaGxhV2RvZEZ3aU9tWmhiSE5sTEZ3aWRISldhV1YzWENJNlhDSmlZWE5wWTF3aUxGd2ljM0JsWldSY0lqb3lNQ3hjSW5Od1lXTmxYQ0k2TUN4Y0luTjBZWEowWENJNk1TeGNJbWR5WVdKRGRYSnpiM0pjSWpwMGNuVmxMRndpYzNkcGNHVmNJanAwY25WbExGd2liVzkxYzJWY0lqcDBjblZsTEZ3aWQyaGxaV3hjSWpwbVlXeHpaU3hjSW1GMWRHOXdiR0Y1WENJNlptRnNjMlVzWENKc2IyOXdYQ0k2Wm1Gc2MyVXNYQ0p6YUhWbVpteGxYQ0k2Wm1Gc2MyVXNYQ0p3Y21Wc2IyRmtYQ0k2WENJdE1Wd2lMRndpYjNabGNsQmhkWE5sWENJNmRISjFaU3hjSW1WdVpGQmhkWE5sWENJNlptRnNjMlVzWENKb2FXUmxUR0Y1WlhKelhDSTZabUZzYzJVc1hDSmthWEpjSWpwY0ltaGNJaXhjSW5CaGNtRnNiR0Y0VFc5a1pWd2lPbHdpYzNkcGNHVmNJaXhjSW1ObGJuUmxja052Ym5SeWIyeHpYQ0k2ZEhKMVpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2Ym5Wc2JDeGNJbk5yYVc1Y0lqcGNJbTF6TFhOcmFXNHRaR1ZtWVhWc2RGd2lMRndpYlhOVVpXMXdiR0YwWlZ3aU9sd2lZM1Z6ZEc5dFhDSXNYQ0p0YzFSbGJYQnNZWFJsUTJ4aGMzTmNJanBjSWx3aUxGd2lkWE5sWkVadmJuUnpYQ0k2WENKY0luMGlmU3dpVFZOUVlXNWxiQzVUYkdsa1pTSTZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHhNakV0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZOQ3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzh4TWpFdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1hDb0RVOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTWlJNkludGNJbWxrWENJNk1peGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eUxURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pJc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1pNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSnBibVp2WENJNlhDSThhRElnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ016d3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeklqb2llMXdpYVdSY0lqb3pMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RXhMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qTXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVEV1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJqWlc1MFpYSTdYRnhjSWo1VFlXMXdiR1VnVkdsMGJHWENvRFE4TDJneVBqeHdJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNU1iM0psYlNCcGNITjFiU0JrYjJ4dmNpQnphWFFnWVcxbGRDd2dZMjl1YzJWamRHVjBkWElnWVdScGNHbHphV05wYm1jZ1pXeHBkQ3dnYzJWa0lHUnZJR1ZwZFhOdGIyUWdkR1Z0Y0c5eUlHbHVZMmxrYVdSMWJuUWdkWFFnYkdGaWIzSmxJR1YwSUdSdmJHOXlaU0J0WVdkdVlTQmhiR2x4ZFdFdUlGVjBJR1Z1YVcwZ1lXUWdiV2x1YVcwZ2RtVnVhV0Z0TENCeGRXbHpJRzV2YzNSeWRXUWdaWGhsY21OcGRHRjBhVzl1SUhWc2JHRnRZMjhnYkdGaWIzSnBjeUJ1YVhOcElIVjBJR0ZzYVhGMWFYQWdaWGdnWldFZ1kyOXRiVzlrYnlCamIyNXpaWEYxWVhRdUlFUjFhWE1nWVhWMFpTQnBjblZ5WlNCa2IyeHZjaUJwYmlCeVpYQnlaV2hsYm1SbGNtbDBJR2x1SUhadmJIVndkR0YwWlNCMlpXeHBkQ0JsYzNObElHTnBiR3gxYlNCa2IyeHZjbVVnWlhVZ1puVm5hV0YwSUc1MWJHeGhJSEJoY21saGRIVnlMaUJGZUdObGNIUmxkWElnYzJsdWRDQnZZMk5oWldOaGRDQmpkWEJwWkdGMFlYUWdibTl1SUhCeWIybGtaVzUwTENCemRXNTBJR2x1SUdOMWJIQmhJSEYxYVNCdlptWnBZMmxoSUdSbGMyVnlkVzUwSUcxdmJHeHBkQ0JoYm1sdElHbGtJR1Z6ZENCc1lXSnZjblZ0TGp3dmNENWNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lOQ0k2SW50Y0ltbGtYQ0k2TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPalVzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TXk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKcGJtWnZYQ0k2WENJOGFESWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBsTmhiWEJzWlNCVWFYUnNaY0tnTmp3dmFESStQSEFnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQa3h2Y21WdElHbHdjM1Z0SUdSdmJHOXlJSE5wZENCaGJXVjBMQ0JqYjI1elpXTjBaWFIxY2lCaFpHbHdhWE5wWTJsdVp5QmxiR2wwTENCelpXUWdaRzhnWldsMWMyMXZaQ0IwWlcxd2IzSWdhVzVqYVdScFpIVnVkQ0IxZENCc1lXSnZjbVVnWlhRZ1pHOXNiM0psSUcxaFoyNWhJR0ZzYVhGMVlTNGdWWFFnWlc1cGJTQmhaQ0J0YVc1cGJTQjJaVzVwWVcwc0lIRjFhWE1nYm05emRISjFaQ0JsZUdWeVkybDBZWFJwYjI0Z2RXeHNZVzFqYnlCc1lXSnZjbWx6SUc1cGMya2dkWFFnWVd4cGNYVnBjQ0JsZUNCbFlTQmpiMjF0YjJSdklHTnZibk5sY1hWaGRDNGdSSFZwY3lCaGRYUmxJR2x5ZFhKbElHUnZiRzl5SUdsdUlISmxjSEpsYUdWdVpHVnlhWFFnYVc0Z2RtOXNkWEIwWVhSbElIWmxiR2wwSUdWemMyVWdZMmxzYkhWdElHUnZiRzl5WlNCbGRTQm1kV2RwWVhRZ2JuVnNiR0VnY0dGeWFXRjBkWEl1SUVWNFkyVndkR1YxY2lCemFXNTBJRzlqWTJGbFkyRjBJR04xY0dsa1lYUmhkQ0J1YjI0Z2NISnZhV1JsYm5Rc0lITjFiblFnYVc0Z1kzVnNjR0VnY1hWcElHOW1abWxqYVdFZ1pHVnpaWEoxYm5RZ2JXOXNiR2wwSUdGdWFXMGdhV1FnWlhOMElHeGhZbTl5ZFcwdVBDOXdQbHdpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0kxSWpvaWUxd2lhV1JjSWpvMUxGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THprdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2Tml4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4NUxtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltbHVabTljSWpwY0lqeG9NaUJ6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ1kyVnVkR1Z5TzF4Y1hDSStVMkZ0Y0d4bElGUnBkR3hsd3FBM1BDOW9NajQ4Y0NCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU8xeGNYQ0krVEc5eVpXMGdhWEJ6ZFcwZ1pHOXNiM0lnYzJsMElHRnRaWFFzSUdOdmJuTmxZM1JsZEhWeUlHRmthWEJwYzJsamFXNW5JR1ZzYVhRc0lITmxaQ0JrYnlCbGFYVnpiVzlrSUhSbGJYQnZjaUJwYm1OcFpHbGtkVzUwSUhWMElHeGhZbTl5WlNCbGRDQmtiMnh2Y21VZ2JXRm5ibUVnWVd4cGNYVmhMaUJWZENCbGJtbHRJR0ZrSUcxcGJtbHRJSFpsYm1saGJTd2djWFZwY3lCdWIzTjBjblZrSUdWNFpYSmphWFJoZEdsdmJpQjFiR3hoYldOdklHeGhZbTl5YVhNZ2JtbHphU0IxZENCaGJHbHhkV2x3SUdWNElHVmhJR052YlcxdlpHOGdZMjl1YzJWeGRXRjBMaUJFZFdseklHRjFkR1VnYVhKMWNtVWdaRzlzYjNJZ2FXNGdjbVZ3Y21Wb1pXNWtaWEpwZENCcGJpQjJiMngxY0hSaGRHVWdkbVZzYVhRZ1pYTnpaU0JqYVd4c2RXMGdaRzlzYjNKbElHVjFJR1oxWjJsaGRDQnVkV3hzWVNCd1lYSnBZWFIxY2k0Z1JYaGpaWEIwWlhWeUlITnBiblFnYjJOallXVmpZWFFnWTNWd2FXUmhkR0YwSUc1dmJpQndjbTlwWkdWdWRDd2djM1Z1ZENCcGJpQmpkV3h3WVNCeGRXa2diMlptYVdOcFlTQmtaWE5sY25WdWRDQnRiMnhzYVhRZ1lXNXBiU0JwWkNCbGMzUWdiR0ZpYjNKMWJTNDhMM0ErWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpZaU9pSjdYQ0pwWkZ3aU9qWXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk9DMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpveExGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6Z3VhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lhVzVtYjF3aU9sd2lQR2d5SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdYQ29ESThMMmd5UGp4d0lITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJqWlc1MFpYSTdYRnhjSWo1TWIzSmxiU0JwY0hOMWJTQmtiMnh2Y2lCemFYUWdZVzFsZEN3Z1kyOXVjMlZqZEdWMGRYSWdZV1JwY0dsemFXTnBibWNnWld4cGRDd2djMlZrSUdSdklHVnBkWE50YjJRZ2RHVnRjRzl5SUdsdVkybGthV1IxYm5RZ2RYUWdiR0ZpYjNKbElHVjBJR1J2Ykc5eVpTQnRZV2R1WVNCaGJHbHhkV0V1SUZWMElHVnVhVzBnWVdRZ2JXbHVhVzBnZG1WdWFXRnRMQ0J4ZFdseklHNXZjM1J5ZFdRZ1pYaGxjbU5wZEdGMGFXOXVJSFZzYkdGdFkyOGdiR0ZpYjNKcGN5QnVhWE5wSUhWMElHRnNhWEYxYVhBZ1pYZ2daV0VnWTI5dGJXOWtieUJqYjI1elpYRjFZWFF1SUVSMWFYTWdZWFYwWlNCcGNuVnlaU0JrYjJ4dmNpQnBiaUJ5WlhCeVpXaGxibVJsY21sMElHbHVJSFp2YkhWd2RHRjBaU0IyWld4cGRDQmxjM05sSUdOcGJHeDFiU0JrYjJ4dmNtVWdaWFVnWm5WbmFXRjBJRzUxYkd4aElIQmhjbWxoZEhWeUxpQkZlR05sY0hSbGRYSWdjMmx1ZENCdlkyTmhaV05oZENCamRYQnBaR0YwWVhRZ2JtOXVJSEJ5YjJsa1pXNTBMQ0J6ZFc1MElHbHVJR04xYkhCaElIRjFhU0J2Wm1acFkybGhJR1JsYzJWeWRXNTBJRzF2Ykd4cGRDQmhibWx0SUdsa0lHVnpkQ0JzWVdKdmNuVnRMand2Y0Q1Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU55STZJbnRjSW1sa1hDSTZOeXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODBMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qY3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZOQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dPRHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTVJam9pZTF3aWFXUmNJam81TEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMekV6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPakFzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRNdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1VnTVR3dmFESStQSEFnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQa3h2Y21WdElHbHdjM1Z0SUdSdmJHOXlJSE5wZENCaGJXVjBMQ0JqYjI1elpXTjBaWFIxY2lCaFpHbHdhWE5wWTJsdVp5QmxiR2wwTENCelpXUWdaRzhnWldsMWMyMXZaQ0IwWlcxd2IzSWdhVzVqYVdScFpIVnVkQ0IxZENCc1lXSnZjbVVnWlhRZ1pHOXNiM0psSUcxaFoyNWhJR0ZzYVhGMVlTNGdWWFFnWlc1cGJTQmhaQ0J0YVc1cGJTQjJaVzVwWVcwc0lIRjFhWE1nYm05emRISjFaQ0JsZUdWeVkybDBZWFJwYjI0Z2RXeHNZVzFqYnlCc1lXSnZjbWx6SUc1cGMya2dkWFFnWVd4cGNYVnBjQ0JsZUNCbFlTQmpiMjF0YjJSdklHTnZibk5sY1hWaGRDNGdSSFZwY3lCaGRYUmxJR2x5ZFhKbElHUnZiRzl5SUdsdUlISmxjSEpsYUdWdVpHVnlhWFFnYVc0Z2RtOXNkWEIwWVhSbElIWmxiR2wwSUdWemMyVWdZMmxzYkhWdElHUnZiRzl5WlNCbGRTQm1kV2RwWVhRZ2JuVnNiR0VnY0dGeWFXRjBkWEl1SUVWNFkyVndkR1YxY2lCemFXNTBJRzlqWTJGbFkyRjBJR04xY0dsa1lYUmhkQ0J1YjI0Z2NISnZhV1JsYm5Rc0lITjFiblFnYVc0Z1kzVnNjR0VnY1hWcElHOW1abWxqYVdFZ1pHVnpaWEoxYm5RZ2JXOXNiR2wwSUdGdWFXMGdhV1FnWlhOMElHeGhZbTl5ZFcwdVBDOXdQbHdpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l4TWlJNkludGNJbWxrWENJNk1USXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UWXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhOaTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dPVHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSXhOQ0k2SW50Y0ltbGtYQ0k2TVRRc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRVeExURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2prc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1UVXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQXhNRHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaWZTd2lUVk5RWVc1bGJDNURiMjUwY205c0lqcDdJakVpT2lKN1hDSnBaRndpT2x3aU1Wd2lMRndpYkdGaVpXeGNJanBjSWtGeWNtOTNjMXdpTEZ3aWJtRnRaVndpT2x3aVlYSnliM2R6WENJc1hDSmhkWFJ2U0dsa1pWd2lPbVpoYkhObExGd2liM1psY2xacFpHVnZYQ0k2ZEhKMVpTeGNJbWx1YzJWMFhDSTZkSEoxWlgwaUxDSTBJam9pZTF3aWFXUmNJam8wTEZ3aWJHRmlaV3hjSWpwY0lsTnNhV1JsSUVsdVptOWNJaXhjSW01aGJXVmNJanBjSW5Oc2FXUmxhVzVtYjF3aUxGd2lZWFYwYjBocFpHVmNJanBtWVd4elpTeGNJbTkyWlhKV2FXUmxiMXdpT25SeWRXVXNYQ0p0WVhKbmFXNWNJam94TUN4Y0ltRnNhV2R1WENJNlhDSmliM1IwYjIxY0lpeGNJbWx1YzJWMFhDSTZabUZzYzJWOUluMTkiLCJ0eXBlIjoiY3VzdG9tIiwic2xpZGVzX251bSI6IjEwIn19LCJvcmlnaW5fdXBsb2Fkc191cmwiOiJodHRwOlwvXC9kZW1vLmF2ZXJ0YS5uZXRcL3RoZW1lc1wvbG90dXNcL2R1bW15LWFnZW5jeVwvd3AtY29udGVudFwvdXBsb2FkcyJ9',
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTkiOnsidGl0bGUiOiJTaW1wbGUgU2xpZGVyIHdpdGggU2xpZGUgSW5mbyBWMiIsInBhcmFtcyI6ImV5SnRaWFJoSWpwN0lsTmxkSFJwYm1keklXbGtjeUk2SWpFaUxDSlRaWFIwYVc1bmN5RnVaWGgwU1dRaU9qSXNJbE5zYVdSbElXbGtjeUk2SWpFc01pd3pMRFFzTlN3MkxEY3NPU3d4TWl3eE5DSXNJbE5zYVdSbElXNWxlSFJKWkNJNk1UWXNJa052Ym5SeWIyd2hhV1J6SWpvaU1TdzBMRFVzTmlJc0lrTnZiblJ5YjJ3aGJtVjRkRWxrSWpvM2ZTd2lUVk5RWVc1bGJDNVRaWFIwYVc1bmN5STZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5OdVlYQndhVzVuWENJNmRISjFaU3hjSW01aGJXVmNJanBjSWxOcGJYQnNaU0JUYkdsa1pYSWdkMmwwYUNCVGJHbGtaU0JKYm1adklGWXlYQ0lzWENKM2FXUjBhRndpT2pnd01DeGNJbWhsYVdkb2RGd2lPalE0TUN4Y0luZHlZWEJ3WlhKWGFXUjBhRndpT2pFd05qQXNYQ0ozY21Gd2NHVnlWMmxrZEdoVmJtbDBYQ0k2WENKd2VGd2lMRndpWVhWMGIwTnliM0JjSWpwbVlXeHpaU3hjSW5SNWNHVmNJanBjSW1OMWMzUnZiVndpTEZ3aWMyeHBaR1Z5U1dSY0lqcGNJalU1WENJc1hDSnNZWGx2ZFhSY0lqcGNJbUp2ZUdWa1hDSXNYQ0poZFhSdlNHVnBaMmgwWENJNlptRnNjMlVzWENKMGNsWnBaWGRjSWpwY0ltSmhjMmxqWENJc1hDSnpjR1ZsWkZ3aU9qSXdMRndpYzNCaFkyVmNJam93TEZ3aWMzUmhjblJjSWpveExGd2laM0poWWtOMWNuTnZjbHdpT25SeWRXVXNYQ0p6ZDJsd1pWd2lPblJ5ZFdVc1hDSnRiM1Z6WlZ3aU9uUnlkV1VzWENKM2FHVmxiRndpT21aaGJITmxMRndpWVhWMGIzQnNZWGxjSWpwbVlXeHpaU3hjSW14dmIzQmNJanBtWVd4elpTeGNJbk5vZFdabWJHVmNJanBtWVd4elpTeGNJbkJ5Wld4dllXUmNJanBjSWkweFhDSXNYQ0p2ZG1WeVVHRjFjMlZjSWpwMGNuVmxMRndpWlc1a1VHRjFjMlZjSWpwbVlXeHpaU3hjSW1ocFpHVk1ZWGxsY25OY0lqcG1ZV3h6WlN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpY0dGeVlXeHNZWGhOYjJSbFhDSTZYQ0p6ZDJsd1pWd2lMRndpWTJWdWRHVnlRMjl1ZEhKdmJITmNJanAwY25WbExGd2lhVzV6ZEdGdWRGTm9iM2RNWVhsbGNuTmNJanBtWVd4elpTeGNJbUpuUTI5c2IzSmNJanBjSWlNd01EQXdNREJjSWl4Y0luTnJhVzVjSWpwY0ltMXpMWE5yYVc0dGJHbG5hSFF0TWx3aUxGd2liWE5VWlcxd2JHRjBaVndpT2x3aVkzVnpkRzl0WENJc1hDSnRjMVJsYlhCc1lYUmxRMnhoYzNOY0lqcGNJbHdpTEZ3aWRYTmxaRVp2Ym5SelhDSTZYQ0pjSW4waWZTd2lUVk5RWVc1bGJDNVRiR2xrWlNJNmV5SXhJam9pZTF3aWFXUmNJanBjSWpGY0lpeGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eE1qRXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhNakV1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQTFQQzlvTWo0OGNDQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeUlqb2llMXdpYVdSY0lqb3lMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6SXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk1peGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHlMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2diR1ZtZER0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ016d3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTXlJNkludGNJbWxrWENJNk15eGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eE1TMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvekxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6RXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2diR1ZtZER0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ05Ed3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTkNJNkludGNJbWxrWENJNk5DeGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4ekxURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pVc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk15NXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSnBibVp2WENJNlhDSThhRElnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHeGxablE3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1hDb0RZOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQnNaV1owTzF4Y1hDSStURzl5WlcwZ2FYQnpkVzBnWkc5c2IzSWdjMmwwSUdGdFpYUXNJR052Ym5ObFkzUmxkSFZ5SUdGa2FYQnBjMmxqYVc1bklHVnNhWFFzSUhObFpDQmtieUJsYVhWemJXOWtJSFJsYlhCdmNpQnBibU5wWkdsa2RXNTBJSFYwSUd4aFltOXlaU0JsZENCa2IyeHZjbVVnYldGbmJtRWdZV3hwY1hWaExpQlZkQ0JsYm1sdElHRmtJRzFwYm1sdElIWmxibWxoYlN3Z2NYVnBjeUJ1YjNOMGNuVmtJR1Y0WlhKamFYUmhkR2x2YmlCMWJHeGhiV052SUd4aFltOXlhWE1nYm1semFTQjFkQ0JoYkdseGRXbHdJR1Y0SUdWaElHTnZiVzF2Wkc4Z1kyOXVjMlZ4ZFdGMExpQkVkV2x6SUdGMWRHVWdhWEoxY21VZ1pHOXNiM0lnYVc0Z2NtVndjbVZvWlc1a1pYSnBkQ0JwYmlCMmIyeDFjSFJoZEdVZ2RtVnNhWFFnWlhOelpTQmphV3hzZFcwZ1pHOXNiM0psSUdWMUlHWjFaMmxoZENCdWRXeHNZU0J3WVhKcFlYUjFjaTRnUlhoalpYQjBaWFZ5SUhOcGJuUWdiMk5qWVdWallYUWdZM1Z3YVdSaGRHRjBJRzV2YmlCd2NtOXBaR1Z1ZEN3Z2MzVnVkQ0JwYmlCamRXeHdZU0J4ZFdrZ2IyWm1hV05wWVNCa1pYTmxjblZ1ZENCdGIyeHNhWFFnWVc1cGJTQnBaQ0JsYzNRZ2JHRmliM0oxYlM0OEwzQStYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJalVpT2lKN1hDSnBaRndpT2pVc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2T1MweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam8yTEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THprdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCc1pXWjBPMXhjWENJK1UyRnRjR3hsSUZScGRHeGx3cUEzUEM5b01qNDhjQ0J6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kRHRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTJJam9pZTF3aWFXUmNJam8yTEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMemd0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZNU3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzg0TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1sdVptOWNJanBjSWp4b01pQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dNand2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUd4bFpuUTdYRnhjSWo1TWIzSmxiU0JwY0hOMWJTQmtiMnh2Y2lCemFYUWdZVzFsZEN3Z1kyOXVjMlZqZEdWMGRYSWdZV1JwY0dsemFXTnBibWNnWld4cGRDd2djMlZrSUdSdklHVnBkWE50YjJRZ2RHVnRjRzl5SUdsdVkybGthV1IxYm5RZ2RYUWdiR0ZpYjNKbElHVjBJR1J2Ykc5eVpTQnRZV2R1WVNCaGJHbHhkV0V1SUZWMElHVnVhVzBnWVdRZ2JXbHVhVzBnZG1WdWFXRnRMQ0J4ZFdseklHNXZjM1J5ZFdRZ1pYaGxjbU5wZEdGMGFXOXVJSFZzYkdGdFkyOGdiR0ZpYjNKcGN5QnVhWE5wSUhWMElHRnNhWEYxYVhBZ1pYZ2daV0VnWTI5dGJXOWtieUJqYjI1elpYRjFZWFF1SUVSMWFYTWdZWFYwWlNCcGNuVnlaU0JrYjJ4dmNpQnBiaUJ5WlhCeVpXaGxibVJsY21sMElHbHVJSFp2YkhWd2RHRjBaU0IyWld4cGRDQmxjM05sSUdOcGJHeDFiU0JrYjJ4dmNtVWdaWFVnWm5WbmFXRjBJRzUxYkd4aElIQmhjbWxoZEhWeUxpQkZlR05sY0hSbGRYSWdjMmx1ZENCdlkyTmhaV05oZENCamRYQnBaR0YwWVhRZ2JtOXVJSEJ5YjJsa1pXNTBMQ0J6ZFc1MElHbHVJR04xYkhCaElIRjFhU0J2Wm1acFkybGhJR1JsYzJWeWRXNTBJRzF2Ykd4cGRDQmhibWx0SUdsa0lHVnpkQ0JzWVdKdmNuVnRMand2Y0Q1Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU55STZJbnRjSW1sa1hDSTZOeXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODBMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qY3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZOQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdYQ29EZzhMMmd5UGp4d0lITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVEc5eVpXMGdhWEJ6ZFcwZ1pHOXNiM0lnYzJsMElHRnRaWFFzSUdOdmJuTmxZM1JsZEhWeUlHRmthWEJwYzJsamFXNW5JR1ZzYVhRc0lITmxaQ0JrYnlCbGFYVnpiVzlrSUhSbGJYQnZjaUJwYm1OcFpHbGtkVzUwSUhWMElHeGhZbTl5WlNCbGRDQmtiMnh2Y21VZ2JXRm5ibUVnWVd4cGNYVmhMaUJWZENCbGJtbHRJR0ZrSUcxcGJtbHRJSFpsYm1saGJTd2djWFZwY3lCdWIzTjBjblZrSUdWNFpYSmphWFJoZEdsdmJpQjFiR3hoYldOdklHeGhZbTl5YVhNZ2JtbHphU0IxZENCaGJHbHhkV2x3SUdWNElHVmhJR052YlcxdlpHOGdZMjl1YzJWeGRXRjBMaUJFZFdseklHRjFkR1VnYVhKMWNtVWdaRzlzYjNJZ2FXNGdjbVZ3Y21Wb1pXNWtaWEpwZENCcGJpQjJiMngxY0hSaGRHVWdkbVZzYVhRZ1pYTnpaU0JqYVd4c2RXMGdaRzlzYjNKbElHVjFJR1oxWjJsaGRDQnVkV3hzWVNCd1lYSnBZWFIxY2k0Z1JYaGpaWEIwWlhWeUlITnBiblFnYjJOallXVmpZWFFnWTNWd2FXUmhkR0YwSUc1dmJpQndjbTlwWkdWdWRDd2djM1Z1ZENCcGJpQmpkV3h3WVNCeGRXa2diMlptYVdOcFlTQmtaWE5sY25WdWRDQnRiMnhzYVhRZ1lXNXBiU0JwWkNCbGMzUWdiR0ZpYjNKMWJTNDhMM0ErWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpraU9pSjdYQ0pwWkZ3aU9qa3NYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UTXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk1DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhNeTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdVZ01Ud3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTVRJaU9pSjdYQ0pwWkZ3aU9qRXlMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RTJMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qZ3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVFl1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQTVQQzlvTWo0OGNDQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeE5DSTZJbnRjSW1sa1hDSTZNVFFzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZNVFV4TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPamtzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRVeExtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltbHVabTljSWpwY0lqeG9NaUJ6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kRHRjWEZ3aVBsTmhiWEJzWlNCVWFYUnNaY0tnTVRBOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQnNaV1owTzF4Y1hDSStURzl5WlcwZ2FYQnpkVzBnWkc5c2IzSWdjMmwwSUdGdFpYUXNJR052Ym5ObFkzUmxkSFZ5SUdGa2FYQnBjMmxqYVc1bklHVnNhWFFzSUhObFpDQmtieUJsYVhWemJXOWtJSFJsYlhCdmNpQnBibU5wWkdsa2RXNTBJSFYwSUd4aFltOXlaU0JsZENCa2IyeHZjbVVnYldGbmJtRWdZV3hwY1hWaExpQlZkQ0JsYm1sdElHRmtJRzFwYm1sdElIWmxibWxoYlN3Z2NYVnBjeUJ1YjNOMGNuVmtJR1Y0WlhKamFYUmhkR2x2YmlCMWJHeGhiV052SUd4aFltOXlhWE1nYm1semFTQjFkQ0JoYkdseGRXbHdJR1Y0SUdWaElHTnZiVzF2Wkc4Z1kyOXVjMlZ4ZFdGMExpQkVkV2x6SUdGMWRHVWdhWEoxY21VZ1pHOXNiM0lnYVc0Z2NtVndjbVZvWlc1a1pYSnBkQ0JwYmlCMmIyeDFjSFJoZEdVZ2RtVnNhWFFnWlhOelpTQmphV3hzZFcwZ1pHOXNiM0psSUdWMUlHWjFaMmxoZENCdWRXeHNZU0J3WVhKcFlYUjFjaTRnUlhoalpYQjBaWFZ5SUhOcGJuUWdiMk5qWVdWallYUWdZM1Z3YVdSaGRHRjBJRzV2YmlCd2NtOXBaR1Z1ZEN3Z2MzVnVkQ0JwYmlCamRXeHdZU0J4ZFdrZ2IyWm1hV05wWVNCa1pYTmxjblZ1ZENCdGIyeHNhWFFnWVc1cGJTQnBaQ0JsYzNRZ2JHRmliM0oxYlM0OEwzQStYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSjlMQ0pOVTFCaGJtVnNMa052Ym5SeWIyd2lPbnNpTVNJNkludGNJbWxrWENJNlhDSXhYQ0lzWENKc1lXSmxiRndpT2x3aVFYSnliM2R6WENJc1hDSnVZVzFsWENJNlhDSmhjbkp2ZDNOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYVc1elpYUmNJanAwY25WbGZTSXNJalFpT2lKN1hDSnBaRndpT2pRc1hDSnNZV0psYkZ3aU9sd2lVMnhwWkdVZ1NXNW1iMXdpTEZ3aWJtRnRaVndpT2x3aWMyeHBaR1ZwYm1adlhDSXNYQ0poZFhSdlNHbGtaVndpT21aaGJITmxMRndpYjNabGNsWnBaR1Z2WENJNmRISjFaU3hjSW0xaGNtZHBibHdpT2pFd0xGd2lkMmxrZEdoY0lqb3lOVEFzWENKaGJHbG5ibHdpT2x3aWNtbG5hSFJjSWl4Y0ltbHVjMlYwWENJNlptRnNjMlY5SWl3aU5TSTZJbnRjSW1sa1hDSTZOU3hjSW14aFltVnNYQ0k2WENKVFkzSnZiR3hpWVhKY0lpeGNJbTVoYldWY0lqcGNJbk5qY205c2JHSmhjbHdpTEZ3aVlYVjBiMGhwWkdWY0lqcG1ZV3h6WlN4Y0ltOTJaWEpXYVdSbGIxd2lPblJ5ZFdVc1hDSnRZWEpuYVc1Y0lqb3hNQ3hjSW1ScGNsd2lPbHdpYUZ3aUxGd2lZMjlzYjNKY0lqcGNJaU16UkRORU0wUmNJaXhjSW5kcFpIUm9YQ0k2TkN4Y0ltRnNhV2R1WENJNlhDSjBiM0JjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJMklqb2llMXdpYVdSY0lqbzJMRndpYkdGaVpXeGNJanBjSWtKMWJHeGxkSE5jSWl4Y0ltNWhiV1ZjSWpwY0ltSjFiR3hsZEhOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2ZEhKMVpTeGNJbTkyWlhKV2FXUmxiMXdpT25SeWRXVXNYQ0p0WVhKbmFXNWNJam94TUN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpWVd4cFoyNWNJanBjSW1KdmRIUnZiVndpTEZ3aWFXNXpaWFJjSWpwMGNuVmxmU0o5ZlE9PSIsInR5cGUiOiJjdXN0b20iLCJzbGlkZXNfbnVtIjoiMTAifX0sIm9yaWdpbl91cGxvYWRzX3VybCI6Imh0dHA6XC9cL2RlbW8uYXZlcnRhLm5ldFwvdGhlbWVzXC9sb3R1c1wvZHVtbXktYWdlbmN5XC93cC1jb250ZW50XC91cGxvYWRzIn0=',
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
}
|
119 |
|
120 |
|
121 |
|
122 |
function msp_get_slider_starter_field( $field_id ){
|
123 |
-
|
124 |
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
|
133 |
-
|
134 |
}
|
4 |
|
5 |
$sections = array(
|
6 |
array(
|
7 |
+
'id' => 'main_types',
|
8 |
+
'title' => __( 'Slider Types', 'master-slider' ),
|
9 |
'desc' => ''
|
10 |
),
|
11 |
array(
|
12 |
+
'id' => 'masterslider_samples_group1',
|
13 |
+
'title' => __( 'Sample Sliders', 'master-slider' ),
|
14 |
'desc' => ''
|
15 |
)
|
16 |
);
|
21 |
|
22 |
function msp_get_slider_starter_fields () {
|
23 |
|
24 |
+
$starters = array();
|
25 |
+
|
26 |
+
$starters['main_types'] = array(
|
27 |
+
|
28 |
+
array(
|
29 |
+
'label' => __( 'Custom Slider', 'master-slider' ),
|
30 |
+
'id' => 'custom-slider',
|
31 |
+
'slidertype'=> 'custom',
|
32 |
+
'importdata'=> '',
|
33 |
+
'image_dir' => '',
|
34 |
+
'selected' => 'true',
|
35 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/slider-types/pt_custom.png'
|
36 |
+
)
|
37 |
+
|
38 |
+
);
|
39 |
+
|
40 |
+
$starters['masterslider_samples_group1'] = array(
|
41 |
+
|
42 |
+
array(
|
43 |
+
'label' => __( 'Slider with Horizontal Thumbnails', 'master-slider' ),
|
44 |
+
'id' => 'slider-with-thumbs-1',
|
45 |
+
'slidertype'=> 'custom',
|
46 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTIiOnsidGl0bGUiOiJTbGlkZXIgd2l0aCBIb3Jpem9udGFsIFRodW1ibmFpbHMiLCJwYXJhbXMiOiJleUp0WlhSaElqcDdJbE5sZEhScGJtZHpJV2xrY3lJNklqRWlMQ0pUWlhSMGFXNW5jeUZ1WlhoMFNXUWlPaklzSWxOc2FXUmxJV2xrY3lJNklqRXNNaXd6TERRc05TdzJMRGNzT1N3eE1pd3hOQ0lzSWxOc2FXUmxJVzVsZUhSSlpDSTZNVFVzSWtOdmJuUnliMndoYVdSeklqb2lNU3d5TERNaUxDSkRiMjUwY205c0lXNWxlSFJKWkNJNk5IMHNJazFUVUdGdVpXd3VVMlYwZEdsdVozTWlPbnNpTVNJNkludGNJbWxrWENJNlhDSXhYQ0lzWENKemJtRndjR2x1WjF3aU9uUnlkV1VzWENKdVlXMWxYQ0k2WENKVGJHbGtaWElnZDJsMGFDQkliM0pwZW05dWRHRnNJRlJvZFcxaWJtRnBiSE5jSWl4Y0luZHBaSFJvWENJNk9EQXdMRndpYUdWcFoyaDBYQ0k2TkRnd0xGd2lkM0poY0hCbGNsZHBaSFJvWENJNk9EQXdMRndpZDNKaGNIQmxjbGRwWkhSb1ZXNXBkRndpT2x3aWNIaGNJaXhjSW1GMWRHOURjbTl3WENJNlptRnNjMlVzWENKMGVYQmxYQ0k2WENKamRYTjBiMjFjSWl4Y0luTnNhV1JsY2tsa1hDSTZYQ0kxTWx3aUxGd2liR0Y1YjNWMFhDSTZYQ0ppYjNobFpGd2lMRndpWVhWMGIwaGxhV2RvZEZ3aU9tWmhiSE5sTEZ3aWRISldhV1YzWENJNlhDSmlZWE5wWTF3aUxGd2ljM0JsWldSY0lqb3lNQ3hjSW5Od1lXTmxYQ0k2TUN4Y0luTjBZWEowWENJNk1TeGNJbWR5WVdKRGRYSnpiM0pjSWpwMGNuVmxMRndpYzNkcGNHVmNJanAwY25WbExGd2liVzkxYzJWY0lqcDBjblZsTEZ3aWQyaGxaV3hjSWpwbVlXeHpaU3hjSW1GMWRHOXdiR0Y1WENJNlptRnNjMlVzWENKc2IyOXdYQ0k2Wm1Gc2MyVXNYQ0p6YUhWbVpteGxYQ0k2Wm1Gc2MyVXNYQ0p3Y21Wc2IyRmtYQ0k2WENJdE1Wd2lMRndpYjNabGNsQmhkWE5sWENJNmRISjFaU3hjSW1WdVpGQmhkWE5sWENJNlptRnNjMlVzWENKb2FXUmxUR0Y1WlhKelhDSTZabUZzYzJVc1hDSmthWEpjSWpwY0ltaGNJaXhjSW5CaGNtRnNiR0Y0VFc5a1pWd2lPbHdpYzNkcGNHVmNJaXhjSW1ObGJuUmxja052Ym5SeWIyeHpYQ0k2ZEhKMVpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2WENJak1EQXdNREF3WENJc1hDSnphMmx1WENJNlhDSnRjeTF6YTJsdUxXUmxabUYxYkhSY0lpeGNJbTF6VkdWdGNHeGhkR1ZjSWpwY0ltTjFjM1J2YlZ3aUxGd2liWE5VWlcxd2JHRjBaVU5zWVhOelhDSTZYQ0pjSWl4Y0luVnpaV1JHYjI1MGMxd2lPbHdpWENKOUluMHNJazFUVUdGdVpXd3VVMnhwWkdVaU9uc2lNU0k2SW50Y0ltbGtYQ0k2WENJeFhDSXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1USXhMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qQXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVEl4TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lNaUk2SW50Y0ltbGtYQ0k2TWl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh5TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPakVzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TWk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJak1pT2lKN1hDSnBaRndpT2pNc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TWl4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE1TNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpRaU9pSjdYQ0pwWkZ3aU9qUXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk15MHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvekxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6TXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJMUlqb2llMXdpYVdSY0lqbzFMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6a3RNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DODVMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU5pSTZJbnRjSW1sa1hDSTZOaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODRMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qVXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZPQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqY2lPaUo3WENKcFpGd2lPamNzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZOQzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzJMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMelF1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTVJam9pZTF3aWFXUmNJam81TEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMekV6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPamNzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRNdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l4TWlJNkludGNJbWxrWENJNk1USXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UWXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhOaTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqRTBJam9pZTF3aWFXUmNJam94TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TlRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2T1N4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE5URXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpZlN3aVRWTlFZVzVsYkM1RGIyNTBjbTlzSWpwN0lqRWlPaUo3WENKcFpGd2lPbHdpTVZ3aUxGd2liR0ZpWld4Y0lqcGNJa0Z5Y205M2Mxd2lMRndpYm1GdFpWd2lPbHdpWVhKeWIzZHpYQ0lzWENKaGRYUnZTR2xrWlZ3aU9tWmhiSE5sTEZ3aWIzWmxjbFpwWkdWdlhDSTZkSEoxWlN4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJeUlqb2llMXdpYVdSY0lqb3lMRndpYkdGaVpXeGNJanBjSWtKMWJHeGxkSE5jSWl4Y0ltNWhiV1ZjSWpwY0ltSjFiR3hsZEhOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYldGeVoybHVYQ0k2TVRBc1hDSmthWEpjSWpwY0ltaGNJaXhjSW1Gc2FXZHVYQ0k2WENKaWIzUjBiMjFjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJeklqb2llMXdpYVdSY0lqb3pMRndpYkdGaVpXeGNJanBjSWxSb2RXMWliR2x6ZEM5VVlXSnpYQ0lzWENKdVlXMWxYQ0k2WENKMGFIVnRZbXhwYzNSY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYldGeVoybHVYQ0k2TlN4Y0luTndZV05sWENJNk5TeGNJbmRwWkhSb1hDSTZNVFF3TEZ3aWFHVnBaMmgwWENJNk9EQXNYQ0poYkdsbmJsd2lPbHdpWW05MGRHOXRYQ0lzWENKcGJuTmxkRndpT21aaGJITmxMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSW4waWZYMD0iLCJ0eXBlIjoiY3VzdG9tIiwic2xpZGVzX251bSI6IjEwIn19LCJvcmlnaW5fdXBsb2Fkc191cmwiOiJodHRwOlwvXC9kZW1vLmF2ZXJ0YS5uZXRcL3RoZW1lc1wvbG90dXNcL2R1bW15LWFnZW5jeVwvd3AtY29udGVudFwvdXBsb2FkcyJ9',
|
47 |
+
'image_dir' => '',
|
48 |
+
'selected' => '',
|
49 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/slider-with-horizontal-thumbs.jpg'
|
50 |
+
),
|
51 |
+
array(
|
52 |
+
'label' => __( 'Slider Without Thumbnails', 'master-slider' ),
|
53 |
+
'id' => 'slider-without-thumbs-1',
|
54 |
+
'slidertype'=> 'custom',
|
55 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTMiOnsidGl0bGUiOiJTbGlkZXIgV2l0aG91dCBUaHVtYm5haWxzIiwicGFyYW1zIjoiZXlKdFpYUmhJanA3SWxObGRIUnBibWR6SVdsa2N5STZJakVpTENKVFpYUjBhVzVuY3lGdVpYaDBTV1FpT2pJc0lsTnNhV1JsSVdsa2N5STZJakVzTWl3ekxEUXNOU3cyTERjc09Td3hNaXd4TkNJc0lsTnNhV1JsSVc1bGVIUkpaQ0k2TVRVc0lrTnZiblJ5YjJ3aGFXUnpJam9pTVNJc0lrTnZiblJ5YjJ3aGJtVjRkRWxrSWpvMGZTd2lUVk5RWVc1bGJDNVRaWFIwYVc1bmN5STZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5OdVlYQndhVzVuWENJNmRISjFaU3hjSW01aGJXVmNJanBjSWxOc2FXUmxjaUJYYVhSb2IzVjBJRlJvZFcxaWJtRnBiSE5jSWl4Y0luZHBaSFJvWENJNk9EQXdMRndpYUdWcFoyaDBYQ0k2TkRnd0xGd2lkM0poY0hCbGNsZHBaSFJvWENJNk9EQXdMRndpZDNKaGNIQmxjbGRwWkhSb1ZXNXBkRndpT2x3aWNIaGNJaXhjSW1GMWRHOURjbTl3WENJNlptRnNjMlVzWENKMGVYQmxYQ0k2WENKamRYTjBiMjFjSWl4Y0luTnNhV1JsY2tsa1hDSTZYQ0kxTTF3aUxGd2liR0Y1YjNWMFhDSTZYQ0ppYjNobFpGd2lMRndpWVhWMGIwaGxhV2RvZEZ3aU9tWmhiSE5sTEZ3aWRISldhV1YzWENJNlhDSmlZWE5wWTF3aUxGd2ljM0JsWldSY0lqb3lNQ3hjSW5Od1lXTmxYQ0k2TUN4Y0luTjBZWEowWENJNk1TeGNJbWR5WVdKRGRYSnpiM0pjSWpwMGNuVmxMRndpYzNkcGNHVmNJanAwY25WbExGd2liVzkxYzJWY0lqcDBjblZsTEZ3aWQyaGxaV3hjSWpwbVlXeHpaU3hjSW1GMWRHOXdiR0Y1WENJNlptRnNjMlVzWENKc2IyOXdYQ0k2Wm1Gc2MyVXNYQ0p6YUhWbVpteGxYQ0k2Wm1Gc2MyVXNYQ0p3Y21Wc2IyRmtYQ0k2WENJdE1Wd2lMRndpYjNabGNsQmhkWE5sWENJNmRISjFaU3hjSW1WdVpGQmhkWE5sWENJNlptRnNjMlVzWENKb2FXUmxUR0Y1WlhKelhDSTZabUZzYzJVc1hDSmthWEpjSWpwY0ltaGNJaXhjSW5CaGNtRnNiR0Y0VFc5a1pWd2lPbHdpYzNkcGNHVmNJaXhjSW1ObGJuUmxja052Ym5SeWIyeHpYQ0k2ZEhKMVpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2WENJak1EQXdNREF3WENJc1hDSnphMmx1WENJNlhDSnRjeTF6YTJsdUxXUmxabUYxYkhSY0lpeGNJbTF6VkdWdGNHeGhkR1ZjSWpwY0ltTjFjM1J2YlZ3aUxGd2liWE5VWlcxd2JHRjBaVU5zWVhOelhDSTZYQ0pjSWl4Y0luVnpaV1JHYjI1MGMxd2lPbHdpWENKOUluMHNJazFUVUdGdVpXd3VVMnhwWkdVaU9uc2lNU0k2SW50Y0ltbGtYQ0k2WENJeFhDSXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1USXhMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qUXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVEl4TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lNaUk2SW50Y0ltbGtYQ0k2TWl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh5TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPaklzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TWk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJak1pT2lKN1hDSnBaRndpT2pNc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TXl4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE1TNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpRaU9pSjdYQ0pwWkZ3aU9qUXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk15MHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvMUxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6TXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJMUlqb2llMXdpYVdSY0lqbzFMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6a3RNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5peGNJbUpuWENJNlhDSXZNakF4TWk4eE1DODVMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU5pSTZJbnRjSW1sa1hDSTZOaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODRMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qRXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZPQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqY2lPaUo3WENKcFpGd2lPamNzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZOQzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzNMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMelF1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTVJam9pZTF3aWFXUmNJam81TEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMekV6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPakFzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRNdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l4TWlJNkludGNJbWxrWENJNk1USXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UWXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhOaTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqRTBJam9pZTF3aWFXUmNJam94TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TlRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2T1N4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE5URXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpZlN3aVRWTlFZVzVsYkM1RGIyNTBjbTlzSWpwN0lqRWlPaUo3WENKcFpGd2lPbHdpTVZ3aUxGd2liR0ZpWld4Y0lqcGNJa0Z5Y205M2Mxd2lMRndpYm1GdFpWd2lPbHdpWVhKeWIzZHpYQ0lzWENKaGRYUnZTR2xrWlZ3aU9tWmhiSE5sTEZ3aWIzWmxjbFpwWkdWdlhDSTZkSEoxWlN4Y0ltbHVjMlYwWENJNmRISjFaWDBpZlgwPSIsInR5cGUiOiJjdXN0b20iLCJzbGlkZXNfbnVtIjoiMTAifX0sIm9yaWdpbl91cGxvYWRzX3VybCI6Imh0dHA6XC9cL2RlbW8uYXZlcnRhLm5ldFwvdGhlbWVzXC9sb3R1c1wvZHVtbXktYWdlbmN5XC93cC1jb250ZW50XC91cGxvYWRzIn0=',
|
56 |
+
'image_dir' => '',
|
57 |
+
'selected' => '',
|
58 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/simple-slider.jpg'
|
59 |
+
),
|
60 |
+
array(
|
61 |
+
'label' => __( 'Slider with Vertical Thumbnails', 'master-slider' ),
|
62 |
+
'id' => 'slider-with-thumbs-2',
|
63 |
+
'slidertype'=> 'custom',
|
64 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTQiOnsidGl0bGUiOiJTbGlkZXIgd2l0aCBWZXJ0aWNhbCBUaHVtYm5haWxzIiwicGFyYW1zIjoiZXlKdFpYUmhJanA3SWxObGRIUnBibWR6SVdsa2N5STZJakVpTENKVFpYUjBhVzVuY3lGdVpYaDBTV1FpT2pJc0lsTnNhV1JsSVdsa2N5STZJakVzTWl3ekxEUXNOU3cyTERjc09Td3hNaXd4TkNJc0lsTnNhV1JsSVc1bGVIUkpaQ0k2TVRVc0lrTnZiblJ5YjJ3aGFXUnpJam9pTVN3eUxETWlMQ0pEYjI1MGNtOXNJVzVsZUhSSlpDSTZOSDBzSWsxVFVHRnVaV3d1VTJWMGRHbHVaM01pT25zaU1TSTZJbnRjSW1sa1hDSTZYQ0l4WENJc1hDSnpibUZ3Y0dsdVoxd2lPblJ5ZFdVc1hDSnVZVzFsWENJNlhDSlRiR2xrWlhJZ2QybDBhQ0JXWlhKMGFXTmhiQ0JVYUhWdFltNWhhV3h6WENJc1hDSjNhV1IwYUZ3aU9qZ3dNQ3hjSW1obGFXZG9kRndpT2pRNE1DeGNJbmR5WVhCd1pYSlhhV1IwYUZ3aU9qazBOU3hjSW5keVlYQndaWEpYYVdSMGFGVnVhWFJjSWpwY0luQjRYQ0lzWENKaGRYUnZRM0p2Y0Z3aU9tWmhiSE5sTEZ3aWRIbHdaVndpT2x3aVkzVnpkRzl0WENJc1hDSnpiR2xrWlhKSlpGd2lPbHdpTlRSY0lpeGNJbXhoZVc5MWRGd2lPbHdpWW05NFpXUmNJaXhjSW1GMWRHOUlaV2xuYUhSY0lqcG1ZV3h6WlN4Y0luUnlWbWxsZDF3aU9sd2lZbUZ6YVdOY0lpeGNJbk53WldWa1hDSTZNakFzWENKemNHRmpaVndpT2pBc1hDSnpkR0Z5ZEZ3aU9qRXNYQ0puY21GaVEzVnljMjl5WENJNmRISjFaU3hjSW5OM2FYQmxYQ0k2ZEhKMVpTeGNJbTF2ZFhObFhDSTZkSEoxWlN4Y0luZG9aV1ZzWENJNlptRnNjMlVzWENKaGRYUnZjR3hoZVZ3aU9tWmhiSE5sTEZ3aWJHOXZjRndpT25SeWRXVXNYQ0p6YUhWbVpteGxYQ0k2Wm1Gc2MyVXNYQ0p3Y21Wc2IyRmtYQ0k2WENJdE1Wd2lMRndpYjNabGNsQmhkWE5sWENJNmRISjFaU3hjSW1WdVpGQmhkWE5sWENJNlptRnNjMlVzWENKb2FXUmxUR0Y1WlhKelhDSTZabUZzYzJVc1hDSmthWEpjSWpwY0ltaGNJaXhjSW5CaGNtRnNiR0Y0VFc5a1pWd2lPbHdpYzNkcGNHVmNJaXhjSW1ObGJuUmxja052Ym5SeWIyeHpYQ0k2ZEhKMVpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2WENJak1EQXdNREF3WENJc1hDSnphMmx1WENJNlhDSnRjeTF6YTJsdUxXUmxabUYxYkhSY0lpeGNJbTF6VkdWdGNHeGhkR1ZjSWpwY0ltTjFjM1J2YlZ3aUxGd2liWE5VWlcxd2JHRjBaVU5zWVhOelhDSTZYQ0pjSWl4Y0luVnpaV1JHYjI1MGMxd2lPbHdpWENKOUluMHNJazFUVUdGdVpXd3VVMnhwWkdVaU9uc2lNU0k2SW50Y0ltbGtYQ0k2WENJeFhDSXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1USXhMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qQXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVEl4TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lNaUk2SW50Y0ltbGtYQ0k2TWl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh5TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPakVzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TWk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJak1pT2lKN1hDSnBaRndpT2pNc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TWl4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE1TNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpRaU9pSjdYQ0pwWkZ3aU9qUXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk15MHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvekxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6TXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJMUlqb2llMXdpYVdSY0lqbzFMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6a3RNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DODVMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU5pSTZJbnRjSW1sa1hDSTZOaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODRMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qVXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZPQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqY2lPaUo3WENKcFpGd2lPamNzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZOQzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzJMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMelF1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTVJam9pZTF3aWFXUmNJam81TEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMekV6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPamNzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRNdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l4TWlJNkludGNJbWxrWENJNk1USXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UWXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhOaTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqRTBJam9pZTF3aWFXUmNJam94TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TlRFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2T1N4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE5URXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpZlN3aVRWTlFZVzVsYkM1RGIyNTBjbTlzSWpwN0lqRWlPaUo3WENKcFpGd2lPbHdpTVZ3aUxGd2liR0ZpWld4Y0lqcGNJa0Z5Y205M2Mxd2lMRndpYm1GdFpWd2lPbHdpWVhKeWIzZHpYQ0lzWENKaGRYUnZTR2xrWlZ3aU9tWmhiSE5sTEZ3aWIzWmxjbFpwWkdWdlhDSTZkSEoxWlN4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJeUlqb2llMXdpYVdSY0lqb3lMRndpYkdGaVpXeGNJanBjSWtKMWJHeGxkSE5jSWl4Y0ltNWhiV1ZjSWpwY0ltSjFiR3hsZEhOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYldGeVoybHVYQ0k2TVRBc1hDSmthWEpjSWpwY0ltaGNJaXhjSW1Gc2FXZHVYQ0k2WENKaWIzUjBiMjFjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJeklqb2llMXdpYVdSY0lqb3pMRndpYkdGaVpXeGNJanBjSWxSb2RXMWliR2x6ZEM5VVlXSnpYQ0lzWENKdVlXMWxYQ0k2WENKMGFIVnRZbXhwYzNSY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYldGeVoybHVYQ0k2TlN4Y0luTndZV05sWENJNk5TeGNJbmRwWkhSb1hDSTZNVFF3TEZ3aWFHVnBaMmgwWENJNk9EQXNYQ0poYkdsbmJsd2lPbHdpY21sbmFIUmNJaXhjSW1sdWMyVjBYQ0k2Wm1Gc2MyVXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpZlNKOWZRPT0iLCJ0eXBlIjoiY3VzdG9tIiwic2xpZGVzX251bSI6IjEwIn19LCJvcmlnaW5fdXBsb2Fkc191cmwiOiJodHRwOlwvXC9kZW1vLmF2ZXJ0YS5uZXRcL3RoZW1lc1wvbG90dXNcL2R1bW15LWFnZW5jeVwvd3AtY29udGVudFwvdXBsb2FkcyJ9',
|
65 |
+
'image_dir' => '',
|
66 |
+
'selected' => '',
|
67 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/slider-with-vertical-thumbs.jpg'
|
68 |
+
),
|
69 |
+
array(
|
70 |
+
'label' => __( 'Fullwidth Slider', 'master-slider' ),
|
71 |
+
'id' => 'fullwith-without-thumbs-1',
|
72 |
+
'slidertype'=> 'custom',
|
73 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTUiOnsidGl0bGUiOiJGdWxsd2lkdGggU2xpZGVyIiwicGFyYW1zIjoiZXlKdFpYUmhJanA3SWxObGRIUnBibWR6SVdsa2N5STZJakVpTENKVFpYUjBhVzVuY3lGdVpYaDBTV1FpT2pJc0lsTnNhV1JsSVdsa2N5STZJakVzTWl3ekxEUXNOU3cyTERjc09Td3hNaXd4TkNJc0lsTnNhV1JsSVc1bGVIUkpaQ0k2TVRVc0lrTnZiblJ5YjJ3aGFXUnpJam9pTVN3eUxEUWlMQ0pEYjI1MGNtOXNJVzVsZUhSSlpDSTZOWDBzSWsxVFVHRnVaV3d1VTJWMGRHbHVaM01pT25zaU1TSTZJbnRjSW1sa1hDSTZYQ0l4WENJc1hDSnpibUZ3Y0dsdVoxd2lPblJ5ZFdVc1hDSnVZVzFsWENJNlhDSkdkV3hzZDJsa2RHZ2dVMnhwWkdWeVhDSXNYQ0ozYVdSMGFGd2lPamd3TUN4Y0ltaGxhV2RvZEZ3aU9qUTRNQ3hjSW5keVlYQndaWEpYYVdSMGFGd2lPamswTlN4Y0luZHlZWEJ3WlhKWGFXUjBhRlZ1YVhSY0lqcGNJbkI0WENJc1hDSmhkWFJ2UTNKdmNGd2lPbVpoYkhObExGd2lkSGx3WlZ3aU9sd2lZM1Z6ZEc5dFhDSXNYQ0p6Ykdsa1pYSkpaRndpT2x3aU5UVmNJaXhjSW14aGVXOTFkRndpT2x3aVpuVnNiSGRwWkhSb1hDSXNYQ0poZFhSdlNHVnBaMmgwWENJNlptRnNjMlVzWENKMGNsWnBaWGRjSWpwY0ltSmhjMmxqWENJc1hDSnpjR1ZsWkZ3aU9qSXdMRndpYzNCaFkyVmNJam93TEZ3aWMzUmhjblJjSWpveExGd2laM0poWWtOMWNuTnZjbHdpT25SeWRXVXNYQ0p6ZDJsd1pWd2lPblJ5ZFdVc1hDSnRiM1Z6WlZ3aU9uUnlkV1VzWENKM2FHVmxiRndpT21aaGJITmxMRndpWVhWMGIzQnNZWGxjSWpwbVlXeHpaU3hjSW14dmIzQmNJanBtWVd4elpTeGNJbk5vZFdabWJHVmNJanBtWVd4elpTeGNJbkJ5Wld4dllXUmNJanBjSWkweFhDSXNYQ0p2ZG1WeVVHRjFjMlZjSWpwMGNuVmxMRndpWlc1a1VHRjFjMlZjSWpwbVlXeHpaU3hjSW1ocFpHVk1ZWGxsY25OY0lqcG1ZV3h6WlN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpY0dGeVlXeHNZWGhOYjJSbFhDSTZYQ0p6ZDJsd1pWd2lMRndpWTJWdWRHVnlRMjl1ZEhKdmJITmNJanBtWVd4elpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2WENJak1EQXdNREF3WENJc1hDSnphMmx1WENJNlhDSnRjeTF6YTJsdUxXeHBaMmgwTFRZZ2NtOTFibVF0YzJ0cGJsd2lMRndpYlhOVVpXMXdiR0YwWlZ3aU9sd2lZM1Z6ZEc5dFhDSXNYQ0p0YzFSbGJYQnNZWFJsUTJ4aGMzTmNJanBjSWx3aUxGd2lkWE5sWkVadmJuUnpYQ0k2WENKY0luMGlmU3dpVFZOUVlXNWxiQzVUYkdsa1pTSTZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHhNakV0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZNU3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzh4TWpFdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l5SWpvaWUxd2lhV1JjSWpveUxGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THpJdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TUN4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eUxtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTXlJNkludGNJbWxrWENJNk15eGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eE1TMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvekxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6RXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU5DSTZJbnRjSW1sa1hDSTZOQ3hjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHpMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qSXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNeTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqVWlPaUo3WENKcFpGd2lPalVzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZPUzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzFMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMemt1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTJJam9pZTF3aWFXUmNJam8yTEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMemd0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZOQ3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzg0TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lOeUk2SW50Y0ltbGtYQ0k2Tnl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzgwTFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPamNzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TkM1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJamtpT2lKN1hDSnBaRndpT2prc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRNdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2T0N4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE15NXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpFeUlqb2llMXdpYVdSY0lqb3hNaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHhOaTB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzVMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMekUyTG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lNVFFpT2lKN1hDSnBaRndpT2pFMExGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THpFMU1TMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvMkxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6RTFNUzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNKOUxDSk5VMUJoYm1Wc0xrTnZiblJ5YjJ3aU9uc2lNU0k2SW50Y0ltbGtYQ0k2WENJeFhDSXNYQ0pzWVdKbGJGd2lPbHdpUVhKeWIzZHpYQ0lzWENKdVlXMWxYQ0k2WENKaGNuSnZkM05jSWl4Y0ltRjFkRzlJYVdSbFhDSTZabUZzYzJVc1hDSnZkbVZ5Vm1sa1pXOWNJanAwY25WbExGd2lhVzV6WlhSY0lqcDBjblZsZlNJc0lqSWlPaUo3WENKcFpGd2lPaklzWENKc1lXSmxiRndpT2x3aVFuVnNiR1YwYzF3aUxGd2libUZ0WlZ3aU9sd2lZblZzYkdWMGMxd2lMRndpWVhWMGIwaHBaR1ZjSWpwbVlXeHpaU3hjSW05MlpYSldhV1JsYjF3aU9uUnlkV1VzWENKdFlYSm5hVzVjSWpveE1DeGNJbVJwY2x3aU9sd2lhRndpTEZ3aVlXeHBaMjVjSWpwY0ltSnZkSFJ2YlZ3aUxGd2lhVzV6WlhSY0lqcDBjblZsZlNJc0lqUWlPaUo3WENKcFpGd2lPalFzWENKc1lXSmxiRndpT2x3aVUyTnliMnhzWW1GeVhDSXNYQ0p1WVcxbFhDSTZYQ0p6WTNKdmJHeGlZWEpjSWl4Y0ltRjFkRzlJYVdSbFhDSTZkSEoxWlN4Y0ltOTJaWEpXYVdSbGIxd2lPblJ5ZFdVc1hDSnRZWEpuYVc1Y0lqb3hNQ3hjSW1ScGNsd2lPbHdpYUZ3aUxGd2lZMjlzYjNKY0lqcGNJaU0wTURRd05EQmNJaXhjSW5kcFpIUm9YQ0k2TkN4Y0ltRnNhV2R1WENJNlhDSjBiM0JjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpZlgwPSIsInR5cGUiOiJjdXN0b20iLCJzbGlkZXNfbnVtIjoiMTAifX0sIm9yaWdpbl91cGxvYWRzX3VybCI6Imh0dHA6XC9cL2RlbW8uYXZlcnRhLm5ldFwvdGhlbWVzXC9sb3R1c1wvZHVtbXktYWdlbmN5XC93cC1jb250ZW50XC91cGxvYWRzIn0=',
|
74 |
+
'image_dir' => '',
|
75 |
+
'selected' => '',
|
76 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/fullwidth-slider.jpg'
|
77 |
+
),
|
78 |
+
array(
|
79 |
+
'label' => __( 'Simple Autoplay Slider', 'master-slider' ),
|
80 |
+
'id' => 'slider-autoplay-1',
|
81 |
+
'slidertype'=> 'custom',
|
82 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTYiOnsidGl0bGUiOiJTaW1wbGUgQXV0b3BsYXkgU2xpZGVyIiwicGFyYW1zIjoiZXlKdFpYUmhJanA3SWxObGRIUnBibWR6SVdsa2N5STZJakVpTENKVFpYUjBhVzVuY3lGdVpYaDBTV1FpT2pJc0lsTnNhV1JsSVdsa2N5STZJakVzTWl3ekxEUXNOU3cyTERjc09Td3hNaXd4TkNJc0lsTnNhV1JsSVc1bGVIUkpaQ0k2TVRVc0lrTnZiblJ5YjJ3aGFXUnpJam9pTVN3MExEVXNOaUlzSWtOdmJuUnliMndoYm1WNGRFbGtJam8zZlN3aVRWTlFZVzVsYkM1VFpYUjBhVzVuY3lJNmV5SXhJam9pZTF3aWFXUmNJanBjSWpGY0lpeGNJbk51WVhCd2FXNW5YQ0k2ZEhKMVpTeGNJbTVoYldWY0lqcGNJbE5wYlhCc1pTQkJkWFJ2Y0d4aGVTQlRiR2xrWlhKY0lpeGNJbmRwWkhSb1hDSTZPREF3TEZ3aWFHVnBaMmgwWENJNk5EZ3dMRndpZDNKaGNIQmxjbGRwWkhSb1hDSTZPREF3TEZ3aWQzSmhjSEJsY2xkcFpIUm9WVzVwZEZ3aU9sd2ljSGhjSWl4Y0ltRjFkRzlEY205d1hDSTZabUZzYzJVc1hDSjBlWEJsWENJNlhDSmpkWE4wYjIxY0lpeGNJbk5zYVdSbGNrbGtYQ0k2WENJMU5sd2lMRndpYkdGNWIzVjBYQ0k2WENKaWIzaGxaRndpTEZ3aVlYVjBiMGhsYVdkb2RGd2lPbVpoYkhObExGd2lkSEpXYVdWM1hDSTZYQ0ppWVhOcFkxd2lMRndpYzNCbFpXUmNJam95TUN4Y0luTndZV05sWENJNk1DeGNJbk4wWVhKMFhDSTZNU3hjSW1keVlXSkRkWEp6YjNKY0lqcDBjblZsTEZ3aWMzZHBjR1ZjSWpwMGNuVmxMRndpYlc5MWMyVmNJanAwY25WbExGd2lkMmhsWld4Y0lqcG1ZV3h6WlN4Y0ltRjFkRzl3YkdGNVhDSTZkSEoxWlN4Y0lteHZiM0JjSWpwMGNuVmxMRndpYzJoMVptWnNaVndpT21aaGJITmxMRndpY0hKbGJHOWhaRndpT2x3aUxURmNJaXhjSW05MlpYSlFZWFZ6WlZ3aU9uUnlkV1VzWENKbGJtUlFZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWFHbGtaVXhoZVdWeWMxd2lPbVpoYkhObExGd2laR2x5WENJNlhDSm9YQ0lzWENKd1lYSmhiR3hoZUUxdlpHVmNJanBjSW5OM2FYQmxYQ0lzWENKalpXNTBaWEpEYjI1MGNtOXNjMXdpT25SeWRXVXNYQ0pwYm5OMFlXNTBVMmh2ZDB4aGVXVnljMXdpT21aaGJITmxMRndpWW1kRGIyeHZjbHdpT2x3aUl6QXdNREF3TUZ3aUxGd2ljMnRwYmx3aU9sd2liWE10YzJ0cGJpMXNhV2RvZEMwelhDSXNYQ0p0YzFSbGJYQnNZWFJsWENJNlhDSmpkWE4wYjIxY0lpeGNJbTF6VkdWdGNHeGhkR1ZEYkdGemMxd2lPbHdpWENJc1hDSjFjMlZrUm05dWRITmNJanBjSWx3aWZTSjlMQ0pOVTFCaGJtVnNMbE5zYVdSbElqcDdJakVpT2lKN1hDSnBaRndpT2x3aU1Wd2lMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RXlNUzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzBMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMekV5TVM1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJaklpT2lKN1hDSnBaRndpT2pJc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TWkweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam95TEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THpJdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l6SWpvaWUxd2lhV1JjSWpvekxGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THpFeExURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pNc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1URXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJMElqb2llMXdpYVdSY0lqbzBMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6TXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5TeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHpMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU5TSTZJbnRjSW1sa1hDSTZOU3hjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODVMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qWXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZPUzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqWWlPaUo3WENKcFpGd2lPallzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZPQzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqb3hMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMemd1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTNJam9pZTF3aWFXUmNJam8zTEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMelF0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZOeXhjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzgwTG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lPU0k2SW50Y0ltbGtYQ0k2T1N4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TXkweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam93TEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THpFekxtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTVRJaU9pSjdYQ0pwWkZ3aU9qRXlMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RTJMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qZ3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVFl1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSXhOQ0k2SW50Y0ltbGtYQ0k2TVRRc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRVeExURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2prc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1UVXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SW4wc0lrMVRVR0Z1Wld3dVEyOXVkSEp2YkNJNmV5SXhJam9pZTF3aWFXUmNJanBjSWpGY0lpeGNJbXhoWW1Wc1hDSTZYQ0pCY25KdmQzTmNJaXhjSW01aGJXVmNJanBjSW1GeWNtOTNjMXdpTEZ3aVlYVjBiMGhwWkdWY0lqcG1ZV3h6WlN4Y0ltOTJaWEpXYVdSbGIxd2lPblJ5ZFdVc1hDSnBibk5sZEZ3aU9uUnlkV1Y5SWl3aU5DSTZJbnRjSW1sa1hDSTZOQ3hjSW14aFltVnNYQ0k2WENKRGFYSmpiR1VnVkdsdFpYSmNJaXhjSW01aGJXVmNJanBjSW1OcGNtTnNaWFJwYldWeVhDSXNYQ0poZFhSdlNHbGtaVndpT21aaGJITmxMRndpYjNabGNsWnBaR1Z2WENJNmRISjFaU3hjSW1OdmJHOXlYQ0k2WENJak5ETTBNelF6WENJc1hDSnlZV1JwZFhOY0lqb3hNQ3hjSW5OMGNtOXJaVndpT2pNc1hDSnBibk5sZEZ3aU9uUnlkV1Y5SWl3aU5TSTZJbnRjSW1sa1hDSTZOU3hjSW14aFltVnNYQ0k2WENKTWFXNWxJRlJwYldWeVhDSXNYQ0p1WVcxbFhDSTZYQ0owYVcxbFltRnlYQ0lzWENKaGRYUnZTR2xrWlZ3aU9tWmhiSE5sTEZ3aWIzWmxjbFpwWkdWdlhDSTZkSEoxWlN4Y0ltTnZiRzl5WENJNlhDSWpSa1pHUmtaR1hDSXNYQ0ozYVdSMGFGd2lPalFzWENKaGJHbG5ibHdpT2x3aVltOTBkRzl0WENJc1hDSnBibk5sZEZ3aU9uUnlkV1Y5SWl3aU5pSTZJbnRjSW1sa1hDSTZOaXhjSW14aFltVnNYQ0k2WENKQ2RXeHNaWFJ6WENJc1hDSnVZVzFsWENJNlhDSmlkV3hzWlhSelhDSXNYQ0poZFhSdlNHbGtaVndpT25SeWRXVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYldGeVoybHVYQ0k2TVRBc1hDSmthWEpjSWpwY0ltaGNJaXhjSW1Gc2FXZHVYQ0k2WENKaWIzUjBiMjFjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpZlgwPSIsInR5cGUiOiJjdXN0b20iLCJzbGlkZXNfbnVtIjoiMTAifX0sIm9yaWdpbl91cGxvYWRzX3VybCI6Imh0dHA6XC9cL2RlbW8uYXZlcnRhLm5ldFwvdGhlbWVzXC9sb3R1c1wvZHVtbXktYWdlbmN5XC93cC1jb250ZW50XC91cGxvYWRzIn0=',
|
83 |
+
'image_dir' => '',
|
84 |
+
'selected' => '',
|
85 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/autoplay-slider.jpg'
|
86 |
+
),
|
87 |
+
array(
|
88 |
+
'label' => __( 'Fullwidth Slider with Thumbnails', 'master-slider' ),
|
89 |
+
'id' => 'fullwith-with-thumbs-1',
|
90 |
+
'slidertype'=> 'custom',
|
91 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTciOnsidGl0bGUiOiJGdWxsd2lkdGggU2xpZGVyIHdpdGggVGh1bWJuYWlscyIsInBhcmFtcyI6ImV5SnRaWFJoSWpwN0lsTmxkSFJwYm1keklXbGtjeUk2SWpFaUxDSlRaWFIwYVc1bmN5RnVaWGgwU1dRaU9qSXNJbE5zYVdSbElXbGtjeUk2SWpFc01pd3pMRFFzTlN3MkxEY3NPU3d4TWl3eE5DSXNJbE5zYVdSbElXNWxlSFJKWkNJNk1UVXNJa052Ym5SeWIyd2hhV1J6SWpvaU1Td3lMRFFzTlNJc0lrTnZiblJ5YjJ3aGJtVjRkRWxrSWpvMmZTd2lUVk5RWVc1bGJDNVRaWFIwYVc1bmN5STZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5OdVlYQndhVzVuWENJNmRISjFaU3hjSW01aGJXVmNJanBjSWtaMWJHeDNhV1IwYUNCVGJHbGtaWElnZDJsMGFDQlVhSFZ0WW01aGFXeHpYQ0lzWENKM2FXUjBhRndpT2pnd01DeGNJbWhsYVdkb2RGd2lPalE0TUN4Y0luZHlZWEJ3WlhKWGFXUjBhRndpT2prME5TeGNJbmR5WVhCd1pYSlhhV1IwYUZWdWFYUmNJanBjSW5CNFhDSXNYQ0poZFhSdlEzSnZjRndpT21aaGJITmxMRndpZEhsd1pWd2lPbHdpWTNWemRHOXRYQ0lzWENKemJHbGtaWEpKWkZ3aU9sd2lOVGRjSWl4Y0lteGhlVzkxZEZ3aU9sd2lablZzYkhkcFpIUm9YQ0lzWENKaGRYUnZTR1ZwWjJoMFhDSTZabUZzYzJVc1hDSjBjbFpwWlhkY0lqcGNJbUpoYzJsalhDSXNYQ0p6Y0dWbFpGd2lPakl3TEZ3aWMzQmhZMlZjSWpvd0xGd2ljM1JoY25SY0lqb3hMRndpWjNKaFlrTjFjbk52Y2x3aU9uUnlkV1VzWENKemQybHdaVndpT25SeWRXVXNYQ0p0YjNWelpWd2lPblJ5ZFdVc1hDSjNhR1ZsYkZ3aU9tWmhiSE5sTEZ3aVlYVjBiM0JzWVhsY0lqcG1ZV3h6WlN4Y0lteHZiM0JjSWpwbVlXeHpaU3hjSW5Ob2RXWm1iR1ZjSWpwbVlXeHpaU3hjSW5CeVpXeHZZV1JjSWpwY0lpMHhYQ0lzWENKdmRtVnlVR0YxYzJWY0lqcDBjblZsTEZ3aVpXNWtVR0YxYzJWY0lqcG1ZV3h6WlN4Y0ltaHBaR1ZNWVhsbGNuTmNJanBtWVd4elpTeGNJbVJwY2x3aU9sd2lhRndpTEZ3aWNHRnlZV3hzWVhoTmIyUmxYQ0k2WENKemQybHdaVndpTEZ3aVkyVnVkR1Z5UTI5dWRISnZiSE5jSWpwbVlXeHpaU3hjSW1sdWMzUmhiblJUYUc5M1RHRjVaWEp6WENJNlptRnNjMlVzWENKaVowTnZiRzl5WENJNlhDSWpNREF3TURBd1hDSXNYQ0p6YTJsdVhDSTZYQ0p0Y3kxemEybHVMV3hwWjJoMExUWWdjbTkxYm1RdGMydHBibHdpTEZ3aWJYTlVaVzF3YkdGMFpWd2lPbHdpWTNWemRHOXRYQ0lzWENKdGMxUmxiWEJzWVhSbFEyeGhjM05jSWpwY0lsd2lMRndpZFhObFpFWnZiblJ6WENJNlhDSmNJbjBpZlN3aVRWTlFZVzVsYkM1VGJHbGtaU0k2ZXlJeElqb2llMXdpYVdSY0lqcGNJakZjSWl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TWpFdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TWl4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4eE1qRXVhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeUlqb2llMXdpYVdSY0lqb3lMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6SXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk1TeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHlMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU15STZJbnRjSW1sa1hDSTZNeXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHhNUzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzBMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMekV4TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lOQ0k2SW50Y0ltbGtYQ0k2TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPak1zWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TXk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJalVpT2lKN1hDSnBaRndpT2pVc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2T1MweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam8yTEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THprdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0kySWpvaWUxd2lhV1JjSWpvMkxGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THpndE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2TlN4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4NExtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTnlJNkludGNJbWxrWENJNk55eGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4MExURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pBc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk5DNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpraU9pSjdYQ0pwWkZ3aU9qa3NYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UTXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhNeTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZlptbHNiRzF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbUpuZGw5c2IyOXdYQ0k2ZEhKMVpTeGNJbUpuZGw5dGRYUmxYQ0k2ZEhKMVpTeGNJbUpuZGw5aGRYUnZjR0YxYzJWY0lqcG1ZV3h6WlN4Y0lteGhlV1Z5WDJsa2Mxd2lPbHRkZlNJc0lqRXlJam9pZTF3aWFXUmNJam94TWl4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh4TmkweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam81TEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THpFMkxtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTVRRaU9pSjdYQ0pwWkZ3aU9qRTBMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RTFNUzB4TlRCNE1UVXdMbXB3WjF3aUxGd2liM0prWlhKY0lqbzNMRndpWW1kY0lqcGNJaTh5TURFeUx6RXdMekUxTVM1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSjlMQ0pOVTFCaGJtVnNMa052Ym5SeWIyd2lPbnNpTVNJNkludGNJbWxrWENJNlhDSXhYQ0lzWENKc1lXSmxiRndpT2x3aVFYSnliM2R6WENJc1hDSnVZVzFsWENJNlhDSmhjbkp2ZDNOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYVc1elpYUmNJanAwY25WbGZTSXNJaklpT2lKN1hDSnBaRndpT2pJc1hDSnNZV0psYkZ3aU9sd2lRblZzYkdWMGMxd2lMRndpYm1GdFpWd2lPbHdpWW5Wc2JHVjBjMXdpTEZ3aVlYVjBiMGhwWkdWY0lqcG1ZV3h6WlN4Y0ltOTJaWEpXYVdSbGIxd2lPblJ5ZFdVc1hDSnRZWEpuYVc1Y0lqb3hNQ3hjSW1ScGNsd2lPbHdpYUZ3aUxGd2lZV3hwWjI1Y0lqcGNJbUp2ZEhSdmJWd2lMRndpYVc1elpYUmNJanAwY25WbGZTSXNJalFpT2lKN1hDSnBaRndpT2pRc1hDSnNZV0psYkZ3aU9sd2lVMk55YjJ4c1ltRnlYQ0lzWENKdVlXMWxYQ0k2WENKelkzSnZiR3hpWVhKY0lpeGNJbUYxZEc5SWFXUmxYQ0k2ZEhKMVpTeGNJbTkyWlhKV2FXUmxiMXdpT25SeWRXVXNYQ0p0WVhKbmFXNWNJam94TUN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpWTI5c2IzSmNJanBjSWlNME1EUXdOREJjSWl4Y0luZHBaSFJvWENJNk5DeGNJbUZzYVdkdVhDSTZYQ0owYjNCY0lpeGNJbWx1YzJWMFhDSTZkSEoxWlgwaUxDSTFJam9pZTF3aWFXUmNJam8xTEZ3aWJHRmlaV3hjSWpwY0lsUm9kVzFpYkdsemRDOVVZV0p6WENJc1hDSnVZVzFsWENJNlhDSjBhSFZ0WW14cGMzUmNJaXhjSW1GMWRHOUlhV1JsWENJNlptRnNjMlVzWENKdmRtVnlWbWxrWlc5Y0lqcDBjblZsTEZ3aWJXRnlaMmx1WENJNk1TeGNJbk53WVdObFhDSTZNU3hjSW5kcFpIUm9YQ0k2TVRBd0xGd2lhR1ZwWjJoMFhDSTZPREFzWENKaGJHbG5ibHdpT2x3aWNtbG5hSFJjSWl4Y0ltbHVjMlYwWENJNlptRnNjMlVzWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aWZTSjlmUT09IiwidHlwZSI6ImN1c3RvbSIsInNsaWRlc19udW0iOiIxMCJ9fSwib3JpZ2luX3VwbG9hZHNfdXJsIjoiaHR0cDpcL1wvZGVtby5hdmVydGEubmV0XC90aGVtZXNcL2xvdHVzXC9kdW1teS1hZ2VuY3lcL3dwLWNvbnRlbnRcL3VwbG9hZHMifQ==',
|
92 |
+
'image_dir' => '',
|
93 |
+
'selected' => '',
|
94 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/fullwidth-slider-with-thumbs.jpg'
|
95 |
+
),
|
96 |
+
array(
|
97 |
+
'label' => __( 'Slider with Slide Info', 'master-slider' ),
|
98 |
+
'id' => 'slider-with-slideinfo-1',
|
99 |
+
'slidertype'=> 'custom',
|
100 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTgiOnsidGl0bGUiOiJTaW1wbGUgU2xpZGVyIHdpdGggU2xpZGUgSW5mbyIsInBhcmFtcyI6ImV5SnRaWFJoSWpwN0lsTmxkSFJwYm1keklXbGtjeUk2SWpFaUxDSlRaWFIwYVc1bmN5RnVaWGgwU1dRaU9qSXNJbE5zYVdSbElXbGtjeUk2SWpFc01pd3pMRFFzTlN3MkxEY3NPU3d4TWl3eE5DSXNJbE5zYVdSbElXNWxlSFJKWkNJNk1UVXNJa052Ym5SeWIyd2hhV1J6SWpvaU1TdzBJaXdpUTI5dWRISnZiQ0Z1WlhoMFNXUWlPalY5TENKTlUxQmhibVZzTGxObGRIUnBibWR6SWpwN0lqRWlPaUo3WENKcFpGd2lPbHdpTVZ3aUxGd2ljMjVoY0hCcGJtZGNJanAwY25WbExGd2libUZ0WlZ3aU9sd2lVMmx0Y0d4bElGTnNhV1JsY2lCM2FYUm9JRk5zYVdSbElFbHVabTljSWl4Y0luZHBaSFJvWENJNk9EQXdMRndpYUdWcFoyaDBYQ0k2TkRnd0xGd2lkM0poY0hCbGNsZHBaSFJvWENJNk9EQXdMRndpZDNKaGNIQmxjbGRwWkhSb1ZXNXBkRndpT2x3aWNIaGNJaXhjSW1GMWRHOURjbTl3WENJNlptRnNjMlVzWENKMGVYQmxYQ0k2WENKamRYTjBiMjFjSWl4Y0luTnNhV1JsY2tsa1hDSTZYQ0kxT0Z3aUxGd2liR0Y1YjNWMFhDSTZYQ0ppYjNobFpGd2lMRndpWVhWMGIwaGxhV2RvZEZ3aU9tWmhiSE5sTEZ3aWRISldhV1YzWENJNlhDSmlZWE5wWTF3aUxGd2ljM0JsWldSY0lqb3lNQ3hjSW5Od1lXTmxYQ0k2TUN4Y0luTjBZWEowWENJNk1TeGNJbWR5WVdKRGRYSnpiM0pjSWpwMGNuVmxMRndpYzNkcGNHVmNJanAwY25WbExGd2liVzkxYzJWY0lqcDBjblZsTEZ3aWQyaGxaV3hjSWpwbVlXeHpaU3hjSW1GMWRHOXdiR0Y1WENJNlptRnNjMlVzWENKc2IyOXdYQ0k2Wm1Gc2MyVXNYQ0p6YUhWbVpteGxYQ0k2Wm1Gc2MyVXNYQ0p3Y21Wc2IyRmtYQ0k2WENJdE1Wd2lMRndpYjNabGNsQmhkWE5sWENJNmRISjFaU3hjSW1WdVpGQmhkWE5sWENJNlptRnNjMlVzWENKb2FXUmxUR0Y1WlhKelhDSTZabUZzYzJVc1hDSmthWEpjSWpwY0ltaGNJaXhjSW5CaGNtRnNiR0Y0VFc5a1pWd2lPbHdpYzNkcGNHVmNJaXhjSW1ObGJuUmxja052Ym5SeWIyeHpYQ0k2ZEhKMVpTeGNJbWx1YzNSaGJuUlRhRzkzVEdGNVpYSnpYQ0k2Wm1Gc2MyVXNYQ0ppWjBOdmJHOXlYQ0k2Ym5Wc2JDeGNJbk5yYVc1Y0lqcGNJbTF6TFhOcmFXNHRaR1ZtWVhWc2RGd2lMRndpYlhOVVpXMXdiR0YwWlZ3aU9sd2lZM1Z6ZEc5dFhDSXNYQ0p0YzFSbGJYQnNZWFJsUTJ4aGMzTmNJanBjSWx3aUxGd2lkWE5sWkVadmJuUnpYQ0k2WENKY0luMGlmU3dpVFZOUVlXNWxiQzVUYkdsa1pTSTZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DOHhNakV0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZOQ3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzh4TWpFdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1hDb0RVOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTWlJNkludGNJbWxrWENJNk1peGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eUxURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pJc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1pNXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSnBibVp2WENJNlhDSThhRElnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ016d3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeklqb2llMXdpYVdSY0lqb3pMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RXhMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qTXNYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVEV1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJqWlc1MFpYSTdYRnhjSWo1VFlXMXdiR1VnVkdsMGJHWENvRFE4TDJneVBqeHdJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNU1iM0psYlNCcGNITjFiU0JrYjJ4dmNpQnphWFFnWVcxbGRDd2dZMjl1YzJWamRHVjBkWElnWVdScGNHbHphV05wYm1jZ1pXeHBkQ3dnYzJWa0lHUnZJR1ZwZFhOdGIyUWdkR1Z0Y0c5eUlHbHVZMmxrYVdSMWJuUWdkWFFnYkdGaWIzSmxJR1YwSUdSdmJHOXlaU0J0WVdkdVlTQmhiR2x4ZFdFdUlGVjBJR1Z1YVcwZ1lXUWdiV2x1YVcwZ2RtVnVhV0Z0TENCeGRXbHpJRzV2YzNSeWRXUWdaWGhsY21OcGRHRjBhVzl1SUhWc2JHRnRZMjhnYkdGaWIzSnBjeUJ1YVhOcElIVjBJR0ZzYVhGMWFYQWdaWGdnWldFZ1kyOXRiVzlrYnlCamIyNXpaWEYxWVhRdUlFUjFhWE1nWVhWMFpTQnBjblZ5WlNCa2IyeHZjaUJwYmlCeVpYQnlaV2hsYm1SbGNtbDBJR2x1SUhadmJIVndkR0YwWlNCMlpXeHBkQ0JsYzNObElHTnBiR3gxYlNCa2IyeHZjbVVnWlhVZ1puVm5hV0YwSUc1MWJHeGhJSEJoY21saGRIVnlMaUJGZUdObGNIUmxkWElnYzJsdWRDQnZZMk5oWldOaGRDQmpkWEJwWkdGMFlYUWdibTl1SUhCeWIybGtaVzUwTENCemRXNTBJR2x1SUdOMWJIQmhJSEYxYVNCdlptWnBZMmxoSUdSbGMyVnlkVzUwSUcxdmJHeHBkQ0JoYm1sdElHbGtJR1Z6ZENCc1lXSnZjblZ0TGp3dmNENWNJaXhjSW1KbmRsOW1hV3hzYlc5a1pWd2lPbHdpWm1sc2JGd2lMRndpWW1kMlgyeHZiM0JjSWpwMGNuVmxMRndpWW1kMlgyMTFkR1ZjSWpwMGNuVmxMRndpWW1kMlgyRjFkRzl3WVhWelpWd2lPbVpoYkhObExGd2liR0Y1WlhKZmFXUnpYQ0k2VzExOUlpd2lOQ0k2SW50Y0ltbGtYQ0k2TkN4Y0luUnBiV1ZzYVc1bFgyaGNJam95TURBc1hDSmlaMVJvZFcxaVhDSTZYQ0l2TWpBeE1pOHhNQzh6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPalVzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TXk1cWNHZGNJaXhjSW1SMWNtRjBhVzl1WENJNk15eGNJbVpwYkd4TmIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKcGJtWnZYQ0k2WENJOGFESWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBsTmhiWEJzWlNCVWFYUnNaY0tnTmp3dmFESStQSEFnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQa3h2Y21WdElHbHdjM1Z0SUdSdmJHOXlJSE5wZENCaGJXVjBMQ0JqYjI1elpXTjBaWFIxY2lCaFpHbHdhWE5wWTJsdVp5QmxiR2wwTENCelpXUWdaRzhnWldsMWMyMXZaQ0IwWlcxd2IzSWdhVzVqYVdScFpIVnVkQ0IxZENCc1lXSnZjbVVnWlhRZ1pHOXNiM0psSUcxaFoyNWhJR0ZzYVhGMVlTNGdWWFFnWlc1cGJTQmhaQ0J0YVc1cGJTQjJaVzVwWVcwc0lIRjFhWE1nYm05emRISjFaQ0JsZUdWeVkybDBZWFJwYjI0Z2RXeHNZVzFqYnlCc1lXSnZjbWx6SUc1cGMya2dkWFFnWVd4cGNYVnBjQ0JsZUNCbFlTQmpiMjF0YjJSdklHTnZibk5sY1hWaGRDNGdSSFZwY3lCaGRYUmxJR2x5ZFhKbElHUnZiRzl5SUdsdUlISmxjSEpsYUdWdVpHVnlhWFFnYVc0Z2RtOXNkWEIwWVhSbElIWmxiR2wwSUdWemMyVWdZMmxzYkhWdElHUnZiRzl5WlNCbGRTQm1kV2RwWVhRZ2JuVnNiR0VnY0dGeWFXRjBkWEl1SUVWNFkyVndkR1YxY2lCemFXNTBJRzlqWTJGbFkyRjBJR04xY0dsa1lYUmhkQ0J1YjI0Z2NISnZhV1JsYm5Rc0lITjFiblFnYVc0Z1kzVnNjR0VnY1hWcElHOW1abWxqYVdFZ1pHVnpaWEoxYm5RZ2JXOXNiR2wwSUdGdWFXMGdhV1FnWlhOMElHeGhZbTl5ZFcwdVBDOXdQbHdpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0kxSWpvaWUxd2lhV1JjSWpvMUxGd2lkR2x0Wld4cGJtVmZhRndpT2pJd01DeGNJbUpuVkdoMWJXSmNJanBjSWk4eU1ERXlMekV3THprdE1UVXdlREUxTUM1cWNHZGNJaXhjSW05eVpHVnlYQ0k2Tml4Y0ltSm5YQ0k2WENJdk1qQXhNaTh4TUM4NUxtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltbHVabTljSWpwY0lqeG9NaUJ6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ1kyVnVkR1Z5TzF4Y1hDSStVMkZ0Y0d4bElGUnBkR3hsd3FBM1BDOW9NajQ4Y0NCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU8xeGNYQ0krVEc5eVpXMGdhWEJ6ZFcwZ1pHOXNiM0lnYzJsMElHRnRaWFFzSUdOdmJuTmxZM1JsZEhWeUlHRmthWEJwYzJsamFXNW5JR1ZzYVhRc0lITmxaQ0JrYnlCbGFYVnpiVzlrSUhSbGJYQnZjaUJwYm1OcFpHbGtkVzUwSUhWMElHeGhZbTl5WlNCbGRDQmtiMnh2Y21VZ2JXRm5ibUVnWVd4cGNYVmhMaUJWZENCbGJtbHRJR0ZrSUcxcGJtbHRJSFpsYm1saGJTd2djWFZwY3lCdWIzTjBjblZrSUdWNFpYSmphWFJoZEdsdmJpQjFiR3hoYldOdklHeGhZbTl5YVhNZ2JtbHphU0IxZENCaGJHbHhkV2x3SUdWNElHVmhJR052YlcxdlpHOGdZMjl1YzJWeGRXRjBMaUJFZFdseklHRjFkR1VnYVhKMWNtVWdaRzlzYjNJZ2FXNGdjbVZ3Y21Wb1pXNWtaWEpwZENCcGJpQjJiMngxY0hSaGRHVWdkbVZzYVhRZ1pYTnpaU0JqYVd4c2RXMGdaRzlzYjNKbElHVjFJR1oxWjJsaGRDQnVkV3hzWVNCd1lYSnBZWFIxY2k0Z1JYaGpaWEIwWlhWeUlITnBiblFnYjJOallXVmpZWFFnWTNWd2FXUmhkR0YwSUc1dmJpQndjbTlwWkdWdWRDd2djM1Z1ZENCcGJpQmpkV3h3WVNCeGRXa2diMlptYVdOcFlTQmtaWE5sY25WdWRDQnRiMnhzYVhRZ1lXNXBiU0JwWkNCbGMzUWdiR0ZpYjNKMWJTNDhMM0ErWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpZaU9pSjdYQ0pwWkZ3aU9qWXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk9DMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpveExGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6Z3VhbkJuWENJc1hDSmtkWEpoZEdsdmJsd2lPak1zWENKbWFXeHNUVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lhVzVtYjF3aU9sd2lQR2d5SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdYQ29ESThMMmd5UGp4d0lITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJqWlc1MFpYSTdYRnhjSWo1TWIzSmxiU0JwY0hOMWJTQmtiMnh2Y2lCemFYUWdZVzFsZEN3Z1kyOXVjMlZqZEdWMGRYSWdZV1JwY0dsemFXTnBibWNnWld4cGRDd2djMlZrSUdSdklHVnBkWE50YjJRZ2RHVnRjRzl5SUdsdVkybGthV1IxYm5RZ2RYUWdiR0ZpYjNKbElHVjBJR1J2Ykc5eVpTQnRZV2R1WVNCaGJHbHhkV0V1SUZWMElHVnVhVzBnWVdRZ2JXbHVhVzBnZG1WdWFXRnRMQ0J4ZFdseklHNXZjM1J5ZFdRZ1pYaGxjbU5wZEdGMGFXOXVJSFZzYkdGdFkyOGdiR0ZpYjNKcGN5QnVhWE5wSUhWMElHRnNhWEYxYVhBZ1pYZ2daV0VnWTI5dGJXOWtieUJqYjI1elpYRjFZWFF1SUVSMWFYTWdZWFYwWlNCcGNuVnlaU0JrYjJ4dmNpQnBiaUJ5WlhCeVpXaGxibVJsY21sMElHbHVJSFp2YkhWd2RHRjBaU0IyWld4cGRDQmxjM05sSUdOcGJHeDFiU0JrYjJ4dmNtVWdaWFVnWm5WbmFXRjBJRzUxYkd4aElIQmhjbWxoZEhWeUxpQkZlR05sY0hSbGRYSWdjMmx1ZENCdlkyTmhaV05oZENCamRYQnBaR0YwWVhRZ2JtOXVJSEJ5YjJsa1pXNTBMQ0J6ZFc1MElHbHVJR04xYkhCaElIRjFhU0J2Wm1acFkybGhJR1JsYzJWeWRXNTBJRzF2Ykd4cGRDQmhibWx0SUdsa0lHVnpkQ0JzWVdKdmNuVnRMand2Y0Q1Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU55STZJbnRjSW1sa1hDSTZOeXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODBMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qY3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZOQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dPRHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTVJam9pZTF3aWFXUmNJam81TEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMekV6TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPakFzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRNdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1VnTVR3dmFESStQSEFnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHTmxiblJsY2p0Y1hGd2lQa3h2Y21WdElHbHdjM1Z0SUdSdmJHOXlJSE5wZENCaGJXVjBMQ0JqYjI1elpXTjBaWFIxY2lCaFpHbHdhWE5wWTJsdVp5QmxiR2wwTENCelpXUWdaRzhnWldsMWMyMXZaQ0IwWlcxd2IzSWdhVzVqYVdScFpIVnVkQ0IxZENCc1lXSnZjbVVnWlhRZ1pHOXNiM0psSUcxaFoyNWhJR0ZzYVhGMVlTNGdWWFFnWlc1cGJTQmhaQ0J0YVc1cGJTQjJaVzVwWVcwc0lIRjFhWE1nYm05emRISjFaQ0JsZUdWeVkybDBZWFJwYjI0Z2RXeHNZVzFqYnlCc1lXSnZjbWx6SUc1cGMya2dkWFFnWVd4cGNYVnBjQ0JsZUNCbFlTQmpiMjF0YjJSdklHTnZibk5sY1hWaGRDNGdSSFZwY3lCaGRYUmxJR2x5ZFhKbElHUnZiRzl5SUdsdUlISmxjSEpsYUdWdVpHVnlhWFFnYVc0Z2RtOXNkWEIwWVhSbElIWmxiR2wwSUdWemMyVWdZMmxzYkhWdElHUnZiRzl5WlNCbGRTQm1kV2RwWVhRZ2JuVnNiR0VnY0dGeWFXRjBkWEl1SUVWNFkyVndkR1YxY2lCemFXNTBJRzlqWTJGbFkyRjBJR04xY0dsa1lYUmhkQ0J1YjI0Z2NISnZhV1JsYm5Rc0lITjFiblFnYVc0Z1kzVnNjR0VnY1hWcElHOW1abWxqYVdFZ1pHVnpaWEoxYm5RZ2JXOXNiR2wwSUdGdWFXMGdhV1FnWlhOMElHeGhZbTl5ZFcwdVBDOXdQbHdpTEZ3aVltZDJYMlpwYkd4dGIyUmxYQ0k2WENKbWFXeHNYQ0lzWENKaVozWmZiRzl2Y0Z3aU9uUnlkV1VzWENKaVozWmZiWFYwWlZ3aU9uUnlkV1VzWENKaVozWmZZWFYwYjNCaGRYTmxYQ0k2Wm1Gc2MyVXNYQ0pzWVhsbGNsOXBaSE5jSWpwYlhYMGlMQ0l4TWlJNkludGNJbWxrWENJNk1USXNYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UWXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk9DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhOaTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR05sYm5SbGNqdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dPVHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSXhOQ0k2SW50Y0ltbGtYQ0k2TVRRc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2TVRVeExURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2prc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk1UVXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQXhNRHd2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUdObGJuUmxjanRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaWZTd2lUVk5RWVc1bGJDNURiMjUwY205c0lqcDdJakVpT2lKN1hDSnBaRndpT2x3aU1Wd2lMRndpYkdGaVpXeGNJanBjSWtGeWNtOTNjMXdpTEZ3aWJtRnRaVndpT2x3aVlYSnliM2R6WENJc1hDSmhkWFJ2U0dsa1pWd2lPbVpoYkhObExGd2liM1psY2xacFpHVnZYQ0k2ZEhKMVpTeGNJbWx1YzJWMFhDSTZkSEoxWlgwaUxDSTBJam9pZTF3aWFXUmNJam8wTEZ3aWJHRmlaV3hjSWpwY0lsTnNhV1JsSUVsdVptOWNJaXhjSW01aGJXVmNJanBjSW5Oc2FXUmxhVzVtYjF3aUxGd2lZWFYwYjBocFpHVmNJanBtWVd4elpTeGNJbTkyWlhKV2FXUmxiMXdpT25SeWRXVXNYQ0p0WVhKbmFXNWNJam94TUN4Y0ltRnNhV2R1WENJNlhDSmliM1IwYjIxY0lpeGNJbWx1YzJWMFhDSTZabUZzYzJWOUluMTkiLCJ0eXBlIjoiY3VzdG9tIiwic2xpZGVzX251bSI6IjEwIn19LCJvcmlnaW5fdXBsb2Fkc191cmwiOiJodHRwOlwvXC9kZW1vLmF2ZXJ0YS5uZXRcL3RoZW1lc1wvbG90dXNcL2R1bW15LWFnZW5jeVwvd3AtY29udGVudFwvdXBsb2FkcyJ9',
|
101 |
+
'image_dir' => '',
|
102 |
+
'selected' => '',
|
103 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/slider-with-slide-info.jpg'
|
104 |
+
),
|
105 |
+
array(
|
106 |
+
'label' => __( 'Slider with Slide Info V2', 'master-slider' ),
|
107 |
+
'id' => 'slider-with-slideinfo-2',
|
108 |
+
'slidertype'=> 'custom',
|
109 |
+
'importdata'=> 'eyJzbGlkZXJzX2RhdGEiOnsiNTkiOnsidGl0bGUiOiJTaW1wbGUgU2xpZGVyIHdpdGggU2xpZGUgSW5mbyBWMiIsInBhcmFtcyI6ImV5SnRaWFJoSWpwN0lsTmxkSFJwYm1keklXbGtjeUk2SWpFaUxDSlRaWFIwYVc1bmN5RnVaWGgwU1dRaU9qSXNJbE5zYVdSbElXbGtjeUk2SWpFc01pd3pMRFFzTlN3MkxEY3NPU3d4TWl3eE5DSXNJbE5zYVdSbElXNWxlSFJKWkNJNk1UWXNJa052Ym5SeWIyd2hhV1J6SWpvaU1TdzBMRFVzTmlJc0lrTnZiblJ5YjJ3aGJtVjRkRWxrSWpvM2ZTd2lUVk5RWVc1bGJDNVRaWFIwYVc1bmN5STZleUl4SWpvaWUxd2lhV1JjSWpwY0lqRmNJaXhjSW5OdVlYQndhVzVuWENJNmRISjFaU3hjSW01aGJXVmNJanBjSWxOcGJYQnNaU0JUYkdsa1pYSWdkMmwwYUNCVGJHbGtaU0JKYm1adklGWXlYQ0lzWENKM2FXUjBhRndpT2pnd01DeGNJbWhsYVdkb2RGd2lPalE0TUN4Y0luZHlZWEJ3WlhKWGFXUjBhRndpT2pFd05qQXNYQ0ozY21Gd2NHVnlWMmxrZEdoVmJtbDBYQ0k2WENKd2VGd2lMRndpWVhWMGIwTnliM0JjSWpwbVlXeHpaU3hjSW5SNWNHVmNJanBjSW1OMWMzUnZiVndpTEZ3aWMyeHBaR1Z5U1dSY0lqcGNJalU1WENJc1hDSnNZWGx2ZFhSY0lqcGNJbUp2ZUdWa1hDSXNYQ0poZFhSdlNHVnBaMmgwWENJNlptRnNjMlVzWENKMGNsWnBaWGRjSWpwY0ltSmhjMmxqWENJc1hDSnpjR1ZsWkZ3aU9qSXdMRndpYzNCaFkyVmNJam93TEZ3aWMzUmhjblJjSWpveExGd2laM0poWWtOMWNuTnZjbHdpT25SeWRXVXNYQ0p6ZDJsd1pWd2lPblJ5ZFdVc1hDSnRiM1Z6WlZ3aU9uUnlkV1VzWENKM2FHVmxiRndpT21aaGJITmxMRndpWVhWMGIzQnNZWGxjSWpwbVlXeHpaU3hjSW14dmIzQmNJanBtWVd4elpTeGNJbk5vZFdabWJHVmNJanBtWVd4elpTeGNJbkJ5Wld4dllXUmNJanBjSWkweFhDSXNYQ0p2ZG1WeVVHRjFjMlZjSWpwMGNuVmxMRndpWlc1a1VHRjFjMlZjSWpwbVlXeHpaU3hjSW1ocFpHVk1ZWGxsY25OY0lqcG1ZV3h6WlN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpY0dGeVlXeHNZWGhOYjJSbFhDSTZYQ0p6ZDJsd1pWd2lMRndpWTJWdWRHVnlRMjl1ZEhKdmJITmNJanAwY25WbExGd2lhVzV6ZEdGdWRGTm9iM2RNWVhsbGNuTmNJanBtWVd4elpTeGNJbUpuUTI5c2IzSmNJanBjSWlNd01EQXdNREJjSWl4Y0luTnJhVzVjSWpwY0ltMXpMWE5yYVc0dGJHbG5hSFF0TWx3aUxGd2liWE5VWlcxd2JHRjBaVndpT2x3aVkzVnpkRzl0WENJc1hDSnRjMVJsYlhCc1lYUmxRMnhoYzNOY0lqcGNJbHdpTEZ3aWRYTmxaRVp2Ym5SelhDSTZYQ0pjSW4waWZTd2lUVk5RWVc1bGJDNVRiR2xrWlNJNmV5SXhJam9pZTF3aWFXUmNJanBjSWpGY0lpeGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eE1qRXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk5DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhNakV1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQTFQQzlvTWo0OGNDQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeUlqb2llMXdpYVdSY0lqb3lMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6SXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk1peGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHlMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2diR1ZtZER0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ016d3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTXlJNkludGNJbWxrWENJNk15eGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4eE1TMHhOVEI0TVRVd0xtcHdaMXdpTEZ3aWIzSmtaWEpjSWpvekxGd2lZbWRjSWpwY0lpOHlNREV5THpFd0x6RXhMbXB3WjF3aUxGd2laSFZ5WVhScGIyNWNJam96TEZ3aVptbHNiRTF2WkdWY0lqcGNJbVpwYkd4Y0lpeGNJbWx1Wm05Y0lqcGNJanhvTWlCemRIbHNaVDFjWEZ3aWRHVjRkQzFoYkdsbmJqb2diR1ZtZER0Y1hGd2lQbE5oYlhCc1pTQlVhWFJzWmNLZ05Ed3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTkNJNkludGNJbWxrWENJNk5DeGNJblJwYldWc2FXNWxYMmhjSWpveU1EQXNYQ0ppWjFSb2RXMWlYQ0k2WENJdk1qQXhNaTh4TUM4ekxURTFNSGd4TlRBdWFuQm5YQ0lzWENKdmNtUmxjbHdpT2pVc1hDSmlaMXdpT2x3aUx6SXdNVEl2TVRBdk15NXFjR2RjSWl4Y0ltUjFjbUYwYVc5dVhDSTZNeXhjSW1acGJHeE5iMlJsWENJNlhDSm1hV3hzWENJc1hDSnBibVp2WENJNlhDSThhRElnYzNSNWJHVTlYRnhjSW5SbGVIUXRZV3hwWjI0NklHeGxablE3WEZ4Y0lqNVRZVzF3YkdVZ1ZHbDBiR1hDb0RZOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQnNaV1owTzF4Y1hDSStURzl5WlcwZ2FYQnpkVzBnWkc5c2IzSWdjMmwwSUdGdFpYUXNJR052Ym5ObFkzUmxkSFZ5SUdGa2FYQnBjMmxqYVc1bklHVnNhWFFzSUhObFpDQmtieUJsYVhWemJXOWtJSFJsYlhCdmNpQnBibU5wWkdsa2RXNTBJSFYwSUd4aFltOXlaU0JsZENCa2IyeHZjbVVnYldGbmJtRWdZV3hwY1hWaExpQlZkQ0JsYm1sdElHRmtJRzFwYm1sdElIWmxibWxoYlN3Z2NYVnBjeUJ1YjNOMGNuVmtJR1Y0WlhKamFYUmhkR2x2YmlCMWJHeGhiV052SUd4aFltOXlhWE1nYm1semFTQjFkQ0JoYkdseGRXbHdJR1Y0SUdWaElHTnZiVzF2Wkc4Z1kyOXVjMlZ4ZFdGMExpQkVkV2x6SUdGMWRHVWdhWEoxY21VZ1pHOXNiM0lnYVc0Z2NtVndjbVZvWlc1a1pYSnBkQ0JwYmlCMmIyeDFjSFJoZEdVZ2RtVnNhWFFnWlhOelpTQmphV3hzZFcwZ1pHOXNiM0psSUdWMUlHWjFaMmxoZENCdWRXeHNZU0J3WVhKcFlYUjFjaTRnUlhoalpYQjBaWFZ5SUhOcGJuUWdiMk5qWVdWallYUWdZM1Z3YVdSaGRHRjBJRzV2YmlCd2NtOXBaR1Z1ZEN3Z2MzVnVkQ0JwYmlCamRXeHdZU0J4ZFdrZ2IyWm1hV05wWVNCa1pYTmxjblZ1ZENCdGIyeHNhWFFnWVc1cGJTQnBaQ0JsYzNRZ2JHRmliM0oxYlM0OEwzQStYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSXNJalVpT2lKN1hDSnBaRndpT2pVc1hDSjBhVzFsYkdsdVpWOW9YQ0k2TWpBd0xGd2lZbWRVYUhWdFlsd2lPbHdpTHpJd01USXZNVEF2T1MweE5UQjRNVFV3TG1wd1oxd2lMRndpYjNKa1pYSmNJam8yTEZ3aVltZGNJanBjSWk4eU1ERXlMekV3THprdWFuQm5YQ0lzWENKa2RYSmhkR2x2Ymx3aU9qTXNYQ0ptYVd4c1RXOWtaVndpT2x3aVptbHNiRndpTEZ3aWFXNW1iMXdpT2x3aVBHZ3lJSE4wZVd4bFBWeGNYQ0owWlhoMExXRnNhV2R1T2lCc1pXWjBPMXhjWENJK1UyRnRjR3hsSUZScGRHeGx3cUEzUEM5b01qNDhjQ0J6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kRHRjWEZ3aVBreHZjbVZ0SUdsd2MzVnRJR1J2Ykc5eUlITnBkQ0JoYldWMExDQmpiMjV6WldOMFpYUjFjaUJoWkdsd2FYTnBZMmx1WnlCbGJHbDBMQ0J6WldRZ1pHOGdaV2wxYzIxdlpDQjBaVzF3YjNJZ2FXNWphV1JwWkhWdWRDQjFkQ0JzWVdKdmNtVWdaWFFnWkc5c2IzSmxJRzFoWjI1aElHRnNhWEYxWVM0Z1ZYUWdaVzVwYlNCaFpDQnRhVzVwYlNCMlpXNXBZVzBzSUhGMWFYTWdibTl6ZEhKMVpDQmxlR1Z5WTJsMFlYUnBiMjRnZFd4c1lXMWpieUJzWVdKdmNtbHpJRzVwYzJrZ2RYUWdZV3hwY1hWcGNDQmxlQ0JsWVNCamIyMXRiMlJ2SUdOdmJuTmxjWFZoZEM0Z1JIVnBjeUJoZFhSbElHbHlkWEpsSUdSdmJHOXlJR2x1SUhKbGNISmxhR1Z1WkdWeWFYUWdhVzRnZG05c2RYQjBZWFJsSUhabGJHbDBJR1Z6YzJVZ1kybHNiSFZ0SUdSdmJHOXlaU0JsZFNCbWRXZHBZWFFnYm5Wc2JHRWdjR0Z5YVdGMGRYSXVJRVY0WTJWd2RHVjFjaUJ6YVc1MElHOWpZMkZsWTJGMElHTjFjR2xrWVhSaGRDQnViMjRnY0hKdmFXUmxiblFzSUhOMWJuUWdhVzRnWTNWc2NHRWdjWFZwSUc5bVptbGphV0VnWkdWelpYSjFiblFnYlc5c2JHbDBJR0Z1YVcwZ2FXUWdaWE4wSUd4aFltOXlkVzB1UEM5d1Bsd2lMRndpWW1kMlgyWnBiR3h0YjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0ppWjNaZmJHOXZjRndpT25SeWRXVXNYQ0ppWjNaZmJYVjBaVndpT25SeWRXVXNYQ0ppWjNaZllYVjBiM0JoZFhObFhDSTZabUZzYzJVc1hDSnNZWGxsY2w5cFpITmNJanBiWFgwaUxDSTJJam9pZTF3aWFXUmNJam8yTEZ3aWRHbHRaV3hwYm1WZmFGd2lPakl3TUN4Y0ltSm5WR2gxYldKY0lqcGNJaTh5TURFeUx6RXdMemd0TVRVd2VERTFNQzVxY0dkY0lpeGNJbTl5WkdWeVhDSTZNU3hjSW1KblhDSTZYQ0l2TWpBeE1pOHhNQzg0TG1wd1oxd2lMRndpWkhWeVlYUnBiMjVjSWpvekxGd2labWxzYkUxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1sdVptOWNJanBjSWp4b01pQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGxOaGJYQnNaU0JVYVhSc1pjS2dNand2YURJK1BIQWdjM1I1YkdVOVhGeGNJblJsZUhRdFlXeHBaMjQ2SUd4bFpuUTdYRnhjSWo1TWIzSmxiU0JwY0hOMWJTQmtiMnh2Y2lCemFYUWdZVzFsZEN3Z1kyOXVjMlZqZEdWMGRYSWdZV1JwY0dsemFXTnBibWNnWld4cGRDd2djMlZrSUdSdklHVnBkWE50YjJRZ2RHVnRjRzl5SUdsdVkybGthV1IxYm5RZ2RYUWdiR0ZpYjNKbElHVjBJR1J2Ykc5eVpTQnRZV2R1WVNCaGJHbHhkV0V1SUZWMElHVnVhVzBnWVdRZ2JXbHVhVzBnZG1WdWFXRnRMQ0J4ZFdseklHNXZjM1J5ZFdRZ1pYaGxjbU5wZEdGMGFXOXVJSFZzYkdGdFkyOGdiR0ZpYjNKcGN5QnVhWE5wSUhWMElHRnNhWEYxYVhBZ1pYZ2daV0VnWTI5dGJXOWtieUJqYjI1elpYRjFZWFF1SUVSMWFYTWdZWFYwWlNCcGNuVnlaU0JrYjJ4dmNpQnBiaUJ5WlhCeVpXaGxibVJsY21sMElHbHVJSFp2YkhWd2RHRjBaU0IyWld4cGRDQmxjM05sSUdOcGJHeDFiU0JrYjJ4dmNtVWdaWFVnWm5WbmFXRjBJRzUxYkd4aElIQmhjbWxoZEhWeUxpQkZlR05sY0hSbGRYSWdjMmx1ZENCdlkyTmhaV05oZENCamRYQnBaR0YwWVhRZ2JtOXVJSEJ5YjJsa1pXNTBMQ0J6ZFc1MElHbHVJR04xYkhCaElIRjFhU0J2Wm1acFkybGhJR1JsYzJWeWRXNTBJRzF2Ykd4cGRDQmhibWx0SUdsa0lHVnpkQ0JzWVdKdmNuVnRMand2Y0Q1Y0lpeGNJbUpuZGw5bWFXeHNiVzlrWlZ3aU9sd2labWxzYkZ3aUxGd2lZbWQyWDJ4dmIzQmNJanAwY25WbExGd2lZbWQyWDIxMWRHVmNJanAwY25WbExGd2lZbWQyWDJGMWRHOXdZWFZ6WlZ3aU9tWmhiSE5sTEZ3aWJHRjVaWEpmYVdSelhDSTZXMTE5SWl3aU55STZJbnRjSW1sa1hDSTZOeXhjSW5ScGJXVnNhVzVsWDJoY0lqb3lNREFzWENKaVoxUm9kVzFpWENJNlhDSXZNakF4TWk4eE1DODBMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qY3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZOQzVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdYQ29EZzhMMmd5UGp4d0lITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVEc5eVpXMGdhWEJ6ZFcwZ1pHOXNiM0lnYzJsMElHRnRaWFFzSUdOdmJuTmxZM1JsZEhWeUlHRmthWEJwYzJsamFXNW5JR1ZzYVhRc0lITmxaQ0JrYnlCbGFYVnpiVzlrSUhSbGJYQnZjaUJwYm1OcFpHbGtkVzUwSUhWMElHeGhZbTl5WlNCbGRDQmtiMnh2Y21VZ2JXRm5ibUVnWVd4cGNYVmhMaUJWZENCbGJtbHRJR0ZrSUcxcGJtbHRJSFpsYm1saGJTd2djWFZwY3lCdWIzTjBjblZrSUdWNFpYSmphWFJoZEdsdmJpQjFiR3hoYldOdklHeGhZbTl5YVhNZ2JtbHphU0IxZENCaGJHbHhkV2x3SUdWNElHVmhJR052YlcxdlpHOGdZMjl1YzJWeGRXRjBMaUJFZFdseklHRjFkR1VnYVhKMWNtVWdaRzlzYjNJZ2FXNGdjbVZ3Y21Wb1pXNWtaWEpwZENCcGJpQjJiMngxY0hSaGRHVWdkbVZzYVhRZ1pYTnpaU0JqYVd4c2RXMGdaRzlzYjNKbElHVjFJR1oxWjJsaGRDQnVkV3hzWVNCd1lYSnBZWFIxY2k0Z1JYaGpaWEIwWlhWeUlITnBiblFnYjJOallXVmpZWFFnWTNWd2FXUmhkR0YwSUc1dmJpQndjbTlwWkdWdWRDd2djM1Z1ZENCcGJpQmpkV3h3WVNCeGRXa2diMlptYVdOcFlTQmtaWE5sY25WdWRDQnRiMnhzYVhRZ1lXNXBiU0JwWkNCbGMzUWdiR0ZpYjNKMWJTNDhMM0ErWENJc1hDSmlaM1pmWm1sc2JHMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltSm5kbDlzYjI5d1hDSTZkSEoxWlN4Y0ltSm5kbDl0ZFhSbFhDSTZkSEoxWlN4Y0ltSm5kbDloZFhSdmNHRjFjMlZjSWpwbVlXeHpaU3hjSW14aGVXVnlYMmxrYzF3aU9sdGRmU0lzSWpraU9pSjdYQ0pwWkZ3aU9qa3NYQ0owYVcxbGJHbHVaVjlvWENJNk1qQXdMRndpWW1kVWFIVnRZbHdpT2x3aUx6SXdNVEl2TVRBdk1UTXRNVFV3ZURFMU1DNXFjR2RjSWl4Y0ltOXlaR1Z5WENJNk1DeGNJbUpuWENJNlhDSXZNakF4TWk4eE1DOHhNeTVxY0dkY0lpeGNJbVIxY21GMGFXOXVYQ0k2TXl4Y0ltWnBiR3hOYjJSbFhDSTZYQ0ptYVd4c1hDSXNYQ0pwYm1adlhDSTZYQ0k4YURJZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVUWVcxd2JHVWdWR2wwYkdVZ01Ud3ZhREkrUEhBZ2MzUjViR1U5WEZ4Y0luUmxlSFF0WVd4cFoyNDZJR3hsWm5RN1hGeGNJajVNYjNKbGJTQnBjSE4xYlNCa2IyeHZjaUJ6YVhRZ1lXMWxkQ3dnWTI5dWMyVmpkR1YwZFhJZ1lXUnBjR2x6YVdOcGJtY2daV3hwZEN3Z2MyVmtJR1J2SUdWcGRYTnRiMlFnZEdWdGNHOXlJR2x1WTJsa2FXUjFiblFnZFhRZ2JHRmliM0psSUdWMElHUnZiRzl5WlNCdFlXZHVZU0JoYkdseGRXRXVJRlYwSUdWdWFXMGdZV1FnYldsdWFXMGdkbVZ1YVdGdExDQnhkV2x6SUc1dmMzUnlkV1FnWlhobGNtTnBkR0YwYVc5dUlIVnNiR0Z0WTI4Z2JHRmliM0pwY3lCdWFYTnBJSFYwSUdGc2FYRjFhWEFnWlhnZ1pXRWdZMjl0Ylc5a2J5QmpiMjV6WlhGMVlYUXVJRVIxYVhNZ1lYVjBaU0JwY25WeVpTQmtiMnh2Y2lCcGJpQnlaWEJ5WldobGJtUmxjbWwwSUdsdUlIWnZiSFZ3ZEdGMFpTQjJaV3hwZENCbGMzTmxJR05wYkd4MWJTQmtiMnh2Y21VZ1pYVWdablZuYVdGMElHNTFiR3hoSUhCaGNtbGhkSFZ5TGlCRmVHTmxjSFJsZFhJZ2MybHVkQ0J2WTJOaFpXTmhkQ0JqZFhCcFpHRjBZWFFnYm05dUlIQnliMmxrWlc1MExDQnpkVzUwSUdsdUlHTjFiSEJoSUhGMWFTQnZabVpwWTJsaElHUmxjMlZ5ZFc1MElHMXZiR3hwZENCaGJtbHRJR2xrSUdWemRDQnNZV0p2Y25WdExqd3ZjRDVjSWl4Y0ltSm5kbDltYVd4c2JXOWtaVndpT2x3aVptbHNiRndpTEZ3aVltZDJYMnh2YjNCY0lqcDBjblZsTEZ3aVltZDJYMjExZEdWY0lqcDBjblZsTEZ3aVltZDJYMkYxZEc5d1lYVnpaVndpT21aaGJITmxMRndpYkdGNVpYSmZhV1J6WENJNlcxMTlJaXdpTVRJaU9pSjdYQ0pwWkZ3aU9qRXlMRndpZEdsdFpXeHBibVZmYUZ3aU9qSXdNQ3hjSW1KblZHaDFiV0pjSWpwY0lpOHlNREV5THpFd0x6RTJMVEUxTUhneE5UQXVhbkJuWENJc1hDSnZjbVJsY2x3aU9qZ3NYQ0ppWjF3aU9sd2lMekl3TVRJdk1UQXZNVFl1YW5CblhDSXNYQ0prZFhKaGRHbHZibHdpT2pNc1hDSm1hV3hzVFc5a1pWd2lPbHdpWm1sc2JGd2lMRndpYVc1bWIxd2lPbHdpUEdneUlITjBlV3hsUFZ4Y1hDSjBaWGgwTFdGc2FXZHVPaUJzWldaME8xeGNYQ0krVTJGdGNHeGxJRlJwZEd4bHdxQTVQQzlvTWo0OGNDQnpkSGxzWlQxY1hGd2lkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNYRndpUGt4dmNtVnRJR2x3YzNWdElHUnZiRzl5SUhOcGRDQmhiV1YwTENCamIyNXpaV04wWlhSMWNpQmhaR2x3YVhOcFkybHVaeUJsYkdsMExDQnpaV1FnWkc4Z1pXbDFjMjF2WkNCMFpXMXdiM0lnYVc1amFXUnBaSFZ1ZENCMWRDQnNZV0p2Y21VZ1pYUWdaRzlzYjNKbElHMWhaMjVoSUdGc2FYRjFZUzRnVlhRZ1pXNXBiU0JoWkNCdGFXNXBiU0IyWlc1cFlXMHNJSEYxYVhNZ2JtOXpkSEoxWkNCbGVHVnlZMmwwWVhScGIyNGdkV3hzWVcxamJ5QnNZV0p2Y21seklHNXBjMmtnZFhRZ1lXeHBjWFZwY0NCbGVDQmxZU0JqYjIxdGIyUnZJR052Ym5ObGNYVmhkQzRnUkhWcGN5QmhkWFJsSUdseWRYSmxJR1J2Ykc5eUlHbHVJSEpsY0hKbGFHVnVaR1Z5YVhRZ2FXNGdkbTlzZFhCMFlYUmxJSFpsYkdsMElHVnpjMlVnWTJsc2JIVnRJR1J2Ykc5eVpTQmxkU0JtZFdkcFlYUWdiblZzYkdFZ2NHRnlhV0YwZFhJdUlFVjRZMlZ3ZEdWMWNpQnphVzUwSUc5alkyRmxZMkYwSUdOMWNHbGtZWFJoZENCdWIyNGdjSEp2YVdSbGJuUXNJSE4xYm5RZ2FXNGdZM1ZzY0dFZ2NYVnBJRzltWm1samFXRWdaR1Z6WlhKMWJuUWdiVzlzYkdsMElHRnVhVzBnYVdRZ1pYTjBJR3hoWW05eWRXMHVQQzl3UGx3aUxGd2lZbWQyWDJacGJHeHRiMlJsWENJNlhDSm1hV3hzWENJc1hDSmlaM1pmYkc5dmNGd2lPblJ5ZFdVc1hDSmlaM1pmYlhWMFpWd2lPblJ5ZFdVc1hDSmlaM1pmWVhWMGIzQmhkWE5sWENJNlptRnNjMlVzWENKc1lYbGxjbDlwWkhOY0lqcGJYWDBpTENJeE5DSTZJbnRjSW1sa1hDSTZNVFFzWENKMGFXMWxiR2x1WlY5b1hDSTZNakF3TEZ3aVltZFVhSFZ0WWx3aU9sd2lMekl3TVRJdk1UQXZNVFV4TFRFMU1IZ3hOVEF1YW5CblhDSXNYQ0p2Y21SbGNsd2lPamtzWENKaVoxd2lPbHdpTHpJd01USXZNVEF2TVRVeExtcHdaMXdpTEZ3aVpIVnlZWFJwYjI1Y0lqb3pMRndpWm1sc2JFMXZaR1ZjSWpwY0ltWnBiR3hjSWl4Y0ltbHVabTljSWpwY0lqeG9NaUJ6ZEhsc1pUMWNYRndpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kRHRjWEZ3aVBsTmhiWEJzWlNCVWFYUnNaY0tnTVRBOEwyZ3lQanh3SUhOMGVXeGxQVnhjWENKMFpYaDBMV0ZzYVdkdU9pQnNaV1owTzF4Y1hDSStURzl5WlcwZ2FYQnpkVzBnWkc5c2IzSWdjMmwwSUdGdFpYUXNJR052Ym5ObFkzUmxkSFZ5SUdGa2FYQnBjMmxqYVc1bklHVnNhWFFzSUhObFpDQmtieUJsYVhWemJXOWtJSFJsYlhCdmNpQnBibU5wWkdsa2RXNTBJSFYwSUd4aFltOXlaU0JsZENCa2IyeHZjbVVnYldGbmJtRWdZV3hwY1hWaExpQlZkQ0JsYm1sdElHRmtJRzFwYm1sdElIWmxibWxoYlN3Z2NYVnBjeUJ1YjNOMGNuVmtJR1Y0WlhKamFYUmhkR2x2YmlCMWJHeGhiV052SUd4aFltOXlhWE1nYm1semFTQjFkQ0JoYkdseGRXbHdJR1Y0SUdWaElHTnZiVzF2Wkc4Z1kyOXVjMlZ4ZFdGMExpQkVkV2x6SUdGMWRHVWdhWEoxY21VZ1pHOXNiM0lnYVc0Z2NtVndjbVZvWlc1a1pYSnBkQ0JwYmlCMmIyeDFjSFJoZEdVZ2RtVnNhWFFnWlhOelpTQmphV3hzZFcwZ1pHOXNiM0psSUdWMUlHWjFaMmxoZENCdWRXeHNZU0J3WVhKcFlYUjFjaTRnUlhoalpYQjBaWFZ5SUhOcGJuUWdiMk5qWVdWallYUWdZM1Z3YVdSaGRHRjBJRzV2YmlCd2NtOXBaR1Z1ZEN3Z2MzVnVkQ0JwYmlCamRXeHdZU0J4ZFdrZ2IyWm1hV05wWVNCa1pYTmxjblZ1ZENCdGIyeHNhWFFnWVc1cGJTQnBaQ0JsYzNRZ2JHRmliM0oxYlM0OEwzQStYQ0lzWENKaVozWmZabWxzYkcxdlpHVmNJanBjSW1acGJHeGNJaXhjSW1KbmRsOXNiMjl3WENJNmRISjFaU3hjSW1KbmRsOXRkWFJsWENJNmRISjFaU3hjSW1KbmRsOWhkWFJ2Y0dGMWMyVmNJanBtWVd4elpTeGNJbXhoZVdWeVgybGtjMXdpT2x0ZGZTSjlMQ0pOVTFCaGJtVnNMa052Ym5SeWIyd2lPbnNpTVNJNkludGNJbWxrWENJNlhDSXhYQ0lzWENKc1lXSmxiRndpT2x3aVFYSnliM2R6WENJc1hDSnVZVzFsWENJNlhDSmhjbkp2ZDNOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2Wm1Gc2MyVXNYQ0p2ZG1WeVZtbGtaVzljSWpwMGNuVmxMRndpYVc1elpYUmNJanAwY25WbGZTSXNJalFpT2lKN1hDSnBaRndpT2pRc1hDSnNZV0psYkZ3aU9sd2lVMnhwWkdVZ1NXNW1iMXdpTEZ3aWJtRnRaVndpT2x3aWMyeHBaR1ZwYm1adlhDSXNYQ0poZFhSdlNHbGtaVndpT21aaGJITmxMRndpYjNabGNsWnBaR1Z2WENJNmRISjFaU3hjSW0xaGNtZHBibHdpT2pFd0xGd2lkMmxrZEdoY0lqb3lOVEFzWENKaGJHbG5ibHdpT2x3aWNtbG5hSFJjSWl4Y0ltbHVjMlYwWENJNlptRnNjMlY5SWl3aU5TSTZJbnRjSW1sa1hDSTZOU3hjSW14aFltVnNYQ0k2WENKVFkzSnZiR3hpWVhKY0lpeGNJbTVoYldWY0lqcGNJbk5qY205c2JHSmhjbHdpTEZ3aVlYVjBiMGhwWkdWY0lqcG1ZV3h6WlN4Y0ltOTJaWEpXYVdSbGIxd2lPblJ5ZFdVc1hDSnRZWEpuYVc1Y0lqb3hNQ3hjSW1ScGNsd2lPbHdpYUZ3aUxGd2lZMjlzYjNKY0lqcGNJaU16UkRORU0wUmNJaXhjSW5kcFpIUm9YQ0k2TkN4Y0ltRnNhV2R1WENJNlhDSjBiM0JjSWl4Y0ltbHVjMlYwWENJNmRISjFaWDBpTENJMklqb2llMXdpYVdSY0lqbzJMRndpYkdGaVpXeGNJanBjSWtKMWJHeGxkSE5jSWl4Y0ltNWhiV1ZjSWpwY0ltSjFiR3hsZEhOY0lpeGNJbUYxZEc5SWFXUmxYQ0k2ZEhKMVpTeGNJbTkyWlhKV2FXUmxiMXdpT25SeWRXVXNYQ0p0WVhKbmFXNWNJam94TUN4Y0ltUnBjbHdpT2x3aWFGd2lMRndpWVd4cFoyNWNJanBjSW1KdmRIUnZiVndpTEZ3aWFXNXpaWFJjSWpwMGNuVmxmU0o5ZlE9PSIsInR5cGUiOiJjdXN0b20iLCJzbGlkZXNfbnVtIjoiMTAifX0sIm9yaWdpbl91cGxvYWRzX3VybCI6Imh0dHA6XC9cL2RlbW8uYXZlcnRhLm5ldFwvdGhlbWVzXC9sb3R1c1wvZHVtbXktYWdlbmN5XC93cC1jb250ZW50XC91cGxvYWRzIn0=',
|
110 |
+
'image_dir' => '',
|
111 |
+
'selected' => '',
|
112 |
+
'screenshot'=> MSWP_AVERTA_ADMIN_URL . '/assets/images/starters/slider-with-slide-info-v2.jpg'
|
113 |
+
)
|
114 |
+
);
|
115 |
+
|
116 |
+
|
117 |
+
return apply_filters( 'masterslider_starter_fields', $starters );
|
118 |
}
|
119 |
|
120 |
|
121 |
|
122 |
function msp_get_slider_starter_field( $field_id ){
|
123 |
+
$fields_in_sections = msp_get_slider_starter_fields();
|
124 |
|
125 |
+
foreach ( $fields_in_sections as $fields_in_section ) {
|
126 |
+
foreach ($fields_in_section as $the_field ) {
|
127 |
+
if ( isset( $the_field['id'] ) && $the_field['id'] == $field_id ){
|
128 |
+
return $the_field;
|
129 |
+
}
|
130 |
+
}
|
131 |
+
}
|
132 |
|
133 |
+
return null;
|
134 |
}
|
admin/views/index.php
CHANGED
@@ -10,16 +10,16 @@
|
|
10 |
*/
|
11 |
|
12 |
$msp_nonce = wp_create_nonce( 'msp_panel' );
|
13 |
-
$action
|
14 |
$slider_id = isset( $_REQUEST['slider_id'] ) ? $_REQUEST['slider_id'] : '';
|
15 |
-
$do
|
16 |
|
17 |
|
18 |
function msp_thankyou_footer() {
|
19 |
-
|
20 |
-
|
21 |
|
22 |
-
|
23 |
}
|
24 |
add_filter( 'admin_footer_text', 'msp_thankyou_footer' );
|
25 |
|
@@ -29,27 +29,27 @@ add_filter( 'admin_footer_text', 'msp_thankyou_footer' );
|
|
29 |
<div id="msp-main-wrapper" class="wrap" data-nonce="<?php echo $msp_nonce; ?>" >
|
30 |
|
31 |
<?php
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
|
37 |
-
|
38 |
-
|
39 |
|
40 |
-
|
41 |
|
42 |
-
|
43 |
-
|
44 |
|
45 |
-
|
46 |
|
47 |
-
|
48 |
-
|
49 |
|
50 |
-
|
51 |
|
52 |
-
|
53 |
|
54 |
?>
|
55 |
|
10 |
*/
|
11 |
|
12 |
$msp_nonce = wp_create_nonce( 'msp_panel' );
|
13 |
+
$action = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : '';
|
14 |
$slider_id = isset( $_REQUEST['slider_id'] ) ? $_REQUEST['slider_id'] : '';
|
15 |
+
$do = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : '';
|
16 |
|
17 |
|
18 |
function msp_thankyou_footer() {
|
19 |
+
$text = sprintf( __( 'Thank you for creating with <a href="%s">WordPress</a>.' ), __( 'https://wordpress.org/' ) );
|
20 |
+
$text .= sprintf( __(' and using <a href="%s">Master Slider</a> %s', 'master-slider' ), 'http://masterslider.com/?msl', MSWP_AVERTA_VERSION );
|
21 |
|
22 |
+
return '<span id="footer-thankyou">' . $text . '</span>';
|
23 |
}
|
24 |
add_filter( 'admin_footer_text', 'msp_thankyou_footer' );
|
25 |
|
29 |
<div id="msp-main-wrapper" class="wrap" data-nonce="<?php echo $msp_nonce; ?>" >
|
30 |
|
31 |
<?php
|
32 |
+
|
33 |
+
// process slider data and generate required thumbnails for slider panel
|
34 |
+
// if( ! empty( $slider_id ) && isset( $_REQUEST['fr'] ) )
|
35 |
+
// msp_get_ms_slider_shortcode_by_slider_id( $slider_id );
|
36 |
|
37 |
+
// If the requested page is edit page
|
38 |
+
if( in_array( $action, array( 'add', 'edit' ) ) ){
|
39 |
|
40 |
+
include( 'slider-panel/index.php' );
|
41 |
|
42 |
+
// If the requested page is preview page
|
43 |
+
} elseif( 'preview' == $action ) {
|
44 |
|
45 |
+
include( 'slider-dashboard/preview.php' );
|
46 |
|
47 |
+
// Otherwise display sliders list
|
48 |
+
} else {
|
49 |
|
50 |
+
include( 'slider-dashboard/list-sliders.php' );
|
51 |
|
52 |
+
}
|
53 |
|
54 |
?>
|
55 |
|
admin/views/setting/class-msp-settings.php
CHANGED
@@ -54,8 +54,8 @@ class MSP_Settings {
|
|
54 |
if( isset( $section['id'] ) && 'msp_envato_license' == $section['id'] ){
|
55 |
$is_license_actived = get_option( MSWP_SLUG . '_is_license_actived', 0 );
|
56 |
return sprintf( '<a id="validate_envato_license" class="button button-primary button-large" data-activate="%1$s" data-isactive="%3$d" data-deactivate="%2$s" data-validation="%4$s" >%1$s</a>%5$s',
|
57 |
-
__( 'Activate License',
|
58 |
-
__( 'Validating ..',
|
59 |
}
|
60 |
return $button_markup;
|
61 |
}
|
@@ -65,8 +65,8 @@ class MSP_Settings {
|
|
65 |
|
66 |
add_submenu_page(
|
67 |
MSWP_SLUG,
|
68 |
-
__( 'Settings' ,
|
69 |
-
__( 'Settings' ,
|
70 |
apply_filters( 'masterslider_setting_capability', 'manage_options' ),
|
71 |
MSWP_SLUG . '-setting',
|
72 |
array( $this, 'render_setting_page' )
|
@@ -78,18 +78,18 @@ class MSP_Settings {
|
|
78 |
|
79 |
array(
|
80 |
'id' => 'msp_general_setting',
|
81 |
-
'title' => __( 'General Settings',
|
82 |
)
|
83 |
);
|
84 |
|
85 |
$sections[] = array(
|
86 |
'id' => 'msp_advanced',
|
87 |
-
'title' => __( 'Advanced Setting',
|
88 |
);
|
89 |
|
90 |
$sections[] = array(
|
91 |
'id' => 'upgrade_to_pro',
|
92 |
-
'title' => __( 'Upgrade to Pro version',
|
93 |
);
|
94 |
|
95 |
return $sections;
|
@@ -107,20 +107,20 @@ class MSP_Settings {
|
|
107 |
$settings_fields['msp_general_setting'] = array(
|
108 |
array(
|
109 |
'name' => 'hide_info_table',
|
110 |
-
'label' => __( 'Hide info table',
|
111 |
-
'desc' => __( 'If you want to hide "Latest video tutorials" table on master slider admin panel check this field.',
|
112 |
'type' => 'checkbox'
|
113 |
),
|
114 |
array(
|
115 |
'name' => '_enable_cache',
|
116 |
-
'label' => __( 'Enable cache?',
|
117 |
-
'desc' => __( 'Enable cache to make Masterslider even more faster!',
|
118 |
'type' => 'checkbox'
|
119 |
),
|
120 |
array(
|
121 |
'name' => '_cache_period',
|
122 |
-
'label' => __( 'Cache period time',
|
123 |
-
'desc' => __( 'The cache refresh time in hours. Cache is also cleared when you click on "Save Changes" in slider panel.',
|
124 |
'type' => 'text',
|
125 |
'default' => '12',
|
126 |
'sanitize_callback' => 'floatval'
|
@@ -130,8 +130,8 @@ class MSP_Settings {
|
|
130 |
$settings_fields['msp_advanced'] = array(
|
131 |
array(
|
132 |
'name' => 'allways_load_ms_assets',
|
133 |
-
'label' => __( 'Load assets on all pages?',
|
134 |
-
'desc' => __( 'By default, Master Slider will load corresponding JavaScript files on demand. but if you need to load assets on all pages, check this option. ( For example, if you plan to load Master Slider via Ajax, you need to check this option ) ',
|
135 |
'type' => 'checkbox'
|
136 |
)
|
137 |
);
|
@@ -139,9 +139,9 @@ class MSP_Settings {
|
|
139 |
$settings_fields['upgrade_to_pro'] = array(
|
140 |
array(
|
141 |
'name' => 'upgrade_text',
|
142 |
-
'desc' => __( 'Upgrade to Pro version to unlock more features!',
|
143 |
'type' => 'plain_text',
|
144 |
-
'label'=> __( 'Need more features?',
|
145 |
)
|
146 |
);
|
147 |
|
54 |
if( isset( $section['id'] ) && 'msp_envato_license' == $section['id'] ){
|
55 |
$is_license_actived = get_option( MSWP_SLUG . '_is_license_actived', 0 );
|
56 |
return sprintf( '<a id="validate_envato_license" class="button button-primary button-large" data-activate="%1$s" data-isactive="%3$d" data-deactivate="%2$s" data-validation="%4$s" >%1$s</a>%5$s',
|
57 |
+
__( 'Activate License', 'master-slider' ), __( 'Deactivate License', 'master-slider' ), (int)$is_license_actived,
|
58 |
+
__( 'Validating ..', 'master-slider' ), '<div class="msp-msg-nag">is not actived</div>' );
|
59 |
}
|
60 |
return $button_markup;
|
61 |
}
|
65 |
|
66 |
add_submenu_page(
|
67 |
MSWP_SLUG,
|
68 |
+
__( 'Settings' , 'master-slider' ),
|
69 |
+
__( 'Settings' , 'master-slider' ),
|
70 |
apply_filters( 'masterslider_setting_capability', 'manage_options' ),
|
71 |
MSWP_SLUG . '-setting',
|
72 |
array( $this, 'render_setting_page' )
|
78 |
|
79 |
array(
|
80 |
'id' => 'msp_general_setting',
|
81 |
+
'title' => __( 'General Settings', 'master-slider' )
|
82 |
)
|
83 |
);
|
84 |
|
85 |
$sections[] = array(
|
86 |
'id' => 'msp_advanced',
|
87 |
+
'title' => __( 'Advanced Setting', 'master-slider' )
|
88 |
);
|
89 |
|
90 |
$sections[] = array(
|
91 |
'id' => 'upgrade_to_pro',
|
92 |
+
'title' => __( 'Upgrade to Pro version', 'master-slider' )
|
93 |
);
|
94 |
|
95 |
return $sections;
|
107 |
$settings_fields['msp_general_setting'] = array(
|
108 |
array(
|
109 |
'name' => 'hide_info_table',
|
110 |
+
'label' => __( 'Hide info table', 'master-slider' ),
|
111 |
+
'desc' => __( 'If you want to hide "Latest video tutorials" table on master slider admin panel check this field.', 'master-slider' ),
|
112 |
'type' => 'checkbox'
|
113 |
),
|
114 |
array(
|
115 |
'name' => '_enable_cache',
|
116 |
+
'label' => __( 'Enable cache?', 'master-slider' ),
|
117 |
+
'desc' => __( 'Enable cache to make Masterslider even more faster!', 'master-slider' ),
|
118 |
'type' => 'checkbox'
|
119 |
),
|
120 |
array(
|
121 |
'name' => '_cache_period',
|
122 |
+
'label' => __( 'Cache period time', 'master-slider' ),
|
123 |
+
'desc' => __( 'The cache refresh time in hours. Cache is also cleared when you click on "Save Changes" in slider panel.', 'master-slider' ),
|
124 |
'type' => 'text',
|
125 |
'default' => '12',
|
126 |
'sanitize_callback' => 'floatval'
|
130 |
$settings_fields['msp_advanced'] = array(
|
131 |
array(
|
132 |
'name' => 'allways_load_ms_assets',
|
133 |
+
'label' => __( 'Load assets on all pages?', 'master-slider' ),
|
134 |
+
'desc' => __( 'By default, Master Slider will load corresponding JavaScript files on demand. but if you need to load assets on all pages, check this option. ( For example, if you plan to load Master Slider via Ajax, you need to check this option ) ', 'master-slider' ),
|
135 |
'type' => 'checkbox'
|
136 |
)
|
137 |
);
|
139 |
$settings_fields['upgrade_to_pro'] = array(
|
140 |
array(
|
141 |
'name' => 'upgrade_text',
|
142 |
+
'desc' => __( 'Upgrade to Pro version to unlock more features!', 'master-slider' ) . sprintf( ' <a href="http://avt.li/mslset" target="_blank">%s</a>', __( 'Checkout the list of features ..', 'master-slider' ) ),
|
143 |
'type' => 'plain_text',
|
144 |
+
'label'=> __( 'Need more features?', 'master-slider' )
|
145 |
)
|
146 |
);
|
147 |
|
admin/views/slider-dashboard/list-sliders.php
CHANGED
@@ -2,74 +2,74 @@
|
|
2 |
msp_get_panel_header();
|
3 |
|
4 |
// Display sliders list
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
|
74 |
<?php } ?>
|
75 |
|
@@ -77,88 +77,88 @@
|
|
77 |
|
78 |
<?php if( current_user_can( 'export_masterslider' ) || apply_filters( 'masterslider_admin_display_export_import', 0 ) ) { ?>
|
79 |
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
|
163 |
<?php } ?>
|
164 |
|
2 |
msp_get_panel_header();
|
3 |
|
4 |
// Display sliders list
|
5 |
+
$slider_table_list = new MSP_List_Table();
|
6 |
+
$slider_table_list->prepare_items();
|
7 |
+
$slider_table_list->display();
|
8 |
+
|
9 |
+
|
10 |
+
// Display action buttons
|
11 |
+
echo '<div class="action-btns-list">';
|
12 |
+
|
13 |
+
if( current_user_can( 'create_masterslider' ) )
|
14 |
+
printf( '<a id="msp-add-slider" class="action-add-new msp-ac-btn msp-btn-blue msp-iconic-big" href="%s"><span></span>%s</a>', admin_url( 'admin.php?page='.MSWP_SLUG.'&action=add' ), __( 'Create New Slider', 'master-slider' ) );
|
15 |
+
|
16 |
+
if( current_user_can( 'export_masterslider' ) || apply_filters( 'masterslider_admin_display_export_import', 0 ) )
|
17 |
+
printf( '<a class="action-import-export msp-ac-btn" href="%s" onClick="lunchMastersliderImportExport(); return false;">%s</a>', admin_url( 'admin.php?page='.MSWP_SLUG ), __( 'Import & Export', 'master-slider' ) );
|
18 |
+
|
19 |
+
echo '</div>';
|
20 |
+
|
21 |
+
|
22 |
+
|
23 |
+
if( current_user_can( 'create_masterslider' ) ) { ?>
|
24 |
+
|
25 |
+
<div id="msp-slider-type-select" >
|
26 |
+
|
27 |
+
<div class="msp-templates-list">
|
28 |
+
|
29 |
+
<?php
|
30 |
+
sanitize_title( '' );
|
31 |
+
$starter_sections = msp_get_slider_starter_sections();
|
32 |
+
$starter_fields = msp_get_slider_starter_fields();
|
33 |
+
|
34 |
+
foreach ( $starter_sections as $starter_section ) {
|
35 |
+
?>
|
36 |
+
<div class="msp-dialog-inner-title ui-helper-clearfix">
|
37 |
+
<span><?php echo $starter_section['title']; ?></span>
|
38 |
+
</div>
|
39 |
+
<?php
|
40 |
+
|
41 |
+
$section_id = $starter_section['id'];
|
42 |
+
$section_fields = isset( $starter_fields[ $section_id ] ) ? $starter_fields[ $starter_section['id'] ] : array();
|
43 |
+
|
44 |
+
foreach ( $section_fields as $starter_data ) {
|
45 |
+
|
46 |
+
$selected_attr = ( 'true' == $starter_data['selected'] ) ? 'selected' : '';
|
47 |
+
$is_unavailable = isset( $starter_data['disable'] ) && 'true' == $starter_data['disable'] ? ' is-unavailable' : '';
|
48 |
+
$disabled_msg = isset( $starter_data['disabled_msg'] ) && ! empty( $starter_data['disabled_msg'] ) ? $starter_data['disabled_msg'] : '';
|
49 |
+
|
50 |
+
?>
|
51 |
+
<div class="msp-template-figure <?php echo $selected_attr . $is_unavailable; ?>" data-slider-type="<?php echo $starter_data['slidertype']; ?>"
|
52 |
+
data-starter-uid="<?php echo $starter_data['id']; ?>" data-starter-section="<?php echo $section_id; ?>" data-disabled-msg="<?php echo $disabled_msg; ?>" >
|
53 |
+
<div class="msp-templte-selected"></div>
|
54 |
+
<img src="<?php echo $starter_data['screenshot']; ?>" />
|
55 |
+
<div class="msp-template-caption"><?php echo $starter_data['label']; ?><span></span></div>
|
56 |
+
</div>
|
57 |
+
<?php
|
58 |
+
|
59 |
+
}
|
60 |
+
|
61 |
+
?>
|
62 |
+
<div class="section-divider"></div>
|
63 |
+
<?php
|
64 |
+
}
|
65 |
+
|
66 |
+
?>
|
67 |
+
</div>
|
68 |
+
|
69 |
+
<div class="msp-templates-bottom">
|
70 |
+
<button id="msp-slider-type-create" class="msp-blue-btn msp-applyeffect"><?php _e( 'Create', 'master-slider' ); ?></button>
|
71 |
+
</div>
|
72 |
+
</div>
|
73 |
|
74 |
<?php } ?>
|
75 |
|
77 |
|
78 |
<?php if( current_user_can( 'export_masterslider' ) || apply_filters( 'masterslider_admin_display_export_import', 0 ) ) { ?>
|
79 |
|
80 |
+
<div class="msp-import-export-wrapper" >
|
81 |
+
|
82 |
+
<?php do_action( 'masterslider_before_import_dialog_content' ); ?>
|
83 |
+
|
84 |
+
<div class="msp-import-wrapper">
|
85 |
+
|
86 |
+
<form action="<?php echo admin_url( 'admin.php?import=masterslider-importer&step=2' ); ?>" method="post" enctype="multipart/form-data" class="msp-import-form msp-dialog-inner-section">
|
87 |
+
|
88 |
+
<fieldset>
|
89 |
+
<?php wp_nonce_field('import-msp-sliders'); ?>
|
90 |
+
|
91 |
+
<input type="hidden" name="msp-import" value="1">
|
92 |
+
|
93 |
+
<input type="file" name="msp-import-file" class="msp-select-file">
|
94 |
+
|
95 |
+
<button class="button msp-ac-btn msp-btn-blue"><?php _e('Import', 'master-slider' ) ?></button>
|
96 |
+
</fieldset>
|
97 |
+
|
98 |
+
<span class="msp-dialog-section-desc"><?php _e( 'To import sliders select Masterslider Export file that you downloaded before then click import button.', 'master-slider' ) ?></span>
|
99 |
+
|
100 |
+
</form>
|
101 |
+
|
102 |
+
</div>
|
103 |
+
|
104 |
+
<div class="msp-export-wrapper">
|
105 |
+
<h4 class="msp-dialog-inner-split-header"><?php _e('Export', 'master-slider' ) ?></h4>
|
106 |
+
|
107 |
+
<form action="<?php echo $_SERVER['REQUEST_URI'] ?>" method="post" class="msp-export-form msp-dialog-inner-section">
|
108 |
+
|
109 |
+
<div class="msp-export-table-container">
|
110 |
+
|
111 |
+
<table class="msp-export-table widefat fixed msp-export-sliders-table">
|
112 |
+
|
113 |
+
<thead>
|
114 |
+
<tr>
|
115 |
+
<th class="export-column export-field-cb" >
|
116 |
+
<input type="checkbox" name="export-check-all" class="export-check-all" />
|
117 |
+
</th>
|
118 |
+
<th class="export-column export-field-ID" >ID</th>
|
119 |
+
<th class="export-column export-field-title" >Name</th>
|
120 |
+
<th class="export-column export-field-type" >Type</th>
|
121 |
+
<th class="export-column export-field-lastmodify" >Last Modify</th>
|
122 |
+
</tr>
|
123 |
+
</thead>
|
124 |
+
|
125 |
+
<tbody>
|
126 |
+
<?php
|
127 |
+
global $mspdb;
|
128 |
+
$sliders = $mspdb->get_sliders_list();
|
129 |
+
foreach ( $sliders as $slider ) {
|
130 |
+
$orig_time = isset( $slider['date_modified'] ) ? strtotime($slider['date_modified']) : '';
|
131 |
+
$time = date_i18n( 'Y/m/d @ g:i:s A', $orig_time );
|
132 |
+
$human_time = human_time_diff( $orig_time );
|
133 |
+
?>
|
134 |
+
<tr>
|
135 |
+
<th class="export-column export-field-cb" ><input type="checkbox" name="msp-export-sliders[]" class="export-slider-cb" value="<?php echo $slider['ID']; ?>" /></th>
|
136 |
+
<th class="export-column export-field-ID" ><?php echo $slider['ID']; ?></th>
|
137 |
+
<th class="export-column export-field-title" ><?php echo $slider['title']; ?></th>
|
138 |
+
<th class="export-column export-field-type" ><?php echo $slider['type']; ?></th>
|
139 |
+
<th class="export-column export-field-lastmodify" ><abbr title="<?php echo $time; ?>"><?php echo $human_time; ?></abbr></th>
|
140 |
+
</tr>
|
141 |
+
<?php } ?>
|
142 |
+
</tbody>
|
143 |
+
|
144 |
+
</table>
|
145 |
+
|
146 |
+
</div>
|
147 |
+
|
148 |
+
<fieldset>
|
149 |
+
<?php wp_nonce_field('export-msp-sliders'); ?>
|
150 |
+
|
151 |
+
<input type="hidden" name="msp-export" value="1">
|
152 |
+
|
153 |
+
<button id="msp-export-btn" class="button msp-ac-btn msp-btn-blue"><?php _e('Export', 'master-slider' ) ?></button>
|
154 |
+
</fieldset>
|
155 |
+
|
156 |
+
<span class="msp-dialog-section-desc"><?php _e( 'Downloads an export file that contains your selected sliders to import on your new site.', 'master-slider' ); ?></span>
|
157 |
+
|
158 |
+
</form>
|
159 |
+
|
160 |
+
</div>
|
161 |
+
</div>
|
162 |
|
163 |
<?php } ?>
|
164 |
|
admin/views/slider-dashboard/preview.php
CHANGED
@@ -7,25 +7,25 @@ echo '<div id="ms-preview-wrapper">';
|
|
7 |
|
8 |
if( isset( $_REQUEST['slider_params'] ) && ! empty( $_REQUEST['slider_params'] ) ) {
|
9 |
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
|
14 |
-
|
15 |
-
|
16 |
$parser->set_data( $slider_params );
|
17 |
$slider_custom_css = $parser->get_styles();
|
18 |
printf( "<!-- Custom slider styles -->\n<style>%s</style>", $slider_custom_css );
|
19 |
|
20 |
} elseif ( isset( $_REQUEST['slider_id'] ) && ! empty( $_REQUEST['slider_id'] ) ) {
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
|
27 |
} else {
|
28 |
-
|
29 |
}
|
30 |
|
31 |
|
@@ -48,26 +48,26 @@ if ( isset( $_REQUEST['strip_wp'] ) ) {
|
|
48 |
#querylist,
|
49 |
#wpfooter,
|
50 |
#wpbody-content > * {
|
51 |
-
|
52 |
}
|
53 |
#wpbody-content {
|
54 |
-
|
55 |
}
|
56 |
|
57 |
#wpcontent {
|
58 |
-
|
59 |
}
|
60 |
html.wp-toolbar {
|
61 |
-
|
62 |
}
|
63 |
#msp-main-wrapper {
|
64 |
-
|
65 |
-
|
66 |
}
|
67 |
#ms-preview-wrapper{
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
}
|
72 |
#wpcontent {
|
73 |
padding-left: 0;
|
7 |
|
8 |
if( isset( $_REQUEST['slider_params'] ) && ! empty( $_REQUEST['slider_params'] ) ) {
|
9 |
|
10 |
+
$slider_params = $_REQUEST['slider_params'];
|
11 |
+
$slider_shortcodes = msp_panel_data_2_ms_slider_shortcode( $slider_params );
|
12 |
+
echo do_shortcode( $slider_shortcodes );
|
13 |
|
14 |
+
// print slider custom css inline in live preview
|
15 |
+
$parser = msp_get_parser();
|
16 |
$parser->set_data( $slider_params );
|
17 |
$slider_custom_css = $parser->get_styles();
|
18 |
printf( "<!-- Custom slider styles -->\n<style>%s</style>", $slider_custom_css );
|
19 |
|
20 |
} elseif ( isset( $_REQUEST['slider_id'] ) && ! empty( $_REQUEST['slider_id'] ) ) {
|
21 |
+
$slider_id = $_REQUEST['slider_id'];
|
22 |
+
$slider_shortcodes = msp_get_ms_slider_shortcode_by_slider_id( $slider_id );
|
23 |
+
echo do_shortcode( $slider_shortcodes );
|
24 |
+
// print slider custom css inline in live preview
|
25 |
+
printf( "<!-- Custom slider styles -->\n<style>%s</style>", msp_get_slider_custom_css( $slider_id ) );
|
26 |
|
27 |
} else {
|
28 |
+
_e( 'Not found.', 'master-slider' );
|
29 |
}
|
30 |
|
31 |
|
48 |
#querylist,
|
49 |
#wpfooter,
|
50 |
#wpbody-content > * {
|
51 |
+
display:none;
|
52 |
}
|
53 |
#wpbody-content {
|
54 |
+
padding-bottom: 0;
|
55 |
}
|
56 |
|
57 |
#wpcontent {
|
58 |
+
margin-left:0;
|
59 |
}
|
60 |
html.wp-toolbar {
|
61 |
+
padding-top:0;
|
62 |
}
|
63 |
#msp-main-wrapper {
|
64 |
+
margin:0;
|
65 |
+
display:block;
|
66 |
}
|
67 |
#ms-preview-wrapper{
|
68 |
+
width:100%;
|
69 |
+
max-width:100%;
|
70 |
+
min-height: 400px;
|
71 |
}
|
72 |
#wpcontent {
|
73 |
padding-left: 0;
|
admin/views/slider-panel/index.php
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
</div>
|
18 |
<div id="panelLoading" class="msp-loading">
|
19 |
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/loading.gif">
|
20 |
-
<?php _e('Loading data...',
|
21 |
</div>
|
22 |
<div id="msp-root" class="msp-container"> </div>
|
23 |
<div id="mspHiddenEditor" style="display:none">
|
@@ -34,171 +34,171 @@
|
|
34 |
{{else}}
|
35 |
<nav class="msp-main-nav">
|
36 |
<ul>
|
37 |
-
<li>{{#link-to 'settings'}} <?php _e('Slider Settings',
|
38 |
-
{{#if isFlickr }}<li>{{#link-to 'flickr'}} <?php _e('Flickr Settings',
|
39 |
-
{{#if isFacebook }}<li>{{#link-to 'facebook'}} <?php _e('Facebook Settings',
|
40 |
-
{{#if isPost }}<li>{{#link-to 'post'}} <?php _e('Posts Settings',
|
41 |
-
{{#if isWcproduct }}<li>{{#link-to 'wcproduct'}} <?php _e('Product Slider Settings',
|
42 |
-
<li>{{#link-to 'slides'}} <?php _e('Slides',
|
43 |
-
<li>{{#link-to 'controls'}} <?php _e('Slider Controls',
|
44 |
-
<li>{{#link-to 'callbacks'}} <?php _e('Slider Callbacks',
|
45 |
<li class="msp-upgrade-btn"> {{#link-to 'pro-features'}}Upgrade to PRO <span class="msp-ico msp-ico-pro"></span>{{/link-to}}</li>
|
46 |
</ul>
|
47 |
</nav>
|
48 |
<div class="clear"></div>
|
49 |
{{outlet}}
|
50 |
<div class="msp-shortcode-cont">
|
51 |
-
<span><?php _e('Shortcode :',
|
52 |
-
<span><?php _e('PHP function :',
|
53 |
</div>
|
54 |
<div class="msp-save-bar-placeholder" id="saveBarPlaceHolder"></div>
|
55 |
<div class="msp-save-bar" id="saveBar">
|
56 |
-
<button id="msp-preview-btn" {{action showPreview}} class="msp-blue-btn msp-save-changes"> <?php _e('Preview',
|
57 |
{{#if isSending}}
|
58 |
-
<button class="msp-blue-btn msp-save-changes disabled"> <?php _e('Saving...',
|
59 |
{{else}}
|
60 |
-
<button class="msp-blue-btn msp-save-changes" {{action "saveAll"}}> <?php _e('Save Changes',
|
61 |
{{/if}}
|
62 |
<div class="msp-saving-msg-cont">
|
63 |
<span {{bind-attr class=":msp-save-status savingStatus"}}>{{statusMsg}}</span>
|
64 |
-
<div {{bind-attr class=":msp-time-ago savingStatus"}}><?php _e('Saved',
|
65 |
</div>
|
66 |
</div>
|
67 |
{{/if}}
|
68 |
</script>
|
69 |
|
70 |
<script type="text/x-handlebars" id="pro-features">
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
</script>
|
160 |
<!-- Slider Settings Page -->
|
161 |
<script type="text/x-handlebars" id="settings">
|
162 |
|
163 |
-
{{#meta-box title="<?php _e('General Settings',
|
164 |
|
165 |
<div class="msp-metabox-row">
|
166 |
|
167 |
-
<h4><?php _e('Slider name and dimentions',
|
168 |
|
169 |
<div class="msp-metabox-indented">
|
170 |
-
<label><?php _e('Slider name :',
|
171 |
</div>
|
172 |
<div class="msp-metabox-indented">
|
173 |
-
<label><?php _e('Slider width :',
|
174 |
<span class="msp-form-space"></span>
|
175 |
-
<label><?php _e('Slider height :',
|
176 |
</div>
|
177 |
|
178 |
<div class="msp-metabox-indented">
|
179 |
-
{{switch-box value=autoCrop}}<label><?php _e('Automatically crop and resize slider images based on above size.',
|
180 |
</div>
|
181 |
|
182 |
-
<h4><?php _e('Slider sizing method',
|
183 |
|
184 |
<div class="msp-metabox-indented">
|
185 |
{{#view MSPanel.Select value=layout width="400" }}
|
186 |
-
<option value="boxed"><?php _e('Boxed layout',
|
187 |
-
<option value="fullwidth"><?php _e('Full-width',
|
188 |
{{/view}}
|
189 |
{{#if showAutoHeight}}
|
190 |
<span class="msp-form-space"></span>
|
191 |
-
{{switch-box value=autoHeight}}<label><?php _e('Auto-height slider',
|
192 |
{{/if}}
|
193 |
</div>
|
194 |
{{#if showMinHeight}}
|
195 |
<div class="msp-metabox-indented">
|
196 |
-
<label><?php _e('Minimum height amount :',
|
197 |
</div>
|
198 |
{{/if}}
|
199 |
{{#if showWrapperWidth}}
|
200 |
<div class="msp-metabox-indented">
|
201 |
-
<label><?php _e('Slider wrapper width :',
|
202 |
{{#view MSPanel.Select value=wrapperWidthUnit width="40" }}
|
203 |
<option value="px">px</option>
|
204 |
<option value="%">%</option>
|
@@ -210,126 +210,126 @@
|
|
210 |
|
211 |
{{/meta-box}}
|
212 |
|
213 |
-
{{#meta-box title="<?php _e('Slider Transition',
|
214 |
<div class="msp-metabox-row">
|
215 |
-
<h4><?php _e('Change slider transition, transition speed and space between slides',
|
216 |
|
217 |
<div class="msp-metabox-indented">
|
218 |
-
<label><?php _e('Transition :',
|
219 |
{{#view MSPanel.Select value=trView width=150}}
|
220 |
<option value="basic">Normal</option>
|
221 |
<option value="fade">Fade</option>
|
222 |
{{/view}}
|
223 |
<span class="msp-form-space"></span>
|
224 |
-
<label><?php _e('Transition speed :',
|
225 |
</div>
|
226 |
<div class="msp-metabox-indented">
|
227 |
-
<label><?php _e('Direction :',
|
228 |
{{#view MSPanel.Select value=dir width="120"}}
|
229 |
-
<option value="h"><?php _e('Horizontal',
|
230 |
-
<option value="v"><?php _e('Vertical',
|
231 |
{{/view}}
|
232 |
<span class="msp-form-space"></span>
|
233 |
-
<label><?php _e('Slide space :',
|
234 |
</div>
|
235 |
</div>
|
236 |
{{/meta-box}}
|
237 |
|
238 |
|
239 |
-
{{#meta-box title="<?php _e('Navigation',
|
240 |
|
241 |
<div class="msp-metabox-row">
|
242 |
-
<h4><?php _e('Slideshow behavior and sorting slides',
|
243 |
<div class="msp-metabox-indented">
|
244 |
-
{{switch-box value=autoplay}}<label><?php _e('Autoplay (Slideshow)',
|
245 |
<span class="msp-form-space"></span>
|
246 |
-
{{switch-box value=loop}}<label><?php _e('Loop navigation',
|
247 |
<span class="msp-form-space"></span>
|
248 |
-
{{switch-box value=endPause}}<label><?php _e('Pause at end slide',
|
249 |
</div>
|
250 |
<div class="msp-metabox-indented">
|
251 |
-
{{switch-box value=overPause}}<label><?php _e('Pause on hover',
|
252 |
<span class="msp-form-space"></span>
|
253 |
-
{{switch-box value=shuffle}}<label><?php _e('Random order',
|
254 |
</div>
|
255 |
<div class="msp-metabox-indented">
|
256 |
-
<label><?php _e('Start with slide :',
|
257 |
</div>
|
258 |
-
<h4><?php _e('Slider navigation methods',
|
259 |
<div class="msp-metabox-indented">
|
260 |
-
{{switch-box value=swipe}}<label><?php _e('Touch swipe navigation',
|
261 |
<span class="msp-form-space"></span>
|
262 |
-
{{switch-box value=mouse}}<label><?php _e('Mouse swipe navigation',
|
263 |
<span class="msp-form-space"></span>
|
264 |
-
{{switch-box value=grabCursor}}<label><?php _e('Use grab mouse cursor',
|
265 |
</div>
|
266 |
<div class="msp-metabox-indented">
|
267 |
-
{{switch-box value=wheel}}<label><?php _e('Mouse wheel navigation',
|
268 |
</div>
|
269 |
<div class="msp-metabox-indented">
|
270 |
-
{{switch-box value=startOnAppear}}<label><?php _e('Start slider when appears in browser window.',
|
271 |
</div>
|
272 |
-
<h4><?php _e('Slide preloading',
|
273 |
<div class="msp-metabox-indented">
|
274 |
{{#view MSPanel.Select value=preloadMethod width="200" }}
|
275 |
-
<option value="nearby"><?php _e('Load nearby slides',
|
276 |
-
<option value="-1"><?php _e('Load slides in sequence',
|
277 |
-
<option value="all"><?php _e('Load all slides before init',
|
278 |
{{/view}}
|
279 |
{{#if showNearbyNum}}
|
280 |
<span class="msp-form-space"></span>
|
281 |
-
<?php _e('Number of slides :',
|
282 |
{{/if}}
|
283 |
</div>
|
284 |
</div>
|
285 |
|
286 |
{{/meta-box}}
|
287 |
|
288 |
-
{{#meta-box title="<?php _e('Appearance',
|
289 |
|
290 |
<div class="msp-metabox-row">
|
291 |
-
<h4><?php _e('Slider Skin',
|
292 |
<div class="msp-metabox-indented">
|
293 |
-
<label><?php _e('Skin :',
|
294 |
{{#dropdwon-List value=skin width=180}}
|
295 |
{{#each skin in sliderSkins}}
|
296 |
<option {{bind-attr value=skin.class}}>{{skin.label}}</option>
|
297 |
{{/each}}
|
298 |
|
299 |
{{!--
|
300 |
-
<option value="ms-skin-default"><?php _e('Default',
|
301 |
-
<option value="ms-skin-light-2"><?php _e('Light 2',
|
302 |
-
<option value="ms-skin-light-3"><?php _e('Light 3',
|
303 |
-
<option value="ms-skin-light-4"><?php _e('Light 4',
|
304 |
-
<option value="ms-skin-light-5"><?php _e('Light 5',
|
305 |
-
<option value="ms-skin-light-6"><?php _e('Light 6',
|
306 |
-
<option value="ms-skin-light-6 round-skin"><?php _e('Light 6 Round',
|
307 |
-
<option value="ms-skin-contrast"><?php _e('Contrast',
|
308 |
-
<option value="ms-skin-black-1"><?php _e('Black 1',
|
309 |
-
<option value="ms-skin-black-2"><?php _e('Black 2',
|
310 |
-
<option value="ms-skin-black-2 round-skin"><?php _e('Black 2 Round',
|
311 |
-
<option value="ms-skin-metro"><?php _e('Metro',
|
312 |
--}}
|
313 |
{{/dropdwon-List}}
|
314 |
</div>
|
315 |
<div class="msp-metabox-indented">
|
316 |
-
<label><?php _e('Align center slider controls :',
|
317 |
</div>
|
318 |
-
<h4><?php _e('Slider background settings',
|
319 |
<div class="msp-metabox-indented">
|
320 |
-
<label><?php _e('Background image :',
|
321 |
<span class="msp-form-space"></span>
|
322 |
-
<label><?php _e('Background color :',
|
323 |
</div>
|
324 |
-
<h4><?php _e('Slider custom class name and style',
|
325 |
<div class="msp-metabox-indented">
|
326 |
-
<label><?php _e('Class name :',
|
327 |
</div>
|
328 |
{{!--<div class="msp-metabox-indented">
|
329 |
-
<label><?php _e('Inline style :',
|
330 |
</div>--}}
|
331 |
<div class="msp-metabox-indented">
|
332 |
-
<label><?php _e('Slider custom styles :',
|
333 |
</div>
|
334 |
<div class="msp-metabox-indented">
|
335 |
{{#code-mirror width="880" height="250" mode="css" value=customStyle}}{{/code-mirror}}
|
@@ -343,7 +343,7 @@
|
|
343 |
<script type="text/x-handlebars" id="slides">
|
344 |
{{#if customSlider}}
|
345 |
<!-- Slides List -->
|
346 |
-
{{#meta-box title="<?php _e('Slides',
|
347 |
<div class="msp-metabox-row">
|
348 |
{{view MSPanel.SlideList}}
|
349 |
</div>
|
@@ -360,10 +360,10 @@
|
|
360 |
<div class="msp-metabox-handle">
|
361 |
|
362 |
<ul class="tabs">
|
363 |
-
<li class="active"><a href="#sl-bg"><?php _e('Background',
|
364 |
-
<li><a href="#sl-val"><?php _e('Video and Link',
|
365 |
-
<li><a href="#sl-inf"><?php _e('Slide Info',
|
366 |
-
<li><a href="#sl-misc"><?php _e('Misc',
|
367 |
</ul>
|
368 |
|
369 |
<div class="msp-metabox-toggle"></div>
|
@@ -381,7 +381,7 @@
|
|
381 |
{{#meta-box title="Slide"}}
|
382 |
<div class="msp-metabox-row">
|
383 |
<div class="msp-metabox-indented">
|
384 |
-
<label><?php _e('Slide duration :',
|
385 |
</div>
|
386 |
</div>
|
387 |
<hr class="msp-metabox-hr">
|
@@ -392,42 +392,42 @@
|
|
392 |
<!-- Slide Background Settings Partial -->
|
393 |
<script type="text/x-handlebars" id="slide-background">
|
394 |
<div class="msp-metabox-row">
|
395 |
-
<h4><?php _e('Choose slide background and thumbnail',
|
396 |
<div class="msp-metabox-indented">
|
397 |
-
<label><?php _e('Background :',
|
398 |
<span class="msp-form-space"></span>
|
399 |
-
<label><?php _e('Fillmode :',
|
400 |
<span class="msp-form-space"></span>
|
401 |
-
<label><?php _e('Thumbnail :',
|
402 |
</div>
|
403 |
</div>
|
404 |
</script>
|
405 |
<!-- Slide Embeded Video and Link -->
|
406 |
<script type="text/x-handlebars" id="slide-video-and-link">
|
407 |
<div class="msp-metabox-row">
|
408 |
-
<h4><?php _e('Link this slide',
|
409 |
<div class="msp-metabox-indented">
|
410 |
-
<label><?php _e('URL :',
|
411 |
{{view MSPanel.URLTarget value=currentSlide.linkTarget }}
|
412 |
</div>
|
413 |
<div class="msp-metabox-indented">
|
414 |
-
<label><?php _e('Link id :',
|
415 |
<span class="msp-form-space"></span>
|
416 |
-
<label><?php _e('Link class :',
|
417 |
</div>
|
418 |
<div class="msp-metabox-indented">
|
419 |
-
<label><?php _e('Link rel :',
|
420 |
<span class="msp-form-space"></span>
|
421 |
-
<label><?php _e('Link title :',
|
422 |
</div>
|
423 |
-
<h4><?php _e('Youtube or Vimeo video as slide',
|
424 |
<div class="msp-metabox-indented">
|
425 |
-
<label><?php _e('Video embed src :',
|
426 |
<span class="msp-form-space"></span>
|
427 |
-
<label><?php _e('Autoplay video :',
|
428 |
</div>
|
429 |
<div class="msp-metabox-indented">
|
430 |
-
<a href="http://masterslider.com/doc/wp/#embed-url" target="_blank"><?php _e('Where to find the Youtube/Vimeo embed URL.',
|
431 |
</div>
|
432 |
</div>
|
433 |
</script>
|
@@ -436,12 +436,12 @@
|
|
436 |
<script type="text/x-handlebars" id="slide-info">
|
437 |
<div class="msp-metabox-row">
|
438 |
<div class="msp-metabox-indented">
|
439 |
-
<label><?php _e('This info will show beside of slider when slider reaches the slide or it can represent as tab in a tabs control. It is relative to selected slider template.',
|
440 |
</div>
|
441 |
|
442 |
{{#if MSPanel.dynamicTags}}
|
443 |
<div class="msp-metabox-indented">
|
444 |
-
<label><?php _e('Insert dynamic content : ',
|
445 |
{{view MSPanel.AddDynamicTag editorId=infoEditor}}
|
446 |
</div>
|
447 |
{{/if}}
|
@@ -455,23 +455,23 @@
|
|
455 |
<!-- Slide Misc -->
|
456 |
<script type="text/x-handlebars" id="slide-misc">
|
457 |
<div class="msp-metabox-row">
|
458 |
-
<h4><?php _e('Custom class name and id for slide element',
|
459 |
<div class="msp-metabox-indented">
|
460 |
-
<label><?php _e('Class name :',
|
461 |
<span class="msp-form-space"></span>
|
462 |
-
<label><?php _e('CSS id :',
|
463 |
</div>
|
464 |
-
<h4><?php _e('Background color and slide background alt text ',
|
465 |
<div class="msp-metabox-indented">
|
466 |
-
<label><?php _e('Background color :',
|
467 |
<span class="msp-form-space"></span>
|
468 |
-
<label><?php _e('Alt text :',
|
469 |
</div>
|
470 |
-
<h4><?php _e('Slide color and pattern overlay ',
|
471 |
<div class="msp-metabox-indented">
|
472 |
-
<label><?php _e('Color overlay :',
|
473 |
<div class="msp-form-space-med"></div>
|
474 |
-
<label><?php _e('Pattern overlay :',
|
475 |
</div>
|
476 |
</div>
|
477 |
</script>
|
@@ -481,7 +481,7 @@
|
|
481 |
{{#meta-box title="Slider Controls"}}
|
482 |
<div class="msp-metabox-row">
|
483 |
<div class="msp-metabox-indented">
|
484 |
-
<?php _e('The selected tempalte for slider does not support custom controls.',
|
485 |
</div>
|
486 |
</div>
|
487 |
{{/meta-box}}
|
@@ -489,10 +489,10 @@
|
|
489 |
{{#meta-box title="Slider Controls"}}
|
490 |
<div class="msp-metabox-row">
|
491 |
|
492 |
-
<h4><?php _e('Here you can add or remove controls to slider',
|
493 |
|
494 |
<div class="msp-metabox-indented">
|
495 |
-
<label><?php _e('Add new control',
|
496 |
{{#if noMore}}
|
497 |
<button class="msp-add-btn disabled"><span class="msp-ico msp-ico-whiteadd"></span></button>
|
498 |
{{else}}
|
@@ -503,14 +503,14 @@
|
|
503 |
{{#each control in availableControls}}
|
504 |
<option {{bind-attr value=control.value}}>{{control.label}}</option>
|
505 |
{{else}}
|
506 |
-
<option><?php _e('-- All controls are used --',
|
507 |
{{/each}}
|
508 |
{{/dropdwon-List}}
|
509 |
</div>
|
510 |
</div>
|
511 |
<hr class="msp-metabox-hr">
|
512 |
<div class="msp-metabox-row">
|
513 |
-
<h4><?php _e('Used controls:',
|
514 |
<div class="msp-metabox-indented">
|
515 |
{{#each control in controller}}
|
516 |
{{view MSPanel.ControlBtn control=control}}
|
@@ -527,19 +527,19 @@
|
|
527 |
{{#meta-box title="Arrows Control Options"}}
|
528 |
<div class="msp-metabox-row">
|
529 |
<div class="msp-metabox-indented">
|
530 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide arrows when mouse leaves slider',
|
531 |
<div class="msp-form-space-med"></div>
|
532 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show arrows over Youtube/Vimeo video player',
|
533 |
</div>
|
534 |
<div class="msp-metabox-indented">
|
535 |
-
<label><?php _e('Hide arrows under this window width :',
|
536 |
</div>
|
537 |
|
538 |
{{!--<div class="msp-metabox-indented">
|
539 |
-
{{switch-box value=currentControl.inset}} <label><?php _e('Insert arrows inside slider',
|
540 |
</div>
|
541 |
<div class="msp-metabox-indented">
|
542 |
-
<label><?php _e('Arrows margin :',
|
543 |
</div>--}}
|
544 |
</div>
|
545 |
{{/meta-box}}
|
@@ -549,23 +549,23 @@
|
|
549 |
{{#meta-box title="Line Timer Control Options"}}
|
550 |
<div class="msp-metabox-row">
|
551 |
<div class="msp-metabox-indented">
|
552 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide line timer when mouse leaves slider',
|
553 |
<div class="msp-form-space-med"></div>
|
554 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show line timer over Youtube/Vimeo video player',
|
555 |
</div>
|
556 |
<div class="msp-metabox-indented">
|
557 |
-
<?php _e('Align control :',
|
558 |
{{#dropdwon-List value=currentControl.align width=100}}
|
559 |
-
<option value="top"><?php _e('Top',
|
560 |
-
<option value="bottom"><?php _e('Bottom',
|
561 |
{{/dropdwon-List}}
|
562 |
<div class="msp-form-space-med"></div>
|
563 |
-
<label><?php _e('Hide line timer under this window width :',
|
564 |
</div>
|
565 |
<div class="msp-metabox-indented">
|
566 |
-
<label><?php _e('Line timer color :',
|
567 |
<div class="msp-form-space-med"></div>
|
568 |
-
<label><?php _e('Line timer width :',
|
569 |
</div>
|
570 |
</div>
|
571 |
{{/meta-box}}
|
@@ -575,28 +575,28 @@
|
|
575 |
{{#meta-box title="Bullets Control Options"}}
|
576 |
<div class="msp-metabox-row">
|
577 |
<div class="msp-metabox-indented">
|
578 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide bullets when mouse leaves slider',
|
579 |
<div class="msp-form-space-med"></div>
|
580 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show bullets over Youtube/Vimeo video player',
|
581 |
</div>
|
582 |
{{!-- <div class="msp-metabox-indented">
|
583 |
-
{{switch-box value=currentControl.inset}} <label><?php _e('Insert bullets inside slider',
|
584 |
</div> --}}
|
585 |
<div class="msp-metabox-indented">
|
586 |
-
<?php _e('Align control :',
|
587 |
{{#dropdwon-List value=currentControl.align width=100}}
|
588 |
-
<option value="top"><?php _e('Top',
|
589 |
-
<option value="right"><?php _e('Right',
|
590 |
-
<option value="left"><?php _e('Left',
|
591 |
-
<option value="bottom"><?php _e('Bottom',
|
592 |
{{/dropdwon-List}}
|
593 |
<div class="msp-form-space-med"></div>
|
594 |
-
<label><?php _e('Bullets margin :',
|
595 |
<div class="msp-form-space-med"></div>
|
596 |
-
<label><?php _e('Space between bullets :',
|
597 |
</div>
|
598 |
<div class="msp-metabox-indented">
|
599 |
-
<label><?php _e('Hide bullets under this window width :',
|
600 |
</div>
|
601 |
</div>
|
602 |
{{/meta-box}}
|
@@ -606,40 +606,40 @@
|
|
606 |
{{#meta-box title="Scrollbar Control Options"}}
|
607 |
<div class="msp-metabox-row">
|
608 |
<div class="msp-metabox-indented">
|
609 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide scrollbar when mouse leaves slider',
|
610 |
<div class="msp-form-space-med"></div>
|
611 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show scrollbar over Youtube/Vimeo video player',
|
612 |
</div>
|
613 |
<div class="msp-metabox-indented">
|
614 |
-
{{switch-box value=currentControl.inset}} <label><?php _e('Insert scrollbar inside slider',
|
615 |
</div>
|
616 |
|
617 |
{{!--<div class="msp-metabox-indented">
|
618 |
-
<label><?php _e('Scrollbar direction :',
|
619 |
{{#dropdwon-List value=currentControl.dir width=100}}
|
620 |
-
<option value="h"><?php _e('Horizontal',
|
621 |
-
<option value="v"><?php _e('Vertical',
|
622 |
{{/dropdwon-List}}
|
623 |
<div class="msp-form-space-med"></div>
|
624 |
</div>--}}
|
625 |
|
626 |
<div class="msp-metabox-indented">
|
627 |
-
<label><?php _e('Scrollbar handle color :',
|
628 |
<div class="msp-form-space-med"></div>
|
629 |
-
<label><?php _e('Hide scrollbar under this window width :',
|
630 |
</div>
|
631 |
<div class="msp-metabox-indented">
|
632 |
-
<?php _e('Align control :',
|
633 |
{{#dropdwon-List value=currentControl.align width=100}}
|
634 |
-
<option value="top"><?php _e('Top',
|
635 |
-
<option value="right"><?php _e('Right',
|
636 |
-
<option value="left"><?php _e('Left',
|
637 |
-
<option value="bottom"><?php _e('Bottom',
|
638 |
{{/dropdwon-List}}
|
639 |
<div class="msp-form-space-med"></div>
|
640 |
-
<label><?php _e('Scrollbar width :',
|
641 |
<div class="msp-form-space-med"></div>
|
642 |
-
<label><?php _e('Scrollbar margin :',
|
643 |
</div>
|
644 |
</div>
|
645 |
{{/meta-box}}
|
@@ -649,30 +649,30 @@
|
|
649 |
{{#meta-box title="Circle Timer Control Options"}}
|
650 |
<div class="msp-metabox-row">
|
651 |
<div class="msp-metabox-indented">
|
652 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide cricle timer when mouse leaves slider',
|
653 |
<div class="msp-form-space-med"></div>
|
654 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show circle timer over Youtube/Vimeo video player',
|
655 |
</div>
|
656 |
{{!--<div class="msp-metabox-indented">
|
657 |
-
<?php _e('Align control :',
|
658 |
{{#dropdwon-List value=currentControl.align width=100}}
|
659 |
-
<option value="tl"><?php _e('Top Left',
|
660 |
-
<option value="tr"><?php _e('Top Right',
|
661 |
-
<option value="bl"><?php _e('Bottom Left',
|
662 |
-
<option value="br"><?php _e('Bottom Right',
|
663 |
{{/dropdwon-List}}
|
664 |
</div>--}}
|
665 |
<div class="msp-metabox-indented">
|
666 |
-
<label><?php _e('Hide circle timer under this window width :',
|
667 |
</div>
|
668 |
<div class="msp-metabox-indented">
|
669 |
-
{{!--<label><?php _e('Circle timer margin :',
|
670 |
<div class="msp-form-space-med"></div>--}}
|
671 |
-
<label><?php _e('Circle stroke :',
|
672 |
<div class="msp-form-space-med"></div>
|
673 |
-
<label><?php _e('Circle radius :',
|
674 |
<div class="msp-form-space-med"></div>
|
675 |
-
<label><?php _e('Circle color :',
|
676 |
</div>
|
677 |
</div>
|
678 |
{{/meta-box}}
|
@@ -682,32 +682,32 @@
|
|
682 |
{{#meta-box title="Slide Info Control Options"}}
|
683 |
<div class="msp-metabox-row">
|
684 |
<div class="msp-metabox-indented">
|
685 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide slide info when mouse leaves slider',
|
686 |
<div class="msp-form-space-med"></div>
|
687 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show slide info over Youtube/Vimeo video player',
|
688 |
</div>
|
689 |
<div class="msp-metabox-indented">
|
690 |
-
{{switch-box value=currentControl.inset}} <label><?php _e('Insert slide info inside slider',
|
691 |
</div>
|
692 |
<div class="msp-metabox-indented">
|
693 |
-
<?php _e('Align control :',
|
694 |
{{#dropdwon-List value=currentControl.align width=100}}
|
695 |
-
<option value="top"><?php _e('Top',
|
696 |
-
<option value="right"><?php _e('Right',
|
697 |
-
<option value="left"><?php _e('Left',
|
698 |
-
<option value="bottom"><?php _e('Bottom',
|
699 |
{{/dropdwon-List}}
|
700 |
<div class="msp-form-space-med"></div>
|
701 |
-
<label><?php _e('Slide info margin :',
|
702 |
</div>
|
703 |
<div class="msp-metabox-indented">
|
704 |
-
<label><?php _e('Slide info width :',
|
705 |
<div class="msp-form-space-med"></div>
|
706 |
-
<label><?php _e('Slide info height :',
|
707 |
</div>
|
708 |
</div>
|
709 |
<div class="msp-metabox-indented">
|
710 |
-
<label><?php _e('Hide slide info under this window width :',
|
711 |
</div>
|
712 |
</div>
|
713 |
{{/meta-box}}
|
@@ -717,64 +717,64 @@
|
|
717 |
{{#meta-box title="Thumblist/Tabs Control Options"}}
|
718 |
<div class="msp-metabox-row">
|
719 |
<div class="msp-metabox-indented">
|
720 |
-
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide thumblist/tabs when mouse leaves slider',
|
721 |
<div class="msp-form-space-med"></div>
|
722 |
-
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show thumblist/tabs over Youtube/Vimeo video player',
|
723 |
</div>
|
724 |
<div class="msp-metabox-indented">
|
725 |
-
{{switch-box value=currentControl.inset}} <label><?php _e('Insert thumblist/tabs inside slider',
|
726 |
<div class="msp-form-space-med"></div>
|
727 |
-
{{switch-box value=currentControl.arrows}} <label><?php _e('Insert navigation arrows',
|
728 |
</div>
|
729 |
<div class="msp-metabox-indented">
|
730 |
-
{{switch-box value=currentControl.hoverChange}} <label><?php _e('Change slides on hovering over thumbs/tabs.',
|
731 |
</div>
|
732 |
<div class="msp-metabox-indented">
|
733 |
-
<?php _e('Align control :',
|
734 |
{{#dropdwon-List value=currentControl.align width=100}}
|
735 |
-
<option value="top"><?php _e('Top',
|
736 |
-
<option value="right"><?php _e('Right',
|
737 |
-
<option value="left"><?php _e('Left',
|
738 |
-
<option value="bottom"><?php _e('Bottom',
|
739 |
{{/dropdwon-List}}
|
740 |
<div class="msp-form-space-med"></div>
|
741 |
-
<label><?php _e('Thumblist/Tabs margin :',
|
742 |
</div>
|
743 |
<div class="msp-metabox-indented">
|
744 |
-
<?php _e('Appearance :',
|
745 |
{{#dropdwon-List value=currentControl.type width=100}}
|
746 |
-
<option value="thumbs"><?php _e('Thumblist',
|
747 |
-
<option value="tabs"><?php _e('Tabs',
|
748 |
{{/dropdwon-List}}
|
749 |
<div class="msp-form-space-med"></div>
|
750 |
-
<label><?php _e('Hide thumblist/tabs under this window width :',
|
751 |
</div>
|
752 |
|
753 |
{{!--<div class="msp-metabox-indented">
|
754 |
-
<label><?php _e('Thumblist/Tabs direction :',
|
755 |
{{#dropdwon-List value=currentControl.dir width=100}}
|
756 |
-
<option value="h"><?php _e('Horizontal',
|
757 |
-
<option value="v"><?php _e('Vertical',
|
758 |
{{/dropdwon-List}}
|
759 |
</div>--}}
|
760 |
|
761 |
{{#if isTab}}
|
762 |
<div class="msp-metabox-indented">
|
763 |
-
{{switch-box value=currentControl.insertThumb}} <?php _e('Insert thumbnail inside tabs',
|
764 |
</div>
|
765 |
{{else}}
|
766 |
<div class="msp-metabox-indented">
|
767 |
-
<?php _e('Thumb background fill mode :',
|
768 |
{{view MSPanel.Fillmode value=currentControl.fillMode}}
|
769 |
</div>
|
770 |
{{/if}}
|
771 |
|
772 |
<div class="msp-metabox-indented">
|
773 |
-
<label><?php _e('Thumb/Tab width :',
|
774 |
<div class="msp-form-space-med"></div>
|
775 |
-
<label><?php _e('Thumb/Tab height :',
|
776 |
<div class="msp-form-space-med"></div>
|
777 |
-
<label><?php _e('Space between thumbs/tabs :',
|
778 |
</div>
|
779 |
|
780 |
</div>
|
@@ -786,10 +786,10 @@
|
|
786 |
{{#meta-box title="Slider Callbacks"}}
|
787 |
<div class="msp-metabox-row">
|
788 |
|
789 |
-
<h4><?php _e('Here you can add or remove callbacks to slider',
|
790 |
|
791 |
<div class="msp-metabox-indented">
|
792 |
-
<label><?php _e('Add new callback',
|
793 |
{{#if noMore}}
|
794 |
<button class="msp-add-btn disabled"><span class="msp-ico msp-ico-whiteadd"></span></button>
|
795 |
{{else}}
|
@@ -800,7 +800,7 @@
|
|
800 |
{{#each callback in availableCallbacks}}
|
801 |
<option {{bind-attr value=callback.value}}>{{callback.label}}</option>
|
802 |
{{else}}
|
803 |
-
<option><?php _e('-- All callbacks are added --',
|
804 |
{{/each}}
|
805 |
{{/dropdwon-List}}
|
806 |
</div>
|
@@ -813,7 +813,7 @@
|
|
813 |
{{#code-mirror width="100%" height="auto" mode="javascript" value=callback.content}}{{/code-mirror}}
|
814 |
</div>
|
815 |
<div class="msp-metabox-indented">
|
816 |
-
<button {{action "removeCallback" callback}} class="msp-blue-btn msp-remove-btn-med"><?php _e('Remove',
|
817 |
</div>
|
818 |
</div>
|
819 |
{{/each}}
|
17 |
</div>
|
18 |
<div id="panelLoading" class="msp-loading">
|
19 |
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/loading.gif">
|
20 |
+
<?php _e('Loading data...', 'master-slider'); ?>
|
21 |
</div>
|
22 |
<div id="msp-root" class="msp-container"> </div>
|
23 |
<div id="mspHiddenEditor" style="display:none">
|
34 |
{{else}}
|
35 |
<nav class="msp-main-nav">
|
36 |
<ul>
|
37 |
+
<li>{{#link-to 'settings'}} <?php _e('Slider Settings', 'master-slider'); ?> <span class="msp-ico msp-ico-settings"></span>{{/link-to}}</li>
|
38 |
+
{{#if isFlickr }}<li>{{#link-to 'flickr'}} <?php _e('Flickr Settings', 'master-slider'); ?> <span class="msp-ico msp-ico-flickr"></span>{{/link-to}}</li>{{/if}}
|
39 |
+
{{#if isFacebook }}<li>{{#link-to 'facebook'}} <?php _e('Facebook Settings', 'master-slider'); ?> <span class="msp-ico msp-ico-facebook"></span>{{/link-to}}</li>{{/if}}
|
40 |
+
{{#if isPost }}<li>{{#link-to 'post'}} <?php _e('Posts Settings', 'master-slider'); ?> <span class="msp-ico msp-ico-posts"></span>{{/link-to}}</li>{{/if}}
|
41 |
+
{{#if isWcproduct }}<li>{{#link-to 'wcproduct'}} <?php _e('Product Slider Settings', 'master-slider'); ?> <span class="msp-ico msp-ico-wooc"></span>{{/link-to}}</li>{{/if}}
|
42 |
+
<li>{{#link-to 'slides'}} <?php _e('Slides', 'master-slider'); ?> <span class="msp-ico msp-ico-slides"></span>{{/link-to}}</li>
|
43 |
+
<li>{{#link-to 'controls'}} <?php _e('Slider Controls', 'master-slider'); ?> <span class="msp-ico msp-ico-controls"></span>{{/link-to}}</li>
|
44 |
+
<li>{{#link-to 'callbacks'}} <?php _e('Slider Callbacks', 'master-slider'); ?> <span class="msp-ico msp-ico-api"></span>{{/link-to}}</li>
|
45 |
<li class="msp-upgrade-btn"> {{#link-to 'pro-features'}}Upgrade to PRO <span class="msp-ico msp-ico-pro"></span>{{/link-to}}</li>
|
46 |
</ul>
|
47 |
</nav>
|
48 |
<div class="clear"></div>
|
49 |
{{outlet}}
|
50 |
<div class="msp-shortcode-cont">
|
51 |
+
<span><?php _e('Shortcode :', 'master-slider'); ?> </span> {{view MSPanel.SimpleCodeBlock value=shortCode width=120}}
|
52 |
+
<span><?php _e('PHP function :', 'master-slider'); ?> </span> {{view MSPanel.SimpleCodeBlock value=phpFunction width=160}}
|
53 |
</div>
|
54 |
<div class="msp-save-bar-placeholder" id="saveBarPlaceHolder"></div>
|
55 |
<div class="msp-save-bar" id="saveBar">
|
56 |
+
<button id="msp-preview-btn" {{action showPreview}} class="msp-blue-btn msp-save-changes"> <?php _e('Preview', 'master-slider'); ?></button>
|
57 |
{{#if isSending}}
|
58 |
+
<button class="msp-blue-btn msp-save-changes disabled"> <?php _e('Saving...', 'master-slider'); ?></button>
|
59 |
{{else}}
|
60 |
+
<button class="msp-blue-btn msp-save-changes" {{action "saveAll"}}> <?php _e('Save Changes', 'master-slider'); ?></button>
|
61 |
{{/if}}
|
62 |
<div class="msp-saving-msg-cont">
|
63 |
<span {{bind-attr class=":msp-save-status savingStatus"}}>{{statusMsg}}</span>
|
64 |
+
<div {{bind-attr class=":msp-time-ago savingStatus"}}><?php _e('Saved', 'master-slider'); ?> <span id="timeAgo"></span>.</div>
|
65 |
</div>
|
66 |
</div>
|
67 |
{{/if}}
|
68 |
</script>
|
69 |
|
70 |
<script type="text/x-handlebars" id="pro-features">
|
71 |
+
{{#meta-box title="Upgrade Master Slider to PRO"}}
|
72 |
+
<div class="msp-metabox-row msp-pro-tab">
|
73 |
+
<div class="msp-pro-featurs">
|
74 |
+
<h2>Add Features to Master Slider</h2>
|
75 |
+
<p>Take your WordPress site to the next level with Master Slider PRO. This plugin crunches all type of content, making it a dead-simple way to display dynamic slides in the exact the way YOU want them to look.
|
76 |
+
Best of all, Master Slider PRO works perfectly with any existing WordPress theme and doesn’t affect overall site performance. Which means, less bloat and more control!</p>
|
77 |
+
<div class="msp-pf-figure">
|
78 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/layers.jpg" alt="Animated layers">
|
79 |
+
<h6>Animated Layers</h6>
|
80 |
+
</div>
|
81 |
+
<div class="msp-pf-figure">
|
82 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/videos.jpg" alt="Videos">
|
83 |
+
<h6>Videos</h6>
|
84 |
+
</div>
|
85 |
+
<div class="msp-pf-figure">
|
86 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/sample-sliders.jpg" alt="Sample sliders">
|
87 |
+
<h6>Sample Sliders</h6>
|
88 |
+
</div>
|
89 |
+
<div class="msp-pf-figure">
|
90 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/dynamic-sources.jpg" alt="Dynamic sources">
|
91 |
+
<h6>Dynamic Sources</h6>
|
92 |
+
</div>
|
93 |
+
<div class="msp-pf-figure">
|
94 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/parallax.jpg" alt="Prallax effect">
|
95 |
+
<h6>Parallax Effect</h6>
|
96 |
+
</div>
|
97 |
+
<div class="msp-pf-figure">
|
98 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/dedicated-support.jpg" alt="Dedicated support">
|
99 |
+
<h6>Dedicated Support</h6>
|
100 |
+
</div>
|
101 |
+
</div>
|
102 |
+
<div class="clear"></div>
|
103 |
+
</div>
|
104 |
+
<div class="msp-metabox-row msp-pro-tab msp-pf-admin-section">
|
105 |
+
<div class="msp-pf-admin-ss">
|
106 |
+
<div class="msp-pf-figure">
|
107 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/layers.jpg">
|
108 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/layers.jpg" alt="layers">
|
109 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
110 |
+
</a>
|
111 |
+
</div>
|
112 |
+
<div class="msp-pf-figure">
|
113 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/sample-sliders.jpg">
|
114 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/sample-sliders.jpg" alt="sample sliders">
|
115 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
116 |
+
</a>
|
117 |
+
</div>
|
118 |
+
<div class="msp-pf-figure">
|
119 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/templates.jpg">
|
120 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/templates.jpg" alt="slider templates">
|
121 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
122 |
+
</a>
|
123 |
+
</div>
|
124 |
+
<div class="msp-pf-figure">
|
125 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/transition-editor.jpg">
|
126 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/transition-editor.jpg" alt="transition editor">
|
127 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
128 |
+
</a>
|
129 |
+
</div>
|
130 |
+
<div class="msp-pf-figure">
|
131 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/style-editor.jpg">
|
132 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/style-editor.jpg" alt="style editor">
|
133 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
134 |
+
</a>
|
135 |
+
</div>
|
136 |
+
<div class="msp-pf-figure">
|
137 |
+
<a data-featherlight="image" href="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/button-editor.jpg">
|
138 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/thumbs/button-editor.jpg" alt="style editor">
|
139 |
+
<div class="msp-pf-thumb-ol"><img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/admin-area/zoom.png" alt="zoom-ico"></div>
|
140 |
+
</a>
|
141 |
+
</div>
|
142 |
+
|
143 |
+
<div class="clear"></div>
|
144 |
+
<h3>See It In Action</h3>
|
145 |
+
<p>Want to give it a shot right away? Just give it a test drive and create your own slider, or try some of our ready-made samples!</p>
|
146 |
+
<a class="msp-blue-btn msp-pf-testdrive" href="http://avt.li/msptd" target="_blank"> <span class="msp-ico msp-ico-testdrive"></span> Test Drive Now</a>
|
147 |
+
</div>
|
148 |
+
<div class="clear"></div>
|
149 |
+
</div>
|
150 |
+
<div class="msp-metabox-row msp-pro-tab msp-pf-join-section">
|
151 |
+
<img src="<?php echo MSWP_AVERTA_ADMIN_URL . '/views/slider-panel'; ?>/images/pro-features/join.png" alt="Join the PRO version" class="msp-join-ico">
|
152 |
+
<h3>Join 4600+ PRO Users</h3>
|
153 |
+
<p>Ready to take advantage of all of the amazing features packed into MasterSlider PRO? We hope so!</p>
|
154 |
+
<a class="msp-pf-btn msp-pf-upgrade-btn" href="http://avt.li/mspup" target="_blank">Upgrade Now</a>
|
155 |
+
<a class="msp-pf-btn msp-pf-more-btn" href="http://avt.li/mspt" target="_blank">See All Features</a>
|
156 |
+
<div class="clear"></div>
|
157 |
+
</div>
|
158 |
+
{{/meta-box}}
|
159 |
</script>
|
160 |
<!-- Slider Settings Page -->
|
161 |
<script type="text/x-handlebars" id="settings">
|
162 |
|
163 |
+
{{#meta-box title="<?php _e('General Settings', 'master-slider'); ?>"}}
|
164 |
|
165 |
<div class="msp-metabox-row">
|
166 |
|
167 |
+
<h4><?php _e('Slider name and dimentions', 'master-slider'); ?></h4>
|
168 |
|
169 |
<div class="msp-metabox-indented">
|
170 |
+
<label><?php _e('Slider name :', 'master-slider'); ?> </label> {{input value=name size="40"}}
|
171 |
</div>
|
172 |
<div class="msp-metabox-indented">
|
173 |
+
<label><?php _e('Slider width :', 'master-slider'); ?> </label> {{number-input value=width}} px
|
174 |
<span class="msp-form-space"></span>
|
175 |
+
<label><?php _e('Slider height :', 'master-slider'); ?> </label> {{number-input value=height}} px
|
176 |
</div>
|
177 |
|
178 |
<div class="msp-metabox-indented">
|
179 |
+
{{switch-box value=autoCrop}}<label><?php _e('Automatically crop and resize slider images based on above size.', 'master-slider'); ?></label>
|
180 |
</div>
|
181 |
|
182 |
+
<h4><?php _e('Slider sizing method', 'master-slider'); ?></h4>
|
183 |
|
184 |
<div class="msp-metabox-indented">
|
185 |
{{#view MSPanel.Select value=layout width="400" }}
|
186 |
+
<option value="boxed"><?php _e('Boxed layout', 'master-slider'); ?></option>
|
187 |
+
<option value="fullwidth"><?php _e('Full-width', 'master-slider'); ?></option>
|
188 |
{{/view}}
|
189 |
{{#if showAutoHeight}}
|
190 |
<span class="msp-form-space"></span>
|
191 |
+
{{switch-box value=autoHeight}}<label><?php _e('Auto-height slider', 'master-slider'); ?></label>
|
192 |
{{/if}}
|
193 |
</div>
|
194 |
{{#if showMinHeight}}
|
195 |
<div class="msp-metabox-indented">
|
196 |
+
<label><?php _e('Minimum height amount :', 'master-slider'); ?> </label>{{number-input value=minHeight}} px
|
197 |
</div>
|
198 |
{{/if}}
|
199 |
{{#if showWrapperWidth}}
|
200 |
<div class="msp-metabox-indented">
|
201 |
+
<label><?php _e('Slider wrapper width :', 'master-slider'); ?> </label>{{number-input value=wrapperWidth}}
|
202 |
{{#view MSPanel.Select value=wrapperWidthUnit width="40" }}
|
203 |
<option value="px">px</option>
|
204 |
<option value="%">%</option>
|
210 |
|
211 |
{{/meta-box}}
|
212 |
|
213 |
+
{{#meta-box title="<?php _e('Slider Transition', 'master-slider'); ?>"}}
|
214 |
<div class="msp-metabox-row">
|
215 |
+
<h4><?php _e('Change slider transition, transition speed and space between slides', 'master-slider'); ?></h4>
|
216 |
|
217 |
<div class="msp-metabox-indented">
|
218 |
+
<label><?php _e('Transition :', 'master-slider'); ?> </label>
|
219 |
{{#view MSPanel.Select value=trView width=150}}
|
220 |
<option value="basic">Normal</option>
|
221 |
<option value="fade">Fade</option>
|
222 |
{{/view}}
|
223 |
<span class="msp-form-space"></span>
|
224 |
+
<label><?php _e('Transition speed :', 'master-slider'); ?> </label> {{number-input value=speed}}
|
225 |
</div>
|
226 |
<div class="msp-metabox-indented">
|
227 |
+
<label><?php _e('Direction :', 'master-slider'); ?> </label>
|
228 |
{{#view MSPanel.Select value=dir width="120"}}
|
229 |
+
<option value="h"><?php _e('Horizontal', 'master-slider'); ?></option>
|
230 |
+
<option value="v"><?php _e('Vertical', 'master-slider'); ?></option>
|
231 |
{{/view}}
|
232 |
<span class="msp-form-space"></span>
|
233 |
+
<label><?php _e('Slide space :', 'master-slider'); ?> </label> {{number-input value=space}} px
|
234 |
</div>
|
235 |
</div>
|
236 |
{{/meta-box}}
|
237 |
|
238 |
|
239 |
+
{{#meta-box title="<?php _e('Navigation', 'master-slider'); ?>"}}
|
240 |
|
241 |
<div class="msp-metabox-row">
|
242 |
+
<h4><?php _e('Slideshow behavior and sorting slides', 'master-slider'); ?></h4>
|
243 |
<div class="msp-metabox-indented">
|
244 |
+
{{switch-box value=autoplay}}<label><?php _e('Autoplay (Slideshow)', 'master-slider'); ?></label>
|
245 |
<span class="msp-form-space"></span>
|
246 |
+
{{switch-box value=loop}}<label><?php _e('Loop navigation', 'master-slider'); ?> </label>
|
247 |
<span class="msp-form-space"></span>
|
248 |
+
{{switch-box value=endPause}}<label><?php _e('Pause at end slide', 'master-slider'); ?></label>
|
249 |
</div>
|
250 |
<div class="msp-metabox-indented">
|
251 |
+
{{switch-box value=overPause}}<label><?php _e('Pause on hover', 'master-slider'); ?></label>
|
252 |
<span class="msp-form-space"></span>
|
253 |
+
{{switch-box value=shuffle}}<label><?php _e('Random order', 'master-slider'); ?></label>
|
254 |
</div>
|
255 |
<div class="msp-metabox-indented">
|
256 |
+
<label><?php _e('Start with slide :', 'master-slider'); ?> </label> {{number-input value=start min=1}}
|
257 |
</div>
|
258 |
+
<h4><?php _e('Slider navigation methods', 'master-slider'); ?></h4>
|
259 |
<div class="msp-metabox-indented">
|
260 |
+
{{switch-box value=swipe}}<label><?php _e('Touch swipe navigation', 'master-slider'); ?></label>
|
261 |
<span class="msp-form-space"></span>
|
262 |
+
{{switch-box value=mouse}}<label><?php _e('Mouse swipe navigation', 'master-slider'); ?></label>
|
263 |
<span class="msp-form-space"></span>
|
264 |
+
{{switch-box value=grabCursor}}<label><?php _e('Use grab mouse cursor', 'master-slider'); ?></label>
|
265 |
</div>
|
266 |
<div class="msp-metabox-indented">
|
267 |
+
{{switch-box value=wheel}}<label><?php _e('Mouse wheel navigation', 'master-slider'); ?></label>
|
268 |
</div>
|
269 |
<div class="msp-metabox-indented">
|
270 |
+
{{switch-box value=startOnAppear}}<label><?php _e('Start slider when appears in browser window.', 'master-slider'); ?></label>
|
271 |
</div>
|
272 |
+
<h4><?php _e('Slide preloading', 'master-slider'); ?></h4>
|
273 |
<div class="msp-metabox-indented">
|
274 |
{{#view MSPanel.Select value=preloadMethod width="200" }}
|
275 |
+
<option value="nearby"><?php _e('Load nearby slides', 'master-slider'); ?></option>
|
276 |
+
<option value="-1"><?php _e('Load slides in sequence', 'master-slider'); ?></option>
|
277 |
+
<option value="all"><?php _e('Load all slides before init', 'master-slider'); ?></option>
|
278 |
{{/view}}
|
279 |
{{#if showNearbyNum}}
|
280 |
<span class="msp-form-space"></span>
|
281 |
+
<?php _e('Number of slides :', 'master-slider'); ?> {{number-input value=preload }}
|
282 |
{{/if}}
|
283 |
</div>
|
284 |
</div>
|
285 |
|
286 |
{{/meta-box}}
|
287 |
|
288 |
+
{{#meta-box title="<?php _e('Appearance', 'master-slider'); ?>"}}
|
289 |
|
290 |
<div class="msp-metabox-row">
|
291 |
+
<h4><?php _e('Slider Skin', 'master-slider'); ?></h4>
|
292 |
<div class="msp-metabox-indented">
|
293 |
+
<label><?php _e('Skin :', 'master-slider'); ?> </label>
|
294 |
{{#dropdwon-List value=skin width=180}}
|
295 |
{{#each skin in sliderSkins}}
|
296 |
<option {{bind-attr value=skin.class}}>{{skin.label}}</option>
|
297 |
{{/each}}
|
298 |
|
299 |
{{!--
|
300 |
+
<option value="ms-skin-default"><?php _e('Default', 'master-slider'); ?></option>
|
301 |
+
<option value="ms-skin-light-2"><?php _e('Light 2', 'master-slider'); ?></option>
|
302 |
+
<option value="ms-skin-light-3"><?php _e('Light 3', 'master-slider'); ?></option>
|
303 |
+
<option value="ms-skin-light-4"><?php _e('Light 4', 'master-slider'); ?></option>
|
304 |
+
<option value="ms-skin-light-5"><?php _e('Light 5', 'master-slider'); ?></option>
|
305 |
+
<option value="ms-skin-light-6"><?php _e('Light 6', 'master-slider'); ?></option>
|
306 |
+
<option value="ms-skin-light-6 round-skin"><?php _e('Light 6 Round', 'master-slider'); ?></option>
|
307 |
+
<option value="ms-skin-contrast"><?php _e('Contrast', 'master-slider'); ?></option>
|
308 |
+
<option value="ms-skin-black-1"><?php _e('Black 1', 'master-slider'); ?></option>
|
309 |
+
<option value="ms-skin-black-2"><?php _e('Black 2', 'master-slider'); ?></option>
|
310 |
+
<option value="ms-skin-black-2 round-skin"><?php _e('Black 2 Round', 'master-slider'); ?></option>
|
311 |
+
<option value="ms-skin-metro"><?php _e('Metro', 'master-slider'); ?></option>
|
312 |
--}}
|
313 |
{{/dropdwon-List}}
|
314 |
</div>
|
315 |
<div class="msp-metabox-indented">
|
316 |
+
<label><?php _e('Align center slider controls :', 'master-slider'); ?> </label> {{switch-box value=centerControls}}
|
317 |
</div>
|
318 |
+
<h4><?php _e('Slider background settings', 'master-slider'); ?></h4>
|
319 |
<div class="msp-metabox-indented">
|
320 |
+
<label><?php _e('Background image :', 'master-slider'); ?> </label> {{view MSPanel.ImgSelect value=bgImage thumb=bgImageThumb}}
|
321 |
<span class="msp-form-space"></span>
|
322 |
+
<label><?php _e('Background color :', 'master-slider'); ?> </label> {{color-picker value=bgColor}}
|
323 |
</div>
|
324 |
+
<h4><?php _e('Slider custom class name and style', 'master-slider'); ?></h4>
|
325 |
<div class="msp-metabox-indented">
|
326 |
+
<label><?php _e('Class name :', 'master-slider'); ?> </label> {{input value=className}}
|
327 |
</div>
|
328 |
{{!--<div class="msp-metabox-indented">
|
329 |
+
<label><?php _e('Inline style :', 'master-slider'); ?> </label> {{input value=inlineStyle size="50"}}
|
330 |
</div>--}}
|
331 |
<div class="msp-metabox-indented">
|
332 |
+
<label><?php _e('Slider custom styles :', 'master-slider'); ?> </label>
|
333 |
</div>
|
334 |
<div class="msp-metabox-indented">
|
335 |
{{#code-mirror width="880" height="250" mode="css" value=customStyle}}{{/code-mirror}}
|
343 |
<script type="text/x-handlebars" id="slides">
|
344 |
{{#if customSlider}}
|
345 |
<!-- Slides List -->
|
346 |
+
{{#meta-box title="<?php _e('Slides', 'master-slider'); ?>"}}
|
347 |
<div class="msp-metabox-row">
|
348 |
{{view MSPanel.SlideList}}
|
349 |
</div>
|
360 |
<div class="msp-metabox-handle">
|
361 |
|
362 |
<ul class="tabs">
|
363 |
+
<li class="active"><a href="#sl-bg"><?php _e('Background', 'master-slider'); ?></a></li>
|
364 |
+
<li><a href="#sl-val"><?php _e('Video and Link', 'master-slider'); ?></a></li>
|
365 |
+
<li><a href="#sl-inf"><?php _e('Slide Info', 'master-slider'); ?></a></li>
|
366 |
+
<li><a href="#sl-misc"><?php _e('Misc', 'master-slider'); ?></a></li>
|
367 |
</ul>
|
368 |
|
369 |
<div class="msp-metabox-toggle"></div>
|
381 |
{{#meta-box title="Slide"}}
|
382 |
<div class="msp-metabox-row">
|
383 |
<div class="msp-metabox-indented">
|
384 |
+
<label><?php _e('Slide duration :', 'master-slider'); ?> </label> {{number-input class="msp-number-input" min=0 max=300 step="0.1" value=currentSlide.duration}} s
|
385 |
</div>
|
386 |
</div>
|
387 |
<hr class="msp-metabox-hr">
|
392 |
<!-- Slide Background Settings Partial -->
|
393 |
<script type="text/x-handlebars" id="slide-background">
|
394 |
<div class="msp-metabox-row">
|
395 |
+
<h4><?php _e('Choose slide background and thumbnail', 'master-slider'); ?></h4>
|
396 |
<div class="msp-metabox-indented">
|
397 |
+
<label><?php _e('Background :', 'master-slider'); ?> </label> {{view MSPanel.ImgSelect value=currentSlide.bg thumb=currentSlide.bgThumb }}
|
398 |
<span class="msp-form-space"></span>
|
399 |
+
<label><?php _e('Fillmode :', 'master-slider'); ?> </label> {{view MSPanel.Fillmode value=currentSlide.fillMode}}
|
400 |
<span class="msp-form-space"></span>
|
401 |
+
<label><?php _e('Thumbnail :', 'master-slider'); ?> </label> {{view MSPanel.ImgSelect value=currentSlide.thumbOrginal thumb=currentSlide.thumb}}
|
402 |
</div>
|
403 |
</div>
|
404 |
</script>
|
405 |
<!-- Slide Embeded Video and Link -->
|
406 |
<script type="text/x-handlebars" id="slide-video-and-link">
|
407 |
<div class="msp-metabox-row">
|
408 |
+
<h4><?php _e('Link this slide', 'master-slider'); ?> </h4>
|
409 |
<div class="msp-metabox-indented">
|
410 |
+
<label><?php _e('URL :', 'master-slider'); ?> </label> {{input class="msp-path-input" value=currentSlide.link}}
|
411 |
{{view MSPanel.URLTarget value=currentSlide.linkTarget }}
|
412 |
</div>
|
413 |
<div class="msp-metabox-indented">
|
414 |
+
<label><?php _e('Link id :', 'master-slider'); ?> </label> {{input size=20 value=currentSlide.linkId}}
|
415 |
<span class="msp-form-space"></span>
|
416 |
+
<label><?php _e('Link class :', 'master-slider'); ?> </label> {{input size=20 value=currentSlide.linkClass}}
|
417 |
</div>
|
418 |
<div class="msp-metabox-indented">
|
419 |
+
<label><?php _e('Link rel :', 'master-slider'); ?> </label> {{input size=20 value=currentSlide.linkRel}}
|
420 |
<span class="msp-form-space"></span>
|
421 |
+
<label><?php _e('Link title :', 'master-slider'); ?> </label> {{input size=20 value=currentSlide.linkTitle}}
|
422 |
</div>
|
423 |
+
<h4><?php _e('Youtube or Vimeo video as slide', 'master-slider'); ?></h4>
|
424 |
<div class="msp-metabox-indented">
|
425 |
+
<label><?php _e('Video embed src :', 'master-slider'); ?> </label> {{input size=60 value=currentSlide.video}}
|
426 |
<span class="msp-form-space"></span>
|
427 |
+
<label><?php _e('Autoplay video :', 'master-slider'); ?> </label> {{switch-box value=currentSlide.autoplayVideo}}
|
428 |
</div>
|
429 |
<div class="msp-metabox-indented">
|
430 |
+
<a href="http://masterslider.com/doc/wp/#embed-url" target="_blank"><?php _e('Where to find the Youtube/Vimeo embed URL.', 'master-slider'); ?></a>
|
431 |
</div>
|
432 |
</div>
|
433 |
</script>
|
436 |
<script type="text/x-handlebars" id="slide-info">
|
437 |
<div class="msp-metabox-row">
|
438 |
<div class="msp-metabox-indented">
|
439 |
+
<label><?php _e('This info will show beside of slider when slider reaches the slide or it can represent as tab in a tabs control. It is relative to selected slider template.', 'master-slider'); ?></label>
|
440 |
</div>
|
441 |
|
442 |
{{#if MSPanel.dynamicTags}}
|
443 |
<div class="msp-metabox-indented">
|
444 |
+
<label><?php _e('Insert dynamic content : ', 'master-slider'); ?></label>
|
445 |
{{view MSPanel.AddDynamicTag editorId=infoEditor}}
|
446 |
</div>
|
447 |
{{/if}}
|
455 |
<!-- Slide Misc -->
|
456 |
<script type="text/x-handlebars" id="slide-misc">
|
457 |
<div class="msp-metabox-row">
|
458 |
+
<h4><?php _e('Custom class name and id for slide element', 'master-slider'); ?> </h4>
|
459 |
<div class="msp-metabox-indented">
|
460 |
+
<label><?php _e('Class name :', 'master-slider'); ?> </label> {{input size=30 value=currentSlide.cssClass}}
|
461 |
<span class="msp-form-space"></span>
|
462 |
+
<label><?php _e('CSS id :', 'master-slider'); ?> </label> {{input size=30 value=currentSlide.cssId}}
|
463 |
</div>
|
464 |
+
<h4><?php _e('Background color and slide background alt text ', 'master-slider'); ?></h4>
|
465 |
<div class="msp-metabox-indented">
|
466 |
+
<label><?php _e('Background color :', 'master-slider'); ?> </label> {{color-picker value=currentSlide.bgColor}}
|
467 |
<span class="msp-form-space"></span>
|
468 |
+
<label><?php _e('Alt text :', 'master-slider'); ?> </label> {{input size=30 value=currentSlide.bgAlt}}
|
469 |
</div>
|
470 |
+
<h4><?php _e('Slide color and pattern overlay ', 'master-slider'); ?></h4>
|
471 |
<div class="msp-metabox-indented">
|
472 |
+
<label><?php _e('Color overlay :', 'master-slider'); ?> </label> {{color-picker value=currentSlide.colorOverlay}}
|
473 |
<div class="msp-form-space-med"></div>
|
474 |
+
<label><?php _e('Pattern overlay :', 'master-slider'); ?> </label> {{pattern-picker value=currentSlide.pattern}}
|
475 |
</div>
|
476 |
</div>
|
477 |
</script>
|
481 |
{{#meta-box title="Slider Controls"}}
|
482 |
<div class="msp-metabox-row">
|
483 |
<div class="msp-metabox-indented">
|
484 |
+
<?php _e('The selected tempalte for slider does not support custom controls.', 'master-slider'); ?>
|
485 |
</div>
|
486 |
</div>
|
487 |
{{/meta-box}}
|
489 |
{{#meta-box title="Slider Controls"}}
|
490 |
<div class="msp-metabox-row">
|
491 |
|
492 |
+
<h4><?php _e('Here you can add or remove controls to slider', 'master-slider'); ?></h4>
|
493 |
|
494 |
<div class="msp-metabox-indented">
|
495 |
+
<label><?php _e('Add new control', 'master-slider'); ?></label>
|
496 |
{{#if noMore}}
|
497 |
<button class="msp-add-btn disabled"><span class="msp-ico msp-ico-whiteadd"></span></button>
|
498 |
{{else}}
|
503 |
{{#each control in availableControls}}
|
504 |
<option {{bind-attr value=control.value}}>{{control.label}}</option>
|
505 |
{{else}}
|
506 |
+
<option><?php _e('-- All controls are used --', 'master-slider'); ?></option>
|
507 |
{{/each}}
|
508 |
{{/dropdwon-List}}
|
509 |
</div>
|
510 |
</div>
|
511 |
<hr class="msp-metabox-hr">
|
512 |
<div class="msp-metabox-row">
|
513 |
+
<h4><?php _e('Used controls:', 'master-slider'); ?></h4>
|
514 |
<div class="msp-metabox-indented">
|
515 |
{{#each control in controller}}
|
516 |
{{view MSPanel.ControlBtn control=control}}
|
527 |
{{#meta-box title="Arrows Control Options"}}
|
528 |
<div class="msp-metabox-row">
|
529 |
<div class="msp-metabox-indented">
|
530 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide arrows when mouse leaves slider', 'master-slider'); ?></label>
|
531 |
<div class="msp-form-space-med"></div>
|
532 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show arrows over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
533 |
</div>
|
534 |
<div class="msp-metabox-indented">
|
535 |
+
<label><?php _e('Hide arrows under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
536 |
</div>
|
537 |
|
538 |
{{!--<div class="msp-metabox-indented">
|
539 |
+
{{switch-box value=currentControl.inset}} <label><?php _e('Insert arrows inside slider', 'master-slider'); ?></label>
|
540 |
</div>
|
541 |
<div class="msp-metabox-indented">
|
542 |
+
<label><?php _e('Arrows margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
543 |
</div>--}}
|
544 |
</div>
|
545 |
{{/meta-box}}
|
549 |
{{#meta-box title="Line Timer Control Options"}}
|
550 |
<div class="msp-metabox-row">
|
551 |
<div class="msp-metabox-indented">
|
552 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide line timer when mouse leaves slider', 'master-slider'); ?></label>
|
553 |
<div class="msp-form-space-med"></div>
|
554 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show line timer over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
555 |
</div>
|
556 |
<div class="msp-metabox-indented">
|
557 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
558 |
{{#dropdwon-List value=currentControl.align width=100}}
|
559 |
+
<option value="top"><?php _e('Top', 'master-slider'); ?></option>
|
560 |
+
<option value="bottom"><?php _e('Bottom', 'master-slider'); ?></option>
|
561 |
{{/dropdwon-List}}
|
562 |
<div class="msp-form-space-med"></div>
|
563 |
+
<label><?php _e('Hide line timer under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
564 |
</div>
|
565 |
<div class="msp-metabox-indented">
|
566 |
+
<label><?php _e('Line timer color :', 'master-slider'); ?> </label> {{color-picker value=currentControl.color}}
|
567 |
<div class="msp-form-space-med"></div>
|
568 |
+
<label><?php _e('Line timer width :', 'master-slider'); ?> </label> {{number-input value=currentControl.width}} px
|
569 |
</div>
|
570 |
</div>
|
571 |
{{/meta-box}}
|
575 |
{{#meta-box title="Bullets Control Options"}}
|
576 |
<div class="msp-metabox-row">
|
577 |
<div class="msp-metabox-indented">
|
578 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide bullets when mouse leaves slider', 'master-slider'); ?></label>
|
579 |
<div class="msp-form-space-med"></div>
|
580 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show bullets over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
581 |
</div>
|
582 |
{{!-- <div class="msp-metabox-indented">
|
583 |
+
{{switch-box value=currentControl.inset}} <label><?php _e('Insert bullets inside slider', 'master-slider'); ?></label>
|
584 |
</div> --}}
|
585 |
<div class="msp-metabox-indented">
|
586 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
587 |
{{#dropdwon-List value=currentControl.align width=100}}
|
588 |
+
<option value="top"><?php _e('Top', 'master-slider'); ?></option>
|
589 |
+
<option value="right"><?php _e('Right', 'master-slider'); ?></option>
|
590 |
+
<option value="left"><?php _e('Left', 'master-slider'); ?></option>
|
591 |
+
<option value="bottom"><?php _e('Bottom', 'master-slider'); ?></option>
|
592 |
{{/dropdwon-List}}
|
593 |
<div class="msp-form-space-med"></div>
|
594 |
+
<label><?php _e('Bullets margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
595 |
<div class="msp-form-space-med"></div>
|
596 |
+
<label><?php _e('Space between bullets :', 'master-slider'); ?> </label> {{number-input value=currentControl.space min=null}} px
|
597 |
</div>
|
598 |
<div class="msp-metabox-indented">
|
599 |
+
<label><?php _e('Hide bullets under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
600 |
</div>
|
601 |
</div>
|
602 |
{{/meta-box}}
|
606 |
{{#meta-box title="Scrollbar Control Options"}}
|
607 |
<div class="msp-metabox-row">
|
608 |
<div class="msp-metabox-indented">
|
609 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide scrollbar when mouse leaves slider', 'master-slider'); ?></label>
|
610 |
<div class="msp-form-space-med"></div>
|
611 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show scrollbar over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
612 |
</div>
|
613 |
<div class="msp-metabox-indented">
|
614 |
+
{{switch-box value=currentControl.inset}} <label><?php _e('Insert scrollbar inside slider', 'master-slider'); ?></label>
|
615 |
</div>
|
616 |
|
617 |
{{!--<div class="msp-metabox-indented">
|
618 |
+
<label><?php _e('Scrollbar direction :', 'master-slider'); ?> </label>
|
619 |
{{#dropdwon-List value=currentControl.dir width=100}}
|
620 |
+
<option value="h"><?php _e('Horizontal', 'master-slider'); ?></option>
|
621 |
+
<option value="v"><?php _e('Vertical', 'master-slider'); ?></option>
|
622 |
{{/dropdwon-List}}
|
623 |
<div class="msp-form-space-med"></div>
|
624 |
</div>--}}
|
625 |
|
626 |
<div class="msp-metabox-indented">
|
627 |
+
<label><?php _e('Scrollbar handle color :', 'master-slider'); ?> </label> {{color-picker value=currentControl.color}}
|
628 |
<div class="msp-form-space-med"></div>
|
629 |
+
<label><?php _e('Hide scrollbar under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
630 |
</div>
|
631 |
<div class="msp-metabox-indented">
|
632 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
633 |
{{#dropdwon-List value=currentControl.align width=100}}
|
634 |
+
<option value="top"><?php _e('Top', 'master-slider'); ?></option>
|
635 |
+
<option value="right"><?php _e('Right', 'master-slider'); ?></option>
|
636 |
+
<option value="left"><?php _e('Left', 'master-slider'); ?></option>
|
637 |
+
<option value="bottom"><?php _e('Bottom', 'master-slider'); ?></option>
|
638 |
{{/dropdwon-List}}
|
639 |
<div class="msp-form-space-med"></div>
|
640 |
+
<label><?php _e('Scrollbar width :', 'master-slider'); ?> </label> {{number-input value=currentControl.width}} px
|
641 |
<div class="msp-form-space-med"></div>
|
642 |
+
<label><?php _e('Scrollbar margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
643 |
</div>
|
644 |
</div>
|
645 |
{{/meta-box}}
|
649 |
{{#meta-box title="Circle Timer Control Options"}}
|
650 |
<div class="msp-metabox-row">
|
651 |
<div class="msp-metabox-indented">
|
652 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide cricle timer when mouse leaves slider', 'master-slider'); ?></label>
|
653 |
<div class="msp-form-space-med"></div>
|
654 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show circle timer over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
655 |
</div>
|
656 |
{{!--<div class="msp-metabox-indented">
|
657 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
658 |
{{#dropdwon-List value=currentControl.align width=100}}
|
659 |
+
<option value="tl"><?php _e('Top Left', 'master-slider'); ?></option>
|
660 |
+
<option value="tr"><?php _e('Top Right', 'master-slider'); ?></option>
|
661 |
+
<option value="bl"><?php _e('Bottom Left', 'master-slider'); ?></option>
|
662 |
+
<option value="br"><?php _e('Bottom Right', 'master-slider'); ?></option>
|
663 |
{{/dropdwon-List}}
|
664 |
</div>--}}
|
665 |
<div class="msp-metabox-indented">
|
666 |
+
<label><?php _e('Hide circle timer under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
667 |
</div>
|
668 |
<div class="msp-metabox-indented">
|
669 |
+
{{!--<label><?php _e('Circle timer margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
670 |
<div class="msp-form-space-med"></div>--}}
|
671 |
+
<label><?php _e('Circle stroke :', 'master-slider'); ?> </label> {{number-input value=currentControl.stroke}} px
|
672 |
<div class="msp-form-space-med"></div>
|
673 |
+
<label><?php _e('Circle radius :', 'master-slider'); ?> </label> {{number-input value=currentControl.radius}} px
|
674 |
<div class="msp-form-space-med"></div>
|
675 |
+
<label><?php _e('Circle color :', 'master-slider'); ?> </label> {{color-picker value=currentControl.color}}
|
676 |
</div>
|
677 |
</div>
|
678 |
{{/meta-box}}
|
682 |
{{#meta-box title="Slide Info Control Options"}}
|
683 |
<div class="msp-metabox-row">
|
684 |
<div class="msp-metabox-indented">
|
685 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide slide info when mouse leaves slider', 'master-slider'); ?></label>
|
686 |
<div class="msp-form-space-med"></div>
|
687 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show slide info over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
688 |
</div>
|
689 |
<div class="msp-metabox-indented">
|
690 |
+
{{switch-box value=currentControl.inset}} <label><?php _e('Insert slide info inside slider', 'master-slider'); ?></label>
|
691 |
</div>
|
692 |
<div class="msp-metabox-indented">
|
693 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
694 |
{{#dropdwon-List value=currentControl.align width=100}}
|
695 |
+
<option value="top"><?php _e('Top', 'master-slider'); ?></option>
|
696 |
+
<option value="right"><?php _e('Right', 'master-slider'); ?></option>
|
697 |
+
<option value="left"><?php _e('Left', 'master-slider'); ?></option>
|
698 |
+
<option value="bottom"><?php _e('Bottom', 'master-slider'); ?></option>
|
699 |
{{/dropdwon-List}}
|
700 |
<div class="msp-form-space-med"></div>
|
701 |
+
<label><?php _e('Slide info margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
702 |
</div>
|
703 |
<div class="msp-metabox-indented">
|
704 |
+
<label><?php _e('Slide info width :', 'master-slider'); ?> </label> {{number-input value=currentControl.width}} px
|
705 |
<div class="msp-form-space-med"></div>
|
706 |
+
<label><?php _e('Slide info height :', 'master-slider'); ?> </label> {{number-input value=currentControl.height}} px
|
707 |
</div>
|
708 |
</div>
|
709 |
<div class="msp-metabox-indented">
|
710 |
+
<label><?php _e('Hide slide info under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
711 |
</div>
|
712 |
</div>
|
713 |
{{/meta-box}}
|
717 |
{{#meta-box title="Thumblist/Tabs Control Options"}}
|
718 |
<div class="msp-metabox-row">
|
719 |
<div class="msp-metabox-indented">
|
720 |
+
{{switch-box value=currentControl.autoHide}} <label><?php _e('Hide thumblist/tabs when mouse leaves slider', 'master-slider'); ?></label>
|
721 |
<div class="msp-form-space-med"></div>
|
722 |
+
{{switch-box value=currentControl.overVideo}} <label><?php _e('Show thumblist/tabs over Youtube/Vimeo video player', 'master-slider'); ?></label>
|
723 |
</div>
|
724 |
<div class="msp-metabox-indented">
|
725 |
+
{{switch-box value=currentControl.inset}} <label><?php _e('Insert thumblist/tabs inside slider', 'master-slider'); ?></label>
|
726 |
<div class="msp-form-space-med"></div>
|
727 |
+
{{switch-box value=currentControl.arrows}} <label><?php _e('Insert navigation arrows', 'master-slider'); ?></label>
|
728 |
</div>
|
729 |
<div class="msp-metabox-indented">
|
730 |
+
{{switch-box value=currentControl.hoverChange}} <label><?php _e('Change slides on hovering over thumbs/tabs.', 'master-slider'); ?></label>
|
731 |
</div>
|
732 |
<div class="msp-metabox-indented">
|
733 |
+
<?php _e('Align control :', 'master-slider'); ?>
|
734 |
{{#dropdwon-List value=currentControl.align width=100}}
|
735 |
+
<option value="top"><?php _e('Top', 'master-slider'); ?></option>
|
736 |
+
<option value="right"><?php _e('Right', 'master-slider'); ?></option>
|
737 |
+
<option value="left"><?php _e('Left', 'master-slider'); ?></option>
|
738 |
+
<option value="bottom"><?php _e('Bottom', 'master-slider'); ?></option>
|
739 |
{{/dropdwon-List}}
|
740 |
<div class="msp-form-space-med"></div>
|
741 |
+
<label><?php _e('Thumblist/Tabs margin :', 'master-slider'); ?> </label> {{number-input value=currentControl.margin min=null}} px
|
742 |
</div>
|
743 |
<div class="msp-metabox-indented">
|
744 |
+
<?php _e('Appearance :', 'master-slider'); ?>
|
745 |
{{#dropdwon-List value=currentControl.type width=100}}
|
746 |
+
<option value="thumbs"><?php _e('Thumblist', 'master-slider'); ?></option>
|
747 |
+
<option value="tabs"><?php _e('Tabs', 'master-slider'); ?></option>
|
748 |
{{/dropdwon-List}}
|
749 |
<div class="msp-form-space-med"></div>
|
750 |
+
<label><?php _e('Hide thumblist/tabs under this window width :', 'master-slider'); ?> </label> {{number-input value=currentControl.hideUnder}} px
|
751 |
</div>
|
752 |
|
753 |
{{!--<div class="msp-metabox-indented">
|
754 |
+
<label><?php _e('Thumblist/Tabs direction :', 'master-slider'); ?> </label>
|
755 |
{{#dropdwon-List value=currentControl.dir width=100}}
|
756 |
+
<option value="h"><?php _e('Horizontal', 'master-slider'); ?></option>
|
757 |
+
<option value="v"><?php _e('Vertical', 'master-slider'); ?></option>
|
758 |
{{/dropdwon-List}}
|
759 |
</div>--}}
|
760 |
|
761 |
{{#if isTab}}
|
762 |
<div class="msp-metabox-indented">
|
763 |
+
{{switch-box value=currentControl.insertThumb}} <?php _e('Insert thumbnail inside tabs', 'master-slider'); ?>
|
764 |
</div>
|
765 |
{{else}}
|
766 |
<div class="msp-metabox-indented">
|
767 |
+
<?php _e('Thumb background fill mode :', 'master-slider'); ?>
|
768 |
{{view MSPanel.Fillmode value=currentControl.fillMode}}
|
769 |
</div>
|
770 |
{{/if}}
|
771 |
|
772 |
<div class="msp-metabox-indented">
|
773 |
+
<label><?php _e('Thumb/Tab width :', 'master-slider'); ?> </label> {{number-input value=currentControl.width}} px
|
774 |
<div class="msp-form-space-med"></div>
|
775 |
+
<label><?php _e('Thumb/Tab height :', 'master-slider'); ?> </label> {{number-input value=currentControl.height}} px
|
776 |
<div class="msp-form-space-med"></div>
|
777 |
+
<label><?php _e('Space between thumbs/tabs :', 'master-slider'); ?> </label> {{number-input value=currentControl.space}} px
|
778 |
</div>
|
779 |
|
780 |
</div>
|
786 |
{{#meta-box title="Slider Callbacks"}}
|
787 |
<div class="msp-metabox-row">
|
788 |
|
789 |
+
<h4><?php _e('Here you can add or remove callbacks to slider', 'master-slider'); ?></h4>
|
790 |
|
791 |
<div class="msp-metabox-indented">
|
792 |
+
<label><?php _e('Add new callback', 'master-slider'); ?></label>
|
793 |
{{#if noMore}}
|
794 |
<button class="msp-add-btn disabled"><span class="msp-ico msp-ico-whiteadd"></span></button>
|
795 |
{{else}}
|
800 |
{{#each callback in availableCallbacks}}
|
801 |
<option {{bind-attr value=callback.value}}>{{callback.label}}</option>
|
802 |
{{else}}
|
803 |
+
<option><?php _e('-- All callbacks are added --', 'master-slider'); ?></option>
|
804 |
{{/each}}
|
805 |
{{/dropdwon-List}}
|
806 |
</div>
|
813 |
{{#code-mirror width="100%" height="auto" mode="javascript" value=callback.content}}{{/code-mirror}}
|
814 |
</div>
|
815 |
<div class="msp-metabox-indented">
|
816 |
+
<button {{action "removeCallback" callback}} class="msp-blue-btn msp-remove-btn-med"><?php _e('Remove', 'master-slider'); ?></button>
|
817 |
</div>
|
818 |
</div>
|
819 |
{{/each}}
|
includes/classes/class-msp-core-widget.php
CHANGED
@@ -116,7 +116,7 @@ class MSP_Widget extends WP_Widget {
|
|
116 |
|
117 |
case 'select':
|
118 |
echo '<p>',
|
119 |
-
'<label for="'.$this->get_field_id($id).'" >'. __( $field['name'],
|
120 |
'<select name="'.$this->get_field_name($id).'" id="'.$this->get_field_id($id).'" value="'.$instance[$id].'" style="width:100%;max-width:100%;" >';
|
121 |
foreach ($field['options'] as $key => $value) {
|
122 |
echo '<option value="'.$key.'" '.(($instance[$id] == $key)?'selected="selected"':'' ).' >'. __($value, "default"). '</option>';
|
116 |
|
117 |
case 'select':
|
118 |
echo '<p>',
|
119 |
+
'<label for="'.$this->get_field_id($id).'" >'. __( $field['name'], 'master-slider' ). '</label>',
|
120 |
'<select name="'.$this->get_field_name($id).'" id="'.$this->get_field_id($id).'" value="'.$instance[$id].'" style="width:100%;max-width:100%;" >';
|
121 |
foreach ($field['options'] as $key => $value) {
|
122 |
echo '<option value="'.$key.'" '.(($instance[$id] == $key)?'selected="selected"':'' ).' >'. __($value, "default"). '</option>';
|
includes/classes/class-msp-db.php
CHANGED
@@ -20,561 +20,561 @@ if ( ! defined('ABSPATH') ) {
|
|
20 |
*/
|
21 |
class MSP_DB {
|
22 |
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
ID mediumint unsigned NOT NULL AUTO_INCREMENT,
|
140 |
title varchar(100) NOT NULL,
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
) {$this->charset_collate};";
|
152 |
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
|
157 |
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
|
166 |
-
|
167 |
ID smallint unsigned NOT NULL AUTO_INCREMENT,
|
168 |
option_name varchar(120) NOT NULL,
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
) $this->charset_collate; ";
|
173 |
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
|
259 |
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
|
353 |
-
|
354 |
-
|
355 |
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
|
360 |
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
|
381 |
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
|
395 |
-
|
396 |
-
|
397 |
|
398 |
-
|
399 |
-
|
400 |
|
401 |
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
|
410 |
-
|
411 |
-
|
412 |
|
413 |
-
|
414 |
|
415 |
-
|
416 |
-
|
417 |
|
418 |
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
|
428 |
-
|
429 |
-
|
430 |
|
431 |
-
|
432 |
|
433 |
-
|
434 |
-
|
435 |
|
436 |
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
|
451 |
-
|
452 |
|
453 |
-
|
454 |
-
|
455 |
|
456 |
|
457 |
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
|
476 |
-
|
477 |
|
478 |
|
479 |
-
|
480 |
-
|
481 |
|
482 |
-
|
483 |
-
|
484 |
|
485 |
-
|
486 |
-
|
487 |
|
488 |
-
|
489 |
-
|
490 |
|
491 |
-
|
492 |
-
|
493 |
|
494 |
-
|
495 |
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
|
500 |
$orderby_clause = sanitize_sql_orderby( $orderby_clause );
|
501 |
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
|
511 |
-
|
512 |
-
|
513 |
|
514 |
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
* @param int $offset The offset of the first row to return
|
520 |
* @param string $orderby The field name to order results by
|
521 |
* @param string $order The sort type. 'DESC' or 'ASC'
|
522 |
* @param string $where The sql filter to get results by
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
|
536 |
-
|
537 |
-
|
538 |
|
539 |
|
540 |
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
* @param int $offset The offset of the first row to return
|
546 |
* @param string $orderby The field name to order results by
|
547 |
* @param string $sort The sort type. 'DESC' or 'ASC'
|
548 |
* @param string $where The sql filter to get results by
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
|
563 |
-
|
564 |
-
|
565 |
|
566 |
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
|
579 |
|
580 |
|
@@ -582,158 +582,158 @@ class MSP_DB {
|
|
582 |
|
583 |
|
584 |
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
|
601 |
-
|
602 |
-
|
603 |
|
604 |
|
605 |
-
|
606 |
-
|
607 |
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
|
619 |
-
|
620 |
-
|
621 |
|
622 |
-
|
623 |
-
|
624 |
|
625 |
-
|
626 |
-
|
627 |
|
628 |
-
|
629 |
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
|
634 |
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
|
650 |
-
|
651 |
|
652 |
-
|
653 |
-
|
654 |
|
655 |
-
|
656 |
-
|
657 |
|
658 |
-
|
659 |
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
|
665 |
-
|
666 |
-
|
667 |
|
668 |
|
669 |
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
|
686 |
-
|
687 |
-
|
688 |
|
689 |
-
|
690 |
-
|
691 |
|
692 |
-
|
693 |
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
|
698 |
-
|
699 |
|
700 |
|
701 |
-
|
702 |
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
|
709 |
-
|
710 |
-
|
711 |
|
712 |
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
|
733 |
-
|
734 |
|
735 |
-
|
736 |
-
|
737 |
|
738 |
|
739 |
|
@@ -741,81 +741,81 @@ class MSP_DB {
|
|
741 |
|
742 |
|
743 |
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
|
756 |
|
757 |
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
|
770 |
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
|
785 |
-
|
786 |
-
|
787 |
|
788 |
-
|
789 |
-
|
790 |
|
791 |
-
|
792 |
-
|
793 |
|
794 |
-
|
795 |
-
|
796 |
|
797 |
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
|
804 |
-
|
805 |
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
|
820 |
}
|
821 |
|
20 |
*/
|
21 |
class MSP_DB {
|
22 |
|
23 |
+
/**
|
24 |
+
* Current database version
|
25 |
+
*/
|
26 |
+
const DB_VERSION = 1.03;
|
27 |
+
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Count of rows returned by previous query
|
31 |
+
*
|
32 |
+
* @since 1.0
|
33 |
+
* @access private
|
34 |
+
* @var int
|
35 |
+
*/
|
36 |
+
var $num_rows = 0;
|
37 |
+
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Last query made
|
41 |
+
*
|
42 |
+
* @since 1.0
|
43 |
+
* @access private
|
44 |
+
* @var array
|
45 |
+
*/
|
46 |
+
var $last_query;
|
47 |
+
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Results of the last query made
|
51 |
+
*
|
52 |
+
* @since 1.0
|
53 |
+
* @access private
|
54 |
+
* @var array|null
|
55 |
+
*/
|
56 |
+
var $last_result;
|
57 |
+
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Master table prefix
|
61 |
+
*
|
62 |
+
* @since 1.0
|
63 |
+
* @access private
|
64 |
+
* @var string
|
65 |
+
*/
|
66 |
+
var $prefix = '';
|
67 |
+
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Master table tabes
|
71 |
+
*
|
72 |
+
* @since 1.0
|
73 |
+
* @access private
|
74 |
+
* @var string
|
75 |
+
*/
|
76 |
+
var $tabel_names = array( 'sliders', 'options' );
|
77 |
+
|
78 |
+
|
79 |
+
/**
|
80 |
+
* The database character collate.
|
81 |
+
*
|
82 |
+
* @since 1.0
|
83 |
+
* @access private
|
84 |
+
* @var string
|
85 |
+
*/
|
86 |
+
var $charset_collate = '';
|
87 |
+
|
88 |
+
|
89 |
+
|
90 |
+
/**
|
91 |
+
*
|
92 |
+
*/
|
93 |
+
public function __construct() {
|
94 |
+
|
95 |
+
if( is_admin() ) {
|
96 |
+
|
97 |
+
$this->update_tables();
|
98 |
+
add_filter( 'wpmu_drop_tables', array( $this, 'wpmu_drop_tables' ), 11, 2 );
|
99 |
+
}
|
100 |
+
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* Get known properties
|
105 |
+
*
|
106 |
+
* @param string property name
|
107 |
+
* @return string property value
|
108 |
+
*/
|
109 |
+
public function __get( $name ){
|
110 |
+
|
111 |
+
if( in_array( $name, $this->tabel_names ) ){
|
112 |
+
global $wpdb;
|
113 |
+
return $wpdb->prefix . 'masterslider_' . $name;
|
114 |
+
|
115 |
+
// Get list of Masterslider table names
|
116 |
+
} elseif( 'tables' == $name ){
|
117 |
+
global $wpdb;
|
118 |
+
$tables = array();
|
119 |
+
|
120 |
+
foreach ( $this->tabel_names as $table_name )
|
121 |
+
$tables[ $table_name ] = $wpdb->prefix . 'masterslider_' . $table_name;
|
122 |
+
|
123 |
+
return $tables;
|
124 |
+
|
125 |
+
} else {
|
126 |
+
return NULL;
|
127 |
+
}
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* Create master slider sliders table
|
132 |
+
*
|
133 |
+
* @since 1.0
|
134 |
+
* @return null
|
135 |
+
*/
|
136 |
+
private function create_table_sliders() {
|
137 |
+
|
138 |
+
$sql_create_table = "CREATE TABLE IF NOT EXISTS {$this->sliders} (
|
139 |
ID mediumint unsigned NOT NULL AUTO_INCREMENT,
|
140 |
title varchar(100) NOT NULL,
|
141 |
+
type varchar(64) NOT NULL,
|
142 |
+
slides_num smallint unsigned NOT NULL,
|
143 |
+
date_created datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
144 |
+
date_modified datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
145 |
+
params mediumtext NOT NULL,
|
146 |
+
custom_styles text NOT NULL DEFAULT '',
|
147 |
+
custom_fonts text NOT NULL DEFAULT '',
|
148 |
+
status varchar(10) NOT NULL DEFAULT 'draft',
|
149 |
+
PRIMARY KEY (ID),
|
150 |
+
KEY date_created (date_created)
|
151 |
) {$this->charset_collate};";
|
152 |
|
153 |
+
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
154 |
+
dbDelta( $sql_create_table );
|
155 |
+
}
|
156 |
|
157 |
|
158 |
+
/**
|
159 |
+
* Create master slider options table
|
160 |
+
*
|
161 |
+
* @since 1.0
|
162 |
+
* @return null
|
163 |
+
*/
|
164 |
+
private function create_table_options() {
|
165 |
|
166 |
+
$sql_create_table = "CREATE TABLE IF NOT EXISTS {$this->options} (
|
167 |
ID smallint unsigned NOT NULL AUTO_INCREMENT,
|
168 |
option_name varchar(120) NOT NULL,
|
169 |
+
option_value text NOT NULL DEFAULT '',
|
170 |
+
PRIMARY KEY (ID),
|
171 |
+
UNIQUE KEY option_name (option_name)
|
172 |
) $this->charset_collate; ";
|
173 |
|
174 |
+
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
175 |
+
dbDelta( $sql_create_table );
|
176 |
+
}
|
177 |
+
|
178 |
+
|
179 |
+
/**
|
180 |
+
* Create master slider tables
|
181 |
+
*
|
182 |
+
* Should be invoked on plugin activation
|
183 |
+
*
|
184 |
+
* @since 1.0
|
185 |
+
* @return null
|
186 |
+
*/
|
187 |
+
public function create_tables() {
|
188 |
+
global $wpdb, $charset_collate;
|
189 |
+
|
190 |
+
// set database character collate
|
191 |
+
if (!empty ($wpdb->charset))
|
192 |
+
$this->charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}";
|
193 |
+
if (!empty ($wpdb->collate))
|
194 |
+
$this->charset_collate .= " COLLATE {$wpdb->collate}";
|
195 |
+
|
196 |
+
if ( $wpdb->get_var( "SHOW TABLES LIKE '{$this->sliders}'" ) != $this->sliders )
|
197 |
+
$this->create_table_sliders();
|
198 |
+
|
199 |
+
if ( $wpdb->get_var( "SHOW TABLES LIKE '{$this->options}'" ) != $this->options )
|
200 |
+
$this->create_table_options();
|
201 |
+
|
202 |
+
// update tables version to current version
|
203 |
+
update_option( "masterslider_db_version", self::DB_VERSION );
|
204 |
+
|
205 |
+
do_action( 'masterslider_tables_created', $this->tables );
|
206 |
+
}
|
207 |
+
|
208 |
+
|
209 |
+
|
210 |
+
/**
|
211 |
+
* Updates masterslider tables if update is required
|
212 |
+
*
|
213 |
+
* @since 1.0
|
214 |
+
* @return bool is any update required for tabels?
|
215 |
+
*/
|
216 |
+
public function update_tables(){
|
217 |
+
// check if the tables need update
|
218 |
+
if( get_option( 'masterslider_db_version', '0' ) == self::DB_VERSION )
|
219 |
+
return false;
|
220 |
+
|
221 |
+
$this->create_tables();
|
222 |
+
|
223 |
+
do_action( 'masterslider_tables_updated', $this->tables );
|
224 |
+
return true;
|
225 |
+
}
|
226 |
+
|
227 |
+
|
228 |
+
/**
|
229 |
+
* Drop all master slider tables
|
230 |
+
*
|
231 |
+
* @since 1.0
|
232 |
+
* @return null
|
233 |
+
*/
|
234 |
+
public function delete_tables() {
|
235 |
+
global $wpdb;
|
236 |
+
|
237 |
+
foreach ( $this->tables as $table_id => $table_name) {
|
238 |
+
$wpdb->query("DROP TABLE IF EXISTS $table_name");
|
239 |
+
}
|
240 |
+
}
|
241 |
+
|
242 |
+
|
243 |
+
/**
|
244 |
+
* Filter Masterslider tables to drop when the blog is deleted
|
245 |
+
*
|
246 |
+
* @since 1.8
|
247 |
+
* @return null
|
248 |
+
*/
|
249 |
+
public function wpmu_drop_tables( $tables, $blog_id ){
|
250 |
+
global $wpdb;
|
251 |
+
$tables[] = $wpdb->base_prefix . $blog_id . '_masterslider_sliders';
|
252 |
+
$tables[] = $wpdb->base_prefix . $blog_id . '_masterslider_options';
|
253 |
+
return $tables;
|
254 |
+
}
|
255 |
+
|
256 |
+
|
257 |
+
|
258 |
|
259 |
|
260 |
+
/**
|
261 |
+
* Adds new slider in sliders table
|
262 |
+
*
|
263 |
+
* @param array $fields array of fields for sliders table
|
264 |
+
* @example array( 'title' => '', 'type' => '', 'skin' => '', 'template' => '',
|
265 |
+
* 'common_params' => array(), 'special_params' => array(),
|
266 |
+
* 'panel_data' => '', 'is_active' => 1 );
|
267 |
+
*
|
268 |
+
* @return int|false ID number for new inserted row or false if the row could not be inserted.
|
269 |
+
*/
|
270 |
+
public function add_slider($fields = array() ) {
|
271 |
+
global $wpdb;
|
272 |
+
|
273 |
+
// default fields in sliders table
|
274 |
+
$defaults = array(
|
275 |
+
'title' => 'Untitled Slider',
|
276 |
+
'type' => '', // custom, flickr, instagram, facebook, post
|
277 |
+
'slides_num' => 0,
|
278 |
+
'date_created' => '',
|
279 |
+
'date_modified' => '',
|
280 |
+
'params' => array(),
|
281 |
+
'custom_styles' => '',
|
282 |
+
'custom_fonts' => '',
|
283 |
+
'status' => 'published'
|
284 |
+
);
|
285 |
+
|
286 |
+
// merge input $fields with defaults
|
287 |
+
$data = wp_parse_args($fields, $defaults);
|
288 |
+
|
289 |
+
// set current time as date if date is not specified
|
290 |
+
if ( empty($data['date_created']) || '0000-00-00 00:00:00' == $data['date_created'] )
|
291 |
+
$data['date_created'] = current_time('mysql');
|
292 |
+
|
293 |
+
|
294 |
+
if ( empty($data['date_modified']) || '0000-00-00 00:00:00' == $data['date_modified'] )
|
295 |
+
$data['date_modified'] = current_time('mysql');
|
296 |
+
|
297 |
+
if( isset($data['ID']) )
|
298 |
+
unset($data['ID']);
|
299 |
+
|
300 |
+
// map through some fields and serialize values if data type is array
|
301 |
+
$data = $this->maybe_serialize_fields($data);
|
302 |
+
|
303 |
+
// An array of formats to be mapped to each of the value in $data
|
304 |
+
$format = array('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s');
|
305 |
+
|
306 |
+
// Insert a row into the table. returns false if the row could not be inserted.
|
307 |
+
$status = $wpdb->insert( $this->sliders, $data, $format );
|
308 |
+
|
309 |
+
return (false === $status)? $status: $wpdb->insert_id;
|
310 |
+
}
|
311 |
+
|
312 |
+
|
313 |
+
/**
|
314 |
+
* Updates a slider data in sliders table
|
315 |
+
*
|
316 |
+
* @param int $slider_id the slider id that is going to be updated
|
317 |
+
* @param array $fields array of fields in sliders table that needs to be updated
|
318 |
+
* @param array|string (optional) An array of formats to be mapped to each of the values in $fields
|
319 |
+
* @example array( 'title' => '', 'type' => '', 'custom_styles' => array(), 'custom_fonts' => array(),
|
320 |
+
* 'params' => '', 'status' => 'published' );
|
321 |
+
*
|
322 |
+
* @return int|false The number of rows updated, or false on error.
|
323 |
+
*/
|
324 |
+
public function update_slider($slider_id, $fields, $format = null ) {
|
325 |
+
global $wpdb;
|
326 |
+
|
327 |
+
if ( ! isset($slider_id) || ! is_numeric($slider_id) ) {
|
328 |
+
return false;
|
329 |
+
}
|
330 |
+
|
331 |
+
if( ! isset($fields) || empty($fields) ){
|
332 |
+
return;
|
333 |
+
}
|
334 |
+
|
335 |
+
// default required field while updating
|
336 |
+
$defaults = array(
|
337 |
+
'date_modified' => ''
|
338 |
+
);
|
339 |
|
340 |
+
// merge input $fields with defaults
|
341 |
+
$data = wp_parse_args($fields, $defaults);
|
342 |
+
|
343 |
+
// set modified date to current time
|
344 |
+
if( empty( $data['date_modified'] ) )
|
345 |
+
$data['date_modified'] = current_time('mysql');
|
346 |
+
|
347 |
+
|
348 |
+
$data = $this->maybe_serialize_fields($data);
|
349 |
+
|
350 |
+
// slider id as WHERE clause
|
351 |
+
$where = array( 'ID' => $slider_id );
|
352 |
|
353 |
+
// An array of formats to be mapped to each of the values in $where
|
354 |
+
$where_format = array( '%d' );
|
355 |
|
356 |
+
// Insert a row into the table
|
357 |
+
return $wpdb->update( $this->sliders, $data, $where, $format, $where_format);
|
358 |
+
}
|
359 |
|
360 |
|
361 |
+
/**
|
362 |
+
* Remove a specific slider data from sliders table
|
363 |
+
*
|
364 |
+
* @param int $slider_id The ID of the slider you'd like to be removed
|
365 |
+
* @return bool returns true on success or false on error
|
366 |
+
*/
|
367 |
+
public function delete_slider($slider_id) {
|
368 |
+
global $wpdb;
|
369 |
+
|
370 |
+
if ( ! isset($slider_id) || ! is_numeric($slider_id) ) {
|
371 |
+
return false;
|
372 |
+
}
|
373 |
+
|
374 |
+
return $wpdb->delete(
|
375 |
+
$this->sliders,
|
376 |
+
array( 'ID' => (int)$slider_id ),
|
377 |
+
array( '%d' )
|
378 |
+
);
|
379 |
+
}
|
380 |
|
381 |
|
382 |
+
/**
|
383 |
+
* Get slider data by slider id from slider table (for single )
|
384 |
+
*
|
385 |
+
* @param int $slider_id The ID of the slider you'd like to get the content
|
386 |
+
* @return array|null slider data in array or null if no result found
|
387 |
+
*/
|
388 |
+
public function get_slider( $slider_id ) {
|
389 |
+
global $wpdb;
|
390 |
|
391 |
+
if ( ! isset($slider_id) || ! is_numeric($slider_id) ) {
|
392 |
+
return null;
|
393 |
+
}
|
394 |
|
395 |
+
$sql = $wpdb->prepare( "SELECT * FROM {$this->sliders} WHERE ID = %d", (int)$slider_id );
|
396 |
+
$result = $wpdb->get_row( $sql, ARRAY_A );
|
397 |
|
398 |
+
return $this->maybe_unserialize_fields($result);
|
399 |
+
}
|
400 |
|
401 |
|
402 |
+
/**
|
403 |
+
* Duplicate a slider in new row
|
404 |
+
*
|
405 |
+
* @param int $slider_id The ID of the slider you'd like to duplicate
|
406 |
+
* @return bool true on success and false on failure
|
407 |
+
*/
|
408 |
+
public function duplicate_slider( $slider_id ) {
|
409 |
|
410 |
+
if( ! $fields = $this->get_slider($slider_id) )
|
411 |
+
return false;
|
412 |
|
413 |
+
$fields['title'] = $this->duplicate_title( $fields['title'] );
|
414 |
|
415 |
+
return (bool) $this->add_slider($fields);
|
416 |
+
}
|
417 |
|
418 |
|
419 |
+
/**
|
420 |
+
* Add new slider with preset data
|
421 |
+
*
|
422 |
+
* @param string $slider_params The slider panel data
|
423 |
+
* @param string $slider_title The slider title
|
424 |
+
* @return int|false ID number for new inserted row or false if the row could not be inserted.
|
425 |
+
*/
|
426 |
+
public function import_slider( $fields = array() ) {
|
427 |
|
428 |
+
if( ! isset( $fields['title'] ) || empty( $fields['title'] ) )
|
429 |
+
$fields['title'] = 'Untitled Slider';
|
430 |
|
431 |
+
$fields['title'] = $this->duplicate_title( $fields['title'] );
|
432 |
|
433 |
+
return $this->add_slider( $fields );
|
434 |
+
}
|
435 |
|
436 |
|
437 |
+
/**
|
438 |
+
* Get the value of a single field for a spesific slider
|
439 |
+
*
|
440 |
+
* @param int $slider_id The ID of the slider you'd like to get value of its field
|
441 |
+
* @param string $field_name The field name in slider table to get value from
|
442 |
+
* @return string|null field value or null if no result found
|
443 |
+
*/
|
444 |
+
public function get_slider_field_val( $slider_id, $field_name ) {
|
445 |
+
global $wpdb;
|
446 |
|
447 |
+
if ( ! isset( $slider_id ) || ! is_numeric( $slider_id ) ) {
|
448 |
+
return '';
|
449 |
+
}
|
450 |
|
451 |
+
$result = $this->get_slider($slider_id);
|
452 |
|
453 |
+
return ( $result && isset( $result[$field_name] ) ) ? maybe_unserialize( $result[$field_name] ) : NULL;
|
454 |
+
}
|
455 |
|
456 |
|
457 |
|
458 |
+
/**
|
459 |
+
* Get an array containing row results (serialized) from sliders table
|
460 |
+
*
|
461 |
+
* @param int $args The query args
|
462 |
+
* @return array|null Sliders data in an array or null if no result found
|
463 |
+
*/
|
464 |
+
public function ms_query( $args = array() ) {
|
465 |
+
global $wpdb;
|
466 |
|
467 |
+
$default_args = array(
|
468 |
+
'perpage' => 0,
|
469 |
+
'offset' => 0,
|
470 |
+
'orderby' => 'ID',
|
471 |
+
'order' => 'DESC',
|
472 |
+
'where' => "status='published'",
|
473 |
+
'like' => ''
|
474 |
+
);
|
475 |
|
476 |
+
$args = wp_parse_args( $args, $default_args );
|
477 |
|
478 |
|
479 |
+
// convert perpage type to number
|
480 |
+
$limit_num = (int) $args['perpage'];
|
481 |
|
482 |
+
// convert offset type to number
|
483 |
+
$offset_num = (int) $args['offset'];
|
484 |
|
485 |
+
// remove limit if limit number is set to 0
|
486 |
+
$limit = ( 1 > $limit_num ) ? '' : 'LIMIT '. $limit_num;
|
487 |
|
488 |
+
// remove offect if offset number is set to 0
|
489 |
+
$offset = ( 0 == $offset_num )? '' : 'OFFSET '. $offset_num;
|
490 |
|
491 |
+
// add LIKE if defined
|
492 |
+
$like = empty( $args['like'] ) ? '' : 'LIKE '. $args['like'];
|
493 |
|
494 |
+
$where = empty( $args['where'] ) ? '' : 'WHERE '. $args['where'];
|
495 |
|
496 |
+
// sanitize sort type
|
497 |
+
$order = strtolower( $args['order'] ) === 'desc' ? 'DESC' : 'ASC';
|
498 |
+
$orderby_clause = $args['orderby'] .' '. $order;
|
499 |
|
500 |
$orderby_clause = sanitize_sql_orderby( $orderby_clause );
|
501 |
|
502 |
+
$sql = "
|
503 |
+
SELECT *
|
504 |
+
FROM {$this->sliders}
|
505 |
+
$where
|
506 |
+
ORDER BY $orderby_clause
|
507 |
+
$limit
|
508 |
+
$offset
|
509 |
+
";
|
510 |
|
511 |
+
return $wpdb->get_results( $sql, ARRAY_A );
|
512 |
+
}
|
513 |
|
514 |
|
515 |
+
/**
|
516 |
+
* Get an array containing row results (serialized) from sliders table
|
517 |
+
*
|
518 |
+
* @param int $perpage Maximum number of rows to return - 0 means no limit
|
519 |
* @param int $offset The offset of the first row to return
|
520 |
* @param string $orderby The field name to order results by
|
521 |
* @param string $order The sort type. 'DESC' or 'ASC'
|
522 |
* @param string $where The sql filter to get results by
|
523 |
+
* @return array|null Sliders data in an array or null if no result found
|
524 |
+
*/
|
525 |
+
public function get_sliders_list( $perpage = 0, $offset = 0, $orderby = 'ID', $order = 'DESC', $where = "status='published'" ) {
|
526 |
+
global $wpdb;
|
527 |
|
528 |
+
$args = array(
|
529 |
+
'perpage' => $perpage,
|
530 |
+
'offset' => $offset,
|
531 |
+
'orderby' => $orderby,
|
532 |
+
'order' => $order,
|
533 |
+
'where' => $where
|
534 |
+
);
|
535 |
|
536 |
+
return $this->ms_query( $args );
|
537 |
+
}
|
538 |
|
539 |
|
540 |
|
541 |
+
/**
|
542 |
+
* Get an array containing row results (unserialized) from sliders table (with all slider table fields)
|
543 |
+
*
|
544 |
+
* @param int $perpage Maximum number of rows to return
|
545 |
* @param int $offset The offset of the first row to return
|
546 |
* @param string $orderby The field name to order results by
|
547 |
* @param string $sort The sort type. 'DESC' or 'ASC'
|
548 |
* @param string $where The sql filter to get results by
|
549 |
+
* @return array|null Slider data in array or null if no result found
|
550 |
+
*/
|
551 |
+
public function get_sliders( $perpage = 0, $offset = 0, $orderby = 'ID', $sort = 'DESC', $where = "status='published'" ) {
|
552 |
|
553 |
+
// pull mulitple row results from sliders table
|
554 |
+
if( ! $results = $this->get_sliders_list( $perpage, $offset, $orderby, $sort, $where ) ){
|
555 |
+
return;
|
556 |
+
}
|
557 |
|
558 |
+
// map through some fields and unserialize values if some data fields are serialized
|
559 |
+
foreach ($results as $row_index => $row) {
|
560 |
+
$results[$row_index] = $this->maybe_unserialize_fields($row);
|
561 |
+
}
|
562 |
|
563 |
+
return $results;
|
564 |
+
}
|
565 |
|
566 |
|
567 |
+
/**
|
568 |
+
* Get total number of sliders from sliders table
|
569 |
+
*
|
570 |
+
* @return int|null total number of sliders or null on failure
|
571 |
+
*/
|
572 |
+
public function get_total_sliders_count( $where = "status='published'" ) {
|
573 |
+
global $wpdb;
|
574 |
|
575 |
+
$result = $wpdb->get_results( "SELECT count(ID) AS total FROM {$this->sliders} WHERE {$where} ", ARRAY_A );
|
576 |
+
return $result ? (int)$result[0]['total'] : null;
|
577 |
+
}
|
578 |
|
579 |
|
580 |
|
582 |
|
583 |
|
584 |
|
585 |
+
/**
|
586 |
+
* Insert option data in new record in options table
|
587 |
+
*
|
588 |
+
* @param string $option_name a unique name for option
|
589 |
+
* @param string $option_value the option value
|
590 |
+
*
|
591 |
+
* @return bool False if option was not added and true if option was added.
|
592 |
+
*/
|
593 |
+
public function add_option( $option_name, $option_value = '' ) {
|
594 |
+
global $wpdb;
|
595 |
|
596 |
+
$option_name = trim( $option_name );
|
597 |
+
if( empty( $option_name ) ) {
|
598 |
+
return false;
|
599 |
+
}
|
600 |
|
601 |
+
if ( is_object($option_value) )
|
602 |
+
$option_value = clone $option_value;
|
603 |
|
604 |
|
605 |
+
// serialize the option value
|
606 |
+
$option_value = maybe_serialize( $option_value );
|
607 |
|
608 |
+
$fields = array(
|
609 |
+
'option_name' => $option_name,
|
610 |
+
'option_value' => $option_value
|
611 |
+
);
|
612 |
|
613 |
+
// check if key already exist in master slider options table
|
614 |
+
$sql = $wpdb->prepare( "SELECT * FROM {$this->options} WHERE option_name = %s", $option_name );
|
615 |
+
// skip adding option if option added to options table before
|
616 |
+
if( $result = $wpdb->get_row( $sql, ARRAY_A ) )
|
617 |
+
return false;
|
618 |
|
619 |
+
// An array of formats to be mapped to each of the value in $data
|
620 |
+
$format = array('%s', '%s');
|
621 |
|
622 |
+
// Insert a row into the table. returns false if the row could not be inserted.
|
623 |
+
$result = $wpdb->insert( $this->options, $fields, $format );
|
624 |
|
625 |
+
if(false === $result)
|
626 |
+
return false;
|
627 |
|
628 |
+
wp_cache_set( $option_name, $option_value, 'masterslider' );
|
629 |
|
630 |
+
do_action( 'masterslider_added_option', $option_name, $option_value );
|
631 |
+
return true;
|
632 |
+
}
|
633 |
|
634 |
|
635 |
+
/**
|
636 |
+
* Get option value
|
637 |
+
*
|
638 |
+
* @param string $option_name a unique name for option
|
639 |
+
* @param string $default_value a value to return by function if option_value not found
|
640 |
+
* @return string option_value or default_value
|
641 |
+
*/
|
642 |
+
public function get_option( $option_name, $default_value = '' ) {
|
643 |
+
global $wpdb;
|
644 |
|
645 |
+
$option_name = trim( $option_name );
|
646 |
+
if( empty( $option_name ) ) {
|
647 |
+
return $default_value;
|
648 |
+
}
|
649 |
|
650 |
+
$value = wp_cache_get( $option_name, 'masterslider' );
|
651 |
|
652 |
+
// query the value if value is not available in cache
|
653 |
+
if( false === $value ) {
|
654 |
|
655 |
+
$sql = $wpdb->prepare( "SELECT * FROM {$this->options} WHERE option_name = %s", $option_name );
|
656 |
+
$result = $wpdb->get_row( $sql, ARRAY_A );
|
657 |
|
658 |
+
$value = $result && isset( $result['option_value'] ) ? $result['option_value'] : $default_value;
|
659 |
|
660 |
+
// serialize and cache this option for next request
|
661 |
+
$serialized_value = maybe_serialize( $value );
|
662 |
+
wp_cache_set( $option_name, $serialized_value, 'masterslider' );
|
663 |
+
}
|
664 |
|
665 |
+
return maybe_unserialize( $value );
|
666 |
+
}
|
667 |
|
668 |
|
669 |
|
670 |
+
/**
|
671 |
+
* Update option value in options table, if option_name does not exist then insert new option
|
672 |
+
*
|
673 |
+
* @param string $option_name a unique name for option
|
674 |
+
* @param string $option_value the option value
|
675 |
+
*
|
676 |
+
* @return int|false ID number for new inserted row or false if the option can not be updated.
|
677 |
+
*/
|
678 |
+
public function update_option( $option_name, $option_value = '' ) {
|
679 |
+
global $wpdb;
|
680 |
|
681 |
+
$option_name = trim( $option_name );
|
682 |
+
if( empty( $option_name ) ) {
|
683 |
+
return false;
|
684 |
+
}
|
685 |
|
686 |
+
if ( is_object($option_value) )
|
687 |
+
$option_value = clone $option_value;
|
688 |
|
689 |
+
// get current option value
|
690 |
+
$old_value = $this->get_option( $option_name );
|
691 |
|
692 |
+
$option_value = apply_filters( 'msp_pre_update_option_' . $option_name, $option_value, $old_value );
|
693 |
|
694 |
+
// If the new and old values are the same, no need to update.
|
695 |
+
if ( $option_value === $old_value )
|
696 |
+
return false; // 'has same value';
|
697 |
|
698 |
+
$option_value = maybe_serialize( $option_value );
|
699 |
|
700 |
|
701 |
+
$result = $wpdb->update( $this->options, array( 'option_value' => $option_value ), array( 'option_name' => $option_name ) );
|
702 |
|
703 |
+
if ( ! $result ) {
|
704 |
+
return $this->add_option( $option_name, $option_value);
|
705 |
+
} else {
|
706 |
+
wp_cache_set( $option_name, $option_value, 'masterslider' );
|
707 |
+
}
|
708 |
|
709 |
+
return true;
|
710 |
+
}
|
711 |
|
712 |
|
713 |
+
/**
|
714 |
+
* Remove a specific option name from options table
|
715 |
+
*
|
716 |
+
* @param string $option_name a unique name for option
|
717 |
+
* @return bool True, if option is successfully deleted. False on failure.
|
718 |
+
*/
|
719 |
+
public function delete_option( $option_name ) {
|
720 |
+
global $wpdb;
|
721 |
|
722 |
+
$option_name = trim( $option_name );
|
723 |
+
if( empty( $option_name ) ) {
|
724 |
+
return false;
|
725 |
+
}
|
726 |
|
727 |
+
$result = $wpdb->delete(
|
728 |
+
$this->options,
|
729 |
+
array( 'option_name' => $option_name ),
|
730 |
+
array( '%s' )
|
731 |
+
);
|
732 |
|
733 |
+
wp_cache_delete( $option_name, 'masterslider' );
|
734 |
|
735 |
+
return (bool) $result;
|
736 |
+
}
|
737 |
|
738 |
|
739 |
|
741 |
|
742 |
|
743 |
|
744 |
+
// map through some fields and unserialize values if data field is serialized
|
745 |
+
protected function maybe_unserialize_fields($row_fields){
|
746 |
+
if ( empty($row_fields) ) {
|
747 |
+
return $row_fields;
|
748 |
+
}
|
749 |
|
750 |
+
foreach ( $row_fields as $key => $value) {
|
751 |
+
$row_fields[$key] = maybe_unserialize( $value );
|
752 |
+
}
|
753 |
+
return $row_fields;
|
754 |
+
}
|
755 |
|
756 |
|
757 |
|
758 |
+
// map through some fields and serialize values if data type is array
|
759 |
+
protected function maybe_serialize_fields($row_fields){
|
760 |
+
if ( empty($row_fields) ) {
|
761 |
+
return $row_fields;
|
762 |
+
}
|
763 |
|
764 |
+
foreach ( $row_fields as $key => $value) {
|
765 |
+
$row_fields[$key] = maybe_serialize( $value );
|
766 |
+
}
|
767 |
+
return $row_fields;
|
768 |
+
}
|
769 |
|
770 |
|
771 |
+
/**
|
772 |
+
* Insert a row into a table.
|
773 |
+
* @param array $fields array of fields and values to insert
|
774 |
+
* @param array $defaults array of default fields value to insert if field value is not set
|
775 |
+
*
|
776 |
+
* @return int|false ID number for new inserted row or false if the row could not be inserted.
|
777 |
+
*/
|
778 |
+
public function insert( $table_name, $fields = array(), $defaults = array(), $format = NULL ) {
|
779 |
+
global $wpdb;
|
780 |
|
781 |
+
if( empty( $fields ) ) {
|
782 |
+
return false;
|
783 |
+
}
|
784 |
|
785 |
+
// merge input $fields with defaults
|
786 |
+
$data = wp_parse_args($fields, $defaults);
|
787 |
|
788 |
+
// map through some fields and serialize values if data type is array or object
|
789 |
+
$data = $this->maybe_serialize_fields( $data );
|
790 |
|
791 |
+
// Insert a row into the table. returns false if the row could not be inserted.
|
792 |
+
$result = $wpdb->insert( $table_name, $data, $format );
|
793 |
|
794 |
+
return (false === $result)? $result : $wpdb->insert_id;
|
795 |
+
}
|
796 |
|
797 |
|
798 |
+
public function duplicate_title($title, $suffix = '' ){
|
799 |
+
$title = trim($title);
|
800 |
+
if( empty($suffix) ){
|
801 |
+
$suffix = __('copy', 'master-slider');
|
802 |
+
}
|
803 |
|
804 |
+
$suffix_num = substr($title, -2);
|
805 |
|
806 |
+
if (strpos($title, ' '.$suffix) !== false) {
|
807 |
+
$suffix_num = substr($title, -2);
|
808 |
+
if( is_numeric($suffix_num) ){
|
809 |
+
$suffix_num = (int)$suffix_num + 1;
|
810 |
+
$title = trim(substr($title, 0, -2)) . ' ' . $suffix_num;
|
811 |
+
} else {
|
812 |
+
$title = trim($title) . ' 1';
|
813 |
+
}
|
814 |
+
} else {
|
815 |
+
$title .= ' '.$suffix;
|
816 |
+
}
|
817 |
+
return $title;
|
818 |
+
}
|
819 |
|
820 |
}
|
821 |
|
includes/classes/class-msp-main-widget.php
CHANGED
@@ -20,7 +20,7 @@ if ( ! class_exists( 'MSP_Main_Widget' ) ) :
|
|
20 |
class MSP_Main_Widget extends MSP_Widget {
|
21 |
|
22 |
public $fields = array(
|
23 |
-
|
24 |
array(
|
25 |
'name' => 'Title',
|
26 |
'id' => 'title',
|
@@ -34,7 +34,7 @@ class MSP_Main_Widget extends MSP_Widget {
|
|
34 |
'value' => '-1',
|
35 |
'options' => array()
|
36 |
)
|
37 |
-
|
38 |
);
|
39 |
|
40 |
/*--------------------------------------------------*/
|
@@ -50,10 +50,10 @@ class MSP_Main_Widget extends MSP_Widget {
|
|
50 |
|
51 |
parent::__construct(
|
52 |
'master-slider-main-widget',
|
53 |
-
__( 'Master Slider Widget',
|
54 |
array(
|
55 |
'classname' => 'master-slider-main-widget',
|
56 |
-
'description' => __( 'Display a Master Slider',
|
57 |
)
|
58 |
);
|
59 |
|
@@ -80,7 +80,7 @@ class MSP_Main_Widget extends MSP_Widget {
|
|
80 |
if ( ! empty( $title ) ) { echo $before_title . $title . $after_title; }
|
81 |
|
82 |
echo get_masterslider( $instance['id'] );
|
83 |
-
|
84 |
echo $after_widget;
|
85 |
} // end widget
|
86 |
|
@@ -92,4 +92,4 @@ endif;
|
|
92 |
|
93 |
|
94 |
// init the widget
|
95 |
-
add_action( 'widgets_init', create_function( '', 'register_widget("MSP_Main_Widget");' ) );
|
20 |
class MSP_Main_Widget extends MSP_Widget {
|
21 |
|
22 |
public $fields = array(
|
23 |
+
|
24 |
array(
|
25 |
'name' => 'Title',
|
26 |
'id' => 'title',
|
34 |
'value' => '-1',
|
35 |
'options' => array()
|
36 |
)
|
37 |
+
|
38 |
);
|
39 |
|
40 |
/*--------------------------------------------------*/
|
50 |
|
51 |
parent::__construct(
|
52 |
'master-slider-main-widget',
|
53 |
+
__( 'Master Slider Widget', 'master-slider' ),
|
54 |
array(
|
55 |
'classname' => 'master-slider-main-widget',
|
56 |
+
'description' => __( 'Display a Master Slider', 'master-slider' )
|
57 |
)
|
58 |
);
|
59 |
|
80 |
if ( ! empty( $title ) ) { echo $before_title . $title . $after_title; }
|
81 |
|
82 |
echo get_masterslider( $instance['id'] );
|
83 |
+
|
84 |
echo $after_widget;
|
85 |
} // end widget
|
86 |
|
92 |
|
93 |
|
94 |
// init the widget
|
95 |
+
add_action( 'widgets_init', create_function( '', 'register_widget("MSP_Main_Widget");' ) );
|
includes/init/define.php
CHANGED
@@ -5,7 +5,7 @@ if ( ! defined('ABSPATH') ) {
|
|
5 |
die();
|
6 |
}
|
7 |
|
8 |
-
define( 'MSWP_AVERTA_VERSION' , '2.
|
9 |
|
10 |
define( 'MSWP_SLUG' , 'master-slider' );
|
11 |
define( 'MSWP_TEXT_DOMAIN' , 'masterslider' );
|
5 |
die();
|
6 |
}
|
7 |
|
8 |
+
define( 'MSWP_AVERTA_VERSION' , '2.7.0' );
|
9 |
|
10 |
define( 'MSWP_SLUG' , 'master-slider' );
|
11 |
define( 'MSWP_TEXT_DOMAIN' , 'masterslider' );
|
includes/lib/vcomposer.php
CHANGED
@@ -6,37 +6,37 @@
|
|
6 |
|
7 |
if ( defined('WPB_VC_VERSION') ) {
|
8 |
|
9 |
-
wpb_map(
|
10 |
array(
|
11 |
-
'name' => __( 'Master Slider',
|
12 |
'base' => 'masterslider_pb',
|
13 |
'class' => '',
|
14 |
'controls' => 'full',
|
15 |
'icon' => 'icon-vc-msslider-el',
|
16 |
-
'category' => __( 'Content',
|
17 |
-
'description' => __( 'Add Master Slider',
|
18 |
-
|
19 |
'params' => array(
|
20 |
array(
|
21 |
'type' => 'textfield',
|
22 |
-
'heading' => __( 'Title ',
|
23 |
'param_name' => 'title',
|
24 |
'value' => '',
|
25 |
-
'description' => __( 'What text use as slider title. Leave blank if no title is needed',
|
26 |
),
|
27 |
array(
|
28 |
'type' => 'dropdown',
|
29 |
-
'heading' => __('Master Slider',
|
30 |
'param_name' => 'id',
|
31 |
'value' => get_masterslider_names( false ),
|
32 |
-
'description' => __( 'Select slider from list',
|
33 |
),
|
34 |
array(
|
35 |
'type' => 'textfield',
|
36 |
-
'heading' => __( 'Extra CSS Class Name',
|
37 |
'param_name' => 'class',
|
38 |
'value' => '',
|
39 |
-
'description' => __( 'If you wish to style particular element differently, then use this field to add a class name and then refer to it in your css file.',
|
40 |
)
|
41 |
)
|
42 |
)
|
@@ -44,4 +44,4 @@ if ( defined('WPB_VC_VERSION') ) {
|
|
44 |
|
45 |
}
|
46 |
|
47 |
-
/*----------------------------------------------------------------------------*/
|
6 |
|
7 |
if ( defined('WPB_VC_VERSION') ) {
|
8 |
|
9 |
+
wpb_map(
|
10 |
array(
|
11 |
+
'name' => __( 'Master Slider', 'master-slider' ),
|
12 |
'base' => 'masterslider_pb',
|
13 |
'class' => '',
|
14 |
'controls' => 'full',
|
15 |
'icon' => 'icon-vc-msslider-el',
|
16 |
+
'category' => __( 'Content', 'master-slider' ),
|
17 |
+
'description' => __( 'Add Master Slider', 'master-slider' ),
|
18 |
+
|
19 |
'params' => array(
|
20 |
array(
|
21 |
'type' => 'textfield',
|
22 |
+
'heading' => __( 'Title ', 'master-slider' ),
|
23 |
'param_name' => 'title',
|
24 |
'value' => '',
|
25 |
+
'description' => __( 'What text use as slider title. Leave blank if no title is needed', 'master-slider' )
|
26 |
),
|
27 |
array(
|
28 |
'type' => 'dropdown',
|
29 |
+
'heading' => __('Master Slider', 'master-slider' ),
|
30 |
'param_name' => 'id',
|
31 |
'value' => get_masterslider_names( false ),
|
32 |
+
'description' => __( 'Select slider from list', 'master-slider' )
|
33 |
),
|
34 |
array(
|
35 |
'type' => 'textfield',
|
36 |
+
'heading' => __( 'Extra CSS Class Name', 'master-slider' ),
|
37 |
'param_name' => 'class',
|
38 |
'value' => '',
|
39 |
+
'description' => __( 'If you wish to style particular element differently, then use this field to add a class name and then refer to it in your css file.', 'master-slider' )
|
40 |
)
|
41 |
)
|
42 |
)
|
44 |
|
45 |
}
|
46 |
|
47 |
+
/*----------------------------------------------------------------------------*/
|
includes/msp-functions.php
CHANGED
@@ -38,7 +38,7 @@ if( ! function_exists( 'get_masterslider' ) ) {
|
|
38 |
|
39 |
// through an error if slider id is not valid number
|
40 |
if( ! is_numeric( $slider_id ) )
|
41 |
-
return __( 'Invalid slider id. Master Slider ID must be a valid number.',
|
42 |
|
43 |
// load masterslider script
|
44 |
wp_enqueue_style ( 'masterslider-main');
|
@@ -534,22 +534,22 @@ function msp_the_post_thumbnail( $post_id = null, $width = null , $height = null
|
|
534 |
|
535 |
if( ! isset( $post ) ) return '';
|
536 |
|
537 |
-
|
538 |
-
|
539 |
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
|
545 |
-
|
546 |
-
|
547 |
|
548 |
-
|
549 |
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
|
554 |
return $img_src;
|
555 |
}
|
@@ -807,8 +807,8 @@ function msp_exclude_strip_shortcode_tags(){
|
|
807 |
* @return array List of all custom post types
|
808 |
*/
|
809 |
function msp_get_custom_post_types(){
|
810 |
-
|
811 |
-
|
812 |
}
|
813 |
|
814 |
|
@@ -824,38 +824,38 @@ function msp_is_plugin_active( $plugin_basename ){
|
|
824 |
|
825 |
|
826 |
function msp_get_template_tag_value( $tag_name, $post = null, $args = null ){
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
|
860 |
case 'categories':
|
861 |
$taxonomy_objects = get_object_taxonomies( $post, 'objects' );
|
@@ -881,132 +881,132 @@ function msp_get_template_tag_value( $tag_name, $post = null, $args = null ){
|
|
881 |
$value = rtrim( $value, ' / ' );
|
882 |
break;
|
883 |
|
884 |
-
|
885 |
-
|
886 |
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
|
891 |
-
|
892 |
case 'slide-image-url':
|
893 |
$value = msp_get_auto_post_thumbnail_src( $post, 'auto' );
|
894 |
break;
|
895 |
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
$value = get_post_meta( $post->ID, $tag_name, true );
|
1006 |
-
|
1007 |
-
|
1008 |
|
1009 |
-
|
1010 |
}
|
1011 |
|
1012 |
|
@@ -1028,12 +1028,12 @@ function msp_escape_tag( $tag_name ){
|
|
1028 |
|
1029 |
|
1030 |
function msp_is_true($value) {
|
1031 |
-
|
1032 |
}
|
1033 |
|
1034 |
|
1035 |
function msp_is_true_e( $value ) {
|
1036 |
-
|
1037 |
}
|
1038 |
|
1039 |
|
38 |
|
39 |
// through an error if slider id is not valid number
|
40 |
if( ! is_numeric( $slider_id ) )
|
41 |
+
return __( 'Invalid slider id. Master Slider ID must be a valid number.', 'master-slider' );
|
42 |
|
43 |
// load masterslider script
|
44 |
wp_enqueue_style ( 'masterslider-main');
|
534 |
|
535 |
if( ! isset( $post ) ) return '';
|
536 |
|
537 |
+
if ( 'auto' == $image_from ) {
|
538 |
+
$img_src = has_post_thumbnail( $post->ID ) ? msp_get_the_post_thumbnail_full_src( $post->ID ) : '';
|
539 |
|
540 |
+
if( empty( $img_src ) ) {
|
541 |
+
$content = get_the_content();
|
542 |
+
$img_src = msp_get_first_image_src_from_string( $content );
|
543 |
+
}
|
544 |
|
545 |
+
} elseif( 'featured' == $image_from ) {
|
546 |
+
$img_src = has_post_thumbnail( $post->ID ) ? msp_get_the_post_thumbnail_full_src( $post->ID ) : '';
|
547 |
|
548 |
+
} elseif ( 'first' == $image_from ) {
|
549 |
|
550 |
+
$content = get_the_content();
|
551 |
+
$img_src = msp_get_first_image_src_from_string( $content );
|
552 |
+
}
|
553 |
|
554 |
return $img_src;
|
555 |
}
|
807 |
* @return array List of all custom post types
|
808 |
*/
|
809 |
function msp_get_custom_post_types(){
|
810 |
+
$custom_post_types = get_post_types( array( '_builtin' => false ), 'objects' );
|
811 |
+
return apply_filters( 'masterslider_get_custom_post_types', $custom_post_types );
|
812 |
}
|
813 |
|
814 |
|
824 |
|
825 |
|
826 |
function msp_get_template_tag_value( $tag_name, $post = null, $args = null ){
|
827 |
+
$post = get_post( $post );
|
828 |
+
$value = '{{' . $tag_name . '}}';
|
829 |
+
|
830 |
+
switch ( $tag_name ) {
|
831 |
+
|
832 |
+
case 'title':
|
833 |
+
$value = $post->post_title;
|
834 |
+
break;
|
835 |
+
|
836 |
+
case 'content':
|
837 |
+
$value = $post->post_content;
|
838 |
+
break;
|
839 |
+
|
840 |
+
case 'excerpt':
|
841 |
+
$value = $post->post_excerpt;
|
842 |
+
if ( empty( $value ) ) {
|
843 |
+
$excerpt_length = isset( $args['excerpt_length'] ) ? (int)$args['excerpt_length'] : 80;
|
844 |
+
$value = msp_get_the_trim_excerpt( $value, $excerpt_length );
|
845 |
+
}
|
846 |
+
break;
|
847 |
+
|
848 |
+
case 'permalink':
|
849 |
+
$value = $post->guid;
|
850 |
+
break;
|
851 |
+
|
852 |
+
case 'author':
|
853 |
+
$value = get_the_author_meta( 'display_name', (int)$post->post_author );
|
854 |
+
break;
|
855 |
+
|
856 |
+
case 'post_id':
|
857 |
+
$value = $post->ID;
|
858 |
+
break;
|
859 |
|
860 |
case 'categories':
|
861 |
$taxonomy_objects = get_object_taxonomies( $post, 'objects' );
|
881 |
$value = rtrim( $value, ' / ' );
|
882 |
break;
|
883 |
|
884 |
+
case 'image':
|
885 |
+
$value = msp_get_auto_post_thumbnail_src( $post, 'featured' );
|
886 |
|
887 |
+
if( ! empty( $value ) )
|
888 |
+
$value = sprintf( '<img src="%s" alt="%s" />', $value, $post->post_title );
|
889 |
+
break;
|
890 |
|
891 |
+
case 'image-url':
|
892 |
case 'slide-image-url':
|
893 |
$value = msp_get_auto_post_thumbnail_src( $post, 'auto' );
|
894 |
break;
|
895 |
|
896 |
+
case 'year':
|
897 |
+
$value = strtotime( $post->post_date );
|
898 |
+
$value = date_i18n( 'Y', $value );
|
899 |
+
break;
|
900 |
+
|
901 |
+
case 'daynum':
|
902 |
+
$value = strtotime( $post->post_date );
|
903 |
+
$value = date_i18n( 'j', $value );
|
904 |
+
break;
|
905 |
+
|
906 |
+
case 'day':
|
907 |
+
$value = strtotime( $post->post_date );
|
908 |
+
$value = date_i18n( 'l', $value );
|
909 |
+
break;
|
910 |
+
|
911 |
+
case 'monthnum':
|
912 |
+
$value = strtotime( $post->post_date );
|
913 |
+
$value = date_i18n( 'm', $value );
|
914 |
+
break;
|
915 |
+
|
916 |
+
case 'month':
|
917 |
+
$value = strtotime( $post->post_date );
|
918 |
+
$value = date_i18n( 'F', $value );
|
919 |
+
break;
|
920 |
+
|
921 |
+
case 'time':
|
922 |
+
$value = strtotime( $post->post_date );
|
923 |
+
$value = date_i18n( 'g:i A', $value );
|
924 |
+
break;
|
925 |
+
|
926 |
+
case 'date-published':
|
927 |
+
$value = $post->post_date;
|
928 |
+
break;
|
929 |
+
|
930 |
+
case 'date-modified':
|
931 |
+
$value = $post->post_modified;
|
932 |
+
break;
|
933 |
+
|
934 |
+
case 'commentnum':
|
935 |
+
$value = $post->comment_count;
|
936 |
+
break;
|
937 |
+
|
938 |
+
case 'wc_price':
|
939 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
940 |
+
$product = get_product( $post );
|
941 |
+
$value = wc_format_decimal( $product->get_price(), 2 );
|
942 |
+
break;
|
943 |
+
|
944 |
+
case 'wc_regular_price':
|
945 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
946 |
+
$product = get_product( $post );
|
947 |
+
$value = wc_format_decimal( $product->get_regular_price(), 2 );
|
948 |
+
break;
|
949 |
+
|
950 |
+
case 'wc_sale_price':
|
951 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
952 |
+
$product = get_product( $post );
|
953 |
+
$value = $product->get_sale_price() ? wc_format_decimal( $product->get_sale_price(), 2 ) : '';
|
954 |
+
break;
|
955 |
+
|
956 |
+
case 'wc_stock_status':
|
957 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
958 |
+
$product = get_product( $post );
|
959 |
+
$value = $product->is_in_stock() ? __( 'In Stock', 'master-slider' ) : __( 'Out of Stock', 'master-slider' );
|
960 |
+
break;
|
961 |
+
|
962 |
+
case 'wc_stock_quantity':
|
963 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
964 |
+
$product = get_product( $post );
|
965 |
+
$value = (int) $product->get_stock_quantity();
|
966 |
+
break;
|
967 |
+
|
968 |
+
case 'wc_weight':
|
969 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
970 |
+
$product = get_product( $post );
|
971 |
+
$value = $product->get_weight() ? wc_format_decimal( $product->get_weight(), 2 ) : '';
|
972 |
+
break;
|
973 |
+
|
974 |
+
case 'wc_product_cats':
|
975 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
976 |
+
$product = get_product( $post );
|
977 |
+
$value = wp_get_post_terms( $product->id, 'product_cat', array( 'fields' => 'names' ) );
|
978 |
+
break;
|
979 |
+
|
980 |
+
case 'wc_product_tags':
|
981 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
982 |
+
$product = get_product( $post );
|
983 |
+
$value = wp_get_post_terms( $product->id, 'product_tag', array( 'fields' => 'names' ) );
|
984 |
+
break;
|
985 |
+
|
986 |
+
case 'wc_total_sales':
|
987 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
988 |
+
$product = get_product( $post );
|
989 |
+
$value = metadata_exists( 'post', $product->id, 'total_sales' ) ? (int) get_post_meta( $product->id, 'total_sales', true ) : 0;
|
990 |
+
break;
|
991 |
+
|
992 |
+
case 'wc_average_rating':
|
993 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
994 |
+
$product = get_product( $post );
|
995 |
+
$value = wc_format_decimal( $product->get_average_rating(), 2 );
|
996 |
+
break;
|
997 |
+
|
998 |
+
case 'wc_rating_count':
|
999 |
+
if ( ! msp_is_plugin_active( 'woocommerce/woocommerce.php' ) ) break;
|
1000 |
+
$product = get_product( $post );
|
1001 |
+
$value = (int) $product->get_rating_count();
|
1002 |
+
break;
|
1003 |
+
|
1004 |
+
default:
|
1005 |
$value = get_post_meta( $post->ID, $tag_name, true );
|
1006 |
+
break;
|
1007 |
+
}
|
1008 |
|
1009 |
+
return apply_filters( 'masterslider_get_template_tag_value', $value, $tag_name, $post, $args );
|
1010 |
}
|
1011 |
|
1012 |
|
1028 |
|
1029 |
|
1030 |
function msp_is_true($value) {
|
1031 |
+
return strtolower( $value ) === 'true' ? 'true' : 'false';
|
1032 |
}
|
1033 |
|
1034 |
|
1035 |
function msp_is_true_e( $value ) {
|
1036 |
+
echo msp_is_true( $value );
|
1037 |
}
|
1038 |
|
1039 |
|
includes/msp-shortcodes.php
CHANGED
@@ -9,11 +9,11 @@ add_shortcode( 'master_slider' , 'msp_masterslider_shortcode' );
|
|
9 |
|
10 |
|
11 |
function msp_masterslider_shortcode( $atts, $content = null ) {
|
12 |
-
extract( shortcode_atts(
|
13 |
array( 'id' => ''),
|
14 |
-
$atts,
|
15 |
'masterslider'
|
16 |
-
)
|
17 |
);
|
18 |
|
19 |
return get_masterslider( $id );
|
@@ -26,13 +26,13 @@ function msp_masterslider_shortcode( $atts, $content = null ) {
|
|
26 |
add_shortcode( 'masterslider_pb', 'msp_masterslider_pb_shortcode' );
|
27 |
|
28 |
function msp_masterslider_pb_shortcode( $atts, $content = null ) {
|
29 |
-
$mixed = shortcode_atts(
|
30 |
-
array(
|
31 |
-
'id' => '',
|
32 |
'title' => '',
|
33 |
'class' => ''
|
34 |
),
|
35 |
-
$atts,
|
36 |
'masterslider_pb'
|
37 |
);
|
38 |
|
@@ -56,13 +56,13 @@ add_shortcode( 'ms_slider', 'msp_masterslider_wrapper_shortcode' );
|
|
56 |
|
57 |
function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
58 |
|
59 |
-
$mixed = shortcode_atts(
|
60 |
|
61 |
array(
|
62 |
'id' => '1', // slider id
|
63 |
-
'uid' => '', // an unique and temporary id
|
64 |
'class' => '', // a class that adds to slider wrapper
|
65 |
-
'margin' => 0,
|
66 |
|
67 |
'inline_style' => '',
|
68 |
'bg_color' => '',
|
@@ -86,7 +86,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
86 |
'crop' => 'false', // Automatically crop slide images?
|
87 |
|
88 |
'autoplay' => 'false', // Enables the autoplay slideshow
|
89 |
-
'loop' => 'false', //
|
90 |
'shuffle' => 'false', // Enables the shuffle slide order
|
91 |
'preload' => 0,
|
92 |
|
@@ -104,7 +104,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
104 |
'height_limit' => 'false', // It force the slide to use max height value as its base specified height value.
|
105 |
'auto_height' => 'false',
|
106 |
'smooth_height' => 'true',
|
107 |
-
|
108 |
'end_pause' => 'false',
|
109 |
'over_pause' => 'false',
|
110 |
|
@@ -137,7 +137,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
137 |
'flickr_size' => 'c',
|
138 |
'flickr_thumb_size' => 'q',
|
139 |
|
140 |
-
|
141 |
'facebook_username' => '',
|
142 |
'facebook_albumid' => '',
|
143 |
'facebook_count' => 10,
|
@@ -171,7 +171,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
171 |
'bullets_align' => 'bottom',
|
172 |
'bullets_margin' => '',
|
173 |
'bullets_hideunder'=> '',
|
174 |
-
|
175 |
'thumbs' => 'false', // display thumbnails?
|
176 |
'thumbs_autohide' => 'true', // auto hide thumbs?
|
177 |
'thumbs_overvideo' => 'true', // visible over slide video while playing?
|
@@ -217,7 +217,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
217 |
'timebar_color' => '#FFFFFF',
|
218 |
'timebar_hideunder'=> '',
|
219 |
'timebar_width' => '',
|
220 |
-
|
221 |
|
222 |
'slideinfo' => 'false', // display timebar?
|
223 |
'slideinfo_autohide' => 'true', // auto hide timebar?
|
@@ -249,16 +249,16 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
249 |
wp_enqueue_style ( 'masterslider-main');
|
250 |
wp_enqueue_script( 'masterslider-core');
|
251 |
wp_enqueue_script( 'prettyPhoto' );
|
252 |
-
|
253 |
// create an unique id for slider
|
254 |
$uid = empty($uid ) ? uniqid("MS") : $uid;
|
255 |
// unique id for parant wrapper
|
256 |
$puid = 'P_' . $uid;
|
257 |
|
258 |
-
|
259 |
// class name for slider template
|
260 |
$template_class = empty( $template_class ) ? '' : esc_attr( $template_class );
|
261 |
-
|
262 |
$preload = is_numeric($preload) ? ( (int)$preload + 1 ) : "'$preload'";
|
263 |
|
264 |
|
@@ -267,11 +267,11 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
267 |
// validate wrapper_width_unit
|
268 |
$wrapper_width_unit = in_array( $wrapper_width_unit, array( 'px', '%', 'em' ) ) ? $wrapper_width_unit : 'px';
|
269 |
$inline_style .= sprintf( 'max-width:%s%s;', $wrapper_width, $wrapper_width_unit );
|
270 |
-
|
271 |
// if wrapper_width is not set use slider width as default
|
272 |
} elseif ( 'boxed' == $layout ) {
|
273 |
$inline_style .= sprintf( 'max-width:%spx;', $width );
|
274 |
-
|
275 |
// if wrapper_width is not set the value to 100%
|
276 |
} elseif ( 'partialview' == $layout ) {
|
277 |
$inline_style .= 'max-width:100%;';
|
@@ -326,7 +326,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
326 |
} else {
|
327 |
$slideinfo_size = sprintf( ', size:%s', $slideinfo_width );
|
328 |
}
|
329 |
-
|
330 |
$instance_suffix = substr($uid, -4);
|
331 |
// slider javascript instance name
|
332 |
$instance_name = "masterslider_".$instance_suffix;
|
@@ -339,11 +339,11 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
339 |
if( 'laptop' == $template ){
|
340 |
$inner_template_container_open_tags = sprintf( '<div class="ms-laptop-cont"><img src="%s" class="ms-laptop-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/laptop.png' );
|
341 |
$inner_template_container_close_tags = '</div></div>';
|
342 |
-
|
343 |
} elseif( 'display' == $template ){
|
344 |
$inner_template_container_open_tags = sprintf( '<div class="ms-display-cont"><img src="%s" class="ms-display-bg" /><div class="ms-dis-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/display.png' );
|
345 |
$inner_template_container_close_tags = '</div></div>';
|
346 |
-
|
347 |
} elseif( 'flat-laptop' == $template ){
|
348 |
$inner_template_container_open_tags = sprintf( '<div class="ms-laptop-cont"><img src="%s" class="ms-laptop-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-laptop.png' );
|
349 |
$inner_template_container_close_tags = '</div></div>';
|
@@ -351,35 +351,35 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
351 |
} elseif( 'flat-display' == $template ){
|
352 |
$inner_template_container_open_tags = sprintf( '<div class="ms-display-cont"><img src="%s" class="ms-display-bg" /><div class="ms-dis-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-display.png' );
|
353 |
$inner_template_container_close_tags = '</div></div>';
|
354 |
-
|
355 |
} elseif( 'tablet' == $template ){
|
356 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/tablet.png' );
|
357 |
$inner_template_container_close_tags = '</div></div>';
|
358 |
-
|
359 |
} elseif( 'flat-tablet' == $template ){
|
360 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-tablet.png' );
|
361 |
$inner_template_container_close_tags = '</div></div>';
|
362 |
-
|
363 |
} elseif( 'tablet-land' == $template ){
|
364 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/tablet-land.png' );
|
365 |
$inner_template_container_close_tags = '</div></div>';
|
366 |
-
|
367 |
} elseif( 'flat-tablet-land' == $template ){
|
368 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-tablet-land.png' );
|
369 |
$inner_template_container_close_tags = '</div></div>';
|
370 |
-
|
371 |
} elseif( 'phone' == $template ){
|
372 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/phone.png' );
|
373 |
$inner_template_container_close_tags = '</div></div>';
|
374 |
-
|
375 |
} elseif( 'flat-phone' == $template ){
|
376 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-phone.png' );
|
377 |
$inner_template_container_close_tags = '</div></div>';
|
378 |
-
|
379 |
} elseif( 'phone-land' == $template ){
|
380 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/phone-land.png' );
|
381 |
$inner_template_container_close_tags = '</div></div>';
|
382 |
-
|
383 |
} elseif( 'flat-phone-land' == $template ){
|
384 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-phone-land.png' );
|
385 |
$inner_template_container_close_tags = '</div></div>';
|
@@ -397,7 +397,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
397 |
|
398 |
<!-- MasterSlider -->
|
399 |
<div id="<?php echo $puid; ?>" class="master-slider-parent msl <?php echo trim( $wrapper_classes ); ?>" <?php echo $inline_style; ?> >
|
400 |
-
|
401 |
<?php echo $inner_template_container_open_tags; ?>
|
402 |
|
403 |
<!-- MasterSlider Main -->
|
@@ -411,8 +411,8 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
411 |
<?php echo $inner_template_container_close_tags; ?>
|
412 |
|
413 |
</div>
|
414 |
-
<!-- END MasterSlider -->
|
415 |
-
|
416 |
<script>
|
417 |
(function ( $ ) {
|
418 |
"use strict";
|
@@ -421,18 +421,18 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
421 |
var <?php echo $instance_name; ?> = new MasterSlider();
|
422 |
|
423 |
// slider controls
|
424 |
-
<?php if($arrows == 'true' || 'image-gallery' == $template ){
|
425 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s %s });",
|
426 |
-
'arrows',
|
427 |
-
msp_is_true($arrows_autohide ),
|
428 |
msp_is_true($arrows_overvideo ),
|
429 |
$arrows_hideunder
|
430 |
);
|
431 |
-
} ?>
|
432 |
-
<?php if($bullets == 'true'){
|
433 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', align:'%s' %s %s });\n",
|
434 |
-
'bullets' ,
|
435 |
-
msp_is_true($bullets_autohide ),
|
436 |
msp_is_true($bullets_overvideo ),
|
437 |
$bullets_direction,
|
438 |
$bullets_align,
|
@@ -441,7 +441,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
441 |
);
|
442 |
} ?>
|
443 |
|
444 |
-
<?php if($thumbs == 'true'){
|
445 |
$thumbs_custom_class = 'true' == $thumbs_in_tab ? 'ms-has-thumb' : '';
|
446 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', speed:%d, inset:%s, arrows:%s, hover:%s, customClass:'%s', align:'%s',type:'%s', margin:%d, width:%d, height:%d, space:%d, fillMode:'%s' %s });\n",
|
447 |
'thumblist',
|
@@ -465,10 +465,10 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
465 |
|
466 |
|
467 |
} ?>
|
468 |
-
<?php if($scroll == 'true'){
|
469 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', inset:%s, align:'%s', color:'%s' %s %s %s });\n",
|
470 |
-
'scrollbar',
|
471 |
-
msp_is_true($scroll_autohide ),
|
472 |
msp_is_true($scroll_overvideo ),
|
473 |
$scroll_direction,
|
474 |
msp_is_true($scroll_inset ),
|
@@ -479,10 +479,10 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
479 |
$scroll_width
|
480 |
);
|
481 |
} ?>
|
482 |
-
<?php if($circletimer == 'true'){
|
483 |
printf( "\t\t\t\t$instance_name.control('%s',{ autohide:%s, overVideo:%s, color:'%s', radius:%d, stroke:%d %s %s });\n",
|
484 |
-
"circletimer",
|
485 |
-
msp_is_true($circletimer_autohide ),
|
486 |
msp_is_true($circletimer_overvideo ),
|
487 |
$circletimer_color,
|
488 |
$circletimer_radius,
|
@@ -491,10 +491,10 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
491 |
$circletimer_hideunder
|
492 |
);
|
493 |
} ?>
|
494 |
-
<?php if($timebar == 'true'){
|
495 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, align:'%s', color:'%s' %s %s });\n",
|
496 |
-
"timebar",
|
497 |
-
msp_is_true($timebar_autohide ),
|
498 |
msp_is_true($timebar_overvideo ),
|
499 |
$timebar_align,
|
500 |
$timebar_color,
|
@@ -502,10 +502,10 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
502 |
$timebar_width
|
503 |
);
|
504 |
} ?>
|
505 |
-
<?php if($slideinfo == 'true'){
|
506 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', align:'%s',inset:%s %s %s %s });\n",
|
507 |
-
"slideinfo",
|
508 |
-
msp_is_true($slideinfo_autohide ),
|
509 |
msp_is_true($slideinfo_overvideo ),
|
510 |
$slideinfo_direction,
|
511 |
$slideinfo_align,
|
@@ -525,7 +525,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
525 |
grabCursor : <?php msp_is_true_e($grab_cursor); ?>,
|
526 |
swipe : <?php msp_is_true_e($swipe); ?>,
|
527 |
mouse : <?php msp_is_true_e($mouse); ?>,
|
528 |
-
layout : "<?php echo $layout; ?>",
|
529 |
wheel : <?php msp_is_true_e($wheel); ?>,
|
530 |
autoplay : <?php msp_is_true_e($autoplay); ?>,
|
531 |
instantStartLayers:<?php msp_is_true_e( $instant_show_layers ); ?>,
|
@@ -537,14 +537,14 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
537 |
smoothHeight : <?php msp_is_true_e($smooth_height); ?>,
|
538 |
endPause : <?php msp_is_true_e($end_pause); ?>,
|
539 |
overPause : <?php msp_is_true_e($over_pause); ?>,
|
540 |
-
fillMode : "<?php echo $fill_mode; ?>",
|
541 |
centerControls : <?php msp_is_true_e($center_controls); ?>,
|
542 |
startOnAppear : <?php msp_is_true_e($start_on_appear); ?>,
|
543 |
-
layersMode : "<?php echo $layers_mode; ?>",
|
544 |
-
hideLayers : <?php msp_is_true_e($hide_layers); ?>,
|
545 |
fullscreenMargin: <?php echo (int) $fullscreen_margin; ?>,
|
546 |
-
speed : <?php echo (int)$speed; ?>,
|
547 |
-
dir : "<?php echo $direction; ?>",
|
548 |
<?php if( 'staff-3' == $template ) { echo "viewOption : { centerSpace:1.6 },\n"; } ?>
|
549 |
<?php if( 'off' != $parallax_mode ) { echo "\t\t\t\t\t\tparallaxMode : '$parallax_mode',\n"; } ?>
|
550 |
view : "<?php echo $view; ?>"
|
@@ -554,7 +554,7 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
554 |
|
555 |
if( ! empty( $on_change_start ) )
|
556 |
printf( "$instance_name.api.addEventListener(MSSliderEvent.CHANGE_START, %s );\n" , msp_maybe_base64_decode( $on_change_start ) ) ;
|
557 |
-
|
558 |
if( ! empty( $on_change_end ) )
|
559 |
printf( "\t\t\t\t$instance_name.api.addEventListener(MSSliderEvent.CHANGE_END, %s );\n" , msp_maybe_base64_decode( $on_change_end ) ) ;
|
560 |
|
@@ -589,23 +589,23 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
589 |
echo "\t\t\t\t});\n";
|
590 |
}
|
591 |
|
592 |
-
if ( 'image-gallery' == $template ) {
|
593 |
printf( "new MSGallery( '%s' , %s).setup();", $puid, $instance_name );
|
594 |
}
|
595 |
|
596 |
-
if ( 'flickr' == $slider_type ) {
|
597 |
printf( "new MSFlickrV2( %s, { key:'%s', id:'%s', count:%d, thumbSize:'%s',imgSize:'%s', type:'%s' });", $instance_name, $flickr_key, $flickr_id, $flickr_count, $flickr_thumb_size, $flickr_size, $flickr_type );
|
598 |
}
|
599 |
|
600 |
-
if ( 'facebook' == $slider_type ) {
|
601 |
$facebook_username_prop = empty( $facebook_username ) ? '' : sprintf( "username:'%s', " , $facebook_username );
|
602 |
$facebook_albumid_prop = empty( $facebook_albumid ) ? '' : sprintf( "albumId :'%s', " , $facebook_albumid );
|
603 |
|
604 |
-
printf( "new MSFacebookGallery( %s, { %s %s count:%d, thumbSize:'%s',imgSize:'%s', type:'%s' });",
|
605 |
$instance_name, $facebook_username_prop, $facebook_albumid_prop, $facebook_count, $facebook_thumb_size, $facebook_size, $facebook_type );
|
606 |
}
|
607 |
|
608 |
-
if ( ! empty( $gfonts ) ) {
|
609 |
$link_tag = sprintf( "<link rel='stylesheet' id='ms-fonts' href='http://fonts.googleapis.com/css?family=%s' type='text/css' media='all' />", $gfonts );
|
610 |
echo "\n\t\t\t\t" . sprintf( '$("head").append( "%s" );', $link_tag ) . "\n";
|
611 |
}
|
@@ -614,10 +614,10 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
614 |
echo "\n\t\t\t\twindow.masterslider_instances.push( $instance_name );\n";
|
615 |
?>
|
616 |
});
|
617 |
-
|
618 |
})(jQuery);
|
619 |
-
</script>
|
620 |
-
|
621 |
<?php
|
622 |
return apply_filters( "masterslider_ms_slider_shortcode", ob_get_clean(), $mixed );
|
623 |
}
|
@@ -630,8 +630,8 @@ function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
|
630 |
add_shortcode( 'ms_slide', 'msp_masterslider_slide_shortcode' );
|
631 |
|
632 |
function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
633 |
-
extract( shortcode_atts(
|
634 |
-
array(
|
635 |
'src' => '',
|
636 |
'src_full' => '',
|
637 |
|
@@ -640,7 +640,7 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
640 |
'style' => '',
|
641 |
|
642 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
643 |
-
|
644 |
'title' => '', // image title
|
645 |
'alt' => '', // image alternative text
|
646 |
|
@@ -649,7 +649,7 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
649 |
'link_class' => '',
|
650 |
'link_id' => '',
|
651 |
'link_rel' => '',
|
652 |
-
|
653 |
'target' => '_blank',
|
654 |
'video' => '', // youtube or vimeo video link
|
655 |
'auto_play_video' => '', // autoplay for youtube or vimeo videos
|
@@ -660,7 +660,7 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
660 |
|
661 |
'info' => '',
|
662 |
|
663 |
-
'autopause' => 'false',
|
664 |
'mute' => 'true',
|
665 |
'loop' => 'true',
|
666 |
'vbgalign' => 'fill',
|
@@ -671,13 +671,13 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
671 |
'thumb' => '',
|
672 |
'tab' => '',
|
673 |
'tab_thumb' => '',
|
674 |
-
'delay' => '', // data-delay
|
675 |
'bgalign' => '', // data-fill-mode
|
676 |
'bgcolor' => '',
|
677 |
'pattern' => '',
|
678 |
'tintcolor' => ''
|
679 |
)
|
680 |
-
, $atts, 'masterslider_slide' )
|
681 |
);
|
682 |
|
683 |
$css_class = empty( $css_class ) ? '' : ' '.$css_class;
|
@@ -696,7 +696,7 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
696 |
|
697 |
// add slide starter tag
|
698 |
$slide_start_tag = sprintf( '<div %s class="ms-slide%s" %s %s %s >', $css_id, $css_class, $data_delay, $data_align, $style_attr )."\n";
|
699 |
-
|
700 |
// making start tag filterable for extend purposes
|
701 |
$slide_start_tag = apply_filters( 'msp_masterslider_slide_start_tag', "\t\t\t\t".$slide_start_tag, $atts );
|
702 |
|
@@ -706,13 +706,13 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
706 |
|
707 |
// if blank image is not set use original img instead
|
708 |
$src_blank = empty( $src_blank ) ? $src : $src_blank;
|
709 |
-
|
710 |
// decode escaped square brackets
|
711 |
$title = str_replace( array( "%5B", "%5D" ), array('[', ']'), $title );
|
712 |
$alt = str_replace( array( "%5B", "%5D" ), array('[', ']'), $alt );
|
713 |
$link_title = str_replace( array( "%5B", "%5D" ), array('[', ']'), $link_title );
|
714 |
$link_rel = str_replace( array( "%5B", "%5D" ), array('[', ']'), $link_rel );
|
715 |
-
|
716 |
// main image markup
|
717 |
if( ! empty( $src ) ) {
|
718 |
$crop_width = empty( $crop_width ) || ! is_numeric( $crop_width ) ? NULL : (int)$crop_width;
|
@@ -723,24 +723,24 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
723 |
|
724 |
if( $crop_width || $crop_height )
|
725 |
$src = msp_get_the_resized_image_src( $src, $crop_width, $crop_height, true );
|
726 |
-
|
727 |
$slide_content .= "\t\t\t\t\t" . sprintf('<img src="%s" alt="%s" title="%s" data-src="%s" />', $src_blank, $alt, $title, $src )."\n";
|
728 |
}
|
729 |
|
730 |
$self_video_markup = '';
|
731 |
// self host video background
|
732 |
-
if( ! empty( $mp4 ) )
|
733 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/mp4"/>', $mp4 )."\n";
|
734 |
|
735 |
-
if( ! empty( $webm ) )
|
736 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/webm"/>', $webm )."\n";
|
737 |
|
738 |
-
if( ! empty( $ogg ) )
|
739 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/ogg"/>', $ogg )."\n";
|
740 |
|
741 |
|
742 |
if( ! empty( $self_video_markup ) ) {
|
743 |
-
$slide_content .= "\t".sprintf( '<video data-autopause="%s" data-mute="%s" data-loop="%s" data-fill-mode="%s" >%s%s%s</video>',
|
744 |
msp_is_true( $autopause ), $mute, $loop, $vbgalign, "\n", $self_video_markup, "\t" )."\n";
|
745 |
}
|
746 |
|
@@ -754,12 +754,12 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
754 |
$att_link_title = $link_title ? 'title="'. $link_title .'"' : '';
|
755 |
$att_link_class = $link_class ? 'class="'. $link_class .'"' : '';
|
756 |
$att_link_id = $link_id ? 'id="'. $link_id .'"' : '';
|
757 |
-
|
758 |
-
$slide_content .= "\t".sprintf('<a href="%s" %s %s %s %s %s>%s</a>', $link, $att_link_target,
|
759 |
$att_link_rel, $att_link_title, $att_link_class,
|
760 |
$att_link_id, $title )."\n";
|
761 |
}
|
762 |
-
|
763 |
// add layers that passed as content
|
764 |
if( ! empty( $content ) )
|
765 |
$slide_content .= $content."\n";
|
@@ -796,7 +796,7 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
796 |
$slide_content = do_shortcode( $slide_content );
|
797 |
|
798 |
$output = empty( $slide_content ) ? '' : $slide_start_tag.$slide_content.$slide_end_tag;
|
799 |
-
|
800 |
return apply_filters( 'masterslider_slide_content', $output, $slide_start_tag, $slide_content, $slide_end_tag );
|
801 |
}
|
802 |
|
@@ -808,10 +808,10 @@ function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
|
808 |
add_shortcode( 'ms_layer', 'msp_masterslider_layer_shortcode' );
|
809 |
|
810 |
function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
811 |
-
|
812 |
// merge input and default attrs
|
813 |
-
$merged = shortcode_atts(
|
814 |
-
array(
|
815 |
'src' => '', // image layer src or video cover image
|
816 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
817 |
|
@@ -864,8 +864,8 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
864 |
'height' => ''
|
865 |
)
|
866 |
, $atts, 'masterslider_layer' );
|
867 |
-
|
868 |
-
extract( $merged );
|
869 |
|
870 |
|
871 |
$wrapper_class = trim( 'ms-layer '. $css_class.' '. $style_id );
|
@@ -887,8 +887,8 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
887 |
}
|
888 |
|
889 |
|
890 |
-
$show_duration = ( ! is_numeric( $show_duration ) || empty( $show_duration ) ) ? 1000 : (int)$show_duration;
|
891 |
-
$show_delay = ( ! is_numeric( $show_delay ) || empty( $show_delay ) ) ? 0 : (int)$show_delay;
|
892 |
|
893 |
$hide_duration = ( ! is_numeric( $hide_duration ) || empty( $hide_duration ) ) ? 1000 : (int)$hide_duration;
|
894 |
$hide_delay = ( ! is_numeric( $hide_delay ) || empty( $hide_delay ) ) ? 1000 : (int)$hide_delay;
|
@@ -952,7 +952,7 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
952 |
$rel_attr = empty( $rel ) ? '' : 'rel="'.$rel.'"';
|
953 |
|
954 |
$rel_attr = apply_filters( 'masterslider_layer_shortcode_attr_rel', $rel_attr, $rel );
|
955 |
-
|
956 |
$link = apply_filters( 'masterslider_layer_shortcode_attr_link', $link );
|
957 |
|
958 |
// create data-link attr if it's not default value
|
@@ -967,7 +967,7 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
967 |
} else {
|
968 |
$data_action = '';
|
969 |
}
|
970 |
-
|
971 |
|
972 |
// convert relative image link to absolute
|
973 |
$src = ! empty( $src ) ? msp_get_the_absolute_media_url( $src ) : $src;
|
@@ -978,7 +978,7 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
978 |
$data_tp_width = 'hotspot' == $type ? 'data-width="'.$tooltip_width.'"' : '';
|
979 |
$data_target = 'hotspot' == $type ? 'data-target="'.$target.'"' : '';
|
980 |
|
981 |
-
$effect_attrs = sprintf( '%s %s %s %s %s %s %s %s %s %s',
|
982 |
$data_show_effect, $data_show_duration, $data_show_delay, $data_show_ease, $data_hide_effect,
|
983 |
$data_hide_duration, $data_hide_time, $data_hide_ease, $data_hide_delay, $data_fixed );
|
984 |
|
@@ -1002,7 +1002,7 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
1002 |
|
1003 |
// or single image
|
1004 |
} else {
|
1005 |
-
$layer .= sprintf( '<img %s class="%s" src="%s" data-src="%s" alt="%s" style="%s" %s %s %s %s %s />',
|
1006 |
$id_attr, $wrapper_class, $src_blank, $src, $alt, $style_size, $effect_attrs, $common_attrs, $rel_attr, $data_action, $position_attrs )."\n";
|
1007 |
}
|
1008 |
|
@@ -1014,7 +1014,7 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
1014 |
|
1015 |
// if layer type was text, video or hotspot
|
1016 |
} else {
|
1017 |
-
|
1018 |
$layer_content = '';
|
1019 |
// add video iframe as layer content if type was video
|
1020 |
if( 'video' == $type ) {
|
@@ -1027,19 +1027,19 @@ function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
|
1027 |
$vid_height = empty( $height ) ? '270' : rtrim( $height, 'px' ) ;
|
1028 |
$layer_content .= sprintf( '<iframe src="%s" width="%s" height="%s" > </iframe>', $video, $vid_width, $vid_height );
|
1029 |
}
|
1030 |
-
|
1031 |
// add shortcode content if layer type was text or hotspot
|
1032 |
} else {
|
1033 |
$layer_content .= ! empty( $content ) ? do_shortcode( wp_unslash( $content ) ) : '';
|
1034 |
}
|
1035 |
|
1036 |
-
$layer = sprintf( '<div %s class="%s" style="%s" %s %s %s %s >%s</div>',
|
1037 |
$id_attr, $wrapper_class, $style_size, $data_link, $effect_attrs, $common_attrs, $position_attrs, $layer_content )."\n";
|
1038 |
}
|
1039 |
|
1040 |
// end layer markup generation //////////////////////////////////////////
|
1041 |
|
1042 |
-
|
1043 |
return apply_filters( "masterslider_layer_shortcode", "\t\t\t\t\t".$layer, $merged, $atts, $content );
|
1044 |
}
|
1045 |
|
@@ -1052,20 +1052,24 @@ add_shortcode( 'ms_slide_info', 'msp_masterslider_slide_info_shortcode' );
|
|
1052 |
|
1053 |
function msp_masterslider_slide_info_shortcode( $atts, $content = null ) {
|
1054 |
|
1055 |
-
$args = shortcode_atts(
|
1056 |
-
array(
|
1057 |
'css_class' => '',
|
1058 |
'tag_name' => 'div'
|
1059 |
)
|
1060 |
, $atts, 'masterslider_slide_info' );
|
1061 |
|
1062 |
-
extract( $args );
|
1063 |
|
1064 |
-
|
|
|
|
|
|
|
|
|
1065 |
|
1066 |
// create slide info markup
|
1067 |
$output = sprintf( '<%1$s class="ms-info%2$s">%3$s</%1$s>', $tag_name, $css_class, do_shortcode( wp_unslash( $content ) ) )."\n";
|
1068 |
-
|
1069 |
return apply_filters( 'masterslider_slide_info_shortcode', "\t\t\t\t\t".$output, $args );
|
1070 |
}
|
1071 |
|
@@ -1075,21 +1079,21 @@ add_shortcode( 'ms_slide_flickr', 'msp_masterslider_slide_flickr_shortcode' );
|
|
1075 |
|
1076 |
function msp_masterslider_slide_flickr_shortcode( $atts, $content = null ) {
|
1077 |
|
1078 |
-
$args = shortcode_atts(
|
1079 |
-
array(
|
1080 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
1081 |
'thumb' => 'yes'
|
1082 |
)
|
1083 |
, $atts, 'masterslider_slide_flickr' );
|
1084 |
|
1085 |
-
extract( $args );
|
1086 |
|
1087 |
$output = sprintf( '<img src="%s" data-src="{{image}}" alt="{{title}}"/>', $src_blank ) . "\n";
|
1088 |
|
1089 |
if( 'yes' == $thumb )
|
1090 |
$output .= "\t\t\t\t" . '<img class="ms-thumb" src="{{thumb}}" alt="{{title}}"/>';
|
1091 |
|
1092 |
-
|
1093 |
return apply_filters( 'masterslider_slide_flickr_shortcode', "\t\t\t\t".$output, $args );
|
1094 |
}
|
1095 |
|
9 |
|
10 |
|
11 |
function msp_masterslider_shortcode( $atts, $content = null ) {
|
12 |
+
extract( shortcode_atts(
|
13 |
array( 'id' => ''),
|
14 |
+
$atts,
|
15 |
'masterslider'
|
16 |
+
)
|
17 |
);
|
18 |
|
19 |
return get_masterslider( $id );
|
26 |
add_shortcode( 'masterslider_pb', 'msp_masterslider_pb_shortcode' );
|
27 |
|
28 |
function msp_masterslider_pb_shortcode( $atts, $content = null ) {
|
29 |
+
$mixed = shortcode_atts(
|
30 |
+
array(
|
31 |
+
'id' => '',
|
32 |
'title' => '',
|
33 |
'class' => ''
|
34 |
),
|
35 |
+
$atts,
|
36 |
'masterslider_pb'
|
37 |
);
|
38 |
|
56 |
|
57 |
function msp_masterslider_wrapper_shortcode( $atts, $content = null ) {
|
58 |
|
59 |
+
$mixed = shortcode_atts(
|
60 |
|
61 |
array(
|
62 |
'id' => '1', // slider id
|
63 |
+
'uid' => '', // an unique and temporary id
|
64 |
'class' => '', // a class that adds to slider wrapper
|
65 |
+
'margin' => 0,
|
66 |
|
67 |
'inline_style' => '',
|
68 |
'bg_color' => '',
|
86 |
'crop' => 'false', // Automatically crop slide images?
|
87 |
|
88 |
'autoplay' => 'false', // Enables the autoplay slideshow
|
89 |
+
'loop' => 'false', //
|
90 |
'shuffle' => 'false', // Enables the shuffle slide order
|
91 |
'preload' => 0,
|
92 |
|
104 |
'height_limit' => 'false', // It force the slide to use max height value as its base specified height value.
|
105 |
'auto_height' => 'false',
|
106 |
'smooth_height' => 'true',
|
107 |
+
|
108 |
'end_pause' => 'false',
|
109 |
'over_pause' => 'false',
|
110 |
|
137 |
'flickr_size' => 'c',
|
138 |
'flickr_thumb_size' => 'q',
|
139 |
|
140 |
+
|
141 |
'facebook_username' => '',
|
142 |
'facebook_albumid' => '',
|
143 |
'facebook_count' => 10,
|
171 |
'bullets_align' => 'bottom',
|
172 |
'bullets_margin' => '',
|
173 |
'bullets_hideunder'=> '',
|
174 |
+
|
175 |
'thumbs' => 'false', // display thumbnails?
|
176 |
'thumbs_autohide' => 'true', // auto hide thumbs?
|
177 |
'thumbs_overvideo' => 'true', // visible over slide video while playing?
|
217 |
'timebar_color' => '#FFFFFF',
|
218 |
'timebar_hideunder'=> '',
|
219 |
'timebar_width' => '',
|
220 |
+
|
221 |
|
222 |
'slideinfo' => 'false', // display timebar?
|
223 |
'slideinfo_autohide' => 'true', // auto hide timebar?
|
249 |
wp_enqueue_style ( 'masterslider-main');
|
250 |
wp_enqueue_script( 'masterslider-core');
|
251 |
wp_enqueue_script( 'prettyPhoto' );
|
252 |
+
|
253 |
// create an unique id for slider
|
254 |
$uid = empty($uid ) ? uniqid("MS") : $uid;
|
255 |
// unique id for parant wrapper
|
256 |
$puid = 'P_' . $uid;
|
257 |
|
258 |
+
|
259 |
// class name for slider template
|
260 |
$template_class = empty( $template_class ) ? '' : esc_attr( $template_class );
|
261 |
+
|
262 |
$preload = is_numeric($preload) ? ( (int)$preload + 1 ) : "'$preload'";
|
263 |
|
264 |
|
267 |
// validate wrapper_width_unit
|
268 |
$wrapper_width_unit = in_array( $wrapper_width_unit, array( 'px', '%', 'em' ) ) ? $wrapper_width_unit : 'px';
|
269 |
$inline_style .= sprintf( 'max-width:%s%s;', $wrapper_width, $wrapper_width_unit );
|
270 |
+
|
271 |
// if wrapper_width is not set use slider width as default
|
272 |
} elseif ( 'boxed' == $layout ) {
|
273 |
$inline_style .= sprintf( 'max-width:%spx;', $width );
|
274 |
+
|
275 |
// if wrapper_width is not set the value to 100%
|
276 |
} elseif ( 'partialview' == $layout ) {
|
277 |
$inline_style .= 'max-width:100%;';
|
326 |
} else {
|
327 |
$slideinfo_size = sprintf( ', size:%s', $slideinfo_width );
|
328 |
}
|
329 |
+
|
330 |
$instance_suffix = substr($uid, -4);
|
331 |
// slider javascript instance name
|
332 |
$instance_name = "masterslider_".$instance_suffix;
|
339 |
if( 'laptop' == $template ){
|
340 |
$inner_template_container_open_tags = sprintf( '<div class="ms-laptop-cont"><img src="%s" class="ms-laptop-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/laptop.png' );
|
341 |
$inner_template_container_close_tags = '</div></div>';
|
342 |
+
|
343 |
} elseif( 'display' == $template ){
|
344 |
$inner_template_container_open_tags = sprintf( '<div class="ms-display-cont"><img src="%s" class="ms-display-bg" /><div class="ms-dis-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/display.png' );
|
345 |
$inner_template_container_close_tags = '</div></div>';
|
346 |
+
|
347 |
} elseif( 'flat-laptop' == $template ){
|
348 |
$inner_template_container_open_tags = sprintf( '<div class="ms-laptop-cont"><img src="%s" class="ms-laptop-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-laptop.png' );
|
349 |
$inner_template_container_close_tags = '</div></div>';
|
351 |
} elseif( 'flat-display' == $template ){
|
352 |
$inner_template_container_open_tags = sprintf( '<div class="ms-display-cont"><img src="%s" class="ms-display-bg" /><div class="ms-dis-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-display.png' );
|
353 |
$inner_template_container_close_tags = '</div></div>';
|
354 |
+
|
355 |
} elseif( 'tablet' == $template ){
|
356 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/tablet.png' );
|
357 |
$inner_template_container_close_tags = '</div></div>';
|
358 |
+
|
359 |
} elseif( 'flat-tablet' == $template ){
|
360 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-tablet.png' );
|
361 |
$inner_template_container_close_tags = '</div></div>';
|
362 |
+
|
363 |
} elseif( 'tablet-land' == $template ){
|
364 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/tablet-land.png' );
|
365 |
$inner_template_container_close_tags = '</div></div>';
|
366 |
+
|
367 |
} elseif( 'flat-tablet-land' == $template ){
|
368 |
$inner_template_container_open_tags = sprintf( '<div class="ms-tablet-cont"><img src="%s" class="ms-tablet-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-tablet-land.png' );
|
369 |
$inner_template_container_close_tags = '</div></div>';
|
370 |
+
|
371 |
} elseif( 'phone' == $template ){
|
372 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/phone.png' );
|
373 |
$inner_template_container_close_tags = '</div></div>';
|
374 |
+
|
375 |
} elseif( 'flat-phone' == $template ){
|
376 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-phone.png' );
|
377 |
$inner_template_container_close_tags = '</div></div>';
|
378 |
+
|
379 |
} elseif( 'phone-land' == $template ){
|
380 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/phone-land.png' );
|
381 |
$inner_template_container_close_tags = '</div></div>';
|
382 |
+
|
383 |
} elseif( 'flat-phone-land' == $template ){
|
384 |
$inner_template_container_open_tags = sprintf( '<div class="ms-phone-cont"><img src="%s" class="ms-phone-bg" /><div class="ms-lt-slider-cont">', MSWP_AVERTA_PUB_URL.'/assets/css/templates/flat-phone-land.png' );
|
385 |
$inner_template_container_close_tags = '</div></div>';
|
397 |
|
398 |
<!-- MasterSlider -->
|
399 |
<div id="<?php echo $puid; ?>" class="master-slider-parent msl <?php echo trim( $wrapper_classes ); ?>" <?php echo $inline_style; ?> >
|
400 |
+
|
401 |
<?php echo $inner_template_container_open_tags; ?>
|
402 |
|
403 |
<!-- MasterSlider Main -->
|
411 |
<?php echo $inner_template_container_close_tags; ?>
|
412 |
|
413 |
</div>
|
414 |
+
<!-- END MasterSlider -->
|
415 |
+
|
416 |
<script>
|
417 |
(function ( $ ) {
|
418 |
"use strict";
|
421 |
var <?php echo $instance_name; ?> = new MasterSlider();
|
422 |
|
423 |
// slider controls
|
424 |
+
<?php if($arrows == 'true' || 'image-gallery' == $template ){
|
425 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s %s });",
|
426 |
+
'arrows',
|
427 |
+
msp_is_true($arrows_autohide ),
|
428 |
msp_is_true($arrows_overvideo ),
|
429 |
$arrows_hideunder
|
430 |
);
|
431 |
+
} ?>
|
432 |
+
<?php if($bullets == 'true'){
|
433 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', align:'%s' %s %s });\n",
|
434 |
+
'bullets' ,
|
435 |
+
msp_is_true($bullets_autohide ),
|
436 |
msp_is_true($bullets_overvideo ),
|
437 |
$bullets_direction,
|
438 |
$bullets_align,
|
441 |
);
|
442 |
} ?>
|
443 |
|
444 |
+
<?php if($thumbs == 'true'){
|
445 |
$thumbs_custom_class = 'true' == $thumbs_in_tab ? 'ms-has-thumb' : '';
|
446 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', speed:%d, inset:%s, arrows:%s, hover:%s, customClass:'%s', align:'%s',type:'%s', margin:%d, width:%d, height:%d, space:%d, fillMode:'%s' %s });\n",
|
447 |
'thumblist',
|
465 |
|
466 |
|
467 |
} ?>
|
468 |
+
<?php if($scroll == 'true'){
|
469 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', inset:%s, align:'%s', color:'%s' %s %s %s });\n",
|
470 |
+
'scrollbar',
|
471 |
+
msp_is_true($scroll_autohide ),
|
472 |
msp_is_true($scroll_overvideo ),
|
473 |
$scroll_direction,
|
474 |
msp_is_true($scroll_inset ),
|
479 |
$scroll_width
|
480 |
);
|
481 |
} ?>
|
482 |
+
<?php if($circletimer == 'true'){
|
483 |
printf( "\t\t\t\t$instance_name.control('%s',{ autohide:%s, overVideo:%s, color:'%s', radius:%d, stroke:%d %s %s });\n",
|
484 |
+
"circletimer",
|
485 |
+
msp_is_true($circletimer_autohide ),
|
486 |
msp_is_true($circletimer_overvideo ),
|
487 |
$circletimer_color,
|
488 |
$circletimer_radius,
|
491 |
$circletimer_hideunder
|
492 |
);
|
493 |
} ?>
|
494 |
+
<?php if($timebar == 'true'){
|
495 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, align:'%s', color:'%s' %s %s });\n",
|
496 |
+
"timebar",
|
497 |
+
msp_is_true($timebar_autohide ),
|
498 |
msp_is_true($timebar_overvideo ),
|
499 |
$timebar_align,
|
500 |
$timebar_color,
|
502 |
$timebar_width
|
503 |
);
|
504 |
} ?>
|
505 |
+
<?php if($slideinfo == 'true'){
|
506 |
printf( "\t\t\t\t$instance_name.control('%s' ,{ autohide:%s, overVideo:%s, dir:'%s', align:'%s',inset:%s %s %s %s });\n",
|
507 |
+
"slideinfo",
|
508 |
+
msp_is_true($slideinfo_autohide ),
|
509 |
msp_is_true($slideinfo_overvideo ),
|
510 |
$slideinfo_direction,
|
511 |
$slideinfo_align,
|
525 |
grabCursor : <?php msp_is_true_e($grab_cursor); ?>,
|
526 |
swipe : <?php msp_is_true_e($swipe); ?>,
|
527 |
mouse : <?php msp_is_true_e($mouse); ?>,
|
528 |
+
layout : "<?php echo $layout; ?>",
|
529 |
wheel : <?php msp_is_true_e($wheel); ?>,
|
530 |
autoplay : <?php msp_is_true_e($autoplay); ?>,
|
531 |
instantStartLayers:<?php msp_is_true_e( $instant_show_layers ); ?>,
|
537 |
smoothHeight : <?php msp_is_true_e($smooth_height); ?>,
|
538 |
endPause : <?php msp_is_true_e($end_pause); ?>,
|
539 |
overPause : <?php msp_is_true_e($over_pause); ?>,
|
540 |
+
fillMode : "<?php echo $fill_mode; ?>",
|
541 |
centerControls : <?php msp_is_true_e($center_controls); ?>,
|
542 |
startOnAppear : <?php msp_is_true_e($start_on_appear); ?>,
|
543 |
+
layersMode : "<?php echo $layers_mode; ?>",
|
544 |
+
hideLayers : <?php msp_is_true_e($hide_layers); ?>,
|
545 |
fullscreenMargin: <?php echo (int) $fullscreen_margin; ?>,
|
546 |
+
speed : <?php echo (int)$speed; ?>,
|
547 |
+
dir : "<?php echo $direction; ?>",
|
548 |
<?php if( 'staff-3' == $template ) { echo "viewOption : { centerSpace:1.6 },\n"; } ?>
|
549 |
<?php if( 'off' != $parallax_mode ) { echo "\t\t\t\t\t\tparallaxMode : '$parallax_mode',\n"; } ?>
|
550 |
view : "<?php echo $view; ?>"
|
554 |
|
555 |
if( ! empty( $on_change_start ) )
|
556 |
printf( "$instance_name.api.addEventListener(MSSliderEvent.CHANGE_START, %s );\n" , msp_maybe_base64_decode( $on_change_start ) ) ;
|
557 |
+
|
558 |
if( ! empty( $on_change_end ) )
|
559 |
printf( "\t\t\t\t$instance_name.api.addEventListener(MSSliderEvent.CHANGE_END, %s );\n" , msp_maybe_base64_decode( $on_change_end ) ) ;
|
560 |
|
589 |
echo "\t\t\t\t});\n";
|
590 |
}
|
591 |
|
592 |
+
if ( 'image-gallery' == $template ) {
|
593 |
printf( "new MSGallery( '%s' , %s).setup();", $puid, $instance_name );
|
594 |
}
|
595 |
|
596 |
+
if ( 'flickr' == $slider_type ) {
|
597 |
printf( "new MSFlickrV2( %s, { key:'%s', id:'%s', count:%d, thumbSize:'%s',imgSize:'%s', type:'%s' });", $instance_name, $flickr_key, $flickr_id, $flickr_count, $flickr_thumb_size, $flickr_size, $flickr_type );
|
598 |
}
|
599 |
|
600 |
+
if ( 'facebook' == $slider_type ) {
|
601 |
$facebook_username_prop = empty( $facebook_username ) ? '' : sprintf( "username:'%s', " , $facebook_username );
|
602 |
$facebook_albumid_prop = empty( $facebook_albumid ) ? '' : sprintf( "albumId :'%s', " , $facebook_albumid );
|
603 |
|
604 |
+
printf( "new MSFacebookGallery( %s, { %s %s count:%d, thumbSize:'%s',imgSize:'%s', type:'%s' });",
|
605 |
$instance_name, $facebook_username_prop, $facebook_albumid_prop, $facebook_count, $facebook_thumb_size, $facebook_size, $facebook_type );
|
606 |
}
|
607 |
|
608 |
+
if ( ! empty( $gfonts ) ) {
|
609 |
$link_tag = sprintf( "<link rel='stylesheet' id='ms-fonts' href='http://fonts.googleapis.com/css?family=%s' type='text/css' media='all' />", $gfonts );
|
610 |
echo "\n\t\t\t\t" . sprintf( '$("head").append( "%s" );', $link_tag ) . "\n";
|
611 |
}
|
614 |
echo "\n\t\t\t\twindow.masterslider_instances.push( $instance_name );\n";
|
615 |
?>
|
616 |
});
|
617 |
+
|
618 |
})(jQuery);
|
619 |
+
</script>
|
620 |
+
|
621 |
<?php
|
622 |
return apply_filters( "masterslider_ms_slider_shortcode", ob_get_clean(), $mixed );
|
623 |
}
|
630 |
add_shortcode( 'ms_slide', 'msp_masterslider_slide_shortcode' );
|
631 |
|
632 |
function msp_masterslider_slide_shortcode( $atts, $content = null ) {
|
633 |
+
extract( shortcode_atts(
|
634 |
+
array(
|
635 |
'src' => '',
|
636 |
'src_full' => '',
|
637 |
|
640 |
'style' => '',
|
641 |
|
642 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
643 |
+
|
644 |
'title' => '', // image title
|
645 |
'alt' => '', // image alternative text
|
646 |
|
649 |
'link_class' => '',
|
650 |
'link_id' => '',
|
651 |
'link_rel' => '',
|
652 |
+
|
653 |
'target' => '_blank',
|
654 |
'video' => '', // youtube or vimeo video link
|
655 |
'auto_play_video' => '', // autoplay for youtube or vimeo videos
|
660 |
|
661 |
'info' => '',
|
662 |
|
663 |
+
'autopause' => 'false',
|
664 |
'mute' => 'true',
|
665 |
'loop' => 'true',
|
666 |
'vbgalign' => 'fill',
|
671 |
'thumb' => '',
|
672 |
'tab' => '',
|
673 |
'tab_thumb' => '',
|
674 |
+
'delay' => '', // data-delay
|
675 |
'bgalign' => '', // data-fill-mode
|
676 |
'bgcolor' => '',
|
677 |
'pattern' => '',
|
678 |
'tintcolor' => ''
|
679 |
)
|
680 |
+
, $atts, 'masterslider_slide' )
|
681 |
);
|
682 |
|
683 |
$css_class = empty( $css_class ) ? '' : ' '.$css_class;
|
696 |
|
697 |
// add slide starter tag
|
698 |
$slide_start_tag = sprintf( '<div %s class="ms-slide%s" %s %s %s >', $css_id, $css_class, $data_delay, $data_align, $style_attr )."\n";
|
699 |
+
|
700 |
// making start tag filterable for extend purposes
|
701 |
$slide_start_tag = apply_filters( 'msp_masterslider_slide_start_tag', "\t\t\t\t".$slide_start_tag, $atts );
|
702 |
|
706 |
|
707 |
// if blank image is not set use original img instead
|
708 |
$src_blank = empty( $src_blank ) ? $src : $src_blank;
|
709 |
+
|
710 |
// decode escaped square brackets
|
711 |
$title = str_replace( array( "%5B", "%5D" ), array('[', ']'), $title );
|
712 |
$alt = str_replace( array( "%5B", "%5D" ), array('[', ']'), $alt );
|
713 |
$link_title = str_replace( array( "%5B", "%5D" ), array('[', ']'), $link_title );
|
714 |
$link_rel = str_replace( array( "%5B", "%5D" ), array('[', ']'), $link_rel );
|
715 |
+
|
716 |
// main image markup
|
717 |
if( ! empty( $src ) ) {
|
718 |
$crop_width = empty( $crop_width ) || ! is_numeric( $crop_width ) ? NULL : (int)$crop_width;
|
723 |
|
724 |
if( $crop_width || $crop_height )
|
725 |
$src = msp_get_the_resized_image_src( $src, $crop_width, $crop_height, true );
|
726 |
+
|
727 |
$slide_content .= "\t\t\t\t\t" . sprintf('<img src="%s" alt="%s" title="%s" data-src="%s" />', $src_blank, $alt, $title, $src )."\n";
|
728 |
}
|
729 |
|
730 |
$self_video_markup = '';
|
731 |
// self host video background
|
732 |
+
if( ! empty( $mp4 ) )
|
733 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/mp4"/>', $mp4 )."\n";
|
734 |
|
735 |
+
if( ! empty( $webm ) )
|
736 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/webm"/>', $webm )."\n";
|
737 |
|
738 |
+
if( ! empty( $ogg ) )
|
739 |
$self_video_markup .= "\t\t".sprintf('<source src="%s" type="video/ogg"/>', $ogg )."\n";
|
740 |
|
741 |
|
742 |
if( ! empty( $self_video_markup ) ) {
|
743 |
+
$slide_content .= "\t".sprintf( '<video data-autopause="%s" data-mute="%s" data-loop="%s" data-fill-mode="%s" >%s%s%s</video>',
|
744 |
msp_is_true( $autopause ), $mute, $loop, $vbgalign, "\n", $self_video_markup, "\t" )."\n";
|
745 |
}
|
746 |
|
754 |
$att_link_title = $link_title ? 'title="'. $link_title .'"' : '';
|
755 |
$att_link_class = $link_class ? 'class="'. $link_class .'"' : '';
|
756 |
$att_link_id = $link_id ? 'id="'. $link_id .'"' : '';
|
757 |
+
|
758 |
+
$slide_content .= "\t".sprintf('<a href="%s" %s %s %s %s %s>%s</a>', $link, $att_link_target,
|
759 |
$att_link_rel, $att_link_title, $att_link_class,
|
760 |
$att_link_id, $title )."\n";
|
761 |
}
|
762 |
+
|
763 |
// add layers that passed as content
|
764 |
if( ! empty( $content ) )
|
765 |
$slide_content .= $content."\n";
|
796 |
$slide_content = do_shortcode( $slide_content );
|
797 |
|
798 |
$output = empty( $slide_content ) ? '' : $slide_start_tag.$slide_content.$slide_end_tag;
|
799 |
+
|
800 |
return apply_filters( 'masterslider_slide_content', $output, $slide_start_tag, $slide_content, $slide_end_tag );
|
801 |
}
|
802 |
|
808 |
add_shortcode( 'ms_layer', 'msp_masterslider_layer_shortcode' );
|
809 |
|
810 |
function msp_masterslider_layer_shortcode( $atts, $content = null ) {
|
811 |
+
|
812 |
// merge input and default attrs
|
813 |
+
$merged = shortcode_atts(
|
814 |
+
array(
|
815 |
'src' => '', // image layer src or video cover image
|
816 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
817 |
|
864 |
'height' => ''
|
865 |
)
|
866 |
, $atts, 'masterslider_layer' );
|
867 |
+
|
868 |
+
extract( $merged );
|
869 |
|
870 |
|
871 |
$wrapper_class = trim( 'ms-layer '. $css_class.' '. $style_id );
|
887 |
}
|
888 |
|
889 |
|
890 |
+
$show_duration = ( ! is_numeric( $show_duration ) || empty( $show_duration ) ) ? 1000 : (int)$show_duration;
|
891 |
+
$show_delay = ( ! is_numeric( $show_delay ) || empty( $show_delay ) ) ? 0 : (int)$show_delay;
|
892 |
|
893 |
$hide_duration = ( ! is_numeric( $hide_duration ) || empty( $hide_duration ) ) ? 1000 : (int)$hide_duration;
|
894 |
$hide_delay = ( ! is_numeric( $hide_delay ) || empty( $hide_delay ) ) ? 1000 : (int)$hide_delay;
|
952 |
$rel_attr = empty( $rel ) ? '' : 'rel="'.$rel.'"';
|
953 |
|
954 |
$rel_attr = apply_filters( 'masterslider_layer_shortcode_attr_rel', $rel_attr, $rel );
|
955 |
+
|
956 |
$link = apply_filters( 'masterslider_layer_shortcode_attr_link', $link );
|
957 |
|
958 |
// create data-link attr if it's not default value
|
967 |
} else {
|
968 |
$data_action = '';
|
969 |
}
|
970 |
+
|
971 |
|
972 |
// convert relative image link to absolute
|
973 |
$src = ! empty( $src ) ? msp_get_the_absolute_media_url( $src ) : $src;
|
978 |
$data_tp_width = 'hotspot' == $type ? 'data-width="'.$tooltip_width.'"' : '';
|
979 |
$data_target = 'hotspot' == $type ? 'data-target="'.$target.'"' : '';
|
980 |
|
981 |
+
$effect_attrs = sprintf( '%s %s %s %s %s %s %s %s %s %s',
|
982 |
$data_show_effect, $data_show_duration, $data_show_delay, $data_show_ease, $data_hide_effect,
|
983 |
$data_hide_duration, $data_hide_time, $data_hide_ease, $data_hide_delay, $data_fixed );
|
984 |
|
1002 |
|
1003 |
// or single image
|
1004 |
} else {
|
1005 |
+
$layer .= sprintf( '<img %s class="%s" src="%s" data-src="%s" alt="%s" style="%s" %s %s %s %s %s />',
|
1006 |
$id_attr, $wrapper_class, $src_blank, $src, $alt, $style_size, $effect_attrs, $common_attrs, $rel_attr, $data_action, $position_attrs )."\n";
|
1007 |
}
|
1008 |
|
1014 |
|
1015 |
// if layer type was text, video or hotspot
|
1016 |
} else {
|
1017 |
+
|
1018 |
$layer_content = '';
|
1019 |
// add video iframe as layer content if type was video
|
1020 |
if( 'video' == $type ) {
|
1027 |
$vid_height = empty( $height ) ? '270' : rtrim( $height, 'px' ) ;
|
1028 |
$layer_content .= sprintf( '<iframe src="%s" width="%s" height="%s" > </iframe>', $video, $vid_width, $vid_height );
|
1029 |
}
|
1030 |
+
|
1031 |
// add shortcode content if layer type was text or hotspot
|
1032 |
} else {
|
1033 |
$layer_content .= ! empty( $content ) ? do_shortcode( wp_unslash( $content ) ) : '';
|
1034 |
}
|
1035 |
|
1036 |
+
$layer = sprintf( '<div %s class="%s" style="%s" %s %s %s %s >%s</div>',
|
1037 |
$id_attr, $wrapper_class, $style_size, $data_link, $effect_attrs, $common_attrs, $position_attrs, $layer_content )."\n";
|
1038 |
}
|
1039 |
|
1040 |
// end layer markup generation //////////////////////////////////////////
|
1041 |
|
1042 |
+
|
1043 |
return apply_filters( "masterslider_layer_shortcode", "\t\t\t\t\t".$layer, $merged, $atts, $content );
|
1044 |
}
|
1045 |
|
1052 |
|
1053 |
function msp_masterslider_slide_info_shortcode( $atts, $content = null ) {
|
1054 |
|
1055 |
+
$args = shortcode_atts(
|
1056 |
+
array(
|
1057 |
'css_class' => '',
|
1058 |
'tag_name' => 'div'
|
1059 |
)
|
1060 |
, $atts, 'masterslider_slide_info' );
|
1061 |
|
1062 |
+
extract( $args );
|
1063 |
|
1064 |
+
if( is_array( $css_class ) ){
|
1065 |
+
$css_class = join( ' ' , $css_class );
|
1066 |
+
} else {
|
1067 |
+
$css_class = empty( $css_class ) ? '' : esc_attr( ' '.$css_class );
|
1068 |
+
}
|
1069 |
|
1070 |
// create slide info markup
|
1071 |
$output = sprintf( '<%1$s class="ms-info%2$s">%3$s</%1$s>', $tag_name, $css_class, do_shortcode( wp_unslash( $content ) ) )."\n";
|
1072 |
+
|
1073 |
return apply_filters( 'masterslider_slide_info_shortcode', "\t\t\t\t\t".$output, $args );
|
1074 |
}
|
1075 |
|
1079 |
|
1080 |
function msp_masterslider_slide_flickr_shortcode( $atts, $content = null ) {
|
1081 |
|
1082 |
+
$args = shortcode_atts(
|
1083 |
+
array(
|
1084 |
'src_blank' => MSWP_BLANK_IMG, // url to black image for preloading job
|
1085 |
'thumb' => 'yes'
|
1086 |
)
|
1087 |
, $atts, 'masterslider_slide_flickr' );
|
1088 |
|
1089 |
+
extract( $args );
|
1090 |
|
1091 |
$output = sprintf( '<img src="%s" data-src="{{image}}" alt="{{title}}"/>', $src_blank ) . "\n";
|
1092 |
|
1093 |
if( 'yes' == $thumb )
|
1094 |
$output .= "\t\t\t\t" . '<img class="ms-thumb" src="{{thumb}}" alt="{{title}}"/>';
|
1095 |
|
1096 |
+
|
1097 |
return apply_filters( 'masterslider_slide_flickr_shortcode', "\t\t\t\t".$output, $args );
|
1098 |
}
|
1099 |
|
includes/msp-template-tags.php
CHANGED
@@ -2,217 +2,217 @@
|
|
2 |
|
3 |
function msp_get_general_post_template_tags() {
|
4 |
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
}
|
124 |
|
125 |
|
126 |
|
127 |
function msp_get_woocommerce_template_tags() {
|
128 |
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
}
|
200 |
|
201 |
|
202 |
|
203 |
function get_post_template_tags_value( $post = null, $args = null ){
|
204 |
-
|
205 |
|
206 |
-
|
207 |
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
|
217 |
-
|
218 |
}
|
2 |
|
3 |
function msp_get_general_post_template_tags() {
|
4 |
|
5 |
+
$tags = array(
|
6 |
+
|
7 |
+
array( 'name' => 'title',
|
8 |
+
'label' => __( 'The post title', 'master-slider' ),
|
9 |
+
'type' => '_general',
|
10 |
+
'callback' => ''
|
11 |
+
),
|
12 |
+
|
13 |
+
array( 'name' => 'content',
|
14 |
+
'label' => __( 'The post content', 'master-slider' ),
|
15 |
+
'type' => '_general',
|
16 |
+
'callback' => ''
|
17 |
+
),
|
18 |
+
|
19 |
+
array( 'name' => 'excerpt',
|
20 |
+
'label' => __( 'The post excerpt', 'master-slider' ),
|
21 |
+
'type' => '_general',
|
22 |
+
'callback' => ''
|
23 |
+
),
|
24 |
+
|
25 |
+
array( 'name' => 'categories',
|
26 |
+
'label' => __( 'The post categories', 'master-slider' ),
|
27 |
+
'type' => '_general',
|
28 |
+
'callback' => ''
|
29 |
+
),
|
30 |
+
|
31 |
+
array( 'name' => 'tags',
|
32 |
+
'label' => __( 'The post tags', 'master-slider' ),
|
33 |
+
'type' => '_general',
|
34 |
+
'callback' => ''
|
35 |
+
),
|
36 |
+
|
37 |
+
array( 'name' => 'permalink',
|
38 |
+
'label' => __( 'The post link', 'master-slider' ),
|
39 |
+
'type' => '_general',
|
40 |
+
'callback' => ''
|
41 |
+
),
|
42 |
+
|
43 |
+
array( 'name' => 'author',
|
44 |
+
'label' => __( 'The author name', 'master-slider' ),
|
45 |
+
'type' => '_general',
|
46 |
+
'callback' => ''
|
47 |
+
),
|
48 |
+
|
49 |
+
array( 'name' => 'post_id',
|
50 |
+
'label' => __( 'The unique ID of the post', 'master-slider' ),
|
51 |
+
'type' => '_general',
|
52 |
+
'callback' => ''
|
53 |
+
),
|
54 |
+
|
55 |
+
array( 'name' => 'image',
|
56 |
+
'label' => __( 'Post image', 'master-slider' ),
|
57 |
+
'type' => '_general',
|
58 |
+
'callback' => ''
|
59 |
+
),
|
60 |
+
|
61 |
+
array( 'name' => 'image-url',
|
62 |
+
'label' => __( 'Post image source', 'master-slider' ),
|
63 |
+
'type' => '_general',
|
64 |
+
'callback' => ''
|
65 |
+
),
|
66 |
+
|
67 |
+
array( 'name' => 'year',
|
68 |
+
'label' => __( 'The year of the post', 'master-slider' ),
|
69 |
+
'type' => '_general',
|
70 |
+
'callback' => ''
|
71 |
+
),
|
72 |
+
|
73 |
+
array( 'name' => 'monthnum',
|
74 |
+
'label' => __( 'Numeric Month', 'master-slider' ),
|
75 |
+
'type' => '_general',
|
76 |
+
'callback' => ''
|
77 |
+
),
|
78 |
+
|
79 |
+
array( 'name' => 'month',
|
80 |
+
'label' => __( 'Month name', 'master-slider' ),
|
81 |
+
'type' => '_general',
|
82 |
+
'callback' => ''
|
83 |
+
),
|
84 |
+
|
85 |
+
array( 'name' => 'daynum',
|
86 |
+
'label' => __( 'Day of the month', 'master-slider' ),
|
87 |
+
'type' => '_general',
|
88 |
+
'callback' => ''
|
89 |
+
),
|
90 |
+
|
91 |
+
array( 'name' => 'day',
|
92 |
+
'label' => __( 'Weekday name', 'master-slider' ),
|
93 |
+
'type' => '_general',
|
94 |
+
'callback' => ''
|
95 |
+
),
|
96 |
+
|
97 |
+
array( 'name' => 'time',
|
98 |
+
'label' => __( 'Hour:Minutes', 'master-slider' ),
|
99 |
+
'type' => '_general',
|
100 |
+
'callback' => ''
|
101 |
+
),
|
102 |
+
|
103 |
+
array( 'name' => 'date-published',
|
104 |
+
'label' => __( 'The publish date', 'master-slider' ),
|
105 |
+
'type' => '_general',
|
106 |
+
'callback' => ''
|
107 |
+
),
|
108 |
+
|
109 |
+
array( 'name' => 'date-modified',
|
110 |
+
'label' => __( 'The last modified date', 'master-slider' ),
|
111 |
+
'type' => '_general',
|
112 |
+
'callback' => ''
|
113 |
+
),
|
114 |
+
|
115 |
+
array( 'name' => 'commentnum',
|
116 |
+
'label' => __( 'Number of comments', 'master-slider' ),
|
117 |
+
'type' => '_general',
|
118 |
+
'callback' => ''
|
119 |
+
)
|
120 |
+
);
|
121 |
+
|
122 |
+
return apply_filters( 'masterslider_post_slider_tags_list', $tags );
|
123 |
}
|
124 |
|
125 |
|
126 |
|
127 |
function msp_get_woocommerce_template_tags() {
|
128 |
|
129 |
+
$tags = array(
|
130 |
+
|
131 |
+
array( 'name' => 'wc_price',
|
132 |
+
'label' => __( 'Price', 'master-slider' ),
|
133 |
+
'type' => 'product',
|
134 |
+
'callback' => ''
|
135 |
+
),
|
136 |
+
|
137 |
+
array( 'name' => 'wc_regular_price',
|
138 |
+
'label' => __( 'Regular Price', 'master-slider' ),
|
139 |
+
'type' => 'product',
|
140 |
+
'callback' => ''
|
141 |
+
),
|
142 |
+
|
143 |
+
array( 'name' => 'wc_sale_price',
|
144 |
+
'label' => __( 'Sale Price', 'master-slider' ),
|
145 |
+
'type' => 'product',
|
146 |
+
'callback' => ''
|
147 |
+
),
|
148 |
+
|
149 |
+
array( 'name' => 'wc_stock_status',
|
150 |
+
'label' => __( 'In Stock Status', 'master-slider' ),
|
151 |
+
'type' => 'product',
|
152 |
+
'callback' => ''
|
153 |
+
),
|
154 |
+
|
155 |
+
array( 'name' => 'wc_stock_quantity',
|
156 |
+
'label' => __( 'Stock Quantity', 'master-slider' ),
|
157 |
+
'type' => 'product',
|
158 |
+
'callback' => ''
|
159 |
+
),
|
160 |
+
|
161 |
+
array( 'name' => 'wc_weight',
|
162 |
+
'label' => __( 'Weight', 'master-slider' ),
|
163 |
+
'type' => 'product',
|
164 |
+
'callback' => ''
|
165 |
+
),
|
166 |
+
|
167 |
+
array( 'name' => 'wc_product_cats',
|
168 |
+
'label' => __( 'Product Categories', 'master-slider' ),
|
169 |
+
'type' => 'product',
|
170 |
+
'callback' => ''
|
171 |
+
),
|
172 |
+
|
173 |
+
array( 'name' => 'wc_product_tags',
|
174 |
+
'label' => __( 'Product Tags', 'master-slider' ),
|
175 |
+
'type' => 'product',
|
176 |
+
'callback' => ''
|
177 |
+
),
|
178 |
+
|
179 |
+
array( 'name' => 'wc_total_sales',
|
180 |
+
'label' => __( 'Total Sales', 'master-slider' ),
|
181 |
+
'type' => 'product',
|
182 |
+
'callback' => ''
|
183 |
+
),
|
184 |
+
|
185 |
+
array( 'name' => 'wc_average_rating',
|
186 |
+
'label' => __( 'Average Rating', 'master-slider' ),
|
187 |
+
'type' => 'product',
|
188 |
+
'callback' => ''
|
189 |
+
),
|
190 |
+
|
191 |
+
array( 'name' => 'wc_rating_count',
|
192 |
+
'label' => __( 'Rating Count', 'master-slider' ),
|
193 |
+
'type' => 'product',
|
194 |
+
'callback' => ''
|
195 |
+
)
|
196 |
+
);
|
197 |
+
|
198 |
+
return apply_filters( 'masterslider_woocommerce_product_slider_tags_list', $tags );
|
199 |
}
|
200 |
|
201 |
|
202 |
|
203 |
function get_post_template_tags_value( $post = null, $args = null ){
|
204 |
+
$post = get_post( $post );
|
205 |
|
206 |
+
$template_tags = msp_get_general_post_template_tags();
|
207 |
|
208 |
+
if ( msp_is_plugin_active( 'woocommerce/woocommerce.php' ) )
|
209 |
+
$template_tags = array_merge( $template_tags, msp_get_woocommerce_template_tags() );
|
210 |
+
|
211 |
+
$tags_dictionary = array();
|
212 |
|
213 |
+
foreach ( $template_tags as $template_tag ) {
|
214 |
+
$tags_dictionary[ $template_tag['name'] ] = msp_get_template_tag_value( $template_tag['name'], $post, $args );
|
215 |
+
}
|
216 |
|
217 |
+
return $tags_dictionary;
|
218 |
}
|
master-slider.php
CHANGED
@@ -11,13 +11,13 @@
|
|
11 |
* Plugin Name: Master Slider
|
12 |
* Plugin URI: https://wordpress.org/plugins/master-slider/
|
13 |
* Description: Master Slider is the most advanced responsive HTML5 WordPress slider plugin with touch swipe navigation that works smoothly on devices too.
|
14 |
-
* Version: 2.
|
15 |
* Author: averta
|
16 |
* Author URI: http://averta.net
|
17 |
* Text Domain: master-slider
|
18 |
* License URI: license.txt
|
19 |
* Domain Path: /languages
|
20 |
-
* Tested up to: 4.
|
21 |
*/
|
22 |
|
23 |
// If this file is called directly, abort.
|
11 |
* Plugin Name: Master Slider
|
12 |
* Plugin URI: https://wordpress.org/plugins/master-slider/
|
13 |
* Description: Master Slider is the most advanced responsive HTML5 WordPress slider plugin with touch swipe navigation that works smoothly on devices too.
|
14 |
+
* Version: 2.7.0
|
15 |
* Author: averta
|
16 |
* Author URI: http://averta.net
|
17 |
* Text Domain: master-slider
|
18 |
* License URI: license.txt
|
19 |
* Domain Path: /languages
|
20 |
+
* Tested up to: 4.3.1
|
21 |
*/
|
22 |
|
23 |
// If this file is called directly, abort.
|
public/assets/css/masterslider.main.css
CHANGED
@@ -1,2502 +1,2503 @@
|
|
1 |
-
/*!
|
2 |
* Master Slider WordPress Lite Main CSS File
|
3 |
* @date Jun 2015
|
4 |
*/
|
5 |
|
6 |
|
7 |
|
8 |
-
/**
|
9 |
-
* Master Slider
|
10 |
-
* Main css file
|
11 |
-
*/
|
12 |
-
|
13 |
-
.master-slider{
|
14 |
-
position: relative;
|
15 |
-
visibility: hidden;
|
16 |
-
-moz-transform: translate3d(0 , 0 , 0);
|
17 |
-
}
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
.ms-ie img{border:none;}
|
22 |
-
.ms-ie8 * {opacity:inherit;filter:inherit;}
|
23 |
-
.ms-ie7 {zoom:1;}
|
24 |
-
|
25 |
-
.ms-moz .ms-slide-bgcont>img { transform: translateX(0px); }
|
26 |
-
|
27 |
-
.master-slider a,
|
28 |
-
.master-slider a:hover {
|
29 |
-
-webkit-transition: none;
|
30 |
-
-o-transition: none;
|
31 |
-
transition: none;
|
32 |
-
}
|
33 |
-
|
34 |
-
.wpb_row .master-slider-parent *,
|
35 |
-
.master-slider-parent * {
|
36 |
-
-webkit-box-sizing: content-box;
|
37 |
-
-moz-box-sizing: content-box;
|
38 |
-
box-sizing: content-box;
|
39 |
-
}
|
40 |
-
|
41 |
-
.master-slider-parent {
|
42 |
-
margin-left: auto;
|
43 |
-
margin-right: auto;
|
44 |
-
}
|
45 |
-
|
46 |
-
.ms-layout-partialview .ms-view {
|
47 |
-
overflow: visible;
|
48 |
-
background-color:transparent;
|
49 |
-
}
|
50 |
-
|
51 |
-
.ms-layout-partialview .ms-container { overflow: hidden; }
|
52 |
-
|
53 |
-
.master-slider.before-init{}
|
54 |
-
|
55 |
-
.ms-loading-container{
|
56 |
-
position:absolute;
|
57 |
-
width:100%;
|
58 |
-
top:0;
|
59 |
-
}
|
60 |
-
|
61 |
-
.ms-loading-container .ms-loading,
|
62 |
-
.ms-slide .ms-slide-loading {
|
63 |
-
width: 36px;
|
64 |
-
height: 36px;
|
65 |
-
background: url(common/loading-2.gif) no-repeat center white;
|
66 |
-
border-radius: 60px;
|
67 |
-
box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
|
68 |
-
position: absolute;
|
69 |
-
left: 50%;
|
70 |
-
top: 50%;
|
71 |
-
margin: -18px;
|
72 |
-
opacity: 0.9;
|
73 |
-
}
|
74 |
-
|
75 |
-
|
76 |
-
/* grab cursor */
|
77 |
-
.ms-def-cursor{cursor:auto !important;}
|
78 |
-
.ms-grab-cursor{cursor: url(common/grab.png), move;}
|
79 |
-
.ms-grabbing-cursor{cursor: url(common/grabbing.png), move;}
|
80 |
-
.ms-ie .ms-grab-cursor{cursor: move;}
|
81 |
-
.ms-ie .ms-grabbing-cursor {cursor: move;}
|
82 |
-
|
83 |
-
.ms-view {
|
84 |
-
margin:0px auto;
|
85 |
-
overflow:hidden;
|
86 |
-
|
87 |
-
position:relative;
|
88 |
-
-webkit-perspective: 2000px;
|
89 |
-
-moz-perspective: 2000px;
|
90 |
-
-ms-perspective: 2000px;
|
91 |
-
perspective: 2000px;
|
92 |
-
}
|
93 |
-
|
94 |
-
.ms-view .ms-slide-container{position:relative;}
|
95 |
-
|
96 |
-
.ms-slide {
|
97 |
-
position:absolute;
|
98 |
-
height:100%;
|
99 |
-
-webkit-transform: translateZ(0px);
|
100 |
-
-ms-transform: translateZ(0px);
|
101 |
-
-o-transform: translateZ(0px);
|
102 |
-
transform: translateZ(0px);
|
103 |
-
}
|
104 |
-
|
105 |
-
.ms-wk .ms-slide {
|
106 |
-
-webkit-transform-style: preserve-3d;
|
107 |
-
transform-style: preserve-3d;
|
108 |
-
}
|
109 |
-
|
110 |
-
.ms-slide.selected {}
|
111 |
-
|
112 |
-
.ms-slide .ms-slide-bgcont,
|
113 |
-
.ms-slide .ms-slide-bgvideocont{
|
114 |
-
position: absolute;
|
115 |
-
overflow:hidden;
|
116 |
-
width: 100%;
|
117 |
-
}
|
118 |
-
|
119 |
-
.ms-slide .ms-slide-link {
|
120 |
-
display: block;
|
121 |
-
width: 100%;
|
122 |
-
height: 100%;
|
123 |
-
position: absolute;
|
124 |
-
top:0;
|
125 |
-
z-index: 110;
|
126 |
-
}
|
127 |
-
|
128 |
-
.ms-ie .ms-slide-link {
|
129 |
-
background: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7") 0 0 repeat;
|
130 |
-
}
|
131 |
-
|
132 |
-
|
133 |
-
.ms-slide .ms-slide-bgvideocont{
|
134 |
-
z-index: 105;
|
135 |
-
height: 100%;
|
136 |
-
}
|
137 |
-
|
138 |
-
.ms-wk .ms-slide .ms-slide-bgvideocont,
|
139 |
-
.ms-wk .ms-slide-bgvideocont>video{
|
140 |
-
-webkit-transform: translateZ(0.3px);
|
141 |
-
transform: translateZ(0.3px);
|
142 |
-
}
|
143 |
-
|
144 |
-
.ms-slide .ms-slide-bgvideo{
|
145 |
-
position: absolute;
|
146 |
-
top: 0px;
|
147 |
-
}
|
148 |
-
|
149 |
-
|
150 |
-
.ms-inner-controls-cont, .ms-container {position: relative; margin:0 auto;}
|
151 |
-
.ms-slide .ms-slide-bgcont img , .ms-container , .ms-inner-controls-cont{
|
152 |
-
-webkit-user-select:none;
|
153 |
-
-moz-user-select:none;
|
154 |
-
-ms-user-select:none;
|
155 |
-
user-select:none;
|
156 |
-
}
|
157 |
-
|
158 |
-
.ms-slide .ms-slide-video{
|
159 |
-
position:absolute;
|
160 |
-
top:0;
|
161 |
-
z-index: 111;
|
162 |
-
background:black;
|
163 |
-
padding:0;
|
164 |
-
margin: 0;
|
165 |
-
border: none;
|
166 |
-
|
167 |
-
}
|
168 |
-
|
169 |
-
|
170 |
-
.ms-slide .ms-pattern{
|
171 |
-
background-attachment: scroll;
|
172 |
-
width: 100%;
|
173 |
-
height: 100%;
|
174 |
-
z-index: 108;
|
175 |
-
position: absolute;
|
176 |
-
top: 0;
|
177 |
-
}
|
178 |
-
|
179 |
-
.ms-wk .ms-pattern{
|
180 |
-
-webkit-transform: translateZ(0.4px);
|
181 |
-
transform: translateZ(0.4px);
|
182 |
-
}
|
183 |
-
|
184 |
-
.ms-slide .ms-slide-vpbtn , .ms-slide .ms-video-btn{
|
185 |
-
position:absolute;
|
186 |
-
cursor: pointer;
|
187 |
-
z-index: 110;
|
188 |
-
}
|
189 |
-
|
190 |
-
.ms-slide .ms-slide-vcbtn{
|
191 |
-
position:absolute;
|
192 |
-
cursor: pointer;
|
193 |
-
z-index: 113;
|
194 |
-
}
|
195 |
-
|
196 |
-
.ms-slide-vcbtn-mobile{
|
197 |
-
position: relative;
|
198 |
-
bottom: 0;
|
199 |
-
left:0;
|
200 |
-
width:100%;
|
201 |
-
height: 28px;
|
202 |
-
background-color: black;
|
203 |
-
color: white;
|
204 |
-
text-align: center;
|
205 |
-
cursor: pointer;
|
206 |
-
z-index: 113;
|
207 |
-
}
|
208 |
-
|
209 |
-
.ms-slide-vcbtn-mobile .ms-vcbtn-txt {
|
210 |
-
text-transform: uppercase;
|
211 |
-
font-family: sans-serif;
|
212 |
-
font-size: 0.75em;
|
213 |
-
display: inline-block;
|
214 |
-
background: url(common/video-close-btn.png) no-repeat 0px 3px;
|
215 |
-
padding-left: 15px;
|
216 |
-
height: 15px;
|
217 |
-
color: #DBDBDB;
|
218 |
-
margin-top: 7px;
|
219 |
-
}
|
220 |
-
|
221 |
-
.ms-wk .ms-slide .ms-slide-vcbtn,
|
222 |
-
.ms-wk .ms-slide .ms-slide-layers,
|
223 |
-
.ms-wk .ms-slide .ms-slide-vpbtn,
|
224 |
-
.ms-wk .ms-slide .ms-slide-video,
|
225 |
-
.ms-wk .ms-slide-link {
|
226 |
-
-webkit-transform: translateZ(0.44px);
|
227 |
-
transform: translateZ(0.44px);
|
228 |
-
}
|
229 |
-
|
230 |
-
.ms-video-img{
|
231 |
-
position:absolute;
|
232 |
-
width:100%;
|
233 |
-
height:100%;
|
234 |
-
top:0;
|
235 |
-
left:0;
|
236 |
-
}
|
237 |
-
|
238 |
-
.ms-mask-frame{
|
239 |
-
overflow:hidden;
|
240 |
-
position:absolute;
|
241 |
-
float:left;
|
242 |
-
}
|
243 |
-
|
244 |
-
/* controls */
|
245 |
-
|
246 |
-
.ms-thumb-list{
|
247 |
-
overflow:hidden;
|
248 |
-
position:absolute;
|
249 |
-
}
|
250 |
-
|
251 |
-
.ms-thumb-list.ms-dir-h {width: 100%;}
|
252 |
-
.ms-thumb-list.ms-dir-v {height: 100%; top: 0;}
|
253 |
-
.ms-thumbs-cont{position: relative;}
|
254 |
-
.ms-thumb-frame img{width:100%; height:auto;}
|
255 |
-
.ms-thumb-frame{
|
256 |
-
cursor: pointer;
|
257 |
-
float: left;
|
258 |
-
overflow: hidden;
|
259 |
-
opacity: 0.5;
|
260 |
-
-webkit-transition: opacity 300ms;
|
261 |
-
-moz-transition: opacity 300ms;
|
262 |
-
-ms-transition: opacity 300ms;
|
263 |
-
-o-transition: opacity 300ms;
|
264 |
-
transition: opacity 300ms;
|
265 |
-
}
|
266 |
-
.ms-thumb-frame-selected{ opacity: 1; }
|
267 |
-
|
268 |
-
.ms-tabs .ms-thumb-frame {
|
269 |
-
background-color: #F6f6f6;
|
270 |
-
text-shadow: 0 1px 1px white;
|
271 |
-
color: #222;
|
272 |
-
border: solid 1px white;
|
273 |
-
border-width: 0 1px 1px 0;
|
274 |
-
overflow: visible;
|
275 |
-
position: relative;
|
276 |
-
opacity: 1;
|
277 |
-
-webkit-transition: all 300ms ease-out;
|
278 |
-
-moz-transition: all 300ms ease-out;
|
279 |
-
-ms-transition: all 300ms ease-out;
|
280 |
-
-o-transition: all 300ms ease-out;
|
281 |
-
transition: all 300ms ease-out;
|
282 |
-
}
|
283 |
-
|
284 |
-
.ms-tabs.ms-has-thumb .ms-tab-thumb{ width:auto; }
|
285 |
-
.ms-tabs.ms-dir-h .ms-thumb-frame {margin-top: 12px;}
|
286 |
-
.ms-tabs.ms-dir-v .ms-thumb-frame {margin-left: 12px;}
|
287 |
-
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame {margin-left: 0px;}
|
288 |
-
.ms-tabs.ms-dir-h.ms-align-top {z-index: 140;}
|
289 |
-
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame{margin-top: -12px;}
|
290 |
-
.ms-tabs .ms-thumb{padding: 20px 20px;}
|
291 |
-
.ms-tabs .ms-thumb-frame-selected { opacity: 1; background: #EDEDED;}
|
292 |
-
.ms-tabs .ms-thumb-frame .ms-thumb-ol {
|
293 |
-
position: absolute;
|
294 |
-
opacity: 0;
|
295 |
-
-webkit-transition: all 300ms ease-out;
|
296 |
-
-moz-transition: all 300ms ease-out;
|
297 |
-
-ms-transition: all 300ms ease-out;
|
298 |
-
-o-transition: all 300ms ease-out;
|
299 |
-
transition: all 300ms ease-out;
|
300 |
-
}
|
301 |
-
|
302 |
-
.ms-tabs.ms-dir-h .ms-thumb-frame .ms-thumb-ol {
|
303 |
-
top: 0px;
|
304 |
-
left: 50%;
|
305 |
-
margin-left: -12px;
|
306 |
-
border-bottom: solid 12px #F6f6f6;
|
307 |
-
border-left: solid 12px transparent;
|
308 |
-
border-right: solid 12px transparent;
|
309 |
-
}
|
310 |
-
|
311 |
-
.ms-tabs.ms-dir-h.ms-align-bottom .ms-thumb-frame-selected .ms-thumb-ol{
|
312 |
-
opacity: 1;
|
313 |
-
top:-12px;
|
314 |
-
border-bottom-color: #EDEDED;
|
315 |
-
}
|
316 |
-
|
317 |
-
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame .ms-thumb-ol {
|
318 |
-
bottom: 0px;
|
319 |
-
top:auto;
|
320 |
-
border-bottom:0px;
|
321 |
-
border-top: solid 12px #F6f6f6;
|
322 |
-
}
|
323 |
-
|
324 |
-
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame-selected .ms-thumb-ol{
|
325 |
-
opacity: 1;
|
326 |
-
bottom:-12px;
|
327 |
-
border-top-color: #EDEDED;
|
328 |
-
}
|
329 |
-
|
330 |
-
.ms-tabs.ms-dir-v .ms-thumb-frame .ms-thumb-ol {
|
331 |
-
top: 50%;
|
332 |
-
left: 0;
|
333 |
-
margin-top: -12px;
|
334 |
-
border-right: solid 12px #EDEDED;
|
335 |
-
border-top: solid 12px transparent;
|
336 |
-
border-bottom: solid 12px transparent;
|
337 |
-
}
|
338 |
-
|
339 |
-
.ms-tabs.ms-dir-v.ms-align-right .ms-thumb-frame-selected .ms-thumb-ol{
|
340 |
-
opacity: 1;
|
341 |
-
left:-12px;
|
342 |
-
border-right-color:#EDEDED;
|
343 |
-
}
|
344 |
-
|
345 |
-
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame .ms-thumb-ol {
|
346 |
-
left: auto;
|
347 |
-
right: 0;
|
348 |
-
border-right: 0;
|
349 |
-
border-left: solid 12px #EDEDED;
|
350 |
-
}
|
351 |
-
|
352 |
-
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame-selected .ms-thumb-ol{
|
353 |
-
opacity: 1;
|
354 |
-
right:-12px;
|
355 |
-
border-left-color:#EDEDED;
|
356 |
-
}
|
357 |
-
|
358 |
-
.ms-thumb-alt {
|
359 |
-
text-align: center;
|
360 |
-
margin: 5px;
|
361 |
-
font-size: 14px;
|
362 |
-
font-weight: 600;
|
363 |
-
}
|
364 |
-
|
365 |
-
/* horizontal thumblist arrows*/
|
366 |
-
.ms-thumb-list.ms-dir-h .ms-thumblist-fwd, .ms-thumb-list.ms-dir-h .ms-thumblist-bwd {
|
367 |
-
height: 100%;
|
368 |
-
width: 20px;
|
369 |
-
position: absolute;
|
370 |
-
left: 0;
|
371 |
-
cursor: pointer;
|
372 |
-
background: rgba(128, 128, 128, 0.5);
|
373 |
-
text-align: center;
|
374 |
-
color: white;
|
375 |
-
}
|
376 |
-
|
377 |
-
.ms-thumb-list.ms-dir-h .ms-thumblist-bwd {
|
378 |
-
right: 0;
|
379 |
-
left: auto;
|
380 |
-
}
|
381 |
-
|
382 |
-
.ms-thumb-list.ms-dir-h .ms-thumblist-fwd:after, .ms-thumb-list.ms-dir-h .ms-thumblist-bwd:after {
|
383 |
-
content: close-quote;
|
384 |
-
top: 43%;
|
385 |
-
position: relative;
|
386 |
-
border: solid rgba(0, 0, 0, 0);
|
387 |
-
border-width: 5px 5px 5px 0px;
|
388 |
-
display: block;
|
389 |
-
border-right-color: #FFF;
|
390 |
-
width: 6px;
|
391 |
-
height: 1px;
|
392 |
-
}
|
393 |
-
|
394 |
-
.ms-thumb-list.ms-dir-h .ms-thumblist-bwd:after {
|
395 |
-
border-width: 5px 0px 5px 5px;
|
396 |
-
border-left-color: #FFF;
|
397 |
-
left: 7px;
|
398 |
-
}
|
399 |
-
|
400 |
-
/* vertical thumblist arrows */
|
401 |
-
.ms-thumb-list.ms-dir-v .ms-thumblist-fwd, .ms-thumb-list.ms-dir-v .ms-thumblist-bwd {
|
402 |
-
width: 100%;
|
403 |
-
height: 20px;
|
404 |
-
position: absolute;
|
405 |
-
top: 0;
|
406 |
-
cursor: pointer;
|
407 |
-
background: rgba(128, 128, 128, 0.5);
|
408 |
-
text-align: center;
|
409 |
-
color: white;
|
410 |
-
}
|
411 |
-
|
412 |
-
.ms-thumb-list.ms-dir-v .ms-thumblist-bwd {
|
413 |
-
bottom: 0;
|
414 |
-
top: auto;
|
415 |
-
}
|
416 |
-
|
417 |
-
.ms-thumb-list.ms-dir-v .ms-thumblist-fwd:after, .ms-thumb-list.ms-dir-v .ms-thumblist-bwd:after {
|
418 |
-
content: close-quote;
|
419 |
-
left: 43%;
|
420 |
-
position: relative;
|
421 |
-
border: solid rgba(0, 0, 0, 0);
|
422 |
-
border-width: 0px 5px 5px 5px;
|
423 |
-
display: block;
|
424 |
-
border-bottom-color: #FFF;
|
425 |
-
height: 1px;
|
426 |
-
top: 5px;
|
427 |
-
width: 0;
|
428 |
-
}
|
429 |
-
|
430 |
-
.ms-thumb-list.ms-dir-v .ms-thumblist-bwd:after {
|
431 |
-
border-width: 5px 5px 0px 5px;
|
432 |
-
border-top-color: #FFF;
|
433 |
-
top: 7px;
|
434 |
-
}
|
435 |
-
|
436 |
-
/* Thumb in tab styles */
|
437 |
-
.ms-tabs.ms-dir-v.ms-has-thumb .ms-thumbs-cont{ top:0 !important; }
|
438 |
-
.ms-tabs.ms-has-thumb .ms-thumb-frame{ height: auto !important; }
|
439 |
-
.ms-tabs.ms-has-thumb .ms-thumb{ padding:0; }
|
440 |
-
.ms-tabs.ms-has-thumb .ms-tab-context{ padding:20px; }
|
441 |
-
.ms-tabs.ms-align-left .ms-tab-thumb{ float:left; margin-right:20px; }
|
442 |
-
.ms-tabs.ms-align-right .ms-tab-thumb{ float:right; margin-left: 20px; }
|
443 |
-
|
444 |
-
.ms-bullet{cursor:pointer;float: left;}
|
445 |
-
.ms-bullets.ms-dir-h {
|
446 |
-
position: absolute;
|
447 |
-
bottom: 20px;
|
448 |
-
right: 50%;
|
449 |
-
width: 100px;
|
450 |
-
}
|
451 |
-
|
452 |
-
.ms-bullets.ms-dir-v {
|
453 |
-
position: absolute;
|
454 |
-
top:50%;
|
455 |
-
}
|
456 |
-
|
457 |
-
.ms-bullets.ms-dir-v .ms-bullet{
|
458 |
-
float: none;
|
459 |
-
}
|
460 |
-
.ms-bullets.ms-dir-h .ms-bullets-count {
|
461 |
-
position: relative;
|
462 |
-
right: -50%;
|
463 |
-
}
|
464 |
-
|
465 |
-
.ms-sbar {position: absolute;}
|
466 |
-
.ms-sbar.ms-dir-h {
|
467 |
-
left: 10px;
|
468 |
-
right: 10px;
|
469 |
-
top: 5px
|
470 |
-
}
|
471 |
-
|
472 |
-
.ms-sbar.ms-dir-v {
|
473 |
-
top: 10px;
|
474 |
-
bottom: 10px;
|
475 |
-
right: 5px
|
476 |
-
}
|
477 |
-
|
478 |
-
.ms-sbar .ms-bar {
|
479 |
-
height: 4px;
|
480 |
-
background: #333;
|
481 |
-
border-radius: 4px;
|
482 |
-
}
|
483 |
-
|
484 |
-
.ms-sbar.ms-dir-v .ms-bar { width: 4px;}
|
485 |
-
|
486 |
-
.ms-sbar .ms-bar{
|
487 |
-
position:relative;
|
488 |
-
-webkit-transition: opacity 300ms;
|
489 |
-
-moz-transition: opacity 300ms;
|
490 |
-
-ms-transition: opacity 300ms;
|
491 |
-
-o-transition: opacity 300ms;
|
492 |
-
transition: opacity 300ms;
|
493 |
-
}
|
494 |
-
|
495 |
-
.ms-timerbar {
|
496 |
-
width: 100%;
|
497 |
-
bottom: 0px;
|
498 |
-
position: absolute;
|
499 |
-
}
|
500 |
-
|
501 |
-
.ms-ctimer {
|
502 |
-
position: absolute;
|
503 |
-
top: 30px;
|
504 |
-
left: 30px;
|
505 |
-
cursor: pointer;
|
506 |
-
}
|
507 |
-
|
508 |
-
.ms-ctimer-bullet {}
|
509 |
-
|
510 |
-
.ms-time-bar{
|
511 |
-
-webkit-transition: width 120ms linear;
|
512 |
-
-moz-transition: width 120ms linear;
|
513 |
-
-ms-transition: width 120ms linear;
|
514 |
-
-o-transition: width 120ms linear;
|
515 |
-
transition: width 120ms linear;
|
516 |
-
}
|
517 |
-
|
518 |
-
.ms-ie7 .ms-tooltip-arrow{
|
519 |
-
height:0px;
|
520 |
-
}
|
521 |
-
|
522 |
-
.ms-slide-info {position: absolute;}
|
523 |
-
.ms-slide-info.ms-dir-v {top:0;}
|
524 |
-
.ms-slide-info.ms-dir-h {width:100%;}
|
525 |
-
|
526 |
-
|
527 |
-
.ms-pattern.ms-patt-
|
528 |
-
.ms-pattern.ms-patt-
|
529 |
-
.ms-pattern.ms-patt-
|
530 |
-
.ms-pattern.ms-patt-
|
531 |
-
.ms-pattern.ms-patt-
|
532 |
-
.ms-pattern.ms-patt-
|
533 |
-
.ms-pattern.ms-patt-
|
534 |
-
.ms-pattern.ms-patt-
|
535 |
-
.ms-pattern.ms-patt-
|
536 |
-
.ms-pattern.ms-patt-
|
537 |
-
.ms-pattern.ms-patt-
|
538 |
-
.ms-pattern.ms-patt-
|
539 |
-
.ms-pattern.ms-patt-
|
540 |
-
.ms-pattern.ms-patt-
|
541 |
-
|
542 |
-
|
543 |
-
.ms-pattern.ms-patt-
|
544 |
-
.ms-pattern.ms-patt-
|
545 |
-
.ms-pattern.ms-patt-
|
546 |
-
.ms-pattern.ms-patt-
|
547 |
-
.ms-pattern.ms-patt-
|
548 |
-
.ms-pattern.ms-patt-
|
549 |
-
.ms-pattern.ms-patt-
|
550 |
-
.ms-pattern.ms-patt-
|
551 |
-
.ms-pattern.ms-patt-
|
552 |
-
.ms-pattern.ms-patt-
|
553 |
-
.ms-pattern.ms-patt-
|
554 |
-
.ms-pattern.ms-patt-
|
555 |
-
.ms-pattern.ms-patt-
|
556 |
-
.ms-pattern.ms-patt-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
*
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
.ms-skin-default .ms-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
.ms-skin-default .ms-nav-
|
587 |
-
|
588 |
-
|
589 |
-
background
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
.ms-skin-default .ms-tooltip-
|
626 |
-
|
627 |
-
border-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
border-top
|
636 |
-
border-top-color:
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
border-bottom
|
643 |
-
border-bottom-color:
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
.ms-skin-default .ms-tooltip-
|
649 |
-
|
650 |
-
border-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
border-right
|
659 |
-
border-right-color:
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
border-left
|
666 |
-
border-left-color:
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
.ms-skin-default .ms-tooltip-point
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
border:
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
background:
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
-
|
694 |
-
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
background:
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
only screen and (
|
713 |
-
only screen and (
|
714 |
-
only screen and (
|
715 |
-
only screen and (
|
716 |
-
only screen and ( min-resolution:
|
717 |
-
|
718 |
-
|
719 |
-
.ms-skin-default .ms-
|
720 |
-
.ms-skin-default .ms-
|
721 |
-
.ms-skin-default .ms-
|
722 |
-
.ms-skin-default .ms-nav-
|
723 |
-
.ms-skin-default .ms-
|
724 |
-
|
725 |
-
background-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
*
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
.ms-skin-black-1 .ms-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
.ms-skin-black-1 .ms-nav-
|
758 |
-
|
759 |
-
|
760 |
-
background
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
.ms-skin-black-1 .ms-tooltip-
|
807 |
-
|
808 |
-
border-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
border-top
|
817 |
-
border-top-color:
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
border-bottom
|
824 |
-
border-bottom-color:
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
.ms-skin-black-1 .ms-tooltip-
|
830 |
-
|
831 |
-
border-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
border-right
|
840 |
-
border-right-color:
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
border-left
|
847 |
-
border-left-color:
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
.ms-skin-black-1 .ms-tooltip-point
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
border:
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
background:
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
-
|
875 |
-
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
background:
|
886 |
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
|
893 |
-
|
894 |
-
only screen and (
|
895 |
-
only screen and (
|
896 |
-
only screen and (
|
897 |
-
only screen and (
|
898 |
-
only screen and ( min-resolution:
|
899 |
-
|
900 |
-
|
901 |
-
.ms-skin-black-1 .ms-
|
902 |
-
.ms-skin-black-1 .ms-
|
903 |
-
.ms-skin-black-1 .ms-
|
904 |
-
.ms-skin-black-1 .ms-nav-
|
905 |
-
|
906 |
-
background-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
*
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
.ms-skin-black-2 .ms-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
border
|
924 |
-
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
.ms-skin-black-2 .ms-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
border
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
.ms-skin-black-2 .ms-nav-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
-
|
962 |
-
background-clip: padding-box;
|
963 |
-
background-
|
964 |
-
|
965 |
-
border
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
.ms-skin-black-2.round-skin .ms-nav-
|
973 |
-
.ms-skin-black-2.round-skin .ms-
|
974 |
-
.ms-skin-black-2.round-skin .ms-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
.ms-skin-black-2 .ms-nav-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
-
|
1007 |
-
-
|
1008 |
-
|
1009 |
-
border
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
border-color:
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
1030 |
-
|
1031 |
-
|
1032 |
-
.ms-skin-black-2 .ms-tooltip-
|
1033 |
-
|
1034 |
-
border-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
border-top
|
1043 |
-
border-top-color:
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
border-bottom
|
1050 |
-
border-bottom-color:
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
.ms-skin-black-2 .ms-tooltip-
|
1056 |
-
|
1057 |
-
border-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
border-right
|
1066 |
-
border-right-color:
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
border-left
|
1073 |
-
border-left-color:
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
.ms-skin-black-2 .ms-tooltip-point
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
border:
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
|
1089 |
-
|
1090 |
-
|
1091 |
-
|
1092 |
-
|
1093 |
-
background:
|
1094 |
-
|
1095 |
-
|
1096 |
-
|
1097 |
-
|
1098 |
-
|
1099 |
-
|
1100 |
-
-
|
1101 |
-
-
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
.ms-
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
|
1113 |
-
|
1114 |
-
|
1115 |
-
|
1116 |
-
background:
|
1117 |
-
|
1118 |
-
|
1119 |
-
|
1120 |
-
|
1121 |
-
|
1122 |
-
|
1123 |
-
|
1124 |
-
only screen and (
|
1125 |
-
only screen and (
|
1126 |
-
only screen and (
|
1127 |
-
only screen and (
|
1128 |
-
only screen and ( min-resolution:
|
1129 |
-
|
1130 |
-
|
1131 |
-
.ms-skin-black-2 .ms-
|
1132 |
-
.ms-skin-black-2 .ms-
|
1133 |
-
.ms-skin-black-2 .ms-
|
1134 |
-
.ms-skin-black-2 .ms-nav-
|
1135 |
-
|
1136 |
-
background-
|
1137 |
-
|
1138 |
-
|
1139 |
-
|
1140 |
-
|
1141 |
-
|
1142 |
-
|
1143 |
-
|
1144 |
-
*
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
.ms-skin-light-2 .ms-
|
1149 |
-
|
1150 |
-
|
1151 |
-
|
1152 |
-
|
1153 |
-
|
1154 |
-
|
1155 |
-
|
1156 |
-
|
1157 |
-
|
1158 |
-
|
1159 |
-
|
1160 |
-
|
1161 |
-
|
1162 |
-
|
1163 |
-
|
1164 |
-
|
1165 |
-
|
1166 |
-
|
1167 |
-
|
1168 |
-
.ms-skin-light-2 .ms-nav-
|
1169 |
-
|
1170 |
-
|
1171 |
-
background
|
1172 |
-
|
1173 |
-
|
1174 |
-
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
|
1179 |
-
|
1180 |
-
|
1181 |
-
|
1182 |
-
|
1183 |
-
|
1184 |
-
|
1185 |
-
|
1186 |
-
|
1187 |
-
|
1188 |
-
|
1189 |
-
|
1190 |
-
|
1191 |
-
|
1192 |
-
|
1193 |
-
|
1194 |
-
|
1195 |
-
|
1196 |
-
|
1197 |
-
|
1198 |
-
|
1199 |
-
|
1200 |
-
|
1201 |
-
|
1202 |
-
|
1203 |
-
|
1204 |
-
|
1205 |
-
|
1206 |
-
|
1207 |
-
|
1208 |
-
|
1209 |
-
|
1210 |
-
|
1211 |
-
|
1212 |
-
|
1213 |
-
|
1214 |
-
|
1215 |
-
|
1216 |
-
|
1217 |
-
.ms-skin-light-2 .ms-tooltip-
|
1218 |
-
|
1219 |
-
border-
|
1220 |
-
|
1221 |
-
|
1222 |
-
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
1226 |
-
|
1227 |
-
border-top
|
1228 |
-
border-top-color:
|
1229 |
-
|
1230 |
-
|
1231 |
-
|
1232 |
-
|
1233 |
-
|
1234 |
-
border-bottom
|
1235 |
-
border-bottom-color:
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
1239 |
-
|
1240 |
-
.ms-skin-light-2 .ms-tooltip-
|
1241 |
-
|
1242 |
-
border-
|
1243 |
-
|
1244 |
-
|
1245 |
-
|
1246 |
-
|
1247 |
-
|
1248 |
-
|
1249 |
-
|
1250 |
-
border-right
|
1251 |
-
border-right-color:
|
1252 |
-
|
1253 |
-
|
1254 |
-
|
1255 |
-
|
1256 |
-
|
1257 |
-
border-left
|
1258 |
-
border-left-color:
|
1259 |
-
|
1260 |
-
|
1261 |
-
|
1262 |
-
|
1263 |
-
.ms-skin-light-2 .ms-tooltip-point
|
1264 |
-
|
1265 |
-
|
1266 |
-
|
1267 |
-
border:
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
1273 |
-
|
1274 |
-
|
1275 |
-
|
1276 |
-
|
1277 |
-
|
1278 |
-
background:
|
1279 |
-
|
1280 |
-
|
1281 |
-
|
1282 |
-
|
1283 |
-
|
1284 |
-
|
1285 |
-
-
|
1286 |
-
-
|
1287 |
-
|
1288 |
-
|
1289 |
-
|
1290 |
-
|
1291 |
-
|
1292 |
-
|
1293 |
-
|
1294 |
-
|
1295 |
-
|
1296 |
-
background:
|
1297 |
-
|
1298 |
-
|
1299 |
-
|
1300 |
-
|
1301 |
-
|
1302 |
-
|
1303 |
-
|
1304 |
-
only screen and (
|
1305 |
-
only screen and (
|
1306 |
-
only screen and (
|
1307 |
-
only screen and (
|
1308 |
-
only screen and ( min-resolution:
|
1309 |
-
|
1310 |
-
|
1311 |
-
.ms-skin-light-2 .ms-
|
1312 |
-
.ms-skin-light-2 .ms-
|
1313 |
-
.ms-skin-light-2 .ms-
|
1314 |
-
.ms-skin-light-2 .ms-nav-
|
1315 |
-
|
1316 |
-
background-
|
1317 |
-
|
1318 |
-
|
1319 |
-
|
1320 |
-
|
1321 |
-
|
1322 |
-
|
1323 |
-
|
1324 |
-
|
1325 |
-
*
|
1326 |
-
|
1327 |
-
|
1328 |
-
|
1329 |
-
.ms-skin-light-3 .ms-
|
1330 |
-
|
1331 |
-
|
1332 |
-
|
1333 |
-
|
1334 |
-
|
1335 |
-
|
1336 |
-
|
1337 |
-
|
1338 |
-
|
1339 |
-
|
1340 |
-
|
1341 |
-
|
1342 |
-
|
1343 |
-
|
1344 |
-
|
1345 |
-
|
1346 |
-
|
1347 |
-
|
1348 |
-
|
1349 |
-
.ms-skin-light-3 .ms-nav-
|
1350 |
-
|
1351 |
-
|
1352 |
-
background
|
1353 |
-
|
1354 |
-
|
1355 |
-
|
1356 |
-
|
1357 |
-
|
1358 |
-
|
1359 |
-
|
1360 |
-
|
1361 |
-
|
1362 |
-
|
1363 |
-
|
1364 |
-
|
1365 |
-
|
1366 |
-
|
1367 |
-
|
1368 |
-
|
1369 |
-
|
1370 |
-
|
1371 |
-
|
1372 |
-
|
1373 |
-
|
1374 |
-
|
1375 |
-
|
1376 |
-
|
1377 |
-
|
1378 |
-
|
1379 |
-
|
1380 |
-
|
1381 |
-
|
1382 |
-
|
1383 |
-
background
|
1384 |
-
|
1385 |
-
|
1386 |
-
|
1387 |
-
|
1388 |
-
|
1389 |
-
|
1390 |
-
|
1391 |
-
|
1392 |
-
|
1393 |
-
|
1394 |
-
|
1395 |
-
|
1396 |
-
|
1397 |
-
|
1398 |
-
.ms-skin-light-3 .ms-tooltip-
|
1399 |
-
|
1400 |
-
border-
|
1401 |
-
|
1402 |
-
|
1403 |
-
|
1404 |
-
|
1405 |
-
|
1406 |
-
|
1407 |
-
|
1408 |
-
border-top
|
1409 |
-
border-top-color:
|
1410 |
-
|
1411 |
-
|
1412 |
-
|
1413 |
-
|
1414 |
-
|
1415 |
-
border-bottom
|
1416 |
-
border-bottom-color:
|
1417 |
-
|
1418 |
-
|
1419 |
-
|
1420 |
-
|
1421 |
-
.ms-skin-light-3 .ms-tooltip-
|
1422 |
-
|
1423 |
-
border-
|
1424 |
-
|
1425 |
-
|
1426 |
-
|
1427 |
-
|
1428 |
-
|
1429 |
-
|
1430 |
-
|
1431 |
-
border-right
|
1432 |
-
border-right-color:
|
1433 |
-
|
1434 |
-
|
1435 |
-
|
1436 |
-
|
1437 |
-
|
1438 |
-
border-left
|
1439 |
-
border-left-color:
|
1440 |
-
|
1441 |
-
|
1442 |
-
|
1443 |
-
|
1444 |
-
.ms-skin-light-3 .ms-tooltip-point
|
1445 |
-
|
1446 |
-
|
1447 |
-
|
1448 |
-
border:
|
1449 |
-
|
1450 |
-
|
1451 |
-
|
1452 |
-
|
1453 |
-
|
1454 |
-
|
1455 |
-
|
1456 |
-
|
1457 |
-
|
1458 |
-
|
1459 |
-
background:
|
1460 |
-
|
1461 |
-
|
1462 |
-
|
1463 |
-
|
1464 |
-
|
1465 |
-
|
1466 |
-
-
|
1467 |
-
-
|
1468 |
-
|
1469 |
-
|
1470 |
-
|
1471 |
-
|
1472 |
-
|
1473 |
-
|
1474 |
-
|
1475 |
-
|
1476 |
-
|
1477 |
-
background:
|
1478 |
-
|
1479 |
-
|
1480 |
-
|
1481 |
-
|
1482 |
-
|
1483 |
-
|
1484 |
-
|
1485 |
-
only screen and (
|
1486 |
-
only screen and (
|
1487 |
-
only screen and (
|
1488 |
-
only screen and (
|
1489 |
-
only screen and ( min-resolution:
|
1490 |
-
|
1491 |
-
|
1492 |
-
.ms-skin-light-3 .ms-
|
1493 |
-
.ms-skin-light-3 .ms-
|
1494 |
-
.ms-skin-light-3 .ms-
|
1495 |
-
.ms-skin-light-3 .ms-nav-
|
1496 |
-
.ms-skin-light-3 .ms-
|
1497 |
-
|
1498 |
-
background-
|
1499 |
-
|
1500 |
-
|
1501 |
-
|
1502 |
-
|
1503 |
-
|
1504 |
-
|
1505 |
-
|
1506 |
-
|
1507 |
-
*
|
1508 |
-
|
1509 |
-
|
1510 |
-
|
1511 |
-
.ms-skin-light-4 .ms-
|
1512 |
-
|
1513 |
-
|
1514 |
-
|
1515 |
-
|
1516 |
-
|
1517 |
-
|
1518 |
-
|
1519 |
-
|
1520 |
-
|
1521 |
-
|
1522 |
-
|
1523 |
-
|
1524 |
-
|
1525 |
-
|
1526 |
-
|
1527 |
-
|
1528 |
-
|
1529 |
-
|
1530 |
-
|
1531 |
-
.ms-skin-light-4 .ms-nav-
|
1532 |
-
|
1533 |
-
|
1534 |
-
background
|
1535 |
-
|
1536 |
-
|
1537 |
-
|
1538 |
-
|
1539 |
-
|
1540 |
-
|
1541 |
-
|
1542 |
-
|
1543 |
-
|
1544 |
-
|
1545 |
-
|
1546 |
-
|
1547 |
-
|
1548 |
-
|
1549 |
-
|
1550 |
-
|
1551 |
-
|
1552 |
-
|
1553 |
-
|
1554 |
-
|
1555 |
-
|
1556 |
-
|
1557 |
-
|
1558 |
-
|
1559 |
-
|
1560 |
-
|
1561 |
-
|
1562 |
-
|
1563 |
-
|
1564 |
-
|
1565 |
-
|
1566 |
-
|
1567 |
-
|
1568 |
-
|
1569 |
-
|
1570 |
-
|
1571 |
-
|
1572 |
-
|
1573 |
-
|
1574 |
-
|
1575 |
-
|
1576 |
-
|
1577 |
-
|
1578 |
-
|
1579 |
-
|
1580 |
-
|
1581 |
-
|
1582 |
-
|
1583 |
-
|
1584 |
-
|
1585 |
-
|
1586 |
-
|
1587 |
-
|
1588 |
-
|
1589 |
-
|
1590 |
-
|
1591 |
-
|
1592 |
-
|
1593 |
-
|
1594 |
-
|
1595 |
-
|
1596 |
-
|
1597 |
-
|
1598 |
-
|
1599 |
-
|
1600 |
-
|
1601 |
-
|
1602 |
-
|
1603 |
-
|
1604 |
-
|
1605 |
-
|
1606 |
-
.ms-skin-light-4 .ms-tooltip-
|
1607 |
-
|
1608 |
-
border-
|
1609 |
-
|
1610 |
-
|
1611 |
-
|
1612 |
-
|
1613 |
-
|
1614 |
-
|
1615 |
-
|
1616 |
-
border-top
|
1617 |
-
border-top-color:
|
1618 |
-
|
1619 |
-
|
1620 |
-
|
1621 |
-
|
1622 |
-
|
1623 |
-
border-bottom
|
1624 |
-
border-bottom-color:
|
1625 |
-
|
1626 |
-
|
1627 |
-
|
1628 |
-
|
1629 |
-
.ms-skin-light-4 .ms-tooltip-
|
1630 |
-
|
1631 |
-
border-
|
1632 |
-
|
1633 |
-
|
1634 |
-
|
1635 |
-
|
1636 |
-
|
1637 |
-
|
1638 |
-
|
1639 |
-
border-right
|
1640 |
-
border-right-color:
|
1641 |
-
|
1642 |
-
|
1643 |
-
|
1644 |
-
|
1645 |
-
|
1646 |
-
border-left
|
1647 |
-
border-left-color:
|
1648 |
-
|
1649 |
-
|
1650 |
-
|
1651 |
-
|
1652 |
-
.ms-skin-light-4 .ms-tooltip-point
|
1653 |
-
|
1654 |
-
|
1655 |
-
|
1656 |
-
border:
|
1657 |
-
|
1658 |
-
|
1659 |
-
|
1660 |
-
|
1661 |
-
|
1662 |
-
|
1663 |
-
|
1664 |
-
|
1665 |
-
|
1666 |
-
|
1667 |
-
|
1668 |
-
|
1669 |
-
|
1670 |
-
|
1671 |
-
|
1672 |
-
|
1673 |
-
-
|
1674 |
-
-
|
1675 |
-
|
1676 |
-
|
1677 |
-
|
1678 |
-
|
1679 |
-
|
1680 |
-
|
1681 |
-
|
1682 |
-
|
1683 |
-
|
1684 |
-
|
1685 |
-
background:
|
1686 |
-
|
1687 |
-
|
1688 |
-
|
1689 |
-
|
1690 |
-
|
1691 |
-
|
1692 |
-
|
1693 |
-
only screen and (
|
1694 |
-
only screen and (
|
1695 |
-
only screen and (
|
1696 |
-
only screen and (
|
1697 |
-
only screen and ( min-resolution:
|
1698 |
-
|
1699 |
-
|
1700 |
-
.ms-skin-light-4 .ms-
|
1701 |
-
.ms-skin-light-4 .ms-
|
1702 |
-
.ms-skin-light-4 .ms-
|
1703 |
-
.ms-skin-light-4 .ms-nav-
|
1704 |
-
|
1705 |
-
background-
|
1706 |
-
|
1707 |
-
|
1708 |
-
|
1709 |
-
|
1710 |
-
|
1711 |
-
|
1712 |
-
|
1713 |
-
|
1714 |
-
*
|
1715 |
-
|
1716 |
-
|
1717 |
-
|
1718 |
-
.ms-skin-light-5 .ms-
|
1719 |
-
|
1720 |
-
|
1721 |
-
|
1722 |
-
|
1723 |
-
|
1724 |
-
|
1725 |
-
|
1726 |
-
|
1727 |
-
|
1728 |
-
.ms-skin-light-5 .ms-
|
1729 |
-
|
1730 |
-
|
1731 |
-
|
1732 |
-
|
1733 |
-
|
1734 |
-
|
1735 |
-
|
1736 |
-
|
1737 |
-
|
1738 |
-
|
1739 |
-
|
1740 |
-
|
1741 |
-
|
1742 |
-
|
1743 |
-
.ms-skin-light-5 .ms-nav-
|
1744 |
-
|
1745 |
-
|
1746 |
-
background
|
1747 |
-
|
1748 |
-
|
1749 |
-
|
1750 |
-
|
1751 |
-
|
1752 |
-
|
1753 |
-
|
1754 |
-
|
1755 |
-
|
1756 |
-
|
1757 |
-
.ms-skin-light-5 .ms-nav-
|
1758 |
-
|
1759 |
-
|
1760 |
-
|
1761 |
-
|
1762 |
-
|
1763 |
-
|
1764 |
-
|
1765 |
-
|
1766 |
-
|
1767 |
-
|
1768 |
-
|
1769 |
-
|
1770 |
-
|
1771 |
-
|
1772 |
-
|
1773 |
-
|
1774 |
-
|
1775 |
-
|
1776 |
-
|
1777 |
-
|
1778 |
-
|
1779 |
-
|
1780 |
-
|
1781 |
-
|
1782 |
-
|
1783 |
-
|
1784 |
-
|
1785 |
-
|
1786 |
-
|
1787 |
-
|
1788 |
-
|
1789 |
-
|
1790 |
-
|
1791 |
-
|
1792 |
-
|
1793 |
-
|
1794 |
-
|
1795 |
-
|
1796 |
-
|
1797 |
-
.ms-skin-light-5 .ms-tooltip-
|
1798 |
-
|
1799 |
-
border-
|
1800 |
-
|
1801 |
-
|
1802 |
-
|
1803 |
-
|
1804 |
-
|
1805 |
-
|
1806 |
-
|
1807 |
-
border-top
|
1808 |
-
border-top-color:
|
1809 |
-
|
1810 |
-
|
1811 |
-
|
1812 |
-
|
1813 |
-
|
1814 |
-
border-bottom
|
1815 |
-
border-bottom-color:
|
1816 |
-
|
1817 |
-
|
1818 |
-
|
1819 |
-
|
1820 |
-
.ms-skin-light-5 .ms-tooltip-
|
1821 |
-
|
1822 |
-
border-
|
1823 |
-
|
1824 |
-
|
1825 |
-
|
1826 |
-
|
1827 |
-
|
1828 |
-
|
1829 |
-
|
1830 |
-
border-right
|
1831 |
-
border-right-color:
|
1832 |
-
|
1833 |
-
|
1834 |
-
|
1835 |
-
|
1836 |
-
|
1837 |
-
border-left
|
1838 |
-
border-left-color:
|
1839 |
-
|
1840 |
-
|
1841 |
-
|
1842 |
-
|
1843 |
-
.ms-skin-light-5 .ms-tooltip-point
|
1844 |
-
|
1845 |
-
|
1846 |
-
|
1847 |
-
border:
|
1848 |
-
|
1849 |
-
|
1850 |
-
|
1851 |
-
|
1852 |
-
|
1853 |
-
|
1854 |
-
|
1855 |
-
|
1856 |
-
|
1857 |
-
|
1858 |
-
background:
|
1859 |
-
|
1860 |
-
|
1861 |
-
|
1862 |
-
|
1863 |
-
|
1864 |
-
|
1865 |
-
-
|
1866 |
-
-
|
1867 |
-
|
1868 |
-
|
1869 |
-
|
1870 |
-
|
1871 |
-
|
1872 |
-
|
1873 |
-
-
|
1874 |
-
-
|
1875 |
-
|
1876 |
-
|
1877 |
-
|
1878 |
-
.ms-
|
1879 |
-
|
1880 |
-
|
1881 |
-
|
1882 |
-
|
1883 |
-
|
1884 |
-
|
1885 |
-
|
1886 |
-
|
1887 |
-
|
1888 |
-
|
1889 |
-
background:
|
1890 |
-
|
1891 |
-
|
1892 |
-
|
1893 |
-
|
1894 |
-
|
1895 |
-
|
1896 |
-
|
1897 |
-
only screen and (
|
1898 |
-
only screen and (
|
1899 |
-
only screen and (
|
1900 |
-
only screen and (
|
1901 |
-
only screen and ( min-resolution:
|
1902 |
-
|
1903 |
-
|
1904 |
-
.ms-skin-light-5 .ms-
|
1905 |
-
.ms-skin-light-5 .ms-
|
1906 |
-
.ms-skin-light-5 .ms-
|
1907 |
-
.ms-skin-light-5 .ms-nav-
|
1908 |
-
|
1909 |
-
background-
|
1910 |
-
|
1911 |
-
|
1912 |
-
|
1913 |
-
|
1914 |
-
|
1915 |
-
|
1916 |
-
|
1917 |
-
|
1918 |
-
*
|
1919 |
-
|
1920 |
-
|
1921 |
-
|
1922 |
-
.ms-skin-light-6 .ms-
|
1923 |
-
|
1924 |
-
|
1925 |
-
|
1926 |
-
|
1927 |
-
-
|
1928 |
-
|
1929 |
-
|
1930 |
-
|
1931 |
-
|
1932 |
-
|
1933 |
-
|
1934 |
-
.ms-skin-light-6 .ms-
|
1935 |
-
|
1936 |
-
|
1937 |
-
|
1938 |
-
|
1939 |
-
|
1940 |
-
|
1941 |
-
|
1942 |
-
|
1943 |
-
|
1944 |
-
|
1945 |
-
|
1946 |
-
|
1947 |
-
|
1948 |
-
|
1949 |
-
|
1950 |
-
|
1951 |
-
|
1952 |
-
|
1953 |
-
|
1954 |
-
.ms-skin-light-6 .ms-nav-
|
1955 |
-
|
1956 |
-
|
1957 |
-
|
1958 |
-
|
1959 |
-
|
1960 |
-
|
1961 |
-
|
1962 |
-
-
|
1963 |
-
background-clip: padding-box;
|
1964 |
-
background-
|
1965 |
-
|
1966 |
-
border
|
1967 |
-
|
1968 |
-
|
1969 |
-
|
1970 |
-
|
1971 |
-
|
1972 |
-
|
1973 |
-
.ms-skin-light-6.round-skin .ms-nav-
|
1974 |
-
.ms-skin-light-6.round-skin .ms-
|
1975 |
-
.ms-skin-light-6.round-skin .ms-
|
1976 |
-
|
1977 |
-
|
1978 |
-
|
1979 |
-
|
1980 |
-
.ms-skin-light-6 .ms-nav-
|
1981 |
-
|
1982 |
-
|
1983 |
-
|
1984 |
-
|
1985 |
-
|
1986 |
-
|
1987 |
-
|
1988 |
-
|
1989 |
-
|
1990 |
-
|
1991 |
-
|
1992 |
-
|
1993 |
-
|
1994 |
-
|
1995 |
-
|
1996 |
-
|
1997 |
-
|
1998 |
-
|
1999 |
-
|
2000 |
-
|
2001 |
-
|
2002 |
-
|
2003 |
-
|
2004 |
-
|
2005 |
-
|
2006 |
-
|
2007 |
-
|
2008 |
-
|
2009 |
-
border
|
2010 |
-
|
2011 |
-
|
2012 |
-
|
2013 |
-
|
2014 |
-
|
2015 |
-
|
2016 |
-
|
2017 |
-
|
2018 |
-
|
2019 |
-
|
2020 |
-
|
2021 |
-
border-color:
|
2022 |
-
|
2023 |
-
|
2024 |
-
|
2025 |
-
|
2026 |
-
|
2027 |
-
|
2028 |
-
|
2029 |
-
|
2030 |
-
|
2031 |
-
.ms-skin-light-6 .ms-tooltip-
|
2032 |
-
|
2033 |
-
border-
|
2034 |
-
|
2035 |
-
|
2036 |
-
|
2037 |
-
|
2038 |
-
|
2039 |
-
|
2040 |
-
|
2041 |
-
border-top
|
2042 |
-
border-top-color:
|
2043 |
-
|
2044 |
-
|
2045 |
-
|
2046 |
-
|
2047 |
-
|
2048 |
-
border-bottom
|
2049 |
-
border-bottom-color:
|
2050 |
-
|
2051 |
-
|
2052 |
-
|
2053 |
-
|
2054 |
-
.ms-skin-light-6 .ms-tooltip-
|
2055 |
-
|
2056 |
-
border-
|
2057 |
-
|
2058 |
-
|
2059 |
-
|
2060 |
-
|
2061 |
-
|
2062 |
-
|
2063 |
-
|
2064 |
-
border-right
|
2065 |
-
border-right-color:
|
2066 |
-
|
2067 |
-
|
2068 |
-
|
2069 |
-
|
2070 |
-
|
2071 |
-
border-left
|
2072 |
-
border-left-color:
|
2073 |
-
|
2074 |
-
|
2075 |
-
|
2076 |
-
|
2077 |
-
.ms-skin-light-6 .ms-tooltip-point
|
2078 |
-
|
2079 |
-
|
2080 |
-
|
2081 |
-
border:
|
2082 |
-
|
2083 |
-
|
2084 |
-
|
2085 |
-
|
2086 |
-
|
2087 |
-
|
2088 |
-
|
2089 |
-
|
2090 |
-
|
2091 |
-
|
2092 |
-
background:
|
2093 |
-
|
2094 |
-
|
2095 |
-
|
2096 |
-
|
2097 |
-
|
2098 |
-
|
2099 |
-
-
|
2100 |
-
-
|
2101 |
-
|
2102 |
-
|
2103 |
-
|
2104 |
-
.ms-
|
2105 |
-
|
2106 |
-
|
2107 |
-
|
2108 |
-
|
2109 |
-
|
2110 |
-
|
2111 |
-
|
2112 |
-
|
2113 |
-
|
2114 |
-
|
2115 |
-
background:
|
2116 |
-
|
2117 |
-
|
2118 |
-
|
2119 |
-
|
2120 |
-
|
2121 |
-
|
2122 |
-
|
2123 |
-
only screen and (
|
2124 |
-
only screen and (
|
2125 |
-
only screen and (
|
2126 |
-
only screen and (
|
2127 |
-
only screen and ( min-resolution:
|
2128 |
-
|
2129 |
-
|
2130 |
-
.ms-skin-light-6 .ms-
|
2131 |
-
.ms-skin-light-6 .ms-
|
2132 |
-
.ms-skin-light-6 .ms-
|
2133 |
-
.ms-skin-light-6 .ms-nav-
|
2134 |
-
|
2135 |
-
background-
|
2136 |
-
|
2137 |
-
|
2138 |
-
|
2139 |
-
|
2140 |
-
|
2141 |
-
|
2142 |
-
|
2143 |
-
|
2144 |
-
*
|
2145 |
-
|
2146 |
-
|
2147 |
-
|
2148 |
-
.ms-skin-metro .ms-
|
2149 |
-
|
2150 |
-
|
2151 |
-
|
2152 |
-
|
2153 |
-
|
2154 |
-
|
2155 |
-
|
2156 |
-
|
2157 |
-
|
2158 |
-
|
2159 |
-
|
2160 |
-
|
2161 |
-
|
2162 |
-
|
2163 |
-
|
2164 |
-
|
2165 |
-
|
2166 |
-
|
2167 |
-
|
2168 |
-
.ms-skin-metro .ms-nav-
|
2169 |
-
|
2170 |
-
|
2171 |
-
background
|
2172 |
-
|
2173 |
-
|
2174 |
-
|
2175 |
-
|
2176 |
-
|
2177 |
-
|
2178 |
-
|
2179 |
-
|
2180 |
-
|
2181 |
-
|
2182 |
-
|
2183 |
-
|
2184 |
-
|
2185 |
-
|
2186 |
-
|
2187 |
-
|
2188 |
-
|
2189 |
-
|
2190 |
-
|
2191 |
-
|
2192 |
-
|
2193 |
-
|
2194 |
-
|
2195 |
-
|
2196 |
-
|
2197 |
-
|
2198 |
-
|
2199 |
-
|
2200 |
-
|
2201 |
-
|
2202 |
-
background
|
2203 |
-
|
2204 |
-
|
2205 |
-
|
2206 |
-
|
2207 |
-
|
2208 |
-
|
2209 |
-
|
2210 |
-
|
2211 |
-
|
2212 |
-
|
2213 |
-
|
2214 |
-
|
2215 |
-
|
2216 |
-
|
2217 |
-
.ms-skin-metro .ms-tooltip-
|
2218 |
-
|
2219 |
-
border-
|
2220 |
-
|
2221 |
-
|
2222 |
-
|
2223 |
-
|
2224 |
-
|
2225 |
-
|
2226 |
-
|
2227 |
-
border-top
|
2228 |
-
border-top-color:
|
2229 |
-
|
2230 |
-
|
2231 |
-
|
2232 |
-
|
2233 |
-
|
2234 |
-
border-bottom
|
2235 |
-
border-bottom-color:
|
2236 |
-
|
2237 |
-
|
2238 |
-
|
2239 |
-
|
2240 |
-
.ms-skin-metro .ms-tooltip-
|
2241 |
-
|
2242 |
-
border-
|
2243 |
-
|
2244 |
-
|
2245 |
-
|
2246 |
-
|
2247 |
-
|
2248 |
-
|
2249 |
-
|
2250 |
-
border-right
|
2251 |
-
border-right-color:
|
2252 |
-
|
2253 |
-
|
2254 |
-
|
2255 |
-
|
2256 |
-
|
2257 |
-
border-left
|
2258 |
-
border-left-color:
|
2259 |
-
|
2260 |
-
|
2261 |
-
|
2262 |
-
|
2263 |
-
.ms-skin-metro .ms-tooltip-point
|
2264 |
-
|
2265 |
-
|
2266 |
-
|
2267 |
-
border:
|
2268 |
-
|
2269 |
-
|
2270 |
-
|
2271 |
-
|
2272 |
-
|
2273 |
-
|
2274 |
-
|
2275 |
-
|
2276 |
-
|
2277 |
-
|
2278 |
-
background:
|
2279 |
-
|
2280 |
-
|
2281 |
-
|
2282 |
-
|
2283 |
-
|
2284 |
-
|
2285 |
-
-
|
2286 |
-
-
|
2287 |
-
|
2288 |
-
|
2289 |
-
|
2290 |
-
|
2291 |
-
|
2292 |
-
|
2293 |
-
|
2294 |
-
|
2295 |
-
|
2296 |
-
background:
|
2297 |
-
|
2298 |
-
|
2299 |
-
|
2300 |
-
|
2301 |
-
|
2302 |
-
|
2303 |
-
|
2304 |
-
only screen and (
|
2305 |
-
only screen and (
|
2306 |
-
only screen and (
|
2307 |
-
only screen and (
|
2308 |
-
only screen and ( min-resolution:
|
2309 |
-
|
2310 |
-
|
2311 |
-
.ms-skin-metro .ms-
|
2312 |
-
.ms-skin-metro .ms-
|
2313 |
-
.ms-skin-metro .ms-
|
2314 |
-
.ms-skin-metro .ms-nav-
|
2315 |
-
.ms-skin-metro .ms-
|
2316 |
-
|
2317 |
-
background-
|
2318 |
-
|
2319 |
-
|
2320 |
-
|
2321 |
-
|
2322 |
-
|
2323 |
-
|
2324 |
-
|
2325 |
-
*
|
2326 |
-
|
2327 |
-
|
2328 |
-
|
2329 |
-
.ms-skin-contrast .ms-
|
2330 |
-
|
2331 |
-
|
2332 |
-
|
2333 |
-
|
2334 |
-
|
2335 |
-
|
2336 |
-
|
2337 |
-
|
2338 |
-
|
2339 |
-
|
2340 |
-
|
2341 |
-
|
2342 |
-
|
2343 |
-
|
2344 |
-
|
2345 |
-
|
2346 |
-
|
2347 |
-
|
2348 |
-
|
2349 |
-
.ms-skin-contrast .ms-nav-
|
2350 |
-
|
2351 |
-
|
2352 |
-
background
|
2353 |
-
|
2354 |
-
|
2355 |
-
|
2356 |
-
|
2357 |
-
|
2358 |
-
|
2359 |
-
|
2360 |
-
|
2361 |
-
|
2362 |
-
|
2363 |
-
|
2364 |
-
|
2365 |
-
|
2366 |
-
|
2367 |
-
|
2368 |
-
|
2369 |
-
|
2370 |
-
|
2371 |
-
|
2372 |
-
|
2373 |
-
|
2374 |
-
|
2375 |
-
|
2376 |
-
|
2377 |
-
|
2378 |
-
|
2379 |
-
|
2380 |
-
|
2381 |
-
|
2382 |
-
|
2383 |
-
background
|
2384 |
-
|
2385 |
-
|
2386 |
-
|
2387 |
-
|
2388 |
-
|
2389 |
-
|
2390 |
-
|
2391 |
-
|
2392 |
-
|
2393 |
-
|
2394 |
-
|
2395 |
-
|
2396 |
-
|
2397 |
-
|
2398 |
-
.ms-skin-contrast .ms-tooltip-
|
2399 |
-
|
2400 |
-
border-
|
2401 |
-
|
2402 |
-
|
2403 |
-
|
2404 |
-
|
2405 |
-
|
2406 |
-
|
2407 |
-
|
2408 |
-
border-top
|
2409 |
-
border-top-color:
|
2410 |
-
|
2411 |
-
|
2412 |
-
|
2413 |
-
|
2414 |
-
|
2415 |
-
border-bottom
|
2416 |
-
border-bottom-color:
|
2417 |
-
|
2418 |
-
|
2419 |
-
|
2420 |
-
|
2421 |
-
.ms-skin-contrast .ms-tooltip-
|
2422 |
-
|
2423 |
-
border-
|
2424 |
-
|
2425 |
-
|
2426 |
-
|
2427 |
-
|
2428 |
-
|
2429 |
-
|
2430 |
-
|
2431 |
-
border-right
|
2432 |
-
border-right-color:
|
2433 |
-
|
2434 |
-
|
2435 |
-
|
2436 |
-
|
2437 |
-
|
2438 |
-
border-left
|
2439 |
-
border-left-color:
|
2440 |
-
|
2441 |
-
|
2442 |
-
|
2443 |
-
|
2444 |
-
.ms-skin-contrast .ms-tooltip-point
|
2445 |
-
|
2446 |
-
|
2447 |
-
|
2448 |
-
border:
|
2449 |
-
|
2450 |
-
|
2451 |
-
|
2452 |
-
|
2453 |
-
|
2454 |
-
|
2455 |
-
|
2456 |
-
|
2457 |
-
|
2458 |
-
|
2459 |
-
background:
|
2460 |
-
|
2461 |
-
|
2462 |
-
|
2463 |
-
|
2464 |
-
|
2465 |
-
|
2466 |
-
-
|
2467 |
-
-
|
2468 |
-
|
2469 |
-
|
2470 |
-
|
2471 |
-
|
2472 |
-
|
2473 |
-
|
2474 |
-
|
2475 |
-
|
2476 |
-
|
2477 |
-
background:
|
2478 |
-
|
2479 |
-
|
2480 |
-
|
2481 |
-
|
2482 |
-
|
2483 |
-
|
2484 |
-
|
2485 |
-
|
2486 |
-
only screen and (
|
2487 |
-
only screen and (
|
2488 |
-
only screen and (
|
2489 |
-
only screen and (
|
2490 |
-
only screen and ( min-resolution:
|
2491 |
-
|
2492 |
-
|
2493 |
-
.ms-skin-contrast .ms-
|
2494 |
-
.ms-skin-contrast .ms-
|
2495 |
-
.ms-skin-contrast .ms-
|
2496 |
-
.ms-skin-contrast .ms-nav-
|
2497 |
-
.ms-skin-contrast .ms-
|
2498 |
-
|
2499 |
-
background-
|
2500 |
-
|
2501 |
-
|
2502 |
-
|
|
1 |
+
/*!
|
2 |
* Master Slider WordPress Lite Main CSS File
|
3 |
* @date Jun 2015
|
4 |
*/
|
5 |
|
6 |
|
7 |
|
8 |
+
/**
|
9 |
+
* Master Slider
|
10 |
+
* Main css file
|
11 |
+
*/
|
12 |
+
|
13 |
+
.master-slider{
|
14 |
+
position: relative;
|
15 |
+
visibility: hidden;
|
16 |
+
-moz-transform: translate3d(0 , 0 , 0);
|
17 |
+
}
|
18 |
+
|
19 |
+
|
20 |
+
|
21 |
+
.ms-ie img{border:none;}
|
22 |
+
.ms-ie8 * {opacity:inherit;filter:inherit;}
|
23 |
+
.ms-ie7 {zoom:1;}
|
24 |
+
|
25 |
+
.ms-moz .ms-slide-bgcont>img { transform: translateX(0px); }
|
26 |
+
|
27 |
+
.master-slider a,
|
28 |
+
.master-slider a:hover {
|
29 |
+
-webkit-transition: none;
|
30 |
+
-o-transition: none;
|
31 |
+
transition: none;
|
32 |
+
}
|
33 |
+
|
34 |
+
.wpb_row .master-slider-parent *,
|
35 |
+
.master-slider-parent * {
|
36 |
+
-webkit-box-sizing: content-box;
|
37 |
+
-moz-box-sizing: content-box;
|
38 |
+
box-sizing: content-box;
|
39 |
+
}
|
40 |
+
|
41 |
+
.master-slider-parent {
|
42 |
+
margin-left: auto;
|
43 |
+
margin-right: auto;
|
44 |
+
}
|
45 |
+
|
46 |
+
.ms-layout-partialview .ms-view {
|
47 |
+
overflow: visible;
|
48 |
+
background-color:transparent;
|
49 |
+
}
|
50 |
+
|
51 |
+
.ms-layout-partialview .ms-container { overflow: hidden; }
|
52 |
+
|
53 |
+
.master-slider.before-init{}
|
54 |
+
|
55 |
+
.ms-loading-container{
|
56 |
+
position:absolute;
|
57 |
+
width:100%;
|
58 |
+
top:0;
|
59 |
+
}
|
60 |
+
|
61 |
+
.ms-loading-container .ms-loading,
|
62 |
+
.ms-slide .ms-slide-loading {
|
63 |
+
width: 36px;
|
64 |
+
height: 36px;
|
65 |
+
background: url(common/loading-2.gif) no-repeat center white;
|
66 |
+
border-radius: 60px;
|
67 |
+
box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
|
68 |
+
position: absolute;
|
69 |
+
left: 50%;
|
70 |
+
top: 50%;
|
71 |
+
margin: -18px;
|
72 |
+
opacity: 0.9;
|
73 |
+
}
|
74 |
+
|
75 |
+
|
76 |
+
/* grab cursor */
|
77 |
+
.ms-def-cursor{cursor:auto !important;}
|
78 |
+
.ms-grab-cursor{cursor: url(common/grab.png), move;}
|
79 |
+
.ms-grabbing-cursor{cursor: url(common/grabbing.png), move;}
|
80 |
+
.ms-ie .ms-grab-cursor{cursor: move;}
|
81 |
+
.ms-ie .ms-grabbing-cursor {cursor: move;}
|
82 |
+
|
83 |
+
.ms-view {
|
84 |
+
margin:0px auto;
|
85 |
+
overflow:hidden;
|
86 |
+
|
87 |
+
position:relative;
|
88 |
+
-webkit-perspective: 2000px;
|
89 |
+
-moz-perspective: 2000px;
|
90 |
+
-ms-perspective: 2000px;
|
91 |
+
perspective: 2000px;
|
92 |
+
}
|
93 |
+
|
94 |
+
.ms-view .ms-slide-container{position:relative;}
|
95 |
+
|
96 |
+
.ms-slide {
|
97 |
+
position:absolute;
|
98 |
+
height:100%;
|
99 |
+
-webkit-transform: translateZ(0px);
|
100 |
+
-ms-transform: translateZ(0px);
|
101 |
+
-o-transform: translateZ(0px);
|
102 |
+
transform: translateZ(0px);
|
103 |
+
}
|
104 |
+
|
105 |
+
.ms-wk .ms-slide {
|
106 |
+
-webkit-transform-style: preserve-3d;
|
107 |
+
transform-style: preserve-3d;
|
108 |
+
}
|
109 |
+
|
110 |
+
.ms-slide.selected {}
|
111 |
+
|
112 |
+
.ms-slide .ms-slide-bgcont,
|
113 |
+
.ms-slide .ms-slide-bgvideocont{
|
114 |
+
position: absolute;
|
115 |
+
overflow:hidden;
|
116 |
+
width: 100%;
|
117 |
+
}
|
118 |
+
|
119 |
+
.ms-slide .ms-slide-link {
|
120 |
+
display: block;
|
121 |
+
width: 100%;
|
122 |
+
height: 100%;
|
123 |
+
position: absolute;
|
124 |
+
top:0;
|
125 |
+
z-index: 110;
|
126 |
+
}
|
127 |
+
|
128 |
+
.ms-ie .ms-slide-link {
|
129 |
+
background: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7") 0 0 repeat;
|
130 |
+
}
|
131 |
+
|
132 |
+
|
133 |
+
.ms-slide .ms-slide-bgvideocont{
|
134 |
+
z-index: 105;
|
135 |
+
height: 100%;
|
136 |
+
}
|
137 |
+
|
138 |
+
.ms-wk .ms-slide .ms-slide-bgvideocont,
|
139 |
+
.ms-wk .ms-slide-bgvideocont>video{
|
140 |
+
-webkit-transform: translateZ(0.3px);
|
141 |
+
transform: translateZ(0.3px);
|
142 |
+
}
|
143 |
+
|
144 |
+
.ms-slide .ms-slide-bgvideo{
|
145 |
+
position: absolute;
|
146 |
+
top: 0px;
|
147 |
+
}
|
148 |
+
|
149 |
+
|
150 |
+
.ms-inner-controls-cont, .ms-container {position: relative; margin:0 auto;}
|
151 |
+
.ms-slide .ms-slide-bgcont img , .ms-container , .ms-inner-controls-cont{
|
152 |
+
-webkit-user-select:none;
|
153 |
+
-moz-user-select:none;
|
154 |
+
-ms-user-select:none;
|
155 |
+
user-select:none;
|
156 |
+
}
|
157 |
+
|
158 |
+
.ms-slide .ms-slide-video{
|
159 |
+
position:absolute;
|
160 |
+
top:0;
|
161 |
+
z-index: 111;
|
162 |
+
background:black;
|
163 |
+
padding:0;
|
164 |
+
margin: 0;
|
165 |
+
border: none;
|
166 |
+
|
167 |
+
}
|
168 |
+
|
169 |
+
|
170 |
+
.ms-slide .ms-pattern{
|
171 |
+
background-attachment: scroll;
|
172 |
+
width: 100%;
|
173 |
+
height: 100%;
|
174 |
+
z-index: 108;
|
175 |
+
position: absolute;
|
176 |
+
top: 0;
|
177 |
+
}
|
178 |
+
|
179 |
+
.ms-wk .ms-pattern{
|
180 |
+
-webkit-transform: translateZ(0.4px);
|
181 |
+
transform: translateZ(0.4px);
|
182 |
+
}
|
183 |
+
|
184 |
+
.ms-slide .ms-slide-vpbtn , .ms-slide .ms-video-btn{
|
185 |
+
position:absolute;
|
186 |
+
cursor: pointer;
|
187 |
+
z-index: 110;
|
188 |
+
}
|
189 |
+
|
190 |
+
.ms-slide .ms-slide-vcbtn{
|
191 |
+
position:absolute;
|
192 |
+
cursor: pointer;
|
193 |
+
z-index: 113;
|
194 |
+
}
|
195 |
+
|
196 |
+
.ms-slide-vcbtn-mobile{
|
197 |
+
position: relative;
|
198 |
+
bottom: 0;
|
199 |
+
left:0;
|
200 |
+
width:100%;
|
201 |
+
height: 28px;
|
202 |
+
background-color: black;
|
203 |
+
color: white;
|
204 |
+
text-align: center;
|
205 |
+
cursor: pointer;
|
206 |
+
z-index: 113;
|
207 |
+
}
|
208 |
+
|
209 |
+
.ms-slide-vcbtn-mobile .ms-vcbtn-txt {
|
210 |
+
text-transform: uppercase;
|
211 |
+
font-family: sans-serif;
|
212 |
+
font-size: 0.75em;
|
213 |
+
display: inline-block;
|
214 |
+
background: url(common/video-close-btn.png) no-repeat 0px 3px;
|
215 |
+
padding-left: 15px;
|
216 |
+
height: 15px;
|
217 |
+
color: #DBDBDB;
|
218 |
+
margin-top: 7px;
|
219 |
+
}
|
220 |
+
|
221 |
+
.ms-wk .ms-slide .ms-slide-vcbtn,
|
222 |
+
.ms-wk .ms-slide .ms-slide-layers,
|
223 |
+
.ms-wk .ms-slide .ms-slide-vpbtn,
|
224 |
+
.ms-wk .ms-slide .ms-slide-video,
|
225 |
+
.ms-wk .ms-slide-link {
|
226 |
+
-webkit-transform: translateZ(0.44px);
|
227 |
+
transform: translateZ(0.44px);
|
228 |
+
}
|
229 |
+
|
230 |
+
.ms-video-img{
|
231 |
+
position:absolute;
|
232 |
+
width:100%;
|
233 |
+
height:100%;
|
234 |
+
top:0;
|
235 |
+
left:0;
|
236 |
+
}
|
237 |
+
|
238 |
+
.ms-mask-frame{
|
239 |
+
overflow:hidden;
|
240 |
+
position:absolute;
|
241 |
+
float:left;
|
242 |
+
}
|
243 |
+
|
244 |
+
/* controls */
|
245 |
+
|
246 |
+
.ms-thumb-list{
|
247 |
+
overflow:hidden;
|
248 |
+
position:absolute;
|
249 |
+
}
|
250 |
+
|
251 |
+
.ms-thumb-list.ms-dir-h {width: 100%;}
|
252 |
+
.ms-thumb-list.ms-dir-v {height: 100%; top: 0;}
|
253 |
+
.ms-thumbs-cont{position: relative;}
|
254 |
+
.ms-thumb-frame img{width:100%; height:auto;}
|
255 |
+
.ms-thumb-frame{
|
256 |
+
cursor: pointer;
|
257 |
+
float: left;
|
258 |
+
overflow: hidden;
|
259 |
+
opacity: 0.5;
|
260 |
+
-webkit-transition: opacity 300ms;
|
261 |
+
-moz-transition: opacity 300ms;
|
262 |
+
-ms-transition: opacity 300ms;
|
263 |
+
-o-transition: opacity 300ms;
|
264 |
+
transition: opacity 300ms;
|
265 |
+
}
|
266 |
+
.ms-thumb-frame-selected{ opacity: 1; }
|
267 |
+
|
268 |
+
.ms-tabs .ms-thumb-frame {
|
269 |
+
background-color: #F6f6f6;
|
270 |
+
text-shadow: 0 1px 1px white;
|
271 |
+
color: #222;
|
272 |
+
border: solid 1px white;
|
273 |
+
border-width: 0 1px 1px 0;
|
274 |
+
overflow: visible;
|
275 |
+
position: relative;
|
276 |
+
opacity: 1;
|
277 |
+
-webkit-transition: all 300ms ease-out;
|
278 |
+
-moz-transition: all 300ms ease-out;
|
279 |
+
-ms-transition: all 300ms ease-out;
|
280 |
+
-o-transition: all 300ms ease-out;
|
281 |
+
transition: all 300ms ease-out;
|
282 |
+
}
|
283 |
+
|
284 |
+
.ms-tabs.ms-has-thumb .ms-tab-thumb{ width:auto; }
|
285 |
+
.ms-tabs.ms-dir-h .ms-thumb-frame {margin-top: 12px;}
|
286 |
+
.ms-tabs.ms-dir-v .ms-thumb-frame {margin-left: 12px;}
|
287 |
+
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame {margin-left: 0px;}
|
288 |
+
.ms-tabs.ms-dir-h.ms-align-top {z-index: 140;}
|
289 |
+
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame{margin-top: -12px;}
|
290 |
+
.ms-tabs .ms-thumb{padding: 20px 20px;}
|
291 |
+
.ms-tabs .ms-thumb-frame-selected { opacity: 1; background: #EDEDED;}
|
292 |
+
.ms-tabs .ms-thumb-frame .ms-thumb-ol {
|
293 |
+
position: absolute;
|
294 |
+
opacity: 0;
|
295 |
+
-webkit-transition: all 300ms ease-out;
|
296 |
+
-moz-transition: all 300ms ease-out;
|
297 |
+
-ms-transition: all 300ms ease-out;
|
298 |
+
-o-transition: all 300ms ease-out;
|
299 |
+
transition: all 300ms ease-out;
|
300 |
+
}
|
301 |
+
|
302 |
+
.ms-tabs.ms-dir-h .ms-thumb-frame .ms-thumb-ol {
|
303 |
+
top: 0px;
|
304 |
+
left: 50%;
|
305 |
+
margin-left: -12px;
|
306 |
+
border-bottom: solid 12px #F6f6f6;
|
307 |
+
border-left: solid 12px transparent;
|
308 |
+
border-right: solid 12px transparent;
|
309 |
+
}
|
310 |
+
|
311 |
+
.ms-tabs.ms-dir-h.ms-align-bottom .ms-thumb-frame-selected .ms-thumb-ol{
|
312 |
+
opacity: 1;
|
313 |
+
top:-12px;
|
314 |
+
border-bottom-color: #EDEDED;
|
315 |
+
}
|
316 |
+
|
317 |
+
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame .ms-thumb-ol {
|
318 |
+
bottom: 0px;
|
319 |
+
top:auto;
|
320 |
+
border-bottom:0px;
|
321 |
+
border-top: solid 12px #F6f6f6;
|
322 |
+
}
|
323 |
+
|
324 |
+
.ms-tabs.ms-dir-h.ms-align-top .ms-thumb-frame-selected .ms-thumb-ol{
|
325 |
+
opacity: 1;
|
326 |
+
bottom:-12px;
|
327 |
+
border-top-color: #EDEDED;
|
328 |
+
}
|
329 |
+
|
330 |
+
.ms-tabs.ms-dir-v .ms-thumb-frame .ms-thumb-ol {
|
331 |
+
top: 50%;
|
332 |
+
left: 0;
|
333 |
+
margin-top: -12px;
|
334 |
+
border-right: solid 12px #EDEDED;
|
335 |
+
border-top: solid 12px transparent;
|
336 |
+
border-bottom: solid 12px transparent;
|
337 |
+
}
|
338 |
+
|
339 |
+
.ms-tabs.ms-dir-v.ms-align-right .ms-thumb-frame-selected .ms-thumb-ol{
|
340 |
+
opacity: 1;
|
341 |
+
left:-12px;
|
342 |
+
border-right-color:#EDEDED;
|
343 |
+
}
|
344 |
+
|
345 |
+
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame .ms-thumb-ol {
|
346 |
+
left: auto;
|
347 |
+
right: 0;
|
348 |
+
border-right: 0;
|
349 |
+
border-left: solid 12px #EDEDED;
|
350 |
+
}
|
351 |
+
|
352 |
+
.ms-tabs.ms-dir-v.ms-align-left .ms-thumb-frame-selected .ms-thumb-ol{
|
353 |
+
opacity: 1;
|
354 |
+
right:-12px;
|
355 |
+
border-left-color:#EDEDED;
|
356 |
+
}
|
357 |
+
|
358 |
+
.ms-thumb-alt {
|
359 |
+
text-align: center;
|
360 |
+
margin: 5px;
|
361 |
+
font-size: 14px;
|
362 |
+
font-weight: 600;
|
363 |
+
}
|
364 |
+
|
365 |
+
/* horizontal thumblist arrows*/
|
366 |
+
.ms-thumb-list.ms-dir-h .ms-thumblist-fwd, .ms-thumb-list.ms-dir-h .ms-thumblist-bwd {
|
367 |
+
height: 100%;
|
368 |
+
width: 20px;
|
369 |
+
position: absolute;
|
370 |
+
left: 0;
|
371 |
+
cursor: pointer;
|
372 |
+
background: rgba(128, 128, 128, 0.5);
|
373 |
+
text-align: center;
|
374 |
+
color: white;
|
375 |
+
}
|
376 |
+
|
377 |
+
.ms-thumb-list.ms-dir-h .ms-thumblist-bwd {
|
378 |
+
right: 0;
|
379 |
+
left: auto;
|
380 |
+
}
|
381 |
+
|
382 |
+
.ms-thumb-list.ms-dir-h .ms-thumblist-fwd:after, .ms-thumb-list.ms-dir-h .ms-thumblist-bwd:after {
|
383 |
+
content: close-quote;
|
384 |
+
top: 43%;
|
385 |
+
position: relative;
|
386 |
+
border: solid rgba(0, 0, 0, 0);
|
387 |
+
border-width: 5px 5px 5px 0px;
|
388 |
+
display: block;
|
389 |
+
border-right-color: #FFF;
|
390 |
+
width: 6px;
|
391 |
+
height: 1px;
|
392 |
+
}
|
393 |
+
|
394 |
+
.ms-thumb-list.ms-dir-h .ms-thumblist-bwd:after {
|
395 |
+
border-width: 5px 0px 5px 5px;
|
396 |
+
border-left-color: #FFF;
|
397 |
+
left: 7px;
|
398 |
+
}
|
399 |
+
|
400 |
+
/* vertical thumblist arrows */
|
401 |
+
.ms-thumb-list.ms-dir-v .ms-thumblist-fwd, .ms-thumb-list.ms-dir-v .ms-thumblist-bwd {
|
402 |
+
width: 100%;
|
403 |
+
height: 20px;
|
404 |
+
position: absolute;
|
405 |
+
top: 0;
|
406 |
+
cursor: pointer;
|
407 |
+
background: rgba(128, 128, 128, 0.5);
|
408 |
+
text-align: center;
|
409 |
+
color: white;
|
410 |
+
}
|
411 |
+
|
412 |
+
.ms-thumb-list.ms-dir-v .ms-thumblist-bwd {
|
413 |
+
bottom: 0;
|
414 |
+
top: auto;
|
415 |
+
}
|
416 |
+
|
417 |
+
.ms-thumb-list.ms-dir-v .ms-thumblist-fwd:after, .ms-thumb-list.ms-dir-v .ms-thumblist-bwd:after {
|
418 |
+
content: close-quote;
|
419 |
+
left: 43%;
|
420 |
+
position: relative;
|
421 |
+
border: solid rgba(0, 0, 0, 0);
|
422 |
+
border-width: 0px 5px 5px 5px;
|
423 |
+
display: block;
|
424 |
+
border-bottom-color: #FFF;
|
425 |
+
height: 1px;
|
426 |
+
top: 5px;
|
427 |
+
width: 0;
|
428 |
+
}
|
429 |
+
|
430 |
+
.ms-thumb-list.ms-dir-v .ms-thumblist-bwd:after {
|
431 |
+
border-width: 5px 5px 0px 5px;
|
432 |
+
border-top-color: #FFF;
|
433 |
+
top: 7px;
|
434 |
+
}
|
435 |
+
|
436 |
+
/* Thumb in tab styles */
|
437 |
+
.ms-tabs.ms-dir-v.ms-has-thumb .ms-thumbs-cont{ top:0 !important; }
|
438 |
+
.ms-tabs.ms-has-thumb .ms-thumb-frame{ height: auto !important; }
|
439 |
+
.ms-tabs.ms-has-thumb .ms-thumb{ padding:0; }
|
440 |
+
.ms-tabs.ms-has-thumb .ms-tab-context{ padding:20px; }
|
441 |
+
.ms-tabs.ms-align-left .ms-tab-thumb{ float:left; margin-right:20px; }
|
442 |
+
.ms-tabs.ms-align-right .ms-tab-thumb{ float:right; margin-left: 20px; }
|
443 |
+
|
444 |
+
.ms-bullet{cursor:pointer;float: left;}
|
445 |
+
.ms-bullets.ms-dir-h {
|
446 |
+
position: absolute;
|
447 |
+
bottom: 20px;
|
448 |
+
right: 50%;
|
449 |
+
width: 100px;
|
450 |
+
}
|
451 |
+
|
452 |
+
.ms-bullets.ms-dir-v {
|
453 |
+
position: absolute;
|
454 |
+
top:50%;
|
455 |
+
}
|
456 |
+
|
457 |
+
.ms-bullets.ms-dir-v .ms-bullet{
|
458 |
+
float: none;
|
459 |
+
}
|
460 |
+
.ms-bullets.ms-dir-h .ms-bullets-count {
|
461 |
+
position: relative;
|
462 |
+
right: -50%;
|
463 |
+
}
|
464 |
+
|
465 |
+
.ms-sbar {position: absolute;}
|
466 |
+
.ms-sbar.ms-dir-h {
|
467 |
+
left: 10px;
|
468 |
+
right: 10px;
|
469 |
+
top: 5px
|
470 |
+
}
|
471 |
+
|
472 |
+
.ms-sbar.ms-dir-v {
|
473 |
+
top: 10px;
|
474 |
+
bottom: 10px;
|
475 |
+
right: 5px
|
476 |
+
}
|
477 |
+
|
478 |
+
.ms-sbar .ms-bar {
|
479 |
+
height: 4px;
|
480 |
+
background: #333;
|
481 |
+
border-radius: 4px;
|
482 |
+
}
|
483 |
+
|
484 |
+
.ms-sbar.ms-dir-v .ms-bar { width: 4px;}
|
485 |
+
|
486 |
+
.ms-sbar .ms-bar{
|
487 |
+
position:relative;
|
488 |
+
-webkit-transition: opacity 300ms;
|
489 |
+
-moz-transition: opacity 300ms;
|
490 |
+
-ms-transition: opacity 300ms;
|
491 |
+
-o-transition: opacity 300ms;
|
492 |
+
transition: opacity 300ms;
|
493 |
+
}
|
494 |
+
|
495 |
+
.ms-timerbar {
|
496 |
+
width: 100%;
|
497 |
+
bottom: 0px;
|
498 |
+
position: absolute;
|
499 |
+
}
|
500 |
+
|
501 |
+
.ms-ctimer {
|
502 |
+
position: absolute;
|
503 |
+
top: 30px;
|
504 |
+
left: 30px;
|
505 |
+
cursor: pointer;
|
506 |
+
}
|
507 |
+
|
508 |
+
.ms-ctimer-bullet {}
|
509 |
+
|
510 |
+
.ms-time-bar{
|
511 |
+
-webkit-transition: width 120ms linear;
|
512 |
+
-moz-transition: width 120ms linear;
|
513 |
+
-ms-transition: width 120ms linear;
|
514 |
+
-o-transition: width 120ms linear;
|
515 |
+
transition: width 120ms linear;
|
516 |
+
}
|
517 |
+
|
518 |
+
.ms-ie7 .ms-tooltip-arrow{
|
519 |
+
height:0px;
|
520 |
+
}
|
521 |
+
|
522 |
+
.ms-slide-info {position: absolute;}
|
523 |
+
.ms-slide-info.ms-dir-v {top:0;}
|
524 |
+
.ms-slide-info.ms-dir-h {width:100%;}
|
525 |
+
.ms-slide-info .ms-info-empty{display:none;}
|
526 |
+
|
527 |
+
.ms-pattern.ms-patt-1 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABRJREFUeNpiYICA/wzoDGTwHyDAADXxAv4Eq8S5AAAAAElFTkSuQmCC);}
|
528 |
+
.ms-pattern.ms-patt-2 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABhJREFUeNpiYECA/wxogLAANoBdF0CAAQD+agT8l3ocpQAAAABJRU5ErkJggg==);}
|
529 |
+
.ms-pattern.ms-patt-3 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACxJREFUeNqU0EENAAAMwkD8m+4s7PhCCmHbGijxE0jS1HOOhxJSUhf9eAIMAI/CEe94Ny14AAAAAElFTkSuQmCC);}
|
530 |
+
.ms-pattern.ms-patt-4 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABhJREFUeNpiYGBg+M+ABfxHo3Fz/gMEGACtlgX7j8MuyAAAAABJRU5ErkJggg==);}
|
531 |
+
.ms-pattern.ms-patt-5 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABNJREFUeNpiYECA/3CCAV0UIMAANfEC/mOKn1cAAAAASUVORK5CYII=);}
|
532 |
+
.ms-pattern.ms-patt-6 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAABCAYAAADjAO9DAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABRJREFUeNpiYGBg+M+AClD4AAEGACn3Af/97SgJAAAAAElFTkSuQmCC);}
|
533 |
+
.ms-pattern.ms-patt-7 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABZJREFUeNpiYMAE/+EEAy5Z0iUAAgwA/moE/KMl2lgAAAAASUVORK5CYII=);}
|
534 |
+
.ms-pattern.ms-patt-8 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAICAYAAAA4GpVBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABRJREFUeNpiYGBg+M+ACdDFAAIMADP0Af/w5VDVAAAAAElFTkSuQmCC);}
|
535 |
+
.ms-pattern.ms-patt-9 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiYGBg+M9AGQAIMABABAEA80yJjQAAAABJRU5ErkJggg==);}
|
536 |
+
.ms-pattern.ms-patt-10 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABZJREFUeNpiYGBg+A/FcMDEQH0AEGAAxksCAb3vCDgAAAAASUVORK5CYII=);}
|
537 |
+
.ms-pattern.ms-patt-11 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABxJREFUeNpiZGBg+M+AChhBBBMDDkC6BOkAIMAAlXQBCO9f4icAAAAASUVORK5CYII=);}
|
538 |
+
.ms-pattern.ms-patt-12 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABtJREFUeNpiYGBg+M8AATAaDnAKYEgQBgABBgB6/AT8h9ybfgAAAABJRU5ErkJggg==);}
|
539 |
+
.ms-pattern.ms-patt-13 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAB1JREFUeNpiYGBg+M+ABJig9H90AbggI7oWgAADAI5xBAIRYsxUAAAAAElFTkSuQmCC);}
|
540 |
+
.ms-pattern.ms-patt-14 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAICAYAAAAx8TU7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABdJREFUeNpiYGBg+M+AA9BSgkQBgAADAJIyB/kDCjAnAAAAAElFTkSuQmCC);}
|
541 |
+
.ms-pattern.ms-patt-15 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAB9JREFUeNpiYGBg+M9ABPhPjPh/YjT9J2AipiRAgAEAhjsH+Utd9Z4AAAAASUVORK5CYII=);}
|
542 |
+
/* white patterns */
|
543 |
+
.ms-pattern.ms-patt-16 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFAQMAAABCXz8WAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABJJREFUCNdjaGBwZFBiEGHgAAAHPwEAP8TPrwAAAABJRU5ErkJggg==);}
|
544 |
+
.ms-pattern.ms-patt-17 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAIAQMAAAALP6d4AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABZJREFUCNdjaGBwYFBgEGDgAGIFBgcADegBabpJ4LsAAAAASUVORK5CYII=);}
|
545 |
+
.ms-pattern.ms-patt-18 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAEAQMAAACTPww9AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABBJREFUCNdjaGA4wPCA4QMACtgDEQ8Bqx8AAAAASUVORK5CYII=);}
|
546 |
+
.ms-pattern.ms-patt-19 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA9JREFUCNdjWMDgAMRAAAAKigGBlYsMggAAAABJRU5ErkJggg==);}
|
547 |
+
.ms-pattern.ms-patt-20 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGAQMAAADaAn0LAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA1JREFUCNdj+ACFQAAAHgwDwds/+0oAAAAASUVORK5CYII=);}
|
548 |
+
.ms-pattern.ms-patt-21 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA1JREFUCNdjOACEYAAADAoBgRrgDF0AAAAASUVORK5CYII=);}
|
549 |
+
.ms-pattern.ms-patt-22 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAEAQMAAACTPww9AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjaGAAAwADiACBhux1cwAAAABJRU5ErkJggg==);}
|
550 |
+
.ms-pattern.ms-patt-23 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAIAQMAAAAC1AcCAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA5JREFUCNdjaGAAAxgNAAsQAQHPxScOAAAAAElFTkSuQmCC);}
|
551 |
+
.ms-pattern.ms-patt-24 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAABAQMAAADZzn0AAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAApJREFUCNdj6AAAAIoAiVWdWYwAAAAASUVORK5CYII=);}
|
552 |
+
.ms-pattern.ms-patt-25 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABJJREFUCNdj4GBoYHBgUGAQAAAFggD5HRIFwAAAAABJRU5ErkJggg==);}
|
553 |
+
.ms-pattern.ms-patt-26 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADAQMAAABs5if8AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA5JREFUCNdjUGBoYHAAAAJmAOF0EZC+AAAAAElFTkSuQmCC);}
|
554 |
+
.ms-pattern.ms-patt-27 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAEAQMAAACTPww9AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABBJREFUCNdjaGAIYFBgCAAABcgBQeTzXGUAAAAASUVORK5CYII=);}
|
555 |
+
.ms-pattern.ms-patt-28 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAQMAAAC3/F3+AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAACBJREFUCNdjaGBgcHBgUGhgEGRg4GJgYAGRQDZQBCgOAC/KAvtspwwJAAAAAElFTkSuQmCC);}
|
556 |
+
.ms-pattern.ms-patt-29 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABJJREFUCNdjUGBwYGhg4GAQAAAFkgD5MUFnfgAAAABJRU5ErkJggg==);}
|
557 |
+
.ms-pattern.ms-patt-30 {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADAQMAAABs5if8AAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAA5JREFUCNdjcGBoYFAAAALmAOHcBT11AAAAAElFTkSuQmCC);}
|
558 |
+
|
559 |
+
|
560 |
+
|
561 |
+
/**
|
562 |
+
* Master Slider
|
563 |
+
* Default Skin
|
564 |
+
*/
|
565 |
+
|
566 |
+
.ms-skin-default .ms-slide .ms-slide-vpbtn,
|
567 |
+
.ms-skin-default .ms-video-btn{
|
568 |
+
width: 50px;
|
569 |
+
height: 51px;
|
570 |
+
background: url(skins/light-skin-1.png) no-repeat -14px -150px;
|
571 |
+
top: 50%;
|
572 |
+
left: 50%;
|
573 |
+
margin: -25px 0 0 -25px;
|
574 |
+
}
|
575 |
+
|
576 |
+
.ms-skin-default .ms-slide .ms-slide-vcbtn {
|
577 |
+
width: 30px;
|
578 |
+
height: 30px;
|
579 |
+
background: url(skins/light-skin-1.png) no-repeat -24px -28px;
|
580 |
+
top: 18px;
|
581 |
+
right: 30px;
|
582 |
+
}
|
583 |
+
|
584 |
+
/* controls */
|
585 |
+
|
586 |
+
.ms-skin-default .ms-nav-next,
|
587 |
+
.ms-skin-default .ms-nav-prev {
|
588 |
+
width: 30px;
|
589 |
+
background: url(skins/light-skin-1.png);
|
590 |
+
background-position: -89px -26px;
|
591 |
+
height: 40px;
|
592 |
+
cursor: pointer;
|
593 |
+
top: 50%;
|
594 |
+
left: 30px;
|
595 |
+
margin-top: -20px;
|
596 |
+
position: absolute;
|
597 |
+
z-index: 110;
|
598 |
+
}
|
599 |
+
.ms-skin-default .ms-nav-next {
|
600 |
+
right: 30px;
|
601 |
+
left: auto;
|
602 |
+
background-position: -89px -103px;
|
603 |
+
}
|
604 |
+
|
605 |
+
|
606 |
+
|
607 |
+
.ms-skin-default .ms-bullet {
|
608 |
+
width: 10px;
|
609 |
+
height: 10px;
|
610 |
+
background: url(skins/light-skin-1.png) no-repeat;
|
611 |
+
margin: 4px;
|
612 |
+
background-position: -34px -117px;
|
613 |
+
}
|
614 |
+
|
615 |
+
.ms-skin-default .ms-bullet-selected {
|
616 |
+
background-position: -34px -84px;
|
617 |
+
}
|
618 |
+
|
619 |
+
.ms-skin-default .ms-tooltip{
|
620 |
+
position: absolute;
|
621 |
+
z-index: 210;
|
622 |
+
cursor: auto;
|
623 |
+
}
|
624 |
+
|
625 |
+
.ms-skin-default .ms-tooltip-top .ms-tooltip-arrow,
|
626 |
+
.ms-skin-default .ms-tooltip-bottom .ms-tooltip-arrow{
|
627 |
+
border-left: solid 10px transparent;
|
628 |
+
border-right: solid 10px transparent;
|
629 |
+
position: absolute;
|
630 |
+
left: 50%;
|
631 |
+
margin-left: -10px;
|
632 |
+
}
|
633 |
+
|
634 |
+
.ms-skin-default .ms-tooltip-top .ms-tooltip-arrow{
|
635 |
+
border-top: solid 10px;
|
636 |
+
border-top-color: silver;
|
637 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
638 |
+
bottom: -10px;
|
639 |
+
}
|
640 |
+
|
641 |
+
.ms-skin-default .ms-tooltip-bottom .ms-tooltip-arrow {
|
642 |
+
border-bottom: solid 10px;
|
643 |
+
border-bottom-color: silver;
|
644 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
645 |
+
top: -10px;
|
646 |
+
}
|
647 |
+
|
648 |
+
.ms-skin-default .ms-tooltip-right .ms-tooltip-arrow,
|
649 |
+
.ms-skin-default .ms-tooltip-left .ms-tooltip-arrow{
|
650 |
+
border-top: solid 10px transparent;
|
651 |
+
border-bottom: solid 10px transparent;
|
652 |
+
position: absolute;
|
653 |
+
top: 50%;
|
654 |
+
margin-top: -10px;
|
655 |
+
}
|
656 |
+
|
657 |
+
.ms-skin-default .ms-tooltip-right .ms-tooltip-arrow{
|
658 |
+
border-right: solid 10px;
|
659 |
+
border-right-color: silver;
|
660 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
661 |
+
left: -10px;
|
662 |
+
}
|
663 |
+
|
664 |
+
.ms-skin-default .ms-tooltip-left .ms-tooltip-arrow {
|
665 |
+
border-left: solid 10px;
|
666 |
+
border-left-color: silver;
|
667 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
668 |
+
right: -10px;
|
669 |
+
}
|
670 |
+
|
671 |
+
.ms-skin-default .ms-tooltip-point {cursor: pointer;}
|
672 |
+
.ms-skin-default .ms-tooltip-point .ms-point-center {
|
673 |
+
width: 12px;
|
674 |
+
height: 12px;
|
675 |
+
border-radius: 15px;
|
676 |
+
border: solid 2px #BBB;
|
677 |
+
background: white;
|
678 |
+
margin: -8px 0 0 -8px;
|
679 |
+
position: absolute;
|
680 |
+
z-index: 105;
|
681 |
+
}
|
682 |
+
|
683 |
+
.ms-skin-default .ms-tooltip-point .ms-point-border {
|
684 |
+
width: 22px;
|
685 |
+
height: 22px;
|
686 |
+
background: black;
|
687 |
+
background:rgba(0, 0, 0, 0.36);
|
688 |
+
margin: -11px 0 0 -11px;
|
689 |
+
position: absolute;
|
690 |
+
border-radius: 15px;
|
691 |
+
|
692 |
+
animation: point-anim 1.5s infinite ;
|
693 |
+
-moz-animation: point-anim 1.5s infinite;
|
694 |
+
-webkit-animation: point-anim 1.5s infinite;
|
695 |
+
-o-animation: point-anim 1.5s infinite;
|
696 |
+
}
|
697 |
+
|
698 |
+
.ms-skin-default .ms-tooltip {
|
699 |
+
max-width:200px;
|
700 |
+
}
|
701 |
+
|
702 |
+
.ms-skin-default .ms-tooltip-cont {
|
703 |
+
padding: 10px;
|
704 |
+
background: silver;
|
705 |
+
background: rgba(240, 240, 240, 0.88);
|
706 |
+
text-shadow: 0 1px 0px white;
|
707 |
+
margin-left: -1px;
|
708 |
+
}
|
709 |
+
|
710 |
+
/* retina */
|
711 |
+
@media
|
712 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
713 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
714 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
715 |
+
only screen and ( min-device-pixel-ratio: 2),
|
716 |
+
only screen and ( min-resolution: 192dpi),
|
717 |
+
only screen and ( min-resolution: 2dppx) {
|
718 |
+
|
719 |
+
.ms-skin-default .ms-slide .ms-slide-vpbtn,
|
720 |
+
.ms-skin-default .ms-video-btn,
|
721 |
+
.ms-skin-default .ms-slide .ms-slide-vcbtn,
|
722 |
+
.ms-skin-default .ms-nav-next,
|
723 |
+
.ms-skin-default .ms-nav-prev,
|
724 |
+
.ms-skin-default .ms-bullet{
|
725 |
+
background-image:url(skins/light-skin-1-retina.png);
|
726 |
+
background-size: 152px 225px;
|
727 |
+
}
|
728 |
+
|
729 |
+
}
|
730 |
+
|
731 |
+
|
732 |
+
/**
|
733 |
+
* Master Slider
|
734 |
+
* Black 1
|
735 |
+
*/
|
736 |
+
|
737 |
+
.ms-skin-black-1 .ms-slide .ms-slide-vpbtn,
|
738 |
+
.ms-skin-black-1 .ms-video-btn{
|
739 |
+
width: 54px;
|
740 |
+
height: 54px;
|
741 |
+
background: url(skins/black-skin-1.png) no-repeat -14px -150px;
|
742 |
+
top: 50%;
|
743 |
+
left: 50%;
|
744 |
+
margin: -27px 0 0 -27px;
|
745 |
+
}
|
746 |
+
|
747 |
+
.ms-skin-black-1 .ms-slide .ms-slide-vcbtn {
|
748 |
+
width: 27px;
|
749 |
+
height: 26px;
|
750 |
+
background: url(skins/black-skin-1.png) no-repeat -24px -29px;
|
751 |
+
top: 30px;
|
752 |
+
right: 30px;
|
753 |
+
}
|
754 |
+
|
755 |
+
/* controls */
|
756 |
+
|
757 |
+
.ms-skin-black-1 .ms-nav-next,
|
758 |
+
.ms-skin-black-1 .ms-nav-prev {
|
759 |
+
width: 53px;
|
760 |
+
background: url(skins/black-skin-1.png);
|
761 |
+
background-position: -79px -19px;
|
762 |
+
height: 61px;
|
763 |
+
cursor: pointer;
|
764 |
+
top: 50%;
|
765 |
+
left: 30px;
|
766 |
+
margin-top: -26px;
|
767 |
+
position: absolute;
|
768 |
+
z-index: 110;
|
769 |
+
}
|
770 |
+
.ms-skin-black-1 .ms-nav-next {
|
771 |
+
right: 30px;
|
772 |
+
left: auto;
|
773 |
+
background-position: -79px -97px;
|
774 |
+
}
|
775 |
+
|
776 |
+
.ms-skin-black-1 .ms-bullets.ms-dir-h {
|
777 |
+
position: absolute;
|
778 |
+
bottom: 20px;
|
779 |
+
right: 50%;
|
780 |
+
width: 100px;
|
781 |
+
}
|
782 |
+
|
783 |
+
.ms-skin-black-1 .ms-bullets.ms-dir-h .ms-bullets-count {
|
784 |
+
position: relative;
|
785 |
+
right: -50%;
|
786 |
+
}
|
787 |
+
|
788 |
+
.ms-skin-black-1 .ms-bullet {
|
789 |
+
width: 9px;
|
790 |
+
height: 9px;
|
791 |
+
background: white;
|
792 |
+
margin: 4px;
|
793 |
+
border: solid 1px rgb(58, 58, 58);
|
794 |
+
}
|
795 |
+
|
796 |
+
.ms-skin-black-1 .ms-bullet-selected {
|
797 |
+
background-color: black;
|
798 |
+
}
|
799 |
+
|
800 |
+
.ms-skin-black-1 .ms-tooltip{
|
801 |
+
position: absolute;
|
802 |
+
z-index: 210;
|
803 |
+
cursor: auto;
|
804 |
+
}
|
805 |
+
|
806 |
+
.ms-skin-black-1 .ms-tooltip-top .ms-tooltip-arrow,
|
807 |
+
.ms-skin-black-1 .ms-tooltip-bottom .ms-tooltip-arrow{
|
808 |
+
border-left: solid 10px transparent;
|
809 |
+
border-right: solid 10px transparent;
|
810 |
+
position: absolute;
|
811 |
+
left: 50%;
|
812 |
+
margin-left: -10px;
|
813 |
+
}
|
814 |
+
|
815 |
+
.ms-skin-black-1 .ms-tooltip-top .ms-tooltip-arrow{
|
816 |
+
border-top: solid 10px;
|
817 |
+
border-top-color: white;
|
818 |
+
border-top-color: rgba(0, 0, 0, 0.8);
|
819 |
+
bottom: -10px;
|
820 |
+
}
|
821 |
+
|
822 |
+
.ms-skin-black-1 .ms-tooltip-bottom .ms-tooltip-arrow {
|
823 |
+
border-bottom: solid 10px;
|
824 |
+
border-bottom-color: white;
|
825 |
+
border-bottom-color: rgba(0, 0, 0, 0.8);
|
826 |
+
top: -10px;
|
827 |
+
}
|
828 |
+
|
829 |
+
.ms-skin-black-1 .ms-tooltip-right .ms-tooltip-arrow,
|
830 |
+
.ms-skin-black-1 .ms-tooltip-left .ms-tooltip-arrow{
|
831 |
+
border-top: solid 10px transparent;
|
832 |
+
border-bottom: solid 10px transparent;
|
833 |
+
position: absolute;
|
834 |
+
top: 50%;
|
835 |
+
margin-top: -10px;
|
836 |
+
}
|
837 |
+
|
838 |
+
.ms-skin-black-1 .ms-tooltip-right .ms-tooltip-arrow{
|
839 |
+
border-right: solid 10px;
|
840 |
+
border-right-color: white;
|
841 |
+
border-right-color: rgba(0, 0, 0, 0.8);
|
842 |
+
left: -10px;
|
843 |
+
}
|
844 |
+
|
845 |
+
.ms-skin-black-1 .ms-tooltip-left .ms-tooltip-arrow {
|
846 |
+
border-left: solid 10px;
|
847 |
+
border-left-color: black;
|
848 |
+
border-left-color: rgba(0, 0, 0, 0.8);
|
849 |
+
right: -10px;
|
850 |
+
}
|
851 |
+
|
852 |
+
.ms-skin-black-1 .ms-tooltip-point {cursor: pointer;}
|
853 |
+
.ms-skin-black-1 .ms-tooltip-point .ms-point-center {
|
854 |
+
width: 12px;
|
855 |
+
height: 12px;
|
856 |
+
border-radius: 15px;
|
857 |
+
border: solid 2px #444444;
|
858 |
+
background: black;
|
859 |
+
margin: -8px 0 0 -8px;
|
860 |
+
position: absolute;
|
861 |
+
z-index: 105;
|
862 |
+
}
|
863 |
+
|
864 |
+
.ms-skin-black-1 .ms-tooltip-point .ms-point-border {
|
865 |
+
width: 22px;
|
866 |
+
height: 22px;
|
867 |
+
background: white;
|
868 |
+
background: rgba(255, 255, 255, 0.9);
|
869 |
+
margin: -11px 0 0 -11px;
|
870 |
+
position: absolute;
|
871 |
+
border-radius: 15px;
|
872 |
+
|
873 |
+
animation: point-anim 1.5s infinite ;
|
874 |
+
-moz-animation: point-anim 1.5s infinite;
|
875 |
+
-webkit-animation: point-anim 1.5s infinite;
|
876 |
+
-o-animation: point-anim 1.5s infinite;
|
877 |
+
}
|
878 |
+
|
879 |
+
.ms-skin-black-1 .ms-tooltip {
|
880 |
+
max-width:200px;
|
881 |
+
}
|
882 |
+
|
883 |
+
.ms-skin-black-1 .ms-tooltip-cont {
|
884 |
+
padding: 10px;
|
885 |
+
background: black;
|
886 |
+
background: rgba(0, 0, 0, 0.8);
|
887 |
+
text-shadow: 0 1px 0px black;
|
888 |
+
color: white;
|
889 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
890 |
+
}
|
891 |
+
|
892 |
+
/* retina */
|
893 |
+
@media
|
894 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
895 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
896 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
897 |
+
only screen and ( min-device-pixel-ratio: 2),
|
898 |
+
only screen and ( min-resolution: 192dpi),
|
899 |
+
only screen and ( min-resolution: 2dppx) {
|
900 |
+
|
901 |
+
.ms-skin-black-1 .ms-slide .ms-slide-vpbtn,
|
902 |
+
.ms-skin-black-1 .ms-video-btn,
|
903 |
+
.ms-skin-black-1 .ms-slide .ms-slide-vcbtn,
|
904 |
+
.ms-skin-black-1 .ms-nav-next,
|
905 |
+
.ms-skin-black-1 .ms-nav-prev{
|
906 |
+
background-image:url(skins/black-skin-1-retina.png);
|
907 |
+
background-size: 152px 225px;
|
908 |
+
}
|
909 |
+
|
910 |
+
}
|
911 |
+
|
912 |
+
|
913 |
+
/**
|
914 |
+
* Master Slider
|
915 |
+
* Black 2 Skin
|
916 |
+
*/
|
917 |
+
|
918 |
+
.ms-skin-black-2 .ms-slide .ms-slide-vpbtn,
|
919 |
+
.ms-skin-black-2 .ms-video-btn{
|
920 |
+
width: 45px;
|
921 |
+
height: 45px;
|
922 |
+
background: url(skins/black-skin-2.png) black no-repeat -16px -103px;
|
923 |
+
border: solid 3px rgb(255, 255, 255);
|
924 |
+
border-color: rgba(255, 255, 255, 0.4);
|
925 |
+
-webkit-background-clip: padding-box;
|
926 |
+
top: 50%;
|
927 |
+
left: 50%;
|
928 |
+
margin: -23px 0 0 -23px;
|
929 |
+
}
|
930 |
+
|
931 |
+
.ms-skin-black-2 .ms-slide .ms-slide-vpbtn:hover,
|
932 |
+
.ms-skin-black-2 .ms-video-btn:hover{
|
933 |
+
background-color: #3D3D3D;
|
934 |
+
}
|
935 |
+
|
936 |
+
.ms-skin-black-2 .ms-slide .ms-slide-vcbtn {
|
937 |
+
width: 25px;
|
938 |
+
height: 25px;
|
939 |
+
background: url(skins/black-skin-2.png) black no-repeat -27px -36px;
|
940 |
+
border: solid 2px white;
|
941 |
+
border-color: rgba(255, 255, 255, 0.4);
|
942 |
+
top: 15px;
|
943 |
+
right: 15px;
|
944 |
+
}
|
945 |
+
|
946 |
+
.ms-skin-black-2.round-skin .ms-slide .ms-slide-vcbtn{
|
947 |
+
border-radius: 50px;
|
948 |
+
}
|
949 |
+
|
950 |
+
|
951 |
+
/* controls */
|
952 |
+
|
953 |
+
.ms-skin-black-2 .ms-nav-next,
|
954 |
+
.ms-skin-black-2 .ms-nav-prev {
|
955 |
+
position: absolute;
|
956 |
+
cursor: pointer;
|
957 |
+
z-index: 110;
|
958 |
+
width: 45px;
|
959 |
+
height: 45px;
|
960 |
+
background: url(skins/black-skin-2.png) black;
|
961 |
+
-webkit-background-clip: padding-box;
|
962 |
+
-moz-background-clip: padding-box;
|
963 |
+
background-clip: padding-box;
|
964 |
+
background-position: -88px -26px;
|
965 |
+
border: solid 3px rgb(255, 255, 255);
|
966 |
+
border-color: rgba(255, 255, 255, 0.4);
|
967 |
+
top: 50%;
|
968 |
+
left: 30px;
|
969 |
+
margin-top: -22px;
|
970 |
+
}
|
971 |
+
|
972 |
+
.ms-skin-black-2.round-skin .ms-nav-next,
|
973 |
+
.ms-skin-black-2.round-skin .ms-nav-prev,
|
974 |
+
.ms-skin-black-2.round-skin .ms-slide .ms-slide-vpbtn,
|
975 |
+
.ms-skin-black-2.round-skin .ms-video-btn{
|
976 |
+
border-radius: 90px;
|
977 |
+
}
|
978 |
+
|
979 |
+
.ms-skin-black-2 .ms-nav-next:hover,
|
980 |
+
.ms-skin-black-2 .ms-nav-prev:hover{
|
981 |
+
background-color: #3d3d3d;
|
982 |
+
}
|
983 |
+
|
984 |
+
.ms-skin-black-2 .ms-nav-next {
|
985 |
+
right: 30px;
|
986 |
+
left: auto;
|
987 |
+
background-position: -86px -103px;
|
988 |
+
}
|
989 |
+
|
990 |
+
.ms-skin-black-2 .ms-bullets.ms-dir-h {
|
991 |
+
position: absolute;
|
992 |
+
bottom: 20px;
|
993 |
+
right: 50%;
|
994 |
+
width: 100px;
|
995 |
+
}
|
996 |
+
|
997 |
+
.ms-skin-black-2 .ms-bullets.ms-dir-h .ms-bullets-count {
|
998 |
+
position: relative;
|
999 |
+
right: -50%;
|
1000 |
+
}
|
1001 |
+
|
1002 |
+
.ms-skin-black-2 .ms-bullet {
|
1003 |
+
width: 8px;
|
1004 |
+
height: 8px;
|
1005 |
+
background: white;
|
1006 |
+
-webkit-background-clip: padding-box;
|
1007 |
+
-moz-background-clip: padding-box;
|
1008 |
+
-ms-background-clip: padding-box;
|
1009 |
+
border: solid 3px white;
|
1010 |
+
border-color: rgba(0, 0, 0, 0.44);
|
1011 |
+
margin: 4px;
|
1012 |
+
background-position: -34px -117px;
|
1013 |
+
}
|
1014 |
+
|
1015 |
+
.ms-skin-black-2.round-skin .ms-bullet{
|
1016 |
+
border-radius: 15px;
|
1017 |
+
}
|
1018 |
+
|
1019 |
+
|
1020 |
+
.ms-skin-black-2 .ms-bullet-selected {
|
1021 |
+
background-color: black;
|
1022 |
+
border-color: white;
|
1023 |
+
border-color: rgba(255, 255, 255, 0.44);
|
1024 |
+
}
|
1025 |
+
|
1026 |
+
.ms-skin-black-2 .ms-tooltip{
|
1027 |
+
position: absolute;
|
1028 |
+
z-index: 210;
|
1029 |
+
cursor: auto;
|
1030 |
+
}
|
1031 |
+
|
1032 |
+
.ms-skin-black-2 .ms-tooltip-top .ms-tooltip-arrow,
|
1033 |
+
.ms-skin-black-2 .ms-tooltip-bottom .ms-tooltip-arrow{
|
1034 |
+
border-left: solid 10px transparent;
|
1035 |
+
border-right: solid 10px transparent;
|
1036 |
+
position: absolute;
|
1037 |
+
left: 50%;
|
1038 |
+
margin-left: -10px;
|
1039 |
+
}
|
1040 |
+
|
1041 |
+
.ms-skin-black-2 .ms-tooltip-top .ms-tooltip-arrow{
|
1042 |
+
border-top: solid 10px;
|
1043 |
+
border-top-color: silver;
|
1044 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
1045 |
+
bottom: -10px;
|
1046 |
+
}
|
1047 |
+
|
1048 |
+
.ms-skin-black-2 .ms-tooltip-bottom .ms-tooltip-arrow {
|
1049 |
+
border-bottom: solid 10px;
|
1050 |
+
border-bottom-color: silver;
|
1051 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
1052 |
+
top: -10px;
|
1053 |
+
}
|
1054 |
+
|
1055 |
+
.ms-skin-black-2 .ms-tooltip-right .ms-tooltip-arrow,
|
1056 |
+
.ms-skin-black-2 .ms-tooltip-left .ms-tooltip-arrow{
|
1057 |
+
border-top: solid 10px transparent;
|
1058 |
+
border-bottom: solid 10px transparent;
|
1059 |
+
position: absolute;
|
1060 |
+
top: 50%;
|
1061 |
+
margin-top: -10px;
|
1062 |
+
}
|
1063 |
+
|
1064 |
+
.ms-skin-black-2 .ms-tooltip-right .ms-tooltip-arrow{
|
1065 |
+
border-right: solid 10px;
|
1066 |
+
border-right-color: silver;
|
1067 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
1068 |
+
left: -10px;
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
.ms-skin-black-2 .ms-tooltip-left .ms-tooltip-arrow {
|
1072 |
+
border-left: solid 10px;
|
1073 |
+
border-left-color: silver;
|
1074 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
1075 |
+
right: -10px;
|
1076 |
+
}
|
1077 |
+
|
1078 |
+
.ms-skin-black-2 .ms-tooltip-point {cursor: pointer;}
|
1079 |
+
.ms-skin-black-2 .ms-tooltip-point .ms-point-center {
|
1080 |
+
width: 12px;
|
1081 |
+
height: 12px;
|
1082 |
+
border-radius: 15px;
|
1083 |
+
border: solid 2px #BBB;
|
1084 |
+
background: white;
|
1085 |
+
margin: -8px 0 0 -8px;
|
1086 |
+
position: absolute;
|
1087 |
+
z-index: 105;
|
1088 |
+
}
|
1089 |
+
|
1090 |
+
.ms-skin-black-2 .ms-tooltip-point .ms-point-border {
|
1091 |
+
width: 22px;
|
1092 |
+
height: 22px;
|
1093 |
+
background: black;
|
1094 |
+
background:rgba(0, 0, 0, 0.36);
|
1095 |
+
margin: -11px 0 0 -11px;
|
1096 |
+
position: absolute;
|
1097 |
+
border-radius: 15px;
|
1098 |
+
|
1099 |
+
animation: point-anim 1.5s infinite ;
|
1100 |
+
-moz-animation: point-anim 1.5s infinite;
|
1101 |
+
-webkit-animation: point-anim 1.5s infinite;
|
1102 |
+
-o-animation: point-anim 1.5s infinite;
|
1103 |
+
}
|
1104 |
+
|
1105 |
+
.ms-ie7.ms-skin-black-2 .ms-tooltip-point .ms-point-border,
|
1106 |
+
.ms-ie8.ms-skin-black-2 .ms-tooltip-point .ms-point-border{
|
1107 |
+
display: none;
|
1108 |
+
}
|
1109 |
+
|
1110 |
+
.ms-skin-black-2 .ms-tooltip {
|
1111 |
+
max-width:200px;
|
1112 |
+
}
|
1113 |
+
|
1114 |
+
.ms-skin-black-2 .ms-tooltip-cont {
|
1115 |
+
padding: 10px;
|
1116 |
+
background: silver;
|
1117 |
+
background: rgba(240, 240, 240, 0.88);
|
1118 |
+
text-shadow: 0 1px 0px white;
|
1119 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
1120 |
+
}
|
1121 |
+
|
1122 |
+
/* retina */
|
1123 |
+
@media
|
1124 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
1125 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
1126 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
1127 |
+
only screen and ( min-device-pixel-ratio: 2),
|
1128 |
+
only screen and ( min-resolution: 192dpi),
|
1129 |
+
only screen and ( min-resolution: 2dppx) {
|
1130 |
+
|
1131 |
+
.ms-skin-black-2 .ms-slide .ms-slide-vpbtn,
|
1132 |
+
.ms-skin-black-2 .ms-video-btn,
|
1133 |
+
.ms-skin-black-2 .ms-slide .ms-slide-vcbtn,
|
1134 |
+
.ms-skin-black-2 .ms-nav-next,
|
1135 |
+
.ms-skin-black-2 .ms-nav-prev{
|
1136 |
+
background-image:url(skins/black-skin-2-retina.png);
|
1137 |
+
background-size: 152px 225px;
|
1138 |
+
}
|
1139 |
+
|
1140 |
+
}
|
1141 |
+
|
1142 |
+
|
1143 |
+
/**
|
1144 |
+
* Master Slider
|
1145 |
+
* Light 2
|
1146 |
+
*/
|
1147 |
+
|
1148 |
+
.ms-skin-light-2 .ms-slide .ms-slide-vpbtn,
|
1149 |
+
.ms-skin-light-2 .ms-video-btn{
|
1150 |
+
width: 54px;
|
1151 |
+
height: 54px;
|
1152 |
+
background: url(skins/light-skin-2.png) no-repeat -14px -150px;
|
1153 |
+
top: 50%;
|
1154 |
+
left: 50%;
|
1155 |
+
margin: -27px 0 0 -27px;
|
1156 |
+
}
|
1157 |
+
|
1158 |
+
.ms-skin-light-2 .ms-slide .ms-slide-vcbtn {
|
1159 |
+
width: 27px;
|
1160 |
+
height: 26px;
|
1161 |
+
background: url(skins/light-skin-2.png) no-repeat -24px -29px;
|
1162 |
+
top: 30px;
|
1163 |
+
right: 30px;
|
1164 |
+
}
|
1165 |
+
|
1166 |
+
/* controls */
|
1167 |
+
|
1168 |
+
.ms-skin-light-2 .ms-nav-next,
|
1169 |
+
.ms-skin-light-2 .ms-nav-prev {
|
1170 |
+
width: 53px;
|
1171 |
+
background: url(skins/light-skin-2.png);
|
1172 |
+
background-position: -79px -19px;
|
1173 |
+
height: 61px;
|
1174 |
+
cursor: pointer;
|
1175 |
+
top: 50%;
|
1176 |
+
left: 30px;
|
1177 |
+
margin-top: -26px;
|
1178 |
+
position: absolute;
|
1179 |
+
z-index: 110;
|
1180 |
+
}
|
1181 |
+
.ms-skin-light-2 .ms-nav-next {
|
1182 |
+
right: 30px;
|
1183 |
+
left: auto;
|
1184 |
+
background-position: -79px -97px;
|
1185 |
+
}
|
1186 |
+
|
1187 |
+
.ms-skin-light-2 .ms-bullets.ms-dir-h {
|
1188 |
+
position: absolute;
|
1189 |
+
bottom: 20px;
|
1190 |
+
right: 50%;
|
1191 |
+
width: 100px;
|
1192 |
+
}
|
1193 |
+
|
1194 |
+
.ms-skin-light-2 .ms-bullets.ms-dir-h .ms-bullets-count {
|
1195 |
+
position: relative;
|
1196 |
+
right: -50%;
|
1197 |
+
}
|
1198 |
+
|
1199 |
+
.ms-skin-light-2 .ms-bullet {
|
1200 |
+
width: 9px;
|
1201 |
+
height: 9px;
|
1202 |
+
background: black;
|
1203 |
+
margin: 4px;
|
1204 |
+
border: solid 1px rgb(58, 58, 58);
|
1205 |
+
}
|
1206 |
+
|
1207 |
+
.ms-skin-light-2 .ms-bullet-selected {
|
1208 |
+
background-color: white;
|
1209 |
+
}
|
1210 |
+
|
1211 |
+
.ms-skin-light-2 .ms-tooltip{
|
1212 |
+
position: absolute;
|
1213 |
+
z-index: 210;
|
1214 |
+
cursor: auto;
|
1215 |
+
}
|
1216 |
+
|
1217 |
+
.ms-skin-light-2 .ms-tooltip-top .ms-tooltip-arrow,
|
1218 |
+
.ms-skin-light-2 .ms-tooltip-bottom .ms-tooltip-arrow{
|
1219 |
+
border-left: solid 10px transparent;
|
1220 |
+
border-right: solid 10px transparent;
|
1221 |
+
position: absolute;
|
1222 |
+
left: 50%;
|
1223 |
+
margin-left: -10px;
|
1224 |
+
}
|
1225 |
+
|
1226 |
+
.ms-skin-light-2 .ms-tooltip-top .ms-tooltip-arrow{
|
1227 |
+
border-top: solid 10px;
|
1228 |
+
border-top-color: silver;
|
1229 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
1230 |
+
bottom: -10px;
|
1231 |
+
}
|
1232 |
+
|
1233 |
+
.ms-skin-light-2 .ms-tooltip-bottom .ms-tooltip-arrow {
|
1234 |
+
border-bottom: solid 10px;
|
1235 |
+
border-bottom-color: silver;
|
1236 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
1237 |
+
top: -10px;
|
1238 |
+
}
|
1239 |
+
|
1240 |
+
.ms-skin-light-2 .ms-tooltip-right .ms-tooltip-arrow,
|
1241 |
+
.ms-skin-light-2 .ms-tooltip-left .ms-tooltip-arrow{
|
1242 |
+
border-top: solid 10px transparent;
|
1243 |
+
border-bottom: solid 10px transparent;
|
1244 |
+
position: absolute;
|
1245 |
+
top: 50%;
|
1246 |
+
margin-top: -10px;
|
1247 |
+
}
|
1248 |
+
|
1249 |
+
.ms-skin-light-2 .ms-tooltip-right .ms-tooltip-arrow{
|
1250 |
+
border-right: solid 10px;
|
1251 |
+
border-right-color: silver;
|
1252 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
1253 |
+
left: -10px;
|
1254 |
+
}
|
1255 |
+
|
1256 |
+
.ms-skin-light-2 .ms-tooltip-left .ms-tooltip-arrow {
|
1257 |
+
border-left: solid 10px;
|
1258 |
+
border-left-color: silver;
|
1259 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
1260 |
+
right: -10px;
|
1261 |
+
}
|
1262 |
+
|
1263 |
+
.ms-skin-light-2 .ms-tooltip-point {cursor: pointer;}
|
1264 |
+
.ms-skin-light-2 .ms-tooltip-point .ms-point-center {
|
1265 |
+
width: 12px;
|
1266 |
+
height: 12px;
|
1267 |
+
border-radius: 15px;
|
1268 |
+
border: solid 2px #BBB;
|
1269 |
+
background: white;
|
1270 |
+
margin: -8px 0 0 -8px;
|
1271 |
+
position: absolute;
|
1272 |
+
z-index: 105;
|
1273 |
+
}
|
1274 |
+
|
1275 |
+
.ms-skin-light-2 .ms-tooltip-point .ms-point-border {
|
1276 |
+
width: 22px;
|
1277 |
+
height: 22px;
|
1278 |
+
background: black;
|
1279 |
+
background:rgba(0, 0, 0, 0.36);
|
1280 |
+
margin: -11px 0 0 -11px;
|
1281 |
+
position: absolute;
|
1282 |
+
border-radius: 15px;
|
1283 |
+
|
1284 |
+
animation: point-anim 1.5s infinite ;
|
1285 |
+
-moz-animation: point-anim 1.5s infinite;
|
1286 |
+
-webkit-animation: point-anim 1.5s infinite;
|
1287 |
+
-o-animation: point-anim 1.5s infinite;
|
1288 |
+
}
|
1289 |
+
|
1290 |
+
.ms-skin-light-2 .ms-tooltip {
|
1291 |
+
max-width:200px;
|
1292 |
+
}
|
1293 |
+
|
1294 |
+
.ms-skin-light-2 .ms-tooltip-cont {
|
1295 |
+
padding: 10px;
|
1296 |
+
background: silver;
|
1297 |
+
background: rgba(240, 240, 240, 0.88);
|
1298 |
+
text-shadow: 0 1px 0px white;
|
1299 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
1300 |
+
}
|
1301 |
+
|
1302 |
+
/* retina */
|
1303 |
+
@media
|
1304 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
1305 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
1306 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
1307 |
+
only screen and ( min-device-pixel-ratio: 2),
|
1308 |
+
only screen and ( min-resolution: 192dpi),
|
1309 |
+
only screen and ( min-resolution: 2dppx) {
|
1310 |
+
|
1311 |
+
.ms-skin-light-2 .ms-slide .ms-slide-vpbtn,
|
1312 |
+
.ms-skin-light-2 .ms-video-btn,
|
1313 |
+
.ms-skin-light-2 .ms-slide .ms-slide-vcbtn,
|
1314 |
+
.ms-skin-light-2 .ms-nav-next,
|
1315 |
+
.ms-skin-light-2 .ms-nav-prev{
|
1316 |
+
background-image:url(skins/light-skin-2-retina.png);
|
1317 |
+
background-size: 152px 225px;
|
1318 |
+
}
|
1319 |
+
|
1320 |
+
}
|
1321 |
+
|
1322 |
+
|
1323 |
+
|
1324 |
+
/**
|
1325 |
+
* Master Slider
|
1326 |
+
* Light 3
|
1327 |
+
*/
|
1328 |
+
|
1329 |
+
.ms-skin-light-3 .ms-slide .ms-slide-vpbtn,
|
1330 |
+
.ms-skin-light-3 .ms-video-btn{
|
1331 |
+
width: 50px;
|
1332 |
+
height: 50px;
|
1333 |
+
background: url(skins/light-skin-3.png) no-repeat -15px -149px;
|
1334 |
+
top: 50%;
|
1335 |
+
left: 50%;
|
1336 |
+
margin: -25px 0 0 -25px;
|
1337 |
+
}
|
1338 |
+
|
1339 |
+
.ms-skin-light-3 .ms-slide .ms-slide-vcbtn {
|
1340 |
+
width: 31px;
|
1341 |
+
height: 29px;
|
1342 |
+
background: url(skins/light-skin-3.png) no-repeat -26px -28px;
|
1343 |
+
top: 30px;
|
1344 |
+
right: 30px;
|
1345 |
+
}
|
1346 |
+
|
1347 |
+
/* controls */
|
1348 |
+
|
1349 |
+
.ms-skin-light-3 .ms-nav-next,
|
1350 |
+
.ms-skin-light-3 .ms-nav-prev {
|
1351 |
+
width: 50px;
|
1352 |
+
background: url(skins/light-skin-3.png);
|
1353 |
+
background-position: -82px -22px;
|
1354 |
+
height: 50px;
|
1355 |
+
cursor: pointer;
|
1356 |
+
top: 50%;
|
1357 |
+
left: 30px;
|
1358 |
+
margin-top: -25px;
|
1359 |
+
position: absolute;
|
1360 |
+
z-index: 110;
|
1361 |
+
}
|
1362 |
+
.ms-skin-light-3 .ms-nav-next {
|
1363 |
+
right: 30px;
|
1364 |
+
left: auto;
|
1365 |
+
background-position: -81px -99px;
|
1366 |
+
}
|
1367 |
+
|
1368 |
+
.ms-skin-light-3 .ms-bullets.ms-dir-h {
|
1369 |
+
position: absolute;
|
1370 |
+
bottom: 20px;
|
1371 |
+
right: 50%;
|
1372 |
+
width: 100px;
|
1373 |
+
}
|
1374 |
+
|
1375 |
+
.ms-skin-light-3 .ms-bullets.ms-dir-h .ms-bullets-count {
|
1376 |
+
position: relative;
|
1377 |
+
right: -50%;
|
1378 |
+
}
|
1379 |
+
|
1380 |
+
.ms-skin-light-3 .ms-bullet {
|
1381 |
+
width: 16px;
|
1382 |
+
height: 16px;
|
1383 |
+
background: url(skins/light-skin-3.png) no-repeat;
|
1384 |
+
background-position: -31px -114px;
|
1385 |
+
margin: 4px;
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
.ms-skin-light-3 .ms-bullet-selected {
|
1389 |
+
background-position: -31px -81px;
|
1390 |
+
}
|
1391 |
+
|
1392 |
+
.ms-skin-light-3 .ms-tooltip{
|
1393 |
+
position: absolute;
|
1394 |
+
z-index: 210;
|
1395 |
+
cursor: auto;
|
1396 |
+
}
|
1397 |
+
|
1398 |
+
.ms-skin-light-3 .ms-tooltip-top .ms-tooltip-arrow,
|
1399 |
+
.ms-skin-light-3 .ms-tooltip-bottom .ms-tooltip-arrow{
|
1400 |
+
border-left: solid 10px transparent;
|
1401 |
+
border-right: solid 10px transparent;
|
1402 |
+
position: absolute;
|
1403 |
+
left: 50%;
|
1404 |
+
margin-left: -10px;
|
1405 |
+
}
|
1406 |
+
|
1407 |
+
.ms-skin-light-3 .ms-tooltip-top .ms-tooltip-arrow{
|
1408 |
+
border-top: solid 10px;
|
1409 |
+
border-top-color: silver;
|
1410 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
1411 |
+
bottom: -10px;
|
1412 |
+
}
|
1413 |
+
|
1414 |
+
.ms-skin-light-3 .ms-tooltip-bottom .ms-tooltip-arrow {
|
1415 |
+
border-bottom: solid 10px;
|
1416 |
+
border-bottom-color: silver;
|
1417 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
1418 |
+
top: -10px;
|
1419 |
+
}
|
1420 |
+
|
1421 |
+
.ms-skin-light-3 .ms-tooltip-right .ms-tooltip-arrow,
|
1422 |
+
.ms-skin-light-3 .ms-tooltip-left .ms-tooltip-arrow{
|
1423 |
+
border-top: solid 10px transparent;
|
1424 |
+
border-bottom: solid 10px transparent;
|
1425 |
+
position: absolute;
|
1426 |
+
top: 50%;
|
1427 |
+
margin-top: -10px;
|
1428 |
+
}
|
1429 |
+
|
1430 |
+
.ms-skin-light-3 .ms-tooltip-right .ms-tooltip-arrow{
|
1431 |
+
border-right: solid 10px;
|
1432 |
+
border-right-color: silver;
|
1433 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
1434 |
+
left: -10px;
|
1435 |
+
}
|
1436 |
+
|
1437 |
+
.ms-skin-light-3 .ms-tooltip-left .ms-tooltip-arrow {
|
1438 |
+
border-left: solid 10px;
|
1439 |
+
border-left-color: silver;
|
1440 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
1441 |
+
right: -10px;
|
1442 |
+
}
|
1443 |
+
|
1444 |
+
.ms-skin-light-3 .ms-tooltip-point {cursor: pointer;}
|
1445 |
+
.ms-skin-light-3 .ms-tooltip-point .ms-point-center {
|
1446 |
+
width: 12px;
|
1447 |
+
height: 12px;
|
1448 |
+
border-radius: 15px;
|
1449 |
+
border: solid 2px #BBB;
|
1450 |
+
background: white;
|
1451 |
+
margin: -8px 0 0 -8px;
|
1452 |
+
position: absolute;
|
1453 |
+
z-index: 105;
|
1454 |
+
}
|
1455 |
+
|
1456 |
+
.ms-skin-light-3 .ms-tooltip-point .ms-point-border {
|
1457 |
+
width: 22px;
|
1458 |
+
height: 22px;
|
1459 |
+
background: black;
|
1460 |
+
background:rgba(0, 0, 0, 0.36);
|
1461 |
+
margin: -11px 0 0 -11px;
|
1462 |
+
position: absolute;
|
1463 |
+
border-radius: 15px;
|
1464 |
+
|
1465 |
+
animation: point-anim 1.5s infinite ;
|
1466 |
+
-moz-animation: point-anim 1.5s infinite;
|
1467 |
+
-webkit-animation: point-anim 1.5s infinite;
|
1468 |
+
-o-animation: point-anim 1.5s infinite;
|
1469 |
+
}
|
1470 |
+
|
1471 |
+
.ms-skin-light-3 .ms-tooltip {
|
1472 |
+
max-width:200px;
|
1473 |
+
}
|
1474 |
+
|
1475 |
+
.ms-skin-light-3 .ms-tooltip-cont {
|
1476 |
+
padding: 10px;
|
1477 |
+
background: silver;
|
1478 |
+
background: rgba(240, 240, 240, 0.88);
|
1479 |
+
text-shadow: 0 1px 0px white;
|
1480 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
1481 |
+
}
|
1482 |
+
|
1483 |
+
/* retina */
|
1484 |
+
@media
|
1485 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
1486 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
1487 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
1488 |
+
only screen and ( min-device-pixel-ratio: 2),
|
1489 |
+
only screen and ( min-resolution: 192dpi),
|
1490 |
+
only screen and ( min-resolution: 2dppx) {
|
1491 |
+
|
1492 |
+
.ms-skin-light-3 .ms-slide .ms-slide-vpbtn,
|
1493 |
+
.ms-skin-light-3 .ms-video-btn,
|
1494 |
+
.ms-skin-light-3 .ms-slide .ms-slide-vcbtn,
|
1495 |
+
.ms-skin-light-3 .ms-nav-next,
|
1496 |
+
.ms-skin-light-3 .ms-nav-prev,
|
1497 |
+
.ms-skin-light-3 .ms-bullet{
|
1498 |
+
background-image:url(skins/light-skin-3-retina.png);
|
1499 |
+
background-size: 152px 225px;
|
1500 |
+
}
|
1501 |
+
|
1502 |
+
}
|
1503 |
+
|
1504 |
+
|
1505 |
+
|
1506 |
+
/**
|
1507 |
+
* Master Slider
|
1508 |
+
* Light 4
|
1509 |
+
*/
|
1510 |
+
|
1511 |
+
.ms-skin-light-4 .ms-slide .ms-slide-vpbtn,
|
1512 |
+
.ms-skin-light-4 .ms-video-btn{
|
1513 |
+
width: 54px;
|
1514 |
+
height: 54px;
|
1515 |
+
background: url(skins/light-skin-4.png) no-repeat -14px -150px;
|
1516 |
+
top: 50%;
|
1517 |
+
left: 50%;
|
1518 |
+
margin: -27px 0 0 -27px;
|
1519 |
+
}
|
1520 |
+
|
1521 |
+
.ms-skin-light-4 .ms-slide .ms-slide-vcbtn {
|
1522 |
+
width: 27px;
|
1523 |
+
height: 26px;
|
1524 |
+
background: url(skins/light-skin-4.png) no-repeat -24px -29px;
|
1525 |
+
top: 30px;
|
1526 |
+
right: 30px;
|
1527 |
+
}
|
1528 |
+
|
1529 |
+
/* controls */
|
1530 |
+
|
1531 |
+
.ms-skin-light-4 .ms-nav-next,
|
1532 |
+
.ms-skin-light-4 .ms-nav-prev {
|
1533 |
+
width: 54px;
|
1534 |
+
background: url(skins/light-skin-4.png);
|
1535 |
+
background-position: -77px -5px;
|
1536 |
+
height: 68px;
|
1537 |
+
cursor: pointer;
|
1538 |
+
top: 50%;
|
1539 |
+
left: -27px;
|
1540 |
+
margin-top: -40px;
|
1541 |
+
position: absolute;
|
1542 |
+
z-index: 110;
|
1543 |
+
}
|
1544 |
+
.ms-skin-light-4 .ms-nav-next {
|
1545 |
+
right: -27px;
|
1546 |
+
left: auto;
|
1547 |
+
background-position: -79px -83px;
|
1548 |
+
}
|
1549 |
+
|
1550 |
+
.ms-skin-light-4 .ms-thumb-frame-selected {
|
1551 |
+
opacity: 0.6;
|
1552 |
+
}
|
1553 |
+
|
1554 |
+
.ms-skin-light-4 .ms-thumb-list.ms-dir-h {
|
1555 |
+
bottom: -60px;
|
1556 |
+
width: 100%;
|
1557 |
+
height: 60px;
|
1558 |
+
}
|
1559 |
+
|
1560 |
+
.ms-skin-light-4 .ms-thumb-list.ms-dir-v {
|
1561 |
+
height: 100%;
|
1562 |
+
width: 60px;
|
1563 |
+
right: -60px;
|
1564 |
+
top: 0;
|
1565 |
+
}
|
1566 |
+
|
1567 |
+
.ms-skin-light-4 .ms-thumb-frame {
|
1568 |
+
cursor: pointer;
|
1569 |
+
float: left;
|
1570 |
+
width: 60px;
|
1571 |
+
height: 60px;
|
1572 |
+
margin: 1px 0 0 1px;
|
1573 |
+
overflow: hidden;
|
1574 |
+
}
|
1575 |
+
|
1576 |
+
.ms-skin-light-4 .ms-bullets.ms-dir-h {
|
1577 |
+
position: absolute;
|
1578 |
+
bottom: 20px;
|
1579 |
+
right: 50%;
|
1580 |
+
width: 100px;
|
1581 |
+
}
|
1582 |
+
|
1583 |
+
.ms-skin-light-4 .ms-bullets.ms-dir-h .ms-bullets-count {
|
1584 |
+
position: relative;
|
1585 |
+
right: -50%;
|
1586 |
+
}
|
1587 |
+
|
1588 |
+
.ms-skin-light-4 .ms-bullet {
|
1589 |
+
width: 9px;
|
1590 |
+
height: 9px;
|
1591 |
+
background: #b9b9b9;
|
1592 |
+
margin: 4px;
|
1593 |
+
border: solid 1px rgb(163, 163, 163);
|
1594 |
+
}
|
1595 |
+
|
1596 |
+
.ms-skin-light-4 .ms-bullet-selected {
|
1597 |
+
background-color: white;
|
1598 |
+
}
|
1599 |
+
|
1600 |
+
.ms-skin-light-4 .ms-tooltip{
|
1601 |
+
position: absolute;
|
1602 |
+
z-index: 210;
|
1603 |
+
cursor: auto;
|
1604 |
+
}
|
1605 |
+
|
1606 |
+
.ms-skin-light-4 .ms-tooltip-top .ms-tooltip-arrow,
|
1607 |
+
.ms-skin-light-4 .ms-tooltip-bottom .ms-tooltip-arrow{
|
1608 |
+
border-left: solid 10px transparent;
|
1609 |
+
border-right: solid 10px transparent;
|
1610 |
+
position: absolute;
|
1611 |
+
left: 50%;
|
1612 |
+
margin-left: -10px;
|
1613 |
+
}
|
1614 |
+
|
1615 |
+
.ms-skin-light-4 .ms-tooltip-top .ms-tooltip-arrow{
|
1616 |
+
border-top: solid 10px;
|
1617 |
+
border-top-color: silver;
|
1618 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
1619 |
+
bottom: -10px;
|
1620 |
+
}
|
1621 |
+
|
1622 |
+
.ms-skin-light-4 .ms-tooltip-bottom .ms-tooltip-arrow {
|
1623 |
+
border-bottom: solid 10px;
|
1624 |
+
border-bottom-color: silver;
|
1625 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
1626 |
+
top: -10px;
|
1627 |
+
}
|
1628 |
+
|
1629 |
+
.ms-skin-light-4 .ms-tooltip-right .ms-tooltip-arrow,
|
1630 |
+
.ms-skin-light-4 .ms-tooltip-left .ms-tooltip-arrow{
|
1631 |
+
border-top: solid 10px transparent;
|
1632 |
+
border-bottom: solid 10px transparent;
|
1633 |
+
position: absolute;
|
1634 |
+
top: 50%;
|
1635 |
+
margin-top: -10px;
|
1636 |
+
}
|
1637 |
+
|
1638 |
+
.ms-skin-light-4 .ms-tooltip-right .ms-tooltip-arrow{
|
1639 |
+
border-right: solid 10px;
|
1640 |
+
border-right-color: silver;
|
1641 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
1642 |
+
left: -10px;
|
1643 |
+
}
|
1644 |
+
|
1645 |
+
.ms-skin-light-4 .ms-tooltip-left .ms-tooltip-arrow {
|
1646 |
+
border-left: solid 10px;
|
1647 |
+
border-left-color: white;
|
1648 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
1649 |
+
right: -10px;
|
1650 |
+
}
|
1651 |
+
|
1652 |
+
.ms-skin-light-4 .ms-tooltip-point {cursor: pointer;}
|
1653 |
+
.ms-skin-light-4 .ms-tooltip-point .ms-point-center {
|
1654 |
+
width: 12px;
|
1655 |
+
height: 12px;
|
1656 |
+
border-radius: 15px;
|
1657 |
+
border: solid 2px #E0E0E0;
|
1658 |
+
background: #4b8aac;
|
1659 |
+
margin: -8px 0 0 -8px;
|
1660 |
+
position: absolute;
|
1661 |
+
z-index: 105;
|
1662 |
+
}
|
1663 |
+
|
1664 |
+
.ms-skin-light-4 .ms-tooltip-point .ms-point-border {
|
1665 |
+
width: 22px;
|
1666 |
+
height: 22px;
|
1667 |
+
background: white;
|
1668 |
+
margin: -11px 0 0 -11px;
|
1669 |
+
position: absolute;
|
1670 |
+
border-radius: 15px;
|
1671 |
+
|
1672 |
+
animation: point-anim 1.5s infinite ;
|
1673 |
+
-moz-animation: point-anim 1.5s infinite;
|
1674 |
+
-webkit-animation: point-anim 1.5s infinite;
|
1675 |
+
-o-animation: point-anim 1.5s infinite;
|
1676 |
+
}
|
1677 |
+
|
1678 |
+
|
1679 |
+
.ms-skin-light-4 .ms-tooltip {
|
1680 |
+
max-width:200px;
|
1681 |
+
}
|
1682 |
+
|
1683 |
+
.ms-skin-light-4 .ms-tooltip-cont {
|
1684 |
+
padding: 10px;
|
1685 |
+
background: silver;
|
1686 |
+
background: rgba(240, 240, 240, 0.88);
|
1687 |
+
text-shadow: 0 1px 0px white;
|
1688 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
1689 |
+
}
|
1690 |
+
|
1691 |
+
/* retina */
|
1692 |
+
@media
|
1693 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
1694 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
1695 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
1696 |
+
only screen and ( min-device-pixel-ratio: 2),
|
1697 |
+
only screen and ( min-resolution: 192dpi),
|
1698 |
+
only screen and ( min-resolution: 2dppx) {
|
1699 |
+
|
1700 |
+
.ms-skin-light-4 .ms-slide .ms-slide-vpbtn,
|
1701 |
+
.ms-skin-light-4 .ms-video-btn,
|
1702 |
+
.ms-skin-light-4 .ms-slide .ms-slide-vcbtn,
|
1703 |
+
.ms-skin-light-4 .ms-nav-next,
|
1704 |
+
.ms-skin-light-4 .ms-nav-prev{
|
1705 |
+
background-image:url(skins/light-skin-4-retina.png);
|
1706 |
+
background-size: 152px 225px;
|
1707 |
+
}
|
1708 |
+
|
1709 |
+
}
|
1710 |
+
|
1711 |
+
|
1712 |
+
|
1713 |
+
/**
|
1714 |
+
* Master Slider
|
1715 |
+
* Light 5
|
1716 |
+
*/
|
1717 |
+
|
1718 |
+
.ms-skin-light-5 .ms-slide .ms-slide-vpbtn,
|
1719 |
+
.ms-skin-light-5 .ms-video-btn{
|
1720 |
+
width: 32px;
|
1721 |
+
height: 32px;
|
1722 |
+
background: url(skins/light-skin-5.png) black no-repeat -24px -160px;
|
1723 |
+
top: 50%;
|
1724 |
+
left: 50%;
|
1725 |
+
margin: -18px 0 0 -18px;
|
1726 |
+
}
|
1727 |
+
|
1728 |
+
.ms-skin-light-5 .ms-slide .ms-slide-vpbtn:hover,
|
1729 |
+
.ms-skin-light-5 .ms-video-btn:hover{
|
1730 |
+
background-color:#646464;
|
1731 |
+
}
|
1732 |
+
|
1733 |
+
.ms-skin-light-5 .ms-slide .ms-slide-vcbtn {
|
1734 |
+
width: 30px;
|
1735 |
+
height: 30px;
|
1736 |
+
background: url(skins/light-skin-5.png) white no-repeat -24px -28px;
|
1737 |
+
top: 18px;
|
1738 |
+
right: 30px;
|
1739 |
+
}
|
1740 |
+
|
1741 |
+
/* controls */
|
1742 |
+
|
1743 |
+
.ms-skin-light-5 .ms-nav-next,
|
1744 |
+
.ms-skin-light-5 .ms-nav-prev {
|
1745 |
+
width: 32px;
|
1746 |
+
background: url(skins/light-skin-5.png) white;
|
1747 |
+
background-position: -94px -32px;
|
1748 |
+
height: 32px;
|
1749 |
+
cursor: pointer;
|
1750 |
+
bottom: 40px;
|
1751 |
+
left: 40px;
|
1752 |
+
margin-top: -20px;
|
1753 |
+
position: absolute;
|
1754 |
+
z-index: 110;
|
1755 |
+
}
|
1756 |
+
|
1757 |
+
.ms-skin-light-5 .ms-nav-next:hover,
|
1758 |
+
.ms-skin-light-5 .ms-nav-prev:hover{
|
1759 |
+
background-color:#E0E0E0;
|
1760 |
+
}
|
1761 |
+
|
1762 |
+
.ms-skin-light-5 .ms-nav-next {
|
1763 |
+
left: 73px;
|
1764 |
+
background-position: -93px -110px;
|
1765 |
+
}
|
1766 |
+
|
1767 |
+
.ms-skin-light-5 .ms-bullets.ms-dir-h {
|
1768 |
+
position: absolute;
|
1769 |
+
bottom: 20px;
|
1770 |
+
right: 50%;
|
1771 |
+
width: 100px;
|
1772 |
+
}
|
1773 |
+
|
1774 |
+
.ms-skin-light-5 .ms-bullets.ms-dir-h .ms-bullets-count {
|
1775 |
+
position: relative;
|
1776 |
+
right: -50%;
|
1777 |
+
}
|
1778 |
+
|
1779 |
+
.ms-skin-light-5 .ms-bullet {
|
1780 |
+
width: 10px;
|
1781 |
+
height: 10px;
|
1782 |
+
background: url(skins/light-skin-5.png) no-repeat;
|
1783 |
+
margin: 4px;
|
1784 |
+
background-position: -34px -117px;
|
1785 |
+
}
|
1786 |
+
|
1787 |
+
.ms-skin-light-5 .ms-bullet-selected {
|
1788 |
+
background-position: -34px -84px;
|
1789 |
+
}
|
1790 |
+
|
1791 |
+
.ms-skin-light-5 .ms-tooltip{
|
1792 |
+
position: absolute;
|
1793 |
+
z-index: 210;
|
1794 |
+
cursor: auto;
|
1795 |
+
}
|
1796 |
+
|
1797 |
+
.ms-skin-light-5 .ms-tooltip-top .ms-tooltip-arrow,
|
1798 |
+
.ms-skin-light-5 .ms-tooltip-bottom .ms-tooltip-arrow{
|
1799 |
+
border-left: solid 10px transparent;
|
1800 |
+
border-right: solid 10px transparent;
|
1801 |
+
position: absolute;
|
1802 |
+
left: 50%;
|
1803 |
+
margin-left: -10px;
|
1804 |
+
}
|
1805 |
+
|
1806 |
+
.ms-skin-light-5 .ms-tooltip-top .ms-tooltip-arrow{
|
1807 |
+
border-top: solid 10px;
|
1808 |
+
border-top-color: silver;
|
1809 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
1810 |
+
bottom: -10px;
|
1811 |
+
}
|
1812 |
+
|
1813 |
+
.ms-skin-light-5 .ms-tooltip-bottom .ms-tooltip-arrow {
|
1814 |
+
border-bottom: solid 10px;
|
1815 |
+
border-bottom-color: silver;
|
1816 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
1817 |
+
top: -10px;
|
1818 |
+
}
|
1819 |
+
|
1820 |
+
.ms-skin-light-5 .ms-tooltip-right .ms-tooltip-arrow,
|
1821 |
+
.ms-skin-light-5 .ms-tooltip-left .ms-tooltip-arrow{
|
1822 |
+
border-top: solid 10px transparent;
|
1823 |
+
border-bottom: solid 10px transparent;
|
1824 |
+
position: absolute;
|
1825 |
+
top: 50%;
|
1826 |
+
margin-top: -10px;
|
1827 |
+
}
|
1828 |
+
|
1829 |
+
.ms-skin-light-5 .ms-tooltip-right .ms-tooltip-arrow{
|
1830 |
+
border-right: solid 10px;
|
1831 |
+
border-right-color: silver;
|
1832 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
1833 |
+
left: -10px;
|
1834 |
+
}
|
1835 |
+
|
1836 |
+
.ms-skin-light-5 .ms-tooltip-left .ms-tooltip-arrow {
|
1837 |
+
border-left: solid 10px;
|
1838 |
+
border-left-color: silver;
|
1839 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
1840 |
+
right: -10px;
|
1841 |
+
}
|
1842 |
+
|
1843 |
+
.ms-skin-light-5 .ms-tooltip-point {cursor: pointer;}
|
1844 |
+
.ms-skin-light-5 .ms-tooltip-point .ms-point-center {
|
1845 |
+
width: 12px;
|
1846 |
+
height: 12px;
|
1847 |
+
border-radius: 15px;
|
1848 |
+
border: solid 2px #BBB;
|
1849 |
+
background: white;
|
1850 |
+
margin: -8px 0 0 -8px;
|
1851 |
+
position: absolute;
|
1852 |
+
z-index: 105;
|
1853 |
+
}
|
1854 |
+
|
1855 |
+
.ms-skin-light-5 .ms-tooltip-point .ms-point-border {
|
1856 |
+
width: 22px;
|
1857 |
+
height: 22px;
|
1858 |
+
background: black;
|
1859 |
+
background:rgba(0, 0, 0, 0.36);
|
1860 |
+
margin: -11px 0 0 -11px;
|
1861 |
+
position: absolute;
|
1862 |
+
border-radius: 15px;
|
1863 |
+
|
1864 |
+
animation: point-anim 1.5s infinite ;
|
1865 |
+
-moz-animation: point-anim 1.5s infinite;
|
1866 |
+
-webkit-animation: point-anim 1.5s infinite;
|
1867 |
+
-o-animation: point-anim 1.5s infinite;
|
1868 |
+
}
|
1869 |
+
|
1870 |
+
/* In Android browser, using css animations over slider causes some crashes */
|
1871 |
+
.ms-android.ms-skin-light-5 .ms-tooltip-point .ms-point-border{
|
1872 |
+
animation:none;
|
1873 |
+
-moz-animation:none;
|
1874 |
+
-webkit-animation:none;
|
1875 |
+
-o-animation:none;
|
1876 |
+
}
|
1877 |
+
|
1878 |
+
.ms-ie7.ms-skin-light-5 .ms-tooltip-point .ms-point-border,
|
1879 |
+
.ms-ie8.ms-skin-light-5 .ms-tooltip-point .ms-point-border{
|
1880 |
+
display: none;
|
1881 |
+
}
|
1882 |
+
|
1883 |
+
.ms-skin-light-5 .ms-tooltip {
|
1884 |
+
max-width:200px;
|
1885 |
+
}
|
1886 |
+
|
1887 |
+
.ms-skin-light-5 .ms-tooltip-cont {
|
1888 |
+
padding: 10px;
|
1889 |
+
background: silver;
|
1890 |
+
background: rgba(240, 240, 240, 0.88);
|
1891 |
+
text-shadow: 0 1px 0px white;
|
1892 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
1893 |
+
}
|
1894 |
+
|
1895 |
+
/* retina */
|
1896 |
+
@media
|
1897 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
1898 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
1899 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
1900 |
+
only screen and ( min-device-pixel-ratio: 2),
|
1901 |
+
only screen and ( min-resolution: 192dpi),
|
1902 |
+
only screen and ( min-resolution: 2dppx) {
|
1903 |
+
|
1904 |
+
.ms-skin-light-5 .ms-slide .ms-slide-vpbtn,
|
1905 |
+
.ms-skin-light-5 .ms-video-btn,
|
1906 |
+
.ms-skin-light-5 .ms-slide .ms-slide-vcbtn,
|
1907 |
+
.ms-skin-light-5 .ms-nav-next,
|
1908 |
+
.ms-skin-light-5 .ms-nav-prev{
|
1909 |
+
background-image:url(skins/light-skin-5-retina.png);
|
1910 |
+
background-size: 152px 225px;
|
1911 |
+
}
|
1912 |
+
|
1913 |
+
}
|
1914 |
+
|
1915 |
+
|
1916 |
+
|
1917 |
+
/**
|
1918 |
+
* Master Slider
|
1919 |
+
* Light-6 Skin
|
1920 |
+
*/
|
1921 |
+
|
1922 |
+
.ms-skin-light-6 .ms-slide .ms-slide-vpbtn,
|
1923 |
+
.ms-skin-light-6 .ms-video-btn{
|
1924 |
+
width: 45px;
|
1925 |
+
height: 45px;
|
1926 |
+
background: url(skins/light-skin-6.png) white no-repeat -16px -103px;
|
1927 |
+
border: solid 3px rgb(112, 112, 112); border-color: rgba(0, 0, 0, 0.27);
|
1928 |
+
-webkit-background-clip: padding-box;
|
1929 |
+
top: 50%;
|
1930 |
+
left: 50%;
|
1931 |
+
margin: -23px 0 0 -23px;
|
1932 |
+
}
|
1933 |
+
|
1934 |
+
.ms-skin-light-6 .ms-slide .ms-slide-vpbtn:hover,
|
1935 |
+
.ms-skin-light-6 .ms-video-btn:hover{
|
1936 |
+
background-color:#E0E0E0;
|
1937 |
+
}
|
1938 |
+
|
1939 |
+
.ms-skin-light-6 .ms-slide .ms-slide-vcbtn {
|
1940 |
+
width: 25px;
|
1941 |
+
height: 25px;
|
1942 |
+
background: url(skins/light-skin-6.png) white no-repeat -27px -36px;
|
1943 |
+
top: 15px;
|
1944 |
+
right: 15px;
|
1945 |
+
}
|
1946 |
+
|
1947 |
+
.ms-skin-light-6.round-skin .ms-slide .ms-slide-vcbtn{
|
1948 |
+
border-radius: 30px;
|
1949 |
+
}
|
1950 |
+
|
1951 |
+
|
1952 |
+
/* controls */
|
1953 |
+
|
1954 |
+
.ms-skin-light-6 .ms-nav-next,
|
1955 |
+
.ms-skin-light-6 .ms-nav-prev {
|
1956 |
+
position: absolute;
|
1957 |
+
cursor: pointer;
|
1958 |
+
z-index: 110;
|
1959 |
+
width: 45px;
|
1960 |
+
height: 45px;
|
1961 |
+
background: url(skins/light-skin-6.png) white;
|
1962 |
+
-webkit-background-clip: padding-box;
|
1963 |
+
-moz-background-clip: padding-box;
|
1964 |
+
background-clip: padding-box;
|
1965 |
+
background-position: -88px -26px;
|
1966 |
+
border: solid 3px rgb(112, 112, 112);
|
1967 |
+
border-color: rgba(0, 0, 0, 0.27);
|
1968 |
+
top: 50%;
|
1969 |
+
left: 30px;
|
1970 |
+
margin-top: -22px;
|
1971 |
+
}
|
1972 |
+
|
1973 |
+
.ms-skin-light-6.round-skin .ms-nav-next,
|
1974 |
+
.ms-skin-light-6.round-skin .ms-nav-prev,
|
1975 |
+
.ms-skin-light-6.round-skin .ms-slide .ms-slide-vpbtn,
|
1976 |
+
.ms-skin-light-6.round-skin .ms-video-btn{
|
1977 |
+
border-radius: 90px;
|
1978 |
+
}
|
1979 |
+
|
1980 |
+
.ms-skin-light-6 .ms-nav-next:hover,
|
1981 |
+
.ms-skin-light-6 .ms-nav-prev:hover{
|
1982 |
+
background-color:#E0E0E0;
|
1983 |
+
}
|
1984 |
+
|
1985 |
+
.ms-skin-light-6 .ms-nav-next {
|
1986 |
+
right: 30px;
|
1987 |
+
left: auto;
|
1988 |
+
background-position: -86px -103px;
|
1989 |
+
}
|
1990 |
+
|
1991 |
+
|
1992 |
+
.ms-skin-light-6 .ms-bullets.ms-dir-h {
|
1993 |
+
position: absolute;
|
1994 |
+
bottom: 20px;
|
1995 |
+
right: 50%;
|
1996 |
+
width: 100px;
|
1997 |
+
}
|
1998 |
+
|
1999 |
+
.ms-skin-light-6 .ms-bullets.ms-dir-h .ms-bullets-count {
|
2000 |
+
position: relative;
|
2001 |
+
right: -50%;
|
2002 |
+
}
|
2003 |
+
|
2004 |
+
.ms-skin-light-6 .ms-bullet {
|
2005 |
+
width: 8px;
|
2006 |
+
height: 8px;
|
2007 |
+
background: black;
|
2008 |
+
-webkit-background-clip: padding-box;
|
2009 |
+
border: solid 3px white;
|
2010 |
+
border-color: rgba(255, 255, 255, 0.44);
|
2011 |
+
margin: 4px;
|
2012 |
+
background-position: -34px -117px;
|
2013 |
+
}
|
2014 |
+
|
2015 |
+
.ms-skin-light-6.round-skin .ms-bullet{
|
2016 |
+
border-radius: 15px;
|
2017 |
+
}
|
2018 |
+
|
2019 |
+
.ms-skin-light-6 .ms-bullet-selected {
|
2020 |
+
background-color: white;
|
2021 |
+
border-color: black;
|
2022 |
+
border-color: rgba(0, 0, 0, 0.44);
|
2023 |
+
}
|
2024 |
+
|
2025 |
+
.ms-skin-light-6 .ms-tooltip{
|
2026 |
+
position: absolute;
|
2027 |
+
z-index: 210;
|
2028 |
+
cursor: auto;
|
2029 |
+
}
|
2030 |
+
|
2031 |
+
.ms-skin-light-6 .ms-tooltip-top .ms-tooltip-arrow,
|
2032 |
+
.ms-skin-light-6 .ms-tooltip-bottom .ms-tooltip-arrow{
|
2033 |
+
border-left: solid 10px transparent;
|
2034 |
+
border-right: solid 10px transparent;
|
2035 |
+
position: absolute;
|
2036 |
+
left: 50%;
|
2037 |
+
margin-left: -10px;
|
2038 |
+
}
|
2039 |
+
|
2040 |
+
.ms-skin-light-6 .ms-tooltip-top .ms-tooltip-arrow{
|
2041 |
+
border-top: solid 10px;
|
2042 |
+
border-top-color: silver;
|
2043 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
2044 |
+
bottom: -10px;
|
2045 |
+
}
|
2046 |
+
|
2047 |
+
.ms-skin-light-6 .ms-tooltip-bottom .ms-tooltip-arrow {
|
2048 |
+
border-bottom: solid 10px;
|
2049 |
+
border-bottom-color: silver;
|
2050 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
2051 |
+
top: -10px;
|
2052 |
+
}
|
2053 |
+
|
2054 |
+
.ms-skin-light-6 .ms-tooltip-right .ms-tooltip-arrow,
|
2055 |
+
.ms-skin-light-6 .ms-tooltip-left .ms-tooltip-arrow{
|
2056 |
+
border-top: solid 10px transparent;
|
2057 |
+
border-bottom: solid 10px transparent;
|
2058 |
+
position: absolute;
|
2059 |
+
top: 50%;
|
2060 |
+
margin-top: -10px;
|
2061 |
+
}
|
2062 |
+
|
2063 |
+
.ms-skin-light-6 .ms-tooltip-right .ms-tooltip-arrow{
|
2064 |
+
border-right: solid 10px;
|
2065 |
+
border-right-color: silver;
|
2066 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
2067 |
+
left: -10px;
|
2068 |
+
}
|
2069 |
+
|
2070 |
+
.ms-skin-light-6 .ms-tooltip-left .ms-tooltip-arrow {
|
2071 |
+
border-left: solid 10px;
|
2072 |
+
border-left-color: silver;
|
2073 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
2074 |
+
right: -10px;
|
2075 |
+
}
|
2076 |
+
|
2077 |
+
.ms-skin-light-6 .ms-tooltip-point {cursor: pointer;}
|
2078 |
+
.ms-skin-light-6 .ms-tooltip-point .ms-point-center {
|
2079 |
+
width: 12px;
|
2080 |
+
height: 12px;
|
2081 |
+
border-radius: 15px;
|
2082 |
+
border: solid 2px #BBB;
|
2083 |
+
background: white;
|
2084 |
+
margin: -8px 0 0 -8px;
|
2085 |
+
position: absolute;
|
2086 |
+
z-index: 105;
|
2087 |
+
}
|
2088 |
+
|
2089 |
+
.ms-skin-light-6 .ms-tooltip-point .ms-point-border {
|
2090 |
+
width: 22px;
|
2091 |
+
height: 22px;
|
2092 |
+
background: black;
|
2093 |
+
background:rgba(0, 0, 0, 0.36);
|
2094 |
+
margin: -11px 0 0 -11px;
|
2095 |
+
position: absolute;
|
2096 |
+
border-radius: 15px;
|
2097 |
+
|
2098 |
+
animation: point-anim 1.5s infinite ;
|
2099 |
+
-moz-animation: point-anim 1.5s infinite;
|
2100 |
+
-webkit-animation: point-anim 1.5s infinite;
|
2101 |
+
-o-animation: point-anim 1.5s infinite;
|
2102 |
+
}
|
2103 |
+
|
2104 |
+
.ms-ie7.ms-skin-light-6 .ms-tooltip-point .ms-point-border,
|
2105 |
+
.ms-ie8.ms-skin-light-6 .ms-tooltip-point .ms-point-border{
|
2106 |
+
display: none;
|
2107 |
+
}
|
2108 |
+
|
2109 |
+
.ms-skin-light-6 .ms-tooltip {
|
2110 |
+
max-width:200px;
|
2111 |
+
}
|
2112 |
+
|
2113 |
+
.ms-skin-light-6 .ms-tooltip-cont {
|
2114 |
+
padding: 10px;
|
2115 |
+
background: silver;
|
2116 |
+
background: rgba(240, 240, 240, 0.88);
|
2117 |
+
text-shadow: 0 1px 0px white;
|
2118 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
2119 |
+
}
|
2120 |
+
|
2121 |
+
/* retina */
|
2122 |
+
@media
|
2123 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
2124 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
2125 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
2126 |
+
only screen and ( min-device-pixel-ratio: 2),
|
2127 |
+
only screen and ( min-resolution: 192dpi),
|
2128 |
+
only screen and ( min-resolution: 2dppx) {
|
2129 |
+
|
2130 |
+
.ms-skin-light-6 .ms-slide .ms-slide-vpbtn,
|
2131 |
+
.ms-skin-light-6 .ms-video-btn,
|
2132 |
+
.ms-skin-light-6 .ms-slide .ms-slide-vcbtn,
|
2133 |
+
.ms-skin-light-6 .ms-nav-next,
|
2134 |
+
.ms-skin-light-6 .ms-nav-prev{
|
2135 |
+
background-image:url(skins/light-skin-6-retina.png);
|
2136 |
+
background-size: 152px 225px;
|
2137 |
+
}
|
2138 |
+
|
2139 |
+
}
|
2140 |
+
|
2141 |
+
|
2142 |
+
|
2143 |
+
/**
|
2144 |
+
* Master Slider
|
2145 |
+
* Metro Skin
|
2146 |
+
*/
|
2147 |
+
|
2148 |
+
.ms-skin-metro .ms-slide .ms-slide-vpbtn,
|
2149 |
+
.ms-skin-metro .ms-video-btn{
|
2150 |
+
width: 47px;
|
2151 |
+
height: 46px;
|
2152 |
+
background: url(skins/metro-skin.png) no-repeat -16px -152px;
|
2153 |
+
top: 50%;
|
2154 |
+
left: 50%;
|
2155 |
+
margin: -22px 0 0 -24px;
|
2156 |
+
}
|
2157 |
+
|
2158 |
+
.ms-skin-metro .ms-slide .ms-slide-vcbtn {
|
2159 |
+
width: 47px;
|
2160 |
+
height: 47px;
|
2161 |
+
background: url(skins/metro-skin.png) no-repeat -16px -19px;
|
2162 |
+
top: 15px;
|
2163 |
+
right: 15px;
|
2164 |
+
}
|
2165 |
+
|
2166 |
+
/* controls */
|
2167 |
+
|
2168 |
+
.ms-skin-metro .ms-nav-next,
|
2169 |
+
.ms-skin-metro .ms-nav-prev {
|
2170 |
+
width: 47px;
|
2171 |
+
background: url(skins/metro-skin.png);
|
2172 |
+
background-position: -83px -23px;
|
2173 |
+
height: 47px;
|
2174 |
+
cursor: pointer;
|
2175 |
+
top: 50%;
|
2176 |
+
left: 30px;
|
2177 |
+
margin-top: -24px;
|
2178 |
+
position: absolute;
|
2179 |
+
z-index: 110;
|
2180 |
+
}
|
2181 |
+
.ms-skin-metro .ms-nav-next {
|
2182 |
+
right: 30px;
|
2183 |
+
left: auto;
|
2184 |
+
background-position: -81px -100px;
|
2185 |
+
}
|
2186 |
+
|
2187 |
+
.ms-skin-metro .ms-bullets.ms-dir-h {
|
2188 |
+
position: absolute;
|
2189 |
+
bottom: 20px;
|
2190 |
+
right: 50%;
|
2191 |
+
width: 100px;
|
2192 |
+
}
|
2193 |
+
|
2194 |
+
.ms-skin-metro .ms-bullets.ms-dir-h .ms-bullets-count {
|
2195 |
+
position: relative;
|
2196 |
+
right: -50%;
|
2197 |
+
}
|
2198 |
+
|
2199 |
+
.ms-skin-metro .ms-bullet {
|
2200 |
+
width: 16px;
|
2201 |
+
height: 16px;
|
2202 |
+
background: url(skins/metro-skin.png) no-repeat;
|
2203 |
+
background-position: -31px -114px;
|
2204 |
+
margin: 4px;
|
2205 |
+
}
|
2206 |
+
|
2207 |
+
.ms-skin-metro .ms-bullet-selected {
|
2208 |
+
background-position: -31px -81px;
|
2209 |
+
}
|
2210 |
+
|
2211 |
+
.ms-skin-metro .ms-tooltip{
|
2212 |
+
position: absolute;
|
2213 |
+
z-index: 210;
|
2214 |
+
cursor: auto;
|
2215 |
+
}
|
2216 |
+
|
2217 |
+
.ms-skin-metro .ms-tooltip-top .ms-tooltip-arrow,
|
2218 |
+
.ms-skin-metro .ms-tooltip-bottom .ms-tooltip-arrow{
|
2219 |
+
border-left: solid 10px transparent;
|
2220 |
+
border-right: solid 10px transparent;
|
2221 |
+
position: absolute;
|
2222 |
+
left: 50%;
|
2223 |
+
margin-left: -10px;
|
2224 |
+
}
|
2225 |
+
|
2226 |
+
.ms-skin-metro .ms-tooltip-top .ms-tooltip-arrow{
|
2227 |
+
border-top: solid 10px;
|
2228 |
+
border-top-color: silver;
|
2229 |
+
border-top-color: rgba(240, 240, 240, 0.88);
|
2230 |
+
bottom: -10px;
|
2231 |
+
}
|
2232 |
+
|
2233 |
+
.ms-skin-metro .ms-tooltip-bottom .ms-tooltip-arrow {
|
2234 |
+
border-bottom: solid 10px;
|
2235 |
+
border-bottom-color: silver;
|
2236 |
+
border-bottom-color: rgba(240, 240, 240, 0.88);
|
2237 |
+
top: -10px;
|
2238 |
+
}
|
2239 |
+
|
2240 |
+
.ms-skin-metro .ms-tooltip-right .ms-tooltip-arrow,
|
2241 |
+
.ms-skin-metro .ms-tooltip-left .ms-tooltip-arrow{
|
2242 |
+
border-top: solid 10px transparent;
|
2243 |
+
border-bottom: solid 10px transparent;
|
2244 |
+
position: absolute;
|
2245 |
+
top: 50%;
|
2246 |
+
margin-top: -10px;
|
2247 |
+
}
|
2248 |
+
|
2249 |
+
.ms-skin-metro .ms-tooltip-right .ms-tooltip-arrow{
|
2250 |
+
border-right: solid 10px;
|
2251 |
+
border-right-color: silver;
|
2252 |
+
border-right-color: rgba(240, 240, 240, 0.88);
|
2253 |
+
left: -10px;
|
2254 |
+
}
|
2255 |
+
|
2256 |
+
.ms-skin-metro .ms-tooltip-left .ms-tooltip-arrow {
|
2257 |
+
border-left: solid 10px;
|
2258 |
+
border-left-color: silver;
|
2259 |
+
border-left-color: rgba(240, 240, 240, 0.88);
|
2260 |
+
right: -10px;
|
2261 |
+
}
|
2262 |
+
|
2263 |
+
.ms-skin-metro .ms-tooltip-point {cursor: pointer;}
|
2264 |
+
.ms-skin-metro .ms-tooltip-point .ms-point-center {
|
2265 |
+
width: 12px;
|
2266 |
+
height: 12px;
|
2267 |
+
border-radius: 15px;
|
2268 |
+
border: solid 2px #BBB;
|
2269 |
+
background: white;
|
2270 |
+
margin: -8px 0 0 -8px;
|
2271 |
+
position: absolute;
|
2272 |
+
z-index: 105;
|
2273 |
+
}
|
2274 |
+
|
2275 |
+
.ms-skin-metro .ms-tooltip-point .ms-point-border {
|
2276 |
+
width: 22px;
|
2277 |
+
height: 22px;
|
2278 |
+
background: black;
|
2279 |
+
background:rgba(0, 0, 0, 0.36);
|
2280 |
+
margin: -11px 0 0 -11px;
|
2281 |
+
position: absolute;
|
2282 |
+
border-radius: 15px;
|
2283 |
+
|
2284 |
+
animation: point-anim 1.5s infinite ;
|
2285 |
+
-moz-animation: point-anim 1.5s infinite;
|
2286 |
+
-webkit-animation: point-anim 1.5s infinite;
|
2287 |
+
-o-animation: point-anim 1.5s infinite;
|
2288 |
+
}
|
2289 |
+
|
2290 |
+
.ms-skin-metro .ms-tooltip {
|
2291 |
+
max-width:200px;
|
2292 |
+
}
|
2293 |
+
|
2294 |
+
.ms-skin-metro .ms-tooltip-cont {
|
2295 |
+
padding: 10px;
|
2296 |
+
background: silver;
|
2297 |
+
background: rgba(240, 240, 240, 0.88);
|
2298 |
+
text-shadow: 0 1px 0px white;
|
2299 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
2300 |
+
}
|
2301 |
+
|
2302 |
+
/* retina */
|
2303 |
+
@media
|
2304 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
2305 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
2306 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
2307 |
+
only screen and ( min-device-pixel-ratio: 2),
|
2308 |
+
only screen and ( min-resolution: 192dpi),
|
2309 |
+
only screen and ( min-resolution: 2dppx) {
|
2310 |
+
|
2311 |
+
.ms-skin-metro .ms-slide .ms-slide-vpbtn,
|
2312 |
+
.ms-skin-metro .ms-video-btn,
|
2313 |
+
.ms-skin-metro .ms-slide .ms-slide-vcbtn,
|
2314 |
+
.ms-skin-metro .ms-nav-next,
|
2315 |
+
.ms-skin-metro .ms-nav-prev,
|
2316 |
+
.ms-skin-metro .ms-bullet{
|
2317 |
+
background-image:url(skins/metro-skin-retina.png);
|
2318 |
+
background-size: 152px 225px;
|
2319 |
+
}
|
2320 |
+
|
2321 |
+
}
|
2322 |
+
|
2323 |
+
|
2324 |
+
/**
|
2325 |
+
* Master Slider
|
2326 |
+
* Contrast
|
2327 |
+
*/
|
2328 |
+
|
2329 |
+
.ms-skin-contrast .ms-slide .ms-slide-vpbtn,
|
2330 |
+
.ms-skin-contrast .ms-video-btn{
|
2331 |
+
width: 60px;
|
2332 |
+
height: 60px;
|
2333 |
+
background: url(skins/contrast-skin.png) no-repeat -10px -144px;
|
2334 |
+
top: 50%;
|
2335 |
+
left: 50%;
|
2336 |
+
margin: -30px 0 0 -30px;
|
2337 |
+
}
|
2338 |
+
|
2339 |
+
.ms-skin-contrast .ms-slide .ms-slide-vcbtn {
|
2340 |
+
width: 24px;
|
2341 |
+
height: 24px;
|
2342 |
+
background: url(skins/contrast-skin.png) no-repeat -27px -30px;
|
2343 |
+
top: 30px;
|
2344 |
+
right: 30px;
|
2345 |
+
}
|
2346 |
+
|
2347 |
+
/* controls */
|
2348 |
+
|
2349 |
+
.ms-skin-contrast .ms-nav-next,
|
2350 |
+
.ms-skin-contrast .ms-nav-prev {
|
2351 |
+
width: 60px;
|
2352 |
+
background: url(skins/contrast-skin.png);
|
2353 |
+
background-position: -76px -17px;
|
2354 |
+
height: 60px;
|
2355 |
+
cursor: pointer;
|
2356 |
+
top: 50%;
|
2357 |
+
left: 30px;
|
2358 |
+
margin-top: -30px;
|
2359 |
+
position: absolute;
|
2360 |
+
z-index: 110;
|
2361 |
+
}
|
2362 |
+
.ms-skin-contrast .ms-nav-next {
|
2363 |
+
right: 30px;
|
2364 |
+
left: auto;
|
2365 |
+
background-position: -77px -91px;
|
2366 |
+
}
|
2367 |
+
|
2368 |
+
.ms-skin-contrast .ms-bullets.ms-dir-h {
|
2369 |
+
position: absolute;
|
2370 |
+
bottom: 20px;
|
2371 |
+
right: 50%;
|
2372 |
+
width: 100px;
|
2373 |
+
}
|
2374 |
+
|
2375 |
+
.ms-skin-contrast .ms-bullets.ms-dir-h .ms-bullets-count {
|
2376 |
+
position: relative;
|
2377 |
+
right: -50%;
|
2378 |
+
}
|
2379 |
+
|
2380 |
+
.ms-skin-contrast .ms-bullet {
|
2381 |
+
width: 16px;
|
2382 |
+
height: 16px;
|
2383 |
+
background: url(skins/contrast-skin.png) no-repeat;
|
2384 |
+
background-position: -31px -114px;
|
2385 |
+
margin: 4px;
|
2386 |
+
}
|
2387 |
+
|
2388 |
+
.ms-skin-contrast .ms-bullet-selected {
|
2389 |
+
background-position: -31px -81px;
|
2390 |
+
}
|
2391 |
+
|
2392 |
+
.ms-skin-contrast .ms-tooltip{
|
2393 |
+
position: absolute;
|
2394 |
+
z-index: 210;
|
2395 |
+
cursor: auto;
|
2396 |
+
}
|
2397 |
+
|
2398 |
+
.ms-skin-contrast .ms-tooltip-top .ms-tooltip-arrow,
|
2399 |
+
.ms-skin-contrast .ms-tooltip-bottom .ms-tooltip-arrow{
|
2400 |
+
border-left: solid 10px transparent;
|
2401 |
+
border-right: solid 10px transparent;
|
2402 |
+
position: absolute;
|
2403 |
+
left: 50%;
|
2404 |
+
margin-left: -10px;
|
2405 |
+
}
|
2406 |
+
|
2407 |
+
.ms-skin-contrast .ms-tooltip-top .ms-tooltip-arrow{
|
2408 |
+
border-top: solid 10px;
|
2409 |
+
border-top-color: #fc3116;
|
2410 |
+
border-top-color: rgba(252, 49, 22, 0.8);
|
2411 |
+
bottom: -10px;
|
2412 |
+
}
|
2413 |
+
|
2414 |
+
.ms-skin-contrast .ms-tooltip-bottom .ms-tooltip-arrow {
|
2415 |
+
border-bottom: solid 10px;
|
2416 |
+
border-bottom-color: #fc3116;
|
2417 |
+
border-bottom-color: rgba(252, 49, 22, 0.8);
|
2418 |
+
top: -10px;
|
2419 |
+
}
|
2420 |
+
|
2421 |
+
.ms-skin-contrast .ms-tooltip-right .ms-tooltip-arrow,
|
2422 |
+
.ms-skin-contrast .ms-tooltip-left .ms-tooltip-arrow{
|
2423 |
+
border-top: solid 10px transparent;
|
2424 |
+
border-bottom: solid 10px transparent;
|
2425 |
+
position: absolute;
|
2426 |
+
top: 50%;
|
2427 |
+
margin-top: -10px;
|
2428 |
+
}
|
2429 |
+
|
2430 |
+
.ms-skin-contrast .ms-tooltip-right .ms-tooltip-arrow{
|
2431 |
+
border-right: solid 10px;
|
2432 |
+
border-right-color: #fc3116;
|
2433 |
+
border-right-color: rgba(252, 49, 22, 0.8);
|
2434 |
+
left: -10px;
|
2435 |
+
}
|
2436 |
+
|
2437 |
+
.ms-skin-contrast .ms-tooltip-left .ms-tooltip-arrow {
|
2438 |
+
border-left: solid 10px;
|
2439 |
+
border-left-color: #fc3116;
|
2440 |
+
border-left-color: rgba(252, 49, 22, 0.8);
|
2441 |
+
right: -10px;
|
2442 |
+
}
|
2443 |
+
|
2444 |
+
.ms-skin-contrast .ms-tooltip-point {cursor: pointer;}
|
2445 |
+
.ms-skin-contrast .ms-tooltip-point .ms-point-center {
|
2446 |
+
width: 12px;
|
2447 |
+
height: 12px;
|
2448 |
+
border-radius: 15px;
|
2449 |
+
border: solid 2px #636363;
|
2450 |
+
background: black;
|
2451 |
+
margin: -8px 0 0 -8px;
|
2452 |
+
position: absolute;
|
2453 |
+
z-index: 105;
|
2454 |
+
}
|
2455 |
+
|
2456 |
+
.ms-skin-contrast .ms-tooltip-point .ms-point-border {
|
2457 |
+
width: 22px;
|
2458 |
+
height: 22px;
|
2459 |
+
background: white;
|
2460 |
+
background: rgba(255, 255, 255, 0.99);
|
2461 |
+
margin: -11px 0 0 -11px;
|
2462 |
+
position: absolute;
|
2463 |
+
border-radius: 15px;
|
2464 |
+
|
2465 |
+
animation: point-anim 1.5s infinite ;
|
2466 |
+
-moz-animation: point-anim 1.5s infinite;
|
2467 |
+
-webkit-animation: point-anim 1.5s infinite;
|
2468 |
+
-o-animation: point-anim 1.5s infinite;
|
2469 |
+
}
|
2470 |
+
|
2471 |
+
.ms-skin-contrast .ms-tooltip {
|
2472 |
+
max-width:200px;
|
2473 |
+
}
|
2474 |
+
|
2475 |
+
.ms-skin-contrast .ms-tooltip-cont {
|
2476 |
+
padding: 10px;
|
2477 |
+
background: #fc3116;
|
2478 |
+
background: rgba(252, 49, 22, 0.8);
|
2479 |
+
text-shadow: 0 1px 0px rgba(0, 0, 0, 0.4);
|
2480 |
+
color: white;
|
2481 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.04);
|
2482 |
+
}
|
2483 |
+
|
2484 |
+
/* retina */
|
2485 |
+
@media
|
2486 |
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
2487 |
+
only screen and ( min--moz-device-pixel-ratio: 2),
|
2488 |
+
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
2489 |
+
only screen and ( min-device-pixel-ratio: 2),
|
2490 |
+
only screen and ( min-resolution: 192dpi),
|
2491 |
+
only screen and ( min-resolution: 2dppx) {
|
2492 |
+
|
2493 |
+
.ms-skin-contrast .ms-slide .ms-slide-vpbtn,
|
2494 |
+
.ms-skin-contrast .ms-video-btn,
|
2495 |
+
.ms-skin-contrast .ms-slide .ms-slide-vcbtn,
|
2496 |
+
.ms-skin-contrast .ms-nav-next,
|
2497 |
+
.ms-skin-contrast .ms-nav-prev,
|
2498 |
+
.ms-skin-contrast .ms-bullet{
|
2499 |
+
background-image:url(skins/contrast-skin-retina.png);
|
2500 |
+
background-size: 152px 225px;
|
2501 |
+
}
|
2502 |
+
|
2503 |
+
}
|
public/class-master-slider.php
CHANGED
@@ -17,307 +17,307 @@ if ( ! class_exists( 'Master_Slider' ) ) :
|
|
17 |
*/
|
18 |
class Master_Slider {
|
19 |
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
|
|
|
|
|
|
102 |
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
load_textdomain( MSWP_TEXT_DOMAIN, trailingslashit( WP_LANG_DIR ) . MSWP_TEXT_DOMAIN . '/' . MSWP_TEXT_DOMAIN . '-' . $locale . '.mo' );
|
319 |
-
load_plugin_textdomain( MSWP_TEXT_DOMAIN, FALSE, basename( MSWP_AVERTA_DIR ) . '/languages/' );
|
320 |
-
}
|
321 |
|
322 |
}
|
323 |
|
@@ -328,13 +328,13 @@ MSP();
|
|
328 |
|
329 |
|
330 |
class MSP_AttachmentFields {
|
331 |
-
|
332 |
private $fields = array();
|
333 |
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
|
339 |
public function add($field){
|
340 |
if(is_array($field))
|
@@ -349,18 +349,18 @@ class MSP_AttachmentFields {
|
|
349 |
public function addFields( $form_fields, $post ){
|
350 |
|
351 |
$form_fields['image_rating'] = array(
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
|
365 |
return $form_fields;
|
366 |
}
|
17 |
*/
|
18 |
class Master_Slider {
|
19 |
|
20 |
+
/**
|
21 |
+
* Instance of this class.
|
22 |
+
*
|
23 |
+
* @since 1.0.0
|
24 |
+
*
|
25 |
+
* @var object
|
26 |
+
*/
|
27 |
+
protected static $instance = null;
|
28 |
+
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Instance of Master_Slider_Admin class.
|
32 |
+
*
|
33 |
+
* @since 1.0.0
|
34 |
+
*
|
35 |
+
* @var object
|
36 |
+
*/
|
37 |
+
public $admin = null;
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Initialize the plugin
|
43 |
+
*
|
44 |
+
* @since 1.0.0
|
45 |
+
*/
|
46 |
+
private function __construct() {
|
47 |
+
|
48 |
+
$this->includes();
|
49 |
+
|
50 |
+
add_action( 'init', array( $this, 'init' ) );
|
51 |
+
|
52 |
+
// Activate plugin when new blog is added
|
53 |
+
add_action( 'wpmu_new_blog', array( $this, 'activate_new_site' ) );
|
54 |
+
|
55 |
+
// Loaded action
|
56 |
+
do_action( 'masterslider_loaded' );
|
57 |
+
}
|
58 |
+
|
59 |
+
|
60 |
+
/**
|
61 |
+
*
|
62 |
+
* @return [type] [description]
|
63 |
+
*/
|
64 |
+
private function includes() {
|
65 |
+
|
66 |
+
// load common functionalities
|
67 |
+
include_once( MSWP_AVERTA_INC_DIR . '/index.php' );
|
68 |
+
|
69 |
+
|
70 |
+
// Dashboard and Administrative Functionality
|
71 |
+
if ( is_admin() ) {
|
72 |
+
|
73 |
+
// Load AJAX spesific codes on demand
|
74 |
+
if ( defined('DOING_AJAX') && DOING_AJAX ){
|
75 |
+
include_once( MSWP_AVERTA_ADMIN_DIR . '/includes/classes/class-msp-admin-ajax.php');
|
76 |
+
include_once( MSWP_AVERTA_ADMIN_DIR . '/includes/msp-admin-functions.php');
|
77 |
+
}
|
78 |
+
|
79 |
+
// Load admin spesific codes
|
80 |
+
else {
|
81 |
+
$this->admin = include( MSWP_AVERTA_ADMIN_DIR . '/class-master-slider-admin.php' );
|
82 |
+
}
|
83 |
+
|
84 |
+
// Load Frontend Functionality
|
85 |
+
} else {
|
86 |
+
|
87 |
+
include_once( 'includes/class-msp-frontend-assets.php' );
|
88 |
+
}
|
89 |
+
|
90 |
+
}
|
91 |
+
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Init Masterslider when WordPress Initialises.
|
95 |
+
*
|
96 |
+
* @return void
|
97 |
+
*/
|
98 |
+
public function init(){
|
99 |
+
|
100 |
+
// Before init action
|
101 |
+
do_action( 'before_masterslider_init' );
|
102 |
+
|
103 |
+
// Load plugin text domain
|
104 |
+
$this->load_plugin_textdomain();
|
105 |
|
106 |
+
// Init action
|
107 |
+
do_action( 'masterslider_init' );
|
108 |
+
}
|
109 |
+
|
110 |
+
|
111 |
+
/**
|
112 |
+
* Return an instance of this class.
|
113 |
+
*
|
114 |
+
* @since 1.0.0
|
115 |
+
*
|
116 |
+
* @return object A single instance of this class.
|
117 |
+
*/
|
118 |
+
public static function get_instance() {
|
119 |
+
|
120 |
+
// If the single instance hasn't been set, set it now.
|
121 |
+
if ( null == self::$instance ) {
|
122 |
+
self::$instance = new self;
|
123 |
+
}
|
124 |
+
|
125 |
+
return self::$instance;
|
126 |
+
}
|
127 |
+
|
128 |
+
/**
|
129 |
+
* Fired when the plugin is activated.
|
130 |
+
*
|
131 |
+
* @since 1.0.0
|
132 |
+
*
|
133 |
+
* @param boolean $network_wide True if WPMU superadmin uses
|
134 |
+
* "Network Activate" action, false if
|
135 |
+
* WPMU is disabled or plugin is
|
136 |
+
* activated on an individual blog.
|
137 |
+
*/
|
138 |
+
public static function activate( $network_wide ) {
|
139 |
+
|
140 |
+
if ( function_exists( 'is_multisite' ) && is_multisite() ) {
|
141 |
+
|
142 |
+
if ( $network_wide ) {
|
143 |
+
|
144 |
+
// Get all blog ids
|
145 |
+
$blog_ids = self::get_blog_ids();
|
146 |
+
|
147 |
+
foreach ( $blog_ids as $blog_id ) {
|
148 |
+
|
149 |
+
switch_to_blog( $blog_id );
|
150 |
+
self::single_activate();
|
151 |
+
}
|
152 |
+
|
153 |
+
restore_current_blog();
|
154 |
+
|
155 |
+
} else {
|
156 |
+
self::single_activate();
|
157 |
+
}
|
158 |
+
|
159 |
+
} else {
|
160 |
+
self::single_activate();
|
161 |
+
}
|
162 |
+
|
163 |
+
}
|
164 |
+
|
165 |
+
/**
|
166 |
+
* Fired when the plugin is deactivated.
|
167 |
+
*
|
168 |
+
* @since 1.0.0
|
169 |
+
*
|
170 |
+
* @param boolean $network_wide True if WPMU superadmin uses
|
171 |
+
* "Network Deactivate" action, false if
|
172 |
+
* WPMU is disabled or plugin is
|
173 |
+
* deactivated on an individual blog.
|
174 |
+
*/
|
175 |
+
public static function deactivate( $network_wide ) {
|
176 |
+
|
177 |
+
if ( function_exists( 'is_multisite' ) && is_multisite() ) {
|
178 |
+
|
179 |
+
if ( $network_wide ) {
|
180 |
+
|
181 |
+
// Get all blog ids
|
182 |
+
$blog_ids = self::get_blog_ids();
|
183 |
+
|
184 |
+
foreach ( $blog_ids as $blog_id ) {
|
185 |
+
|
186 |
+
switch_to_blog( $blog_id );
|
187 |
+
self::single_deactivate();
|
188 |
+
|
189 |
+
}
|
190 |
+
|
191 |
+
restore_current_blog();
|
192 |
+
|
193 |
+
} else {
|
194 |
+
self::single_deactivate();
|
195 |
+
}
|
196 |
+
|
197 |
+
} else {
|
198 |
+
self::single_deactivate();
|
199 |
+
}
|
200 |
+
|
201 |
+
}
|
202 |
+
|
203 |
+
/**
|
204 |
+
* Fired when a new site is activated with a WPMU environment.
|
205 |
+
*
|
206 |
+
* @since 1.0.0
|
207 |
+
*
|
208 |
+
* @param int $blog_id ID of the new blog.
|
209 |
+
*/
|
210 |
+
public function activate_new_site( $blog_id ) {
|
211 |
+
|
212 |
+
if ( 1 !== did_action( 'wpmu_new_blog' ) ) {
|
213 |
+
return;
|
214 |
+
}
|
215 |
+
|
216 |
+
switch_to_blog( $blog_id );
|
217 |
+
self::single_activate();
|
218 |
+
restore_current_blog();
|
219 |
+
|
220 |
+
}
|
221 |
+
|
222 |
+
/**
|
223 |
+
* Get all blog ids of blogs in the current network that are:
|
224 |
+
* - not archived
|
225 |
+
* - not spam
|
226 |
+
* - not deleted
|
227 |
+
*
|
228 |
+
* @since 1.0.0
|
229 |
+
*
|
230 |
+
* @return array|false The blog ids, false if no matches.
|
231 |
+
*/
|
232 |
+
private static function get_blog_ids() {
|
233 |
+
|
234 |
+
global $wpdb;
|
235 |
+
|
236 |
+
// get an array of blog ids
|
237 |
+
$sql = "SELECT blog_id FROM $wpdb->blogs
|
238 |
+
WHERE archived = '0' AND spam = '0'
|
239 |
+
AND deleted = '0'";
|
240 |
+
|
241 |
+
return $wpdb->get_col( $sql );
|
242 |
+
|
243 |
+
}
|
244 |
+
|
245 |
+
/**
|
246 |
+
* Fired for each blog when the plugin is activated.
|
247 |
+
*
|
248 |
+
* @since 1.0.0
|
249 |
+
*/
|
250 |
+
private static function single_activate() {
|
251 |
+
|
252 |
+
global $mspdb;
|
253 |
+
$mspdb->create_tables();
|
254 |
+
|
255 |
+
// add masterslider custom caps
|
256 |
+
self::assign_custom_caps();
|
257 |
+
do_action( 'masterslider_activated', get_current_blog_id() );
|
258 |
+
}
|
259 |
+
|
260 |
+
/**
|
261 |
+
* Assign masterslider custom capabilities to main roles
|
262 |
+
* @return void
|
263 |
+
*/
|
264 |
+
public static function assign_custom_caps( $force_update = false ){
|
265 |
+
|
266 |
+
// check if custom capabilities are added before or not
|
267 |
+
$is_added = get_option( 'masterslider_capabilities_added', 0 );
|
268 |
+
|
269 |
+
// add caps if they are not already added
|
270 |
+
if( ! $is_added || $force_update ) {
|
271 |
+
|
272 |
+
// assign masterslider capabilities to following roles
|
273 |
+
$roles = array( 'administrator', 'editor' );
|
274 |
+
|
275 |
+
foreach ( $roles as $role ) {
|
276 |
+
if( ! $role = get_role( $role ) )
|
277 |
+
continue;
|
278 |
+
$role->add_cap( 'access_masterslider' );
|
279 |
+
$role->add_cap( 'publish_masterslider' );
|
280 |
+
$role->add_cap( 'delete_masterslider' );
|
281 |
+
$role->add_cap( 'create_masterslider' );
|
282 |
+
$role->add_cap( 'export_masterslider' );
|
283 |
+
$role->add_cap( 'duplicate_masterslider' );
|
284 |
+
}
|
285 |
+
|
286 |
+
update_option( 'masterslider_capabilities_added', 1 );
|
287 |
+
}
|
288 |
+
}
|
289 |
+
|
290 |
+
|
291 |
+
/**
|
292 |
+
* Set default options
|
293 |
+
*
|
294 |
+
* @since 1.0.0
|
295 |
+
*/
|
296 |
+
public static function set_default_options( $force_update = false ){
|
297 |
+
|
298 |
+
}
|
299 |
+
|
300 |
+
|
301 |
+
/**
|
302 |
+
* Fired for each blog when the plugin is deactivated.
|
303 |
+
*
|
304 |
+
* @since 1.0.0
|
305 |
+
*/
|
306 |
+
private static function single_deactivate() {
|
307 |
+
do_action( 'masterslider_deactivated' );
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* Load the plugin text domain for translation.
|
312 |
+
*
|
313 |
+
* @since 1.0.0
|
314 |
+
*/
|
315 |
+
public function load_plugin_textdomain() {
|
316 |
+
|
317 |
+
$locale = apply_filters( 'plugin_locale', get_locale(), 'master-slider' );
|
318 |
+
load_textdomain( 'master-slider', trailingslashit( WP_LANG_DIR ) . 'master-slider' . '/' . 'master-slider' . '-' . $locale . '.mo' );
|
319 |
+
load_plugin_textdomain( 'master-slider', FALSE, basename( MSWP_AVERTA_DIR ) . '/languages/' );
|
320 |
+
}
|
|
|
|
|
|
|
321 |
|
322 |
}
|
323 |
|
328 |
|
329 |
|
330 |
class MSP_AttachmentFields {
|
331 |
+
|
332 |
private $fields = array();
|
333 |
|
334 |
+
function __construct($fields = null) {
|
335 |
+
if(isset($fields) && is_array($fields))
|
336 |
+
$this->$fields = $fields;
|
337 |
+
}
|
338 |
|
339 |
public function add($field){
|
340 |
if(is_array($field))
|
349 |
public function addFields( $form_fields, $post ){
|
350 |
|
351 |
$form_fields['image_rating'] = array(
|
352 |
+
'label' => __( 'rating', "default" ),
|
353 |
+
'input' => 'radio',
|
354 |
+
'options' => array(
|
355 |
+
'1' => 1,
|
356 |
+
'2' => 2,
|
357 |
+
'3' => 3,
|
358 |
+
'4' => 4,
|
359 |
+
'5' => 5
|
360 |
+
),
|
361 |
+
'application' => 'image',
|
362 |
+
'exclusions' => array( 'audio', 'video' )
|
363 |
+
);
|
364 |
|
365 |
return $form_fields;
|
366 |
}
|