Custom Product Tabs for WooCommerce - Version 1.6.2

Version Description

  • October 13th, 2017 =
  • Fixed a PHP Fatal Error that was occurring for users with PHP versions < 5.5.
  • Updated some of our documentation and language
Download this release

Release Info

Developer yikesitskevin
Plugin Icon 128x128 Custom Product Tabs for WooCommerce
Version 1.6.2
Comparing to
See all releases

Code changes from version 1.6.1 to 1.6.2

admin/class.export.php CHANGED
@@ -20,7 +20,12 @@ class YIKES_Custom_Product_Tabs_Export {
20
  }
21
 
22
  public function add_custom_product_tabs_data_to_product_export( $value, $product, $column_id ) {
23
- return ! empty ( get_post_meta( $product->get_id(), 'yikes_woo_products_tabs', true ) ) ? serialize( get_post_meta( $product->get_id(), 'yikes_woo_products_tabs', true ) ) : '';
 
 
 
 
 
24
  }
25
  }
26
 
20
  }
21
 
22
  public function add_custom_product_tabs_data_to_product_export( $value, $product, $column_id ) {
23
+
24
+ $tabs = get_post_meta( $product->get_id(), 'yikes_woo_products_tabs', true );
25
+
26
+ $tabs = ! empty( $tabs ) ? serialize( $tabs ) : '';
27
+
28
+ return $tabs;
29
  }
30
  }
31
 
admin/class.premium.php CHANGED
@@ -82,11 +82,7 @@
82
  <p><?php _e( 'Leave a review!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?> </p>
83
  <p class="star-container">
84
  <a href="https://wordpress.org/support/plugin/yikes-inc-easy-custom-woocommerce-product-tabs/reviews/?rate=5#new-post" target="_blank">
85
- <span class="dashicons dashicons-star-filled"></span>
86
- <span class="dashicons dashicons-star-filled"></span>
87
- <span class="dashicons dashicons-star-filled"></span>
88
- <span class="dashicons dashicons-star-filled"></span>
89
- <span class="dashicons dashicons-star-filled"></span>
90
  </a>
91
  </p>
92
  </div>
@@ -97,7 +93,7 @@
97
 
98
  <p><?php _e( 'Tweet about us!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></p>
99
  <a class="twitter-share-button"
100
- href="https://twitter.com/intent/tweet?text=I'm using Custom Product Tabs for WooCommerce by @yikesinc to help sell products online. It's awesome! &url=https://wordpress.org/plugins/yikes-inc-easy-custom-woocommerce-product-tabs/"
101
  data-size="large">
102
  <?php _e( 'Tweet', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></a>
103
  </div>
@@ -110,7 +106,7 @@
110
  <h3 class="yikes-woo-buy-us-title">Custom Product Tabs Pro</h3>
111
  <div class="yikes-woo-buy-us-body">
112
  <h4><?php _e( 'Check out Custom Product Tabs Pro!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?> </h4>
113
- <p><?php _e( 'Create global tabs, add tabs to products based on taxonomies, add your tabs to the search, and more.', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></p>
114
  <a class="button button-primary" href="https://yikesplugins.com/plugin/custom-product-tabs-pro/" target="_blank">
115
  <?php _e( 'Custom Product Tabs Pro', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?>
116
  </a>
82
  <p><?php _e( 'Leave a review!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?> </p>
83
  <p class="star-container">
84
  <a href="https://wordpress.org/support/plugin/yikes-inc-easy-custom-woocommerce-product-tabs/reviews/?rate=5#new-post" target="_blank">
85
+ <span class="dashicons dashicons-star-filled"></span><span class="dashicons dashicons-star-filled"></span><span class="dashicons dashicons-star-filled"></span><span class="dashicons dashicons-star-filled"></span><span class="dashicons dashicons-star-filled"></span>
 
 
 
 
86
  </a>
87
  </p>
88
  </div>
93
 
94
  <p><?php _e( 'Tweet about us!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></p>
95
  <a class="twitter-share-button"
96
+ href="https://twitter.com/intent/tweet?text=I use Custom Product Tabs for WooCommerce by @yikesinc to help sell products online. Awesome #WordPress #plugins &url=https://wordpress.org/plugins/yikes-inc-easy-custom-woocommerce-product-tabs/"
97
  data-size="large">
98
  <?php _e( 'Tweet', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></a>
99
  </div>
106
  <h3 class="yikes-woo-buy-us-title">Custom Product Tabs Pro</h3>
107
  <div class="yikes-woo-buy-us-body">
108
  <h4><?php _e( 'Check out Custom Product Tabs Pro!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?> </h4>
109
+ <p><?php _e( 'Create global tabs, add tabs to products based on categories or tags, add tab content to search results, and more!', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?></p>
110
  <a class="button button-primary" href="https://yikesplugins.com/plugin/custom-product-tabs-pro/" target="_blank">
111
  <?php _e( 'Custom Product Tabs Pro', 'yikes-inc-easy-custom-woocommerce-product-tabs' ); ?>
112
  </a>
css/repeatable-custom-tabs.css CHANGED
@@ -1 +1 @@
1
-
2
  Global
3
  ========================================================================== */
4
- ---------------------------------------------- */
5
  Woo Product Editing Screen
6
  ========================================================================== */
7
  font-family: Dashicons;
8
  content: '\f164';
9
- ---------------------------------------------- */
10
  position: absolute;
11
  right: 1em;
12
  top: 12px;
13
- ---------------------------------------------- */
14
  border-top: 1px solid #a0a5aa;
15
- ---------------------------------------------- */
16
  width: 100%;
17
  white-space: nowrap;
18
- ---------------------------------------------- */
19
  Settings Pages
20
  ========================================================================== */
21
- ---------------------------------------------- */
22
- ---------------------------------------------- */
23
- ---------------------------------------------- */
24
  border-top: 1px solid #ccc;
25
  margin-top: 2rem;
26
  padding-top: 1rem;
27
  Promotional Items
28
  ========================================================================== */
29
- ---------------------------------------------- */
30
- ---------------------------------------------- */
31
  Responsive Styles
32
  ========================================================================== */
33
  width: 22%;
34
  text-align: center;
35
  display: inline-block;
36
  }
37
  .button-holder .button-secondary.remove_this_tab {
 
38
  Global
39
  ========================================================================== */
40
- ---------------------------------------------- */
41
  Woo Product Editing Screen
42
  ========================================================================== */
43
  font-family: Dashicons;
44
  content: '\f164';
45
- ---------------------------------------------- */
46
  position: absolute;
47
  right: 1em;
48
  top: 12px;
49
- ---------------------------------------------- */
50
  border-top: 1px solid #a0a5aa;
51
- ---------------------------------------------- */
52
  width: 100%;
53
  white-space: nowrap;
54
- ---------------------------------------------- */
55
  Settings Pages
56
  ========================================================================== */
57
- ---------------------------------------------- */
58
- ---------------------------------------------- */
59
- ---------------------------------------------- */
60
  border-top: 1px solid #ccc;
61
  margin-top: 2rem;
62
  padding-top: 1rem;
63
  Promotional Items
64
  ========================================================================== */
65
- ---------------------------------------------- */
66
- ---------------------------------------------- */
67
  Responsive Styles
68
  ========================================================================== */
69
  width: 22%;
70
  text-align: center;
71
  display: inline-block;
72
  }
73
  .button-holder .button-secondary.remove_this_tab {
 
1
  Global
2
  ========================================================================== */
 
3
  Woo Product Editing Screen
4
  ========================================================================== */
5
  font-family: Dashicons;
6
  content: '\f164';
 
7
  position: absolute;
8
  right: 1em;
9
  top: 12px;
 
10
  border-top: 1px solid #a0a5aa;
 
11
  width: 100%;
12
  white-space: nowrap;
 
13
  Settings Pages
14
  ========================================================================== */
 
 
 
15
  border-top: 1px solid #ccc;
16
  margin-top: 2rem;
17
  padding-top: 1rem;
18
  Promotional Items
19
  ========================================================================== */
 
 
20
  Responsive Styles
21
  ========================================================================== */
22
  width: 22%;
23
  text-align: center;
24
  display: inline-block;
25
  }
26
  .button-holder .button-secondary.remove_this_tab {
27
+
28
  Global
29
  ========================================================================== */
 
30
  Woo Product Editing Screen
31
  ========================================================================== */
32
  font-family: Dashicons;
33
  content: '\f164';
 
34
  position: absolute;
35
  right: 1em;
36
  top: 12px;
 
37
  border-top: 1px solid #a0a5aa;
 
38
  width: 100%;
39
  white-space: nowrap;
 
40
  Settings Pages
41
  ========================================================================== */
 
 
 
42
  border-top: 1px solid #ccc;
43
  margin-top: 2rem;
44
  padding-top: 1rem;
45
  Promotional Items
46
  ========================================================================== */
 
 
47
  Responsive Styles
48
  ========================================================================== */
49
  width: 22%;
50
  text-align: center;
51
  display: inline-block;
52
  }
53
  .button-holder .button-secondary.remove_this_tab {
css/repeatable-custom-tabs.min.css CHANGED
@@ -1 +1 @@
1
- .loading-wp-editor-gif{margin-left:50%;margin-right:50%}.loading-wp-editor-gif-settings{padding-left:50px}.dashicons.inline-button-dashicons{font-size:15px;vertical-align:bottom}.yikes_woo_tabs_title_field{width:70% !important}#duplicate_this_row{display:none}#woocommerce-product-data ul.wc-tabs li.yikes_wc_product_tabs_tab a::before{font-family:Dashicons;content:'\f164'}#yikes_woocommerce_custom_product_tabs hr{margin:1.5em 0}#yikes_woocommerce_custom_product_tabs .options_group{padding:0 1em}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field{max-width:100%;padding-left:0}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{display:inline-block;padding-left:0;vertical-align:top;width:80%}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce .mce-edit-area.mce-container,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce div.form-field-tinymce,._yikes_wc_custom_repeatable_product_tabs_tab_content_field .mce-edit-area.mce-container{min-height:10rem}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce .mce-edit-area.mce-container iframe,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce div.form-field-tinymce iframe,._yikes_wc_custom_repeatable_product_tabs_tab_content_field .mce-edit-area.mce-container iframe{height:auto !important}textarea.yikes_woo_custom_editor_styles{border:1px solid #ddd;min-height:10rem}.yikes_woo_custom_editor_styles{position:relative;z-index:9}._yikes_wc_custom_repeatable_product_tabs_tab_content_field{display:inline-block}.button-holder{display:inline-block;padding-top:20px;text-align:center;vertical-align:top;width:18%}.yikes_wc_move_tab_container{margin-top:0.5em;text-align:center}.woocommerce_options_panel p.yikes_wc_move_tab{line-height:1;margin:0;padding:0}.button-holder .button-secondary.remove_this_tab{background:#e35b5b;border-color:#dc3232;box-shadow:0 1px 0 #dc3232;color:#fff;cursor:pointer;margin-top:20px}.button-holder .button-secondary.remove_this_tab .dashicons{margin-top:-2px;vertical-align:middle}.move-tab-data-down,.move-tab-data-up{font-size:25px;transition:color .2s}.move-tab-data-down:hover,.move-tab-data-up:hover{cursor:pointer;color:rgb(76, 156, 206)}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field{padding:5px 0 5px !important}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel .form-field label{font-size:1.1em;font-weight:700;margin:2px 8px 0 0;width:auto}.yikes-woo-custom-tab-divider{display:block;height:2px;margin:2em 0 1.5em;border-bottom:1px solid #0073aa}.yikes-woo-tabs-hidden-how-to-info{display:none;font-family:"Open Sans" , sans-serif !important;margin-right:30px}.woocommerce_options_panel p.yikes_woo_how_to_info{margin:9px 0 0 0;padding:0;text-align:right}.yikes-tabs-how-to-toggle{font-size:20px;position:absolute;right:1em;top:12px}.yikes-tabs-how-to-toggle:hover{cursor:pointer}.yikes_woo_how_to_info{padding-left:23px !important}.yikes_woo_save_success{color:#31843f;float:left;padding-top:1em}.add_tabs_container,._yikes_wc_add_tab_center{border-top:1px solid #a0a5aa;margin:2em 2px 0 0;text-align:right;width:100%}.add_tabs_container .button.button-primary{margin-top:10px}._yikes_wc_add_tab_center{border-top:none;text-align:center}.add_tabs_container._yikes_wc_add_tab_center_new .button.button-primary{display:none}#add_another_tab{background:#cc99c2;border-color:#b366a4;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none !important;margin-bottom:10px;margin-top:10px}#_yikes_wc_apply_a_saved_tab{background:#cc99c2;border-color:#b366a4;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none !important;margin:10px 0 0 8px}.yikes_woo_using_reusable_tab{opacity:0.6;pointer-events:none}.lity-container{background:#fff;border-radius:6px;padding:0.6em 1em 1em}.lity-container .lity-content::after{box-shadow:none}[class*='yikes_wc_lity_col']{float:left}.yikes_wc_lity_col_title{width:93%;padding:4px 20px 4px 2px;white-space:nowrap}.yikes_wc_lity_col_select{width:7%;padding-right:8px;padding-top:4px;cursor:pointer}.yikes_wc_lity_header{border-bottom:1px solid #555d66;margin-bottom:0.4em;line-height:1;font-size:1.2em;font-weight:700;padding:0 0 8px 0;text-align:center;width:100%}.yikes_wc_lity_header > span{width:100px;text-align:center;white-space:nowrap}.display_saved_tabs_lity{min-width:300px}._yikes_wc_feedback_message{display:none;padding-left:3px}#yikes_woo_tab_error_message{color:#FF0000}#yikes_woo_tab_success_message{color:#31843f;margin-top:4px}.yikes_woo_settings_info{font-family:"Open Sans" , sans-serif}.woo-ct-admin-page-wrap h1 .dashicons{font-size:30px;height:30px;width:30px}.cptpro-savedtabs-pro-container{display:inline-block;max-width:1200px;vertical-align:top;width:80%}.cptpro-savedtabs-pro-container.cptpro-savedtabs-pro-active{max-width:1400px;width:100%}.cptpro-savedtabs-pro-container.cptpro-savedtabs-single-pro-container.cptpro-savedtabs-pro-active{max-width:1000px;width:100%}.yikes_woo_delete_this_tab{color:#0073aa;cursor:pointer}.yikes_woo_delete_this_tab:hover{color:#00a0d2}.yikes_woo_go_back_url{margin-top:0.4rem}.yikes_woo_reusable_tab_title_label{display:inline-block;text-align:right;vertical-align:bottom;width:80px}.yikes_woo_reusable_tab_title > input{display:inline-block;vertical-align:bottom;width:60%}.yikes_woo_reusable_tab_title .yikes_woo_reusable_tab_title_note{padding-left:86px}.yikes_woo_reusable_tab_title > label h3,.yikes_woo_reusable_tab_content > label h3{margin-bottom:6px}.yikes_woo_reusable_tab_title,.yikes_woo_reusable_tab_content{margin-bottom:20px}.wp-core-ui .button-secondary.yikes_woo_delete_this_tab{background:#e35b5b;border-color:#dc3232;box-shadow:0 1px 0 #dc3232;color:#fff;cursor:pointer}.yikes_woo_add_another_tab:hover > a{color:white}.yikes_woo_number_of_products{font-weight:bold}.yikes_woo_save_and_delete_tab_buttons{border-top:1px solid #ccc;margin-top:2rem;padding-top:1rem}._yikes_wc_title_red_overlay{background-color:#e68989 !important}.woocommerce_options_panel p.yikes_wc_override_reusable_tab_container{line-height:1.1;margin-top:0;font-weight:600;font-size:14px;margin-bottom:20px}.woocommerce_options_panel label._yikes_wc_override_reusable_tab_label{margin:0 0 0 4px;float:none}.yikes-woo-all-about-us{display:inline-block;margin:96px 0 0 2rem;text-align:center;vertical-align:top;width:280px}.yikes-woo-all-about-us .yikes-woo-review-us-body,.yikes-woo-all-about-us .yikes-woo-buy-us-body{padding:0 5px 10px 5px}.yikes-woo-all-about-us h3{margin:0;padding:8px 12px;color:#fff;background-color:#00a0d2;font-weight:800;font-size:14px}.yikes-woo-review-us .star-container .dashicons.dashicons-star-filled{color:#E6B800}.yikes-woo-review-us-footer .yikes-love{color:pink}.cptpro-settings-pro-container{max-width:800px}#lightslider{text-align:center}.cptpro-image{max-width:800px;max-height:600px}@media screen and (max-width: 1720px){.cptpro-savedtabs-pro-container{max-width:1000px}}@media screen and (max-width: 1520px){.cptpro-savedtabs-pro-container{max-width:900px}}@media screen and (max-width: 1400px){#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{width:76%}.button-holder{width:22%}.add_tabs_container{text-align:center}.cptpro-savedtabs-pro-container{max-width:100%;width:100%}.yikes-woo-all-about-us{display:block;margin:1rem 0;width:100%}.postbox.yikes-woo-review-us,.postbox.yikes-woo-buy-us{display:inline-block;vertical-align:top}.postbox.yikes-woo-buy-us{height:234px;margin-left:1rem;min-width:240px;width:240px}}@media screen and (max-width: 1200px){#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{display:block;width:100%}.button-holder{clear:both;display:block;width:100%}.woocommerce_options_panel p.yikes_wc_move_tab{display:inline-block}.move-tab-data-down,.move-tab-data-up{margin-top:-6px}.button-holder .button-secondary.remove_this_tab{margin-top:0}}
1
+ .loading-wp-editor-gif{margin-left:50%;margin-right:50%}.loading-wp-editor-gif-settings{padding-left:50px}.dashicons.inline-button-dashicons{font-size:15px;vertical-align:bottom}.yikes_woo_tabs_title_field{width:70% !important}#duplicate_this_row{display:none}#woocommerce-product-data ul.wc-tabs li.yikes_wc_product_tabs_tab a::before{font-family:Dashicons;content:'\f164'}#yikes_woocommerce_custom_product_tabs hr{margin:1.5em 0}#yikes_woocommerce_custom_product_tabs .options_group{padding:0 1em}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field{max-width:100%;padding-left:0}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{display:inline-block;padding-left:0;vertical-align:top;width:80%}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce .mce-edit-area.mce-container,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce div.form-field-tinymce,._yikes_wc_custom_repeatable_product_tabs_tab_content_field .mce-edit-area.mce-container{min-height:10rem}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce .mce-edit-area.mce-container iframe,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce div.form-field-tinymce iframe,._yikes_wc_custom_repeatable_product_tabs_tab_content_field .mce-edit-area.mce-container iframe{height:auto !important}textarea.yikes_woo_custom_editor_styles{border:1px solid #ddd;min-height:10rem}.yikes_woo_custom_editor_styles{position:relative;z-index:9}._yikes_wc_custom_repeatable_product_tabs_tab_content_field{display:inline-block}.button-holder{display:inline-block;padding-top:20px;text-align:center;vertical-align:top;width:18%}.yikes_wc_move_tab_container{margin-top:0.5em;text-align:center}.woocommerce_options_panel p.yikes_wc_move_tab{line-height:1;margin:0;padding:0}.button-holder .button-secondary.remove_this_tab{background:#e35b5b;border-color:#dc3232;box-shadow:0 1px 0 #dc3232;color:#fff;cursor:pointer;margin-top:20px}.button-holder .button-secondary.remove_this_tab .dashicons{margin-top:-2px;vertical-align:middle}.move-tab-data-down,.move-tab-data-up{font-size:25px;transition:color .2s}.move-tab-data-down:hover,.move-tab-data-up:hover{cursor:pointer;color:rgb(76, 156, 206)}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field{padding:5px 0 5px !important}#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel .form-field label{font-size:1.1em;font-weight:700;margin:2px 8px 0 0;width:auto}.yikes-woo-custom-tab-divider{display:block;height:2px;margin:2em 0 1.5em;border-bottom:1px solid #0073aa}.yikes-woo-tabs-hidden-how-to-info{display:none;font-family:"Open Sans" , sans-serif !important;margin-right:30px}.woocommerce_options_panel p.yikes_woo_how_to_info{margin:9px 0 0 0;padding:0;text-align:right}.yikes-tabs-how-to-toggle{font-size:20px;position:absolute;right:1em;top:12px}.yikes-tabs-how-to-toggle:hover{cursor:pointer}.yikes_woo_how_to_info{padding-left:23px !important}.yikes_woo_save_success{color:#31843f;float:left;padding-top:1em}.add_tabs_container,._yikes_wc_add_tab_center{border-top:1px solid #a0a5aa;margin:2em 2px 0 0;text-align:right;width:100%}.add_tabs_container .button.button-primary{margin-top:10px}._yikes_wc_add_tab_center{border-top:none;text-align:center}.add_tabs_container._yikes_wc_add_tab_center_new .button.button-primary{display:none}#add_another_tab{background:#cc99c2;border-color:#b366a4;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none !important;margin-bottom:10px;margin-top:10px}#_yikes_wc_apply_a_saved_tab{background:#cc99c2;border-color:#b366a4;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none !important;margin:10px 0 0 8px}.yikes_woo_using_reusable_tab{opacity:0.6;pointer-events:none}.lity-container{background:#fff;border-radius:6px;padding:0.6em 1em 1em}.lity-container .lity-content::after{box-shadow:none}[class*='yikes_wc_lity_col']{float:left}.yikes_wc_lity_col_title{width:93%;padding:4px 20px 4px 2px;white-space:nowrap}.yikes_wc_lity_col_select{width:7%;padding-right:8px;padding-top:4px;cursor:pointer}.yikes_wc_lity_header{border-bottom:1px solid #555d66;margin-bottom:0.4em;line-height:1;font-size:1.2em;font-weight:700;padding:0 0 8px 0;text-align:center;width:100%}.yikes_wc_lity_header > span{width:100px;text-align:center;white-space:nowrap}.display_saved_tabs_lity{min-width:300px}._yikes_wc_feedback_message{display:none;padding-left:3px}#yikes_woo_tab_error_message{color:#FF0000}#yikes_woo_tab_success_message{color:#31843f;margin-top:4px}.yikes_woo_settings_info{font-family:"Open Sans" , sans-serif}.woo-ct-admin-page-wrap h1 .dashicons{font-size:30px;height:30px;width:30px}.cptpro-savedtabs-pro-container{display:inline-block;max-width:1200px;vertical-align:top;width:80%}.cptpro-savedtabs-pro-container.cptpro-savedtabs-pro-active{max-width:1400px;width:100%}.cptpro-savedtabs-pro-container.cptpro-savedtabs-single-pro-container.cptpro-savedtabs-pro-active{max-width:1000px;width:100%}.yikes_woo_delete_this_tab{color:#0073aa;cursor:pointer}.yikes_woo_delete_this_tab:hover{color:#00a0d2}.yikes_woo_go_back_url{margin-top:0.4rem}.yikes_woo_reusable_tab_title_label{display:inline-block;text-align:right;vertical-align:bottom;width:80px}.yikes_woo_reusable_tab_title > input{display:inline-block;vertical-align:bottom;width:60%}.yikes_woo_reusable_tab_title .yikes_woo_reusable_tab_title_note{padding-left:86px}.yikes_woo_reusable_tab_title > label h3,.yikes_woo_reusable_tab_content > label h3{margin-bottom:6px}.yikes_woo_reusable_tab_title,.yikes_woo_reusable_tab_content{margin-bottom:20px}.wp-core-ui .button-secondary.yikes_woo_delete_this_tab{background:#e35b5b;border-color:#dc3232;box-shadow:0 1px 0 #dc3232;color:#fff;cursor:pointer}.yikes_woo_add_another_tab:hover > a{color:white}.yikes_woo_number_of_products{font-weight:bold}.yikes_woo_save_and_delete_tab_buttons{border-top:1px solid #ccc;margin-top:2rem;padding-top:1rem}._yikes_wc_title_red_overlay{background-color:#e68989 !important}.woocommerce_options_panel p.yikes_wc_override_reusable_tab_container{line-height:1.1;margin-top:0;font-weight:600;font-size:14px;margin-bottom:20px}.woocommerce_options_panel label._yikes_wc_override_reusable_tab_label{margin:0 0 0 4px;float:none}.yikes-woo-all-about-us{display:inline-block;margin:96px 0 0 2rem;text-align:center;vertical-align:top;width:280px}.yikes-woo-all-about-us .yikes-woo-review-us-body,.yikes-woo-all-about-us .yikes-woo-buy-us-body{padding:0 1rem 1rem}.yikes-woo-all-about-us h3{margin:0;padding:8px 12px;color:#fff;background-color:#00a0d2;font-weight:800;font-size:14px}.yikes-woo-review-us .star-container .dashicons.dashicons-star-filled{color:#E6B800}.yikes-woo-review-us .star-container a{text-decoration:none}.yikes-woo-review-us-footer .yikes-love{color:pink}.cptpro-settings-pro-container{max-width:800px}#lightslider{text-align:center}.cptpro-image{max-width:800px;max-height:600px}@media screen and (max-width: 1720px){.cptpro-savedtabs-pro-container{max-width:1000px}}@media screen and (max-width: 1520px){.cptpro-savedtabs-pro-container{max-width:900px}}@media screen and (max-width: 1400px){#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{width:76%}.button-holder{width:22%}.add_tabs_container{text-align:center}.cptpro-savedtabs-pro-container{max-width:100%;width:100%}.yikes-woo-all-about-us{display:block;margin:1rem 0;width:100%}.postbox.yikes-woo-review-us,.postbox.yikes-woo-buy-us{display:inline-block;vertical-align:top}.postbox.yikes-woo-buy-us{height:234px;margin-left:1rem;min-width:240px;width:240px}}@media screen and (max-width: 1200px){#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel p.form-field-tinymce,#yikes_woocommerce_custom_product_tabs.woocommerce_options_panel div.form-field-tinymce{display:block;width:100%}.button-holder{clear:both;display:block;width:100%}.woocommerce_options_panel p.yikes_wc_move_tab{display:inline-block}.move-tab-data-down,.move-tab-data-up{margin-top:-6px}.button-holder .button-secondary.remove_this_tab{margin-top:0}}
languages/yikes-inc-easy-custom-woocommerce-product-tabs.pot CHANGED
@@ -1,393 +1,389 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- #, fuzzy
7
- msgid ""
8
- msgstr ""
9
- "Project-Id-Version: custom-product-tabs 1.5.17\n"
10
- "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2017-10-11 14:51+0000\n"
12
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
- "Language-Team: LANGUAGE <LL@li.org>\n"
15
- "Language: \n"
16
- "MIME-Version: 1.0\n"
17
- "Content-Type: text/plain; charset=CHARSET\n"
18
- "Content-Transfer-Encoding: 8bit\n"
19
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
20
-
21
- #: admin/class.premium.php:49 admin/class.premium.php:50
22
- msgid "Go Pro"
23
- msgstr ""
24
-
25
- #: admin/class.premium.php:81
26
- msgid "Leave a review!"
27
- msgstr ""
28
-
29
- #: admin/class.premium.php:97
30
- msgid "Tweet about us!"
31
- msgstr ""
32
-
33
- #: admin/class.premium.php:101
34
- msgid "Tweet"
35
- msgstr ""
36
-
37
- #: admin/class.premium.php:109
38
- msgid "Check out Custom Product Tabs Pro!"
39
- msgstr ""
40
-
41
- #: admin/class.premium.php:110
42
- msgid ""
43
- "Create global tabs, add tabs to products based on taxonomies, add your tabs "
44
- "to the search, and more."
45
- msgstr ""
46
-
47
- #: admin/class.premium.php:112
48
- msgid "Custom Product Tabs Pro"
49
- msgstr ""
50
-
51
- #: admin/class.support.php:41 admin/class.support.php:42
52
- msgid "Support"
53
- msgstr ""
54
-
55
- #: admin/class.support.php:68
56
- #, php-format
57
- msgid ""
58
- "Before submitting a support request, please visit our %1sKnowledge Base%2s "
59
- "where we have step-by-step guides and troubleshooting help."
60
- msgstr ""
61
-
62
- #: admin/class.support.php:75
63
- #, php-format
64
- msgid ""
65
- "Custom Product Tabs Pro users qualify for premium support. Check out "
66
- "%1sCustom Product Tabs Pro%2s!"
67
- msgstr ""
68
-
69
- #: admin/class.support.php:84
70
- msgid "WordPress.org Support Forums"
71
- msgstr ""
72
-
73
- #: admin/class.support.php:89
74
- #, php-format
75
- msgid ""
76
- "If you need help with free Custom Product Tabs, please post questions to "
77
- "%1sour support forum on the WordPress Plugin Directory%2s. We aim to respond "
78
- "to support requests within a week."
79
- msgstr ""
80
-
81
- #: admin/class.support.php:96
82
- msgid "Submit a Support Request"
83
- msgstr ""
84
-
85
- #: admin/class.yikes-woo-generate-html.php:71
86
- #: admin/class.yikes-woo-generate-html.php:215
87
- #: admin/page.yikes-woo-saved-tabs-single.php:57
88
- #: admin/page.yikes-woo-saved-tabs.php:53
89
- #: admin/page.yikes-woo-saved-tabs.php:73
90
- msgid "Tab Title"
91
- msgstr ""
92
-
93
- #: admin/class.yikes-woo-generate-html.php:71
94
- #: admin/class.yikes-woo-generate-html.php:215
95
- msgid "Custom Tab Title"
96
- msgstr ""
97
-
98
- #: admin/class.yikes-woo-generate-html.php:137
99
- msgid ""
100
- "For help using Custom Tabs please visit our <a href='https://yikesplugins."
101
- "com/support/knowledge-base/product/easy-custom-product-tabs-for-"
102
- "woocommerce/' target='_blank'>Knowledge Base</a>"
103
- msgstr ""
104
-
105
- #: admin/class.yikes-woo-generate-html.php:139
106
- msgid "Help Me!"
107
- msgstr ""
108
-
109
- #: admin/class.yikes-woo-generate-html.php:164
110
- #: admin/class.yikes-woo-generate-html.php:284
111
- msgid "Check this box to override the saved tab"
112
- msgstr ""
113
-
114
- #: admin/class.yikes-woo-generate-html.php:166
115
- msgid " Override Saved Tab"
116
- msgstr ""
117
-
118
- #: admin/class.yikes-woo-generate-html.php:180
119
- #: admin/class.yikes-woo-generate-html.php:254
120
- #: admin/class.yikes-woo-generate-html.php:296
121
- msgid "Remove Tab"
122
- msgstr ""
123
-
124
- #: admin/class.yikes-woo-generate-html.php:230
125
- #: admin/class.yikes-woo-generate-html.php:269
126
- msgid "Content"
127
- msgstr ""
128
-
129
- #: admin/class.yikes-woo-generate-html.php:231
130
- #: admin/class.yikes-woo-generate-html.php:269
131
- msgid "HTML and text to display."
132
- msgstr ""
133
-
134
- #: admin/class.yikes-woo-generate-html.php:285
135
- msgid "Override Saved Tab"
136
- msgstr ""
137
-
138
- #: admin/class.yikes-woo-generate-html.php:336
139
- msgid "Add a Tab"
140
- msgstr ""
141
-
142
- #: admin/class.yikes-woo-generate-html.php:341
143
- msgid "Add a Saved Tab"
144
- msgstr ""
145
-
146
- #: admin/class.yikes-woo-saved-tabs.php:64 admin/class.yikes-woo-tabs.php:62
147
- #: admin/class.yikes-woo-tabs.php:71
148
- msgid ""
149
- "Sorry! An error has occurred while trying to retrieve the editor. Please "
150
- "refresh the page and try again."
151
- msgstr ""
152
-
153
- #: admin/class.yikes-woo-saved-tabs.php:285
154
- msgid "Could not find the tab. Please try again."
155
- msgstr ""
156
-
157
- #: admin/class.yikes-woo-saved-tabs.php:289
158
- msgid "Uh oh. Something went wrong."
159
- msgstr ""
160
-
161
- #: admin/class.yikes-woo-saved-tabs.php:503
162
- #: admin/class.yikes-woo-saved-tabs.php:504
163
- msgid "Custom Product Tabs"
164
- msgstr ""
165
-
166
- #: admin/class.yikes-woo-tabs.php:88
167
- msgid "Custom Tabs"
168
- msgstr ""
169
-
170
- #: admin/page.premium.php:5
171
- msgid "Custom Product Tabs for WooCommerce | Go Pro"
172
- msgstr ""
173
-
174
- #: admin/page.premium.php:13
175
- msgid "Upgrade to Pro"
176
- msgstr ""
177
-
178
- #: admin/page.premium.php:19
179
- #, php-format
180
- msgid ""
181
- "Upgrade to %1sCustom Product Tabs Pro%2s for complete control of Tabs and "
182
- "enhanced features."
183
- msgstr ""
184
-
185
- #: admin/page.premium.php:26
186
- msgid ""
187
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Global Tabs</"
188
- "strong> - Apply saved tabs to all of your products."
189
- msgstr ""
190
-
191
- #: admin/page.premium.php:32
192
- msgid ""
193
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Category/Tag "
194
- "Tabs</strong> - Assign tabs to products by category or tag."
195
- msgstr ""
196
-
197
- #: admin/page.premium.php:38
198
- msgid ""
199
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>WooCommerce "
200
- "Bulk Edit</strong> - Assign tabs to products via WooCommerce's bulk editor."
201
- msgstr ""
202
-
203
- #: admin/page.premium.php:44
204
- msgid ""
205
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Search</"
206
- "strong> - Make tab content searchable by WordPress' standard search or "
207
- "WooCommerce's search widget."
208
- msgstr ""
209
-
210
- #: admin/page.premium.php:50
211
- msgid ""
212
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Premium "
213
- "Support</strong> - Get support via our form directly from your dashboard."
214
- msgstr ""
215
-
216
- #: admin/page.premium.php:56
217
- msgid ""
218
- "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>And More!</"
219
- "strong>"
220
- msgstr ""
221
-
222
- #: admin/page.premium.php:62
223
- msgid "Global Tabs & Taxonomy Tabs"
224
- msgstr ""
225
-
226
- #: admin/page.premium.php:66
227
- msgid ""
228
- "Assign taxonomy terms to tabs or set tabs as global so they apply to all "
229
- "products."
230
- msgstr ""
231
-
232
- #: admin/page.premium.php:71
233
- msgid "WooCommerce Bulk Edit"
234
- msgstr ""
235
-
236
- #: admin/page.premium.php:73
237
- msgid ""
238
- "Assign saved tabs to products via the product's default bulk edit screen."
239
- msgstr ""
240
-
241
- #: admin/page.premium.php:77
242
- msgid "Search"
243
- msgstr ""
244
-
245
- #: admin/page.premium.php:79
246
- msgid ""
247
- "Make WordPress' and/or WooCommerce's search aware of Custom Product Tab "
248
- "information"
249
- msgstr ""
250
-
251
- #: admin/page.premium.php:83
252
- msgid " Premium Support"
253
- msgstr ""
254
-
255
- #: admin/page.premium.php:85
256
- msgid ""
257
- "Premium support with a ticket form accessible directly from your dashboard"
258
- msgstr ""
259
-
260
- #: admin/page.premium.php:89
261
- msgid "Miscellaneous"
262
- msgstr ""
263
-
264
- #: admin/page.premium.php:92
265
- msgid ""
266
- "Remove the tab title from tab content site-wide without needing a filter"
267
- msgstr ""
268
-
269
- #: admin/page.premium.php:93
270
- msgid "From a saved tab, view which products are currently using that tab"
271
- msgstr ""
272
-
273
- #: admin/page.support.php:6
274
- msgid "Custom Product Tabs for WooCommerce | Support"
275
- msgstr ""
276
-
277
- #: admin/page.yikes-woo-saved-tabs-single.php:8
278
- #, php-format
279
- msgid "It looks like something went wrong. Please %1sgo back%2s. and try again"
280
- msgstr ""
281
-
282
- #: admin/page.yikes-woo-saved-tabs-single.php:29
283
- #: admin/page.yikes-woo-saved-tabs.php:7
284
- msgid "Add Tab"
285
- msgstr ""
286
-
287
- #: admin/page.yikes-woo-saved-tabs-single.php:37
288
- msgid "Any updates made here will apply to all products using this tab."
289
- msgstr ""
290
-
291
- #: admin/page.yikes-woo-saved-tabs-single.php:49
292
- msgid "Go Back to Saved Tabs list"
293
- msgstr ""
294
-
295
- #: admin/page.yikes-woo-saved-tabs-single.php:65
296
- #: admin/page.yikes-woo-saved-tabs.php:56
297
- #: admin/page.yikes-woo-saved-tabs.php:76
298
- msgid "Tab Name"
299
- msgstr ""
300
-
301
- #: admin/page.yikes-woo-saved-tabs-single.php:74
302
- msgid "Tab Content"
303
- msgstr ""
304
-
305
- #: admin/page.yikes-woo-saved-tabs-single.php:86
306
- msgid "Save Tab"
307
- msgstr ""
308
-
309
- #: admin/page.yikes-woo-saved-tabs-single.php:90
310
- #: admin/page.yikes-woo-saved-tabs.php:110
311
- msgid "Delete Tab"
312
- msgstr ""
313
-
314
- #: admin/page.yikes-woo-saved-tabs.php:5
315
- msgid "Custom Product Tabs for WooCommerce | Saved Tabs"
316
- msgstr ""
317
-
318
- #: admin/page.yikes-woo-saved-tabs.php:14
319
- msgid "Tab deleted!"
320
- msgstr ""
321
-
322
- #: admin/page.yikes-woo-saved-tabs.php:23
323
- msgid "Create and save tabs you can add to multiple products."
324
- msgstr ""
325
-
326
- #: admin/page.yikes-woo-saved-tabs.php:36
327
- msgid "Select bulk action"
328
- msgstr ""
329
-
330
- #: admin/page.yikes-woo-saved-tabs.php:38
331
- msgid "Bulk Actions"
332
- msgstr ""
333
-
334
- #: admin/page.yikes-woo-saved-tabs.php:39
335
- msgid "Delete"
336
- msgstr ""
337
-
338
- #: admin/page.yikes-woo-saved-tabs.php:41
339
- msgid "Apply"
340
- msgstr ""
341
-
342
- #: admin/page.yikes-woo-saved-tabs.php:49
343
- #: admin/page.yikes-woo-saved-tabs.php:69
344
- msgid "Select All"
345
- msgstr ""
346
-
347
- #: admin/page.yikes-woo-saved-tabs.php:59
348
- #: admin/page.yikes-woo-saved-tabs.php:79
349
- msgid "Tab Content Preview"
350
- msgstr ""
351
-
352
- #: admin/page.yikes-woo-saved-tabs.php:107
353
- #: admin/page.yikes-woo-saved-tabs.php:119
354
- msgid "Edit Tab"
355
- msgstr ""
356
-
357
- #: admin/page.yikes-woo-saved-tabs.php:129
358
- msgid "There are no saved tabs. Add one!"
359
- msgstr ""
360
-
361
- #: node_modules/grunt-pot/test/fixtures/some-file.php:3
362
- msgid "I'm a translatable string."
363
- msgstr ""
364
-
365
- #: node_modules/grunt-pot/test/fixtures/some-other-file.php:4
366
- msgid "Me too"
367
- msgstr ""
368
-
369
- #: node_modules/grunt-pot/test/fixtures/some-other-file.php:7
370
- #, php-format
371
- msgid "I have %d apple"
372
- msgid_plural "I have %d apples"
373
- msgstr[0] ""
374
- msgstr[1] ""
375
-
376
- #. / TRANSLATORS: This should be translated as a shorthand for YEAR-MONTH-DAY using 4, 2 and 2 digits.
377
- #: node_modules/grunt-pot/test/fixtures/some-other-file.php:16
378
- msgid "yyyy-mm-dd"
379
- msgstr ""
380
-
381
- #: yikes-inc-easy-custom-woocommerce-product-tabs.php:49
382
- msgid ""
383
- "Custom Product Tabs for WooCommerce could not be activated because "
384
- "WooCommerce is not installed and active."
385
- msgstr ""
386
-
387
- #: yikes-inc-easy-custom-woocommerce-product-tabs.php:50
388
- msgid "Please install and activate "
389
- msgstr ""
390
-
391
- #: yikes-inc-easy-custom-woocommerce-product-tabs.php:50
392
- msgid " before activating the plugin."
393
- msgstr ""
1
+ # SOME DESCRIPTIVE TITLE.
2
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
+ # This file is distributed under the same license as the PACKAGE package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
+ #
6
+ #, fuzzy
7
+ msgid ""
8
+ msgstr ""
9
+ "Project-Id-Version: custom-product-tabs 1.5.17\n"
10
+ "Report-Msgid-Bugs-To: \n"
11
+ "POT-Creation-Date: 2017-10-13 13:07+0000\n"
12
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
+ "Language-Team: LANGUAGE <LL@li.org>\n"
15
+ "Language: \n"
16
+ "MIME-Version: 1.0\n"
17
+ "Content-Type: text/plain; charset=CHARSET\n"
18
+ "Content-Transfer-Encoding: 8bit\n"
19
+ "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
20
+
21
+ #: admin/class.premium.php:49 admin/class.premium.php:50
22
+ msgid "Go Pro"
23
+ msgstr ""
24
+
25
+ #: admin/class.premium.php:82
26
+ msgid "Leave a review!"
27
+ msgstr ""
28
+
29
+ #: admin/class.premium.php:94
30
+ msgid "Tweet about us!"
31
+ msgstr ""
32
+
33
+ #: admin/class.premium.php:98
34
+ msgid "Tweet"
35
+ msgstr ""
36
+
37
+ #: admin/class.premium.php:108
38
+ msgid "Check out Custom Product Tabs Pro!"
39
+ msgstr ""
40
+
41
+ #: admin/class.premium.php:109
42
+ msgid ""
43
+ "Create global tabs, add tabs to products based on categories or tags, add "
44
+ "tab content to search results, and more!"
45
+ msgstr ""
46
+
47
+ #: admin/class.premium.php:111
48
+ msgid "Custom Product Tabs Pro"
49
+ msgstr ""
50
+
51
+ #: admin/class.support.php:41 admin/class.support.php:42
52
+ msgid "Support"
53
+ msgstr ""
54
+
55
+ #: admin/class.support.php:68
56
+ #, php-format
57
+ msgid ""
58
+ "Before submitting a support request, please visit our %1sKnowledge Base%2s "
59
+ "where we have step-by-step guides and troubleshooting help."
60
+ msgstr ""
61
+
62
+ #: admin/class.support.php:75
63
+ #, php-format
64
+ msgid ""
65
+ "Custom Product Tabs Pro users qualify for premium support. Check out "
66
+ "%1sCustom Product Tabs Pro%2s!"
67
+ msgstr ""
68
+
69
+ #: admin/class.support.php:84
70
+ msgid "WordPress.org Support Forums"
71
+ msgstr ""
72
+
73
+ #: admin/class.support.php:89
74
+ #, php-format
75
+ msgid ""
76
+ "If you need help with free Custom Product Tabs, please post questions to "
77
+ "%1sour support forum on the WordPress Plugin Directory%2s. We aim to respond "
78
+ "to support requests within a week."
79
+ msgstr ""
80
+
81
+ #: admin/class.support.php:96
82
+ msgid "Submit a Support Request"
83
+ msgstr ""
84
+
85
+ #: admin/class.yikes-woo-generate-html.php:71
86
+ #: admin/class.yikes-woo-generate-html.php:215
87
+ #: admin/page.yikes-woo-saved-tabs-single.php:58
88
+ #: admin/page.yikes-woo-saved-tabs.php:53
89
+ #: admin/page.yikes-woo-saved-tabs.php:73
90
+ msgid "Tab Title"
91
+ msgstr ""
92
+
93
+ #: admin/class.yikes-woo-generate-html.php:71
94
+ #: admin/class.yikes-woo-generate-html.php:215
95
+ msgid "Custom Tab Title"
96
+ msgstr ""
97
+
98
+ #: admin/class.yikes-woo-generate-html.php:137
99
+ msgid ""
100
+ "For help using Custom Tabs please visit our <a href='https://yikesplugins."
101
+ "com/support/knowledge-base/product/easy-custom-product-tabs-for-"
102
+ "woocommerce/' target='_blank'>Knowledge Base</a>"
103
+ msgstr ""
104
+
105
+ #: admin/class.yikes-woo-generate-html.php:139
106
+ msgid "Help Me!"
107
+ msgstr ""
108
+
109
+ #: admin/class.yikes-woo-generate-html.php:164
110
+ #: admin/class.yikes-woo-generate-html.php:284
111
+ msgid "Check this box to override the saved tab"
112
+ msgstr ""
113
+
114
+ #: admin/class.yikes-woo-generate-html.php:166
115
+ msgid " Override Saved Tab"
116
+ msgstr ""
117
+
118
+ #: admin/class.yikes-woo-generate-html.php:180
119
+ #: admin/class.yikes-woo-generate-html.php:254
120
+ #: admin/class.yikes-woo-generate-html.php:296
121
+ msgid "Remove Tab"
122
+ msgstr ""
123
+
124
+ #: admin/class.yikes-woo-generate-html.php:230
125
+ #: admin/class.yikes-woo-generate-html.php:269
126
+ msgid "Content"
127
+ msgstr ""
128
+
129
+ #: admin/class.yikes-woo-generate-html.php:231
130
+ #: admin/class.yikes-woo-generate-html.php:269
131
+ msgid "HTML and text to display."
132
+ msgstr ""
133
+
134
+ #: admin/class.yikes-woo-generate-html.php:285
135
+ msgid "Override Saved Tab"
136
+ msgstr ""
137
+
138
+ #: admin/class.yikes-woo-generate-html.php:336
139
+ msgid "Add a Tab"
140
+ msgstr ""
141
+
142
+ #: admin/class.yikes-woo-generate-html.php:341
143
+ msgid "Add a Saved Tab"
144
+ msgstr ""
145
+
146
+ #: admin/class.yikes-woo-saved-tabs.php:63 admin/class.yikes-woo-tabs.php:62
147
+ #: admin/class.yikes-woo-tabs.php:71
148
+ msgid ""
149
+ "Sorry! An error has occurred while trying to retrieve the editor. Please "
150
+ "refresh the page and try again."
151
+ msgstr ""
152
+
153
+ #: admin/class.yikes-woo-saved-tabs.php:284
154
+ msgid "Could not find the tab. Please try again."
155
+ msgstr ""
156
+
157
+ #: admin/class.yikes-woo-saved-tabs.php:288
158
+ msgid "Uh oh. Something went wrong."
159
+ msgstr ""
160
+
161
+ #: admin/class.yikes-woo-saved-tabs.php:502
162
+ #: admin/class.yikes-woo-saved-tabs.php:503
163
+ msgid "Custom Product Tabs"
164
+ msgstr ""
165
+
166
+ #: admin/class.yikes-woo-tabs.php:88
167
+ msgid "Custom Tabs"
168
+ msgstr ""
169
+
170
+ #: admin/page.premium.php:5
171
+ msgid "Custom Product Tabs for WooCommerce | Go Pro"
172
+ msgstr ""
173
+
174
+ #: admin/page.premium.php:13
175
+ msgid "Upgrade to Pro"
176
+ msgstr ""
177
+
178
+ #: admin/page.premium.php:19
179
+ #, php-format
180
+ msgid ""
181
+ "Upgrade to %1sCustom Product Tabs Pro%2s for complete control of Tabs and "
182
+ "enhanced features."
183
+ msgstr ""
184
+
185
+ #: admin/page.premium.php:26
186
+ msgid ""
187
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Global Tabs</"
188
+ "strong> - Apply saved tabs to all of your products."
189
+ msgstr ""
190
+
191
+ #: admin/page.premium.php:32
192
+ msgid ""
193
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Category/Tag "
194
+ "Tabs</strong> - Assign tabs to products by category or tag."
195
+ msgstr ""
196
+
197
+ #: admin/page.premium.php:38
198
+ msgid ""
199
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>WooCommerce "
200
+ "Bulk Edit</strong> - Assign tabs to products via WooCommerce's bulk editor."
201
+ msgstr ""
202
+
203
+ #: admin/page.premium.php:44
204
+ msgid ""
205
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Search</"
206
+ "strong> - Make tab content searchable by WordPress' standard search or "
207
+ "WooCommerce's search widget."
208
+ msgstr ""
209
+
210
+ #: admin/page.premium.php:50
211
+ msgid ""
212
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>Premium "
213
+ "Support</strong> - Get support via our form directly from your dashboard."
214
+ msgstr ""
215
+
216
+ #: admin/page.premium.php:56
217
+ msgid ""
218
+ "<span class=\"dashicons dashicons-thumbs-up\"></span> <strong>And More!</"
219
+ "strong>"
220
+ msgstr ""
221
+
222
+ #: admin/page.premium.php:62
223
+ msgid "Global Tabs & Taxonomy Tabs"
224
+ msgstr ""
225
+
226
+ #: admin/page.premium.php:66
227
+ msgid ""
228
+ "Assign taxonomy terms to tabs or set tabs as global so they apply to all "
229
+ "products."
230
+ msgstr ""
231
+
232
+ #: admin/page.premium.php:71
233
+ msgid "WooCommerce Bulk Edit"
234
+ msgstr ""
235
+
236
+ #: admin/page.premium.php:73
237
+ msgid ""
238
+ "Assign saved tabs to products via the product's default bulk edit screen."
239
+ msgstr ""
240
+
241
+ #: admin/page.premium.php:77
242
+ msgid "Settings"
243
+ msgstr ""
244
+
245
+ #: admin/page.premium.php:79
246
+ msgid ""
247
+ "Remove the tab title from tab content site-wide without needing a filter"
248
+ msgstr ""
249
+
250
+ #: admin/page.premium.php:80
251
+ msgid ""
252
+ "Make WordPress' and/or WooCommerce's search aware of Custom Product Tab "
253
+ "information"
254
+ msgstr ""
255
+
256
+ #: admin/page.premium.php:84
257
+ msgid " Premium Support"
258
+ msgstr ""
259
+
260
+ #: admin/page.premium.php:86
261
+ msgid ""
262
+ "Premium support with a ticket form accessible directly from your dashboard"
263
+ msgstr ""
264
+
265
+ #: admin/page.support.php:6
266
+ msgid "Custom Product Tabs for WooCommerce | Support"
267
+ msgstr ""
268
+
269
+ #: admin/page.yikes-woo-saved-tabs-single.php:8
270
+ #, php-format
271
+ msgid "It looks like something went wrong. Please %1sgo back%2s. and try again"
272
+ msgstr ""
273
+
274
+ #: admin/page.yikes-woo-saved-tabs-single.php:29
275
+ #: admin/page.yikes-woo-saved-tabs.php:7
276
+ msgid "Add Tab"
277
+ msgstr ""
278
+
279
+ #: admin/page.yikes-woo-saved-tabs-single.php:36
280
+ msgid "Go Back to All Saved Tabs list"
281
+ msgstr ""
282
+
283
+ #: admin/page.yikes-woo-saved-tabs-single.php:46
284
+ msgid "Any updates made here will apply to all products using this tab."
285
+ msgstr ""
286
+
287
+ #: admin/page.yikes-woo-saved-tabs-single.php:66
288
+ #: admin/page.yikes-woo-saved-tabs.php:56
289
+ #: admin/page.yikes-woo-saved-tabs.php:76
290
+ msgid "Tab Name"
291
+ msgstr ""
292
+
293
+ #: admin/page.yikes-woo-saved-tabs-single.php:69
294
+ msgid "This is for your reference only."
295
+ msgstr ""
296
+
297
+ #: admin/page.yikes-woo-saved-tabs-single.php:75
298
+ msgid "Tab Content"
299
+ msgstr ""
300
+
301
+ #: admin/page.yikes-woo-saved-tabs-single.php:87
302
+ msgid "Save Tab"
303
+ msgstr ""
304
+
305
+ #: admin/page.yikes-woo-saved-tabs-single.php:91
306
+ #: admin/page.yikes-woo-saved-tabs.php:110
307
+ msgid "Delete Tab"
308
+ msgstr ""
309
+
310
+ #: admin/page.yikes-woo-saved-tabs.php:5
311
+ msgid "Custom Product Tabs for WooCommerce | Saved Tabs"
312
+ msgstr ""
313
+
314
+ #: admin/page.yikes-woo-saved-tabs.php:16
315
+ msgid "Tab deleted!"
316
+ msgstr ""
317
+
318
+ #: admin/page.yikes-woo-saved-tabs.php:25
319
+ msgid "Create and save tabs you can add to multiple products."
320
+ msgstr ""
321
+
322
+ #: admin/page.yikes-woo-saved-tabs.php:36
323
+ msgid "Select bulk action"
324
+ msgstr ""
325
+
326
+ #: admin/page.yikes-woo-saved-tabs.php:38
327
+ msgid "Bulk Actions"
328
+ msgstr ""
329
+
330
+ #: admin/page.yikes-woo-saved-tabs.php:39
331
+ msgid "Delete"
332
+ msgstr ""
333
+
334
+ #: admin/page.yikes-woo-saved-tabs.php:41
335
+ msgid "Apply"
336
+ msgstr ""
337
+
338
+ #: admin/page.yikes-woo-saved-tabs.php:49
339
+ #: admin/page.yikes-woo-saved-tabs.php:69
340
+ msgid "Select All"
341
+ msgstr ""
342
+
343
+ #: admin/page.yikes-woo-saved-tabs.php:59
344
+ #: admin/page.yikes-woo-saved-tabs.php:79
345
+ msgid "Tab Content Preview"
346
+ msgstr ""
347
+
348
+ #: admin/page.yikes-woo-saved-tabs.php:107
349
+ #: admin/page.yikes-woo-saved-tabs.php:119
350
+ msgid "Edit Tab"
351
+ msgstr ""
352
+
353
+ #: admin/page.yikes-woo-saved-tabs.php:129
354
+ msgid "There are no saved tabs. Add one!"
355
+ msgstr ""
356
+
357
+ #: node_modules/grunt-pot/test/fixtures/some-file.php:3
358
+ msgid "I'm a translatable string."
359
+ msgstr ""
360
+
361
+ #: node_modules/grunt-pot/test/fixtures/some-other-file.php:4
362
+ msgid "Me too"
363
+ msgstr ""
364
+
365
+ #: node_modules/grunt-pot/test/fixtures/some-other-file.php:7
366
+ #, php-format
367
+ msgid "I have %d apple"
368
+ msgid_plural "I have %d apples"
369
+ msgstr[0] ""
370
+ msgstr[1] ""
371
+
372
+ #. / TRANSLATORS: This should be translated as a shorthand for YEAR-MONTH-DAY using 4, 2 and 2 digits.
373
+ #: node_modules/grunt-pot/test/fixtures/some-other-file.php:16
374
+ msgid "yyyy-mm-dd"
375
+ msgstr ""
376
+
377
+ #: yikes-inc-easy-custom-woocommerce-product-tabs.php:51
378
+ msgid ""
379
+ "Custom Product Tabs for WooCommerce could not be activated because "
380
+ "WooCommerce is not installed and active."
381
+ msgstr ""
382
+
383
+ #: yikes-inc-easy-custom-woocommerce-product-tabs.php:52
384
+ msgid "Please install and activate "
385
+ msgstr ""
386
+
387
+ #: yikes-inc-easy-custom-woocommerce-product-tabs.php:52
388
+ msgid " before activating the plugin."
389
+ msgstr ""
 
 
 
 
readme.txt CHANGED
@@ -1,13 +1,14 @@
1
  === Custom Product Tabs for WooCommerce ===
2
- Contributors: yikesinc, eherman24, liljimmi, yikesitskevin, metalandcoffee
3
  Donate link: http://yikesinc.com
4
  Tags: woocommerce, product tabs, repeatable, duplicate, customize, custom, tabs, product, woo, commerce
5
  Requires at least: 3.8
6
  Tested up to: 4.8.2
7
  Requires WooCommerce at least: 3.0.0
8
  Tested WooCommerce up to: 3.2.0
9
- Stable tag: 1.6.1
10
  License: GPLv2 or later
 
11
 
12
  Add custom tabs with content to products in WooCommerce.
13
 
@@ -23,7 +24,7 @@ If you experience any problems, please submit a ticket on our [Free WordPress Su
23
 
24
  This plugin is compatible with WPML.
25
 
26
- <i>This plugin is a fork of <a href="https://wordpress.org/plugins/woocommerce-custom-product-tabs-lite/" target="_blank">SkyVerge WooCommerce Custom Product Tabs Lite</a></i>
27
 
28
  == Installation ==
29
 
@@ -56,16 +57,16 @@ When the product is viewed on your website you will see the tabs you created to
56
  To change the order of custom tabs use the up and down "Move tab order" arrows.
57
 
58
  = How do saved tabs work? =
59
- Saved tabs are tabs you can create under the Custom Product Tabs for WooCommerce settings page and then add to as many products you would like. If you update the tab from the settings page, the changes will take effect for all products using that tab.
60
 
61
  = How do I create saved tabs? =
62
- To create a saved tab, go to the 'Custom Product Tabs for WooCommerce' page found under the Settings menu and click the "Add Tab" button.
63
 
64
  = How do I add a saved tab to a product? =
65
  To add a saved tab to a product, go to the custom tabs section on the edit product screen, click the 'Add a Saved Tab' button above the tab, and choose which tab you would like to add.
66
 
67
  = What does overriding a saved tab do? =
68
- When using a saved tab on the product page, a checkbox appears with the message 'Override Saved Tab' If you click that checkbox, edit the tab and save, the tab will be changed for that product only. Any edits to that saved tab under the 'Custom Product Tabs for WooCommerce' settings page, will not be applied to that product.
69
 
70
  = Why does the WYSIWYG editor default to the 'Visual' tab? =
71
  This was added in version 1.5 to support the dynamic adding and removing of the wp_editor/WYSIWYG editor. Without this setting, the WYSIWYG editor does not load the correct toolbar and the editor can potentially break.
@@ -76,6 +77,10 @@ Yes! Since v1.4 we've added the necessary code to ensure the custom tab data is
76
 
77
  == Changelog ==
78
 
 
 
 
 
79
  = 1.6.1 - October 12th, 2017 =
80
  * Fixed an issue with handling foreign characters. Foreign character tab titles should be working properly now. Sorry about that everyone!
81
  * Added support for native WooCommerce exporting. You can now export and import your tabs with just WooCommerce!
@@ -96,11 +101,11 @@ Yes! Since v1.4 we've added the necessary code to ensure the custom tab data is
96
  * Generated new POT file.
97
  * Added support and hooks for our new Custom Product Tabs Pro plugin!
98
 
99
- = 1.5.17 - Auguest 23rd, 2017 =
100
  * Cleaning up some PHP Notices being thrown - thanks to @ZombiEquinox on GitHub for reporting this
101
  * Updating readme compatibility values
102
 
103
- = 1.5.16 - Auguest 1st, 2017 =
104
  * Adding a proper deactivation hook. The plugin will leave no trace.
105
 
106
  = 1.5.15 - June 8th, 2017 =
@@ -151,7 +156,7 @@ Yes! Since v1.4 we've added the necessary code to ensure the custom tab data is
151
 
152
  = 1.5.1 - December 22nd, 2016 =
153
  * Fixed bug that caused content to be copied incorrectly when moving tabs up / down
154
- * Only on the product page will the editor defaul to 'Visual' (instead of every page)
155
 
156
  = 1.5 - December 20th, 2016 =
157
  * Version 1.5 includes a brand new feature - saved tabs - as well as a number of bug fixes, style tweaks, code clean-up, and comments
1
  === Custom Product Tabs for WooCommerce ===
2
+ Contributors: yikesinc, eherman24, liljimmi, yikesitskevin, metalandcoffee, mialevesque
3
  Donate link: http://yikesinc.com
4
  Tags: woocommerce, product tabs, repeatable, duplicate, customize, custom, tabs, product, woo, commerce
5
  Requires at least: 3.8
6
  Tested up to: 4.8.2
7
  Requires WooCommerce at least: 3.0.0
8
  Tested WooCommerce up to: 3.2.0
9
+ Stable tag: 1.6.2
10
  License: GPLv2 or later
11
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
12
 
13
  Add custom tabs with content to products in WooCommerce.
14
 
24
 
25
  This plugin is compatible with WPML.
26
 
27
+ Upgrade to [Custom Product Tabs Pro](https://yikesplugins.com/plugin/custom-product-tabs-pro/) for great enhanced features!
28
 
29
  == Installation ==
30
 
57
  To change the order of custom tabs use the up and down "Move tab order" arrows.
58
 
59
  = How do saved tabs work? =
60
+ Saved tabs are tabs you can create and then add to as many products you would like. If you update a saved tab, the changes will be updated for all products using that tab.
61
 
62
  = How do I create saved tabs? =
63
+ To create a saved tab, click on the 'Custom Product Tabs' item on the WordPress dashboard menu and click the "Add Tab" button.
64
 
65
  = How do I add a saved tab to a product? =
66
  To add a saved tab to a product, go to the custom tabs section on the edit product screen, click the 'Add a Saved Tab' button above the tab, and choose which tab you would like to add.
67
 
68
  = What does overriding a saved tab do? =
69
+ When using a saved tab on a product, a checkbox appears with the message 'Override Saved Tab' If you click that checkbox, edit the tab and save, the tab will be changed for that product only. Any edits to that saved tab under 'Custom Product Tabs' will not be applied to that product.
70
 
71
  = Why does the WYSIWYG editor default to the 'Visual' tab? =
72
  This was added in version 1.5 to support the dynamic adding and removing of the wp_editor/WYSIWYG editor. Without this setting, the WYSIWYG editor does not load the correct toolbar and the editor can potentially break.
77
 
78
  == Changelog ==
79
 
80
+ = 1.6.2 - October 13th, 2017 =
81
+ * Fixed a PHP Fatal Error that was occurring for users with PHP versions < 5.5.
82
+ * Updated some of our documentation and language
83
+
84
  = 1.6.1 - October 12th, 2017 =
85
  * Fixed an issue with handling foreign characters. Foreign character tab titles should be working properly now. Sorry about that everyone!
86
  * Added support for native WooCommerce exporting. You can now export and import your tabs with just WooCommerce!
101
  * Generated new POT file.
102
  * Added support and hooks for our new Custom Product Tabs Pro plugin!
103
 
104
+ = 1.5.17 - August 23rd, 2017 =
105
  * Cleaning up some PHP Notices being thrown - thanks to @ZombiEquinox on GitHub for reporting this
106
  * Updating readme compatibility values
107
 
108
+ = 1.5.16 - August 1st, 2017 =
109
  * Adding a proper deactivation hook. The plugin will leave no trace.
110
 
111
  = 1.5.15 - June 8th, 2017 =
156
 
157
  = 1.5.1 - December 22nd, 2016 =
158
  * Fixed bug that caused content to be copied incorrectly when moving tabs up / down
159
+ * Only on the product page will the editor default to 'Visual' (instead of every page)
160
 
161
  = 1.5 - December 20th, 2016 =
162
  * Version 1.5 includes a brand new feature - saved tabs - as well as a number of bug fixes, style tweaks, code clean-up, and comments
slider/css/lightslider.css CHANGED
@@ -1,395 +1,395 @@
1
- /*! lightslider - v1.1.6 - 2016-10-25
2
- * https://github.com/sachinchoolur/lightslider
3
- * Copyright (c) 2016 Sachin N; Licensed MIT */
4
- /*! lightslider - v1.1.3 - 2015-04-14
5
- * https://github.com/sachinchoolur/lightslider
6
- * Copyright (c) 2015 Sachin N; Licensed MIT */
7
- /** /!!! core css Should not edit !!!/**/
8
-
9
- .lSSlideOuter {
10
- overflow: hidden;
11
- -webkit-touch-callout: none;
12
- -webkit-user-select: none;
13
- -khtml-user-select: none;
14
- -moz-user-select: none;
15
- -ms-user-select: none;
16
- user-select: none
17
- }
18
- .lightSlider:before, .lightSlider:after {
19
- content: " ";
20
- display: table;
21
- }
22
- .lightSlider {
23
- overflow: hidden;
24
- margin: 0;
25
- }
26
- .lSSlideWrapper {
27
- max-width: 100%;
28
- overflow: hidden;
29
- position: relative;
30
- }
31
- .lSSlideWrapper > .lightSlider:after {
32
- clear: both;
33
- }
34
- .lSSlideWrapper .lSSlide {
35
- -webkit-transform: translate(0px, 0px);
36
- -ms-transform: translate(0px, 0px);
37
- transform: translate(0px, 0px);
38
- -webkit-transition: all 1s;
39
- -webkit-transition-property: -webkit-transform,height;
40
- -moz-transition-property: -moz-transform,height;
41
- transition-property: transform,height;
42
- -webkit-transition-duration: inherit !important;
43
- transition-duration: inherit !important;
44
- -webkit-transition-timing-function: inherit !important;
45
- transition-timing-function: inherit !important;
46
- }
47
- .lSSlideWrapper .lSFade {
48
- position: relative;
49
- }
50
- .lSSlideWrapper .lSFade > * {
51
- position: absolute !important;
52
- top: 0;
53
- left: 0;
54
- z-index: 9;
55
- margin-right: 0;
56
- width: 100%;
57
- }
58
- .lSSlideWrapper.usingCss .lSFade > * {
59
- opacity: 0;
60
- -webkit-transition-delay: 0s;
61
- transition-delay: 0s;
62
- -webkit-transition-duration: inherit !important;
63
- transition-duration: inherit !important;
64
- -webkit-transition-property: opacity;
65
- transition-property: opacity;
66
- -webkit-transition-timing-function: inherit !important;
67
- transition-timing-function: inherit !important;
68
- }
69
- .lSSlideWrapper .lSFade > *.active {
70
- z-index: 10;
71
- }
72
- .lSSlideWrapper.usingCss .lSFade > *.active {
73
- opacity: 1;
74
- }
75
- /** /!!! End of core css Should not edit !!!/**/
76
-
77
- /* Pager */
78
- .lSSlideOuter .lSPager.lSpg {
79
- margin: 10px 0 0;
80
- padding: 0;
81
- text-align: center;
82
- }
83
- .lSSlideOuter .lSPager.lSpg > li {
84
- cursor: pointer;
85
- display: inline-block;
86
- padding: 0 5px;
87
- }
88
- .lSSlideOuter .lSPager.lSpg > li a {
89
- background-color: #222222;
90
- border-radius: 30px;
91
- display: inline-block;
92
- height: 8px;
93
- overflow: hidden;
94
- text-indent: -999em;
95
- width: 8px;
96
- position: relative;
97
- z-index: 99;
98
- -webkit-transition: all 0.5s linear 0s;
99
- transition: all 0.5s linear 0s;
100
- }
101
- .lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a {
102
- background-color: #428bca;
103
- }
104
- .lSSlideOuter .media {
105
- opacity: 0.8;
106
- }
107
- .lSSlideOuter .media.active {
108
- opacity: 1;
109
- }
110
- /* End of pager */
111
-
112
- /** Gallery */
113
- .lSSlideOuter .lSPager.lSGallery {
114
- list-style: none outside none;
115
- padding-left: 0;
116
- margin: 0;
117
- overflow: hidden;
118
- transform: translate3d(0px, 0px, 0px);
119
- -moz-transform: translate3d(0px, 0px, 0px);
120
- -ms-transform: translate3d(0px, 0px, 0px);
121
- -webkit-transform: translate3d(0px, 0px, 0px);
122
- -o-transform: translate3d(0px, 0px, 0px);
123
- -webkit-transition-property: -webkit-transform;
124
- -moz-transition-property: -moz-transform;
125
- -webkit-touch-callout: none;
126
- -webkit-user-select: none;
127
- -khtml-user-select: none;
128
- -moz-user-select: none;
129
- -ms-user-select: none;
130
- user-select: none;
131
- }
132
- .lSSlideOuter .lSPager.lSGallery li {
133
- overflow: hidden;
134
- -webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;
135
- transition: border-radius 0.12s linear 0s 0.35s linear 0s;
136
- }
137
- .lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover {
138
- border-radius: 5px;
139
- }
140
- .lSSlideOuter .lSPager.lSGallery img {
141
- display: block;
142
- height: auto;
143
- max-width: 100%;
144
- }
145
- .lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after {
146
- content: " ";
147
- display: table;
148
- }
149
- .lSSlideOuter .lSPager.lSGallery:after {
150
- clear: both;
151
- }
152
- /* End of Gallery*/
153
-
154
- /* slider actions */
155
- .lSAction > a {
156
- width: 32px;
157
- display: block;
158
- top: 50%;
159
- height: 32px;
160
- background-image: url('../img/controls.png');
161
- cursor: pointer;
162
- position: absolute;
163
- z-index: 99;
164
- margin-top: -16px;
165
- opacity: 0.5;
166
- -webkit-transition: opacity 0.35s linear 0s;
167
- transition: opacity 0.35s linear 0s;
168
- }
169
- .lSAction > a:hover {
170
- opacity: 1;
171
- }
172
- .lSAction > .lSPrev {
173
- background-position: 0 0;
174
- left: 10px;
175
- }
176
- .lSAction > .lSNext {
177
- background-position: -32px 0;
178
- right: 10px;
179
- }
180
- .lSAction > a.disabled {
181
- pointer-events: none;
182
- }
183
- .cS-hidden {
184
- height: 1px;
185
- opacity: 0;
186
- filter: alpha(opacity=0);
187
- overflow: hidden;
188
- }
189
-
190
-
191
- /* vertical */
192
- .lSSlideOuter.vertical {
193
- position: relative;
194
- }
195
- .lSSlideOuter.vertical.noPager {
196
- padding-right: 0px !important;
197
- }
198
- .lSSlideOuter.vertical .lSGallery {
199
- position: absolute !important;
200
- right: 0;
201
- top: 0;
202
- }
203
- .lSSlideOuter.vertical .lightSlider > * {
204
- width: 100% !important;
205
- max-width: none !important;
206
- }
207
-
208
- /* vertical controlls */
209
- .lSSlideOuter.vertical .lSAction > a {
210
- left: 50%;
211
- margin-left: -14px;
212
- margin-top: 0;
213
- }
214
- .lSSlideOuter.vertical .lSAction > .lSNext {
215
- background-position: 31px -31px;
216
- bottom: 10px;
217
- top: auto;
218
- }
219
- .lSSlideOuter.vertical .lSAction > .lSPrev {
220
- background-position: 0 -31px;
221
- bottom: auto;
222
- top: 10px;
223
- }
224
- /* vertical */
225
-
226
-
227
- /* Rtl */
228
- .lSSlideOuter.lSrtl {
229
- direction: rtl;
230
- }
231
- .lSSlideOuter .lightSlider, .lSSlideOuter .lSPager {
232
- padding-left: 0;
233
- list-style: none outside none;
234
- }
235
- .lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager {
236
- padding-right: 0;
237
- }
238
- .lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li {
239
- float: left;
240
- }
241
- .lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li {
242
- float: right !important;
243
- }
244
- /* Rtl */
245
-
246
- @-webkit-keyframes rightEnd {
247
- 0% {
248
- left: 0;
249
- }
250
-
251
- 50% {
252
- left: -15px;
253
- }
254
-
255
- 100% {
256
- left: 0;
257
- }
258
- }
259
- @keyframes rightEnd {
260
- 0% {
261
- left: 0;
262
- }
263
-
264
- 50% {
265
- left: -15px;
266
- }
267
-
268
- 100% {
269
- left: 0;
270
- }
271
- }
272
- @-webkit-keyframes topEnd {
273
- 0% {
274
- top: 0;
275
- }
276
-
277
- 50% {
278
- top: -15px;
279
- }
280
-
281
- 100% {
282
- top: 0;
283
- }
284
- }
285
- @keyframes topEnd {
286
- 0% {
287
- top: 0;
288
- }
289
-
290
- 50% {
291
- top: -15px;
292
- }
293
-
294
- 100% {
295
- top: 0;
296
- }
297
- }
298
- @-webkit-keyframes leftEnd {
299
- 0% {
300
- left: 0;
301
- }
302
-
303
- 50% {
304
- left: 15px;
305
- }
306
-
307
- 100% {
308
- left: 0;
309
- }
310
- }
311
- @keyframes leftEnd {
312
- 0% {
313
- left: 0;
314
- }
315
-
316
- 50% {
317
- left: 15px;
318
- }
319
-
320
- 100% {
321
- left: 0;
322
- }
323
- }
324
- @-webkit-keyframes bottomEnd {
325
- 0% {
326
- bottom: 0;
327
- }
328
-
329
- 50% {
330
- bottom: -15px;
331
- }
332
-
333
- 100% {
334
- bottom: 0;
335
- }
336
- }
337
- @keyframes bottomEnd {
338
- 0% {
339
- bottom: 0;
340
- }
341
-
342
- 50% {
343
- bottom: -15px;
344
- }
345
-
346
- 100% {
347
- bottom: 0;
348
- }
349
- }
350
- .lSSlideOuter .rightEnd {
351
- -webkit-animation: rightEnd 0.3s;
352
- animation: rightEnd 0.3s;
353
- position: relative;
354
- }
355
- .lSSlideOuter .leftEnd {
356
- -webkit-animation: leftEnd 0.3s;
357
- animation: leftEnd 0.3s;
358
- position: relative;
359
- }
360
- .lSSlideOuter.vertical .rightEnd {
361
- -webkit-animation: topEnd 0.3s;
362
- animation: topEnd 0.3s;
363
- position: relative;
364
- }
365
- .lSSlideOuter.vertical .leftEnd {
366
- -webkit-animation: bottomEnd 0.3s;
367
- animation: bottomEnd 0.3s;
368
- position: relative;
369
- }
370
- .lSSlideOuter.lSrtl .rightEnd {
371
- -webkit-animation: leftEnd 0.3s;
372
- animation: leftEnd 0.3s;
373
- position: relative;
374
- }
375
- .lSSlideOuter.lSrtl .leftEnd {
376
- -webkit-animation: rightEnd 0.3s;
377
- animation: rightEnd 0.3s;
378
- position: relative;
379
- }
380
- /*/ GRab cursor */
381
- .lightSlider.lsGrab > * {
382
- cursor: -webkit-grab;
383
- cursor: -moz-grab;
384
- cursor: -o-grab;
385
- cursor: -ms-grab;
386
- cursor: grab;
387
- }
388
- .lightSlider.lsGrabbing > * {
389
- cursor: move;
390
- cursor: -webkit-grabbing;
391
- cursor: -moz-grabbing;
392
- cursor: -o-grabbing;
393
- cursor: -ms-grabbing;
394
- cursor: grabbing;
395
  }
1
+ /*! lightslider - v1.1.6 - 2016-10-25
2
+ * https://github.com/sachinchoolur/lightslider
3
+ * Copyright (c) 2016 Sachin N; Licensed MIT */
4
+ /*! lightslider - v1.1.3 - 2015-04-14
5
+ * https://github.com/sachinchoolur/lightslider
6
+ * Copyright (c) 2015 Sachin N; Licensed MIT */
7
+ /** /!!! core css Should not edit !!!/**/
8
+
9
+ .lSSlideOuter {
10
+ overflow: hidden;
11
+ -webkit-touch-callout: none;
12
+ -webkit-user-select: none;
13
+ -khtml-user-select: none;
14
+ -moz-user-select: none;
15
+ -ms-user-select: none;
16
+ user-select: none
17
+ }
18
+ .lightSlider:before, .lightSlider:after {
19
+ content: " ";
20
+ display: table;
21
+ }
22
+ .lightSlider {
23
+ overflow: hidden;
24
+ margin: 0;
25
+ }
26
+ .lSSlideWrapper {
27
+ max-width: 100%;
28
+ overflow: hidden;
29
+ position: relative;
30
+ }
31
+ .lSSlideWrapper > .lightSlider:after {
32
+ clear: both;
33
+ }
34
+ .lSSlideWrapper .lSSlide {
35
+ -webkit-transform: translate(0px, 0px);
36
+ -ms-transform: translate(0px, 0px);
37
+ transform: translate(0px, 0px);
38
+ -webkit-transition: all 1s;
39
+ -webkit-transition-property: -webkit-transform,height;
40
+ -moz-transition-property: -moz-transform,height;
41
+ transition-property: transform,height;
42
+ -webkit-transition-duration: inherit !important;
43
+ transition-duration: inherit !important;
44
+ -webkit-transition-timing-function: inherit !important;
45
+ transition-timing-function: inherit !important;
46
+ }
47
+ .lSSlideWrapper .lSFade {
48
+ position: relative;
49
+ }
50
+ .lSSlideWrapper .lSFade > * {
51
+ position: absolute !important;
52
+ top: 0;
53
+ left: 0;
54
+ z-index: 9;
55
+ margin-right: 0;
56
+ width: 100%;
57
+ }
58
+ .lSSlideWrapper.usingCss .lSFade > * {
59
+ opacity: 0;
60
+ -webkit-transition-delay: 0s;
61
+ transition-delay: 0s;
62
+ -webkit-transition-duration: inherit !important;
63
+ transition-duration: inherit !important;
64
+ -webkit-transition-property: opacity;
65
+ transition-property: opacity;
66
+ -webkit-transition-timing-function: inherit !important;
67
+ transition-timing-function: inherit !important;
68
+ }
69
+ .lSSlideWrapper .lSFade > *.active {
70
+ z-index: 10;
71
+ }
72
+ .lSSlideWrapper.usingCss .lSFade > *.active {
73
+ opacity: 1;
74
+ }
75
+ /** /!!! End of core css Should not edit !!!/**/
76
+
77
+ /* Pager */
78
+ .lSSlideOuter .lSPager.lSpg {
79
+ margin: 10px 0 0;
80
+ padding: 0;
81
+ text-align: center;
82
+ }
83
+ .lSSlideOuter .lSPager.lSpg > li {
84
+ cursor: pointer;
85
+ display: inline-block;
86
+ padding: 0 5px;
87
+ }
88
+ .lSSlideOuter .lSPager.lSpg > li a {
89
+ background-color: #222222;
90
+ border-radius: 30px;
91
+ display: inline-block;
92
+ height: 8px;
93
+ overflow: hidden;
94
+ text-indent: -999em;
95
+ width: 8px;
96
+ position: relative;
97
+ z-index: 99;
98
+ -webkit-transition: all 0.5s linear 0s;
99
+ transition: all 0.5s linear 0s;
100
+ }
101
+ .lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a {
102
+ background-color: #428bca;
103
+ }
104
+ .lSSlideOuter .media {
105
+ opacity: 0.8;
106
+ }
107
+ .lSSlideOuter .media.active {
108
+ opacity: 1;
109
+ }
110
+ /* End of pager */
111
+
112
+ /** Gallery */
113
+ .lSSlideOuter .lSPager.lSGallery {
114
+ list-style: none outside none;
115
+ padding-left: 0;
116
+ margin: 0;
117
+ overflow: hidden;
118
+ transform: translate3d(0px, 0px, 0px);
119
+ -moz-transform: translate3d(0px, 0px, 0px);
120
+ -ms-transform: translate3d(0px, 0px, 0px);
121
+ -webkit-transform: translate3d(0px, 0px, 0px);
122
+ -o-transform: translate3d(0px, 0px, 0px);
123
+ -webkit-transition-property: -webkit-transform;
124
+ -moz-transition-property: -moz-transform;
125
+ -webkit-touch-callout: none;
126
+ -webkit-user-select: none;
127
+ -khtml-user-select: none;
128
+ -moz-user-select: none;
129
+ -ms-user-select: none;
130
+ user-select: none;
131
+ }
132
+ .lSSlideOuter .lSPager.lSGallery li {
133
+ overflow: hidden;
134
+ -webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;
135
+ transition: border-radius 0.12s linear 0s 0.35s linear 0s;
136
+ }
137
+ .lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover {
138
+ border-radius: 5px;
139
+ }
140
+ .lSSlideOuter .lSPager.lSGallery img {
141
+ display: block;
142
+ height: auto;
143
+ max-width: 100%;
144
+ }
145
+ .lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after {
146
+ content: " ";
147
+ display: table;
148
+ }
149
+ .lSSlideOuter .lSPager.lSGallery:after {
150
+ clear: both;
151
+ }
152
+ /* End of Gallery*/
153
+
154
+ /* slider actions */
155
+ .lSAction > a {
156
+ width: 32px;
157
+ display: block;
158
+ top: 50%;
159
+ height: 32px;
160
+ background-image: url('../img/controls.png');
161
+ cursor: pointer;
162
+ position: absolute;
163
+ z-index: 99;
164
+ margin-top: -16px;
165
+ opacity: 0.5;
166
+ -webkit-transition: opacity 0.35s linear 0s;
167
+ transition: opacity 0.35s linear 0s;
168
+ }
169
+ .lSAction > a:hover {
170
+ opacity: 1;
171
+ }
172
+ .lSAction > .lSPrev {
173
+ background-position: 0 0;
174
+ left: 10px;
175
+ }
176
+ .lSAction > .lSNext {
177
+ background-position: -32px 0;
178
+ right: 10px;
179
+ }
180
+ .lSAction > a.disabled {
181
+ pointer-events: none;
182
+ }
183
+ .cS-hidden {
184
+ height: 1px;
185
+ opacity: 0;
186
+ filter: alpha(opacity=0);
187
+ overflow: hidden;
188
+ }
189
+
190
+
191
+ /* vertical */
192
+ .lSSlideOuter.vertical {
193
+ position: relative;
194
+ }
195
+ .lSSlideOuter.vertical.noPager {
196
+ padding-right: 0px !important;
197
+ }
198
+ .lSSlideOuter.vertical .lSGallery {
199
+ position: absolute !important;
200
+ right: 0;
201
+ top: 0;
202
+ }
203
+ .lSSlideOuter.vertical .lightSlider > * {
204
+ width: 100% !important;
205
+ max-width: none !important;
206
+ }
207
+
208
+ /* vertical controlls */
209
+ .lSSlideOuter.vertical .lSAction > a {
210
+ left: 50%;
211
+ margin-left: -14px;
212
+ margin-top: 0;
213
+ }
214
+ .lSSlideOuter.vertical .lSAction > .lSNext {
215
+ background-position: 31px -31px;
216
+ bottom: 10px;
217
+ top: auto;
218
+ }
219
+ .lSSlideOuter.vertical .lSAction > .lSPrev {
220
+ background-position: 0 -31px;
221
+ bottom: auto;
222
+ top: 10px;
223
+ }
224
+ /* vertical */
225
+
226
+
227
+ /* Rtl */
228
+ .lSSlideOuter.lSrtl {
229
+ direction: rtl;
230
+ }
231
+ .lSSlideOuter .lightSlider, .lSSlideOuter .lSPager {
232
+ padding-left: 0;
233
+ list-style: none outside none;
234
+ }
235
+ .lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager {
236
+ padding-right: 0;
237
+ }
238
+ .lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li {
239
+ float: left;
240
+ }
241
+ .lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li {
242
+ float: right !important;
243
+ }
244
+ /* Rtl */
245
+
246
+ @-webkit-keyframes rightEnd {
247
+ 0% {
248
+ left: 0;
249
+ }
250
+
251
+ 50% {
252
+ left: -15px;
253
+ }
254
+
255
+ 100% {
256
+ left: 0;
257
+ }
258
+ }
259
+ @keyframes rightEnd {
260
+ 0% {
261
+ left: 0;
262
+ }
263
+
264
+ 50% {
265
+ left: -15px;
266
+ }
267
+
268
+ 100% {
269
+ left: 0;
270
+ }
271
+ }
272
+ @-webkit-keyframes topEnd {
273
+ 0% {
274
+ top: 0;
275
+ }
276
+
277
+ 50% {
278
+ top: -15px;
279
+ }
280
+
281
+ 100% {
282
+ top: 0;
283
+ }
284
+ }
285
+ @keyframes topEnd {
286
+ 0% {
287
+ top: 0;
288
+ }
289
+
290
+ 50% {
291
+ top: -15px;
292
+ }
293
+
294
+ 100% {
295
+ top: 0;
296
+ }
297
+ }
298
+ @-webkit-keyframes leftEnd {
299
+ 0% {
300
+ left: 0;
301
+ }
302
+
303
+ 50% {
304
+ left: 15px;
305
+ }
306
+
307
+ 100% {
308
+ left: 0;
309
+ }
310
+ }
311
+ @keyframes leftEnd {
312
+ 0% {
313
+ left: 0;
314
+ }
315
+
316
+ 50% {
317
+ left: 15px;
318
+ }
319
+
320
+ 100% {
321
+ left: 0;
322
+ }
323
+ }
324
+ @-webkit-keyframes bottomEnd {
325
+ 0% {
326
+ bottom: 0;
327
+ }
328
+
329
+ 50% {
330
+ bottom: -15px;
331
+ }
332
+
333
+ 100% {
334
+ bottom: 0;
335
+ }
336
+ }
337
+ @keyframes bottomEnd {
338
+ 0% {
339
+ bottom: 0;
340
+ }
341
+
342
+ 50% {
343
+ bottom: -15px;
344
+ }
345
+
346
+ 100% {
347
+ bottom: 0;
348
+ }
349
+ }
350
+ .lSSlideOuter .rightEnd {
351
+ -webkit-animation: rightEnd 0.3s;
352
+ animation: rightEnd 0.3s;
353
+ position: relative;
354
+ }
355
+ .lSSlideOuter .leftEnd {
356
+ -webkit-animation: leftEnd 0.3s;
357
+ animation: leftEnd 0.3s;
358
+ position: relative;
359
+ }
360
+ .lSSlideOuter.vertical .rightEnd {
361
+ -webkit-animation: topEnd 0.3s;
362
+ animation: topEnd 0.3s;
363
+ position: relative;
364
+ }
365
+ .lSSlideOuter.vertical .leftEnd {
366
+ -webkit-animation: bottomEnd 0.3s;
367
+ animation: bottomEnd 0.3s;
368
+ position: relative;
369
+ }
370
+ .lSSlideOuter.lSrtl .rightEnd {
371
+ -webkit-animation: leftEnd 0.3s;
372
+ animation: leftEnd 0.3s;
373
+ position: relative;
374
+ }
375
+ .lSSlideOuter.lSrtl .leftEnd {
376
+ -webkit-animation: rightEnd 0.3s;
377
+ animation: rightEnd 0.3s;
378
+ position: relative;
379
+ }
380
+ /*/ GRab cursor */
381
+ .lightSlider.lsGrab > * {
382
+ cursor: -webkit-grab;
383
+ cursor: -moz-grab;
384
+ cursor: -o-grab;
385
+ cursor: -ms-grab;
386
+ cursor: grab;
387
+ }
388
+ .lightSlider.lsGrabbing > * {
389
+ cursor: move;
390
+ cursor: -webkit-grabbing;
391
+ cursor: -moz-grabbing;
392
+ cursor: -o-grabbing;
393
+ cursor: -ms-grabbing;
394
+ cursor: grabbing;
395
  }
slider/css/lightslider.min.css CHANGED
@@ -1,3 +1,3 @@
1
- /*! lightslider - v1.1.3 - 2015-04-14
2
- * https://github.com/sachinchoolur/lightslider
3
  * Copyright (c) 2015 Sachin N; Licensed MIT */.lSSlideWrapper,.lSSlideWrapper .lSFade{position:relative}.lSSlideWrapper .lSSlide,.lSSlideWrapper.usingCss .lSFade>*{-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important;-webkit-transition-duration:inherit!important;transition-duration:inherit!important}.lSSlideOuter,.lSSlideOuter .lSPager.lSGallery{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none}.lSSlideOuter .lSPager.lSGallery:after,.lSSlideWrapper>.lightSlider:after{clear:both}.lSSlideOuter{overflow:hidden;user-select:none}.lightSlider:after,.lightSlider:before{content:" ";display:table}.lightSlider{overflow:hidden;margin:0}.lSSlideWrapper{max-width:100%;overflow:hidden}.lSSlideWrapper .lSSlide{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);-webkit-transition:all 1s;-webkit-transition-property:-webkit-transform,height;-moz-transition-property:-moz-transform,height;transition-property:transform,height}.lSSlideWrapper .lSFade>*{position:absolute!important;top:0;left:0;z-index:9;margin-right:0;width:100%}.lSSlideWrapper.usingCss .lSFade>*{opacity:0;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-property:opacity;transition-property:opacity}.lSSlideWrapper .lSFade>.active{z-index:10}.lSSlideWrapper.usingCss .lSFade>.active{opacity:1}.lSSlideOuter .lSPager.lSpg{margin:10px 0 0;padding:0;text-align:center}.lSSlideOuter .lSPager.lSpg>li{cursor:pointer;display:inline-block;padding:0 5px}.lSSlideOuter .lSPager.lSpg>li a{background-color:#222;border-radius:30px;display:inline-block;height:8px;overflow:hidden;text-indent:-999em;width:8px;position:relative;z-index:99;-webkit-transition:all .5s linear 0s;transition:all .5s linear 0s}.lSSlideOuter .lSPager.lSpg>li.active a,.lSSlideOuter .lSPager.lSpg>li:hover a{background-color:#428bca}.lSSlideOuter .media{opacity:.8}.lSSlideOuter .media.active{opacity:1}.lSSlideOuter .lSPager.lSGallery{list-style:none;padding-left:0;margin:0;overflow:hidden;transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;user-select:none}.lSSlideOuter .lSPager.lSGallery li{overflow:hidden;-webkit-transition:border-radius .12s linear 0s .35s linear 0s;transition:border-radius .12s linear 0s .35s linear 0s}.lSSlideOuter .lSPager.lSGallery li.active,.lSSlideOuter .lSPager.lSGallery li:hover{border-radius:5px}.lSSlideOuter .lSPager.lSGallery img{display:block;height:auto;max-width:100%}.lSSlideOuter .lSPager.lSGallery:after,.lSSlideOuter .lSPager.lSGallery:before{content:" ";display:table}.lSAction>a{width:32px;display:block;top:50%;height:32px;background-image:url(../img/controls.png);cursor:pointer;position:absolute;z-index:99;margin-top:-16px;opacity:.5;-webkit-transition:opacity .35s linear 0s;transition:opacity .35s linear 0s}.lSAction>a:hover{opacity:1}.lSAction>.lSPrev{background-position:0 0;left:10px}.lSAction>.lSNext{background-position:-32px 0;right:10px}.lSAction>a.disabled{pointer-events:none}.cS-hidden{height:1px;opacity:0;filter:alpha(opacity=0);overflow:hidden}.lSSlideOuter.vertical{position:relative}.lSSlideOuter.vertical.noPager{padding-right:0!important}.lSSlideOuter.vertical .lSGallery{position:absolute!important;right:0;top:0}.lSSlideOuter.vertical .lightSlider>*{width:100%!important;max-width:none!important}.lSSlideOuter.vertical .lSAction>a{left:50%;margin-left:-14px;margin-top:0}.lSSlideOuter.vertical .lSAction>.lSNext{background-position:31px -31px;bottom:10px;top:auto}.lSSlideOuter.vertical .lSAction>.lSPrev{background-position:0 -31px;bottom:auto;top:10px}.lSSlideOuter.lSrtl{direction:rtl}.lSSlideOuter .lSPager,.lSSlideOuter .lightSlider{padding-left:0;list-style:none}.lSSlideOuter.lSrtl .lSPager,.lSSlideOuter.lSrtl .lightSlider{padding-right:0}.lSSlideOuter .lSGallery li,.lSSlideOuter .lightSlider>*{float:left}.lSSlideOuter.lSrtl .lSGallery li,.lSSlideOuter.lSrtl .lightSlider>*{float:right!important}@-webkit-keyframes rightEnd{0%,100%{left:0}50%{left:-15px}}@keyframes rightEnd{0%,100%{left:0}50%{left:-15px}}@-webkit-keyframes topEnd{0%,100%{top:0}50%{top:-15px}}@keyframes topEnd{0%,100%{top:0}50%{top:-15px}}@-webkit-keyframes leftEnd{0%,100%{left:0}50%{left:15px}}@keyframes leftEnd{0%,100%{left:0}50%{left:15px}}@-webkit-keyframes bottomEnd{0%,100%{bottom:0}50%{bottom:-15px}}@keyframes bottomEnd{0%,100%{bottom:0}50%{bottom:-15px}}.lSSlideOuter .rightEnd{-webkit-animation:rightEnd .3s;animation:rightEnd .3s;position:relative}.lSSlideOuter .leftEnd{-webkit-animation:leftEnd .3s;animation:leftEnd .3s;position:relative}.lSSlideOuter.vertical .rightEnd{-webkit-animation:topEnd .3s;animation:topEnd .3s;position:relative}.lSSlideOuter.vertical .leftEnd{-webkit-animation:bottomEnd .3s;animation:bottomEnd .3s;position:relative}.lSSlideOuter.lSrtl .rightEnd{-webkit-animation:leftEnd .3s;animation:leftEnd .3s;position:relative}.lSSlideOuter.lSrtl .leftEnd{-webkit-animation:rightEnd .3s;animation:rightEnd .3s;position:relative}.lightSlider.lsGrab>*{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lightSlider.lsGrabbing>*{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}
1
+ /*! lightslider - v1.1.3 - 2015-04-14
2
+ * https://github.com/sachinchoolur/lightslider
3
  * Copyright (c) 2015 Sachin N; Licensed MIT */.lSSlideWrapper,.lSSlideWrapper .lSFade{position:relative}.lSSlideWrapper .lSSlide,.lSSlideWrapper.usingCss .lSFade>*{-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important;-webkit-transition-duration:inherit!important;transition-duration:inherit!important}.lSSlideOuter,.lSSlideOuter .lSPager.lSGallery{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none}.lSSlideOuter .lSPager.lSGallery:after,.lSSlideWrapper>.lightSlider:after{clear:both}.lSSlideOuter{overflow:hidden;user-select:none}.lightSlider:after,.lightSlider:before{content:" ";display:table}.lightSlider{overflow:hidden;margin:0}.lSSlideWrapper{max-width:100%;overflow:hidden}.lSSlideWrapper .lSSlide{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);-webkit-transition:all 1s;-webkit-transition-property:-webkit-transform,height;-moz-transition-property:-moz-transform,height;transition-property:transform,height}.lSSlideWrapper .lSFade>*{position:absolute!important;top:0;left:0;z-index:9;margin-right:0;width:100%}.lSSlideWrapper.usingCss .lSFade>*{opacity:0;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-property:opacity;transition-property:opacity}.lSSlideWrapper .lSFade>.active{z-index:10}.lSSlideWrapper.usingCss .lSFade>.active{opacity:1}.lSSlideOuter .lSPager.lSpg{margin:10px 0 0;padding:0;text-align:center}.lSSlideOuter .lSPager.lSpg>li{cursor:pointer;display:inline-block;padding:0 5px}.lSSlideOuter .lSPager.lSpg>li a{background-color:#222;border-radius:30px;display:inline-block;height:8px;overflow:hidden;text-indent:-999em;width:8px;position:relative;z-index:99;-webkit-transition:all .5s linear 0s;transition:all .5s linear 0s}.lSSlideOuter .lSPager.lSpg>li.active a,.lSSlideOuter .lSPager.lSpg>li:hover a{background-color:#428bca}.lSSlideOuter .media{opacity:.8}.lSSlideOuter .media.active{opacity:1}.lSSlideOuter .lSPager.lSGallery{list-style:none;padding-left:0;margin:0;overflow:hidden;transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;user-select:none}.lSSlideOuter .lSPager.lSGallery li{overflow:hidden;-webkit-transition:border-radius .12s linear 0s .35s linear 0s;transition:border-radius .12s linear 0s .35s linear 0s}.lSSlideOuter .lSPager.lSGallery li.active,.lSSlideOuter .lSPager.lSGallery li:hover{border-radius:5px}.lSSlideOuter .lSPager.lSGallery img{display:block;height:auto;max-width:100%}.lSSlideOuter .lSPager.lSGallery:after,.lSSlideOuter .lSPager.lSGallery:before{content:" ";display:table}.lSAction>a{width:32px;display:block;top:50%;height:32px;background-image:url(../img/controls.png);cursor:pointer;position:absolute;z-index:99;margin-top:-16px;opacity:.5;-webkit-transition:opacity .35s linear 0s;transition:opacity .35s linear 0s}.lSAction>a:hover{opacity:1}.lSAction>.lSPrev{background-position:0 0;left:10px}.lSAction>.lSNext{background-position:-32px 0;right:10px}.lSAction>a.disabled{pointer-events:none}.cS-hidden{height:1px;opacity:0;filter:alpha(opacity=0);overflow:hidden}.lSSlideOuter.vertical{position:relative}.lSSlideOuter.vertical.noPager{padding-right:0!important}.lSSlideOuter.vertical .lSGallery{position:absolute!important;right:0;top:0}.lSSlideOuter.vertical .lightSlider>*{width:100%!important;max-width:none!important}.lSSlideOuter.vertical .lSAction>a{left:50%;margin-left:-14px;margin-top:0}.lSSlideOuter.vertical .lSAction>.lSNext{background-position:31px -31px;bottom:10px;top:auto}.lSSlideOuter.vertical .lSAction>.lSPrev{background-position:0 -31px;bottom:auto;top:10px}.lSSlideOuter.lSrtl{direction:rtl}.lSSlideOuter .lSPager,.lSSlideOuter .lightSlider{padding-left:0;list-style:none}.lSSlideOuter.lSrtl .lSPager,.lSSlideOuter.lSrtl .lightSlider{padding-right:0}.lSSlideOuter .lSGallery li,.lSSlideOuter .lightSlider>*{float:left}.lSSlideOuter.lSrtl .lSGallery li,.lSSlideOuter.lSrtl .lightSlider>*{float:right!important}@-webkit-keyframes rightEnd{0%,100%{left:0}50%{left:-15px}}@keyframes rightEnd{0%,100%{left:0}50%{left:-15px}}@-webkit-keyframes topEnd{0%,100%{top:0}50%{top:-15px}}@keyframes topEnd{0%,100%{top:0}50%{top:-15px}}@-webkit-keyframes leftEnd{0%,100%{left:0}50%{left:15px}}@keyframes leftEnd{0%,100%{left:0}50%{left:15px}}@-webkit-keyframes bottomEnd{0%,100%{bottom:0}50%{bottom:-15px}}@keyframes bottomEnd{0%,100%{bottom:0}50%{bottom:-15px}}.lSSlideOuter .rightEnd{-webkit-animation:rightEnd .3s;animation:rightEnd .3s;position:relative}.lSSlideOuter .leftEnd{-webkit-animation:leftEnd .3s;animation:leftEnd .3s;position:relative}.lSSlideOuter.vertical .rightEnd{-webkit-animation:topEnd .3s;animation:topEnd .3s;position:relative}.lSSlideOuter.vertical .leftEnd{-webkit-animation:bottomEnd .3s;animation:bottomEnd .3s;position:relative}.lSSlideOuter.lSrtl .rightEnd{-webkit-animation:leftEnd .3s;animation:leftEnd .3s;position:relative}.lSSlideOuter.lSrtl .leftEnd{-webkit-animation:rightEnd .3s;animation:rightEnd .3s;position:relative}.lightSlider.lsGrab>*{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lightSlider.lsGrabbing>*{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}
slider/js/lightslider.js CHANGED
@@ -1,1143 +1,1143 @@
1
- /*! lightslider - v1.1.6 - 2016-10-25
2
- * https://github.com/sachinchoolur/lightslider
3
- * Copyright (c) 2016 Sachin N; Licensed MIT */
4
- (function ($, undefined) {
5
- 'use strict';
6
- var defaults = {
7
- item: 3,
8
- autoWidth: false,
9
- slideMove: 1,
10
- slideMargin: 10,
11
- addClass: '',
12
- mode: 'slide',
13
- useCSS: true,
14
- cssEasing: 'ease', //'cubic-bezier(0.25, 0, 0.25, 1)',
15
- easing: 'linear', //'for jquery animation',//
16
- speed: 400, //ms'
17
- auto: false,
18
- pauseOnHover: false,
19
- loop: false,
20
- slideEndAnimation: true,
21
- pause: 2000,
22
- keyPress: false,
23
- controls: true,
24
- prevHtml: '',
25
- nextHtml: '',
26
- rtl: false,
27
- adaptiveHeight: false,
28
- vertical: false,
29
- verticalHeight: 500,
30
- vThumbWidth: 100,
31
- thumbItem: 10,
32
- pager: true,
33
- gallery: false,
34
- galleryMargin: 5,
35
- thumbMargin: 5,
36
- currentPagerPosition: 'middle',
37
- enableTouch: true,
38
- enableDrag: true,
39
- freeMove: true,
40
- swipeThreshold: 40,
41
- responsive: [],
42
- /* jshint ignore:start */
43
- onBeforeStart: function ($el) {},
44
- onSliderLoad: function ($el) {},
45
- onBeforeSlide: function ($el, scene) {},
46
- onAfterSlide: function ($el, scene) {},
47
- onBeforeNextSlide: function ($el, scene) {},
48
- onBeforePrevSlide: function ($el, scene) {}
49
- /* jshint ignore:end */
50
- };
51
- $.fn.lightSlider = function (options) {
52
- if (this.length === 0) {
53
- return this;
54
- }
55
-
56
- if (this.length > 1) {
57
- this.each(function () {
58
- $(this).lightSlider(options);
59
- });
60
- return this;
61
- }
62
-
63
- var plugin = {},
64
- settings = $.extend(true, {}, defaults, options),
65
- settingsTemp = {},
66
- $el = this;
67
- plugin.$el = this;
68
-
69
- if (settings.mode === 'fade') {
70
- settings.vertical = false;
71
- }
72
- var $children = $el.children(),
73
- windowW = $(window).width(),
74
- breakpoint = null,
75
- resposiveObj = null,
76
- length = 0,
77
- w = 0,
78
- on = false,
79
- elSize = 0,
80
- $slide = '',
81
- scene = 0,
82
- property = (settings.vertical === true) ? 'height' : 'width',
83
- gutter = (settings.vertical === true) ? 'margin-bottom' : 'margin-right',
84
- slideValue = 0,
85
- pagerWidth = 0,
86
- slideWidth = 0,
87
- thumbWidth = 0,
88
- interval = null,
89
- isTouch = ('ontouchstart' in document.documentElement);
90
- var refresh = {};
91
-
92
- refresh.chbreakpoint = function () {
93
- windowW = $(window).width();
94
- if (settings.responsive.length) {
95
- var item;
96
- if (settings.autoWidth === false) {
97
- item = settings.item;
98
- }
99
- if (windowW < settings.responsive[0].breakpoint) {
100
- for (var i = 0; i < settings.responsive.length; i++) {
101
- if (windowW < settings.responsive[i].breakpoint) {
102
- breakpoint = settings.responsive[i].breakpoint;
103
- resposiveObj = settings.responsive[i];
104
- }
105
- }
106
- }
107
- if (typeof resposiveObj !== 'undefined' && resposiveObj !== null) {
108
- for (var j in resposiveObj.settings) {
109
- if (resposiveObj.settings.hasOwnProperty(j)) {
110
- if (typeof settingsTemp[j] === 'undefined' || settingsTemp[j] === null) {
111
- settingsTemp[j] = settings[j];
112
- }
113
- settings[j] = resposiveObj.settings[j];
114
- }
115
- }
116
- }
117
- if (!$.isEmptyObject(settingsTemp) && windowW > settings.responsive[0].breakpoint) {
118
- for (var k in settingsTemp) {
119
- if (settingsTemp.hasOwnProperty(k)) {
120
- settings[k] = settingsTemp[k];
121
- }
122
- }
123
- }
124
- if (settings.autoWidth === false) {
125
- if (slideValue > 0 && slideWidth > 0) {
126
- if (item !== settings.item) {
127
- scene = Math.round(slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove));
128
- }
129
- }
130
- }
131
- }
132
- };
133
-
134
- refresh.calSW = function () {
135
- if (settings.autoWidth === false) {
136
- slideWidth = (elSize - ((settings.item * (settings.slideMargin)) - settings.slideMargin)) / settings.item;
137
- }
138
- };
139
-
140
- refresh.calWidth = function (cln) {
141
- var ln = cln === true ? $slide.find('.lslide').length : $children.length;
142
- if (settings.autoWidth === false) {
143
- w = ln * (slideWidth + settings.slideMargin);
144
- } else {
145
- w = 0;
146
- for (var i = 0; i < ln; i++) {
147
- w += (parseInt($children.eq(i).width()) + settings.slideMargin);
148
- }
149
- }
150
- return w;
151
- };
152
- plugin = {
153
- doCss: function () {
154
- var support = function () {
155
- var transition = ['transition', 'MozTransition', 'WebkitTransition', 'OTransition', 'msTransition', 'KhtmlTransition'];
156
- var root = document.documentElement;
157
- for (var i = 0; i < transition.length; i++) {
158
- if (transition[i] in root.style) {
159
- return true;
160
- }
161
- }
162
- };
163
- if (settings.useCSS && support()) {
164
- return true;
165
- }
166
- return false;
167
- },
168
- keyPress: function () {
169
- if (settings.keyPress) {
170
- $(document).on('keyup.lightslider', function (e) {
171
- if (!$(':focus').is('input, textarea')) {
172
- if (e.preventDefault) {
173
- e.preventDefault();
174
- } else {
175
- e.returnValue = false;
176
- }
177
- if (e.keyCode === 37) {
178
- $el.goToPrevSlide();
179
- } else if (e.keyCode === 39) {
180
- $el.goToNextSlide();
181
- }
182
- }
183
- });
184
- }
185
- },
186
- controls: function () {
187
- if (settings.controls) {
188
- $el.after('<div class="lSAction"><a class="lSPrev">' + settings.prevHtml + '</a><a class="lSNext">' + settings.nextHtml + '</a></div>');
189
- if (!settings.autoWidth) {
190
- if (length <= settings.item) {
191
- $slide.find('.lSAction').hide();
192
- }
193
- } else {
194
- if (refresh.calWidth(false) < elSize) {
195
- $slide.find('.lSAction').hide();
196
- }
197
- }
198
- $slide.find('.lSAction a').on('click', function (e) {
199
- if (e.preventDefault) {
200
- e.preventDefault();
201
- } else {
202
- e.returnValue = false;
203
- }
204
- if ($(this).attr('class') === 'lSPrev') {
205
- $el.goToPrevSlide();
206
- } else {
207
- $el.goToNextSlide();
208
- }
209
- return false;
210
- });
211
- }
212
- },
213
- initialStyle: function () {
214
- var $this = this;
215
- if (settings.mode === 'fade') {
216
- settings.autoWidth = false;
217
- settings.slideEndAnimation = false;
218
- }
219
- if (settings.auto) {
220
- settings.slideEndAnimation = false;
221
- }
222
- if (settings.autoWidth) {
223
- settings.slideMove = 1;
224
- settings.item = 1;
225
- }
226
- if (settings.loop) {
227
- settings.slideMove = 1;
228
- settings.freeMove = false;
229
- }
230
- settings.onBeforeStart.call(this, $el);
231
- refresh.chbreakpoint();
232
- $el.addClass('lightSlider').wrap('<div class="lSSlideOuter ' + settings.addClass + '"><div class="lSSlideWrapper"></div></div>');
233
- $slide = $el.parent('.lSSlideWrapper');
234
- if (settings.rtl === true) {
235
- $slide.parent().addClass('lSrtl');
236
- }
237
- if (settings.vertical) {
238
- $slide.parent().addClass('vertical');
239
- elSize = settings.verticalHeight;
240
- $slide.css('height', elSize + 'px');
241
- } else {
242
- elSize = $el.outerWidth();
243
- }
244
- $children.addClass('lslide');
245
- if (settings.loop === true && settings.mode === 'slide') {
246
- refresh.calSW();
247
- refresh.clone = function () {
248
- if (refresh.calWidth(true) > elSize) {
249
- /**/
250
- var tWr = 0,
251
- tI = 0;
252
- for (var k = 0; k < $children.length; k++) {
253
- tWr += (parseInt($el.find('.lslide').eq(k).width()) + settings.slideMargin);
254
- tI++;
255
- if (tWr >= (elSize + settings.slideMargin)) {
256
- break;
257
- }
258
- }
259
- var tItem = settings.autoWidth === true ? tI : settings.item;
260
-
261
- /**/
262
- if (tItem < $el.find('.clone.left').length) {
263
- for (var i = 0; i < $el.find('.clone.left').length - tItem; i++) {
264
- $children.eq(i).remove();
265
- }
266
- }
267
- if (tItem < $el.find('.clone.right').length) {
268
- for (var j = $children.length - 1; j > ($children.length - 1 - $el.find('.clone.right').length); j--) {
269
- scene--;
270
- $children.eq(j).remove();
271
- }
272
- }
273
- /**/
274
- for (var n = $el.find('.clone.right').length; n < tItem; n++) {
275
- $el.find('.lslide').eq(n).clone().removeClass('lslide').addClass('clone right').appendTo($el);
276
- scene++;
277
- }
278
- for (var m = $el.find('.lslide').length - $el.find('.clone.left').length; m > ($el.find('.lslide').length - tItem); m--) {
279
- $el.find('.lslide').eq(m - 1).clone().removeClass('lslide').addClass('clone left').prependTo($el);
280
- }
281
- $children = $el.children();
282
- } else {
283
- if ($children.hasClass('clone')) {
284
- $el.find('.clone').remove();
285
- $this.move($el, 0);
286
- }
287
- }
288
- };
289
- refresh.clone();
290
- }
291
- refresh.sSW = function () {
292
- length = $children.length;
293
- if (settings.rtl === true && settings.vertical === false) {
294
- gutter = 'margin-left';
295
- }
296
- if (settings.autoWidth === false) {
297
- $children.css(property, slideWidth + 'px');
298
- }
299
- $children.css(gutter, settings.slideMargin + 'px');
300
- w = refresh.calWidth(false);
301
- $el.css(property, w + 'px');
302
- if (settings.loop === true && settings.mode === 'slide') {
303
- if (on === false) {
304
- scene = $el.find('.clone.left').length;
305
- }
306
- }
307
- };
308
- refresh.calL = function () {
309
- $children = $el.children();
310
- length = $children.length;
311
- };
312
- if (this.doCss()) {
313
- $slide.addClass('usingCss');
314
- }
315
- refresh.calL();
316
- if (settings.mode === 'slide') {
317
- refresh.calSW();
318
- refresh.sSW();
319
- if (settings.loop === true) {
320
- slideValue = $this.slideValue();
321
- this.move($el, slideValue);
322
- }
323
- if (settings.vertical === false) {
324
- this.setHeight($el, false);
325
- }
326
-
327
- } else {
328
- this.setHeight($el, true);
329
- $el.addClass('lSFade');
330
- if (!this.doCss()) {
331
- $children.fadeOut(0);
332
- $children.eq(scene).fadeIn(0);
333
- }
334
- }
335
- if (settings.loop === true && settings.mode === 'slide') {
336
- $children.eq(scene).addClass('active');
337
- } else {
338
- $children.first().addClass('active');
339
- }
340
- },
341
- pager: function () {
342
- var $this = this;
343
- refresh.createPager = function () {
344
- thumbWidth = (elSize - ((settings.thumbItem * (settings.thumbMargin)) - settings.thumbMargin)) / settings.thumbItem;
345
- var $children = $slide.find('.lslide');
346
- var length = $slide.find('.lslide').length;
347
- var i = 0,
348
- pagers = '',
349
- v = 0;
350
- for (i = 0; i < length; i++) {
351
- if (settings.mode === 'slide') {
352
- // calculate scene * slide value
353
- if (!settings.autoWidth) {
354
- v = i * ((slideWidth + settings.slideMargin) * settings.slideMove);
355
- } else {
356
- v += ((parseInt($children.eq(i).width()) + settings.slideMargin) * settings.slideMove);
357
- }
358
- }
359
- var thumb = $children.eq(i * settings.slideMove).attr('data-thumb');
360
- if (settings.gallery === true) {
361
- pagers += '<li style="width:100%;' + property + ':' + thumbWidth + 'px;' + gutter + ':' + settings.thumbMargin + 'px"><a href="#"><img src="' + thumb + '" /></a></li>';
362
- } else {
363
- pagers += '<li><a href="#">' + (i + 1) + '</a></li>';
364
- }
365
- if (settings.mode === 'slide') {
366
- if ((v) >= w - elSize - settings.slideMargin) {
367
- i = i + 1;
368
- var minPgr = 2;
369
- if (settings.autoWidth) {
370
- pagers += '<li><a href="#">' + (i + 1) + '</a></li>';
371
- minPgr = 1;
372
- }
373
- if (i < minPgr) {
374
- pagers = null;
375
- $slide.parent().addClass('noPager');
376
- } else {
377
- $slide.parent().removeClass('noPager');
378
- }
379
- break;
380
- }
381
- }
382
- }
383
- var $cSouter = $slide.parent();
384
- $cSouter.find('.lSPager').html(pagers);
385
- if (settings.gallery === true) {
386
- if (settings.vertical === true) {
387
- // set Gallery thumbnail width
388
- $cSouter.find('.lSPager').css('width', settings.vThumbWidth + 'px');
389
- }
390
- pagerWidth = (i * (settings.thumbMargin + thumbWidth)) + 0.5;
391
- $cSouter.find('.lSPager').css({
392
- property: pagerWidth + 'px',
393
- 'transition-duration': settings.speed + 'ms'
394
- });
395
- if (settings.vertical === true) {
396
- $slide.parent().css('padding-right', (settings.vThumbWidth + settings.galleryMargin) + 'px');
397
- }
398
- $cSouter.find('.lSPager').css(property, pagerWidth + 'px');
399
- }
400
- var $pager = $cSouter.find('.lSPager').find('li');
401
- $pager.first().addClass('active');
402
- $pager.on('click', function () {
403
- if (settings.loop === true && settings.mode === 'slide') {
404
- scene = scene + ($pager.index(this) - $cSouter.find('.lSPager').find('li.active').index());
405
- } else {
406
- scene = $pager.index(this);
407
- }
408
- $el.mode(false);
409
- if (settings.gallery === true) {
410
- $this.slideThumb();
411
- }
412
- return false;
413
- });
414
- };
415
- if (settings.pager) {
416
- var cl = 'lSpg';
417
- if (settings.gallery) {
418
- cl = 'lSGallery';
419
- }
420
- $slide.after('<ul class="lSPager ' + cl + '"></ul>');
421
- var gMargin = (settings.vertical) ? 'margin-left' : 'margin-top';
422
- $slide.parent().find('.lSPager').css(gMargin, settings.galleryMargin + 'px');
423
- refresh.createPager();
424
- }
425
-
426
- setTimeout(function () {
427
- refresh.init();
428
- }, 0);
429
- },
430
- setHeight: function (ob, fade) {
431
- var obj = null,
432
- $this = this;
433
- if (settings.loop) {
434
- obj = ob.children('.lslide ').first();
435
- } else {
436
- obj = ob.children().first();
437
- }
438
- var setCss = function () {
439
- var tH = obj.outerHeight(),
440
- tP = 0,
441
- tHT = tH;
442
- if (fade) {
443
- tH = 0;
444
- tP = ((tHT) * 100) / elSize;
445
- }
446
- ob.css({
447
- 'height': tH + 'px',
448
- 'padding-bottom': tP + '%'
449
- });
450
- };
451
- setCss();
452
- if (obj.find('img').length) {
453
- if ( obj.find('img')[0].complete) {
454
- setCss();
455
- if (!interval) {
456
- $this.auto();
457
- }
458
- }else{
459
- obj.find('img').on('load', function () {
460
- setTimeout(function () {
461
- setCss();
462
- if (!interval) {
463
- $this.auto();
464
- }
465
- }, 100);
466
- });
467
- }
468
- }else{
469
- if (!interval) {
470
- $this.auto();
471
- }
472
- }
473
- },
474
- active: function (ob, t) {
475
- if (this.doCss() && settings.mode === 'fade') {
476
- $slide.addClass('on');
477
- }
478
- var sc = 0;
479
- if (scene * settings.slideMove < length) {
480
- ob.removeClass('active');
481
- if (!this.doCss() && settings.mode === 'fade' && t === false) {
482
- ob.fadeOut(settings.speed);
483
- }
484
- if (t === true) {
485
- sc = scene;
486
- } else {
487
- sc = scene * settings.slideMove;
488
- }
489
- //t === true ? sc = scene : sc = scene * settings.slideMove;
490
- var l, nl;
491
- if (t === true) {
492
- l = ob.length;
493
- nl = l - 1;
494
- if (sc + 1 >= l) {
495
- sc = nl;
496
- }
497
- }
498
- if (settings.loop === true && settings.mode === 'slide') {
499
- //t === true ? sc = scene - $el.find('.clone.left').length : sc = scene * settings.slideMove;
500
- if (t === true) {
501
- sc = scene - $el.find('.clone.left').length;
502
- } else {
503
- sc = scene * settings.slideMove;
504
- }
505
- if (t === true) {
506
- l = ob.length;
507
- nl = l - 1;
508
- if (sc + 1 === l) {
509
- sc = nl;
510
- } else if (sc + 1 > l) {
511
- sc = 0;
512
- }
513
- }
514
- }
515
-
516
- if (!this.doCss() && settings.mode === 'fade' && t === false) {
517
- ob.eq(sc).fadeIn(settings.speed);
518
- }
519
- ob.eq(sc).addClass('active');
520
- } else {
521
- ob.removeClass('active');
522
- ob.eq(ob.length - 1).addClass('active');
523
- if (!this.doCss() && settings.mode === 'fade' && t === false) {
524
- ob.fadeOut(settings.speed);
525
- ob.eq(sc).fadeIn(settings.speed);
526
- }
527
- }
528
- },
529
- move: function (ob, v) {
530
- if (settings.rtl === true) {
531
- v = -v;
532
- }
533
- if (this.doCss()) {
534
- if (settings.vertical === true) {
535
- ob.css({
536
- 'transform': 'translate3d(0px, ' + (-v) + 'px, 0px)',
537
- '-webkit-transform': 'translate3d(0px, ' + (-v) + 'px, 0px)'
538
- });
539
- } else {
540
- ob.css({
541
- 'transform': 'translate3d(' + (-v) + 'px, 0px, 0px)',
542
- '-webkit-transform': 'translate3d(' + (-v) + 'px, 0px, 0px)',
543
- });
544
- }
545
- } else {
546
- if (settings.vertical === true) {
547
- ob.css('position', 'relative').animate({
548
- top: -v + 'px'
549
- }, settings.speed, settings.easing);
550
- } else {
551
- ob.css('position', 'relative').animate({
552
- left: -v + 'px'
553
- }, settings.speed, settings.easing);
554
- }
555
- }
556
- var $thumb = $slide.parent().find('.lSPager').find('li');
557
- this.active($thumb, true);
558
- },
559
- fade: function () {
560
- this.active($children, false);
561
- var $thumb = $slide.parent().find('.lSPager').find('li');
562
- this.active($thumb, true);
563
- },
564
- slide: function () {
565
- var $this = this;
566
- refresh.calSlide = function () {
567
- if (w > elSize) {
568
- slideValue = $this.slideValue();
569
- $this.active($children, false);
570
- if ((slideValue) > w - elSize - settings.slideMargin) {
571
- slideValue = w - elSize - settings.slideMargin;
572
- } else if (slideValue < 0) {
573
- slideValue = 0;
574
- }
575
- $this.move($el, slideValue);
576
- if (settings.loop === true && settings.mode === 'slide') {
577
- if (scene >= (length - ($el.find('.clone.left').length / settings.slideMove))) {
578
- $this.resetSlide($el.find('.clone.left').length);
579
- }
580
- if (scene === 0) {
581
- $this.resetSlide($slide.find('.lslide').length);
582
- }
583
- }
584
- }
585
- };
586
- refresh.calSlide();
587
- },
588
- resetSlide: function (s) {
589
- var $this = this;
590
- $slide.find('.lSAction a').addClass('disabled');
591
- setTimeout(function () {
592
- scene = s;
593
- $slide.css('transition-duration', '0ms');
594
- slideValue = $this.slideValue();
595
- $this.active($children, false);
596
- plugin.move($el, slideValue);
597
- setTimeout(function () {
598
- $slide.css('transition-duration', settings.speed + 'ms');
599
- $slide.find('.lSAction a').removeClass('disabled');
600
- }, 50);
601
- }, settings.speed + 100);
602
- },
603
- slideValue: function () {
604
- var _sV = 0;
605
- if (settings.autoWidth === false) {
606
- _sV = scene * ((slideWidth + settings.slideMargin) * settings.slideMove);
607
- } else {
608
- _sV = 0;
609
- for (var i = 0; i < scene; i++) {
610
- _sV += (parseInt($children.eq(i).width()) + settings.slideMargin);
611
- }
612
- }
613
- return _sV;
614
- },
615
- slideThumb: function () {
616
- var position;
617
- switch (settings.currentPagerPosition) {
618
- case 'left':
619
- position = 0;
620
- break;
621
- case 'middle':
622
- position = (elSize / 2) - (thumbWidth / 2);
623
- break;
624
- case 'right':
625
- position = elSize - thumbWidth;
626
- }
627
- var sc = scene - $el.find('.clone.left').length;
628
- var $pager = $slide.parent().find('.lSPager');
629
- if (settings.mode === 'slide' && settings.loop === true) {
630
- if (sc >= $pager.children().length) {
631
- sc = 0;
632
- } else if (sc < 0) {
633
- sc = $pager.children().length;
634
- }
635
- }
636
- var thumbSlide = sc * ((thumbWidth + settings.thumbMargin)) - (position);
637
- if ((thumbSlide + elSize) > pagerWidth) {
638
- thumbSlide = pagerWidth - elSize - settings.thumbMargin;
639
- }
640
- if (thumbSlide < 0) {
641
- thumbSlide = 0;
642
- }
643
- this.move($pager, thumbSlide);
644
- },
645
- auto: function () {
646
- if (settings.auto) {
647
- clearInterval(interval);
648
- interval = setInterval(function () {
649
- $el.goToNextSlide();
650
- }, settings.pause);
651
- }
652
- },
653
- pauseOnHover: function(){
654
- var $this = this;
655
- if (settings.auto && settings.pauseOnHover) {
656
- $slide.on('mouseenter', function(){
657
- $(this).addClass('ls-hover');
658
- $el.pause();
659
- settings.auto = true;
660
- });
661
- $slide.on('mouseleave',function(){
662
- $(this).removeClass('ls-hover');
663
- if (!$slide.find('.lightSlider').hasClass('lsGrabbing')) {
664
- $this.auto();
665
- }
666
- });
667
- }
668
- },
669
- touchMove: function (endCoords, startCoords) {
670
- $slide.css('transition-duration', '0ms');
671
- if (settings.mode === 'slide') {
672
- var distance = endCoords - startCoords;
673
- var swipeVal = slideValue - distance;
674
- if ((swipeVal) >= w - elSize - settings.slideMargin) {
675
- if (settings.freeMove === false) {
676
- swipeVal = w - elSize - settings.slideMargin;
677
- } else {
678
- var swipeValT = w - elSize - settings.slideMargin;
679
- swipeVal = swipeValT + ((swipeVal - swipeValT) / 5);
680
-
681
- }
682
- } else if (swipeVal < 0) {
683
- if (settings.freeMove === false) {
684
- swipeVal = 0;
685
- } else {
686
- swipeVal = swipeVal / 5;
687
- }
688
- }
689
- this.move($el, swipeVal);
690
- }
691
- },
692
-
693
- touchEnd: function (distance) {
694
- $slide.css('transition-duration', settings.speed + 'ms');
695
- if (settings.mode === 'slide') {
696
- var mxVal = false;
697
- var _next = true;
698
- slideValue = slideValue - distance;
699
- if ((slideValue) > w - elSize - settings.slideMargin) {
700
- slideValue = w - elSize - settings.slideMargin;
701
- if (settings.autoWidth === false) {
702
- mxVal = true;
703
- }
704
- } else if (slideValue < 0) {
705
- slideValue = 0;
706
- }
707
- var gC = function (next) {
708
- var ad = 0;
709
- if (!mxVal) {
710
- if (next) {
711
- ad = 1;
712
- }
713
- }
714
- if (!settings.autoWidth) {
715
- var num = slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove);
716
- scene = parseInt(num) + ad;
717
- if (slideValue >= (w - elSize - settings.slideMargin)) {
718
- if (num % 1 !== 0) {
719
- scene++;
720
- }
721
- }
722
- } else {
723
- var tW = 0;
724
- for (var i = 0; i < $children.length; i++) {
725
- tW += (parseInt($children.eq(i).width()) + settings.slideMargin);
726
- scene = i + ad;
727
- if (tW >= slideValue) {
728
- break;
729
- }
730
- }
731
- }
732
- };
733
- if (distance >= settings.swipeThreshold) {
734
- gC(false);
735
- _next = false;
736
- } else if (distance <= -settings.swipeThreshold) {
737
- gC(true);
738
- _next = false;
739
- }
740
- $el.mode(_next);
741
- this.slideThumb();
742
- } else {
743
- if (distance >= settings.swipeThreshold) {
744
- $el.goToPrevSlide();
745
- } else if (distance <= -settings.swipeThreshold) {
746
- $el.goToNextSlide();
747
- }
748
- }
749
- },
750
-
751
-
752
-
753
- enableDrag: function () {
754
- var $this = this;
755
- if (!isTouch) {
756
- var startCoords = 0,
757
- endCoords = 0,
758
- isDraging = false;
759
- $slide.find('.lightSlider').addClass('lsGrab');
760
- $slide.on('mousedown', function (e) {
761
- if (w < elSize) {
762
- if (w !== 0) {
763
- return false;
764
- }
765
- }
766
- if ($(e.target).attr('class') !== ('lSPrev') && $(e.target).attr('class') !== ('lSNext')) {
767
- startCoords = (settings.vertical === true) ? e.pageY : e.pageX;
768
- isDraging = true;
769
- if (e.preventDefault) {
770
- e.preventDefault();
771
- } else {
772
- e.returnValue = false;
773
- }
774
- // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723
775
- $slide.scrollLeft += 1;
776
- $slide.scrollLeft -= 1;
777
- // *
778
- $slide.find('.lightSlider').removeClass('lsGrab').addClass('lsGrabbing');
779
- clearInterval(interval);
780
- }
781
- });
782
- $(window).on('mousemove', function (e) {
783
- if (isDraging) {
784
- endCoords = (settings.vertical === true) ? e.pageY : e.pageX;
785
- $this.touchMove(endCoords, startCoords);
786
- }
787
- });
788
- $(window).on('mouseup', function (e) {
789
- if (isDraging) {
790
- $slide.find('.lightSlider').removeClass('lsGrabbing').addClass('lsGrab');
791
- isDraging = false;
792
- endCoords = (settings.vertical === true) ? e.pageY : e.pageX;
793
- var distance = endCoords - startCoords;
794
- if (Math.abs(distance) >= settings.swipeThreshold) {
795
- $(window).on('click.ls', function (e) {
796
- if (e.preventDefault) {
797
- e.preventDefault();
798
- } else {
799
- e.returnValue = false;
800
- }
801
- e.stopImmediatePropagation();
802
- e.stopPropagation();
803
- $(window).off('click.ls');
804
- });
805
- }
806
-
807
- $this.touchEnd(distance);
808
-
809
- }
810
- });
811
- }
812
- },
813
-
814
-
815
-
816
-
817
- enableTouch: function () {
818
- var $this = this;
819
- if (isTouch) {
820
- var startCoords = {},
821
- endCoords = {};
822
- $slide.on('touchstart', function (e) {
823
- endCoords = e.originalEvent.targetTouches[0];
824
- startCoords.pageX = e.originalEvent.targetTouches[0].pageX;
825
- startCoords.pageY = e.originalEvent.targetTouches[0].pageY;
826
- clearInterval(interval);
827
- });
828
- $slide.on('touchmove', function (e) {
829
- if (w < elSize) {
830
- if (w !== 0) {
831
- return false;
832
- }
833
- }
834
- var orig = e.originalEvent;
835
- endCoords = orig.targetTouches[0];
836
- var xMovement = Math.abs(endCoords.pageX - startCoords.pageX);
837
- var yMovement = Math.abs(endCoords.pageY - startCoords.pageY);
838
- if (settings.vertical === true) {
839
- if ((yMovement * 3) > xMovement) {
840
- e.preventDefault();
841
- }
842
- $this.touchMove(endCoords.pageY, startCoords.pageY);
843
- } else {
844
- if ((xMovement * 3) > yMovement) {
845
- e.preventDefault();
846
- }
847
- $this.touchMove(endCoords.pageX, startCoords.pageX);
848
- }
849
-
850
- });
851
- $slide.on('touchend', function () {
852
- if (w < elSize) {
853
- if (w !== 0) {
854
- return false;
855
- }
856
- }
857
- var distance;
858
- if (settings.vertical === true) {
859
- distance = endCoords.pageY - startCoords.pageY;
860
- } else {
861
- distance = endCoords.pageX - startCoords.pageX;
862
- }
863
- $this.touchEnd(distance);
864
- });
865
- }
866
- },
867
- build: function () {
868
- var $this = this;
869
- $this.initialStyle();
870
- if (this.doCss()) {
871
-
872
- if (settings.enableTouch === true) {
873
- $this.enableTouch();
874
- }
875
- if (settings.enableDrag === true) {
876
- $this.enableDrag();
877
- }
878
- }
879
-
880
- $(window).on('focus', function(){
881
- $this.auto();
882
- });
883
-
884
- $(window).on('blur', function(){
885
- clearInterval(interval);
886
- });
887
-
888
- $this.pager();
889
- $this.pauseOnHover();
890
- $this.controls();
891
- $this.keyPress();
892
- }
893
- };
894
- plugin.build();
895
- refresh.init = function () {
896
- refresh.chbreakpoint();
897
- if (settings.vertical === true) {
898
- if (settings.item > 1) {
899
- elSize = settings.verticalHeight;
900
- } else {
901
- elSize = $children.outerHeight();
902
- }
903
- $slide.css('height', elSize + 'px');
904
- } else {
905
- elSize = $slide.outerWidth();
906
- }
907
- if (settings.loop === true && settings.mode === 'slide') {
908
- refresh.clone();
909
- }
910
- refresh.calL();
911
- if (settings.mode === 'slide') {
912
- $el.removeClass('lSSlide');
913
- }
914
- if (settings.mode === 'slide') {
915
- refresh.calSW();
916
- refresh.sSW();
917
- }
918
- setTimeout(function () {
919
- if (settings.mode === 'slide') {
920
- $el.addClass('lSSlide');
921
- }
922
- }, 1000);
923
- if (settings.pager) {
924
- refresh.createPager();
925
- }
926
- if (settings.adaptiveHeight === true && settings.vertical === false) {
927
- $el.css('height', $children.eq(scene).outerHeight(true));
928
- }
929
- if (settings.adaptiveHeight === false) {
930
- if (settings.mode === 'slide') {
931
- if (settings.vertical === false) {
932
- plugin.setHeight($el, false);
933
- }else{
934
- plugin.auto();
935
- }
936
- } else {
937
- plugin.setHeight($el, true);
938
- }
939
- }
940
- if (settings.gallery === true) {
941
- plugin.slideThumb();
942
- }
943
- if (settings.mode === 'slide') {
944
- plugin.slide();
945
- }
946
- if (settings.autoWidth === false) {
947
- if ($children.length <= settings.item) {
948
- $slide.find('.lSAction').hide();
949
- } else {
950
- $slide.find('.lSAction').show();
951
- }
952
- } else {
953
- if ((refresh.calWidth(false) < elSize) && (w !== 0)) {
954
- $slide.find('.lSAction').hide();
955
- } else {
956
- $slide.find('.lSAction').show();
957
- }
958
- }
959
- };
960
- $el.goToPrevSlide = function () {
961
- if (scene > 0) {
962
- settings.onBeforePrevSlide.call(this, $el, scene);
963
- scene--;
964
- $el.mode(false);
965
- if (settings.gallery === true) {
966
- plugin.slideThumb();
967
- }
968
- } else {
969
- if (settings.loop === true) {
970
- settings.onBeforePrevSlide.call(this, $el, scene);
971
- if (settings.mode === 'fade') {
972
- var l = (length - 1);
973
- scene = parseInt(l / settings.slideMove);
974
- }
975
- $el.mode(false);
976
- if (settings.gallery === true) {
977
- plugin.slideThumb();
978
- }
979
- } else if (settings.slideEndAnimation === true) {
980
- $el.addClass('leftEnd');
981
- setTimeout(function () {
982
- $el.removeClass('leftEnd');
983
- }, 400);
984
- }
985
- }
986
- };
987
- $el.goToNextSlide = function () {
988
- var nextI = true;
989
- if (settings.mode === 'slide') {
990
- var _slideValue = plugin.slideValue();
991
- nextI = _slideValue < w - elSize - settings.slideMargin;
992
- }
993
- if (((scene * settings.slideMove) < length - settings.slideMove) && nextI) {
994
- settings.onBeforeNextSlide.call(this, $el, scene);
995
- scene++;
996
- $el.mode(false);
997
- if (settings.gallery === true) {
998
- plugin.slideThumb();
999
- }
1000
- } else {
1001
- if (settings.loop === true) {
1002
- settings.onBeforeNextSlide.call(this, $el, scene);
1003
- scene = 0;
1004
- $el.mode(false);
1005
- if (settings.gallery === true) {
1006
- plugin.slideThumb();
1007
- }
1008
- } else if (settings.slideEndAnimation === true) {
1009
- $el.addClass('rightEnd');
1010
- setTimeout(function () {
1011
- $el.removeClass('rightEnd');
1012
- }, 400);
1013
- }
1014
- }
1015
- };
1016
- $el.mode = function (_touch) {
1017
- if (settings.adaptiveHeight === true && settings.vertical === false) {
1018
- $el.css('height', $children.eq(scene).outerHeight(true));
1019
- }
1020
- if (on === false) {
1021
- if (settings.mode === 'slide') {
1022
- if (plugin.doCss()) {
1023
- $el.addClass('lSSlide');
1024
- if (settings.speed !== '') {
1025
- $slide.css('transition-duration', settings.speed + 'ms');
1026
- }
1027
- if (settings.cssEasing !== '') {
1028
- $slide.css('transition-timing-function', settings.cssEasing);
1029
- }
1030
- }
1031
- } else {
1032
- if (plugin.doCss()) {
1033
- if (settings.speed !== '') {
1034
- $el.css('transition-duration', settings.speed + 'ms');
1035
- }
1036
- if (settings.cssEasing !== '') {
1037
- $el.css('transition-timing-function', settings.cssEasing);
1038
- }
1039
- }
1040
- }
1041
- }
1042
- if (!_touch) {
1043
- settings.onBeforeSlide.call(this, $el, scene);
1044
- }
1045
- if (settings.mode === 'slide') {
1046
- plugin.slide();
1047
- } else {
1048
- plugin.fade();
1049
- }
1050
- if (!$slide.hasClass('ls-hover')) {
1051
- plugin.auto();
1052
- }
1053
- setTimeout(function () {
1054
- if (!_touch) {
1055
- settings.onAfterSlide.call(this, $el, scene);
1056
- }
1057
- }, settings.speed);
1058
- on = true;
1059
- };
1060
- $el.play = function () {
1061
- $el.goToNextSlide();
1062
- settings.auto = true;
1063
- plugin.auto();
1064
- };
1065
- $el.pause = function () {
1066
- settings.auto = false;
1067
- clearInterval(interval);
1068
- };
1069
- $el.refresh = function () {
1070
- refresh.init();
1071
- };
1072
- $el.getCurrentSlideCount = function () {
1073
- var sc = scene;
1074
- if (settings.loop) {
1075
- var ln = $slide.find('.lslide').length,
1076
- cl = $el.find('.clone.left').length;
1077
- if (scene <= cl - 1) {
1078
- sc = ln + (scene - cl);
1079
- } else if (scene >= (ln + cl)) {
1080
- sc = scene - ln - cl;
1081
- } else {
1082
- sc = scene - cl;
1083
- }
1084
- }
1085
- return sc + 1;
1086
- };
1087
- $el.getTotalSlideCount = function () {
1088
- return $slide.find('.lslide').length;
1089
- };
1090
- $el.goToSlide = function (s) {
1091
- if (settings.loop) {
1092
- scene = (s + $el.find('.clone.left').length - 1);
1093
- } else {
1094
- scene = s;
1095
- }
1096
- $el.mode(false);
1097
- if (settings.gallery === true) {
1098
- plugin.slideThumb();
1099
- }
1100
- };
1101
- $el.destroy = function () {
1102
- if ($el.lightSlider) {
1103
- $el.goToPrevSlide = function(){};
1104
- $el.goToNextSlide = function(){};
1105
- $el.mode = function(){};
1106
- $el.play = function(){};
1107
- $el.pause = function(){};
1108
- $el.refresh = function(){};
1109
- $el.getCurrentSlideCount = function(){};
1110
- $el.getTotalSlideCount = function(){};
1111
- $el.goToSlide = function(){};
1112
- $el.lightSlider = null;
1113
- refresh = {
1114
- init : function(){}
1115
- };
1116
- $el.parent().parent().find('.lSAction, .lSPager').remove();
1117
- $el.removeClass('lightSlider lSFade lSSlide lsGrab lsGrabbing leftEnd right').removeAttr('style').unwrap().unwrap();
1118
- $el.children().removeAttr('style');
1119
- $children.removeClass('lslide active');
1120
- $el.find('.clone').remove();
1121
- $children = null;
1122
- interval = null;
1123
- on = false;
1124
- scene = 0;
1125
- }
1126
-
1127
- };
1128
- setTimeout(function () {
1129
- settings.onSliderLoad.call(this, $el);
1130
- }, 10);
1131
- $(window).on('resize orientationchange', function (e) {
1132
- setTimeout(function () {
1133
- if (e.preventDefault) {
1134
- e.preventDefault();
1135
- } else {
1136
- e.returnValue = false;
1137
- }
1138
- refresh.init();
1139
- }, 200);
1140
- });
1141
- return this;
1142
- };
1143
- }(jQuery));
1
+ /*! lightslider - v1.1.6 - 2016-10-25
2
+ * https://github.com/sachinchoolur/lightslider
3
+ * Copyright (c) 2016 Sachin N; Licensed MIT */
4
+ (function ($, undefined) {
5
+ 'use strict';
6
+ var defaults = {
7
+ item: 3,
8
+ autoWidth: false,
9
+ slideMove: 1,
10
+ slideMargin: 10,
11
+ addClass: '',
12
+ mode: 'slide',
13
+ useCSS: true,
14
+ cssEasing: 'ease', //'cubic-bezier(0.25, 0, 0.25, 1)',
15
+ easing: 'linear', //'for jquery animation',//
16
+ speed: 400, //ms'
17
+ auto: false,
18
+ pauseOnHover: false,
19
+ loop: false,
20
+ slideEndAnimation: true,
21
+ pause: 2000,
22
+ keyPress: false,
23
+ controls: true,
24
+ prevHtml: '',
25
+ nextHtml: '',
26
+ rtl: false,
27
+ adaptiveHeight: false,
28
+ vertical: false,
29
+ verticalHeight: 500,
30
+ vThumbWidth: 100,
31
+ thumbItem: 10,
32
+ pager: true,
33
+ gallery: false,
34
+ galleryMargin: 5,
35
+ thumbMargin: 5,
36
+ currentPagerPosition: 'middle',
37
+ enableTouch: true,
38
+ enableDrag: true,
39
+ freeMove: true,
40
+ swipeThreshold: 40,
41
+ responsive: [],
42
+ /* jshint ignore:start */
43
+ onBeforeStart: function ($el) {},
44
+ onSliderLoad: function ($el) {},
45
+ onBeforeSlide: function ($el, scene) {},
46
+ onAfterSlide: function ($el, scene) {},
47
+ onBeforeNextSlide: function ($el, scene) {},
48
+ onBeforePrevSlide: function ($el, scene) {}
49
+ /* jshint ignore:end */
50
+ };
51
+ $.fn.lightSlider = function (options) {
52
+ if (this.length === 0) {
53
+ return this;
54
+ }
55
+
56
+ if (this.length > 1) {
57
+ this.each(function () {
58
+ $(this).lightSlider(options);
59
+ });
60
+ return this;
61
+ }
62
+
63
+ var plugin = {},
64
+ settings = $.extend(true, {}, defaults, options),
65
+ settingsTemp = {},
66
+ $el = this;
67
+ plugin.$el = this;
68
+
69
+ if (settings.mode === 'fade') {
70
+ settings.vertical = false;
71
+ }
72
+ var $children = $el.children(),
73
+ windowW = $(window).width(),
74
+ breakpoint = null,
75
+ resposiveObj = null,
76
+ length = 0,
77
+ w = 0,
78
+ on = false,
79
+ elSize = 0,
80
+ $slide = '',
81
+ scene = 0,
82
+ property = (settings.vertical === true) ? 'height' : 'width',
83
+ gutter = (settings.vertical === true) ? 'margin-bottom' : 'margin-right',
84
+ slideValue = 0,
85
+ pagerWidth = 0,
86
+ slideWidth = 0,
87
+ thumbWidth = 0,
88
+ interval = null,
89
+ isTouch = ('ontouchstart' in document.documentElement);
90
+ var refresh = {};
91
+
92
+ refresh.chbreakpoint = function () {
93
+ windowW = $(window).width();
94
+ if (settings.responsive.length) {
95
+ var item;
96
+ if (settings.autoWidth === false) {
97
+ item = settings.item;
98
+ }
99
+ if (windowW < settings.responsive[0].breakpoint) {
100
+ for (var i = 0; i < settings.responsive.length; i++) {
101
+ if (windowW < settings.responsive[i].breakpoint) {
102
+ breakpoint = settings.responsive[i].breakpoint;
103
+ resposiveObj = settings.responsive[i];
104
+ }
105
+ }
106
+ }
107
+ if (typeof resposiveObj !== 'undefined' && resposiveObj !== null) {
108
+ for (var j in resposiveObj.settings) {
109
+ if (resposiveObj.settings.hasOwnProperty(j)) {
110
+ if (typeof settingsTemp[j] === 'undefined' || settingsTemp[j] === null) {
111
+ settingsTemp[j] = settings[j];
112
+ }
113
+ settings[j] = resposiveObj.settings[j];
114
+ }
115
+ }
116
+ }
117
+ if (!$.isEmptyObject(settingsTemp) && windowW > settings.responsive[0].breakpoint) {
118
+ for (var k in settingsTemp) {
119
+ if (settingsTemp.hasOwnProperty(k)) {
120
+ settings[k] = settingsTemp[k];
121
+ }
122
+ }
123
+ }
124
+ if (settings.autoWidth === false) {
125
+ if (slideValue > 0 && slideWidth > 0) {
126
+ if (item !== settings.item) {
127
+ scene = Math.round(slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove));
128
+ }
129
+ }
130
+ }
131
+ }
132
+ };
133
+
134
+ refresh.calSW = function () {
135
+ if (settings.autoWidth === false) {
136
+ slideWidth = (elSize - ((settings.item * (settings.slideMargin)) - settings.slideMargin)) / settings.item;
137
+ }
138
+ };
139
+
140
+ refresh.calWidth = function (cln) {
141
+ var ln = cln === true ? $slide.find('.lslide').length : $children.length;
142
+ if (settings.autoWidth === false) {
143
+ w = ln * (slideWidth + settings.slideMargin);
144
+ } else {
145
+ w = 0;
146
+ for (var i = 0; i < ln; i++) {
147
+ w += (parseInt($children.eq(i).width()) + settings.slideMargin);
148
+ }
149
+ }
150
+ return w;
151
+ };
152
+ plugin = {
153
+ doCss: function () {
154
+ var support = function () {
155
+ var transition = ['transition', 'MozTransition', 'WebkitTransition', 'OTransition', 'msTransition', 'KhtmlTransition'];
156
+ var root = document.documentElement;
157
+ for (var i = 0; i < transition.length; i++) {
158
+ if (transition[i] in root.style) {
159
+ return true;
160
+ }
161
+ }
162
+ };
163
+ if (settings.useCSS && support()) {
164
+ return true;
165
+ }
166
+ return false;
167
+ },
168
+ keyPress: function () {
169
+ if (settings.keyPress) {
170
+ $(document).on('keyup.lightslider', function (e) {
171
+ if (!$(':focus').is('input, textarea')) {
172
+ if (e.preventDefault) {
173
+ e.preventDefault();
174
+ } else {
175
+ e.returnValue = false;
176
+ }
177
+ if (e.keyCode === 37) {
178
+ $el.goToPrevSlide();
179
+ } else if (e.keyCode === 39) {
180
+ $el.goToNextSlide();
181
+ }
182
+ }
183
+ });
184
+ }
185
+ },
186
+ controls: function () {
187
+ if (settings.controls) {
188
+ $el.after('<div class="lSAction"><a class="lSPrev">' + settings.prevHtml + '</a><a class="lSNext">' + settings.nextHtml + '</a></div>');
189
+ if (!settings.autoWidth) {
190
+ if (length <= settings.item) {
191
+ $slide.find('.lSAction').hide();
192
+ }
193
+ } else {
194
+ if (refresh.calWidth(false) < elSize) {
195
+ $slide.find('.lSAction').hide();
196
+ }
197
+ }
198
+ $slide.find('.lSAction a').on('click', function (e) {
199
+ if (e.preventDefault) {
200
+ e.preventDefault();
201
+ } else {
202
+ e.returnValue = false;
203
+ }
204
+ if ($(this).attr('class') === 'lSPrev') {
205
+ $el.goToPrevSlide();
206
+ } else {
207
+ $el.goToNextSlide();
208
+ }
209
+ return false;
210
+ });
211
+ }
212
+ },
213
+ initialStyle: function () {
214
+ var $this = this;
215
+ if (settings.mode === 'fade') {
216
+ settings.autoWidth = false;
217
+ settings.slideEndAnimation = false;
218
+ }
219
+ if (settings.auto) {
220
+ settings.slideEndAnimation = false;
221
+ }
222
+ if (settings.autoWidth) {
223
+ settings.slideMove = 1;
224
+ settings.item = 1;
225
+ }
226
+ if (settings.loop) {
227
+ settings.slideMove = 1;
228
+ settings.freeMove = false;
229
+ }
230
+ settings.onBeforeStart.call(this, $el);
231
+ refresh.chbreakpoint();
232
+ $el.addClass('lightSlider').wrap('<div class="lSSlideOuter ' + settings.addClass + '"><div class="lSSlideWrapper"></div></div>');
233
+ $slide = $el.parent('.lSSlideWrapper');
234
+ if (settings.rtl === true) {
235
+ $slide.parent().addClass('lSrtl');
236
+ }
237
+ if (settings.vertical) {
238
+ $slide.parent().addClass('vertical');
239
+ elSize = settings.verticalHeight;
240
+ $slide.css('height', elSize + 'px');
241
+ } else {
242
+ elSize = $el.outerWidth();
243
+ }
244
+ $children.addClass('lslide');
245
+ if (settings.loop === true && settings.mode === 'slide') {
246
+ refresh.calSW();
247
+ refresh.clone = function () {
248
+ if (refresh.calWidth(true) > elSize) {
249
+ /**/
250
+ var tWr = 0,
251
+ tI = 0;
252
+ for (var k = 0; k < $children.length; k++) {
253
+ tWr += (parseInt($el.find('.lslide').eq(k).width()) + settings.slideMargin);
254
+ tI++;
255
+ if (tWr >= (elSize + settings.slideMargin)) {
256
+ break;
257
+ }
258
+ }
259
+ var tItem = settings.autoWidth === true ? tI : settings.item;
260
+
261
+ /**/
262
+ if (tItem < $el.find('.clone.left').length) {
263
+ for (var i = 0; i < $el.find('.clone.left').length - tItem; i++) {
264
+ $children.eq(i).remove();
265
+ }
266
+ }
267
+ if (tItem < $el.find('.clone.right').length) {
268
+ for (var j = $children.length - 1; j > ($children.length - 1 - $el.find('.clone.right').length); j--) {
269
+ scene--;
270
+ $children.eq(j).remove();
271
+ }
272
+ }
273
+ /**/
274
+ for (var n = $el.find('.clone.right').length; n < tItem; n++) {
275
+ $el.find('.lslide').eq(n).clone().removeClass('lslide').addClass('clone right').appendTo($el);
276
+ scene++;
277
+ }
278
+ for (var m = $el.find('.lslide').length - $el.find('.clone.left').length; m > ($el.find('.lslide').length - tItem); m--) {
279
+ $el.find('.lslide').eq(m - 1).clone().removeClass('lslide').addClass('clone left').prependTo($el);
280
+ }
281
+ $children = $el.children();
282
+ } else {
283
+ if ($children.hasClass('clone')) {
284
+ $el.find('.clone').remove();
285
+ $this.move($el, 0);
286
+ }
287
+ }
288
+ };
289
+ refresh.clone();
290
+ }
291
+ refresh.sSW = function () {
292
+ length = $children.length;
293
+ if (settings.rtl === true && settings.vertical === false) {
294
+ gutter = 'margin-left';
295
+ }
296
+ if (settings.autoWidth === false) {
297
+ $children.css(property, slideWidth + 'px');
298
+ }
299
+ $children.css(gutter, settings.slideMargin + 'px');
300
+ w = refresh.calWidth(false);
301
+ $el.css(property, w + 'px');
302
+ if (settings.loop === true && settings.mode === 'slide') {
303
+ if (on === false) {
304
+ scene = $el.find('.clone.left').length;
305
+ }
306
+ }
307
+ };
308
+ refresh.calL = function () {
309
+ $children = $el.children();
310
+ length = $children.length;
311
+ };
312
+ if (this.doCss()) {
313
+ $slide.addClass('usingCss');
314
+ }
315
+ refresh.calL();
316
+ if (settings.mode === 'slide') {
317
+ refresh.calSW();
318
+ refresh.sSW();
319
+ if (settings.loop === true) {
320
+ slideValue = $this.slideValue();
321
+ this.move($el, slideValue);
322
+ }
323
+ if (settings.vertical === false) {
324
+ this.setHeight($el, false);
325
+ }
326
+
327
+ } else {
328
+ this.setHeight($el, true);
329
+ $el.addClass('lSFade');
330
+ if (!this.doCss()) {
331
+ $children.fadeOut(0);
332
+ $children.eq(scene).fadeIn(0);
333
+ }
334
+ }
335
+ if (settings.loop === true && settings.mode === 'slide') {
336
+ $children.eq(scene).addClass('active');
337
+ } else {
338
+ $children.first().addClass('active');
339
+ }
340
+ },
341
+ pager: function () {
342
+ var $this = this;
343
+ refresh.createPager = function () {
344
+ thumbWidth = (elSize - ((settings.thumbItem * (settings.thumbMargin)) - settings.thumbMargin)) / settings.thumbItem;
345
+ var $children = $slide.find('.lslide');
346
+ var length = $slide.find('.lslide').length;
347
+ var i = 0,
348
+ pagers = '',
349
+ v = 0;
350
+ for (i = 0; i < length; i++) {
351
+ if (settings.mode === 'slide') {
352
+ // calculate scene * slide value
353
+ if (!settings.autoWidth) {
354
+ v = i * ((slideWidth + settings.slideMargin) * settings.slideMove);
355
+ } else {
356
+ v += ((parseInt($children.eq(i).width()) + settings.slideMargin) * settings.slideMove);
357
+ }
358
+ }
359
+ var thumb = $children.eq(i * settings.slideMove).attr('data-thumb');
360
+ if (settings.gallery === true) {
361
+ pagers += '<li style="width:100%;' + property + ':' + thumbWidth + 'px;' + gutter + ':' + settings.thumbMargin + 'px"><a href="#"><img src="' + thumb + '" /></a></li>';
362
+ } else {
363
+ pagers += '<li><a href="#">' + (i + 1) + '</a></li>';
364
+ }
365
+ if (settings.mode === 'slide') {
366
+ if ((v) >= w - elSize - settings.slideMargin) {
367
+ i = i + 1;
368
+ var minPgr = 2;
369
+ if (settings.autoWidth) {
370
+ pagers += '<li><a href="#">' + (i + 1) + '</a></li>';
371
+ minPgr = 1;
372
+ }
373
+ if (i < minPgr) {
374
+ pagers = null;
375
+ $slide.parent().addClass('noPager');
376
+ } else {
377
+ $slide.parent().removeClass('noPager');
378
+ }
379
+ break;
380
+ }
381
+ }
382
+ }
383
+ var $cSouter = $slide.parent();
384
+ $cSouter.find('.lSPager').html(pagers);
385
+ if (settings.gallery === true) {
386
+ if (settings.vertical === true) {
387
+ // set Gallery thumbnail width
388
+ $cSouter.find('.lSPager').css('width', settings.vThumbWidth + 'px');
389
+ }
390
+ pagerWidth = (i * (settings.thumbMargin + thumbWidth)) + 0.5;
391
+ $cSouter.find('.lSPager').css({
392
+ property: pagerWidth + 'px',
393
+ 'transition-duration': settings.speed + 'ms'
394
+ });
395
+ if (settings.vertical === true) {
396
+ $slide.parent().css('padding-right', (settings.vThumbWidth + settings.galleryMargin) + 'px');
397
+ }
398
+ $cSouter.find('.lSPager').css(property, pagerWidth + 'px');
399
+ }
400
+ var $pager = $cSouter.find('.lSPager').find('li');
401
+ $pager.first().addClass('active');
402
+ $pager.on('click', function () {
403
+ if (settings.loop === true && settings.mode === 'slide') {
404
+ scene = scene + ($pager.index(this) - $cSouter.find('.lSPager').find('li.active').index());
405
+ } else {
406
+ scene = $pager.index(this);
407
+ }
408
+ $el.mode(false);
409
+ if (settings.gallery === true) {
410
+ $this.slideThumb();
411
+ }
412
+ return false;
413
+ });
414
+ };
415
+ if (settings.pager) {
416
+ var cl = 'lSpg';
417
+ if (settings.gallery) {
418
+ cl = 'lSGallery';
419
+ }
420
+ $slide.after('<ul class="lSPager ' + cl + '"></ul>');
421
+ var gMargin = (settings.vertical) ? 'margin-left' : 'margin-top';
422
+ $slide.parent().find('.lSPager').css(gMargin, settings.galleryMargin + 'px');
423
+ refresh.createPager();
424
+ }
425
+
426
+ setTimeout(function () {
427
+ refresh.init();
428
+ }, 0);
429
+ },
430
+ setHeight: function (ob, fade) {
431
+ var obj = null,
432
+ $this = this;
433
+ if (settings.loop) {
434
+ obj = ob.children('.lslide ').first();
435
+ } else {
436
+ obj = ob.children().first();
437
+ }
438
+ var setCss = function () {
439
+ var tH = obj.outerHeight(),
440
+ tP = 0,
441
+ tHT = tH;
442
+ if (fade) {
443
+ tH = 0;
444
+ tP = ((tHT) * 100) / elSize;
445
+ }
446
+ ob.css({
447
+ 'height': tH + 'px',
448
+ 'padding-bottom': tP + '%'
449
+ });
450
+ };
451
+ setCss();
452
+ if (obj.find('img').length) {
453
+ if ( obj.find('img')[0].complete) {
454
+ setCss();
455
+ if (!interval) {
456
+ $this.auto();
457
+ }
458
+ }else{
459
+ obj.find('img').on('load', function () {
460
+ setTimeout(function () {
461
+ setCss();
462
+ if (!interval) {
463
+ $this.auto();
464
+ }
465
+ }, 100);
466
+ });
467
+ }
468
+ }else{
469
+ if (!interval) {
470
+ $this.auto();
471
+ }
472
+ }
473
+ },
474
+ active: function (ob, t) {
475
+ if (this.doCss() && settings.mode === 'fade') {
476
+ $slide.addClass('on');
477
+ }
478
+ var sc = 0;
479
+ if (scene * settings.slideMove < length) {
480
+ ob.removeClass('active');
481
+ if (!this.doCss() && settings.mode === 'fade' && t === false) {
482
+ ob.fadeOut(settings.speed);
483
+ }
484
+ if (t === true) {
485
+ sc = scene;
486
+ } else {
487
+ sc = scene * settings.slideMove;
488
+ }
489
+ //t === true ? sc = scene : sc = scene * settings.slideMove;
490
+ var l, nl;
491
+ if (t === true) {
492
+ l = ob.length;
493
+ nl = l - 1;
494
+ if (sc + 1 >= l) {
495
+ sc = nl;
496
+ }
497
+ }
498
+ if (settings.loop === true && settings.mode === 'slide') {
499
+ //t === true ? sc = scene - $el.find('.clone.left').length : sc = scene * settings.slideMove;
500
+ if (t === true) {
501
+ sc = scene - $el.find('.clone.left').length;
502
+ } else {
503
+ sc = scene * settings.slideMove;
504
+ }
505
+ if (t === true) {
506
+ l = ob.length;
507
+ nl = l - 1;
508
+ if (sc + 1 === l) {
509
+ sc = nl;
510
+ } else if (sc + 1 > l) {
511
+ sc = 0;
512
+ }
513
+ }
514
+ }
515
+
516
+ if (!this.doCss() && settings.mode === 'fade' && t === false) {
517
+ ob.eq(sc).fadeIn(settings.speed);
518
+ }
519
+ ob.eq(sc).addClass('active');
520
+ } else {
521
+ ob.removeClass('active');
522
+ ob.eq(ob.length - 1).addClass('active');
523
+ if (!this.doCss() && settings.mode === 'fade' && t === false) {
524
+ ob.fadeOut(settings.speed);
525
+ ob.eq(sc).fadeIn(settings.speed);
526
+ }
527
+ }
528
+ },
529
+ move: function (ob, v) {
530
+ if (settings.rtl === true) {
531
+ v = -v;
532
+ }
533
+ if (this.doCss()) {
534
+ if (settings.vertical === true) {
535
+ ob.css({
536
+ 'transform': 'translate3d(0px, ' + (-v) + 'px, 0px)',
537
+ '-webkit-transform': 'translate3d(0px, ' + (-v) + 'px, 0px)'
538
+ });
539
+ } else {
540
+ ob.css({
541
+ 'transform': 'translate3d(' + (-v) + 'px, 0px, 0px)',
542
+ '-webkit-transform': 'translate3d(' + (-v) + 'px, 0px, 0px)',
543
+ });
544
+ }
545
+ } else {
546
+ if (settings.vertical === true) {
547
+ ob.css('position', 'relative').animate({
548
+ top: -v + 'px'
549
+ }, settings.speed, settings.easing);
550
+ } else {
551
+ ob.css('position', 'relative').animate({
552
+ left: -v + 'px'
553
+ }, settings.speed, settings.easing);
554
+ }
555
+ }
556
+ var $thumb = $slide.parent().find('.lSPager').find('li');
557
+ this.active($thumb, true);
558
+ },
559
+ fade: function () {
560
+ this.active($children, false);
561
+ var $thumb = $slide.parent().find('.lSPager').find('li');
562
+ this.active($thumb, true);
563
+ },
564
+ slide: function () {
565
+ var $this = this;
566
+ refresh.calSlide = function () {
567
+ if (w > elSize) {
568
+ slideValue = $this.slideValue();
569
+ $this.active($children, false);
570
+ if ((slideValue) > w - elSize - settings.slideMargin) {
571
+ slideValue = w - elSize - settings.slideMargin;
572
+ } else if (slideValue < 0) {
573
+ slideValue = 0;
574
+ }
575
+ $this.move($el, slideValue);
576
+ if (settings.loop === true && settings.mode === 'slide') {
577
+ if (scene >= (length - ($el.find('.clone.left').length / settings.slideMove))) {
578
+ $this.resetSlide($el.find('.clone.left').length);
579
+ }
580
+ if (scene === 0) {
581
+ $this.resetSlide($slide.find('.lslide').length);
582
+ }
583
+ }
584
+ }
585
+ };
586
+ refresh.calSlide();
587
+ },
588
+ resetSlide: function (s) {
589
+ var $this = this;
590
+ $slide.find('.lSAction a').addClass('disabled');
591
+ setTimeout(function () {
592
+ scene = s;
593
+ $slide.css('transition-duration', '0ms');
594
+ slideValue = $this.slideValue();
595
+ $this.active($children, false);
596
+ plugin.move($el, slideValue);
597
+ setTimeout(function () {
598
+ $slide.css('transition-duration', settings.speed + 'ms');
599
+ $slide.find('.lSAction a').removeClass('disabled');
600
+ }, 50);
601
+ }, settings.speed + 100);
602
+ },
603
+ slideValue: function () {
604
+ var _sV = 0;
605
+ if (settings.autoWidth === false) {
606
+ _sV = scene * ((slideWidth + settings.slideMargin) * settings.slideMove);
607
+ } else {
608
+ _sV = 0;
609
+ for (var i = 0; i < scene; i++) {
610
+ _sV += (parseInt($children.eq(i).width()) + settings.slideMargin);
611
+ }
612
+ }
613
+ return _sV;
614
+ },
615
+ slideThumb: function () {
616
+ var position;
617
+ switch (settings.currentPagerPosition) {
618
+ case 'left':
619
+ position = 0;
620
+ break;
621
+ case 'middle':
622
+ position = (elSize / 2) - (thumbWidth / 2);
623
+ break;
624
+ case 'right':
625
+ position = elSize - thumbWidth;
626
+ }
627
+ var sc = scene - $el.find('.clone.left').length;
628
+ var $pager = $slide.parent().find('.lSPager');
629
+ if (settings.mode === 'slide' && settings.loop === true) {
630
+ if (sc >= $pager.children().length) {
631
+ sc = 0;
632
+ } else if (sc < 0) {
633
+ sc = $pager.children().length;
634
+ }
635
+ }
636
+ var thumbSlide = sc * ((thumbWidth + settings.thumbMargin)) - (position);
637
+ if ((thumbSlide + elSize) > pagerWidth) {
638
+ thumbSlide = pagerWidth - elSize - settings.thumbMargin;
639
+ }
640
+ if (thumbSlide < 0) {
641
+ thumbSlide = 0;
642
+ }
643
+ this.move($pager, thumbSlide);
644
+ },
645
+ auto: function () {
646
+ if (settings.auto) {
647
+ clearInterval(interval);
648
+ interval = setInterval(function () {
649
+ $el.goToNextSlide();
650
+ }, settings.pause);
651
+ }
652
+ },
653
+ pauseOnHover: function(){
654
+ var $this = this;
655
+ if (settings.auto && settings.pauseOnHover) {
656
+ $slide.on('mouseenter', function(){
657
+ $(this).addClass('ls-hover');
658
+ $el.pause();
659
+ settings.auto = true;
660
+ });
661
+ $slide.on('mouseleave',function(){
662
+ $(this).removeClass('ls-hover');
663
+ if (!$slide.find('.lightSlider').hasClass('lsGrabbing')) {
664
+ $this.auto();
665
+ }
666
+ });
667
+ }
668
+ },
669
+ touchMove: function (endCoords, startCoords) {
670
+ $slide.css('transition-duration', '0ms');
671
+ if (settings.mode === 'slide') {
672
+ var distance = endCoords - startCoords;
673
+ var swipeVal = slideValue - distance;
674
+ if ((swipeVal) >= w - elSize - settings.slideMargin) {
675
+ if (settings.freeMove === false) {
676
+ swipeVal = w - elSize - settings.slideMargin;
677
+ } else {
678
+ var swipeValT = w - elSize - settings.slideMargin;
679
+ swipeVal = swipeValT + ((swipeVal - swipeValT) / 5);
680
+
681
+ }
682
+ } else if (swipeVal < 0) {
683
+ if (settings.freeMove === false) {
684
+ swipeVal = 0;
685
+ } else {
686
+ swipeVal = swipeVal / 5;
687
+ }
688
+ }
689
+ this.move($el, swipeVal);
690
+ }
691
+ },
692
+
693
+ touchEnd: function (distance) {
694
+ $slide.css('transition-duration', settings.speed + 'ms');
695
+ if (settings.mode === 'slide') {
696
+ var mxVal = false;
697
+ var _next = true;
698
+ slideValue = slideValue - distance;
699
+ if ((slideValue) > w - elSize - settings.slideMargin) {
700
+ slideValue = w - elSize - settings.slideMargin;
701
+ if (settings.autoWidth === false) {
702
+ mxVal = true;
703
+ }
704
+ } else if (slideValue < 0) {
705
+ slideValue = 0;
706
+ }
707
+ var gC = function (next) {
708
+ var ad = 0;
709
+ if (!mxVal) {
710
+ if (next) {
711
+ ad = 1;
712
+ }
713
+ }
714
+ if (!settings.autoWidth) {
715
+ var num = slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove);
716
+ scene = parseInt(num) + ad;
717
+ if (slideValue >= (w - elSize - settings.slideMargin)) {
718
+ if (num % 1 !== 0) {
719
+ scene++;
720
+ }
721
+ }
722
+ } else {
723
+ var tW = 0;
724
+ for (var i = 0; i < $children.length; i++) {
725
+ tW += (parseInt($children.eq(i).width()) + settings.slideMargin);
726
+ scene = i + ad;
727
+ if (tW >= slideValue) {
728
+ break;
729
+ }
730
+ }
731
+ }
732
+ };
733
+ if (distance >= settings.swipeThreshold) {
734
+ gC(false);
735
+ _next = false;
736
+ } else if (distance <= -settings.swipeThreshold) {
737
+ gC(true);
738
+ _next = false;
739
+ }
740
+ $el.mode(_next);
741
+ this.slideThumb();
742
+ } else {
743
+ if (distance >= settings.swipeThreshold) {
744
+ $el.goToPrevSlide();
745
+ } else if (distance <= -settings.swipeThreshold) {
746
+ $el.goToNextSlide();
747
+ }
748
+ }
749
+ },
750
+
751
+
752
+
753
+ enableDrag: function () {
754
+ var $this = this;
755
+ if (!isTouch) {
756
+ var startCoords = 0,
757
+ endCoords = 0,
758
+ isDraging = false;
759
+ $slide.find('.lightSlider').addClass('lsGrab');
760
+ $slide.on('mousedown', function (e) {
761
+ if (w < elSize) {
762
+ if (w !== 0) {
763
+ return false;
764
+ }
765
+ }
766
+ if ($(e.target).attr('class') !== ('lSPrev') && $(e.target).attr('class') !== ('lSNext')) {
767
+ startCoords = (settings.vertical === true) ? e.pageY : e.pageX;
768
+ isDraging = true;
769
+ if (e.preventDefault) {
770
+ e.preventDefault();
771
+ } else {
772
+ e.returnValue = false;
773
+ }
774
+ // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723
775
+ $slide.scrollLeft += 1;
776
+ $slide.scrollLeft -= 1;
777
+ // *
778
+ $slide.find('.lightSlider').removeClass('lsGrab').addClass('lsGrabbing');
779
+ clearInterval(interval);
780
+ }
781
+ });
782
+ $(window).on('mousemove', function (e) {
783
+ if (isDraging) {
784
+ endCoords = (settings.vertical === true) ? e.pageY : e.pageX;
785
+ $this.touchMove(endCoords, startCoords);
786
+ }
787
+ });
788
+ $(window).on('mouseup', function (e) {
789
+ if (isDraging) {
790
+ $slide.find('.lightSlider').removeClass('lsGrabbing').addClass('lsGrab');
791
+ isDraging = false;
792
+ endCoords = (settings.vertical === true) ? e.pageY : e.pageX;
793
+ var distance = endCoords - startCoords;
794
+ if (Math.abs(distance) >= settings.swipeThreshold) {
795
+ $(window).on('click.ls', function (e) {
796
+ if (e.preventDefault) {
797
+ e.preventDefault();
798
+ } else {
799
+ e.returnValue = false;
800
+ }
801
+ e.stopImmediatePropagation();
802
+ e.stopPropagation();
803
+ $(window).off('click.ls');
804
+ });
805
+ }
806
+
807
+ $this.touchEnd(distance);
808
+
809
+ }
810
+ });
811
+ }
812
+ },
813
+
814
+
815
+
816
+
817
+ enableTouch: function () {
818
+ var $this = this;
819
+ if (isTouch) {
820
+ var startCoords = {},
821
+ endCoords = {};
822
+ $slide.on('touchstart', function (e) {
823
+ endCoords = e.originalEvent.targetTouches[0];
824
+ startCoords.pageX = e.originalEvent.targetTouches[0].pageX;
825
+ startCoords.pageY = e.originalEvent.targetTouches[0].pageY;
826
+ clearInterval(interval);
827
+ });
828
+ $slide.on('touchmove', function (e) {
829
+ if (w < elSize) {
830
+ if (w !== 0) {
831
+ return false;
832
+ }
833
+ }
834
+ var orig = e.originalEvent;
835
+ endCoords = orig.targetTouches[0];
836
+ var xMovement = Math.abs(endCoords.pageX - startCoords.pageX);
837
+ var yMovement = Math.abs(endCoords.pageY - startCoords.pageY);
838
+ if (settings.vertical === true) {
839
+ if ((yMovement * 3) > xMovement) {
840
+ e.preventDefault();
841
+ }
842
+ $this.touchMove(endCoords.pageY, startCoords.pageY);
843
+ } else {
844
+ if ((xMovement * 3) > yMovement) {
845
+ e.preventDefault();
846
+ }
847
+ $this.touchMove(endCoords.pageX, startCoords.pageX);
848
+ }
849
+
850
+ });
851
+ $slide.on('touchend', function () {
852
+ if (w < elSize) {
853
+ if (w !== 0) {
854
+ return false;
855
+ }
856
+ }
857
+ var distance;
858
+ if (settings.vertical === true) {
859
+ distance = endCoords.pageY - startCoords.pageY;
860
+ } else {
861
+ distance = endCoords.pageX - startCoords.pageX;
862
+ }
863
+ $this.touchEnd(distance);
864
+ });
865
+ }
866
+ },
867
+ build: function () {
868
+ var $this = this;
869
+ $this.initialStyle();
870
+ if (this.doCss()) {
871
+
872
+ if (settings.enableTouch === true) {
873
+ $this.enableTouch();
874
+ }
875
+ if (settings.enableDrag === true) {
876
+ $this.enableDrag();
877
+ }
878
+ }
879
+
880
+ $(window).on('focus', function(){
881
+ $this.auto();
882
+ });
883
+
884
+ $(window).on('blur', function(){
885
+ clearInterval(interval);
886
+ });
887
+
888
+ $this.pager();
889
+ $this.pauseOnHover();
890
+ $this.controls();
891
+ $this.keyPress();
892
+ }
893
+ };
894
+ plugin.build();
895
+ refresh.init = function () {
896
+ refresh.chbreakpoint();
897
+ if (settings.vertical === true) {
898
+ if (settings.item > 1) {
899
+ elSize = settings.verticalHeight;
900
+ } else {
901
+ elSize = $children.outerHeight();
902
+ }
903
+ $slide.css('height', elSize + 'px');
904
+ } else {
905
+ elSize = $slide.outerWidth();
906
+ }
907
+ if (settings.loop === true && settings.mode === 'slide') {
908
+ refresh.clone();
909
+ }
910
+ refresh.calL();
911
+ if (settings.mode === 'slide') {
912
+ $el.removeClass('lSSlide');
913
+ }
914
+ if (settings.mode === 'slide') {
915
+ refresh.calSW();
916
+ refresh.sSW();
917
+ }
918
+ setTimeout(function () {
919
+ if (settings.mode === 'slide') {
920
+ $el.addClass('lSSlide');
921
+ }
922
+ }, 1000);
923
+ if (settings.pager) {
924
+ refresh.createPager();
925
+ }
926
+ if (settings.adaptiveHeight === true && settings.vertical === false) {
927
+ $el.css('height', $children.eq(scene).outerHeight(true));
928
+ }
929
+ if (settings.adaptiveHeight === false) {
930
+ if (settings.mode === 'slide') {
931
+ if (settings.vertical === false) {
932
+ plugin.setHeight($el, false);
933
+ }else{
934
+ plugin.auto();
935
+ }
936
+ } else {
937
+ plugin.setHeight($el, true);
938
+ }
939
+ }
940
+ if (settings.gallery === true) {
941
+ plugin.slideThumb();
942
+ }
943
+ if (settings.mode === 'slide') {
944
+ plugin.slide();
945
+ }
946
+ if (settings.autoWidth === false) {
947
+ if ($children.length <= settings.item) {
948
+ $slide.find('.lSAction').hide();
949
+ } else {
950
+ $slide.find('.lSAction').show();
951
+ }
952
+ } else {
953
+ if ((refresh.calWidth(false) < elSize) && (w !== 0)) {
954
+ $slide.find('.lSAction').hide();
955
+ } else {
956
+ $slide.find('.lSAction').show();
957
+ }
958
+ }
959
+ };
960
+ $el.goToPrevSlide = function () {
961
+ if (scene > 0) {
962
+ settings.onBeforePrevSlide.call(this, $el, scene);
963
+ scene--;
964
+ $el.mode(false);
965
+ if (settings.gallery === true) {
966
+ plugin.slideThumb();
967
+ }
968
+ } else {
969
+ if (settings.loop === true) {
970
+ settings.onBeforePrevSlide.call(this, $el, scene);
971
+ if (settings.mode === 'fade') {
972
+ var l = (length - 1);
973
+ scene = parseInt(l / settings.slideMove);
974
+ }
975
+ $el.mode(false);
976
+ if (settings.gallery === true) {
977
+ plugin.slideThumb();
978
+ }
979
+ } else if (settings.slideEndAnimation === true) {
980
+ $el.addClass('leftEnd');
981
+ setTimeout(function () {
982
+ $el.removeClass('leftEnd');
983
+ }, 400);
984
+ }
985
+ }
986
+ };
987
+ $el.goToNextSlide = function () {
988
+ var nextI = true;
989
+ if (settings.mode === 'slide') {
990
+ var _slideValue = plugin.slideValue();
991
+ nextI = _slideValue < w - elSize - settings.slideMargin;
992
+ }
993
+ if (((scene * settings.slideMove) < length - settings.slideMove) && nextI) {
994
+ settings.onBeforeNextSlide.call(this, $el, scene);
995
+ scene++;
996
+ $el.mode(false);
997
+ if (settings.gallery === true) {
998
+ plugin.slideThumb();
999
+ }
1000
+ } else {
1001
+ if (settings.loop === true) {
1002
+ settings.onBeforeNextSlide.call(this, $el, scene);
1003
+ scene = 0;
1004
+ $el.mode(false);
1005
+ if (settings.gallery === true) {
1006
+ plugin.slideThumb();
1007
+ }
1008
+ } else if (settings.slideEndAnimation === true) {
1009
+ $el.addClass('rightEnd');
1010
+ setTimeout(function () {
1011
+ $el.removeClass('rightEnd');
1012
+ }, 400);
1013
+ }
1014
+ }
1015
+ };
1016
+ $el.mode = function (_touch) {
1017
+ if (settings.adaptiveHeight === true && settings.vertical === false) {
1018
+ $el.css('height', $children.eq(scene).outerHeight(true));
1019
+ }
1020
+ if (on === false) {
1021
+ if (settings.mode === 'slide') {
1022
+ if (plugin.doCss()) {
1023
+ $el.addClass('lSSlide');
1024
+ if (settings.speed !== '') {
1025
+ $slide.css('transition-duration', settings.speed + 'ms');
1026
+ }
1027
+ if (settings.cssEasing !== '') {
1028
+ $slide.css('transition-timing-function', settings.cssEasing);
1029
+ }
1030
+ }
1031
+ } else {
1032
+ if (plugin.doCss()) {
1033
+ if (settings.speed !== '') {
1034
+ $el.css('transition-duration', settings.speed + 'ms');
1035
+ }
1036
+ if (settings.cssEasing !== '') {
1037
+ $el.css('transition-timing-function', settings.cssEasing);
1038
+ }
1039
+ }
1040
+ }
1041
+ }
1042
+ if (!_touch) {
1043
+ settings.onBeforeSlide.call(this, $el, scene);
1044
+ }
1045
+ if (settings.mode === 'slide') {
1046
+ plugin.slide();
1047
+ } else {
1048
+ plugin.fade();
1049
+ }
1050
+ if (!$slide.hasClass('ls-hover')) {
1051
+ plugin.auto();
1052
+ }
1053
+ setTimeout(function () {
1054
+ if (!_touch) {
1055
+ settings.onAfterSlide.call(this, $el, scene);
1056
+ }
1057
+ }, settings.speed);
1058
+ on = true;
1059
+ };
1060
+ $el.play = function () {
1061
+ $el.goToNextSlide();
1062
+ settings.auto = true;
1063
+ plugin.auto();
1064
+ };
1065
+ $el.pause = function () {
1066
+ settings.auto = false;
1067
+ clearInterval(interval);
1068
+ };
1069
+ $el.refresh = function () {
1070
+ refresh.init();
1071
+ };
1072
+ $el.getCurrentSlideCount = function () {
1073
+ var sc = scene;
1074
+ if (settings.loop) {
1075
+ var ln = $slide.find('.lslide').length,
1076
+ cl = $el.find('.clone.left').length;
1077
+ if (scene <= cl - 1) {
1078
+ sc = ln + (scene - cl);
1079
+ } else if (scene >= (ln + cl)) {
1080
+ sc = scene - ln - cl;
1081
+ } else {
1082
+ sc = scene - cl;
1083
+ }
1084
+ }
1085
+ return sc + 1;
1086
+ };
1087
+ $el.getTotalSlideCount = function () {
1088
+ return $slide.find('.lslide').length;
1089
+ };
1090
+ $el.goToSlide = function (s) {
1091
+ if (settings.loop) {
1092
+ scene = (s + $el.find('.clone.left').length - 1);
1093
+ } else {
1094
+ scene = s;
1095
+ }
1096
+ $el.mode(false);
1097
+ if (settings.gallery === true) {
1098
+ plugin.slideThumb();
1099
+ }
1100
+ };
1101
+ $el.destroy = function () {
1102
+ if ($el.lightSlider) {
1103
+ $el.goToPrevSlide = function(){};
1104
+ $el.goToNextSlide = function(){};
1105
+ $el.mode = function(){};
1106
+ $el.play = function(){};
1107
+ $el.pause = function(){};
1108
+ $el.refresh = function(){};
1109
+ $el.getCurrentSlideCount = function(){};
1110
+ $el.getTotalSlideCount = function(){};
1111
+ $el.goToSlide = function(){};
1112
+ $el.lightSlider = null;
1113
+ refresh = {
1114
+ init : function(){}
1115
+ };
1116
+ $el.parent().parent().find('.lSAction, .lSPager').remove();
1117
+ $el.removeClass('lightSlider lSFade lSSlide lsGrab lsGrabbing leftEnd right').removeAttr('style').unwrap().unwrap();
1118
+ $el.children().removeAttr('style');
1119
+ $children.removeClass('lslide active');
1120
+ $el.find('.clone').remove();
1121
+ $children = null;
1122
+ interval = null;
1123
+ on = false;
1124
+ scene = 0;
1125
+ }
1126
+
1127
+ };
1128
+ setTimeout(function () {
1129
+ settings.onSliderLoad.call(this, $el);
1130
+ }, 10);
1131
+ $(window).on('resize orientationchange', function (e) {
1132
+ setTimeout(function () {
1133
+ if (e.preventDefault) {
1134
+ e.preventDefault();
1135
+ } else {
1136
+ e.returnValue = false;
1137
+ }
1138
+ refresh.init();
1139
+ }, 200);
1140
+ });
1141
+ return this;
1142
+ };
1143
+ }(jQuery));
slider/js/lightslider.min.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! lightslider - v1.1.6 - 2016-10-25
2
- * https://github.com/sachinchoolur/lightslider
3
- * Copyright (c) 2016 Sachin N; Licensed MIT */
4
  !function(a,b){"use strict";var c={item:3,autoWidth:!1,slideMove:1,slideMargin:10,addClass:"",mode:"slide",useCSS:!0,cssEasing:"ease",easing:"linear",speed:400,auto:!1,pauseOnHover:!1,loop:!1,slideEndAnimation:!0,pause:2e3,keyPress:!1,controls:!0,prevHtml:"",nextHtml:"",rtl:!1,adaptiveHeight:!1,vertical:!1,verticalHeight:500,vThumbWidth:100,thumbItem:10,pager:!0,gallery:!1,galleryMargin:5,thumbMargin:5,currentPagerPosition:"middle",enableTouch:!0,enableDrag:!0,freeMove:!0,swipeThreshold:40,responsive:[],onBeforeStart:function(a){},onSliderLoad:function(a){},onBeforeSlide:function(a,b){},onAfterSlide:function(a,b){},onBeforeNextSlide:function(a,b){},onBeforePrevSlide:function(a,b){}};a.fn.lightSlider=function(b){if(0===this.length)return this;if(this.length>1)return this.each(function(){a(this).lightSlider(b)}),this;var d={},e=a.extend(!0,{},c,b),f={},g=this;d.$el=this,"fade"===e.mode&&(e.vertical=!1);var h=g.children(),i=a(window).width(),j=null,k=null,l=0,m=0,n=!1,o=0,p="",q=0,r=e.vertical===!0?"height":"width",s=e.vertical===!0?"margin-bottom":"margin-right",t=0,u=0,v=0,w=0,x=null,y="ontouchstart"in document.documentElement,z={};return z.chbreakpoint=function(){if(i=a(window).width(),e.responsive.length){var b;if(e.autoWidth===!1&&(b=e.item),i<e.responsive[0].breakpoint)for(var c=0;c<e.responsive.length;c++)i<e.responsive[c].breakpoint&&(j=e.responsive[c].breakpoint,k=e.responsive[c]);if("undefined"!=typeof k&&null!==k)for(var d in k.settings)k.settings.hasOwnProperty(d)&&(("undefined"==typeof f[d]||null===f[d])&&(f[d]=e[d]),e[d]=k.settings[d]);if(!a.isEmptyObject(f)&&i>e.responsive[0].breakpoint)for(var g in f)f.hasOwnProperty(g)&&(e[g]=f[g]);e.autoWidth===!1&&t>0&&v>0&&b!==e.item&&(q=Math.round(t/((v+e.slideMargin)*e.slideMove)))}},z.calSW=function(){e.autoWidth===!1&&(v=(o-(e.item*e.slideMargin-e.slideMargin))/e.item)},z.calWidth=function(a){var b=a===!0?p.find(".lslide").length:h.length;if(e.autoWidth===!1)m=b*(v+e.slideMargin);else{m=0;for(var c=0;b>c;c++)m+=parseInt(h.eq(c).width())+e.slideMargin}return m},d={doCss:function(){var a=function(){for(var a=["transition","MozTransition","WebkitTransition","OTransition","msTransition","KhtmlTransition"],b=document.documentElement,c=0;c<a.length;c++)if(a[c]in b.style)return!0};return e.useCSS&&a()?!0:!1},keyPress:function(){e.keyPress&&a(document).on("keyup.lightslider",function(b){a(":focus").is("input, textarea")||(b.preventDefault?b.preventDefault():b.returnValue=!1,37===b.keyCode?g.goToPrevSlide():39===b.keyCode&&g.goToNextSlide())})},controls:function(){e.controls&&(g.after('<div class="lSAction"><a class="lSPrev">'+e.prevHtml+'</a><a class="lSNext">'+e.nextHtml+"</a></div>"),e.autoWidth?z.calWidth(!1)<o&&p.find(".lSAction").hide():l<=e.item&&p.find(".lSAction").hide(),p.find(".lSAction a").on("click",function(b){return b.preventDefault?b.preventDefault():b.returnValue=!1,"lSPrev"===a(this).attr("class")?g.goToPrevSlide():g.goToNextSlide(),!1}))},initialStyle:function(){var a=this;"fade"===e.mode&&(e.autoWidth=!1,e.slideEndAnimation=!1),e.auto&&(e.slideEndAnimation=!1),e.autoWidth&&(e.slideMove=1,e.item=1),e.loop&&(e.slideMove=1,e.freeMove=!1),e.onBeforeStart.call(this,g),z.chbreakpoint(),g.addClass("lightSlider").wrap('<div class="lSSlideOuter '+e.addClass+'"><div class="lSSlideWrapper"></div></div>'),p=g.parent(".lSSlideWrapper"),e.rtl===!0&&p.parent().addClass("lSrtl"),e.vertical?(p.parent().addClass("vertical"),o=e.verticalHeight,p.css("height",o+"px")):o=g.outerWidth(),h.addClass("lslide"),e.loop===!0&&"slide"===e.mode&&(z.calSW(),z.clone=function(){if(z.calWidth(!0)>o){for(var b=0,c=0,d=0;d<h.length&&(b+=parseInt(g.find(".lslide").eq(d).width())+e.slideMargin,c++,!(b>=o+e.slideMargin));d++);var f=e.autoWidth===!0?c:e.item;if(f<g.find(".clone.left").length)for(var i=0;i<g.find(".clone.left").length-f;i++)h.eq(i).remove();if(f<g.find(".clone.right").length)for(var j=h.length-1;j>h.length-1-g.find(".clone.right").length;j--)q--,h.eq(j).remove();for(var k=g.find(".clone.right").length;f>k;k++)g.find(".lslide").eq(k).clone().removeClass("lslide").addClass("clone right").appendTo(g),q++;for(var l=g.find(".lslide").length-g.find(".clone.left").length;l>g.find(".lslide").length-f;l--)g.find(".lslide").eq(l-1).clone().removeClass("lslide").addClass("clone left").prependTo(g);h=g.children()}else h.hasClass("clone")&&(g.find(".clone").remove(),a.move(g,0))},z.clone()),z.sSW=function(){l=h.length,e.rtl===!0&&e.vertical===!1&&(s="margin-left"),e.autoWidth===!1&&h.css(r,v+"px"),h.css(s,e.slideMargin+"px"),m=z.calWidth(!1),g.css(r,m+"px"),e.loop===!0&&"slide"===e.mode&&n===!1&&(q=g.find(".clone.left").length)},z.calL=function(){h=g.children(),l=h.length},this.doCss()&&p.addClass("usingCss"),z.calL(),"slide"===e.mode?(z.calSW(),z.sSW(),e.loop===!0&&(t=a.slideValue(),this.move(g,t)),e.vertical===!1&&this.setHeight(g,!1)):(this.setHeight(g,!0),g.addClass("lSFade"),this.doCss()||(h.fadeOut(0),h.eq(q).fadeIn(0))),e.loop===!0&&"slide"===e.mode?h.eq(q).addClass("active"):h.first().addClass("active")},pager:function(){var a=this;if(z.createPager=function(){w=(o-(e.thumbItem*e.thumbMargin-e.thumbMargin))/e.thumbItem;var b=p.find(".lslide"),c=p.find(".lslide").length,d=0,f="",h=0;for(d=0;c>d;d++){"slide"===e.mode&&(e.autoWidth?h+=(parseInt(b.eq(d).width())+e.slideMargin)*e.slideMove:h=d*(v+e.slideMargin)*e.slideMove);var i=b.eq(d*e.slideMove).attr("data-thumb");if(f+=e.gallery===!0?'<li style="width:100%;'+r+":"+w+"px;"+s+":"+e.thumbMargin+'px"><a href="#"><img src="'+i+'" /></a></li>':'<li><a href="#">'+(d+1)+"</a></li>","slide"===e.mode&&h>=m-o-e.slideMargin){d+=1;var j=2;e.autoWidth&&(f+='<li><a href="#">'+(d+1)+"</a></li>",j=1),j>d?(f=null,p.parent().addClass("noPager")):p.parent().removeClass("noPager");break}}var k=p.parent();k.find(".lSPager").html(f),e.gallery===!0&&(e.vertical===!0&&k.find(".lSPager").css("width",e.vThumbWidth+"px"),u=d*(e.thumbMargin+w)+.5,k.find(".lSPager").css({property:u+"px","transition-duration":e.speed+"ms"}),e.vertical===!0&&p.parent().css("padding-right",e.vThumbWidth+e.galleryMargin+"px"),k.find(".lSPager").css(r,u+"px"));var l=k.find(".lSPager").find("li");l.first().addClass("active"),l.on("click",function(){return e.loop===!0&&"slide"===e.mode?q+=l.index(this)-k.find(".lSPager").find("li.active").index():q=l.index(this),g.mode(!1),e.gallery===!0&&a.slideThumb(),!1})},e.pager){var b="lSpg";e.gallery&&(b="lSGallery"),p.after('<ul class="lSPager '+b+'"></ul>');var c=e.vertical?"margin-left":"margin-top";p.parent().find(".lSPager").css(c,e.galleryMargin+"px"),z.createPager()}setTimeout(function(){z.init()},0)},setHeight:function(a,b){var c=null,d=this;c=e.loop?a.children(".lslide ").first():a.children().first();var f=function(){var d=c.outerHeight(),e=0,f=d;b&&(d=0,e=100*f/o),a.css({height:d+"px","padding-bottom":e+"%"})};f(),c.find("img").length?c.find("img")[0].complete?(f(),x||d.auto()):c.find("img").on("load",function(){setTimeout(function(){f(),x||d.auto()},100)}):x||d.auto()},active:function(a,b){this.doCss()&&"fade"===e.mode&&p.addClass("on");var c=0;if(q*e.slideMove<l){a.removeClass("active"),this.doCss()||"fade"!==e.mode||b!==!1||a.fadeOut(e.speed),c=b===!0?q:q*e.slideMove;var d,f;b===!0&&(d=a.length,f=d-1,c+1>=d&&(c=f)),e.loop===!0&&"slide"===e.mode&&(c=b===!0?q-g.find(".clone.left").length:q*e.slideMove,b===!0&&(d=a.length,f=d-1,c+1===d?c=f:c+1>d&&(c=0))),this.doCss()||"fade"!==e.mode||b!==!1||a.eq(c).fadeIn(e.speed),a.eq(c).addClass("active")}else a.removeClass("active"),a.eq(a.length-1).addClass("active"),this.doCss()||"fade"!==e.mode||b!==!1||(a.fadeOut(e.speed),a.eq(c).fadeIn(e.speed))},move:function(a,b){e.rtl===!0&&(b=-b),this.doCss()?a.css(e.vertical===!0?{transform:"translate3d(0px, "+-b+"px, 0px)","-webkit-transform":"translate3d(0px, "+-b+"px, 0px)"}:{transform:"translate3d("+-b+"px, 0px, 0px)","-webkit-transform":"translate3d("+-b+"px, 0px, 0px)"}):e.vertical===!0?a.css("position","relative").animate({top:-b+"px"},e.speed,e.easing):a.css("position","relative").animate({left:-b+"px"},e.speed,e.easing);var c=p.parent().find(".lSPager").find("li");this.active(c,!0)},fade:function(){this.active(h,!1);var a=p.parent().find(".lSPager").find("li");this.active(a,!0)},slide:function(){var a=this;z.calSlide=function(){m>o&&(t=a.slideValue(),a.active(h,!1),t>m-o-e.slideMargin?t=m-o-e.slideMargin:0>t&&(t=0),a.move(g,t),e.loop===!0&&"slide"===e.mode&&(q>=l-g.find(".clone.left").length/e.slideMove&&a.resetSlide(g.find(".clone.left").length),0===q&&a.resetSlide(p.find(".lslide").length)))},z.calSlide()},resetSlide:function(a){var b=this;p.find(".lSAction a").addClass("disabled"),setTimeout(function(){q=a,p.css("transition-duration","0ms"),t=b.slideValue(),b.active(h,!1),d.move(g,t),setTimeout(function(){p.css("transition-duration",e.speed+"ms"),p.find(".lSAction a").removeClass("disabled")},50)},e.speed+100)},slideValue:function(){var a=0;if(e.autoWidth===!1)a=q*(v+e.slideMargin)*e.slideMove;else{a=0;for(var b=0;q>b;b++)a+=parseInt(h.eq(b).width())+e.slideMargin}return a},slideThumb:function(){var a;switch(e.currentPagerPosition){case"left":a=0;break;case"middle":a=o/2-w/2;break;case"right":a=o-w}var b=q-g.find(".clone.left").length,c=p.parent().find(".lSPager");"slide"===e.mode&&e.loop===!0&&(b>=c.children().length?b=0:0>b&&(b=c.children().length));var d=b*(w+e.thumbMargin)-a;d+o>u&&(d=u-o-e.thumbMargin),0>d&&(d=0),this.move(c,d)},auto:function(){e.auto&&(clearInterval(x),x=setInterval(function(){g.goToNextSlide()},e.pause))},pauseOnHover:function(){var b=this;e.auto&&e.pauseOnHover&&(p.on("mouseenter",function(){a(this).addClass("ls-hover"),g.pause(),e.auto=!0}),p.on("mouseleave",function(){a(this).removeClass("ls-hover"),p.find(".lightSlider").hasClass("lsGrabbing")||b.auto()}))},touchMove:function(a,b){if(p.css("transition-duration","0ms"),"slide"===e.mode){var c=a-b,d=t-c;if(d>=m-o-e.slideMargin)if(e.freeMove===!1)d=m-o-e.slideMargin;else{var f=m-o-e.slideMargin;d=f+(d-f)/5}else 0>d&&(e.freeMove===!1?d=0:d/=5);this.move(g,d)}},touchEnd:function(a){if(p.css("transition-duration",e.speed+"ms"),"slide"===e.mode){var b=!1,c=!0;t-=a,t>m-o-e.slideMargin?(t=m-o-e.slideMargin,e.autoWidth===!1&&(b=!0)):0>t&&(t=0);var d=function(a){var c=0;if(b||a&&(c=1),e.autoWidth)for(var d=0,f=0;f<h.length&&(d+=parseInt(h.eq(f).width())+e.slideMargin,q=f+c,!(d>=t));f++);else{var g=t/((v+e.slideMargin)*e.slideMove);q=parseInt(g)+c,t>=m-o-e.slideMargin&&g%1!==0&&q++}};a>=e.swipeThreshold?(d(!1),c=!1):a<=-e.swipeThreshold&&(d(!0),c=!1),g.mode(c),this.slideThumb()}else a>=e.swipeThreshold?g.goToPrevSlide():a<=-e.swipeThreshold&&g.goToNextSlide()},enableDrag:function(){var b=this;if(!y){var c=0,d=0,f=!1;p.find(".lightSlider").addClass("lsGrab"),p.on("mousedown",function(b){return o>m&&0!==m?!1:void("lSPrev"!==a(b.target).attr("class")&&"lSNext"!==a(b.target).attr("class")&&(c=e.vertical===!0?b.pageY:b.pageX,f=!0,b.preventDefault?b.preventDefault():b.returnValue=!1,p.scrollLeft+=1,p.scrollLeft-=1,p.find(".lightSlider").removeClass("lsGrab").addClass("lsGrabbing"),clearInterval(x)))}),a(window).on("mousemove",function(a){f&&(d=e.vertical===!0?a.pageY:a.pageX,b.touchMove(d,c))}),a(window).on("mouseup",function(g){if(f){p.find(".lightSlider").removeClass("lsGrabbing").addClass("lsGrab"),f=!1,d=e.vertical===!0?g.pageY:g.pageX;var h=d-c;Math.abs(h)>=e.swipeThreshold&&a(window).on("click.ls",function(b){b.preventDefault?b.preventDefault():b.returnValue=!1,b.stopImmediatePropagation(),b.stopPropagation(),a(window).off("click.ls")}),b.touchEnd(h)}})}},enableTouch:function(){var a=this;if(y){var b={},c={};p.on("touchstart",function(a){c=a.originalEvent.targetTouches[0],b.pageX=a.originalEvent.targetTouches[0].pageX,b.pageY=a.originalEvent.targetTouches[0].pageY,clearInterval(x)}),p.on("touchmove",function(d){if(o>m&&0!==m)return!1;var f=d.originalEvent;c=f.targetTouches[0];var g=Math.abs(c.pageX-b.pageX),h=Math.abs(c.pageY-b.pageY);e.vertical===!0?(3*h>g&&d.preventDefault(),a.touchMove(c.pageY,b.pageY)):(3*g>h&&d.preventDefault(),a.touchMove(c.pageX,b.pageX))}),p.on("touchend",function(){if(o>m&&0!==m)return!1;var d;d=e.vertical===!0?c.pageY-b.pageY:c.pageX-b.pageX,a.touchEnd(d)})}},build:function(){var b=this;b.initialStyle(),this.doCss()&&(e.enableTouch===!0&&b.enableTouch(),e.enableDrag===!0&&b.enableDrag()),a(window).on("focus",function(){b.auto()}),a(window).on("blur",function(){clearInterval(x)}),b.pager(),b.pauseOnHover(),b.controls(),b.keyPress()}},d.build(),z.init=function(){z.chbreakpoint(),e.vertical===!0?(o=e.item>1?e.verticalHeight:h.outerHeight(),p.css("height",o+"px")):o=p.outerWidth(),e.loop===!0&&"slide"===e.mode&&z.clone(),z.calL(),"slide"===e.mode&&g.removeClass("lSSlide"),"slide"===e.mode&&(z.calSW(),z.sSW()),setTimeout(function(){"slide"===e.mode&&g.addClass("lSSlide")},1e3),e.pager&&z.createPager(),e.adaptiveHeight===!0&&e.vertical===!1&&g.css("height",h.eq(q).outerHeight(!0)),e.adaptiveHeight===!1&&("slide"===e.mode?e.vertical===!1?d.setHeight(g,!1):d.auto():d.setHeight(g,!0)),e.gallery===!0&&d.slideThumb(),"slide"===e.mode&&d.slide(),e.autoWidth===!1?h.length<=e.item?p.find(".lSAction").hide():p.find(".lSAction").show():z.calWidth(!1)<o&&0!==m?p.find(".lSAction").hide():p.find(".lSAction").show()},g.goToPrevSlide=function(){if(q>0)e.onBeforePrevSlide.call(this,g,q),q--,g.mode(!1),e.gallery===!0&&d.slideThumb();else if(e.loop===!0){if(e.onBeforePrevSlide.call(this,g,q),"fade"===e.mode){var a=l-1;q=parseInt(a/e.slideMove)}g.mode(!1),e.gallery===!0&&d.slideThumb()}else e.slideEndAnimation===!0&&(g.addClass("leftEnd"),setTimeout(function(){g.removeClass("leftEnd")},400))},g.goToNextSlide=function(){var a=!0;if("slide"===e.mode){var b=d.slideValue();a=b<m-o-e.slideMargin}q*e.slideMove<l-e.slideMove&&a?(e.onBeforeNextSlide.call(this,g,q),q++,g.mode(!1),e.gallery===!0&&d.slideThumb()):e.loop===!0?(e.onBeforeNextSlide.call(this,g,q),q=0,g.mode(!1),e.gallery===!0&&d.slideThumb()):e.slideEndAnimation===!0&&(g.addClass("rightEnd"),setTimeout(function(){g.removeClass("rightEnd")},400))},g.mode=function(a){e.adaptiveHeight===!0&&e.vertical===!1&&g.css("height",h.eq(q).outerHeight(!0)),n===!1&&("slide"===e.mode?d.doCss()&&(g.addClass("lSSlide"),""!==e.speed&&p.css("transition-duration",e.speed+"ms"),""!==e.cssEasing&&p.css("transition-timing-function",e.cssEasing)):d.doCss()&&(""!==e.speed&&g.css("transition-duration",e.speed+"ms"),""!==e.cssEasing&&g.css("transition-timing-function",e.cssEasing))),a||e.onBeforeSlide.call(this,g,q),"slide"===e.mode?d.slide():d.fade(),p.hasClass("ls-hover")||d.auto(),setTimeout(function(){a||e.onAfterSlide.call(this,g,q)},e.speed),n=!0},g.play=function(){g.goToNextSlide(),e.auto=!0,d.auto()},g.pause=function(){e.auto=!1,clearInterval(x)},g.refresh=function(){z.init()},g.getCurrentSlideCount=function(){var a=q;if(e.loop){var b=p.find(".lslide").length,c=g.find(".clone.left").length;a=c-1>=q?b+(q-c):q>=b+c?q-b-c:q-c}return a+1},g.getTotalSlideCount=function(){return p.find(".lslide").length},g.goToSlide=function(a){q=e.loop?a+g.find(".clone.left").length-1:a,g.mode(!1),e.gallery===!0&&d.slideThumb()},g.destroy=function(){g.lightSlider&&(g.goToPrevSlide=function(){},g.goToNextSlide=function(){},g.mode=function(){},g.play=function(){},g.pause=function(){},g.refresh=function(){},g.getCurrentSlideCount=function(){},g.getTotalSlideCount=function(){},g.goToSlide=function(){},g.lightSlider=null,z={init:function(){}},g.parent().parent().find(".lSAction, .lSPager").remove(),g.removeClass("lightSlider lSFade lSSlide lsGrab lsGrabbing leftEnd right").removeAttr("style").unwrap().unwrap(),g.children().removeAttr("style"),h.removeClass("lslide active"),g.find(".clone").remove(),h=null,x=null,n=!1,q=0)},setTimeout(function(){e.onSliderLoad.call(this,g)},10),a(window).on("resize orientationchange",function(a){setTimeout(function(){a.preventDefault?a.preventDefault():a.returnValue=!1,z.init()},200)}),this}}(jQuery);
1
+ /*! lightslider - v1.1.6 - 2016-10-25
2
+ * https://github.com/sachinchoolur/lightslider
3
+ * Copyright (c) 2016 Sachin N; Licensed MIT */
4
  !function(a,b){"use strict";var c={item:3,autoWidth:!1,slideMove:1,slideMargin:10,addClass:"",mode:"slide",useCSS:!0,cssEasing:"ease",easing:"linear",speed:400,auto:!1,pauseOnHover:!1,loop:!1,slideEndAnimation:!0,pause:2e3,keyPress:!1,controls:!0,prevHtml:"",nextHtml:"",rtl:!1,adaptiveHeight:!1,vertical:!1,verticalHeight:500,vThumbWidth:100,thumbItem:10,pager:!0,gallery:!1,galleryMargin:5,thumbMargin:5,currentPagerPosition:"middle",enableTouch:!0,enableDrag:!0,freeMove:!0,swipeThreshold:40,responsive:[],onBeforeStart:function(a){},onSliderLoad:function(a){},onBeforeSlide:function(a,b){},onAfterSlide:function(a,b){},onBeforeNextSlide:function(a,b){},onBeforePrevSlide:function(a,b){}};a.fn.lightSlider=function(b){if(0===this.length)return this;if(this.length>1)return this.each(function(){a(this).lightSlider(b)}),this;var d={},e=a.extend(!0,{},c,b),f={},g=this;d.$el=this,"fade"===e.mode&&(e.vertical=!1);var h=g.children(),i=a(window).width(),j=null,k=null,l=0,m=0,n=!1,o=0,p="",q=0,r=e.vertical===!0?"height":"width",s=e.vertical===!0?"margin-bottom":"margin-right",t=0,u=0,v=0,w=0,x=null,y="ontouchstart"in document.documentElement,z={};return z.chbreakpoint=function(){if(i=a(window).width(),e.responsive.length){var b;if(e.autoWidth===!1&&(b=e.item),i<e.responsive[0].breakpoint)for(var c=0;c<e.responsive.length;c++)i<e.responsive[c].breakpoint&&(j=e.responsive[c].breakpoint,k=e.responsive[c]);if("undefined"!=typeof k&&null!==k)for(var d in k.settings)k.settings.hasOwnProperty(d)&&(("undefined"==typeof f[d]||null===f[d])&&(f[d]=e[d]),e[d]=k.settings[d]);if(!a.isEmptyObject(f)&&i>e.responsive[0].breakpoint)for(var g in f)f.hasOwnProperty(g)&&(e[g]=f[g]);e.autoWidth===!1&&t>0&&v>0&&b!==e.item&&(q=Math.round(t/((v+e.slideMargin)*e.slideMove)))}},z.calSW=function(){e.autoWidth===!1&&(v=(o-(e.item*e.slideMargin-e.slideMargin))/e.item)},z.calWidth=function(a){var b=a===!0?p.find(".lslide").length:h.length;if(e.autoWidth===!1)m=b*(v+e.slideMargin);else{m=0;for(var c=0;b>c;c++)m+=parseInt(h.eq(c).width())+e.slideMargin}return m},d={doCss:function(){var a=function(){for(var a=["transition","MozTransition","WebkitTransition","OTransition","msTransition","KhtmlTransition"],b=document.documentElement,c=0;c<a.length;c++)if(a[c]in b.style)return!0};return e.useCSS&&a()?!0:!1},keyPress:function(){e.keyPress&&a(document).on("keyup.lightslider",function(b){a(":focus").is("input, textarea")||(b.preventDefault?b.preventDefault():b.returnValue=!1,37===b.keyCode?g.goToPrevSlide():39===b.keyCode&&g.goToNextSlide())})},controls:function(){e.controls&&(g.after('<div class="lSAction"><a class="lSPrev">'+e.prevHtml+'</a><a class="lSNext">'+e.nextHtml+"</a></div>"),e.autoWidth?z.calWidth(!1)<o&&p.find(".lSAction").hide():l<=e.item&&p.find(".lSAction").hide(),p.find(".lSAction a").on("click",function(b){return b.preventDefault?b.preventDefault():b.returnValue=!1,"lSPrev"===a(this).attr("class")?g.goToPrevSlide():g.goToNextSlide(),!1}))},initialStyle:function(){var a=this;"fade"===e.mode&&(e.autoWidth=!1,e.slideEndAnimation=!1),e.auto&&(e.slideEndAnimation=!1),e.autoWidth&&(e.slideMove=1,e.item=1),e.loop&&(e.slideMove=1,e.freeMove=!1),e.onBeforeStart.call(this,g),z.chbreakpoint(),g.addClass("lightSlider").wrap('<div class="lSSlideOuter '+e.addClass+'"><div class="lSSlideWrapper"></div></div>'),p=g.parent(".lSSlideWrapper"),e.rtl===!0&&p.parent().addClass("lSrtl"),e.vertical?(p.parent().addClass("vertical"),o=e.verticalHeight,p.css("height",o+"px")):o=g.outerWidth(),h.addClass("lslide"),e.loop===!0&&"slide"===e.mode&&(z.calSW(),z.clone=function(){if(z.calWidth(!0)>o){for(var b=0,c=0,d=0;d<h.length&&(b+=parseInt(g.find(".lslide").eq(d).width())+e.slideMargin,c++,!(b>=o+e.slideMargin));d++);var f=e.autoWidth===!0?c:e.item;if(f<g.find(".clone.left").length)for(var i=0;i<g.find(".clone.left").length-f;i++)h.eq(i).remove();if(f<g.find(".clone.right").length)for(var j=h.length-1;j>h.length-1-g.find(".clone.right").length;j--)q--,h.eq(j).remove();for(var k=g.find(".clone.right").length;f>k;k++)g.find(".lslide").eq(k).clone().removeClass("lslide").addClass("clone right").appendTo(g),q++;for(var l=g.find(".lslide").length-g.find(".clone.left").length;l>g.find(".lslide").length-f;l--)g.find(".lslide").eq(l-1).clone().removeClass("lslide").addClass("clone left").prependTo(g);h=g.children()}else h.hasClass("clone")&&(g.find(".clone").remove(),a.move(g,0))},z.clone()),z.sSW=function(){l=h.length,e.rtl===!0&&e.vertical===!1&&(s="margin-left"),e.autoWidth===!1&&h.css(r,v+"px"),h.css(s,e.slideMargin+"px"),m=z.calWidth(!1),g.css(r,m+"px"),e.loop===!0&&"slide"===e.mode&&n===!1&&(q=g.find(".clone.left").length)},z.calL=function(){h=g.children(),l=h.length},this.doCss()&&p.addClass("usingCss"),z.calL(),"slide"===e.mode?(z.calSW(),z.sSW(),e.loop===!0&&(t=a.slideValue(),this.move(g,t)),e.vertical===!1&&this.setHeight(g,!1)):(this.setHeight(g,!0),g.addClass("lSFade"),this.doCss()||(h.fadeOut(0),h.eq(q).fadeIn(0))),e.loop===!0&&"slide"===e.mode?h.eq(q).addClass("active"):h.first().addClass("active")},pager:function(){var a=this;if(z.createPager=function(){w=(o-(e.thumbItem*e.thumbMargin-e.thumbMargin))/e.thumbItem;var b=p.find(".lslide"),c=p.find(".lslide").length,d=0,f="",h=0;for(d=0;c>d;d++){"slide"===e.mode&&(e.autoWidth?h+=(parseInt(b.eq(d).width())+e.slideMargin)*e.slideMove:h=d*(v+e.slideMargin)*e.slideMove);var i=b.eq(d*e.slideMove).attr("data-thumb");if(f+=e.gallery===!0?'<li style="width:100%;'+r+":"+w+"px;"+s+":"+e.thumbMargin+'px"><a href="#"><img src="'+i+'" /></a></li>':'<li><a href="#">'+(d+1)+"</a></li>","slide"===e.mode&&h>=m-o-e.slideMargin){d+=1;var j=2;e.autoWidth&&(f+='<li><a href="#">'+(d+1)+"</a></li>",j=1),j>d?(f=null,p.parent().addClass("noPager")):p.parent().removeClass("noPager");break}}var k=p.parent();k.find(".lSPager").html(f),e.gallery===!0&&(e.vertical===!0&&k.find(".lSPager").css("width",e.vThumbWidth+"px"),u=d*(e.thumbMargin+w)+.5,k.find(".lSPager").css({property:u+"px","transition-duration":e.speed+"ms"}),e.vertical===!0&&p.parent().css("padding-right",e.vThumbWidth+e.galleryMargin+"px"),k.find(".lSPager").css(r,u+"px"));var l=k.find(".lSPager").find("li");l.first().addClass("active"),l.on("click",function(){return e.loop===!0&&"slide"===e.mode?q+=l.index(this)-k.find(".lSPager").find("li.active").index():q=l.index(this),g.mode(!1),e.gallery===!0&&a.slideThumb(),!1})},e.pager){var b="lSpg";e.gallery&&(b="lSGallery"),p.after('<ul class="lSPager '+b+'"></ul>');var c=e.vertical?"margin-left":"margin-top";p.parent().find(".lSPager").css(c,e.galleryMargin+"px"),z.createPager()}setTimeout(function(){z.init()},0)},setHeight:function(a,b){var c=null,d=this;c=e.loop?a.children(".lslide ").first():a.children().first();var f=function(){var d=c.outerHeight(),e=0,f=d;b&&(d=0,e=100*f/o),a.css({height:d+"px","padding-bottom":e+"%"})};f(),c.find("img").length?c.find("img")[0].complete?(f(),x||d.auto()):c.find("img").on("load",function(){setTimeout(function(){f(),x||d.auto()},100)}):x||d.auto()},active:function(a,b){this.doCss()&&"fade"===e.mode&&p.addClass("on");var c=0;if(q*e.slideMove<l){a.removeClass("active"),this.doCss()||"fade"!==e.mode||b!==!1||a.fadeOut(e.speed),c=b===!0?q:q*e.slideMove;var d,f;b===!0&&(d=a.length,f=d-1,c+1>=d&&(c=f)),e.loop===!0&&"slide"===e.mode&&(c=b===!0?q-g.find(".clone.left").length:q*e.slideMove,b===!0&&(d=a.length,f=d-1,c+1===d?c=f:c+1>d&&(c=0))),this.doCss()||"fade"!==e.mode||b!==!1||a.eq(c).fadeIn(e.speed),a.eq(c).addClass("active")}else a.removeClass("active"),a.eq(a.length-1).addClass("active"),this.doCss()||"fade"!==e.mode||b!==!1||(a.fadeOut(e.speed),a.eq(c).fadeIn(e.speed))},move:function(a,b){e.rtl===!0&&(b=-b),this.doCss()?a.css(e.vertical===!0?{transform:"translate3d(0px, "+-b+"px, 0px)","-webkit-transform":"translate3d(0px, "+-b+"px, 0px)"}:{transform:"translate3d("+-b+"px, 0px, 0px)","-webkit-transform":"translate3d("+-b+"px, 0px, 0px)"}):e.vertical===!0?a.css("position","relative").animate({top:-b+"px"},e.speed,e.easing):a.css("position","relative").animate({left:-b+"px"},e.speed,e.easing);var c=p.parent().find(".lSPager").find("li");this.active(c,!0)},fade:function(){this.active(h,!1);var a=p.parent().find(".lSPager").find("li");this.active(a,!0)},slide:function(){var a=this;z.calSlide=function(){m>o&&(t=a.slideValue(),a.active(h,!1),t>m-o-e.slideMargin?t=m-o-e.slideMargin:0>t&&(t=0),a.move(g,t),e.loop===!0&&"slide"===e.mode&&(q>=l-g.find(".clone.left").length/e.slideMove&&a.resetSlide(g.find(".clone.left").length),0===q&&a.resetSlide(p.find(".lslide").length)))},z.calSlide()},resetSlide:function(a){var b=this;p.find(".lSAction a").addClass("disabled"),setTimeout(function(){q=a,p.css("transition-duration","0ms"),t=b.slideValue(),b.active(h,!1),d.move(g,t),setTimeout(function(){p.css("transition-duration",e.speed+"ms"),p.find(".lSAction a").removeClass("disabled")},50)},e.speed+100)},slideValue:function(){var a=0;if(e.autoWidth===!1)a=q*(v+e.slideMargin)*e.slideMove;else{a=0;for(var b=0;q>b;b++)a+=parseInt(h.eq(b).width())+e.slideMargin}return a},slideThumb:function(){var a;switch(e.currentPagerPosition){case"left":a=0;break;case"middle":a=o/2-w/2;break;case"right":a=o-w}var b=q-g.find(".clone.left").length,c=p.parent().find(".lSPager");"slide"===e.mode&&e.loop===!0&&(b>=c.children().length?b=0:0>b&&(b=c.children().length));var d=b*(w+e.thumbMargin)-a;d+o>u&&(d=u-o-e.thumbMargin),0>d&&(d=0),this.move(c,d)},auto:function(){e.auto&&(clearInterval(x),x=setInterval(function(){g.goToNextSlide()},e.pause))},pauseOnHover:function(){var b=this;e.auto&&e.pauseOnHover&&(p.on("mouseenter",function(){a(this).addClass("ls-hover"),g.pause(),e.auto=!0}),p.on("mouseleave",function(){a(this).removeClass("ls-hover"),p.find(".lightSlider").hasClass("lsGrabbing")||b.auto()}))},touchMove:function(a,b){if(p.css("transition-duration","0ms"),"slide"===e.mode){var c=a-b,d=t-c;if(d>=m-o-e.slideMargin)if(e.freeMove===!1)d=m-o-e.slideMargin;else{var f=m-o-e.slideMargin;d=f+(d-f)/5}else 0>d&&(e.freeMove===!1?d=0:d/=5);this.move(g,d)}},touchEnd:function(a){if(p.css("transition-duration",e.speed+"ms"),"slide"===e.mode){var b=!1,c=!0;t-=a,t>m-o-e.slideMargin?(t=m-o-e.slideMargin,e.autoWidth===!1&&(b=!0)):0>t&&(t=0);var d=function(a){var c=0;if(b||a&&(c=1),e.autoWidth)for(var d=0,f=0;f<h.length&&(d+=parseInt(h.eq(f).width())+e.slideMargin,q=f+c,!(d>=t));f++);else{var g=t/((v+e.slideMargin)*e.slideMove);q=parseInt(g)+c,t>=m-o-e.slideMargin&&g%1!==0&&q++}};a>=e.swipeThreshold?(d(!1),c=!1):a<=-e.swipeThreshold&&(d(!0),c=!1),g.mode(c),this.slideThumb()}else a>=e.swipeThreshold?g.goToPrevSlide():a<=-e.swipeThreshold&&g.goToNextSlide()},enableDrag:function(){var b=this;if(!y){var c=0,d=0,f=!1;p.find(".lightSlider").addClass("lsGrab"),p.on("mousedown",function(b){return o>m&&0!==m?!1:void("lSPrev"!==a(b.target).attr("class")&&"lSNext"!==a(b.target).attr("class")&&(c=e.vertical===!0?b.pageY:b.pageX,f=!0,b.preventDefault?b.preventDefault():b.returnValue=!1,p.scrollLeft+=1,p.scrollLeft-=1,p.find(".lightSlider").removeClass("lsGrab").addClass("lsGrabbing"),clearInterval(x)))}),a(window).on("mousemove",function(a){f&&(d=e.vertical===!0?a.pageY:a.pageX,b.touchMove(d,c))}),a(window).on("mouseup",function(g){if(f){p.find(".lightSlider").removeClass("lsGrabbing").addClass("lsGrab"),f=!1,d=e.vertical===!0?g.pageY:g.pageX;var h=d-c;Math.abs(h)>=e.swipeThreshold&&a(window).on("click.ls",function(b){b.preventDefault?b.preventDefault():b.returnValue=!1,b.stopImmediatePropagation(),b.stopPropagation(),a(window).off("click.ls")}),b.touchEnd(h)}})}},enableTouch:function(){var a=this;if(y){var b={},c={};p.on("touchstart",function(a){c=a.originalEvent.targetTouches[0],b.pageX=a.originalEvent.targetTouches[0].pageX,b.pageY=a.originalEvent.targetTouches[0].pageY,clearInterval(x)}),p.on("touchmove",function(d){if(o>m&&0!==m)return!1;var f=d.originalEvent;c=f.targetTouches[0];var g=Math.abs(c.pageX-b.pageX),h=Math.abs(c.pageY-b.pageY);e.vertical===!0?(3*h>g&&d.preventDefault(),a.touchMove(c.pageY,b.pageY)):(3*g>h&&d.preventDefault(),a.touchMove(c.pageX,b.pageX))}),p.on("touchend",function(){if(o>m&&0!==m)return!1;var d;d=e.vertical===!0?c.pageY-b.pageY:c.pageX-b.pageX,a.touchEnd(d)})}},build:function(){var b=this;b.initialStyle(),this.doCss()&&(e.enableTouch===!0&&b.enableTouch(),e.enableDrag===!0&&b.enableDrag()),a(window).on("focus",function(){b.auto()}),a(window).on("blur",function(){clearInterval(x)}),b.pager(),b.pauseOnHover(),b.controls(),b.keyPress()}},d.build(),z.init=function(){z.chbreakpoint(),e.vertical===!0?(o=e.item>1?e.verticalHeight:h.outerHeight(),p.css("height",o+"px")):o=p.outerWidth(),e.loop===!0&&"slide"===e.mode&&z.clone(),z.calL(),"slide"===e.mode&&g.removeClass("lSSlide"),"slide"===e.mode&&(z.calSW(),z.sSW()),setTimeout(function(){"slide"===e.mode&&g.addClass("lSSlide")},1e3),e.pager&&z.createPager(),e.adaptiveHeight===!0&&e.vertical===!1&&g.css("height",h.eq(q).outerHeight(!0)),e.adaptiveHeight===!1&&("slide"===e.mode?e.vertical===!1?d.setHeight(g,!1):d.auto():d.setHeight(g,!0)),e.gallery===!0&&d.slideThumb(),"slide"===e.mode&&d.slide(),e.autoWidth===!1?h.length<=e.item?p.find(".lSAction").hide():p.find(".lSAction").show():z.calWidth(!1)<o&&0!==m?p.find(".lSAction").hide():p.find(".lSAction").show()},g.goToPrevSlide=function(){if(q>0)e.onBeforePrevSlide.call(this,g,q),q--,g.mode(!1),e.gallery===!0&&d.slideThumb();else if(e.loop===!0){if(e.onBeforePrevSlide.call(this,g,q),"fade"===e.mode){var a=l-1;q=parseInt(a/e.slideMove)}g.mode(!1),e.gallery===!0&&d.slideThumb()}else e.slideEndAnimation===!0&&(g.addClass("leftEnd"),setTimeout(function(){g.removeClass("leftEnd")},400))},g.goToNextSlide=function(){var a=!0;if("slide"===e.mode){var b=d.slideValue();a=b<m-o-e.slideMargin}q*e.slideMove<l-e.slideMove&&a?(e.onBeforeNextSlide.call(this,g,q),q++,g.mode(!1),e.gallery===!0&&d.slideThumb()):e.loop===!0?(e.onBeforeNextSlide.call(this,g,q),q=0,g.mode(!1),e.gallery===!0&&d.slideThumb()):e.slideEndAnimation===!0&&(g.addClass("rightEnd"),setTimeout(function(){g.removeClass("rightEnd")},400))},g.mode=function(a){e.adaptiveHeight===!0&&e.vertical===!1&&g.css("height",h.eq(q).outerHeight(!0)),n===!1&&("slide"===e.mode?d.doCss()&&(g.addClass("lSSlide"),""!==e.speed&&p.css("transition-duration",e.speed+"ms"),""!==e.cssEasing&&p.css("transition-timing-function",e.cssEasing)):d.doCss()&&(""!==e.speed&&g.css("transition-duration",e.speed+"ms"),""!==e.cssEasing&&g.css("transition-timing-function",e.cssEasing))),a||e.onBeforeSlide.call(this,g,q),"slide"===e.mode?d.slide():d.fade(),p.hasClass("ls-hover")||d.auto(),setTimeout(function(){a||e.onAfterSlide.call(this,g,q)},e.speed),n=!0},g.play=function(){g.goToNextSlide(),e.auto=!0,d.auto()},g.pause=function(){e.auto=!1,clearInterval(x)},g.refresh=function(){z.init()},g.getCurrentSlideCount=function(){var a=q;if(e.loop){var b=p.find(".lslide").length,c=g.find(".clone.left").length;a=c-1>=q?b+(q-c):q>=b+c?q-b-c:q-c}return a+1},g.getTotalSlideCount=function(){return p.find(".lslide").length},g.goToSlide=function(a){q=e.loop?a+g.find(".clone.left").length-1:a,g.mode(!1),e.gallery===!0&&d.slideThumb()},g.destroy=function(){g.lightSlider&&(g.goToPrevSlide=function(){},g.goToNextSlide=function(){},g.mode=function(){},g.play=function(){},g.pause=function(){},g.refresh=function(){},g.getCurrentSlideCount=function(){},g.getTotalSlideCount=function(){},g.goToSlide=function(){},g.lightSlider=null,z={init:function(){}},g.parent().parent().find(".lSAction, .lSPager").remove(),g.removeClass("lightSlider lSFade lSSlide lsGrab lsGrabbing leftEnd right").removeAttr("style").unwrap().unwrap(),g.children().removeAttr("style"),h.removeClass("lslide active"),g.find(".clone").remove(),h=null,x=null,n=!1,q=0)},setTimeout(function(){e.onSliderLoad.call(this,g)},10),a(window).on("resize orientationchange",function(a){setTimeout(function(){a.preventDefault?a.preventDefault():a.returnValue=!1,z.init()},200)}),this}}(jQuery);
yikes-inc-easy-custom-woocommerce-product-tabs.php CHANGED
@@ -3,9 +3,9 @@
3
  * Plugin Name: Custom Product Tabs for WooCommerce
4
  * Plugin URI: http://www.yikesinc.com
5
  * Description: Extend WooCommerce to add and manage custom product tabs. Create as many product tabs as needed per product.
6
- * Author: YIKES, Inc
7
  * Author URI: http://www.yikesinc.com
8
- * Version: 1.6.1
9
  * Text Domain: yikes-inc-easy-custom-woocommerce-product-tabs
10
  * Domain Path: languages/
11
  *
@@ -13,6 +13,8 @@
13
  *
14
  * License: GNU General Public License v3.0
15
  * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 
 
16
  *
17
  */
18
 
@@ -102,7 +104,7 @@
102
  * Define the plugin's version
103
  */
104
  if ( ! defined( 'YIKES_Custom_Product_Tabs_Version' ) ) {
105
- define( 'YIKES_Custom_Product_Tabs_Version', '1.6.1' );
106
  }
107
 
108
  /**
3
  * Plugin Name: Custom Product Tabs for WooCommerce
4
  * Plugin URI: http://www.yikesinc.com
5
  * Description: Extend WooCommerce to add and manage custom product tabs. Create as many product tabs as needed per product.
6
+ * Author: YIKES, Inc.
7
  * Author URI: http://www.yikesinc.com
8
+ * Version: 1.6.2
9
  * Text Domain: yikes-inc-easy-custom-woocommerce-product-tabs
10
  * Domain Path: languages/
11
  *
13
  *
14
  * License: GNU General Public License v3.0
15
  * License URI: http://www.gnu.org/licenses/gpl-3.0.html
16
+ *
17
+ * This plugin is originally a fork of SkyVerge WooCommerce Custom Product Tabs Lite
18
  *
19
  */
20
 
104
  * Define the plugin's version
105
  */
106
  if ( ! defined( 'YIKES_Custom_Product_Tabs_Version' ) ) {
107
+ define( 'YIKES_Custom_Product_Tabs_Version', '1.6.2' );
108
  }
109
 
110
  /**