Version Description
- Released: Jan 31, 2018 = New: Support to WooCommerce 3.3.x Update: Plugin Core 3.0.11
Download this release
Release Info
Developer | yithemes |
Plugin | YITH WooCommerce Ajax Search |
Version | 1.5.5 |
Comparing to | |
See all releases |
Code changes from version 1.5.4 to 1.5.5
- README.txt +6 -2
- init.php +4 -2
- plugin-fw/assets/css/admin.css +76 -0
- plugin-fw/assets/css/chosen/chosen.css +0 -435
- plugin-fw/assets/css/metaboxes.css +507 -537
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_flat_10_000000_40x100.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_222222_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_228ef1_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ef8c08_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ffd27a_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ffffff_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_flat_55_c0402a_40x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_glass_35_dddddd_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-icons_3383bb_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-icons_454545_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-icons_70b2e1_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-icons_999999_256x240.png +0 -0
- plugin-fw/assets/css/overcast/images/ui-icons_fbc856_256x240.png +0 -0
- plugin-fw/assets/css/overcast/jquery-ui-custom/jquery-ui-1.8.9.custom.css +0 -578
- plugin-fw/assets/css/yit-plugin-panel.css +43 -203
- plugin-fw/assets/css/yit-upgrader.css +5 -1
- plugin-fw/assets/css/yith-fields.css +334 -0
- plugin-fw/assets/images/chosen/chosen-sprite.png +0 -0
- plugin-fw/assets/images/chosen/chosen-sprite@2x.png +0 -0
- plugin-fw/assets/images/off.png +0 -0
- plugin-fw/assets/images/on.png +0 -0
- plugin-fw/assets/images/select.png +0 -0
- plugin-fw/assets/images/slider/grey.gif +0 -0
- plugin-fw/assets/images/slider/handle.png +0 -0
- plugin-fw/assets/images/slider/orange.gif +0 -0
- plugin-fw/assets/images/slider/tooltip.png +0 -0
- plugin-fw/assets/js/chosen/ajax-chosen.jquery.js +0 -81
- plugin-fw/assets/js/chosen/ajax-chosen.jquery.min.js +0 -2
- plugin-fw/assets/js/chosen/chosen.jquery.js +0 -1211
- plugin-fw/assets/js/how-to.js +4 -4
- plugin-fw/assets/js/how-to.min.js +1 -0
- plugin-fw/assets/js/jquery.colorbox.js +1 -1
- plugin-fw/assets/js/jquery.colorbox.min.js +24 -0
- plugin-fw/assets/js/metabox.js +43 -260
- plugin-fw/assets/js/metabox.min.js +4 -11
- plugin-fw/assets/js/multisite-updater.js +6 -0
- plugin-fw/assets/js/multisite-updater.min.js +4 -1
- plugin-fw/assets/js/panel.spinner.js +0 -139
- plugin-fw/assets/js/panel.spinner.min.js +0 -3
- plugin-fw/assets/js/yit-cptu-sortable-posts.js +0 -32
- plugin-fw/assets/js/yit-plugin-panel.js +124 -280
- plugin-fw/assets/js/yit-plugin-panel.min.js +5 -1
- plugin-fw/assets/js/yit-wp-pointer.js +0 -1
- plugin-fw/assets/js/yit-wp-pointer.min.js +3 -3
- plugin-fw/assets/js/yith-enhanced-select-wc-2.6.js +148 -0
- plugin-fw/assets/js/yith-enhanced-select-wc-2.6.min.js +5 -0
- plugin-fw/assets/js/yith-enhanced-select.js +136 -0
- plugin-fw/assets/js/yith-enhanced-select.min.js +5 -0
- plugin-fw/assets/js/yith-fields.js +350 -0
- plugin-fw/assets/js/yith-fields.min.js +15 -0
- plugin-fw/init.php +3 -4
- plugin-fw/lib/yit-ajax.php +211 -10
- plugin-fw/lib/yit-assets.php +92 -0
- plugin-fw/lib/yit-debug.php +271 -0
- plugin-fw/lib/yit-icons.php +1143 -0
- plugin-fw/lib/yit-metabox.php +149 -143
- plugin-fw/lib/yit-plugin-common.php +1 -1
- plugin-fw/lib/yit-plugin-panel-wc.php +212 -121
- plugin-fw/lib/yit-plugin-panel.php +294 -208
- plugin-fw/lib/yit-plugin-subpanel.php +46 -35
- plugin-fw/lib/yit-upgrade.php +554 -546
- plugin-fw/licence/assets/css/yit-licence.css +5 -3
- plugin-fw/licence/lib/yit-licence.php +164 -153
- plugin-fw/licence/lib/yit-plugin-licence.php +47 -11
- plugin-fw/templates/fields/ajax-posts.php +111 -0
- plugin-fw/templates/fields/ajax-products.php +24 -0
- plugin-fw/templates/fields/ajax-terms.php +133 -0
- plugin-fw/templates/fields/buttons.php +27 -0
- plugin-fw/templates/fields/checkbox.php +28 -0
- plugin-fw/templates/fields/colorpicker.php +27 -0
- plugin-fw/templates/fields/customtabs.php +151 -0
- plugin-fw/templates/fields/datepicker.php +24 -0
- plugin-fw/templates/fields/hidden.php +29 -0
- plugin-fw/templates/{metaboxes/types/simple-text.php → fields/html.php} +5 -8
- plugin-fw/templates/fields/icons.php +63 -0
- plugin-fw/templates/fields/image-gallery.php +40 -0
- plugin-fw/templates/fields/number.php +36 -0
- plugin-fw/templates/fields/onoff.php +21 -0
- plugin-fw/templates/fields/preview.php +18 -0
- plugin-fw/templates/fields/select-buttons.php +44 -0
- plugin-fw/templates/fields/select-mailchimp.php +30 -0
- plugin-fw/templates/fields/select.php +46 -0
- plugin-fw/templates/{metaboxes/types → fields}/sep.php +2 -6
- plugin-fw/templates/fields/sidebarlist.php +28 -0
- plugin-fw/templates/fields/sidebars.php +62 -0
- plugin-fw/templates/fields/simple-text.php +19 -0
- plugin-fw/templates/fields/slider.php +28 -0
- plugin-fw/templates/fields/text-array.php +28 -0
- plugin-fw/templates/fields/text-button.php +49 -0
- plugin-fw/templates/fields/text.php +26 -0
- plugin-fw/templates/fields/textarea-codemirror.php +26 -0
- plugin-fw/templates/fields/textarea-editor.php +38 -0
- plugin-fw/templates/fields/textarea.php +24 -0
- plugin-fw/templates/{metaboxes/types/hidden.php → fields/title.php} +6 -7
- plugin-fw/templates/fields/upload.php +28 -0
- plugin-fw/templates/metaboxes/field-row.php +44 -0
- plugin-fw/templates/metaboxes/tab.php +60 -24
- plugin-fw/templates/metaboxes/types/ajax-products.php +0 -63
- plugin-fw/templates/metaboxes/types/categories.php +0 -88
- plugin-fw/templates/metaboxes/types/checkbox.php +0 -23
- plugin-fw/templates/metaboxes/types/chosen.php +0 -32
- plugin-fw/templates/metaboxes/types/colorpicker.php +0 -22
- plugin-fw/templates/metaboxes/types/contactform.php +0 -557
- plugin-fw/templates/metaboxes/types/customtabs.php +0 -152
- plugin-fw/templates/metaboxes/types/datepicker.php +0 -21
- plugin-fw/templates/metaboxes/types/icon-list.php +79 -77
- plugin-fw/templates/metaboxes/types/image-gallery.php +0 -48
- plugin-fw/templates/metaboxes/types/images.php +0 -90
- plugin-fw/templates/metaboxes/types/number.php +0 -50
- plugin-fw/templates/metaboxes/types/onoff.php +0 -30
- plugin-fw/templates/metaboxes/types/preview.php +0 -19
- plugin-fw/templates/metaboxes/types/responsivesliders.php +0 -31
- plugin-fw/templates/metaboxes/types/select-icon.php +0 -72
- plugin-fw/templates/metaboxes/types/select-mailchimp.php +0 -32
- plugin-fw/templates/metaboxes/types/select.php +0 -32
- plugin-fw/templates/metaboxes/types/sidebar-layout.php +0 -61
- plugin-fw/templates/metaboxes/types/sidebarlist.php +0 -29
- plugin-fw/templates/metaboxes/types/sidebars.php +0 -124
- plugin-fw/templates/metaboxes/types/slider.php +0 -35
- plugin-fw/templates/metaboxes/types/text-array.php +0 -30
- plugin-fw/templates/metaboxes/types/text.php +0 -24
- plugin-fw/templates/metaboxes/types/textarea-editor.php +0 -42
- plugin-fw/templates/metaboxes/types/textarea.php +0 -25
- plugin-fw/templates/metaboxes/types/title.php +0 -18
- plugin-fw/templates/metaboxes/types/typography.php +0 -255
- plugin-fw/templates/metaboxes/types/upload.php +0 -24
- plugin-fw/templates/panel/panel-field-container.php +41 -0
- plugin-fw/templates/panel/types/chosen.php +0 -36
- plugin-fw/templates/panel/types/colorpicker.php +0 -38
- plugin-fw/templates/panel/types/connected-list.php +0 -27
- plugin-fw/templates/panel/types/layout-panel.php +0 -0
- plugin-fw/templates/panel/types/number.php +0 -35
- plugin-fw/templates/panel/types/on-off.php +0 -34
- plugin-fw/templates/panel/types/select-mailchimp.php +0 -36
- plugin-fw/templates/panel/types/select.php +0 -41
- plugin-fw/templates/panel/types/slider.php +0 -40
- plugin-fw/templates/panel/types/text-button.php +0 -36
- plugin-fw/templates/panel/types/text.php +0 -35
- plugin-fw/templates/panel/types/textarea-codemirror.php +0 -40
- plugin-fw/templates/panel/types/textarea.php +0 -35
- plugin-fw/templates/panel/types/upload.php +0 -46
- plugin-fw/templates/panel/woocommerce/woocommerce-form.php +1 -1
- plugin-fw/templates/panel/woocommerce/woocommerce-option-row.php +31 -0
- plugin-fw/templates/panel/woocommerce/woocommerce-upload.php +3 -3
- plugin-fw/yit-functions.php +360 -211
- plugin-fw/yit-plugin.php +3 -0
README.txt
CHANGED
@@ -3,8 +3,8 @@
|
|
3 |
Contributors: yithemes
|
4 |
Tags: woocommerce search by sku, woocommerce search results, woocommerce search shortcode, woocommerce search page, woocommerce search form, woocommerce search filter, woocommerce search products, woocommerce search content, woocommerce search autocomplete, woocommerce advanced search, woocommerce search category, woocommerce search product attributes, woocommerce search by tag, woocommerce search by brand, woocommerce predictive, woocommerce live search, woocommerce single product search, woocommerce site search, woocommerce search tex, tajax, search, woocommerce, products, themes, yit, e-commerce, shop, yith, ajax search, instant search, premium, yithemes, autocomplete, autosuggest, better search, category search, custom search, highlight terms, Live Search, Predictive Search, product search, relevant search, search highlight, search product, suggest, typeahead, WooCommerce Plugin, woocommerce product search, woocommerce search, wordpress ecommerce
|
5 |
Requires at least: 4.0.0
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 1.5.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -138,6 +138,10 @@ If you have created your own language pack for YITH WooCommerce Ajax Search, or
|
|
138 |
2. YITH WooCommerce Ajax Search in operation displaying WooCommerce search results
|
139 |
|
140 |
== Changelog ==
|
|
|
|
|
|
|
|
|
141 |
= 1.5.4 - Released: Nov 06, 2017 =
|
142 |
Update: Plugin Core
|
143 |
|
3 |
Contributors: yithemes
|
4 |
Tags: woocommerce search by sku, woocommerce search results, woocommerce search shortcode, woocommerce search page, woocommerce search form, woocommerce search filter, woocommerce search products, woocommerce search content, woocommerce search autocomplete, woocommerce advanced search, woocommerce search category, woocommerce search product attributes, woocommerce search by tag, woocommerce search by brand, woocommerce predictive, woocommerce live search, woocommerce single product search, woocommerce site search, woocommerce search tex, tajax, search, woocommerce, products, themes, yit, e-commerce, shop, yith, ajax search, instant search, premium, yithemes, autocomplete, autosuggest, better search, category search, custom search, highlight terms, Live Search, Predictive Search, product search, relevant search, search highlight, search product, suggest, typeahead, WooCommerce Plugin, woocommerce product search, woocommerce search, wordpress ecommerce
|
5 |
Requires at least: 4.0.0
|
6 |
+
Tested up to: 4.9.2
|
7 |
+
Stable tag: 1.5.5
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
138 |
2. YITH WooCommerce Ajax Search in operation displaying WooCommerce search results
|
139 |
|
140 |
== Changelog ==
|
141 |
+
= 1.5.5 - Released: Jan 31, 2018 =
|
142 |
+
New: Support to WooCommerce 3.3.x
|
143 |
+
Update: Plugin Core 3.0.11
|
144 |
+
|
145 |
= 1.5.4 - Released: Nov 06, 2017 =
|
146 |
Update: Plugin Core
|
147 |
|
init.php
CHANGED
@@ -3,11 +3,13 @@
|
|
3 |
* Plugin Name: YITH WooCommerce Ajax Search
|
4 |
* Plugin URI: http://yithemes.com/
|
5 |
* Description: YITH WooCommerce Ajax Search allows your users to search products in real time.
|
6 |
-
* Version: 1.5.
|
7 |
* Author: YITHEMES
|
8 |
* Author URI: http://yithemes.com/
|
9 |
* Text Domain: yith-woocommerce-ajax-search
|
10 |
* Domain Path: /languages/
|
|
|
|
|
11 |
*/
|
12 |
|
13 |
|
@@ -65,7 +67,7 @@ register_activation_hook( __FILE__, 'yith_plugin_registration_hook' );
|
|
65 |
if ( defined( 'YITH_WCAS_VERSION' ) ){
|
66 |
return;
|
67 |
}else{
|
68 |
-
define( 'YITH_WCAS_VERSION', '1.5.
|
69 |
}
|
70 |
|
71 |
if ( ! defined( 'YITH_WCAS_FREE_INIT' ) ) {
|
3 |
* Plugin Name: YITH WooCommerce Ajax Search
|
4 |
* Plugin URI: http://yithemes.com/
|
5 |
* Description: YITH WooCommerce Ajax Search allows your users to search products in real time.
|
6 |
+
* Version: 1.5.5
|
7 |
* Author: YITHEMES
|
8 |
* Author URI: http://yithemes.com/
|
9 |
* Text Domain: yith-woocommerce-ajax-search
|
10 |
* Domain Path: /languages/
|
11 |
+
* WC requires at least: 3.0.0
|
12 |
+
* WC tested up to: 3.3.0
|
13 |
*/
|
14 |
|
15 |
|
67 |
if ( defined( 'YITH_WCAS_VERSION' ) ){
|
68 |
return;
|
69 |
}else{
|
70 |
+
define( 'YITH_WCAS_VERSION', '1.5.5' );
|
71 |
}
|
72 |
|
73 |
if ( ! defined( 'YITH_WCAS_FREE_INIT' ) ) {
|
plugin-fw/assets/css/admin.css
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*-----------------------
|
2 |
+
YITH Debug
|
3 |
+
------------------------*/
|
4 |
+
#wpadminbar .yith-debug-admin-bar div,
|
5 |
+
#wpadminbar .yith-debug-admin-bar:hover div {
|
6 |
+
background : #05789c !important;
|
7 |
+
color : #fff !important;
|
8 |
+
}
|
9 |
+
|
10 |
+
#wpadminbar .yith-debug-admin-bar a,
|
11 |
+
#wpadminbar .yith-debug-admin-bar strong {
|
12 |
+
color : #fff !important;
|
13 |
+
}
|
14 |
+
|
15 |
+
#wpadminbar .yith-debug-admin-bar strong {
|
16 |
+
font-weight : 600;
|
17 |
+
}
|
18 |
+
|
19 |
+
#wpadminbar .yith-debug-admin-bar-post-meta .ab-empty-item,
|
20 |
+
#wpadminbar .yith-debug-admin-bar-option .ab-empty-item {
|
21 |
+
display : none;
|
22 |
+
}
|
23 |
+
|
24 |
+
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-post-meta-default,
|
25 |
+
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-option-default {
|
26 |
+
padding : 0;
|
27 |
+
max-height : 500px;
|
28 |
+
overflow-y : auto;
|
29 |
+
}
|
30 |
+
|
31 |
+
#wpadminbar .yith-debug-admin-bar pre {
|
32 |
+
padding : 10px;
|
33 |
+
line-height : 1.5em;
|
34 |
+
}
|
35 |
+
|
36 |
+
/*-----------------------
|
37 |
+
YITH Plugins Columns
|
38 |
+
------------------------*/
|
39 |
+
@media screen and (min-width : 783px) {
|
40 |
+
|
41 |
+
.auto-fold #adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu-head {
|
42 |
+
width : 100%;
|
43 |
+
}
|
44 |
+
|
45 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu {
|
46 |
+
min-width : 320px;
|
47 |
+
display : flex;
|
48 |
+
flex-flow : row wrap;
|
49 |
+
}
|
50 |
+
|
51 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
52 |
+
width : 50%;
|
53 |
+
border-left : 1px solid #555;
|
54 |
+
box-sizing : border-box;
|
55 |
+
}
|
56 |
+
|
57 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(2n) {
|
58 |
+
border-left : none;
|
59 |
+
}
|
60 |
+
|
61 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu {
|
62 |
+
min-width : 480px;
|
63 |
+
display : flex;
|
64 |
+
flex-flow : row wrap;
|
65 |
+
}
|
66 |
+
|
67 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
68 |
+
width : calc(100% / 3);
|
69 |
+
border-left : 1px solid #555;
|
70 |
+
box-sizing : border-box;
|
71 |
+
}
|
72 |
+
|
73 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(3n + 2) {
|
74 |
+
border-left : none;
|
75 |
+
}
|
76 |
+
}
|
plugin-fw/assets/css/chosen/chosen.css
DELETED
@@ -1,435 +0,0 @@
|
|
1 |
-
/*!
|
2 |
-
Chosen, a Select Box Enhancer for jQuery and Prototype
|
3 |
-
by Patrick Filler for Harvest, http://getharvest.com
|
4 |
-
|
5 |
-
Version 1.1.0
|
6 |
-
Full source at https://github.com/harvesthq/chosen
|
7 |
-
Copyright (c) 2011 Harvest http://getharvest.com
|
8 |
-
|
9 |
-
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
10 |
-
This file is generated by `grunt build`, do not edit it by hand.
|
11 |
-
*/
|
12 |
-
|
13 |
-
/* @group Base */
|
14 |
-
.chosen-container {
|
15 |
-
position: relative;
|
16 |
-
display: inline-block;
|
17 |
-
vertical-align: middle;
|
18 |
-
font-size: 13px;
|
19 |
-
zoom: 1;
|
20 |
-
*display: inline;
|
21 |
-
-webkit-user-select: none;
|
22 |
-
-moz-user-select: none;
|
23 |
-
user-select: none;
|
24 |
-
}
|
25 |
-
.chosen-container .chosen-drop {
|
26 |
-
position: absolute;
|
27 |
-
top: 100%;
|
28 |
-
left: -9999px;
|
29 |
-
z-index: 1010;
|
30 |
-
-webkit-box-sizing: border-box;
|
31 |
-
-moz-box-sizing: border-box;
|
32 |
-
box-sizing: border-box;
|
33 |
-
width: 100%;
|
34 |
-
border: 1px solid #aaa;
|
35 |
-
border-top: 0;
|
36 |
-
background: #fff;
|
37 |
-
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
38 |
-
}
|
39 |
-
.chosen-container.chosen-with-drop .chosen-drop {
|
40 |
-
left: 0;
|
41 |
-
}
|
42 |
-
.chosen-container a {
|
43 |
-
cursor: pointer;
|
44 |
-
}
|
45 |
-
|
46 |
-
/* @end */
|
47 |
-
/* @group Single Chosen */
|
48 |
-
.chosen-container-single .chosen-single {
|
49 |
-
position: relative;
|
50 |
-
display: block;
|
51 |
-
overflow: hidden;
|
52 |
-
padding: 0 0 0 8px;
|
53 |
-
height: 23px;
|
54 |
-
border: 1px solid #aaa;
|
55 |
-
border-radius: 5px;
|
56 |
-
background-color: #fff;
|
57 |
-
background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
|
58 |
-
background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
59 |
-
background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
60 |
-
background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
61 |
-
background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
62 |
-
background-clip: padding-box;
|
63 |
-
box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
64 |
-
color: #444;
|
65 |
-
text-decoration: none;
|
66 |
-
white-space: nowrap;
|
67 |
-
line-height: 24px;
|
68 |
-
}
|
69 |
-
.chosen-container-single .chosen-default {
|
70 |
-
color: #999;
|
71 |
-
}
|
72 |
-
.chosen-container-single .chosen-single span {
|
73 |
-
display: block;
|
74 |
-
overflow: hidden;
|
75 |
-
margin-right: 26px;
|
76 |
-
text-overflow: ellipsis;
|
77 |
-
white-space: nowrap;
|
78 |
-
}
|
79 |
-
.chosen-container-single .chosen-single-with-deselect span {
|
80 |
-
margin-right: 38px;
|
81 |
-
}
|
82 |
-
.chosen-container-single .chosen-single abbr {
|
83 |
-
position: absolute;
|
84 |
-
top: 6px;
|
85 |
-
right: 26px;
|
86 |
-
display: block;
|
87 |
-
width: 12px;
|
88 |
-
height: 12px;
|
89 |
-
background: url('../../images/chosen/chosen-sprite.png') -42px 1px no-repeat;
|
90 |
-
font-size: 1px;
|
91 |
-
}
|
92 |
-
.chosen-container-single .chosen-single abbr:hover {
|
93 |
-
background-position: -42px -10px;
|
94 |
-
}
|
95 |
-
.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
|
96 |
-
background-position: -42px -10px;
|
97 |
-
}
|
98 |
-
.chosen-container-single .chosen-single div {
|
99 |
-
position: absolute;
|
100 |
-
top: 0;
|
101 |
-
right: 0;
|
102 |
-
display: block;
|
103 |
-
width: 18px;
|
104 |
-
height: 100%;
|
105 |
-
}
|
106 |
-
.chosen-container-single .chosen-single div b {
|
107 |
-
display: block;
|
108 |
-
width: 100%;
|
109 |
-
height: 100%;
|
110 |
-
background: url('../../images/chosen/chosen-sprite.png') no-repeat 0px 2px;
|
111 |
-
}
|
112 |
-
.chosen-container-single .chosen-search {
|
113 |
-
position: relative;
|
114 |
-
z-index: 1010;
|
115 |
-
margin: 0;
|
116 |
-
padding: 3px 4px;
|
117 |
-
white-space: nowrap;
|
118 |
-
}
|
119 |
-
.chosen-container-single .chosen-search input[type="text"] {
|
120 |
-
-webkit-box-sizing: border-box;
|
121 |
-
-moz-box-sizing: border-box;
|
122 |
-
box-sizing: border-box;
|
123 |
-
margin: 1px 0;
|
124 |
-
padding: 4px 20px 4px 5px;
|
125 |
-
width: 100%;
|
126 |
-
height: auto;
|
127 |
-
outline: 0;
|
128 |
-
border: 1px solid #aaa;
|
129 |
-
background: white url('../../images/chosen/chosen-sprite.png') no-repeat 100% -20px;
|
130 |
-
background: url('../../images/chosen/chosen-sprite.png') no-repeat 100% -20px;
|
131 |
-
font-size: 1em;
|
132 |
-
font-family: sans-serif;
|
133 |
-
line-height: normal;
|
134 |
-
border-radius: 0;
|
135 |
-
}
|
136 |
-
.chosen-container-single .chosen-drop {
|
137 |
-
margin-top: -1px;
|
138 |
-
border-radius: 0 0 4px 4px;
|
139 |
-
background-clip: padding-box;
|
140 |
-
}
|
141 |
-
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
142 |
-
position: absolute;
|
143 |
-
left: -9999px;
|
144 |
-
}
|
145 |
-
|
146 |
-
/* @end */
|
147 |
-
/* @group Results */
|
148 |
-
.chosen-container .chosen-results {
|
149 |
-
position: relative;
|
150 |
-
overflow-x: hidden;
|
151 |
-
overflow-y: auto;
|
152 |
-
margin: 0 4px 4px 0;
|
153 |
-
padding: 0 0 0 4px;
|
154 |
-
max-height: 240px;
|
155 |
-
-webkit-overflow-scrolling: touch;
|
156 |
-
}
|
157 |
-
.chosen-container .chosen-results li {
|
158 |
-
display: none;
|
159 |
-
margin: 0;
|
160 |
-
padding: 5px 6px;
|
161 |
-
list-style: none;
|
162 |
-
line-height: 15px;
|
163 |
-
-webkit-touch-callout: none;
|
164 |
-
}
|
165 |
-
.chosen-container .chosen-results li.active-result {
|
166 |
-
display: list-item;
|
167 |
-
cursor: pointer;
|
168 |
-
}
|
169 |
-
.chosen-container .chosen-results li.disabled-result {
|
170 |
-
display: list-item;
|
171 |
-
color: #ccc;
|
172 |
-
cursor: default;
|
173 |
-
}
|
174 |
-
.chosen-container .chosen-results li.highlighted {
|
175 |
-
background-color: #3875d7;
|
176 |
-
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
|
177 |
-
background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
178 |
-
background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
179 |
-
background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
180 |
-
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
181 |
-
color: #fff;
|
182 |
-
}
|
183 |
-
.chosen-container .chosen-results li.no-results {
|
184 |
-
display: list-item;
|
185 |
-
background: #f4f4f4;
|
186 |
-
}
|
187 |
-
.chosen-container .chosen-results li.group-result {
|
188 |
-
display: list-item;
|
189 |
-
font-weight: bold;
|
190 |
-
cursor: default;
|
191 |
-
}
|
192 |
-
.chosen-container .chosen-results li.group-option {
|
193 |
-
padding-left: 15px;
|
194 |
-
}
|
195 |
-
.chosen-container .chosen-results li em {
|
196 |
-
font-style: normal;
|
197 |
-
text-decoration: underline;
|
198 |
-
}
|
199 |
-
|
200 |
-
/* @end */
|
201 |
-
/* @group Multi Chosen */
|
202 |
-
.chosen-container-multi .chosen-choices {
|
203 |
-
position: relative;
|
204 |
-
overflow: hidden;
|
205 |
-
-webkit-box-sizing: border-box;
|
206 |
-
-moz-box-sizing: border-box;
|
207 |
-
box-sizing: border-box;
|
208 |
-
margin: 0;
|
209 |
-
padding: 0;
|
210 |
-
width: 100%;
|
211 |
-
height: auto !important;
|
212 |
-
height: 1%;
|
213 |
-
border: 1px solid #aaa;
|
214 |
-
background-color: #fff;
|
215 |
-
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
|
216 |
-
background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
217 |
-
background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
218 |
-
background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
219 |
-
background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
|
220 |
-
cursor: text;
|
221 |
-
}
|
222 |
-
.chosen-container-multi .chosen-choices li {
|
223 |
-
float: left;
|
224 |
-
list-style: none;
|
225 |
-
}
|
226 |
-
.chosen-container-multi .chosen-choices li.search-field {
|
227 |
-
margin: 0;
|
228 |
-
padding: 0;
|
229 |
-
white-space: nowrap;
|
230 |
-
}
|
231 |
-
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
232 |
-
margin: 1px 0;
|
233 |
-
padding: 5px;
|
234 |
-
height: 15px;
|
235 |
-
outline: 0;
|
236 |
-
border: 0 !important;
|
237 |
-
background: transparent !important;
|
238 |
-
box-shadow: none;
|
239 |
-
color: #666;
|
240 |
-
font-size: 100%;
|
241 |
-
font-family: sans-serif;
|
242 |
-
line-height: normal;
|
243 |
-
border-radius: 0;
|
244 |
-
}
|
245 |
-
.chosen-container-multi .chosen-choices li.search-field .default {
|
246 |
-
color: #999;
|
247 |
-
}
|
248 |
-
.chosen-container-multi .chosen-choices li.search-choice {
|
249 |
-
position: relative;
|
250 |
-
margin: 3px 0 3px 5px;
|
251 |
-
padding: 3px 20px 3px 5px;
|
252 |
-
border: 1px solid #aaa;
|
253 |
-
border-radius: 3px;
|
254 |
-
background-color: #e4e4e4;
|
255 |
-
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
256 |
-
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
257 |
-
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
258 |
-
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
259 |
-
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
260 |
-
background-clip: padding-box;
|
261 |
-
box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
262 |
-
color: #333;
|
263 |
-
line-height: 13px;
|
264 |
-
cursor: default;
|
265 |
-
}
|
266 |
-
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
267 |
-
position: absolute;
|
268 |
-
top: 4px;
|
269 |
-
right: 3px;
|
270 |
-
display: block;
|
271 |
-
width: 12px;
|
272 |
-
height: 12px;
|
273 |
-
background: url('../../images/chosen/chosen-sprite.png') -42px 1px no-repeat;
|
274 |
-
font-size: 1px;
|
275 |
-
}
|
276 |
-
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
|
277 |
-
background-position: -42px -10px;
|
278 |
-
}
|
279 |
-
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
280 |
-
padding-right: 5px;
|
281 |
-
border: 1px solid #ccc;
|
282 |
-
background-color: #e4e4e4;
|
283 |
-
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
284 |
-
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
285 |
-
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
286 |
-
background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
287 |
-
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
288 |
-
color: #666;
|
289 |
-
}
|
290 |
-
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
291 |
-
background: #d4d4d4;
|
292 |
-
}
|
293 |
-
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
|
294 |
-
background-position: -42px -10px;
|
295 |
-
}
|
296 |
-
.chosen-container-multi .chosen-results {
|
297 |
-
margin: 0;
|
298 |
-
padding: 0;
|
299 |
-
}
|
300 |
-
.chosen-container-multi .chosen-drop .result-selected {
|
301 |
-
display: list-item;
|
302 |
-
color: #ccc;
|
303 |
-
cursor: default;
|
304 |
-
}
|
305 |
-
|
306 |
-
/* @end */
|
307 |
-
/* @group Active */
|
308 |
-
.chosen-container-active .chosen-single {
|
309 |
-
border: 1px solid #5897fb;
|
310 |
-
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
311 |
-
}
|
312 |
-
.chosen-container-active.chosen-with-drop .chosen-single {
|
313 |
-
border: 1px solid #aaa;
|
314 |
-
-moz-border-radius-bottomright: 0;
|
315 |
-
border-bottom-right-radius: 0;
|
316 |
-
-moz-border-radius-bottomleft: 0;
|
317 |
-
border-bottom-left-radius: 0;
|
318 |
-
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
|
319 |
-
background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
320 |
-
background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
321 |
-
background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
322 |
-
background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
|
323 |
-
box-shadow: 0 1px 0 #fff inset;
|
324 |
-
}
|
325 |
-
.chosen-container-active.chosen-with-drop .chosen-single div {
|
326 |
-
border-left: none;
|
327 |
-
background: transparent;
|
328 |
-
}
|
329 |
-
.chosen-container-active.chosen-with-drop .chosen-single div b {
|
330 |
-
background-position: -18px 2px;
|
331 |
-
}
|
332 |
-
.chosen-container-active .chosen-choices {
|
333 |
-
border: 1px solid #5897fb;
|
334 |
-
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
335 |
-
}
|
336 |
-
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
337 |
-
color: #111 !important;
|
338 |
-
}
|
339 |
-
|
340 |
-
/* @end */
|
341 |
-
/* @group Disabled Support */
|
342 |
-
.chosen-disabled {
|
343 |
-
opacity: 0.5 !important;
|
344 |
-
cursor: default;
|
345 |
-
}
|
346 |
-
.chosen-disabled .chosen-single {
|
347 |
-
cursor: default;
|
348 |
-
}
|
349 |
-
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
350 |
-
cursor: default;
|
351 |
-
}
|
352 |
-
|
353 |
-
/* @end */
|
354 |
-
/* @group Right to Left */
|
355 |
-
.chosen-rtl {
|
356 |
-
text-align: right;
|
357 |
-
}
|
358 |
-
.chosen-rtl .chosen-single {
|
359 |
-
overflow: visible;
|
360 |
-
padding: 0 8px 0 0;
|
361 |
-
}
|
362 |
-
.chosen-rtl .chosen-single span {
|
363 |
-
margin-right: 0;
|
364 |
-
margin-left: 26px;
|
365 |
-
direction: rtl;
|
366 |
-
}
|
367 |
-
.chosen-rtl .chosen-single-with-deselect span {
|
368 |
-
margin-left: 38px;
|
369 |
-
}
|
370 |
-
.chosen-rtl .chosen-single div {
|
371 |
-
right: auto;
|
372 |
-
left: 3px;
|
373 |
-
}
|
374 |
-
.chosen-rtl .chosen-single abbr {
|
375 |
-
right: auto;
|
376 |
-
left: 26px;
|
377 |
-
}
|
378 |
-
.chosen-rtl .chosen-choices li {
|
379 |
-
float: right;
|
380 |
-
}
|
381 |
-
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
382 |
-
direction: rtl;
|
383 |
-
}
|
384 |
-
.chosen-rtl .chosen-choices li.search-choice {
|
385 |
-
margin: 3px 5px 3px 0;
|
386 |
-
padding: 3px 5px 3px 19px;
|
387 |
-
}
|
388 |
-
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
389 |
-
right: auto;
|
390 |
-
left: 4px;
|
391 |
-
}
|
392 |
-
.chosen-rtl.chosen-container-single-nosearch .chosen-search,
|
393 |
-
.chosen-rtl .chosen-drop {
|
394 |
-
left: 9999px;
|
395 |
-
}
|
396 |
-
.chosen-rtl.chosen-container-single .chosen-results {
|
397 |
-
margin: 0 0 4px 4px;
|
398 |
-
padding: 0 4px 0 0;
|
399 |
-
}
|
400 |
-
.chosen-rtl .chosen-results li.group-option {
|
401 |
-
padding-right: 15px;
|
402 |
-
padding-left: 0;
|
403 |
-
}
|
404 |
-
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
405 |
-
border-right: none;
|
406 |
-
}
|
407 |
-
.chosen-rtl .chosen-search input[type="text"] {
|
408 |
-
padding: 4px 5px 4px 20px;
|
409 |
-
background: white url('../../images/chosen/chosen-sprite.png') no-repeat -30px -20px;
|
410 |
-
background: url('../../images/chosen/chosen-sprite.png') no-repeat -30px -20px;
|
411 |
-
direction: rtl;
|
412 |
-
}
|
413 |
-
.chosen-rtl.chosen-container-single .chosen-single div b {
|
414 |
-
background-position: 6px 2px;
|
415 |
-
}
|
416 |
-
.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
|
417 |
-
background-position: -12px 2px;
|
418 |
-
}
|
419 |
-
|
420 |
-
/* @end */
|
421 |
-
/* @group Retina compatibility */
|
422 |
-
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
|
423 |
-
.chosen-rtl .chosen-search input[type="text"],
|
424 |
-
.chosen-container-single .chosen-single abbr,
|
425 |
-
.chosen-container-single .chosen-single div b,
|
426 |
-
.chosen-container-single .chosen-search input[type="text"],
|
427 |
-
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
|
428 |
-
.chosen-container .chosen-results-scroll-down span,
|
429 |
-
.chosen-container .chosen-results-scroll-up span {
|
430 |
-
background-image: url('../../images/chosen/chosen-sprite@2x.png') !important;
|
431 |
-
background-size: 52px 37px !important;
|
432 |
-
background-repeat: no-repeat !important;
|
433 |
-
}
|
434 |
-
}
|
435 |
-
/* @end */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/metaboxes.css
CHANGED
@@ -1,664 +1,634 @@
|
|
1 |
/* self-clear floats */
|
2 |
-
.clearfix:after {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
/* ie.css */
|
4 |
* html .clearfix { /* IE6 */
|
5 |
-
height:1%;
|
6 |
}
|
7 |
-
|
8 |
-
|
|
|
9 |
}
|
10 |
|
11 |
-
.clearboth {
|
|
|
|
|
12 |
|
13 |
/* === TAB STYLE */
|
14 |
-
.metaboxes-tab {
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
.metaboxes-tab
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
.metaboxes-tab
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
.metaboxes-tab .the-metabox { margin:20px 0; margin-left:184px;}
|
33 |
-
.metaboxes-tab .the-metabox.no-label { margin:20px 0; margin-left:0;}
|
34 |
-
.metaboxes-tab hr { height: 0px; border-top: 1px solid #dadada; width: auto; margin-left: -10px; margin-right: -10px; }
|
35 |
-
.metaboxes-tab .the-metabox p { margin:0;}
|
36 |
-
.metaboxes-tab .the-metabox:last-child { border-bottom: 0px; }
|
37 |
-
.metaboxes-tab .the-metabox.checkbox { background:none; }
|
38 |
-
.metaboxes-tab .the-metabox.slider .ui-slider { margin-right:15px; }
|
39 |
-
|
40 |
-
.metaboxes-tab span.desc { font-size: 11px; color: #AFAFAF; }
|
41 |
-
.metaboxes-tab span.desc.inline { display: inline-block; vertical-align: top; line-height: 23px; }
|
42 |
-
.metaboxes-tab .onoff span.desc, .metaboxes-tab .onoff label { padding:6px 0; }
|
43 |
-
.metaboxes-tab .select span.desc, .metaboxes-tab .select label { padding:2px 0; }
|
44 |
-
.metaboxes-tab .slider span.desc, .metaboxes-tab .slider label { padding:15px 0; }
|
45 |
-
.metaboxes-tab .slider span.desc { display:block; padding:20px 0; }
|
46 |
|
47 |
.metaboxes-tab ul.metaboxes-tabs li {
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
}
|
55 |
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
width:
|
60 |
-
margin-left: 10px;
|
61 |
-
|
62 |
}
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
}
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
right: -1px;
|
71 |
-
width: 20px;
|
72 |
-
height: 20px;
|
73 |
}
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
|
|
|
|
|
|
|
|
|
|
80 |
}
|
81 |
-
|
82 |
-
.
|
83 |
-
|
84 |
-
|
|
|
|
|
|
|
|
|
|
|
85 |
}
|
86 |
-
|
87 |
-
|
|
|
88 |
}
|
89 |
|
90 |
-
.
|
91 |
-
|
92 |
-
padding: 1px;
|
93 |
}
|
94 |
|
95 |
-
.
|
96 |
-
|
97 |
}
|
98 |
|
99 |
-
|
100 |
-
|
101 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
}
|
103 |
|
104 |
-
.
|
105 |
-
|
106 |
-
width: inherit !important;
|
107 |
}
|
108 |
|
109 |
/* wp editor */
|
110 |
.the-metabox.textarea-editor .mceIframeContainer {
|
111 |
-
background
|
112 |
}
|
|
|
113 |
.the-metabox.textarea-editor label {
|
114 |
-
margin-top:24px;
|
115 |
}
|
116 |
|
117 |
/* categories */
|
118 |
-
.categories-panel {
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
.categories-panel input.newcategory { width:100%; margin-bottom:3px; }
|
124 |
|
125 |
-
|
126 |
-
|
127 |
-
border
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
background-color: #F5F5F5;
|
133 |
-
background-image: -moz-linear-gradient(center top , #F9F9F9, #F5F5F5);
|
134 |
-
border-color: #DFDFDF;
|
135 |
-
border-radius: 3px 3px 3px 3px;
|
136 |
-
box-shadow: 0 1px 0 #FFFFFF inset;
|
137 |
-
min-width: 255px;
|
138 |
-
position: relative;
|
139 |
-
}
|
140 |
-
.contactform_item .handlediv { position:relative; top: -4px; }
|
141 |
-
.contactform_item h3 { min-height: 21px }
|
142 |
-
.contactform_item .inside { padding: 10px !important; }
|
143 |
-
.contactform_item .deps { display: none; }
|
144 |
-
.contactform_item .addoptions p.option { margin: 5px 0 5px 200px }
|
145 |
-
.contactform_item .addoptions p label { width: 80px !important; }
|
146 |
-
.contactform_item .add-field-option { margin-bottom: 10px !important; }
|
147 |
-
.remove_item { float: right; }
|
148 |
-
.metabox-sortable-placeholder { border: 1px dotted #dedede; margin: 10px 0 }
|
149 |
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
border-width: 1px;
|
154 |
-
line-height: 1;
|
155 |
-
margin-bottom: 20px;
|
156 |
-
padding: 0;
|
157 |
-
background-color: #F5F5F5;
|
158 |
-
background-image: -moz-linear-gradient(center top , #F9F9F9, #F5F5F5);
|
159 |
-
border-color: #DFDFDF;
|
160 |
-
border-radius: 3px 3px 3px 3px;
|
161 |
-
box-shadow: 0 1px 0 #FFFFFF inset;
|
162 |
-
min-width: 255px;
|
163 |
-
position: relative;
|
164 |
}
|
165 |
-
.featurestab_item .handlediv { position:relative; top: -4px; }
|
166 |
-
.featurestab_item h3 { min-height: 21px }
|
167 |
-
.featurestab_item .inside { padding: 10px !important; }
|
168 |
-
.featurestab_item .deps { display: none; }
|
169 |
-
.featurestab_item .addoptions p.option { margin: 5px 0 5px 200px }
|
170 |
-
.featurestab_item .addoptions p label { width: 80px !important; }
|
171 |
-
.featurestab_item .add-field-option { margin-bottom: 10px !important; }
|
172 |
|
173 |
-
|
174 |
-
|
|
|
|
|
|
|
|
|
175 |
|
176 |
-
|
177 |
-
|
|
|
|
|
178 |
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
}
|
183 |
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
}
|
192 |
|
193 |
-
.
|
194 |
-
|
|
|
195 |
}
|
196 |
|
197 |
-
.
|
198 |
-
|
|
|
199 |
}
|
200 |
|
201 |
-
.
|
202 |
-
|
203 |
-
max-width: 1200px;
|
204 |
-
border-radius: 5px;
|
205 |
-
-webkit-box-sizing: border-box;
|
206 |
-
box-sizing: border-box;
|
207 |
}
|
208 |
|
209 |
-
.
|
|
|
|
|
210 |
|
|
|
|
|
|
|
211 |
|
|
|
|
|
|
|
212 |
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
.the-metabox .icon_type{ width:30%; float: left; margin-right: 40px }
|
217 |
-
.the-metabox .icon_type select, .the-metabox div.option .select_wrapper select{ width: 100% }
|
218 |
|
219 |
-
|
220 |
-
|
|
|
221 |
|
222 |
-
.
|
223 |
-
|
224 |
-
|
225 |
-
border-radius: 4px 4px 4px 4px;
|
226 |
-
border-style: solid;
|
227 |
-
border-width: 1px;
|
228 |
-
color: #555555;
|
229 |
-
display: block;
|
230 |
-
float: left;
|
231 |
-
font-family: sans-serif;
|
232 |
-
font-size: 12px;
|
233 |
-
min-height: 26px;
|
234 |
-
margin-bottom: 9px !important;
|
235 |
-
margin-left: 0;
|
236 |
-
margin-right: 5px;
|
237 |
-
margin-top: 0;
|
238 |
-
width: 400px;
|
239 |
-
position: relative;
|
240 |
}
|
241 |
|
242 |
-
/*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
|
244 |
-
.
|
245 |
-
|
246 |
-
|
247 |
}
|
248 |
-
|
249 |
-
|
|
|
250 |
}
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
}
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
}
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
}
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
padding-top: 2px;
|
267 |
}
|
268 |
-
|
269 |
-
|
|
|
270 |
}
|
271 |
-
|
272 |
-
|
|
|
|
|
|
|
|
|
|
|
273 |
}
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
padding-left: 6px;
|
278 |
-
position: absolute;
|
279 |
-
z-index: 2;
|
280 |
-
overflow: hidden;
|
281 |
}
|
282 |
|
283 |
-
.the-metabox .
|
284 |
-
|
285 |
-
|
286 |
-
margin:
|
287 |
-
opacity: 0;
|
288 |
-
padding: 0;
|
289 |
-
position: relative;
|
290 |
-
width: inherit;
|
291 |
-
z-index: 4;
|
292 |
-
background-color: #FAFAFA;
|
293 |
}
|
294 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
295 |
|
296 |
/* typography */
|
297 |
-
.the-metabox.typography .select_wrapper.font-family {
|
298 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
299 |
.the-metabox.typography .spinner_container input.number {
|
300 |
-
width:50px !important;
|
301 |
-
-webkit-border-top-right-radius: 0px;
|
302 |
-
-webkit-border-bottom-right-radius: 0px;
|
303 |
-
-moz-border-radius-topright: 0px;
|
304 |
-
-moz-border-radius-bottomright: 0px;
|
305 |
-
border-top-right-radius: 0px;
|
306 |
-
border-bottom-right-radius: 0px;
|
307 |
}
|
308 |
|
309 |
/* number */
|
310 |
-
.the-metabox.number input.number {
|
|
|
|
|
|
|
311 |
/* number */
|
312 |
.rm_number .number {
|
313 |
-
width: 70px;
|
314 |
-
text-align: right;
|
315 |
-
-webkit-border-top-right-radius: 0px;
|
316 |
-
-webkit-border-bottom-right-radius: 0px;
|
317 |
-
-moz-border-radius-topright: 0px;
|
318 |
-
-moz-border-radius-bottomright: 0px;
|
319 |
-
border-top-right-radius: 0px;
|
320 |
-
border-bottom-right-radius: 0px;
|
321 |
}
|
322 |
|
323 |
-
.spinner-wrapper {
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
|
|
|
|
|
|
|
329 |
|
330 |
-
.spinner-wrapper .spinner-button
|
331 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
332 |
|
|
|
|
|
|
|
|
|
|
|
|
|
333 |
|
334 |
-
.
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
|
|
|
|
339 |
|
340 |
-
.
|
341 |
-
|
|
|
342 |
|
343 |
-
|
344 |
-
|
345 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
346 |
|
347 |
/* images */
|
348 |
-
.the-metabox.images, .the-metabox.images label {
|
349 |
-
|
350 |
-
|
351 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
352 |
|
353 |
/* wp editor */
|
354 |
-
.wp_themeSkin iframe {
|
|
|
|
|
355 |
|
356 |
/* custom tabs */
|
357 |
.customtab_item {
|
358 |
-
border-style: solid;
|
359 |
-
border-width: 1px;
|
360 |
-
line-height: 1;
|
361 |
-
margin-bottom: 20px;
|
362 |
-
padding: 0;
|
363 |
-
background-color: #
|
364 |
-
background-image: -moz-linear-gradient(center top
|
365 |
-
border-color: #
|
366 |
-
border-radius: 3px 3px 3px 3px;
|
367 |
-
box-shadow: 0 1px 0 #
|
368 |
-
min-width: 255px;
|
369 |
-
position: relative;
|
370 |
-
}
|
371 |
-
.customtab_item .handlediv { position:relative; top: -4px; }
|
372 |
-
.customtab_item h3 { min-height: 21px }
|
373 |
-
.customtab_item .inside { padding: 10px !important; }
|
374 |
-
.customtab_item .deps { display: none; }
|
375 |
-
.customtab_item .addoptions p.option { margin: 5px 0 5px 200px }
|
376 |
-
.customtab_item .addoptions p label { width: 80px !important; }
|
377 |
-
.customtab_item .add-field-option { margin-bottom: 10px !important; }
|
378 |
-
.customtab_item .remove_item { float: right; }
|
379 |
-
.metabox-sortable-placeholder { border: 1px dotted #dedede; margin: 10px 0 }
|
380 |
|
381 |
-
.
|
382 |
-
|
|
|
383 |
}
|
384 |
|
385 |
-
|
386 |
-
|
387 |
}
|
388 |
|
389 |
-
.
|
390 |
-
|
391 |
}
|
392 |
|
393 |
-
|
394 |
-
|
395 |
-
width: auto;
|
396 |
-
float: none;
|
397 |
-
line-height: auto;
|
398 |
-
margin-left: 0;
|
399 |
}
|
400 |
|
|
|
|
|
|
|
401 |
|
402 |
-
.
|
403 |
-
width:
|
404 |
-
margin-right: 10px;
|
405 |
-
margin-top: 3px;
|
406 |
}
|
407 |
-
|
408 |
-
|
|
|
409 |
}
|
410 |
|
411 |
-
.
|
412 |
-
|
413 |
-
float: none;
|
414 |
}
|
415 |
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
margin-bottom: 5px;
|
420 |
}
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
top: -25px;
|
425 |
-
width: 35px;
|
426 |
-
height: 43px;
|
427 |
-
text-align: center;
|
428 |
-
width: 100%;
|
429 |
-
display: block;
|
430 |
}
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
top: -30px;
|
435 |
}
|
436 |
-
|
437 |
-
.
|
438 |
-
|
439 |
-
border: 0px !important;
|
440 |
-
top: -.35em !important;
|
441 |
-
width: 18px !important;
|
442 |
-
height: 19px !important;
|
443 |
}
|
444 |
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
height:
|
|
|
450 |
}
|
451 |
|
452 |
-
.
|
453 |
-
|
454 |
-
|
|
|
455 |
}
|
456 |
|
457 |
-
|
458 |
-
|
459 |
-
background: url(../images/slider/orange.gif) repeat-x left center !important;
|
460 |
-
left: 2px !important;
|
461 |
-
-webkit-border-radius: 15px;
|
462 |
-
-moz-border-radius: 15px;
|
463 |
-
-khtml-border-radius: 15px;
|
464 |
-
border-radius: 15px;
|
465 |
}
|
466 |
|
|
|
|
|
|
|
|
|
467 |
|
468 |
/*sidebars*/
|
469 |
-
|
470 |
-
|
471 |
-
margin-left: 0px;
|
472 |
}
|
473 |
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
margin: 0px;
|
478 |
-
}
|
479 |
-
#_active_page_options-container label{
|
480 |
-
margin-right: 10px;
|
481 |
-
margin-top: 3px;
|
482 |
-
}
|
483 |
-
#_active_page_options-container {
|
484 |
-
float: right;
|
485 |
-
margin-right: 20px;
|
486 |
-
margin-top: 5px;
|
487 |
}
|
488 |
|
489 |
-
|
|
|
|
|
|
|
490 |
|
491 |
-
#
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
/*datepicker*/
|
497 |
-
/*! jQuery UI - v1.11.2 - 2015-01-21
|
498 |
-
* http://jqueryui.com
|
499 |
-
* Includes: core.css, datepicker.css, theme.css
|
500 |
-
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=0px&bgColorHeader=%23dddddd&bgTextureHeader=flat&bgImgOpacityHeader=60&borderColorHeader=%23aaaaaa&fcHeader=%23222222&iconColorHeader=%23222222&bgColorContent=%23ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=%23aaaaaa&fcContent=%23222222&iconColorContent=%23222222&bgColorDefault=%23e9e9e9&bgTextureDefault=flat&bgImgOpacityDefault=75&borderColorDefault=%23d3d3d3&fcDefault=%23555555&iconColorDefault=%23888888&bgColorHover=%23dadada&bgTextureHover=flat&bgImgOpacityHover=75&borderColorHover=%23999999&fcHover=%23212121&iconColorHover=%23454545&bgColorActive=%23ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=%23aaaaaa&fcActive=%23212121&iconColorActive=%23454545&bgColorHighlight=%23fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=%2389b17e&fcHighlight=%23363636&iconColorHighlight=%232e83ff&bgColorError=%23fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=%23cd0a0a&fcError=%23cd0a0a&iconColorError=%23cd0a0a&bgColorOverlay=%23aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
501 |
-
* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
|
502 |
-
|
503 |
-
/* Layout helpers
|
504 |
-
----------------------------------*/
|
505 |
-
.ui-helper-hidden {
|
506 |
-
display: none;
|
507 |
-
}
|
508 |
-
.ui-helper-hidden-accessible {
|
509 |
-
border: 0;
|
510 |
-
clip: rect(0 0 0 0);
|
511 |
-
height: 1px;
|
512 |
-
margin: -1px;
|
513 |
-
overflow: hidden;
|
514 |
-
padding: 0;
|
515 |
-
position: absolute;
|
516 |
-
width: 1px;
|
517 |
-
}
|
518 |
-
.ui-helper-reset {
|
519 |
-
margin: 0;
|
520 |
-
padding: 0;
|
521 |
-
border: 0;
|
522 |
-
outline: 0;
|
523 |
-
line-height: 1.3;
|
524 |
-
text-decoration: none;
|
525 |
-
font-size: 100%;
|
526 |
-
list-style: none;
|
527 |
-
}
|
528 |
-
.ui-helper-clearfix:before,
|
529 |
-
.ui-helper-clearfix:after {
|
530 |
-
content: "";
|
531 |
-
display: table;
|
532 |
-
border-collapse: collapse;
|
533 |
-
}
|
534 |
-
.ui-helper-clearfix:after {
|
535 |
-
clear: both;
|
536 |
-
}
|
537 |
-
.ui-helper-clearfix {
|
538 |
-
min-height: 0; /* support: IE7 */
|
539 |
-
}
|
540 |
-
.ui-helper-zfix {
|
541 |
-
width: 100%;
|
542 |
-
height: 100%;
|
543 |
-
top: 0;
|
544 |
-
left: 0;
|
545 |
-
position: absolute;
|
546 |
-
opacity: 0;
|
547 |
-
filter:Alpha(Opacity=0); /* support: IE8 */
|
548 |
-
}
|
549 |
-
|
550 |
-
.ui-front {
|
551 |
-
z-index: 100;
|
552 |
-
}
|
553 |
-
|
554 |
-
|
555 |
-
/* Interaction Cues
|
556 |
-
----------------------------------*/
|
557 |
-
.ui-state-disabled {
|
558 |
-
cursor: default !important;
|
559 |
-
}
|
560 |
-
|
561 |
-
|
562 |
-
/* Icons
|
563 |
-
----------------------------------*/
|
564 |
-
|
565 |
-
/* states and images */
|
566 |
-
.ui-icon {
|
567 |
-
display: block;
|
568 |
-
text-indent: -99999px;
|
569 |
-
overflow: hidden;
|
570 |
-
background-repeat: no-repeat;
|
571 |
-
}
|
572 |
-
|
573 |
-
|
574 |
-
/* DATE PICKER
|
575 |
-
----------------------------------*/
|
576 |
-
|
577 |
-
.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}
|
578 |
-
.ui-datepicker{width:17em;padding:.2em .2em 0;display:none;z-index:100!important;}
|
579 |
-
.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}
|
580 |
-
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}
|
581 |
-
.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}
|
582 |
-
.ui-datepicker .ui-datepicker-prev{left:2px}
|
583 |
-
.ui-datepicker .ui-datepicker-next{right:2px}
|
584 |
-
.ui-datepicker .ui-datepicker-prev-hover{left:1px}
|
585 |
-
.ui-datepicker .ui-datepicker-next-hover{right:1px}
|
586 |
-
.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}
|
587 |
-
.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}
|
588 |
-
.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}
|
589 |
-
.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}
|
590 |
-
.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}
|
591 |
-
.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:700;border:0}
|
592 |
-
.ui-datepicker td{border:0;padding:1px}
|
593 |
-
.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}
|
594 |
-
.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}
|
595 |
-
.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em;width:auto;overflow:visible}
|
596 |
-
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}
|
597 |
-
.ui-datepicker.ui-datepicker-multi{width:auto}
|
598 |
-
.ui-datepicker-multi .ui-datepicker-group{float:left}
|
599 |
-
.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}
|
600 |
-
.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}
|
601 |
-
.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}
|
602 |
-
.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}
|
603 |
-
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}
|
604 |
-
.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}
|
605 |
-
.ui-datepicker-row-break{clear:both;width:100%;font-size:0}
|
606 |
-
.ui-datepicker-rtl{direction:rtl}
|
607 |
-
.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}
|
608 |
-
.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}
|
609 |
-
.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}
|
610 |
-
.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}
|
611 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}
|
612 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}
|
613 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}
|
614 |
-
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}
|
615 |
-
.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}
|
616 |
-
.ui-widget .ui-widget{font-size:1em}
|
617 |
-
.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}
|
618 |
-
.ui-widget-content{border:1px solid #aaa;background:#fff 50% 50% repeat-x;color:#222}
|
619 |
-
.ui-widget-content a{color:#222}
|
620 |
-
.ui-widget-header{border:1px solid #aaa;background:#ddd 50% 50% repeat-x;color:#222;font-weight:700}
|
621 |
-
.ui-widget-header a{color:#222}
|
622 |
-
.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:0 solid #d3d3d3;background:#e9e9e9 50% 50% repeat-x;font-weight:400;color:#555}
|
623 |
-
.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}
|
624 |
-
.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:0 solid #999;background:#dadada 50% 50% repeat-x;font-weight:400;color:#212121}
|
625 |
-
.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#212121;text-decoration:none}
|
626 |
-
.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:0 solid #aaa;background:#fff 50% 50% repeat-x;font-weight:400;color:#212121}
|
627 |
-
.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}
|
628 |
-
.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:0 solid #89b17e;background:#fbf9ee 50% 50% repeat-x;color:#363636}
|
629 |
-
.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}
|
630 |
-
.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:0 solid #cd0a0a;background:#fef1ec 50% 50% repeat-x;color:#cd0a0a}
|
631 |
-
.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}
|
632 |
-
.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}
|
633 |
-
.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}
|
634 |
-
.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}
|
635 |
-
.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}
|
636 |
-
.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}
|
637 |
-
.ui-icon{width:16px;height:16px}
|
638 |
-
.ui-icon,.ui-widget-content .ui-icon{background-image:url(../images/ui-icons_222222_256x240.png)}
|
639 |
-
.ui-widget-header .ui-icon{background-image:url(../images/ui-icons_222222_256x240.png)}
|
640 |
-
.ui-state-default .ui-icon{background-image:url(../images/ui-icons_888888_256x240.png)}
|
641 |
-
.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(../images/ui-icons_454545_256x240.png)}
|
642 |
-
.ui-state-active .ui-icon{background-image:url(../images/ui-icons_454545_256x240.png)}
|
643 |
-
.ui-state-highlight .ui-icon{background-image:url(../images/ui-icons_2e83ff_256x240.png)}
|
644 |
-
.ui-icon-circle-triangle-e{background-position:-48px -192px}
|
645 |
-
.ui-icon-circle-triangle-s{background-position:-64px -192px}
|
646 |
-
.ui-icon-circle-triangle-w{background-position:-80px -192px}
|
647 |
-
.ui-icon-circle-triangle-n{background-position:-96px -192px}
|
648 |
-
.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:0}
|
649 |
-
.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:0}
|
650 |
-
.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:0}
|
651 |
-
.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:0}
|
652 |
-
.ui-widget-overlay{background:#aaa 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}
|
653 |
-
.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
|
654 |
-
|
655 |
-
|
656 |
-
.the-metabox.preview{
|
657 |
-
float: none;
|
658 |
-
}
|
659 |
-
.metaboxes-tab .the-metabox.no-label.preview{
|
660 |
-
margin-left: 184px;
|
661 |
-
}
|
662 |
-
.metaboxes-tab .the-metabox.no-label.preview img{
|
663 |
-
box-shadow: 0 1px 8px rgba(0,0,0,0.2);
|
664 |
}
|
1 |
/* self-clear floats */
|
2 |
+
.clearfix:after {
|
3 |
+
content : ".";
|
4 |
+
display : block;
|
5 |
+
height : 0;
|
6 |
+
clear : both;
|
7 |
+
visibility : hidden;
|
8 |
+
overflow : hidden;
|
9 |
+
}
|
10 |
+
|
11 |
/* ie.css */
|
12 |
* html .clearfix { /* IE6 */
|
13 |
+
height : 1%;
|
14 |
}
|
15 |
+
|
16 |
+
*:first-child + html .clearfix { /* IE7 */
|
17 |
+
min-height : 1%;
|
18 |
}
|
19 |
|
20 |
+
.clearboth {
|
21 |
+
clear : both
|
22 |
+
}
|
23 |
|
24 |
/* === TAB STYLE */
|
25 |
+
.metaboxes-tab {
|
26 |
+
margin : -6px -12px -8px;
|
27 |
+
}
|
28 |
+
|
29 |
+
.metaboxes-tab div.tabs-panel {
|
30 |
+
height : auto;
|
31 |
+
overflow : visible;
|
32 |
+
margin-top : 0px;
|
33 |
+
padding : 0 10px;
|
34 |
+
background : none;
|
35 |
+
border : 0;
|
36 |
+
}
|
37 |
+
|
38 |
+
.metaboxes-tab ul.metaboxes-tabs {
|
39 |
+
background : #f1f1f1;
|
40 |
+
margin : 0;
|
41 |
+
padding : 10px 0 0 5px;
|
42 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
|
44 |
.metaboxes-tab ul.metaboxes-tabs li {
|
45 |
+
float : left;
|
46 |
+
background : #dedede;
|
47 |
+
margin : 0 0 0 5px;
|
48 |
+
}
|
49 |
+
|
50 |
+
.metaboxes-tab ul.metaboxes-tabs li a {
|
51 |
+
color : #555;
|
52 |
+
text-decoration : none;
|
53 |
+
padding : 8px 15px;
|
54 |
+
display : block;
|
55 |
+
box-shadow : none !important;
|
56 |
+
}
|
57 |
+
|
58 |
+
.metaboxes-tab ul.metaboxes-tabs li.tabs {
|
59 |
+
background : #fff;
|
60 |
+
}
|
61 |
+
|
62 |
+
.metaboxes-tab p.field-row {
|
63 |
+
margin : 20px 0;
|
64 |
+
}
|
65 |
+
|
66 |
+
.metaboxes-tab div.sep {
|
67 |
+
height : 1px;
|
68 |
+
background : #dfdfdf;
|
69 |
+
clear : both;
|
70 |
+
margin-left : -10px;
|
71 |
+
margin-right : -10px;
|
72 |
+
}
|
73 |
+
|
74 |
+
.metaboxes-tab label {
|
75 |
+
font-weight : bold;
|
76 |
+
width : 160px;
|
77 |
+
float : left;
|
78 |
+
line-height : 23px;
|
79 |
+
margin-left : -184px;
|
80 |
+
}
|
81 |
+
|
82 |
+
.metaboxes-tab label small {
|
83 |
+
font-weight : normal;
|
84 |
+
line-height : 15px;
|
85 |
+
font-style : italic;
|
86 |
+
color : #999;
|
87 |
+
display : block;
|
88 |
+
}
|
89 |
+
|
90 |
+
.metaboxes-tab .wp-picker-container label {
|
91 |
+
font-weight : inherit;
|
92 |
+
width : auto;
|
93 |
+
float : none;
|
94 |
+
line-height : inherit;
|
95 |
+
margin-left : 0;
|
96 |
+
}
|
97 |
+
|
98 |
+
.metaboxes-tab input[type="checkbox"] {
|
99 |
+
vertical-align : middle
|
100 |
+
}
|
101 |
+
|
102 |
+
.metaboxes-tab input.button-secondary, .metaboxes-tab input.checkbox {
|
103 |
+
width : auto;
|
104 |
+
}
|
105 |
+
|
106 |
+
.metaboxes-tab p.field-row.textarea .description {
|
107 |
+
vertical-align : top;
|
108 |
+
}
|
109 |
+
|
110 |
+
.metaboxes-tab p.field-row.checkbox {
|
111 |
+
background : none;
|
112 |
+
}
|
113 |
+
|
114 |
+
.metaboxes-tab .the-metabox {
|
115 |
+
margin : 20px 0;
|
116 |
+
margin-left : 184px;
|
117 |
+
}
|
118 |
+
|
119 |
+
.metaboxes-tab .the-metabox.no-label {
|
120 |
+
margin : 20px 0;
|
121 |
+
margin-left : 0;
|
122 |
}
|
123 |
|
124 |
+
.metaboxes-tab hr {
|
125 |
+
height : 0px;
|
126 |
+
border-top : 1px solid #dadada;
|
127 |
+
width : auto;
|
128 |
+
margin-left : -10px;
|
129 |
+
margin-right : -10px;
|
130 |
}
|
131 |
+
|
132 |
+
.metaboxes-tab .the-metabox p {
|
133 |
+
margin : 0;
|
134 |
}
|
135 |
+
|
136 |
+
.metaboxes-tab .the-metabox:last-child {
|
137 |
+
border-bottom : 0px;
|
|
|
|
|
|
|
138 |
}
|
139 |
+
|
140 |
+
.metaboxes-tab .the-metabox.checkbox {
|
141 |
+
background : none;
|
142 |
+
}
|
143 |
+
|
144 |
+
.metaboxes-tab span.description.inline {
|
145 |
+
display : inline-block;
|
146 |
+
line-height : 23px;
|
147 |
+
width : auto;
|
148 |
+
vertical-align : middle;
|
149 |
+
margin : 0;
|
150 |
}
|
151 |
+
|
152 |
+
.metaboxes-tab .slider label {
|
153 |
+
padding : 15px 0;
|
154 |
+
}
|
155 |
+
|
156 |
+
/* sortable table posts */
|
157 |
+
|
158 |
+
#the-list.ui-sortable tr:hover {
|
159 |
+
cursor : move;
|
160 |
}
|
161 |
+
|
162 |
+
.the-metabox.preview {
|
163 |
+
float : none;
|
164 |
}
|
165 |
|
166 |
+
.metaboxes-tab .the-metabox.no-label.preview {
|
167 |
+
margin-left : 184px;
|
|
|
168 |
}
|
169 |
|
170 |
+
.metaboxes-tab .the-metabox.no-label.preview img {
|
171 |
+
box-shadow : 0 1px 8px rgba(0, 0, 0, 0.2);
|
172 |
}
|
173 |
|
174 |
+
/**************************************
|
175 |
+
FIELDS
|
176 |
+
***************************************/
|
177 |
+
|
178 |
+
.metaboxes-tab select,
|
179 |
+
.metaboxes-tab input[type=text],
|
180 |
+
.metaboxes-tab input[type=number],
|
181 |
+
.metaboxes-tab textarea,
|
182 |
+
.metaboxes-tab .yith-plugin-fw-select,
|
183 |
+
.metaboxes-tab .yith-plugin-fw-slider-container,
|
184 |
+
.metaboxes-tab .yith-plugin-fw-text-input,
|
185 |
+
.metaboxes-tab .yith-plugin-fw-text-array-table,
|
186 |
+
.metaboxes-tab .yith-plugin-fw-textarea {
|
187 |
+
width : 400px;
|
188 |
+
max-width : 100%;
|
189 |
}
|
190 |
|
191 |
+
.metaboxes-tab .yith-plugin-fw-text-array-table input[type=text] {
|
192 |
+
width : 100%;
|
|
|
193 |
}
|
194 |
|
195 |
/* wp editor */
|
196 |
.the-metabox.textarea-editor .mceIframeContainer {
|
197 |
+
background : #fff;
|
198 |
}
|
199 |
+
|
200 |
.the-metabox.textarea-editor label {
|
201 |
+
margin-top : 24px;
|
202 |
}
|
203 |
|
204 |
/* categories */
|
205 |
+
.categories-panel {
|
206 |
+
width : 30%;
|
207 |
+
float : left;
|
208 |
+
margin-right : 4px;
|
209 |
+
}
|
|
|
210 |
|
211 |
+
.categories-panel .box {
|
212 |
+
height : 200px;
|
213 |
+
border : 1px solid #dfdfdf;
|
214 |
+
background : #fff;
|
215 |
+
padding : 6px 10px;
|
216 |
+
overflow : auto;
|
217 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
218 |
|
219 |
+
.categories-panel ul {
|
220 |
+
list-style : none;
|
221 |
+
margin : 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
|
224 |
+
.categories-panel ul li {
|
225 |
+
line-height : 19px;
|
226 |
+
margin : 0;
|
227 |
+
padding : 0;
|
228 |
+
word-wrap : break-word;
|
229 |
+
}
|
230 |
|
231 |
+
.categories-panel ul li label {
|
232 |
+
font-weight : normal !important;
|
233 |
+
margin-left : 0 !important;
|
234 |
+
}
|
235 |
|
236 |
+
.categories-panel input.newcategory {
|
237 |
+
width : 100%;
|
238 |
+
margin-bottom : 3px;
|
239 |
}
|
240 |
|
241 |
+
/* contact form */
|
242 |
+
.contactform_item {
|
243 |
+
border-style : solid;
|
244 |
+
border-width : 1px;
|
245 |
+
line-height : 1;
|
246 |
+
margin-bottom : 20px;
|
247 |
+
padding : 0;
|
248 |
+
background-color : #f5f5f5;
|
249 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
250 |
+
border-color : #dfdfdf;
|
251 |
+
border-radius : 3px 3px 3px 3px;
|
252 |
+
box-shadow : 0 1px 0 #fff inset;
|
253 |
+
min-width : 255px;
|
254 |
+
position : relative;
|
255 |
}
|
256 |
|
257 |
+
.contactform_item .handlediv {
|
258 |
+
position : relative;
|
259 |
+
top : -4px;
|
260 |
}
|
261 |
|
262 |
+
.contactform_item h3 {
|
263 |
+
min-height : 21px;
|
264 |
+
margin : 13px;
|
265 |
}
|
266 |
|
267 |
+
.contactform_item .inside {
|
268 |
+
padding : 10px !important;
|
|
|
|
|
|
|
|
|
269 |
}
|
270 |
|
271 |
+
.contactform_item .deps {
|
272 |
+
display : none;
|
273 |
+
}
|
274 |
|
275 |
+
.contactform_item .addoptions p.option {
|
276 |
+
margin : 5px 0 5px 200px
|
277 |
+
}
|
278 |
|
279 |
+
.contactform_item .addoptions p label {
|
280 |
+
width : 80px !important;
|
281 |
+
}
|
282 |
|
283 |
+
.contactform_item .add-field-option {
|
284 |
+
margin-bottom : 10px !important;
|
285 |
+
}
|
|
|
|
|
286 |
|
287 |
+
.remove_item {
|
288 |
+
float : right;
|
289 |
+
}
|
290 |
|
291 |
+
.metabox-sortable-placeholder {
|
292 |
+
border : 1px dotted #dedede;
|
293 |
+
margin : 10px 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
}
|
295 |
|
296 |
+
/* features tab */
|
297 |
+
.featurestab_item {
|
298 |
+
border-style : solid;
|
299 |
+
border-width : 1px;
|
300 |
+
line-height : 1;
|
301 |
+
margin-bottom : 20px;
|
302 |
+
padding : 0;
|
303 |
+
background-color : #f5f5f5;
|
304 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
305 |
+
border-color : #dfdfdf;
|
306 |
+
border-radius : 3px 3px 3px 3px;
|
307 |
+
box-shadow : 0 1px 0 #fff inset;
|
308 |
+
min-width : 255px;
|
309 |
+
position : relative;
|
310 |
+
}
|
311 |
|
312 |
+
.featurestab_item .handlediv {
|
313 |
+
position : relative;
|
314 |
+
top : -4px;
|
315 |
}
|
316 |
+
|
317 |
+
.featurestab_item h3 {
|
318 |
+
min-height : 21px
|
319 |
}
|
320 |
+
|
321 |
+
.featurestab_item .inside {
|
322 |
+
padding : 10px !important;
|
323 |
}
|
324 |
+
|
325 |
+
.featurestab_item .deps {
|
326 |
+
display : none;
|
327 |
}
|
328 |
+
|
329 |
+
.featurestab_item .addoptions p.option {
|
330 |
+
margin : 5px 0 5px 200px
|
331 |
}
|
332 |
+
|
333 |
+
.featurestab_item .addoptions p label {
|
334 |
+
width : 80px !important;
|
|
|
335 |
}
|
336 |
+
|
337 |
+
.featurestab_item .add-field-option {
|
338 |
+
margin-bottom : 10px !important;
|
339 |
}
|
340 |
+
|
341 |
+
.messages-panel.updated {
|
342 |
+
margin : 10px 0px 10px !important;
|
343 |
+
max-width : 1200px;
|
344 |
+
border-radius : 5px;
|
345 |
+
-webkit-box-sizing : border-box;
|
346 |
+
box-sizing : border-box;
|
347 |
}
|
348 |
+
|
349 |
+
.ui-widget-overlay {
|
350 |
+
background-image : none !important;
|
|
|
|
|
|
|
|
|
351 |
}
|
352 |
|
353 |
+
.the-metabox .icon_type {
|
354 |
+
width : 30%;
|
355 |
+
float : left;
|
356 |
+
margin-right : 40px
|
|
|
|
|
|
|
|
|
|
|
|
|
357 |
}
|
358 |
|
359 |
+
#post-type-settings .category-list label {
|
360 |
+
width : 187px;
|
361 |
+
}
|
362 |
+
|
363 |
+
.remove_cat {
|
364 |
+
float : right;
|
365 |
+
text-align : center;
|
366 |
+
display : block;
|
367 |
+
width : 20px;
|
368 |
+
height : 20px;
|
369 |
+
border-radius : 20px;
|
370 |
+
font-weight : bold;
|
371 |
+
font-size : 10px;
|
372 |
+
background : #efefef;
|
373 |
+
text-decoration : none;
|
374 |
+
}
|
375 |
|
376 |
/* typography */
|
377 |
+
.the-metabox.typography .select_wrapper.font-family {
|
378 |
+
width : 200px;
|
379 |
+
}
|
380 |
+
|
381 |
+
.the-metabox.typography .spinner_container {
|
382 |
+
float : left;
|
383 |
+
margin-right : 10px;
|
384 |
+
}
|
385 |
+
|
386 |
.the-metabox.typography .spinner_container input.number {
|
387 |
+
width : 50px !important;
|
388 |
+
-webkit-border-top-right-radius : 0px;
|
389 |
+
-webkit-border-bottom-right-radius : 0px;
|
390 |
+
-moz-border-radius-topright : 0px;
|
391 |
+
-moz-border-radius-bottomright : 0px;
|
392 |
+
border-top-right-radius : 0px;
|
393 |
+
border-bottom-right-radius : 0px;
|
394 |
}
|
395 |
|
396 |
/* number */
|
397 |
+
.the-metabox.number input.number {
|
398 |
+
width : 50px !important;
|
399 |
+
}
|
400 |
+
|
401 |
/* number */
|
402 |
.rm_number .number {
|
403 |
+
width : 70px;
|
404 |
+
text-align : right;
|
405 |
+
-webkit-border-top-right-radius : 0px;
|
406 |
+
-webkit-border-bottom-right-radius : 0px;
|
407 |
+
-moz-border-radius-topright : 0px;
|
408 |
+
-moz-border-radius-bottomright : 0px;
|
409 |
+
border-top-right-radius : 0px;
|
410 |
+
border-bottom-right-radius : 0px;
|
411 |
}
|
412 |
|
413 |
+
.spinner-wrapper {
|
414 |
+
position : relative;
|
415 |
+
height : 23px;
|
416 |
+
overflow : hidden;
|
417 |
+
}
|
418 |
|
419 |
+
.spinner-wrapper input.number {
|
420 |
+
float : left;
|
421 |
+
}
|
422 |
|
423 |
+
.spinner-wrapper .spinner-button {
|
424 |
+
cursor : pointer;
|
425 |
+
float : left;
|
426 |
+
position : absolute;
|
427 |
+
left : 69px;
|
428 |
+
width : 15px;
|
429 |
+
height : 12px;
|
430 |
+
border : 1px solid #dfdfdf;
|
431 |
+
background : #fff;
|
432 |
+
margin : 0;
|
433 |
+
padding : 0;
|
434 |
+
line-height : 9999px;
|
435 |
+
overflow : hidden;
|
436 |
+
background : url('../images/spinner.png') no-repeat center -11px
|
437 |
+
}
|
438 |
|
439 |
+
.spinner-wrapper .spinner-button.button-plus {
|
440 |
+
top : 0;
|
441 |
+
-webkit-border-top-right-radius : 3px !important;
|
442 |
+
-moz-border-radius-topright : 3px !important;
|
443 |
+
border-top-right-radius : 3px !important;
|
444 |
+
}
|
445 |
|
446 |
+
.spinner-wrapper .spinner-button.button-minus {
|
447 |
+
bottom : 0;
|
448 |
+
background-position : center -30px;
|
449 |
+
-webkit-border-bottom-right-radius : 3px !important;
|
450 |
+
-moz-border-radius-bottomright : 3px !important;
|
451 |
+
border-bottom-right-radius : 3px !important;
|
452 |
+
}
|
453 |
|
454 |
+
.spinner-wrapper .spinner-button.button-plus:active {
|
455 |
+
background-position : center 0px;
|
456 |
+
}
|
457 |
|
458 |
+
.spinner-wrapper .spinner-button.button-minus:active {
|
459 |
+
background-position : center -20px;
|
460 |
+
}
|
461 |
+
|
462 |
+
.rm_typography .spinner_container {
|
463 |
+
float : left;
|
464 |
+
margin-right : 10px;
|
465 |
+
}
|
466 |
+
|
467 |
+
.rm_typography .spinner-wrapper {
|
468 |
+
height : 28px;
|
469 |
+
}
|
470 |
+
|
471 |
+
.rm_typography .spinner-wrapper input.number {
|
472 |
+
height : 28px;
|
473 |
+
}
|
474 |
+
|
475 |
+
.rm_typography .spinner-wrapper .spinner-button.button-plus {
|
476 |
+
height : 15px;
|
477 |
+
background-position : center -10px;
|
478 |
+
}
|
479 |
+
|
480 |
+
.rm_typography .spinner-wrapper .spinner-button.button-minus {
|
481 |
+
height : 14px;
|
482 |
+
}
|
483 |
+
|
484 |
+
.the-metabox .spinner-wrapper .spinner-button {
|
485 |
+
left : 49px;
|
486 |
+
}
|
487 |
+
|
488 |
+
.the-metabox.typography .spinner-wrapper .spinner-button {
|
489 |
+
left : 35px;
|
490 |
+
}
|
491 |
|
492 |
/* images */
|
493 |
+
.the-metabox.images, .the-metabox.images label {
|
494 |
+
margin-left : 0;
|
495 |
+
display : block;
|
496 |
+
}
|
497 |
+
|
498 |
+
.the-metabox.images .slides-wrapper {
|
499 |
+
clear : both;
|
500 |
+
}
|
501 |
+
|
502 |
+
.the-metabox.images .slides-wrapper li {
|
503 |
+
position : relative;
|
504 |
+
}
|
505 |
+
|
506 |
+
.the-metabox.images a.delete {
|
507 |
+
display : block;
|
508 |
+
margin-left : 4px;
|
509 |
+
text-decoration : none;
|
510 |
+
font-weight : bold;
|
511 |
+
color : red;
|
512 |
+
position : absolute;
|
513 |
+
top : 0;
|
514 |
+
right : 0;
|
515 |
+
width : 10px;
|
516 |
+
height : 18px;
|
517 |
+
z-index : 10;
|
518 |
+
cursor : pointer !important;
|
519 |
+
}
|
520 |
|
521 |
/* wp editor */
|
522 |
+
.wp_themeSkin iframe {
|
523 |
+
background : #fff !important;
|
524 |
+
}
|
525 |
|
526 |
/* custom tabs */
|
527 |
.customtab_item {
|
528 |
+
border-style : solid;
|
529 |
+
border-width : 1px;
|
530 |
+
line-height : 1;
|
531 |
+
margin-bottom : 20px;
|
532 |
+
padding : 0;
|
533 |
+
background-color : #f5f5f5;
|
534 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
535 |
+
border-color : #dfdfdf;
|
536 |
+
border-radius : 3px 3px 3px 3px;
|
537 |
+
box-shadow : 0 1px 0 #fff inset;
|
538 |
+
min-width : 255px;
|
539 |
+
position : relative;
|
540 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
541 |
|
542 |
+
.customtab_item .handlediv {
|
543 |
+
position : relative;
|
544 |
+
top : -4px;
|
545 |
}
|
546 |
|
547 |
+
.customtab_item h3 {
|
548 |
+
min-height : 21px
|
549 |
}
|
550 |
|
551 |
+
.customtab_item .inside {
|
552 |
+
padding : 10px !important;
|
553 |
}
|
554 |
|
555 |
+
.customtab_item .deps {
|
556 |
+
display : none;
|
|
|
|
|
|
|
|
|
557 |
}
|
558 |
|
559 |
+
.customtab_item .addoptions p.option {
|
560 |
+
margin : 5px 0 5px 200px
|
561 |
+
}
|
562 |
|
563 |
+
.customtab_item .addoptions p label {
|
564 |
+
width : 80px !important;
|
|
|
|
|
565 |
}
|
566 |
+
|
567 |
+
.customtab_item .add-field-option {
|
568 |
+
margin-bottom : 10px !important;
|
569 |
}
|
570 |
|
571 |
+
.customtab_item .remove_item {
|
572 |
+
float : right;
|
|
|
573 |
}
|
574 |
|
575 |
+
.metabox-sortable-placeholder {
|
576 |
+
border : 1px dotted #dedede;
|
577 |
+
margin : 10px 0
|
|
|
578 |
}
|
579 |
+
|
580 |
+
.the-metabox.customtabs {
|
581 |
+
margin-left : 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
582 |
}
|
583 |
+
|
584 |
+
#customtab_item_sample {
|
585 |
+
display : none;
|
|
|
586 |
}
|
587 |
+
|
588 |
+
.the-metabox.customtabs .field-row {
|
589 |
+
margin-bottom : 10px;
|
|
|
|
|
|
|
|
|
590 |
}
|
591 |
|
592 |
+
#yit_custom_tabs label {
|
593 |
+
font-weight : normal;
|
594 |
+
width : auto;
|
595 |
+
float : none;
|
596 |
+
line-height : auto;
|
597 |
+
margin-left : 0;
|
598 |
}
|
599 |
|
600 |
+
.wp-admin p label input[type=radio] {
|
601 |
+
width : 16px;
|
602 |
+
margin-right : 10px;
|
603 |
+
margin-top : 3px;
|
604 |
}
|
605 |
|
606 |
+
.wp-admin .form-field._preset_onsale_icon_field label input[type=radio] {
|
607 |
+
margin-top : 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
608 |
}
|
609 |
|
610 |
+
.the-metabox .spinner {
|
611 |
+
margin-top : 5px;
|
612 |
+
float : none;
|
613 |
+
}
|
614 |
|
615 |
/*sidebars*/
|
616 |
+
#choose-sidebars.choose {
|
617 |
+
margin-left : 0px;
|
|
|
618 |
}
|
619 |
|
620 |
+
#_active_page_options-container label, #_active_page_options-container p {
|
621 |
+
display : inline-block;
|
622 |
+
margin : 0px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
623 |
}
|
624 |
|
625 |
+
#_active_page_options-container label {
|
626 |
+
margin-right : 10px;
|
627 |
+
margin-top : 3px;
|
628 |
+
}
|
629 |
|
630 |
+
#_active_page_options-container {
|
631 |
+
float : right;
|
632 |
+
margin-right : 20px;
|
633 |
+
margin-top : 5px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
634 |
}
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_diagonals-thick_18_b81900_40x40.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_flat_10_000000_40x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_100_f6f6f6_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_100_fdf5ce_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_gloss-wave_35_f6a828_500x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_highlight-soft_100_eeeeee_1x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-bg_highlight-soft_75_ffe45c_1x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_222222_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_228ef1_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ef8c08_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ffd27a_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/jquery_ui/ui-icons_ffffff_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_flat_55_c0402a_40x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_glass_35_dddddd_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-icons_3383bb_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-icons_454545_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-icons_70b2e1_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-icons_999999_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/images/ui-icons_fbc856_256x240.png
DELETED
Binary file
|
plugin-fw/assets/css/overcast/jquery-ui-custom/jquery-ui-1.8.9.custom.css
DELETED
@@ -1,578 +0,0 @@
|
|
1 |
-
/*
|
2 |
-
* jQuery UI CSS Framework 1.8.13
|
3 |
-
*
|
4 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6 |
-
* http://jquery.org/license
|
7 |
-
*
|
8 |
-
* http://docs.jquery.com/UI/Theming/API
|
9 |
-
*/
|
10 |
-
|
11 |
-
/* Layout helpers
|
12 |
-
----------------------------------*/
|
13 |
-
.ui-helper-hidden { display: none; }
|
14 |
-
.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
|
15 |
-
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
16 |
-
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
17 |
-
.ui-helper-clearfix { display: inline-block; }
|
18 |
-
/* required comment for clearfix to work in Opera \*/
|
19 |
-
* html .ui-helper-clearfix { height:1%; }
|
20 |
-
.ui-helper-clearfix { display:block; }
|
21 |
-
/* end clearfix */
|
22 |
-
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
23 |
-
|
24 |
-
|
25 |
-
/* Interaction Cues
|
26 |
-
----------------------------------*/
|
27 |
-
.ui-state-disabled { cursor: default !important; }
|
28 |
-
|
29 |
-
|
30 |
-
/* Icons
|
31 |
-
----------------------------------*/
|
32 |
-
|
33 |
-
/* states and images */
|
34 |
-
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
35 |
-
|
36 |
-
|
37 |
-
/* Misc visuals
|
38 |
-
----------------------------------*/
|
39 |
-
|
40 |
-
/* Overlays */
|
41 |
-
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
|
42 |
-
|
43 |
-
|
44 |
-
/*
|
45 |
-
* jQuery UI CSS Framework 1.8.13
|
46 |
-
*
|
47 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
48 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
49 |
-
* http://jquery.org/license
|
50 |
-
*
|
51 |
-
* http://docs.jquery.com/UI/Theming/API
|
52 |
-
*
|
53 |
-
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS,%20Tahoma,%20Verdana,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=03_highlight_soft.png&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=08_diagonals_thick.png&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=08_diagonals_thick.png&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=01_flat.png&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px
|
54 |
-
*/
|
55 |
-
|
56 |
-
|
57 |
-
/* Component containers
|
58 |
-
----------------------------------*/
|
59 |
-
.ui-widget { font-family: Trebuchet MS, Tahoma, Verdana, Arial, sans-serif; font-size: 1.1em; }
|
60 |
-
.ui-widget .ui-widget { font-size: 1em; }
|
61 |
-
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Trebuchet MS, Tahoma, Verdana, Arial, sans-serif; font-size: 1em; }
|
62 |
-
.ui-widget-content { border: 1px solid #dddddd; background: #eeeeee url(../images/jquery_ui/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x; color: #333333; }
|
63 |
-
.ui-widget-content a { color: #333333; }
|
64 |
-
.ui-widget-header { border: 1px solid #e78f08; background: #f6a828 url(../images/jquery_ui/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; }
|
65 |
-
.ui-widget-header a { color: #ffffff; }
|
66 |
-
|
67 |
-
/* Interaction states
|
68 |
-
----------------------------------*/
|
69 |
-
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #cccccc; background: #f6f6f6 url(../images/jquery_ui/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #1c94c4; }
|
70 |
-
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #1c94c4; text-decoration: none; }
|
71 |
-
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #fbcb09; background: #fdf5ce url(../images/jquery_ui/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #c77405; }
|
72 |
-
.ui-state-hover a, .ui-state-hover a:hover { color: #c77405; text-decoration: none; }
|
73 |
-
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #fbd850; background: #ffffff url(../images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #eb8f00; }
|
74 |
-
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #eb8f00; text-decoration: none; }
|
75 |
-
.ui-widget :active { outline: none; }
|
76 |
-
|
77 |
-
/* Interaction Cues
|
78 |
-
----------------------------------*/
|
79 |
-
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fed22f; background: #ffe45c url(../images/jquery_ui/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; color: #363636; }
|
80 |
-
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
|
81 |
-
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #b81900 url(../images/jquery_ui/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat; color: #ffffff; }
|
82 |
-
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; }
|
83 |
-
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; }
|
84 |
-
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
85 |
-
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
86 |
-
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
87 |
-
|
88 |
-
/* Icons
|
89 |
-
----------------------------------*/
|
90 |
-
|
91 |
-
/* states and images */
|
92 |
-
.ui-icon { width: 16px; height: 16px; background-image: url(../images/jquery_ui/ui-icons_222222_256x240.png); }
|
93 |
-
.ui-widget-content .ui-icon {background-image: url(../images/jquery_ui/ui-icons_222222_256x240.png); }
|
94 |
-
.ui-widget-header .ui-icon {background-image: url(../images/jquery_ui/ui-icons_ffffff_256x240.png); }
|
95 |
-
.ui-state-default .ui-icon { background-image: url(../images/jquery_ui/ui-icons_ef8c08_256x240.png); }
|
96 |
-
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../images/jquery_ui/ui-icons_ef8c08_256x240.png); }
|
97 |
-
.ui-state-active .ui-icon {background-image: url(../images/jquery_ui/ui-icons_ef8c08_256x240.png); }
|
98 |
-
.ui-state-highlight .ui-icon {background-image: url(../images/jquery_ui/ui-icons_228ef1_256x240.png); }
|
99 |
-
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(../images/jquery_ui/ui-icons_ffd27a_256x240.png); }
|
100 |
-
|
101 |
-
/* positioning */
|
102 |
-
.ui-icon-carat-1-n { background-position: 0 0; }
|
103 |
-
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
104 |
-
.ui-icon-carat-1-e { background-position: -32px 0; }
|
105 |
-
.ui-icon-carat-1-se { background-position: -48px 0; }
|
106 |
-
.ui-icon-carat-1-s { background-position: -64px 0; }
|
107 |
-
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
108 |
-
.ui-icon-carat-1-w { background-position: -96px 0; }
|
109 |
-
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
110 |
-
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
111 |
-
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
112 |
-
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
113 |
-
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
114 |
-
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
115 |
-
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
116 |
-
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
117 |
-
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
118 |
-
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
119 |
-
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
120 |
-
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
121 |
-
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
122 |
-
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
123 |
-
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
124 |
-
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
125 |
-
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
126 |
-
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
127 |
-
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
128 |
-
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
129 |
-
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
130 |
-
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
131 |
-
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
132 |
-
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
133 |
-
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
134 |
-
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
135 |
-
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
136 |
-
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
137 |
-
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
138 |
-
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
139 |
-
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
140 |
-
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
141 |
-
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
142 |
-
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
143 |
-
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
144 |
-
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
145 |
-
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
146 |
-
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
147 |
-
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
148 |
-
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
149 |
-
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
150 |
-
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
151 |
-
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
152 |
-
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
153 |
-
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
154 |
-
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
155 |
-
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
156 |
-
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
157 |
-
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
158 |
-
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
159 |
-
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
160 |
-
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
161 |
-
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
162 |
-
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
163 |
-
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
164 |
-
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
165 |
-
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
166 |
-
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
167 |
-
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
168 |
-
.ui-icon-extlink { background-position: -32px -80px; }
|
169 |
-
.ui-icon-newwin { background-position: -48px -80px; }
|
170 |
-
.ui-icon-refresh { background-position: -64px -80px; }
|
171 |
-
.ui-icon-shuffle { background-position: -80px -80px; }
|
172 |
-
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
173 |
-
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
174 |
-
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
175 |
-
.ui-icon-folder-open { background-position: -16px -96px; }
|
176 |
-
.ui-icon-document { background-position: -32px -96px; }
|
177 |
-
.ui-icon-document-b { background-position: -48px -96px; }
|
178 |
-
.ui-icon-note { background-position: -64px -96px; }
|
179 |
-
.ui-icon-mail-closed { background-position: -80px -96px; }
|
180 |
-
.ui-icon-mail-open { background-position: -96px -96px; }
|
181 |
-
.ui-icon-suitcase { background-position: -112px -96px; }
|
182 |
-
.ui-icon-comment { background-position: -128px -96px; }
|
183 |
-
.ui-icon-person { background-position: -144px -96px; }
|
184 |
-
.ui-icon-print { background-position: -160px -96px; }
|
185 |
-
.ui-icon-trash { background-position: -176px -96px; }
|
186 |
-
.ui-icon-locked { background-position: -192px -96px; }
|
187 |
-
.ui-icon-unlocked { background-position: -208px -96px; }
|
188 |
-
.ui-icon-bookmark { background-position: -224px -96px; }
|
189 |
-
.ui-icon-tag { background-position: -240px -96px; }
|
190 |
-
.ui-icon-home { background-position: 0 -112px; }
|
191 |
-
.ui-icon-flag { background-position: -16px -112px; }
|
192 |
-
.ui-icon-calendar { background-position: -32px -112px; }
|
193 |
-
.ui-icon-cart { background-position: -48px -112px; }
|
194 |
-
.ui-icon-pencil { background-position: -64px -112px; }
|
195 |
-
.ui-icon-clock { background-position: -80px -112px; }
|
196 |
-
.ui-icon-disk { background-position: -96px -112px; }
|
197 |
-
.ui-icon-calculator { background-position: -112px -112px; }
|
198 |
-
.ui-icon-zoomin { background-position: -128px -112px; }
|
199 |
-
.ui-icon-zoomout { background-position: -144px -112px; }
|
200 |
-
.ui-icon-search { background-position: -160px -112px; }
|
201 |
-
.ui-icon-wrench { background-position: -176px -112px; }
|
202 |
-
.ui-icon-gear { background-position: -192px -112px; }
|
203 |
-
.ui-icon-heart { background-position: -208px -112px; }
|
204 |
-
.ui-icon-star { background-position: -224px -112px; }
|
205 |
-
.ui-icon-link { background-position: -240px -112px; }
|
206 |
-
.ui-icon-cancel { background-position: 0 -128px; }
|
207 |
-
.ui-icon-plus { background-position: -16px -128px; }
|
208 |
-
.ui-icon-plusthick { background-position: -32px -128px; }
|
209 |
-
.ui-icon-minus { background-position: -48px -128px; }
|
210 |
-
.ui-icon-minusthick { background-position: -64px -128px; }
|
211 |
-
.ui-icon-close { background-position: -80px -128px; }
|
212 |
-
.ui-icon-closethick { background-position: -96px -128px; }
|
213 |
-
.ui-icon-key { background-position: -112px -128px; }
|
214 |
-
.ui-icon-lightbulb { background-position: -128px -128px; }
|
215 |
-
.ui-icon-scissors { background-position: -144px -128px; }
|
216 |
-
.ui-icon-clipboard { background-position: -160px -128px; }
|
217 |
-
.ui-icon-copy { background-position: -176px -128px; }
|
218 |
-
.ui-icon-contact { background-position: -192px -128px; }
|
219 |
-
.ui-icon-image { background-position: -208px -128px; }
|
220 |
-
.ui-icon-video { background-position: -224px -128px; }
|
221 |
-
.ui-icon-script { background-position: -240px -128px; }
|
222 |
-
.ui-icon-alert { background-position: 0 -144px; }
|
223 |
-
.ui-icon-info { background-position: -16px -144px; }
|
224 |
-
.ui-icon-notice { background-position: -32px -144px; }
|
225 |
-
.ui-icon-help { background-position: -48px -144px; }
|
226 |
-
.ui-icon-check { background-position: -64px -144px; }
|
227 |
-
.ui-icon-bullet { background-position: -80px -144px; }
|
228 |
-
.ui-icon-radio-off { background-position: -96px -144px; }
|
229 |
-
.ui-icon-radio-on { background-position: -112px -144px; }
|
230 |
-
.ui-icon-pin-w { background-position: -128px -144px; }
|
231 |
-
.ui-icon-pin-s { background-position: -144px -144px; }
|
232 |
-
.ui-icon-play { background-position: 0 -160px; }
|
233 |
-
.ui-icon-pause { background-position: -16px -160px; }
|
234 |
-
.ui-icon-seek-next { background-position: -32px -160px; }
|
235 |
-
.ui-icon-seek-prev { background-position: -48px -160px; }
|
236 |
-
.ui-icon-seek-end { background-position: -64px -160px; }
|
237 |
-
.ui-icon-seek-start { background-position: -80px -160px; }
|
238 |
-
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
239 |
-
.ui-icon-seek-first { background-position: -80px -160px; }
|
240 |
-
.ui-icon-stop { background-position: -96px -160px; }
|
241 |
-
.ui-icon-eject { background-position: -112px -160px; }
|
242 |
-
.ui-icon-volume-off { background-position: -128px -160px; }
|
243 |
-
.ui-icon-volume-on { background-position: -144px -160px; }
|
244 |
-
.ui-icon-power { background-position: 0 -176px; }
|
245 |
-
.ui-icon-signal-diag { background-position: -16px -176px; }
|
246 |
-
.ui-icon-signal { background-position: -32px -176px; }
|
247 |
-
.ui-icon-battery-0 { background-position: -48px -176px; }
|
248 |
-
.ui-icon-battery-1 { background-position: -64px -176px; }
|
249 |
-
.ui-icon-battery-2 { background-position: -80px -176px; }
|
250 |
-
.ui-icon-battery-3 { background-position: -96px -176px; }
|
251 |
-
.ui-icon-circle-plus { background-position: 0 -192px; }
|
252 |
-
.ui-icon-circle-minus { background-position: -16px -192px; }
|
253 |
-
.ui-icon-circle-close { background-position: -32px -192px; }
|
254 |
-
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
255 |
-
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
256 |
-
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
257 |
-
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
258 |
-
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
259 |
-
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
260 |
-
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
261 |
-
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
262 |
-
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
263 |
-
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
264 |
-
.ui-icon-circle-check { background-position: -208px -192px; }
|
265 |
-
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
266 |
-
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
267 |
-
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
268 |
-
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
269 |
-
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
270 |
-
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
271 |
-
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
272 |
-
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
273 |
-
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
274 |
-
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
275 |
-
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
276 |
-
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
277 |
-
|
278 |
-
|
279 |
-
/* Misc visuals
|
280 |
-
----------------------------------*/
|
281 |
-
|
282 |
-
/* Corner radius */
|
283 |
-
.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; }
|
284 |
-
.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
|
285 |
-
.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
|
286 |
-
.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
|
287 |
-
.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
|
288 |
-
.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
|
289 |
-
.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
|
290 |
-
.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
|
291 |
-
.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }
|
292 |
-
|
293 |
-
/* Overlays */
|
294 |
-
.ui-widget-overlay { background: #666666 url(../images/jquery_ui/ui-bg_diagonals-thick_20_666666_40x40.png) 50% 50% repeat; opacity: .50;filter:Alpha(Opacity=50); }
|
295 |
-
.ui-widget-shadow { margin: -5px 0 0 -5px; padding: 5px; background: #000000 url(../images/jquery_ui/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x; opacity: .20;filter:Alpha(Opacity=20); -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }/*
|
296 |
-
* jQuery UI Resizable 1.8.13
|
297 |
-
*
|
298 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
299 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
300 |
-
* http://jquery.org/license
|
301 |
-
*
|
302 |
-
* http://docs.jquery.com/UI/Resizable#theming
|
303 |
-
*/
|
304 |
-
.ui-resizable { position: relative;}
|
305 |
-
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;
|
306 |
-
/* http://bugs.jqueryui.com/ticket/7233
|
307 |
-
- Resizable: resizable handles fail to work in IE if transparent and content overlaps
|
308 |
-
*/
|
309 |
-
background-image:url(data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=);
|
310 |
-
}
|
311 |
-
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
|
312 |
-
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
|
313 |
-
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
|
314 |
-
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
|
315 |
-
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
|
316 |
-
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
|
317 |
-
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
|
318 |
-
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
|
319 |
-
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
|
320 |
-
* jQuery UI Selectable 1.8.13
|
321 |
-
*
|
322 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
323 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
324 |
-
* http://jquery.org/license
|
325 |
-
*
|
326 |
-
* http://docs.jquery.com/UI/Selectable#theming
|
327 |
-
*/
|
328 |
-
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
|
329 |
-
/*
|
330 |
-
* jQuery UI Accordion 1.8.13
|
331 |
-
*
|
332 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
333 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
334 |
-
* http://jquery.org/license
|
335 |
-
*
|
336 |
-
* http://docs.jquery.com/UI/Accordion#theming
|
337 |
-
*/
|
338 |
-
/* IE/Win - Fix animation bug - #4615 */
|
339 |
-
.ui-accordion { width: 100%; }
|
340 |
-
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
|
341 |
-
.ui-accordion .ui-accordion-li-fix { display: inline; }
|
342 |
-
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
|
343 |
-
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
|
344 |
-
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
|
345 |
-
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
346 |
-
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
|
347 |
-
.ui-accordion .ui-accordion-content-active { display: block; }
|
348 |
-
/*
|
349 |
-
* jQuery UI Autocomplete 1.8.13
|
350 |
-
*
|
351 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
352 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
353 |
-
* http://jquery.org/license
|
354 |
-
*
|
355 |
-
* http://docs.jquery.com/UI/Autocomplete#theming
|
356 |
-
*/
|
357 |
-
.ui-autocomplete { position: absolute; cursor: default; }
|
358 |
-
|
359 |
-
/* workarounds */
|
360 |
-
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
|
361 |
-
|
362 |
-
/*
|
363 |
-
* jQuery UI Menu 1.8.13
|
364 |
-
*
|
365 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
366 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
367 |
-
* http://jquery.org/license
|
368 |
-
*
|
369 |
-
* http://docs.jquery.com/UI/Menu#theming
|
370 |
-
*/
|
371 |
-
.ui-menu {
|
372 |
-
list-style:none;
|
373 |
-
padding: 2px;
|
374 |
-
margin: 0;
|
375 |
-
display:block;
|
376 |
-
float: left;
|
377 |
-
}
|
378 |
-
.ui-menu .ui-menu {
|
379 |
-
margin-top: -3px;
|
380 |
-
}
|
381 |
-
.ui-menu .ui-menu-item {
|
382 |
-
margin:0;
|
383 |
-
padding: 0;
|
384 |
-
zoom: 1;
|
385 |
-
float: left;
|
386 |
-
clear: left;
|
387 |
-
width: 100%;
|
388 |
-
}
|
389 |
-
.ui-menu .ui-menu-item a {
|
390 |
-
text-decoration:none;
|
391 |
-
display:block;
|
392 |
-
padding:.2em .4em;
|
393 |
-
line-height:1.5;
|
394 |
-
zoom:1;
|
395 |
-
}
|
396 |
-
.ui-menu .ui-menu-item a.ui-state-hover,
|
397 |
-
.ui-menu .ui-menu-item a.ui-state-active {
|
398 |
-
font-weight: normal;
|
399 |
-
margin: -1px;
|
400 |
-
}
|
401 |
-
/*
|
402 |
-
* jQuery UI Button 1.8.13
|
403 |
-
*
|
404 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
405 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
406 |
-
* http://jquery.org/license
|
407 |
-
*
|
408 |
-
* http://docs.jquery.com/UI/Button#theming
|
409 |
-
*/
|
410 |
-
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
|
411 |
-
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
|
412 |
-
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
|
413 |
-
.ui-button-icons-only { width: 3.4em; }
|
414 |
-
button.ui-button-icons-only { width: 3.7em; }
|
415 |
-
|
416 |
-
/*button text element */
|
417 |
-
.ui-button .ui-button-text { display: block; line-height: 1.4; }
|
418 |
-
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
|
419 |
-
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
|
420 |
-
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
|
421 |
-
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
|
422 |
-
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
|
423 |
-
/* no icon support for input elements, provide padding by default */
|
424 |
-
input.ui-button { padding: .4em 1em; }
|
425 |
-
|
426 |
-
/*button icon element(s) */
|
427 |
-
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
|
428 |
-
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
|
429 |
-
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
|
430 |
-
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
431 |
-
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
432 |
-
|
433 |
-
/*button sets*/
|
434 |
-
.ui-buttonset { margin-right: 7px; }
|
435 |
-
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }
|
436 |
-
|
437 |
-
/* workarounds */
|
438 |
-
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
|
439 |
-
/*
|
440 |
-
* jQuery UI Dialog 1.8.13
|
441 |
-
*
|
442 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
443 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
444 |
-
* http://jquery.org/license
|
445 |
-
*
|
446 |
-
* http://docs.jquery.com/UI/Dialog#theming
|
447 |
-
*/
|
448 |
-
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
|
449 |
-
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
|
450 |
-
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
|
451 |
-
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
|
452 |
-
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
|
453 |
-
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
|
454 |
-
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
|
455 |
-
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
|
456 |
-
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
|
457 |
-
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
|
458 |
-
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
|
459 |
-
.ui-draggable .ui-dialog-titlebar { cursor: move; }
|
460 |
-
/*
|
461 |
-
* jQuery UI Slider 1.8.13
|
462 |
-
*
|
463 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
464 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
465 |
-
* http://jquery.org/license
|
466 |
-
*
|
467 |
-
* http://docs.jquery.com/UI/Slider#theming
|
468 |
-
*/
|
469 |
-
.ui-slider { position: relative; text-align: left; }
|
470 |
-
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
|
471 |
-
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
|
472 |
-
|
473 |
-
.ui-slider-horizontal { height: .8em; }
|
474 |
-
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
|
475 |
-
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
|
476 |
-
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
|
477 |
-
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
|
478 |
-
|
479 |
-
.ui-slider-vertical { width: .8em; height: 100px; }
|
480 |
-
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
|
481 |
-
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
|
482 |
-
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
|
483 |
-
.ui-slider-vertical .ui-slider-range-max { top: 0; }/*
|
484 |
-
* jQuery UI Tabs 1.8.13
|
485 |
-
*
|
486 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
487 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
488 |
-
* http://jquery.org/license
|
489 |
-
*
|
490 |
-
* http://docs.jquery.com/UI/Tabs#theming
|
491 |
-
*/
|
492 |
-
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
493 |
-
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
|
494 |
-
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
|
495 |
-
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
|
496 |
-
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
|
497 |
-
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
|
498 |
-
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
499 |
-
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
|
500 |
-
.ui-tabs .ui-tabs-hide { display: none !important; }
|
501 |
-
/*
|
502 |
-
* jQuery UI Datepicker 1.8.13
|
503 |
-
*
|
504 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
505 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
506 |
-
* http://jquery.org/license
|
507 |
-
*
|
508 |
-
* http://docs.jquery.com/UI/Datepicker#theming
|
509 |
-
*/
|
510 |
-
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
|
511 |
-
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
|
512 |
-
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
|
513 |
-
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
|
514 |
-
.ui-datepicker .ui-datepicker-prev { left:2px; }
|
515 |
-
.ui-datepicker .ui-datepicker-next { right:2px; }
|
516 |
-
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
|
517 |
-
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
|
518 |
-
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
|
519 |
-
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
|
520 |
-
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
|
521 |
-
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
|
522 |
-
.ui-datepicker select.ui-datepicker-month,
|
523 |
-
.ui-datepicker select.ui-datepicker-year { width: 49%;}
|
524 |
-
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
|
525 |
-
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
|
526 |
-
.ui-datepicker td { border: 0; padding: 1px; }
|
527 |
-
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
|
528 |
-
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
|
529 |
-
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
|
530 |
-
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
|
531 |
-
|
532 |
-
/* with multiple calendars */
|
533 |
-
.ui-datepicker.ui-datepicker-multi { width:auto; }
|
534 |
-
.ui-datepicker-multi .ui-datepicker-group { float:left; }
|
535 |
-
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
|
536 |
-
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
|
537 |
-
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
|
538 |
-
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
|
539 |
-
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
|
540 |
-
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
|
541 |
-
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
|
542 |
-
.ui-datepicker-row-break { clear:both; width:100%; }
|
543 |
-
|
544 |
-
/* RTL support */
|
545 |
-
.ui-datepicker-rtl { direction: rtl; }
|
546 |
-
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
|
547 |
-
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
|
548 |
-
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
|
549 |
-
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
|
550 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
|
551 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
|
552 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
|
553 |
-
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
|
554 |
-
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
555 |
-
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
556 |
-
|
557 |
-
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
558 |
-
.ui-datepicker-cover {
|
559 |
-
display: none; /*sorry for IE5*/
|
560 |
-
display/**/: block; /*sorry for IE5*/
|
561 |
-
position: absolute; /*must have*/
|
562 |
-
z-index: -1; /*must have*/
|
563 |
-
filter: mask(); /*must have*/
|
564 |
-
top: -4px; /*must have*/
|
565 |
-
left: -4px; /*must have*/
|
566 |
-
width: 200px; /*must have*/
|
567 |
-
height: 200px; /*must have*/
|
568 |
-
}/*
|
569 |
-
* jQuery UI Progressbar 1.8.13
|
570 |
-
*
|
571 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
572 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
573 |
-
* http://jquery.org/license
|
574 |
-
*
|
575 |
-
* http://docs.jquery.com/UI/Progressbar#theming
|
576 |
-
*/
|
577 |
-
.ui-progressbar { height:2em; text-align: left; }
|
578 |
-
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/yit-plugin-panel.css
CHANGED
@@ -6,85 +6,6 @@
|
|
6 |
* It is also available through the world-wide-web at this URL:
|
7 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
8 |
*/
|
9 |
-
|
10 |
-
/* onoff */
|
11 |
-
.rm_onoff input {
|
12 |
-
display : none;
|
13 |
-
}
|
14 |
-
|
15 |
-
.rm_onoff input + span {
|
16 |
-
cursor : pointer;
|
17 |
-
text-indent : -9999px;
|
18 |
-
display : block;
|
19 |
-
width : 85px;
|
20 |
-
height : 37px;
|
21 |
-
background : transparent url(../images/off.png);
|
22 |
-
}
|
23 |
-
|
24 |
-
.rm_onoff input:checked + span {
|
25 |
-
background : transparent url(../images/on.png);
|
26 |
-
}
|
27 |
-
|
28 |
-
.rm_onoff input.onoffchecked + span {
|
29 |
-
background : transparent url(../images/on.png);
|
30 |
-
}
|
31 |
-
|
32 |
-
/* slider */
|
33 |
-
/*numbers*/
|
34 |
-
.ui-slider .maxCaption, .ui-slider .minCaption {
|
35 |
-
margin-bottom : 5px;
|
36 |
-
}
|
37 |
-
|
38 |
-
.ui-slider .feedback {
|
39 |
-
background : url(../images/slider/tooltip.png) no-repeat center top;
|
40 |
-
position : absolute;
|
41 |
-
top : -25px;
|
42 |
-
width : 35px;
|
43 |
-
height : 43px;
|
44 |
-
text-align : center;
|
45 |
-
width : 100%;
|
46 |
-
display : block;
|
47 |
-
}
|
48 |
-
|
49 |
-
.ui-slider .feedback strong {
|
50 |
-
display : inline-block;
|
51 |
-
padding-top : 4px;
|
52 |
-
top : -30px;
|
53 |
-
}
|
54 |
-
|
55 |
-
/*handle*/
|
56 |
-
.yit-options .ui-slider-horizontal .ui-slider-handle,
|
57 |
-
.yit_options .ui-slider-horizontal .ui-slider-handle {
|
58 |
-
background : transparent url(../images/slider/handle.png) no-repeat left top !important;
|
59 |
-
border : 0px !important;
|
60 |
-
top : -.35em !important;
|
61 |
-
width : 18px !important;
|
62 |
-
height : 19px !important;
|
63 |
-
}
|
64 |
-
|
65 |
-
/*bg on the left:grey*/
|
66 |
-
.yit-options .ui-slider.ui-widget-content,
|
67 |
-
.yit_options .ui-slider.ui-widget-content {
|
68 |
-
background : url(../images/slider/grey.gif) repeat-x left center !important;
|
69 |
-
border-color : #c1c1c0 !important;
|
70 |
-
height : 10px !important;
|
71 |
-
}
|
72 |
-
|
73 |
-
.iris-slider-offset.ui-slider.ui-widget-content {
|
74 |
-
background : transparent !important;
|
75 |
-
height : auto !important;
|
76 |
-
}
|
77 |
-
|
78 |
-
/*bg on the right:orange*/
|
79 |
-
.ui-slider.ui-widget-content .ui-widget-header {
|
80 |
-
background : url(../images/slider/orange.gif) repeat-x left center !important;
|
81 |
-
left : 2px !important;
|
82 |
-
-webkit-border-radius : 15px;
|
83 |
-
-moz-border-radius : 15px;
|
84 |
-
-khtml-border-radius : 15px;
|
85 |
-
border-radius : 15px;
|
86 |
-
}
|
87 |
-
|
88 |
.plugin-option tr {
|
89 |
border-bottom : 1px solid #ccc;
|
90 |
}
|
@@ -100,146 +21,36 @@
|
|
100 |
float : left;
|
101 |
}
|
102 |
|
103 |
-
.plugin-option .form-table td {
|
104 |
padding : 25px 10px;
|
105 |
}
|
106 |
|
107 |
-
.yit_options .select_wrapper,
|
108 |
-
.yit-options .select_wrapper {
|
109 |
-
background : url("../images/select.png") no-repeat scroll right center #FAFAFA;
|
110 |
-
border-color : #CCCCCC #EEEEEE #EEEEEE #CCCCCC;
|
111 |
-
border-radius : 4px 4px 4px 4px;
|
112 |
-
border-style : solid;
|
113 |
-
border-width : 1px;
|
114 |
-
color : #555555;
|
115 |
-
display : block;
|
116 |
-
float : left;
|
117 |
-
font-family : sans-serif;
|
118 |
-
font-size : 12px;
|
119 |
-
height : 26px;
|
120 |
-
margin-bottom : 9px !important;
|
121 |
-
margin-left : 0;
|
122 |
-
margin-right : 5px;
|
123 |
-
margin-top : 0;
|
124 |
-
width : 400px;
|
125 |
-
}
|
126 |
-
|
127 |
-
.chosen .select_wrapper {
|
128 |
-
background : none;
|
129 |
-
border : none;
|
130 |
-
}
|
131 |
-
|
132 |
-
.chosen .select_wrapper .chosen-container {
|
133 |
-
width : 338px !important;
|
134 |
-
}
|
135 |
-
|
136 |
-
.chosen .select_wrapper .chosen-container .search-field input {
|
137 |
-
height : 27px !important;
|
138 |
-
color : #333;
|
139 |
-
}
|
140 |
-
|
141 |
-
.chosen .select_wrapper .chosen-container .chosen-choices {
|
142 |
-
border : 1px solid #ddd;
|
143 |
-
box-shadow : none;
|
144 |
-
}
|
145 |
-
|
146 |
-
.chosen .select_wrapper .chosen-container .chosen-choices li.search-choice {
|
147 |
-
height : 15px !important;
|
148 |
-
min-width : 105px;
|
149 |
-
}
|
150 |
-
|
151 |
-
.chosen .select_wrapper .chosen-container .chosen-choices li.search-choice span {
|
152 |
-
line-height : 15px;
|
153 |
-
height : 15px;
|
154 |
-
padding-top : 2px;
|
155 |
-
}
|
156 |
-
|
157 |
-
.chosen .select_wrapper .chosen-container .chosen-choices li.search-choice a.search-choice-close {
|
158 |
-
top : 5px;
|
159 |
-
}
|
160 |
-
|
161 |
-
.chosen .select_wrapper .chosen-container .chosen-drop .chosen-search input {
|
162 |
-
width : 100% !important;
|
163 |
-
}
|
164 |
-
|
165 |
-
/* === Multiple Chosen Customizzation === */
|
166 |
-
|
167 |
-
.yith-choosen .chosen-choices {
|
168 |
-
line-height : 27px;
|
169 |
-
min-height : 27px;
|
170 |
-
border : 1px solid #ddd;
|
171 |
-
}
|
172 |
-
|
173 |
-
.yith-choosen .chosen-container-active .chosen-choices {
|
174 |
-
border : 1px solid #5b9dd9;
|
175 |
-
-webkit-box-shadow : 0 0 2px rgba(30, 140, 190, .8);
|
176 |
-
box-shadow : 0 0 2px rgba(30, 140, 190, .8);
|
177 |
-
}
|
178 |
-
|
179 |
-
.select_wrapper span {
|
180 |
-
height : 26px;
|
181 |
-
line-height : 26px;
|
182 |
-
padding-left : 6px;
|
183 |
-
position : absolute;
|
184 |
-
z-index : 2;
|
185 |
-
overflow : hidden;
|
186 |
-
}
|
187 |
-
|
188 |
.ie8 .yit_options select,
|
189 |
.ie8 .yit-options select {
|
190 |
height : 26px;
|
191 |
}
|
192 |
|
193 |
-
.yit_options select, .yit-options select, .the-metabox .select_wrapper select {
|
194 |
-
cursor : pointer;
|
195 |
-
height : 28px;
|
196 |
-
margin : 0;
|
197 |
-
opacity : 0;
|
198 |
-
padding : 0;
|
199 |
-
position : relative;
|
200 |
-
width : inherit;
|
201 |
-
z-index : 4;
|
202 |
-
background-color : #FAFAFA;
|
203 |
-
}
|
204 |
-
|
205 |
-
/* === Single Chosen Customizzation === */
|
206 |
-
|
207 |
-
.yith-choosen .chosen-container-single .chosen-default {
|
208 |
-
background : transparent;
|
209 |
-
border-color : #ddd;
|
210 |
-
}
|
211 |
-
|
212 |
-
.yith-choosen .chosen-search > input[type=text] {
|
213 |
-
width : 100% !important;
|
214 |
-
}
|
215 |
-
|
216 |
-
.yith-choosen .chosen-container-single .chosen-single {
|
217 |
-
background : transparent;
|
218 |
-
border-color : #ddd;
|
219 |
-
}
|
220 |
-
|
221 |
/* Style to woocommerce panel*/
|
222 |
|
223 |
-
#plugin-fw-wc {
|
224 |
padding-top : 20px;
|
225 |
}
|
226 |
|
227 |
-
#plugin-fw-wc table.form-table {
|
228 |
background-color : #fff;
|
229 |
margin-bottom : 20px;
|
230 |
}
|
231 |
|
232 |
-
#plugin-fw-wc table.form-table th {
|
233 |
padding : 20px;
|
234 |
}
|
235 |
|
236 |
-
#plugin-fw-wc h3 {
|
237 |
padding : 0px 10px 10px;
|
238 |
border-bottom : 1px solid #eee;
|
239 |
}
|
240 |
|
241 |
/* === VIDEO BOX === */
|
242 |
-
|
243 |
.yith-videobox-wrapper {
|
244 |
padding-top : 20px;
|
245 |
}
|
@@ -314,10 +125,12 @@
|
|
314 |
}
|
315 |
|
316 |
.yit-plugin-changelog {
|
317 |
-
|
318 |
-
|
|
|
|
|
319 |
z-index : 999;
|
320 |
-
|
321 |
}
|
322 |
|
323 |
/* === Plugins Licence Activation === */
|
@@ -354,7 +167,7 @@
|
|
354 |
.yit-container.plugin-licence-activation .message {
|
355 |
display : none;
|
356 |
line-height : normal;
|
357 |
-
background : #
|
358 |
padding-left : 65px;
|
359 |
padding-right : 15px;
|
360 |
width : 150px;
|
@@ -520,7 +333,7 @@
|
|
520 |
}
|
521 |
|
522 |
.yit-container.plugin-licence-activation table tbody tr {
|
523 |
-
background-color : #
|
524 |
}
|
525 |
|
526 |
.yit-container.plugin-licence-activation table thead tr th {
|
@@ -659,8 +472,8 @@
|
|
659 |
width : 6em;
|
660 |
}
|
661 |
|
662 |
-
#wpwrap h2.nav-tab-wrapper
|
663 |
-
border-bottom: 1px solid #ccc;
|
664 |
}
|
665 |
|
666 |
/* === YIT FRAMEWORK === */
|
@@ -671,14 +484,41 @@
|
|
671 |
}
|
672 |
|
673 |
/* === Panel Content and Container === */
|
674 |
-
.yit-admin-panel-container{
|
675 |
-
position:relative;
|
676 |
}
|
|
|
677 |
.yit-admin-panel-content-wrap {
|
678 |
width : 100%;
|
679 |
display : block;
|
680 |
}
|
681 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
682 |
/* === Responsive === */
|
683 |
|
684 |
@media (max-width : 767px) {
|
6 |
* It is also available through the world-wide-web at this URL:
|
7 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
8 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
.plugin-option tr {
|
10 |
border-bottom : 1px solid #ccc;
|
11 |
}
|
21 |
float : left;
|
22 |
}
|
23 |
|
24 |
+
.plugin-option .form-table > tbody > tr > td {
|
25 |
padding : 25px 10px;
|
26 |
}
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
.ie8 .yit_options select,
|
29 |
.ie8 .yit-options select {
|
30 |
height : 26px;
|
31 |
}
|
32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
/* Style to woocommerce panel*/
|
34 |
|
35 |
+
#plugin-fw-wc, #yith-plugin-fw-panel {
|
36 |
padding-top : 20px;
|
37 |
}
|
38 |
|
39 |
+
#plugin-fw-wc table.form-table, #yith-plugin-fw-panel table.form-table {
|
40 |
background-color : #fff;
|
41 |
margin-bottom : 20px;
|
42 |
}
|
43 |
|
44 |
+
#plugin-fw-wc table.form-table th, #yith-plugin-fw-panel table.form-table th {
|
45 |
padding : 20px;
|
46 |
}
|
47 |
|
48 |
+
#plugin-fw-wc h3, #yith-plugin-fw-panel h3 {
|
49 |
padding : 0px 10px 10px;
|
50 |
border-bottom : 1px solid #eee;
|
51 |
}
|
52 |
|
53 |
/* === VIDEO BOX === */
|
|
|
54 |
.yith-videobox-wrapper {
|
55 |
padding-top : 20px;
|
56 |
}
|
125 |
}
|
126 |
|
127 |
.yit-plugin-changelog {
|
128 |
+
height : calc(100% - 15px);
|
129 |
+
width : calc(100% - 15px);
|
130 |
+
overflow-x : hidden;
|
131 |
+
overflow-y : auto;
|
132 |
z-index : 999;
|
133 |
+
background : #fcfcfc;
|
134 |
}
|
135 |
|
136 |
/* === Plugins Licence Activation === */
|
167 |
.yit-container.plugin-licence-activation .message {
|
168 |
display : none;
|
169 |
line-height : normal;
|
170 |
+
background : #fff url(../images/licence-error.png) 15px center no-repeat;
|
171 |
padding-left : 65px;
|
172 |
padding-right : 15px;
|
173 |
width : 150px;
|
333 |
}
|
334 |
|
335 |
.yit-container.plugin-licence-activation table tbody tr {
|
336 |
+
background-color : #fff;
|
337 |
}
|
338 |
|
339 |
.yit-container.plugin-licence-activation table thead tr th {
|
472 |
width : 6em;
|
473 |
}
|
474 |
|
475 |
+
#wpwrap h2.nav-tab-wrapper, #wpbody-content h2.nav-tab-wrapper {
|
476 |
+
border-bottom : 1px solid #ccc;
|
477 |
}
|
478 |
|
479 |
/* === YIT FRAMEWORK === */
|
484 |
}
|
485 |
|
486 |
/* === Panel Content and Container === */
|
487 |
+
.yit-admin-panel-container {
|
488 |
+
position : relative;
|
489 |
}
|
490 |
+
|
491 |
.yit-admin-panel-content-wrap {
|
492 |
width : 100%;
|
493 |
display : block;
|
494 |
}
|
495 |
|
496 |
+
.yith-disabled {
|
497 |
+
opacity : 0.3;
|
498 |
+
pointer-events : none;
|
499 |
+
}
|
500 |
+
|
501 |
+
.yith-plugin-fw-select,
|
502 |
+
.yith-plugin-fw-slider-container,
|
503 |
+
.yith-plugin-fw-text-input,
|
504 |
+
.yith-plugin-fw-text-array-table,
|
505 |
+
.yith-plugin-fw-textarea {
|
506 |
+
width : 400px;
|
507 |
+
max-width : 100%;
|
508 |
+
}
|
509 |
+
|
510 |
+
.yith-plugin-fw-text-array-table input {
|
511 |
+
width : 100%;
|
512 |
+
}
|
513 |
+
|
514 |
+
.yith-plugin-fw-panel-wc-row.preview {
|
515 |
+
float : none;
|
516 |
+
}
|
517 |
+
|
518 |
+
.yith-plugin-fw-panel .subsubsub {
|
519 |
+
margin : 0;
|
520 |
+
}
|
521 |
+
|
522 |
/* === Responsive === */
|
523 |
|
524 |
@media (max-width : 767px) {
|
plugin-fw/assets/css/yit-upgrader.css
CHANGED
@@ -9,6 +9,10 @@
|
|
9 |
}
|
10 |
|
11 |
.yit-plugin-changelog {
|
|
|
|
|
|
|
|
|
|
|
12 |
background: #fcfcfc;
|
13 |
-
height: 97%;
|
14 |
}
|
9 |
}
|
10 |
|
11 |
.yit-plugin-changelog {
|
12 |
+
height : calc(100% - 15px);
|
13 |
+
width : calc(100% - 15px);
|
14 |
+
overflow-x : hidden;
|
15 |
+
overflow-y : auto;
|
16 |
+
z-index : 999;
|
17 |
background: #fcfcfc;
|
|
|
18 |
}
|
plugin-fw/assets/css/yith-fields.css
ADDED
@@ -0,0 +1,334 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.yith-plugin-fw span.description {
|
2 |
+
display : block;
|
3 |
+
margin-top : 5px;
|
4 |
+
font-size : 12px;
|
5 |
+
color : #777;
|
6 |
+
font-style : italic;
|
7 |
+
clear : both;
|
8 |
+
}
|
9 |
+
|
10 |
+
.yith-disabled {
|
11 |
+
opacity : 0.3;
|
12 |
+
pointer-events : none;
|
13 |
+
}
|
14 |
+
|
15 |
+
.yith-plugin-fw-field-wrapper:not(.yith-plugin-fw-title-field-wrapper) {
|
16 |
+
display : block;
|
17 |
+
width : 100%;
|
18 |
+
}
|
19 |
+
|
20 |
+
.yith-plugin-fw-field-wrapper span.desc {
|
21 |
+
display : block;
|
22 |
+
width : 100%;
|
23 |
+
}
|
24 |
+
|
25 |
+
.yith-plugin-fw-title-field-wrapper h3.title {
|
26 |
+
width : 100%;
|
27 |
+
}
|
28 |
+
|
29 |
+
.the-metabox .yith-plugin-fw-title-field-wrapper h3.title {
|
30 |
+
float : left;
|
31 |
+
}
|
32 |
+
|
33 |
+
.yith-plugin-fw input[type=email],
|
34 |
+
.yith-plugin-fw input[type=number],
|
35 |
+
.yith-plugin-fw input[type=text]:not(.select2-search__field):not(.wp-color-picker),
|
36 |
+
.yith-plugin-fw select,
|
37 |
+
.woocommerce .yith-plugin-fw table.form-table select {
|
38 |
+
width : 400px;
|
39 |
+
max-width : 100%;
|
40 |
+
height : 30px;
|
41 |
+
padding : 5px;
|
42 |
+
}
|
43 |
+
|
44 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=text].colorpick,
|
45 |
+
.yith-plugin-fw input[type=text].colorpick {
|
46 |
+
width : 6em;
|
47 |
+
}
|
48 |
+
|
49 |
+
.woocommerce .yith-plugin-fw input[type=text].select2-search__field {
|
50 |
+
margin : 10px 0 0 2px;
|
51 |
+
padding : 0;
|
52 |
+
}
|
53 |
+
|
54 |
+
.yith-plugin-fw textarea {
|
55 |
+
width : 400px;
|
56 |
+
max-width : 100%;
|
57 |
+
padding : 5px;
|
58 |
+
}
|
59 |
+
|
60 |
+
.yith-plugin-fw input[type=email],
|
61 |
+
.yith-plugin-fw input[type=number],
|
62 |
+
.yith-plugin-fw input[type=text]:not(.select2-search__field) {
|
63 |
+
padding : 5px 10px;
|
64 |
+
}
|
65 |
+
|
66 |
+
/* ------------- ICONS ------------- */
|
67 |
+
.yit-icons-manager-wrapper {
|
68 |
+
width : 100%;
|
69 |
+
max-width : 400px;
|
70 |
+
}
|
71 |
+
|
72 |
+
.yit-icons-manager-text {
|
73 |
+
width : 100%;
|
74 |
+
}
|
75 |
+
|
76 |
+
.yit-icons-manager-icon-text {
|
77 |
+
width : calc(100% - 35px) !important;
|
78 |
+
height : 30px;
|
79 |
+
float : left;
|
80 |
+
margin : 0;
|
81 |
+
}
|
82 |
+
|
83 |
+
.yit-icons-manager-icon-preview {
|
84 |
+
width : 30px;
|
85 |
+
height : 30px;
|
86 |
+
margin-right : 5px;
|
87 |
+
float : left;
|
88 |
+
padding-top : 6px;
|
89 |
+
box-sizing : border-box;
|
90 |
+
text-align : center;
|
91 |
+
background : #f1f1f1;
|
92 |
+
}
|
93 |
+
|
94 |
+
.yit-icons-manager-list-wrapper {
|
95 |
+
margin : 10px 0;
|
96 |
+
box-shadow : 0 0 0 1px #ddd;
|
97 |
+
}
|
98 |
+
|
99 |
+
ul.yit-icons-manager-list {
|
100 |
+
width : 100%;
|
101 |
+
height : 300px;
|
102 |
+
overflow-y : scroll;
|
103 |
+
margin : 0;
|
104 |
+
}
|
105 |
+
|
106 |
+
ul.yit-icons-manager-list li {
|
107 |
+
float : left;
|
108 |
+
width : 30px;
|
109 |
+
height : 30px;
|
110 |
+
padding-top : 6px;
|
111 |
+
box-sizing : border-box;
|
112 |
+
text-align : center;
|
113 |
+
background : #f1f1f1;
|
114 |
+
margin : 1px;
|
115 |
+
cursor : pointer;
|
116 |
+
}
|
117 |
+
|
118 |
+
ul.yit-icons-manager-list li:hover {
|
119 |
+
background : #c5dcf6;
|
120 |
+
}
|
121 |
+
|
122 |
+
ul.yit-icons-manager-list li.active {
|
123 |
+
background : #d4f0ff;
|
124 |
+
}
|
125 |
+
|
126 |
+
.yit-icons-manager-action-set-default {
|
127 |
+
margin-bottom : 0;
|
128 |
+
}
|
129 |
+
|
130 |
+
.yit-icons-manager-default-icon-preview {
|
131 |
+
height : 100%;
|
132 |
+
display : inline-block;
|
133 |
+
padding-left : 10px;
|
134 |
+
border-left : 1px solid #ccc;
|
135 |
+
margin-left : 10px;
|
136 |
+
}
|
137 |
+
|
138 |
+
/* ------- Text Array ------- */
|
139 |
+
.yith-plugin-fw-text-array-table td {
|
140 |
+
padding : 1px;
|
141 |
+
}
|
142 |
+
|
143 |
+
.yith-plugin-fw-text-array-table input[type=text],
|
144 |
+
.woocommerce table.form-table table.yith-plugin-fw-text-array-table input[type=text] {
|
145 |
+
width : 100%;
|
146 |
+
}
|
147 |
+
|
148 |
+
/* ------- Image Gallery ------- */
|
149 |
+
.yith-plugin-fw .image-gallery ul li {
|
150 |
+
display : inline-block;
|
151 |
+
width : 80px;
|
152 |
+
margin-left : 10px;
|
153 |
+
position : relative;
|
154 |
+
}
|
155 |
+
|
156 |
+
.yith-plugin-fw .image-gallery ul li img {
|
157 |
+
width : 80px;
|
158 |
+
border : 1px solid #ccc;
|
159 |
+
}
|
160 |
+
|
161 |
+
.yith-plugin-fw .image-gallery ul li ul {
|
162 |
+
position : absolute;
|
163 |
+
top : -6px;
|
164 |
+
right : -1px;
|
165 |
+
width : 20px;
|
166 |
+
height : 20px;
|
167 |
+
}
|
168 |
+
|
169 |
+
.yith-plugin-fw .image-gallery ul a.delete {
|
170 |
+
background : url(../images/x.png) no-repeat;
|
171 |
+
width : 20px;
|
172 |
+
height : 20px;
|
173 |
+
display : block;
|
174 |
+
text-indent : -99999px;
|
175 |
+
}
|
176 |
+
|
177 |
+
/* ------- OnOff ------- */
|
178 |
+
.yith-plugin-fw-onoff-container input {
|
179 |
+
display : none;
|
180 |
+
}
|
181 |
+
|
182 |
+
.yith-plugin-fw-onoff-container input + span {
|
183 |
+
cursor : pointer;
|
184 |
+
text-indent : -9999px;
|
185 |
+
display : block;
|
186 |
+
width : 36px;
|
187 |
+
height : 20px;
|
188 |
+
background : #a4a4a4;
|
189 |
+
border-radius : 24px;
|
190 |
+
position : relative;
|
191 |
+
transition : all 0.3s;
|
192 |
+
}
|
193 |
+
|
194 |
+
.yith-plugin-fw-onoff-container input + span:before {
|
195 |
+
content : '';
|
196 |
+
background : #fff;
|
197 |
+
width : 16px;
|
198 |
+
height : 16px;
|
199 |
+
border-radius : 50%;
|
200 |
+
position : absolute;
|
201 |
+
top : 2px;
|
202 |
+
left : 2px;
|
203 |
+
transition : all 0.3s;
|
204 |
+
}
|
205 |
+
|
206 |
+
.yith-plugin-fw-onoff-container input:checked + span,
|
207 |
+
.yith-plugin-fw-onoff-container input.onoffchecked + span {
|
208 |
+
background : #0073aa;
|
209 |
+
}
|
210 |
+
|
211 |
+
.yith-plugin-fw-onoff-container input:checked + span:before,
|
212 |
+
.yith-plugin-fw-onoff-container input.onoffchecked + span:before {
|
213 |
+
left : 18px;
|
214 |
+
}
|
215 |
+
|
216 |
+
/* ------- Preview ------- */
|
217 |
+
.yith-plugin-fw-preview-field {
|
218 |
+
max-height : 200px;
|
219 |
+
}
|
220 |
+
|
221 |
+
/* ------- Sidebar Layout ------- */
|
222 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] {
|
223 |
+
display : none;
|
224 |
+
width : 0px;
|
225 |
+
}
|
226 |
+
|
227 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"]:first-child {
|
228 |
+
margin-right : -2px;
|
229 |
+
}
|
230 |
+
|
231 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] + img {
|
232 |
+
border : 2px solid #fff;
|
233 |
+
padding : 1px;
|
234 |
+
}
|
235 |
+
|
236 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] + img:hover {
|
237 |
+
cursor : pointer;
|
238 |
+
}
|
239 |
+
|
240 |
+
.yith-plugin-fw-sidebar-layout input[checked] + img {
|
241 |
+
border : 2px solid #f2ad35;
|
242 |
+
padding : 1px;
|
243 |
+
}
|
244 |
+
|
245 |
+
.yith-plugin-fw-sidebar-layout select {
|
246 |
+
vertical-align : 12px;
|
247 |
+
}
|
248 |
+
|
249 |
+
.yit-admin-panel-content-wrap .yith-plugin-fw-sidebar-layout label {
|
250 |
+
font-weight : bold;
|
251 |
+
width : 200px;
|
252 |
+
float : left;
|
253 |
+
line-height : 23px;
|
254 |
+
margin-left : -230px;
|
255 |
+
}
|
256 |
+
|
257 |
+
/* ------- Slider ------- */
|
258 |
+
.yith-plugin-fw .slider {
|
259 |
+
padding-top : 20px;
|
260 |
+
}
|
261 |
+
|
262 |
+
.ui-slider .minCaption {
|
263 |
+
position : absolute;
|
264 |
+
right : 95%;
|
265 |
+
top : -6px;
|
266 |
+
margin-right : 11px;
|
267 |
+
}
|
268 |
+
|
269 |
+
.ui-slider .maxCaption {
|
270 |
+
position : absolute;
|
271 |
+
left : 95%;
|
272 |
+
top : -6px;
|
273 |
+
margin-left : 20px;
|
274 |
+
}
|
275 |
+
|
276 |
+
.ui-slider-horizontal .ui-slider-handle {
|
277 |
+
background : #fff;
|
278 |
+
border : 0px !important;
|
279 |
+
top : -12px !important;
|
280 |
+
border-radius : 50%;
|
281 |
+
width : 27px !important;
|
282 |
+
height : 27px !important;
|
283 |
+
box-sizing : border-box;
|
284 |
+
box-shadow : 0 1px 7px -1px rgba(0, 0, 0, 0.5);
|
285 |
+
font-size : 13px;
|
286 |
+
padding : 6px 0;
|
287 |
+
font-weight : 600;
|
288 |
+
color : #555;
|
289 |
+
text-align : center;
|
290 |
+
}
|
291 |
+
|
292 |
+
.ui-slider.ui-widget-content {
|
293 |
+
background : #ccc;
|
294 |
+
border : none !important;
|
295 |
+
height : 3px !important;
|
296 |
+
border-radius : 3px !important;
|
297 |
+
width : 90%;
|
298 |
+
margin : 15px 5% 20px 5%;
|
299 |
+
}
|
300 |
+
|
301 |
+
.iris-slider-offset.ui-slider.ui-widget-content {
|
302 |
+
background : transparent !important;
|
303 |
+
height : auto !important;
|
304 |
+
}
|
305 |
+
|
306 |
+
.ui-slider.ui-widget-content .ui-widget-header {
|
307 |
+
background : #4b93ff;
|
308 |
+
left : 0px !important;
|
309 |
+
-webkit-border-radius : 3px;
|
310 |
+
-moz-border-radius : 3px;
|
311 |
+
-khtml-border-radius : 3px;
|
312 |
+
border-radius : 3px;
|
313 |
+
}
|
314 |
+
|
315 |
+
/* ------- Select2 ------- */
|
316 |
+
.yith-plugin-fw-select2-wrapper {
|
317 |
+
width : 400px;
|
318 |
+
}
|
319 |
+
|
320 |
+
/* ------- Textarea ------- */
|
321 |
+
.yith-plugin-fw-textarea-editor-field-wrapper {
|
322 |
+
max-width : 1000px;
|
323 |
+
clear : both;
|
324 |
+
}
|
325 |
+
|
326 |
+
.yith-plugin-fw-textarea-editor-field-wrapper textarea.wp-editor-area,
|
327 |
+
.woocommerce table.form-table .yith-plugin-fw-textarea-editor-field-wrapper textarea.wp-editor-area{
|
328 |
+
width : 100%;
|
329 |
+
}
|
330 |
+
|
331 |
+
/* ------- Buttons ------- */
|
332 |
+
.yith-plugin-fw-buttons-field-wrapper {
|
333 |
+
margin-top : 7px;
|
334 |
+
}
|
plugin-fw/assets/images/chosen/chosen-sprite.png
DELETED
Binary file
|
plugin-fw/assets/images/chosen/chosen-sprite@2x.png
DELETED
Binary file
|
plugin-fw/assets/images/off.png
DELETED
Binary file
|
plugin-fw/assets/images/on.png
DELETED
Binary file
|
plugin-fw/assets/images/select.png
DELETED
Binary file
|
plugin-fw/assets/images/slider/grey.gif
DELETED
Binary file
|
plugin-fw/assets/images/slider/handle.png
DELETED
Binary file
|
plugin-fw/assets/images/slider/orange.gif
DELETED
Binary file
|
plugin-fw/assets/images/slider/tooltip.png
DELETED
Binary file
|
plugin-fw/assets/js/chosen/ajax-chosen.jquery.js
DELETED
@@ -1,81 +0,0 @@
|
|
1 |
-
// Generated by CoffeeScript 1.3.1
|
2 |
-
|
3 |
-
(function($) {
|
4 |
-
return $.fn.ajaxChosen = function(settings, callback) {
|
5 |
-
var chosenXhr, defaultOptions, options, select;
|
6 |
-
if (settings == null) {
|
7 |
-
settings = {};
|
8 |
-
}
|
9 |
-
if (callback == null) {
|
10 |
-
callback = function() {};
|
11 |
-
}
|
12 |
-
defaultOptions = {
|
13 |
-
minTermLength: 3,
|
14 |
-
afterTypeDelay: 500,
|
15 |
-
jsonTermKey: "term"
|
16 |
-
};
|
17 |
-
select = this;
|
18 |
-
chosenXhr = null;
|
19 |
-
options = $.extend({}, defaultOptions, settings);
|
20 |
-
this.chosen();
|
21 |
-
return this.each(function() {
|
22 |
-
return $(this).next('.chosen-container').find(".search-field > input, .chosen-search > input").bind('keyup', function() {
|
23 |
-
var field, msg, success, val;
|
24 |
-
val = $.trim($(this).attr('value'));
|
25 |
-
msg = val.length < options.minTermLength ? "Keep typing..." : "Looking for '" + val + "'";
|
26 |
-
select.next('.chosen-container').find('.no-results').text(msg);
|
27 |
-
if (val === $(this).data('prevVal')) {
|
28 |
-
return false;
|
29 |
-
}
|
30 |
-
$(this).data('prevVal', val);
|
31 |
-
if (this.timer) {
|
32 |
-
clearTimeout(this.timer);
|
33 |
-
}
|
34 |
-
if (val.length < options.minTermLength) {
|
35 |
-
return false;
|
36 |
-
}
|
37 |
-
field = $(this);
|
38 |
-
if (!(options.data != null)) {
|
39 |
-
options.data = {};
|
40 |
-
}
|
41 |
-
options.data[options.jsonTermKey] = val;
|
42 |
-
if (options.dataCallback != null) {
|
43 |
-
options.data = options.dataCallback(options.data);
|
44 |
-
}
|
45 |
-
success = options.success;
|
46 |
-
options.success = function(data) {
|
47 |
-
var items, selected_values;
|
48 |
-
if (!(data != null)) {
|
49 |
-
return;
|
50 |
-
}
|
51 |
-
selected_values = [];
|
52 |
-
select.find('option').each(function() {
|
53 |
-
if (!$(this).is(":selected")) {
|
54 |
-
return $(this).remove();
|
55 |
-
} else {
|
56 |
-
return selected_values.push($(this).val() + "-" + $(this).text());
|
57 |
-
}
|
58 |
-
});
|
59 |
-
items = callback(data);
|
60 |
-
$.each(items, function(value, text) {
|
61 |
-
if ($.inArray(value + "-" + text, selected_values) === -1) {
|
62 |
-
return $("<option />").attr('value', value).html(text).appendTo(select);
|
63 |
-
}
|
64 |
-
});
|
65 |
-
select.trigger("chosen:updated");
|
66 |
-
if (success != null) {
|
67 |
-
success(data);
|
68 |
-
}
|
69 |
-
field.attr('value', val);
|
70 |
-
return field.css('width', 'auto');
|
71 |
-
};
|
72 |
-
return this.timer = setTimeout(function() {
|
73 |
-
if (chosenXhr) {
|
74 |
-
chosenXhr.abort();
|
75 |
-
}
|
76 |
-
return chosenXhr = $.ajax(options);
|
77 |
-
}, options.afterTypeDelay);
|
78 |
-
});
|
79 |
-
});
|
80 |
-
};
|
81 |
-
})(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/js/chosen/ajax-chosen.jquery.min.js
DELETED
@@ -1,2 +0,0 @@
|
|
1 |
-
// Generated by CoffeeScript 1.3.1
|
2 |
-
(function(e){return e.fn.ajaxChosen=function(t,n){var r,i,s,o;t==null&&(t={});n==null&&(n=function(){});i={minTermLength:3,afterTypeDelay:500,jsonTermKey:"term"};o=this;r=null;s=e.extend({},i,t);this.chosen();return this.each(function(){return e(this).next(".chosen-container").find(".search-field > input, .chosen-search > input").bind("keyup",function(){var t,i,u,a;a=e.trim(e(this).attr("value"));i=a.length<s.minTermLength?"Keep typing...":"Looking for '"+a+"'";o.next(".chosen-container").find(".no-results").text(i);if(a===e(this).data("prevVal"))return!1;e(this).data("prevVal",a);this.timer&&clearTimeout(this.timer);if(a.length<s.minTermLength)return!1;t=e(this);s.data==null&&(s.data={});s.data[s.jsonTermKey]=a;s.dataCallback!=null&&(s.data=s.dataCallback(s.data));u=s.success;s.success=function(r){var i,s;if(r==null)return;s=[];o.find("option").each(function(){return e(this).is(":selected")?s.push(e(this).val()+"-"+e(this).text()):e(this).remove()});i=n(r);e.each(i,function(t,n){if(e.inArray(t+"-"+n,s)===-1)return e("<option />").attr("value",t).html(n).appendTo(o)});o.trigger("chosen:updated");u!=null&&u(r);t.attr("value",a);return t.css("width","auto")};return this.timer=setTimeout(function(){r&&r.abort();return r=e.ajax(s)},s.afterTypeDelay)})})}})(jQuery);
|
|
|
|
plugin-fw/assets/js/chosen/chosen.jquery.js
DELETED
@@ -1,1211 +0,0 @@
|
|
1 |
-
/*!
|
2 |
-
Chosen, a Select Box Enhancer for jQuery and Prototype
|
3 |
-
by Patrick Filler for Harvest, http://getharvest.com
|
4 |
-
|
5 |
-
Version 1.1.0
|
6 |
-
Full source at https://github.com/harvesthq/chosen
|
7 |
-
Copyright (c) 2011 Harvest http://getharvest.com
|
8 |
-
|
9 |
-
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
10 |
-
This file is generated by `grunt build`, do not edit it by hand.
|
11 |
-
*/
|
12 |
-
|
13 |
-
(function() {
|
14 |
-
var $, AbstractChosen, Chosen, SelectParser, _ref,
|
15 |
-
__hasProp = {}.hasOwnProperty,
|
16 |
-
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
17 |
-
|
18 |
-
SelectParser = (function() {
|
19 |
-
function SelectParser() {
|
20 |
-
this.options_index = 0;
|
21 |
-
this.parsed = [];
|
22 |
-
}
|
23 |
-
|
24 |
-
SelectParser.prototype.add_node = function(child) {
|
25 |
-
if (child.nodeName.toUpperCase() === "OPTGROUP") {
|
26 |
-
return this.add_group(child);
|
27 |
-
} else {
|
28 |
-
return this.add_option(child);
|
29 |
-
}
|
30 |
-
};
|
31 |
-
|
32 |
-
SelectParser.prototype.add_group = function(group) {
|
33 |
-
var group_position, option, _i, _len, _ref, _results;
|
34 |
-
group_position = this.parsed.length;
|
35 |
-
this.parsed.push({
|
36 |
-
array_index: group_position,
|
37 |
-
group: true,
|
38 |
-
label: this.escapeExpression(group.label),
|
39 |
-
children: 0,
|
40 |
-
disabled: group.disabled
|
41 |
-
});
|
42 |
-
_ref = group.childNodes;
|
43 |
-
_results = [];
|
44 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
45 |
-
option = _ref[_i];
|
46 |
-
_results.push(this.add_option(option, group_position, group.disabled));
|
47 |
-
}
|
48 |
-
return _results;
|
49 |
-
};
|
50 |
-
|
51 |
-
SelectParser.prototype.add_option = function(option, group_position, group_disabled) {
|
52 |
-
if (option.nodeName.toUpperCase() === "OPTION") {
|
53 |
-
if (option.text !== "") {
|
54 |
-
if (group_position != null) {
|
55 |
-
this.parsed[group_position].children += 1;
|
56 |
-
}
|
57 |
-
this.parsed.push({
|
58 |
-
array_index: this.parsed.length,
|
59 |
-
options_index: this.options_index,
|
60 |
-
value: option.value,
|
61 |
-
text: option.text,
|
62 |
-
html: option.innerHTML,
|
63 |
-
selected: option.selected,
|
64 |
-
disabled: group_disabled === true ? group_disabled : option.disabled,
|
65 |
-
group_array_index: group_position,
|
66 |
-
classes: option.className,
|
67 |
-
style: option.style.cssText
|
68 |
-
});
|
69 |
-
} else {
|
70 |
-
this.parsed.push({
|
71 |
-
array_index: this.parsed.length,
|
72 |
-
options_index: this.options_index,
|
73 |
-
empty: true
|
74 |
-
});
|
75 |
-
}
|
76 |
-
return this.options_index += 1;
|
77 |
-
}
|
78 |
-
};
|
79 |
-
|
80 |
-
SelectParser.prototype.escapeExpression = function(text) {
|
81 |
-
var map, unsafe_chars;
|
82 |
-
if ((text == null) || text === false) {
|
83 |
-
return "";
|
84 |
-
}
|
85 |
-
if (!/[\&\<\>\"\'\`]/.test(text)) {
|
86 |
-
return text;
|
87 |
-
}
|
88 |
-
map = {
|
89 |
-
"<": "<",
|
90 |
-
">": ">",
|
91 |
-
'"': """,
|
92 |
-
"'": "'",
|
93 |
-
"`": "`"
|
94 |
-
};
|
95 |
-
unsafe_chars = /&(?!\w+;)|[\<\>\"\'\`]/g;
|
96 |
-
return text.replace(unsafe_chars, function(chr) {
|
97 |
-
return map[chr] || "&";
|
98 |
-
});
|
99 |
-
};
|
100 |
-
|
101 |
-
return SelectParser;
|
102 |
-
|
103 |
-
})();
|
104 |
-
|
105 |
-
SelectParser.select_to_array = function(select) {
|
106 |
-
var child, parser, _i, _len, _ref;
|
107 |
-
parser = new SelectParser();
|
108 |
-
_ref = select.childNodes;
|
109 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
110 |
-
child = _ref[_i];
|
111 |
-
parser.add_node(child);
|
112 |
-
}
|
113 |
-
return parser.parsed;
|
114 |
-
};
|
115 |
-
|
116 |
-
AbstractChosen = (function() {
|
117 |
-
function AbstractChosen(form_field, options) {
|
118 |
-
this.form_field = form_field;
|
119 |
-
this.options = options != null ? options : {};
|
120 |
-
if (!AbstractChosen.browser_is_supported()) {
|
121 |
-
return;
|
122 |
-
}
|
123 |
-
this.is_multiple = this.form_field.multiple;
|
124 |
-
this.set_default_text();
|
125 |
-
this.set_default_values();
|
126 |
-
this.setup();
|
127 |
-
this.set_up_html();
|
128 |
-
this.register_observers();
|
129 |
-
}
|
130 |
-
|
131 |
-
AbstractChosen.prototype.set_default_values = function() {
|
132 |
-
var _this = this;
|
133 |
-
this.click_test_action = function(evt) {
|
134 |
-
return _this.test_active_click(evt);
|
135 |
-
};
|
136 |
-
this.activate_action = function(evt) {
|
137 |
-
return _this.activate_field(evt);
|
138 |
-
};
|
139 |
-
this.active_field = false;
|
140 |
-
this.mouse_on_container = false;
|
141 |
-
this.results_showing = false;
|
142 |
-
this.result_highlighted = null;
|
143 |
-
this.allow_single_deselect = (this.options.allow_single_deselect != null) && (this.form_field.options[0] != null) && this.form_field.options[0].text === "" ? this.options.allow_single_deselect : false;
|
144 |
-
this.disable_search_threshold = this.options.disable_search_threshold || 0;
|
145 |
-
this.disable_search = this.options.disable_search || false;
|
146 |
-
this.enable_split_word_search = this.options.enable_split_word_search != null ? this.options.enable_split_word_search : true;
|
147 |
-
this.group_search = this.options.group_search != null ? this.options.group_search : true;
|
148 |
-
this.search_contains = this.options.search_contains || false;
|
149 |
-
this.single_backstroke_delete = this.options.single_backstroke_delete != null ? this.options.single_backstroke_delete : true;
|
150 |
-
this.max_selected_options = this.options.max_selected_options || Infinity;
|
151 |
-
this.inherit_select_classes = this.options.inherit_select_classes || false;
|
152 |
-
this.display_selected_options = this.options.display_selected_options != null ? this.options.display_selected_options : true;
|
153 |
-
return this.display_disabled_options = this.options.display_disabled_options != null ? this.options.display_disabled_options : true;
|
154 |
-
};
|
155 |
-
|
156 |
-
AbstractChosen.prototype.set_default_text = function() {
|
157 |
-
if (this.form_field.getAttribute("data-placeholder")) {
|
158 |
-
this.default_text = this.form_field.getAttribute("data-placeholder");
|
159 |
-
} else if (this.is_multiple) {
|
160 |
-
this.default_text = this.options.placeholder_text_multiple || this.options.placeholder_text || AbstractChosen.default_multiple_text;
|
161 |
-
} else {
|
162 |
-
this.default_text = this.options.placeholder_text_single || this.options.placeholder_text || AbstractChosen.default_single_text;
|
163 |
-
}
|
164 |
-
return this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || AbstractChosen.default_no_result_text;
|
165 |
-
};
|
166 |
-
|
167 |
-
AbstractChosen.prototype.mouse_enter = function() {
|
168 |
-
return this.mouse_on_container = true;
|
169 |
-
};
|
170 |
-
|
171 |
-
AbstractChosen.prototype.mouse_leave = function() {
|
172 |
-
return this.mouse_on_container = false;
|
173 |
-
};
|
174 |
-
|
175 |
-
AbstractChosen.prototype.input_focus = function(evt) {
|
176 |
-
var _this = this;
|
177 |
-
if (this.is_multiple) {
|
178 |
-
if (!this.active_field) {
|
179 |
-
return setTimeout((function() {
|
180 |
-
return _this.container_mousedown();
|
181 |
-
}), 50);
|
182 |
-
}
|
183 |
-
} else {
|
184 |
-
if (!this.active_field) {
|
185 |
-
return this.activate_field();
|
186 |
-
}
|
187 |
-
}
|
188 |
-
};
|
189 |
-
|
190 |
-
AbstractChosen.prototype.input_blur = function(evt) {
|
191 |
-
var _this = this;
|
192 |
-
if (!this.mouse_on_container) {
|
193 |
-
this.active_field = false;
|
194 |
-
return setTimeout((function() {
|
195 |
-
return _this.blur_test();
|
196 |
-
}), 100);
|
197 |
-
}
|
198 |
-
};
|
199 |
-
|
200 |
-
AbstractChosen.prototype.results_option_build = function(options) {
|
201 |
-
var content, data, _i, _len, _ref;
|
202 |
-
content = '';
|
203 |
-
_ref = this.results_data;
|
204 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
205 |
-
data = _ref[_i];
|
206 |
-
if (data.group) {
|
207 |
-
content += this.result_add_group(data);
|
208 |
-
} else {
|
209 |
-
content += this.result_add_option(data);
|
210 |
-
}
|
211 |
-
if (options != null ? options.first : void 0) {
|
212 |
-
if (data.selected && this.is_multiple) {
|
213 |
-
this.choice_build(data);
|
214 |
-
} else if (data.selected && !this.is_multiple) {
|
215 |
-
this.single_set_selected_text(data.text);
|
216 |
-
}
|
217 |
-
}
|
218 |
-
}
|
219 |
-
return content;
|
220 |
-
};
|
221 |
-
|
222 |
-
AbstractChosen.prototype.result_add_option = function(option) {
|
223 |
-
var classes, option_el;
|
224 |
-
if (!option.search_match) {
|
225 |
-
return '';
|
226 |
-
}
|
227 |
-
if (!this.include_option_in_results(option)) {
|
228 |
-
return '';
|
229 |
-
}
|
230 |
-
classes = [];
|
231 |
-
if (!option.disabled && !(option.selected && this.is_multiple)) {
|
232 |
-
classes.push("active-result");
|
233 |
-
}
|
234 |
-
if (option.disabled && !(option.selected && this.is_multiple)) {
|
235 |
-
classes.push("disabled-result");
|
236 |
-
}
|
237 |
-
if (option.selected) {
|
238 |
-
classes.push("result-selected");
|
239 |
-
}
|
240 |
-
if (option.group_array_index != null) {
|
241 |
-
classes.push("group-option");
|
242 |
-
}
|
243 |
-
if (option.classes !== "") {
|
244 |
-
classes.push(option.classes);
|
245 |
-
}
|
246 |
-
option_el = document.createElement("li");
|
247 |
-
option_el.className = classes.join(" ");
|
248 |
-
option_el.style.cssText = option.style;
|
249 |
-
option_el.setAttribute("data-option-array-index", option.array_index);
|
250 |
-
option_el.innerHTML = option.search_text;
|
251 |
-
return this.outerHTML(option_el);
|
252 |
-
};
|
253 |
-
|
254 |
-
AbstractChosen.prototype.result_add_group = function(group) {
|
255 |
-
var group_el;
|
256 |
-
if (!(group.search_match || group.group_match)) {
|
257 |
-
return '';
|
258 |
-
}
|
259 |
-
if (!(group.active_options > 0)) {
|
260 |
-
return '';
|
261 |
-
}
|
262 |
-
group_el = document.createElement("li");
|
263 |
-
group_el.className = "group-result";
|
264 |
-
group_el.innerHTML = group.search_text;
|
265 |
-
return this.outerHTML(group_el);
|
266 |
-
};
|
267 |
-
|
268 |
-
AbstractChosen.prototype.results_update_field = function() {
|
269 |
-
this.set_default_text();
|
270 |
-
if (!this.is_multiple) {
|
271 |
-
this.results_reset_cleanup();
|
272 |
-
}
|
273 |
-
this.result_clear_highlight();
|
274 |
-
this.results_build();
|
275 |
-
if (this.results_showing) {
|
276 |
-
return this.winnow_results();
|
277 |
-
}
|
278 |
-
};
|
279 |
-
|
280 |
-
AbstractChosen.prototype.reset_single_select_options = function() {
|
281 |
-
var result, _i, _len, _ref, _results;
|
282 |
-
_ref = this.results_data;
|
283 |
-
_results = [];
|
284 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
285 |
-
result = _ref[_i];
|
286 |
-
if (result.selected) {
|
287 |
-
_results.push(result.selected = false);
|
288 |
-
} else {
|
289 |
-
_results.push(void 0);
|
290 |
-
}
|
291 |
-
}
|
292 |
-
return _results;
|
293 |
-
};
|
294 |
-
|
295 |
-
AbstractChosen.prototype.results_toggle = function() {
|
296 |
-
if (this.results_showing) {
|
297 |
-
return this.results_hide();
|
298 |
-
} else {
|
299 |
-
return this.results_show();
|
300 |
-
}
|
301 |
-
};
|
302 |
-
|
303 |
-
AbstractChosen.prototype.results_search = function(evt) {
|
304 |
-
if (this.results_showing) {
|
305 |
-
return this.winnow_results();
|
306 |
-
} else {
|
307 |
-
return this.results_show();
|
308 |
-
}
|
309 |
-
};
|
310 |
-
|
311 |
-
AbstractChosen.prototype.winnow_results = function() {
|
312 |
-
var escapedSearchText, option, regex, regexAnchor, results, results_group, searchText, startpos, text, zregex, _i, _len, _ref;
|
313 |
-
this.no_results_clear();
|
314 |
-
results = 0;
|
315 |
-
searchText = this.get_search_text();
|
316 |
-
escapedSearchText = searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
|
317 |
-
regexAnchor = this.search_contains ? "" : "^";
|
318 |
-
regex = new RegExp(regexAnchor + escapedSearchText, 'i');
|
319 |
-
zregex = new RegExp(escapedSearchText, 'i');
|
320 |
-
_ref = this.results_data;
|
321 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
322 |
-
option = _ref[_i];
|
323 |
-
option.search_match = false;
|
324 |
-
results_group = null;
|
325 |
-
if (this.include_option_in_results(option)) {
|
326 |
-
if (option.group) {
|
327 |
-
option.group_match = false;
|
328 |
-
option.active_options = 0;
|
329 |
-
}
|
330 |
-
if ((option.group_array_index != null) && this.results_data[option.group_array_index]) {
|
331 |
-
results_group = this.results_data[option.group_array_index];
|
332 |
-
if (results_group.active_options === 0 && results_group.search_match) {
|
333 |
-
results += 1;
|
334 |
-
}
|
335 |
-
results_group.active_options += 1;
|
336 |
-
}
|
337 |
-
if (!(option.group && !this.group_search)) {
|
338 |
-
option.search_text = option.group ? option.label : option.html;
|
339 |
-
option.search_match = this.search_string_match(option.search_text, regex);
|
340 |
-
if (option.search_match && !option.group) {
|
341 |
-
results += 1;
|
342 |
-
}
|
343 |
-
if (option.search_match) {
|
344 |
-
if (searchText.length) {
|
345 |
-
startpos = option.search_text.search(zregex);
|
346 |
-
text = option.search_text.substr(0, startpos + searchText.length) + '</em>' + option.search_text.substr(startpos + searchText.length);
|
347 |
-
option.search_text = text.substr(0, startpos) + '<em>' + text.substr(startpos);
|
348 |
-
}
|
349 |
-
if (results_group != null) {
|
350 |
-
results_group.group_match = true;
|
351 |
-
}
|
352 |
-
} else if ((option.group_array_index != null) && this.results_data[option.group_array_index].search_match) {
|
353 |
-
option.search_match = true;
|
354 |
-
}
|
355 |
-
}
|
356 |
-
}
|
357 |
-
}
|
358 |
-
this.result_clear_highlight();
|
359 |
-
if (results < 1 && searchText.length) {
|
360 |
-
this.update_results_content("");
|
361 |
-
return this.no_results(searchText);
|
362 |
-
} else {
|
363 |
-
this.update_results_content(this.results_option_build());
|
364 |
-
return this.winnow_results_set_highlight();
|
365 |
-
}
|
366 |
-
};
|
367 |
-
|
368 |
-
AbstractChosen.prototype.search_string_match = function(search_string, regex) {
|
369 |
-
var part, parts, _i, _len;
|
370 |
-
if (regex.test(search_string)) {
|
371 |
-
return true;
|
372 |
-
} else if (this.enable_split_word_search && (search_string.indexOf(" ") >= 0 || search_string.indexOf("[") === 0)) {
|
373 |
-
parts = search_string.replace(/\[|\]/g, "").split(" ");
|
374 |
-
if (parts.length) {
|
375 |
-
for (_i = 0, _len = parts.length; _i < _len; _i++) {
|
376 |
-
part = parts[_i];
|
377 |
-
if (regex.test(part)) {
|
378 |
-
return true;
|
379 |
-
}
|
380 |
-
}
|
381 |
-
}
|
382 |
-
}
|
383 |
-
};
|
384 |
-
|
385 |
-
AbstractChosen.prototype.choices_count = function() {
|
386 |
-
var option, _i, _len, _ref;
|
387 |
-
if (this.selected_option_count != null) {
|
388 |
-
return this.selected_option_count;
|
389 |
-
}
|
390 |
-
this.selected_option_count = 0;
|
391 |
-
_ref = this.form_field.options;
|
392 |
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
393 |
-
option = _ref[_i];
|
394 |
-
if (option.selected) {
|
395 |
-
this.selected_option_count += 1;
|
396 |
-
}
|
397 |
-
}
|
398 |
-
return this.selected_option_count;
|
399 |
-
};
|
400 |
-
|
401 |
-
AbstractChosen.prototype.choices_click = function(evt) {
|
402 |
-
evt.preventDefault();
|
403 |
-
if (!(this.results_showing || this.is_disabled)) {
|
404 |
-
return this.results_show();
|
405 |
-
}
|
406 |
-
};
|
407 |
-
|
408 |
-
AbstractChosen.prototype.keyup_checker = function(evt) {
|
409 |
-
var stroke, _ref;
|
410 |
-
stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
|
411 |
-
this.search_field_scale();
|
412 |
-
switch (stroke) {
|
413 |
-
case 8:
|
414 |
-
if (this.is_multiple && this.backstroke_length < 1 && this.choices_count() > 0) {
|
415 |
-
return this.keydown_backstroke();
|
416 |
-
} else if (!this.pending_backstroke) {
|
417 |
-
this.result_clear_highlight();
|
418 |
-
return this.results_search();
|
419 |
-
}
|
420 |
-
break;
|
421 |
-
case 13:
|
422 |
-
evt.preventDefault();
|
423 |
-
if (this.results_showing) {
|
424 |
-
return this.result_select(evt);
|
425 |
-
}
|
426 |
-
break;
|
427 |
-
case 27:
|
428 |
-
if (this.results_showing) {
|
429 |
-
this.results_hide();
|
430 |
-
}
|
431 |
-
return true;
|
432 |
-
case 9:
|
433 |
-
case 38:
|
434 |
-
case 40:
|
435 |
-
case 16:
|
436 |
-
case 91:
|
437 |
-
case 17:
|
438 |
-
break;
|
439 |
-
default:
|
440 |
-
return this.results_search();
|
441 |
-
}
|
442 |
-
};
|
443 |
-
|
444 |
-
AbstractChosen.prototype.clipboard_event_checker = function(evt) {
|
445 |
-
var _this = this;
|
446 |
-
return setTimeout((function() {
|
447 |
-
return _this.results_search();
|
448 |
-
}), 50);
|
449 |
-
};
|
450 |
-
|
451 |
-
AbstractChosen.prototype.container_width = function() {
|
452 |
-
if (this.options.width != null) {
|
453 |
-
return this.options.width;
|
454 |
-
} else {
|
455 |
-
return "" + this.form_field.offsetWidth + "px";
|
456 |
-
}
|
457 |
-
};
|
458 |
-
|
459 |
-
AbstractChosen.prototype.include_option_in_results = function(option) {
|
460 |
-
if (this.is_multiple && (!this.display_selected_options && option.selected)) {
|
461 |
-
return false;
|
462 |
-
}
|
463 |
-
if (!this.display_disabled_options && option.disabled) {
|
464 |
-
return false;
|
465 |
-
}
|
466 |
-
if (option.empty) {
|
467 |
-
return false;
|
468 |
-
}
|
469 |
-
return true;
|
470 |
-
};
|
471 |
-
|
472 |
-
AbstractChosen.prototype.search_results_touchstart = function(evt) {
|
473 |
-
this.touch_started = true;
|
474 |
-
return this.search_results_mouseover(evt);
|
475 |
-
};
|
476 |
-
|
477 |
-
AbstractChosen.prototype.search_results_touchmove = function(evt) {
|
478 |
-
this.touch_started = false;
|
479 |
-
return this.search_results_mouseout(evt);
|
480 |
-
};
|
481 |
-
|
482 |
-
AbstractChosen.prototype.search_results_touchend = function(evt) {
|
483 |
-
if (this.touch_started) {
|
484 |
-
return this.search_results_mouseup(evt);
|
485 |
-
}
|
486 |
-
};
|
487 |
-
|
488 |
-
AbstractChosen.prototype.outerHTML = function(element) {
|
489 |
-
var tmp;
|
490 |
-
if (element.outerHTML) {
|
491 |
-
return element.outerHTML;
|
492 |
-
}
|
493 |
-
tmp = document.createElement("div");
|
494 |
-
tmp.appendChild(element);
|
495 |
-
return tmp.innerHTML;
|
496 |
-
};
|
497 |
-
|
498 |
-
AbstractChosen.browser_is_supported = function() {
|
499 |
-
if (window.navigator.appName === "Microsoft Internet Explorer") {
|
500 |
-
return document.documentMode >= 8;
|
501 |
-
}
|
502 |
-
if (/iP(od|hone)/i.test(window.navigator.userAgent)) {
|
503 |
-
return false;
|
504 |
-
}
|
505 |
-
if (/Android/i.test(window.navigator.userAgent)) {
|
506 |
-
if (/Mobile/i.test(window.navigator.userAgent)) {
|
507 |
-
return false;
|
508 |
-
}
|
509 |
-
}
|
510 |
-
return true;
|
511 |
-
};
|
512 |
-
|
513 |
-
AbstractChosen.default_multiple_text = "Select Some Options";
|
514 |
-
|
515 |
-
AbstractChosen.default_single_text = "Select an Option";
|
516 |
-
|
517 |
-
AbstractChosen.default_no_result_text = "No results match";
|
518 |
-
|
519 |
-
return AbstractChosen;
|
520 |
-
|
521 |
-
})();
|
522 |
-
|
523 |
-
$ = jQuery;
|
524 |
-
|
525 |
-
$.fn.extend({
|
526 |
-
chosen: function(options) {
|
527 |
-
if (!AbstractChosen.browser_is_supported()) {
|
528 |
-
return this;
|
529 |
-
}
|
530 |
-
return this.each(function(input_field) {
|
531 |
-
var $this, chosen;
|
532 |
-
$this = $(this);
|
533 |
-
chosen = $this.data('chosen');
|
534 |
-
if (options === 'destroy' && chosen) {
|
535 |
-
chosen.destroy();
|
536 |
-
} else if (!chosen) {
|
537 |
-
$this.data('chosen', new Chosen(this, options));
|
538 |
-
}
|
539 |
-
});
|
540 |
-
}
|
541 |
-
});
|
542 |
-
|
543 |
-
Chosen = (function(_super) {
|
544 |
-
__extends(Chosen, _super);
|
545 |
-
|
546 |
-
function Chosen() {
|
547 |
-
_ref = Chosen.__super__.constructor.apply(this, arguments);
|
548 |
-
return _ref;
|
549 |
-
}
|
550 |
-
|
551 |
-
Chosen.prototype.setup = function() {
|
552 |
-
this.form_field_jq = $(this.form_field);
|
553 |
-
this.current_selectedIndex = this.form_field.selectedIndex;
|
554 |
-
return this.is_rtl = this.form_field_jq.hasClass("chosen-rtl");
|
555 |
-
};
|
556 |
-
|
557 |
-
Chosen.prototype.set_up_html = function() {
|
558 |
-
var container_classes, container_props;
|
559 |
-
container_classes = ["chosen-container"];
|
560 |
-
container_classes.push("chosen-container-" + (this.is_multiple ? "multi" : "single"));
|
561 |
-
if (this.inherit_select_classes && this.form_field.className) {
|
562 |
-
container_classes.push(this.form_field.className);
|
563 |
-
}
|
564 |
-
if (this.is_rtl) {
|
565 |
-
container_classes.push("chosen-rtl");
|
566 |
-
}
|
567 |
-
container_props = {
|
568 |
-
'class': container_classes.join(' '),
|
569 |
-
'style': "width: " + (this.container_width()) + ";",
|
570 |
-
'title': this.form_field.title
|
571 |
-
};
|
572 |
-
if (this.form_field.id.length) {
|
573 |
-
container_props.id = this.form_field.id.replace(/[^\w]/g, '_') + "_chosen";
|
574 |
-
}
|
575 |
-
this.container = $("<div />", container_props);
|
576 |
-
if (this.is_multiple) {
|
577 |
-
this.container.html('<ul class="chosen-choices"><li class="search-field"><input type="text" value="' + this.default_text + '" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chosen-drop"><ul class="chosen-results"></ul></div>');
|
578 |
-
} else {
|
579 |
-
this.container.html('<a class="chosen-single chosen-default" tabindex="-1"><span>' + this.default_text + '</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off" /></div><ul class="chosen-results"></ul></div>');
|
580 |
-
}
|
581 |
-
this.form_field_jq.hide().after(this.container);
|
582 |
-
this.dropdown = this.container.find('div.chosen-drop').first();
|
583 |
-
this.search_field = this.container.find('input').first();
|
584 |
-
this.search_results = this.container.find('ul.chosen-results').first();
|
585 |
-
this.search_field_scale();
|
586 |
-
this.search_no_results = this.container.find('li.no-results').first();
|
587 |
-
if (this.is_multiple) {
|
588 |
-
this.search_choices = this.container.find('ul.chosen-choices').first();
|
589 |
-
this.search_container = this.container.find('li.search-field').first();
|
590 |
-
} else {
|
591 |
-
this.search_container = this.container.find('div.chosen-search').first();
|
592 |
-
this.selected_item = this.container.find('.chosen-single').first();
|
593 |
-
}
|
594 |
-
this.results_build();
|
595 |
-
this.set_tab_index();
|
596 |
-
this.set_label_behavior();
|
597 |
-
return this.form_field_jq.trigger("chosen:ready", {
|
598 |
-
chosen: this
|
599 |
-
});
|
600 |
-
};
|
601 |
-
|
602 |
-
Chosen.prototype.register_observers = function() {
|
603 |
-
var _this = this;
|
604 |
-
this.container.bind('mousedown.chosen', function(evt) {
|
605 |
-
_this.container_mousedown(evt);
|
606 |
-
});
|
607 |
-
this.container.bind('mouseup.chosen', function(evt) {
|
608 |
-
_this.container_mouseup(evt);
|
609 |
-
});
|
610 |
-
this.container.bind('mouseenter.chosen', function(evt) {
|
611 |
-
_this.mouse_enter(evt);
|
612 |
-
});
|
613 |
-
this.container.bind('mouseleave.chosen', function(evt) {
|
614 |
-
_this.mouse_leave(evt);
|
615 |
-
});
|
616 |
-
this.search_results.bind('mouseup.chosen', function(evt) {
|
617 |
-
_this.search_results_mouseup(evt);
|
618 |
-
});
|
619 |
-
this.search_results.bind('mouseover.chosen', function(evt) {
|
620 |
-
_this.search_results_mouseover(evt);
|
621 |
-
});
|
622 |
-
this.search_results.bind('mouseout.chosen', function(evt) {
|
623 |
-
_this.search_results_mouseout(evt);
|
624 |
-
});
|
625 |
-
this.search_results.bind('mousewheel.chosen DOMMouseScroll.chosen', function(evt) {
|
626 |
-
_this.search_results_mousewheel(evt);
|
627 |
-
});
|
628 |
-
this.search_results.bind('touchstart.chosen', function(evt) {
|
629 |
-
_this.search_results_touchstart(evt);
|
630 |
-
});
|
631 |
-
this.search_results.bind('touchmove.chosen', function(evt) {
|
632 |
-
_this.search_results_touchmove(evt);
|
633 |
-
});
|
634 |
-
this.search_results.bind('touchend.chosen', function(evt) {
|
635 |
-
_this.search_results_touchend(evt);
|
636 |
-
});
|
637 |
-
this.form_field_jq.bind("chosen:updated.chosen", function(evt) {
|
638 |
-
_this.results_update_field(evt);
|
639 |
-
});
|
640 |
-
this.form_field_jq.bind("chosen:activate.chosen", function(evt) {
|
641 |
-
_this.activate_field(evt);
|
642 |
-
});
|
643 |
-
this.form_field_jq.bind("chosen:open.chosen", function(evt) {
|
644 |
-
_this.container_mousedown(evt);
|
645 |
-
});
|
646 |
-
this.form_field_jq.bind("chosen:close.chosen", function(evt) {
|
647 |
-
_this.input_blur(evt);
|
648 |
-
});
|
649 |
-
this.search_field.bind('blur.chosen', function(evt) {
|
650 |
-
_this.input_blur(evt);
|
651 |
-
});
|
652 |
-
this.search_field.bind('keyup.chosen', function(evt) {
|
653 |
-
_this.keyup_checker(evt);
|
654 |
-
});
|
655 |
-
this.search_field.bind('keydown.chosen', function(evt) {
|
656 |
-
_this.keydown_checker(evt);
|
657 |
-
});
|
658 |
-
this.search_field.bind('focus.chosen', function(evt) {
|
659 |
-
_this.input_focus(evt);
|
660 |
-
});
|
661 |
-
this.search_field.bind('cut.chosen', function(evt) {
|
662 |
-
_this.clipboard_event_checker(evt);
|
663 |
-
});
|
664 |
-
this.search_field.bind('paste.chosen', function(evt) {
|
665 |
-
_this.clipboard_event_checker(evt);
|
666 |
-
});
|
667 |
-
if (this.is_multiple) {
|
668 |
-
return this.search_choices.bind('click.chosen', function(evt) {
|
669 |
-
_this.choices_click(evt);
|
670 |
-
});
|
671 |
-
} else {
|
672 |
-
return this.container.bind('click.chosen', function(evt) {
|
673 |
-
evt.preventDefault();
|
674 |
-
});
|
675 |
-
}
|
676 |
-
};
|
677 |
-
|
678 |
-
Chosen.prototype.destroy = function() {
|
679 |
-
$(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action);
|
680 |
-
if (this.search_field[0].tabIndex) {
|
681 |
-
this.form_field_jq[0].tabIndex = this.search_field[0].tabIndex;
|
682 |
-
}
|
683 |
-
this.container.remove();
|
684 |
-
this.form_field_jq.removeData('chosen');
|
685 |
-
return this.form_field_jq.show();
|
686 |
-
};
|
687 |
-
|
688 |
-
Chosen.prototype.search_field_disabled = function() {
|
689 |
-
this.is_disabled = this.form_field_jq[0].disabled;
|
690 |
-
if (this.is_disabled) {
|
691 |
-
this.container.addClass('chosen-disabled');
|
692 |
-
this.search_field[0].disabled = true;
|
693 |
-
if (!this.is_multiple) {
|
694 |
-
this.selected_item.unbind("focus.chosen", this.activate_action);
|
695 |
-
}
|
696 |
-
return this.close_field();
|
697 |
-
} else {
|
698 |
-
this.container.removeClass('chosen-disabled');
|
699 |
-
this.search_field[0].disabled = false;
|
700 |
-
if (!this.is_multiple) {
|
701 |
-
return this.selected_item.bind("focus.chosen", this.activate_action);
|
702 |
-
}
|
703 |
-
}
|
704 |
-
};
|
705 |
-
|
706 |
-
Chosen.prototype.container_mousedown = function(evt) {
|
707 |
-
if (!this.is_disabled) {
|
708 |
-
if (evt && evt.type === "mousedown" && !this.results_showing) {
|
709 |
-
evt.preventDefault();
|
710 |
-
}
|
711 |
-
if (!((evt != null) && ($(evt.target)).hasClass("search-choice-close"))) {
|
712 |
-
if (!this.active_field) {
|
713 |
-
if (this.is_multiple) {
|
714 |
-
this.search_field.val("");
|
715 |
-
}
|
716 |
-
$(this.container[0].ownerDocument).bind('click.chosen', this.click_test_action);
|
717 |
-
this.results_show();
|
718 |
-
} else if (!this.is_multiple && evt && (($(evt.target)[0] === this.selected_item[0]) || $(evt.target).parents("a.chosen-single").length)) {
|
719 |
-
evt.preventDefault();
|
720 |
-
this.results_toggle();
|
721 |
-
}
|
722 |
-
return this.activate_field();
|
723 |
-
}
|
724 |
-
}
|
725 |
-
};
|
726 |
-
|
727 |
-
Chosen.prototype.container_mouseup = function(evt) {
|
728 |
-
if (evt.target.nodeName === "ABBR" && !this.is_disabled) {
|
729 |
-
return this.results_reset(evt);
|
730 |
-
}
|
731 |
-
};
|
732 |
-
|
733 |
-
Chosen.prototype.search_results_mousewheel = function(evt) {
|
734 |
-
var delta;
|
735 |
-
if (evt.originalEvent) {
|
736 |
-
delta = -evt.originalEvent.wheelDelta || evt.originalEvent.detail;
|
737 |
-
}
|
738 |
-
if (delta != null) {
|
739 |
-
evt.preventDefault();
|
740 |
-
if (evt.type === 'DOMMouseScroll') {
|
741 |
-
delta = delta * 40;
|
742 |
-
}
|
743 |
-
return this.search_results.scrollTop(delta + this.search_results.scrollTop());
|
744 |
-
}
|
745 |
-
};
|
746 |
-
|
747 |
-
Chosen.prototype.blur_test = function(evt) {
|
748 |
-
if (!this.active_field && this.container.hasClass("chosen-container-active")) {
|
749 |
-
return this.close_field();
|
750 |
-
}
|
751 |
-
};
|
752 |
-
|
753 |
-
Chosen.prototype.close_field = function() {
|
754 |
-
$(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action);
|
755 |
-
this.active_field = false;
|
756 |
-
this.results_hide();
|
757 |
-
this.container.removeClass("chosen-container-active");
|
758 |
-
this.clear_backstroke();
|
759 |
-
this.show_search_field_default();
|
760 |
-
return this.search_field_scale();
|
761 |
-
};
|
762 |
-
|
763 |
-
Chosen.prototype.activate_field = function() {
|
764 |
-
this.container.addClass("chosen-container-active");
|
765 |
-
this.active_field = true;
|
766 |
-
this.search_field.val(this.search_field.val());
|
767 |
-
return this.search_field.focus();
|
768 |
-
};
|
769 |
-
|
770 |
-
Chosen.prototype.test_active_click = function(evt) {
|
771 |
-
var active_container;
|
772 |
-
active_container = $(evt.target).closest('.chosen-container');
|
773 |
-
if (active_container.length && this.container[0] === active_container[0]) {
|
774 |
-
return this.active_field = true;
|
775 |
-
} else {
|
776 |
-
return this.close_field();
|
777 |
-
}
|
778 |
-
};
|
779 |
-
|
780 |
-
Chosen.prototype.results_build = function() {
|
781 |
-
this.parsing = true;
|
782 |
-
this.selected_option_count = null;
|
783 |
-
this.results_data = SelectParser.select_to_array(this.form_field);
|
784 |
-
if (this.is_multiple) {
|
785 |
-
this.search_choices.find("li.search-choice").remove();
|
786 |
-
} else if (!this.is_multiple) {
|
787 |
-
this.single_set_selected_text();
|
788 |
-
if (this.disable_search || this.form_field.options.length <= this.disable_search_threshold) {
|
789 |
-
this.search_field[0].readOnly = true;
|
790 |
-
this.container.addClass("chosen-container-single-nosearch");
|
791 |
-
} else {
|
792 |
-
this.search_field[0].readOnly = false;
|
793 |
-
this.container.removeClass("chosen-container-single-nosearch");
|
794 |
-
}
|
795 |
-
}
|
796 |
-
this.update_results_content(this.results_option_build({
|
797 |
-
first: true
|
798 |
-
}));
|
799 |
-
this.search_field_disabled();
|
800 |
-
this.show_search_field_default();
|
801 |
-
this.search_field_scale();
|
802 |
-
return this.parsing = false;
|
803 |
-
};
|
804 |
-
|
805 |
-
Chosen.prototype.result_do_highlight = function(el) {
|
806 |
-
var high_bottom, high_top, maxHeight, visible_bottom, visible_top;
|
807 |
-
if (el.length) {
|
808 |
-
this.result_clear_highlight();
|
809 |
-
this.result_highlight = el;
|
810 |
-
this.result_highlight.addClass("highlighted");
|
811 |
-
maxHeight = parseInt(this.search_results.css("maxHeight"), 10);
|
812 |
-
visible_top = this.search_results.scrollTop();
|
813 |
-
visible_bottom = maxHeight + visible_top;
|
814 |
-
high_top = this.result_highlight.position().top + this.search_results.scrollTop();
|
815 |
-
high_bottom = high_top + this.result_highlight.outerHeight();
|
816 |
-
if (high_bottom >= visible_bottom) {
|
817 |
-
return this.search_results.scrollTop((high_bottom - maxHeight) > 0 ? high_bottom - maxHeight : 0);
|
818 |
-
} else if (high_top < visible_top) {
|
819 |
-
return this.search_results.scrollTop(high_top);
|
820 |
-
}
|
821 |
-
}
|
822 |
-
};
|
823 |
-
|
824 |
-
Chosen.prototype.result_clear_highlight = function() {
|
825 |
-
if (this.result_highlight) {
|
826 |
-
this.result_highlight.removeClass("highlighted");
|
827 |
-
}
|
828 |
-
return this.result_highlight = null;
|
829 |
-
};
|
830 |
-
|
831 |
-
Chosen.prototype.results_show = function() {
|
832 |
-
if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
|
833 |
-
this.form_field_jq.trigger("chosen:maxselected", {
|
834 |
-
chosen: this
|
835 |
-
});
|
836 |
-
return false;
|
837 |
-
}
|
838 |
-
this.container.addClass("chosen-with-drop");
|
839 |
-
this.results_showing = true;
|
840 |
-
this.search_field.focus();
|
841 |
-
this.search_field.val(this.search_field.val());
|
842 |
-
this.winnow_results();
|
843 |
-
return this.form_field_jq.trigger("chosen:showing_dropdown", {
|
844 |
-
chosen: this
|
845 |
-
});
|
846 |
-
};
|
847 |
-
|
848 |
-
Chosen.prototype.update_results_content = function(content) {
|
849 |
-
return this.search_results.html(content);
|
850 |
-
};
|
851 |
-
|
852 |
-
Chosen.prototype.results_hide = function() {
|
853 |
-
if (this.results_showing) {
|
854 |
-
this.result_clear_highlight();
|
855 |
-
this.container.removeClass("chosen-with-drop");
|
856 |
-
this.form_field_jq.trigger("chosen:hiding_dropdown", {
|
857 |
-
chosen: this
|
858 |
-
});
|
859 |
-
}
|
860 |
-
return this.results_showing = false;
|
861 |
-
};
|
862 |
-
|
863 |
-
Chosen.prototype.set_tab_index = function(el) {
|
864 |
-
var ti;
|
865 |
-
if (this.form_field.tabIndex) {
|
866 |
-
ti = this.form_field.tabIndex;
|
867 |
-
this.form_field.tabIndex = -1;
|
868 |
-
return this.search_field[0].tabIndex = ti;
|
869 |
-
}
|
870 |
-
};
|
871 |
-
|
872 |
-
Chosen.prototype.set_label_behavior = function() {
|
873 |
-
var _this = this;
|
874 |
-
this.form_field_label = this.form_field_jq.parents("label");
|
875 |
-
if (!this.form_field_label.length && this.form_field.id.length) {
|
876 |
-
this.form_field_label = $("label[for='" + this.form_field.id + "']");
|
877 |
-
}
|
878 |
-
if (this.form_field_label.length > 0) {
|
879 |
-
return this.form_field_label.bind('click.chosen', function(evt) {
|
880 |
-
if (_this.is_multiple) {
|
881 |
-
return _this.container_mousedown(evt);
|
882 |
-
} else {
|
883 |
-
return _this.activate_field();
|
884 |
-
}
|
885 |
-
});
|
886 |
-
}
|
887 |
-
};
|
888 |
-
|
889 |
-
Chosen.prototype.show_search_field_default = function() {
|
890 |
-
if (this.is_multiple && this.choices_count() < 1 && !this.active_field) {
|
891 |
-
this.search_field.val(this.default_text);
|
892 |
-
return this.search_field.addClass("default");
|
893 |
-
} else {
|
894 |
-
this.search_field.val("");
|
895 |
-
return this.search_field.removeClass("default");
|
896 |
-
}
|
897 |
-
};
|
898 |
-
|
899 |
-
Chosen.prototype.search_results_mouseup = function(evt) {
|
900 |
-
var target;
|
901 |
-
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
|
902 |
-
if (target.length) {
|
903 |
-
this.result_highlight = target;
|
904 |
-
this.result_select(evt);
|
905 |
-
return this.search_field.focus();
|
906 |
-
}
|
907 |
-
};
|
908 |
-
|
909 |
-
Chosen.prototype.search_results_mouseover = function(evt) {
|
910 |
-
var target;
|
911 |
-
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
|
912 |
-
if (target) {
|
913 |
-
return this.result_do_highlight(target);
|
914 |
-
}
|
915 |
-
};
|
916 |
-
|
917 |
-
Chosen.prototype.search_results_mouseout = function(evt) {
|
918 |
-
if ($(evt.target).hasClass("active-result" || $(evt.target).parents('.active-result').first())) {
|
919 |
-
return this.result_clear_highlight();
|
920 |
-
}
|
921 |
-
};
|
922 |
-
|
923 |
-
Chosen.prototype.choice_build = function(item) {
|
924 |
-
var choice, close_link,
|
925 |
-
_this = this;
|
926 |
-
choice = $('<li />', {
|
927 |
-
"class": "search-choice"
|
928 |
-
}).html("<span>" + item.html + "</span>");
|
929 |
-
if (item.disabled) {
|
930 |
-
choice.addClass('search-choice-disabled');
|
931 |
-
} else {
|
932 |
-
close_link = $('<a />', {
|
933 |
-
"class": 'search-choice-close',
|
934 |
-
'data-option-array-index': item.array_index
|
935 |
-
});
|
936 |
-
close_link.bind('click.chosen', function(evt) {
|
937 |
-
return _this.choice_destroy_link_click(evt);
|
938 |
-
});
|
939 |
-
choice.append(close_link);
|
940 |
-
}
|
941 |
-
return this.search_container.before(choice);
|
942 |
-
};
|
943 |
-
|
944 |
-
Chosen.prototype.choice_destroy_link_click = function(evt) {
|
945 |
-
evt.preventDefault();
|
946 |
-
evt.stopPropagation();
|
947 |
-
if (!this.is_disabled) {
|
948 |
-
return this.choice_destroy($(evt.target));
|
949 |
-
}
|
950 |
-
};
|
951 |
-
|
952 |
-
Chosen.prototype.choice_destroy = function(link) {
|
953 |
-
if (this.result_deselect(link[0].getAttribute("data-option-array-index"))) {
|
954 |
-
this.show_search_field_default();
|
955 |
-
if (this.is_multiple && this.choices_count() > 0 && this.search_field.val().length < 1) {
|
956 |
-
this.results_hide();
|
957 |
-
}
|
958 |
-
link.parents('li').first().remove();
|
959 |
-
return this.search_field_scale();
|
960 |
-
}
|
961 |
-
};
|
962 |
-
|
963 |
-
Chosen.prototype.results_reset = function() {
|
964 |
-
this.reset_single_select_options();
|
965 |
-
this.form_field.options[0].selected = true;
|
966 |
-
this.single_set_selected_text();
|
967 |
-
this.show_search_field_default();
|
968 |
-
this.results_reset_cleanup();
|
969 |
-
this.form_field_jq.trigger("change");
|
970 |
-
if (this.active_field) {
|
971 |
-
return this.results_hide();
|
972 |
-
}
|
973 |
-
};
|
974 |
-
|
975 |
-
Chosen.prototype.results_reset_cleanup = function() {
|
976 |
-
this.current_selectedIndex = this.form_field.selectedIndex;
|
977 |
-
return this.selected_item.find("abbr").remove();
|
978 |
-
};
|
979 |
-
|
980 |
-
Chosen.prototype.result_select = function(evt) {
|
981 |
-
var high, item;
|
982 |
-
if (this.result_highlight) {
|
983 |
-
high = this.result_highlight;
|
984 |
-
this.result_clear_highlight();
|
985 |
-
if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
|
986 |
-
this.form_field_jq.trigger("chosen:maxselected", {
|
987 |
-
chosen: this
|
988 |
-
});
|
989 |
-
return false;
|
990 |
-
}
|
991 |
-
if (this.is_multiple) {
|
992 |
-
high.removeClass("active-result");
|
993 |
-
} else {
|
994 |
-
this.reset_single_select_options();
|
995 |
-
}
|
996 |
-
item = this.results_data[high[0].getAttribute("data-option-array-index")];
|
997 |
-
item.selected = true;
|
998 |
-
this.form_field.options[item.options_index].selected = true;
|
999 |
-
this.selected_option_count = null;
|
1000 |
-
if (this.is_multiple) {
|
1001 |
-
this.choice_build(item);
|
1002 |
-
} else {
|
1003 |
-
this.single_set_selected_text(item.text);
|
1004 |
-
}
|
1005 |
-
if (!((evt.metaKey || evt.ctrlKey) && this.is_multiple)) {
|
1006 |
-
this.results_hide();
|
1007 |
-
}
|
1008 |
-
this.search_field.val("");
|
1009 |
-
if (this.is_multiple || this.form_field.selectedIndex !== this.current_selectedIndex) {
|
1010 |
-
this.form_field_jq.trigger("change", {
|
1011 |
-
'selected': this.form_field.options[item.options_index].value
|
1012 |
-
});
|
1013 |
-
}
|
1014 |
-
this.current_selectedIndex = this.form_field.selectedIndex;
|
1015 |
-
return this.search_field_scale();
|
1016 |
-
}
|
1017 |
-
};
|
1018 |
-
|
1019 |
-
Chosen.prototype.single_set_selected_text = function(text) {
|
1020 |
-
if (text == null) {
|
1021 |
-
text = this.default_text;
|
1022 |
-
}
|
1023 |
-
if (text === this.default_text) {
|
1024 |
-
this.selected_item.addClass("chosen-default");
|
1025 |
-
} else {
|
1026 |
-
this.single_deselect_control_build();
|
1027 |
-
this.selected_item.removeClass("chosen-default");
|
1028 |
-
}
|
1029 |
-
return this.selected_item.find("span").text(text);
|
1030 |
-
};
|
1031 |
-
|
1032 |
-
Chosen.prototype.result_deselect = function(pos) {
|
1033 |
-
var result_data;
|
1034 |
-
result_data = this.results_data[pos];
|
1035 |
-
if (!this.form_field.options[result_data.options_index].disabled) {
|
1036 |
-
result_data.selected = false;
|
1037 |
-
this.form_field.options[result_data.options_index].selected = false;
|
1038 |
-
this.selected_option_count = null;
|
1039 |
-
this.result_clear_highlight();
|
1040 |
-
if (this.results_showing) {
|
1041 |
-
this.winnow_results();
|
1042 |
-
}
|
1043 |
-
this.form_field_jq.trigger("change", {
|
1044 |
-
deselected: this.form_field.options[result_data.options_index].value
|
1045 |
-
});
|
1046 |
-
this.search_field_scale();
|
1047 |
-
return true;
|
1048 |
-
} else {
|
1049 |
-
return false;
|
1050 |
-
}
|
1051 |
-
};
|
1052 |
-
|
1053 |
-
Chosen.prototype.single_deselect_control_build = function() {
|
1054 |
-
if (!this.allow_single_deselect) {
|
1055 |
-
return;
|
1056 |
-
}
|
1057 |
-
if (!this.selected_item.find("abbr").length) {
|
1058 |
-
this.selected_item.find("span").first().after("<abbr class=\"search-choice-close\"></abbr>");
|
1059 |
-
}
|
1060 |
-
return this.selected_item.addClass("chosen-single-with-deselect");
|
1061 |
-
};
|
1062 |
-
|
1063 |
-
Chosen.prototype.get_search_text = function() {
|
1064 |
-
if (this.search_field.val() === this.default_text) {
|
1065 |
-
return "";
|
1066 |
-
} else {
|
1067 |
-
return $('<div/>').text($.trim(this.search_field.val())).html();
|
1068 |
-
}
|
1069 |
-
};
|
1070 |
-
|
1071 |
-
Chosen.prototype.winnow_results_set_highlight = function() {
|
1072 |
-
var do_high, selected_results;
|
1073 |
-
selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
|
1074 |
-
do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
|
1075 |
-
if (do_high != null) {
|
1076 |
-
return this.result_do_highlight(do_high);
|
1077 |
-
}
|
1078 |
-
};
|
1079 |
-
|
1080 |
-
Chosen.prototype.no_results = function(terms) {
|
1081 |
-
var no_results_html;
|
1082 |
-
no_results_html = $('<li class="no-results">' + this.results_none_found + ' "<span></span>"</li>');
|
1083 |
-
no_results_html.find("span").first().html(terms);
|
1084 |
-
this.search_results.append(no_results_html);
|
1085 |
-
return this.form_field_jq.trigger("chosen:no_results", {
|
1086 |
-
chosen: this
|
1087 |
-
});
|
1088 |
-
};
|
1089 |
-
|
1090 |
-
Chosen.prototype.no_results_clear = function() {
|
1091 |
-
return this.search_results.find(".no-results").remove();
|
1092 |
-
};
|
1093 |
-
|
1094 |
-
Chosen.prototype.keydown_arrow = function() {
|
1095 |
-
var next_sib;
|
1096 |
-
if (this.results_showing && this.result_highlight) {
|
1097 |
-
next_sib = this.result_highlight.nextAll("li.active-result").first();
|
1098 |
-
if (next_sib) {
|
1099 |
-
return this.result_do_highlight(next_sib);
|
1100 |
-
}
|
1101 |
-
} else {
|
1102 |
-
return this.results_show();
|
1103 |
-
}
|
1104 |
-
};
|
1105 |
-
|
1106 |
-
Chosen.prototype.keyup_arrow = function() {
|
1107 |
-
var prev_sibs;
|
1108 |
-
if (!this.results_showing && !this.is_multiple) {
|
1109 |
-
return this.results_show();
|
1110 |
-
} else if (this.result_highlight) {
|
1111 |
-
prev_sibs = this.result_highlight.prevAll("li.active-result");
|
1112 |
-
if (prev_sibs.length) {
|
1113 |
-
return this.result_do_highlight(prev_sibs.first());
|
1114 |
-
} else {
|
1115 |
-
if (this.choices_count() > 0) {
|
1116 |
-
this.results_hide();
|
1117 |
-
}
|
1118 |
-
return this.result_clear_highlight();
|
1119 |
-
}
|
1120 |
-
}
|
1121 |
-
};
|
1122 |
-
|
1123 |
-
Chosen.prototype.keydown_backstroke = function() {
|
1124 |
-
var next_available_destroy;
|
1125 |
-
if (this.pending_backstroke) {
|
1126 |
-
this.choice_destroy(this.pending_backstroke.find("a").first());
|
1127 |
-
return this.clear_backstroke();
|
1128 |
-
} else {
|
1129 |
-
next_available_destroy = this.search_container.siblings("li.search-choice").last();
|
1130 |
-
if (next_available_destroy.length && !next_available_destroy.hasClass("search-choice-disabled")) {
|
1131 |
-
this.pending_backstroke = next_available_destroy;
|
1132 |
-
if (this.single_backstroke_delete) {
|
1133 |
-
return this.keydown_backstroke();
|
1134 |
-
} else {
|
1135 |
-
return this.pending_backstroke.addClass("search-choice-focus");
|
1136 |
-
}
|
1137 |
-
}
|
1138 |
-
}
|
1139 |
-
};
|
1140 |
-
|
1141 |
-
Chosen.prototype.clear_backstroke = function() {
|
1142 |
-
if (this.pending_backstroke) {
|
1143 |
-
this.pending_backstroke.removeClass("search-choice-focus");
|
1144 |
-
}
|
1145 |
-
return this.pending_backstroke = null;
|
1146 |
-
};
|
1147 |
-
|
1148 |
-
Chosen.prototype.keydown_checker = function(evt) {
|
1149 |
-
var stroke, _ref1;
|
1150 |
-
stroke = (_ref1 = evt.which) != null ? _ref1 : evt.keyCode;
|
1151 |
-
this.search_field_scale();
|
1152 |
-
if (stroke !== 8 && this.pending_backstroke) {
|
1153 |
-
this.clear_backstroke();
|
1154 |
-
}
|
1155 |
-
switch (stroke) {
|
1156 |
-
case 8:
|
1157 |
-
this.backstroke_length = this.search_field.val().length;
|
1158 |
-
break;
|
1159 |
-
case 9:
|
1160 |
-
if (this.results_showing && !this.is_multiple) {
|
1161 |
-
this.result_select(evt);
|
1162 |
-
}
|
1163 |
-
this.mouse_on_container = false;
|
1164 |
-
break;
|
1165 |
-
case 13:
|
1166 |
-
evt.preventDefault();
|
1167 |
-
break;
|
1168 |
-
case 38:
|
1169 |
-
evt.preventDefault();
|
1170 |
-
this.keyup_arrow();
|
1171 |
-
break;
|
1172 |
-
case 40:
|
1173 |
-
evt.preventDefault();
|
1174 |
-
this.keydown_arrow();
|
1175 |
-
break;
|
1176 |
-
}
|
1177 |
-
};
|
1178 |
-
|
1179 |
-
Chosen.prototype.search_field_scale = function() {
|
1180 |
-
var div, f_width, h, style, style_block, styles, w, _i, _len;
|
1181 |
-
if (this.is_multiple) {
|
1182 |
-
h = 0;
|
1183 |
-
w = 0;
|
1184 |
-
style_block = "position:absolute; left: -1000px; top: -1000px; display:none;";
|
1185 |
-
styles = ['font-size', 'font-style', 'font-weight', 'font-family', 'line-height', 'text-transform', 'letter-spacing'];
|
1186 |
-
for (_i = 0, _len = styles.length; _i < _len; _i++) {
|
1187 |
-
style = styles[_i];
|
1188 |
-
style_block += style + ":" + this.search_field.css(style) + ";";
|
1189 |
-
}
|
1190 |
-
div = $('<div />', {
|
1191 |
-
'style': style_block
|
1192 |
-
});
|
1193 |
-
div.text(this.search_field.val());
|
1194 |
-
$('body').append(div);
|
1195 |
-
w = div.width() + 25;
|
1196 |
-
div.remove();
|
1197 |
-
f_width = this.container.outerWidth();
|
1198 |
-
if (w > f_width - 10) {
|
1199 |
-
w = f_width - 10;
|
1200 |
-
}
|
1201 |
-
return this.search_field.css({
|
1202 |
-
'width': w + 'px'
|
1203 |
-
});
|
1204 |
-
}
|
1205 |
-
};
|
1206 |
-
|
1207 |
-
return Chosen;
|
1208 |
-
|
1209 |
-
})(AbstractChosen);
|
1210 |
-
|
1211 |
-
}).call(this);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/js/how-to.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
-
(function($){
|
2 |
-
var how_to_link = $('#yith-how-to-premium').parent();
|
3 |
-
if( typeof how_to_link != 'undefined' ){
|
4 |
how_to_link.prop( 'target', '_blank' );
|
5 |
}
|
6 |
-
})(jQuery);
|
1 |
+
(function ( $ ) {
|
2 |
+
var how_to_link = $( '#yith-how-to-premium' ).parent();
|
3 |
+
if ( typeof how_to_link != 'undefined' ) {
|
4 |
how_to_link.prop( 'target', '_blank' );
|
5 |
}
|
6 |
+
})( jQuery );
|
plugin-fw/assets/js/how-to.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
(function(a){a=a("#yith-how-to-premium").parent();"undefined"!=typeof a&&a.prop("target","_blank")})(jQuery);
|
plugin-fw/assets/js/jquery.colorbox.js
CHANGED
@@ -1102,4 +1102,4 @@
|
|
1102 |
|
1103 |
publicMethod.settings = defaults;
|
1104 |
|
1105 |
-
}(jQuery, document, window));
|
1102 |
|
1103 |
publicMethod.settings = defaults;
|
1104 |
|
1105 |
+
}(jQuery, document, window));
|
plugin-fw/assets/js/jquery.colorbox.min.js
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function(c,p,A){function g(a,d,F){a=p.createElement(a);d&&(a.id="cbox"+d);F&&(a.style.cssText=F);return c(a)}function R(){return A.innerHeight?A.innerHeight:c(A).height()}function M(a,d){d!==Object(d)&&(d={});this.cache={};this.el=a;this.value=function(a){var b;void 0===this.cache[a]&&(b=c(this.el).attr("data-cbox-"+a),void 0!==b?this.cache[a]=b:void 0!==d[a]?this.cache[a]=d[a]:void 0!==S[a]&&(this.cache[a]=S[a]));return this.cache[a]};this.get=function(a){a=this.value(a);return c.isFunction(a)?
|
2 |
+
a.call(this.el,this):a}}function N(a){var d=k.length;a=(m+a)%d;return 0>a?d+a:a}function n(a,d){return Math.round((/%/.test(a)?("x"===d?w.width():R())/100:1)*parseInt(a,10))}function da(a,d){return a.get("photo")||a.get("photoRegex").test(d)}function ea(a,d){return a.get("retinaUrl")&&1<A.devicePixelRatio?d.replace(a.get("photoRegex"),a.get("retinaSuffix")):d}function fa(a){"contains"in f[0]&&!f[0].contains(a.target)&&a.target!==q[0]&&(a.stopPropagation(),f.focus())}function G(a){G.str!==a&&(f.add(q).removeClass(G.str).addClass(a),
|
3 |
+
G.str=a)}function ja(b){m=0;b&&!1!==b&&"nofollow"!==b?(k=c(".cboxElement").filter(function(){var a=c.data(this,"colorbox");return(new M(this,a)).get("rel")===b}),m=k.index(a.el),-1===m&&(k=k.add(a.el),m=k.length-1)):k=c(a.el)}function C(a){c(p).trigger(a);r.triggerHandler(a)}function O(b){var d;if(!H){d=c(b).data("colorbox");a=new M(b,d);ja(a.get("rel"));if(!x){x=I=!0;G(a.get("className"));f.css({visibility:"hidden",display:"block",opacity:""});h=g("div","LoadedContent","width:0; height:0; overflow:hidden; visibility:hidden");
|
4 |
+
u.css({width:"",height:""}).append(h);t=T.height()+U.height()+u.outerHeight(!0)-u.height();v=V.width()+W.width()+u.outerWidth(!0)-u.width();y=h.outerHeight(!0);z=h.outerWidth(!0);b=n(a.get("initialWidth"),"x");d=n(a.get("initialHeight"),"y");var F=a.get("maxWidth"),B=a.get("maxHeight");a.w=Math.max((!1!==F?Math.min(b,n(F,"x")):b)-z-v,0);a.h=Math.max((!1!==B?Math.min(d,n(B,"y")):d)-y-t,0);h.css({width:"",height:a.h});l.position();C("cbox_open");a.get("onOpen");X.add(Y).hide();f.focus();a.get("trapFocus")&&
|
5 |
+
p.addEventListener&&(p.addEventListener("focus",fa,!0),r.one("cbox_closed",function(){p.removeEventListener("focus",fa,!0)}));if(a.get("returnFocus"))r.one("cbox_closed",function(){c(a.el).focus()})}b=parseFloat(a.get("opacity"));q.css({opacity:b===b?b:"",cursor:a.get("overlayClose")?"pointer":"",visibility:"visible"}).show();a.get("closeButton")?P.html(a.get("close")).appendTo(u):P.appendTo("<div/>");ka()}}function ga(){f||(Z=!1,w=c(A),f=g("div").attr({id:"colorbox","class":!1===c.support.opacity?
|
6 |
+
"cboxIE":"",role:"dialog",tabindex:"-1"}).hide(),q=g("div","Overlay").hide(),Q=c([g("div","LoadingOverlay")[0],g("div","LoadingGraphic")[0]]),D=g("div","Wrapper"),u=g("div","Content").append(Y=g("div","Title"),aa=g("div","Current"),J=c('<button type="button"/>').attr({id:"cboxPrevious"}),K=c('<button type="button"/>').attr({id:"cboxNext"}),E=g("button","Slideshow"),Q),P=c('<button type="button"/>').attr({id:"cboxClose"}),D.append(g("div").append(g("div","TopLeft"),T=g("div","TopCenter"),g("div","TopRight")),
|
7 |
+
g("div",!1,"clear:left").append(V=g("div","MiddleLeft"),u,W=g("div","MiddleRight")),g("div",!1,"clear:left").append(g("div","BottomLeft"),U=g("div","BottomCenter"),g("div","BottomRight"))).find("div div").css({"float":"left"}),L=g("div",!1,"position:absolute; width:9999px; visibility:hidden; display:none; max-width:none;"),X=K.add(J).add(aa).add(E));p.body&&!f.parent().length&&c(p.body).append(q,f.append(D,L))}function la(){function b(a){1<a.which||a.shiftKey||a.altKey||a.metaKey||a.ctrlKey||(a.preventDefault(),
|
8 |
+
O(this))}if(f){if(!Z)if(Z=!0,K.click(function(){l.next()}),J.click(function(){l.prev()}),P.click(function(){l.close()}),q.click(function(){a.get("overlayClose")&&l.close()}),c(p).bind("keydown.cbox",function(b){var c=b.keyCode;x&&a.get("escKey")&&27===c&&(b.preventDefault(),l.close());x&&a.get("arrowKey")&&k[1]&&!b.altKey&&(37===c?(b.preventDefault(),J.click()):39===c&&(b.preventDefault(),K.click()))}),c.isFunction(c.fn.on))c(p).on("click.cbox",".cboxElement",b);else c(".cboxElement").live("click.cbox",
|
9 |
+
b);return!0}return!1}function ka(){var b,d,f=l.prep,B,h=++ba;I=!0;e=!1;C("cbox_purge");C("cbox_load");a.get("onLoad");a.h=a.get("height")?n(a.get("height"),"y")-y-t:a.get("innerHeight")&&n(a.get("innerHeight"),"y");a.w=a.get("width")?n(a.get("width"),"x")-z-v:a.get("innerWidth")&&n(a.get("innerWidth"),"x");a.mw=a.w;a.mh=a.h;a.get("maxWidth")&&(a.mw=n(a.get("maxWidth"),"x")-z-v,a.mw=a.w&&a.w<a.mw?a.w:a.mw);a.get("maxHeight")&&(a.mh=n(a.get("maxHeight"),"y")-y-t,a.mh=a.h&&a.h<a.mh?a.h:a.mh);b=a.get("href");
|
10 |
+
ha=setTimeout(function(){Q.show()},100);if(a.get("inline")){var ca=c(b);B=c("<div>").hide().insertBefore(ca);r.one("cbox_purge",function(){B.replaceWith(ca)});f(ca)}else a.get("iframe")?f(" "):a.get("html")?f(a.get("html")):da(a,b)?(b=ea(a,b),e=a.get("createImg"),c(e).addClass("cboxPhoto").bind("error.cbox",function(){f(g("div","Error").html(a.get("imgError")))}).one("load",function(){h===ba&&setTimeout(function(){var b;a.get("retinaImage")&&1<A.devicePixelRatio&&(e.height/=A.devicePixelRatio,e.width/=
|
11 |
+
A.devicePixelRatio);a.get("scalePhotos")&&(d=function(){e.height-=e.height*b;e.width-=e.width*b},a.mw&&e.width>a.mw&&(b=(e.width-a.mw)/e.width,d()),a.mh&&e.height>a.mh&&(b=(e.height-a.mh)/e.height,d()));a.h&&(e.style.marginTop=Math.max(a.mh-e.height,0)/2+"px");k[1]&&(a.get("loop")||k[m+1])&&(e.style.cursor="pointer",c(e).bind("click.cbox",function(){l.next()}));e.style.width=e.width+"px";e.style.height=e.height+"px";f(e)},1)}),e.src=b):b&&L.load(b,a.get("data"),function(b,d){h===ba&&f("error"===d?
|
12 |
+
g("div","Error").html(a.get("xhrError")):c(this).contents())})}var S={html:!1,photo:!1,iframe:!1,inline:!1,transition:"elastic",speed:300,fadeOut:300,width:!1,initialWidth:"600",innerWidth:!1,maxWidth:!1,height:!1,initialHeight:"450",innerHeight:!1,maxHeight:!1,scalePhotos:!0,scrolling:!0,opacity:.9,preloading:!0,className:!1,overlayClose:!0,escKey:!0,arrowKey:!0,top:!1,bottom:!1,left:!1,right:!1,fixed:!1,data:void 0,closeButton:!0,fastIframe:!0,open:!1,reposition:!0,loop:!0,slideshow:!1,slideshowAuto:!0,
|
13 |
+
slideshowSpeed:2500,slideshowStart:"start slideshow",slideshowStop:"stop slideshow",photoRegex:/\.(gif|png|jp(e|g|eg)|bmp|ico|webp|jxr|svg)((#|\?).*)?$/i,retinaImage:!1,retinaUrl:!1,retinaSuffix:"@2x.$1",current:"image {current} of {total}",previous:"previous",next:"next",close:"close",xhrError:"This content failed to load.",imgError:"This image failed to load.",returnFocus:!0,trapFocus:!0,onOpen:!1,onLoad:!1,onComplete:!1,onCleanup:!1,onClosed:!1,rel:function(){return this.rel},href:function(){return c(this).attr("href")},
|
14 |
+
title:function(){return this.title},createImg:function(){var a=new Image,d=c(this).data("cbox-img-attrs");"object"===typeof d&&c.each(d,function(c,d){a[c]=d});return a},createIframe:function(){var a=p.createElement("iframe"),d=c(this).data("cbox-iframe-attrs");"object"===typeof d&&c.each(d,function(c,d){a[c]=d});"frameBorder"in a&&(a.frameBorder=0);"allowTransparency"in a&&(a.allowTransparency="true");a.name=(new Date).getTime();a.allowFullscreen=!0;return a}},q,f,D,u,T,V,W,U,k,w,h,L,Q,Y,aa,E,K,J,
|
15 |
+
P,X,r=c("<a/>"),a,t,v,y,z,m,e,x,I,H,ha,l,ba=0,ia={},Z,ma=function(){function b(){clearTimeout(n)}function c(){if(a.get("loop")||k[m+1])b(),n=setTimeout(l.next,a.get("slideshowSpeed"))}function e(){E.html(a.get("slideshowStop")).unbind("click.cbox").one("click.cbox",B);r.bind("cbox_complete",c).bind("cbox_load",b);f.removeClass("cboxSlideshow_off").addClass("cboxSlideshow_on")}function B(){b();r.unbind("cbox_complete",c).unbind("cbox_load",b);E.html(a.get("slideshowStart")).unbind("click.cbox").one("click.cbox",
|
16 |
+
function(){l.next();e()});f.removeClass("cboxSlideshow_on").addClass("cboxSlideshow_off")}function g(){h=!1;E.hide();b();r.unbind("cbox_complete",c).unbind("cbox_load",b);f.removeClass("cboxSlideshow_off cboxSlideshow_on")}var h,n;return function(){h?a.get("slideshow")||(r.unbind("cbox_cleanup",g),g()):a.get("slideshow")&&k[1]&&(h=!0,r.one("cbox_cleanup",g),a.get("slideshowAuto")?e():B(),E.show())}}();c.colorbox||(c(ga),l=c.fn.colorbox=c.colorbox=function(a,d){var f,e=this;a=a||{};c.isFunction(e)&&
|
17 |
+
(e=c("<a/>"),a.open=!0);if(!e[0])return e;ga();la()&&(d&&(a.onComplete=d),e.each(function(){var d=c.data(this,"colorbox")||{};c.data(this,"colorbox",c.extend(d,a))}).addClass("cboxElement"),f=new M(e[0],a),f.get("open")&&O(e[0]));return e},l.position=function(b,d){function e(){T[0].style.width=U[0].style.width=u[0].style.width=parseInt(f[0].style.width,10)-v+"px";u[0].style.height=V[0].style.height=W[0].style.height=parseInt(f[0].style.height,10)-t+"px"}var g,h=0,k=0,m=f.offset(),p,r;w.unbind("resize.cbox");
|
18 |
+
f.css({top:-9E4,left:-9E4});p=w.scrollTop();r=w.scrollLeft();a.get("fixed")?(m.top-=p,m.left-=r,f.css({position:"fixed"})):(h=p,k=r,f.css({position:"absolute"}));k=!1!==a.get("right")?k+Math.max(w.width()-a.w-z-v-n(a.get("right"),"x"),0):!1!==a.get("left")?k+n(a.get("left"),"x"):k+Math.round(Math.max(w.width()-a.w-z-v,0)/2);h=!1!==a.get("bottom")?h+Math.max(R()-a.h-y-t-n(a.get("bottom"),"y"),0):!1!==a.get("top")?h+n(a.get("top"),"y"):h+Math.round(Math.max(R()-a.h-y-t,0)/2);f.css({top:m.top,left:m.left,
|
19 |
+
visibility:"visible"});D[0].style.width=D[0].style.height="9999px";g={width:a.w+z+v,height:a.h+y+t,top:h,left:k};if(b){var q=0;c.each(g,function(a){g[a]!==ia[a]&&(q=b)});b=q}ia=g;b||f.css(g);f.dequeue().animate(g,{duration:b||0,complete:function(){e();I=!1;D[0].style.width=a.w+z+v+"px";D[0].style.height=a.h+y+t+"px";a.get("reposition")&&setTimeout(function(){w.bind("resize.cbox",l.position)},1);c.isFunction(d)&&d()},step:e})},l.resize=function(b){var c;x&&(b=b||{},b.width&&(a.w=n(b.width,"x")-z-v),
|
20 |
+
b.innerWidth&&(a.w=n(b.innerWidth,"x")),h.css({width:a.w}),b.height&&(a.h=n(b.height,"y")-y-t),b.innerHeight&&(a.h=n(b.innerHeight,"y")),b.innerHeight||b.height||(c=h.scrollTop(),h.css({height:"auto"}),a.h=h.height()),h.css({height:a.h}),c&&h.scrollTop(c),l.position("none"===a.get("transition")?0:a.get("speed")))},l.prep=function(b){function d(){a.w=a.w||h.width();a.w=a.mw&&a.mw<a.w?a.mw:a.w;return a.w}function n(){a.h=a.h||h.height();a.h=a.mh&&a.mh<a.h?a.mh:a.h;return a.h}if(x){var q,t="none"===
|
21 |
+
a.get("transition")?0:a.get("speed");h.remove();h=g("div","LoadedContent").append(b);h.hide().appendTo(L.show()).css({width:d(),overflow:a.get("scrolling")?"auto":"hidden"}).css({height:n()}).prependTo(u);L.hide();c(e).css({"float":"none"});G(a.get("className"));q=function(){function b(){!1===c.support.opacity&&f[0].style.removeAttribute("filter")}var d=k.length,e,g;x&&(g=function(){clearTimeout(ha);Q.hide();C("cbox_complete");a.get("onComplete")},Y.html(a.get("title")).show(),h.show(),1<d?("string"===
|
22 |
+
typeof a.get("current")&&aa.html(a.get("current").replace("{current}",m+1).replace("{total}",d)).show(),K[a.get("loop")||m<d-1?"show":"hide"]().html(a.get("next")),J[a.get("loop")||m?"show":"hide"]().html(a.get("previous")),ma(),a.get("preloading")&&c.each([N(-1),N(1)],function(){var a,b=k[this];a=new M(b,c.data(b,"colorbox"));(b=a.get("href"))&&da(a,b)&&(b=ea(a,b),a=p.createElement("img"),a.src=b)})):X.hide(),a.get("iframe")?(e=a.get("createIframe"),a.get("scrolling")||(e.scrolling="no"),c(e).attr({src:a.get("href"),
|
23 |
+
"class":"cboxIframe"}).one("load",g).appendTo(h),r.one("cbox_purge",function(){e.src="//about:blank"}),a.get("fastIframe")&&c(e).trigger("load")):g(),"fade"===a.get("transition")?f.fadeTo(t,1,b):b())};"fade"===a.get("transition")?f.fadeTo(t,0,function(){l.position(0,q)}):l.position(t,q)}},l.next=function(){!I&&k[1]&&(a.get("loop")||k[m+1])&&(m=N(1),O(k[m]))},l.prev=function(){!I&&k[1]&&(a.get("loop")||m)&&(m=N(-1),O(k[m]))},l.close=function(){x&&!H&&(H=!0,x=!1,C("cbox_cleanup"),a.get("onCleanup"),
|
24 |
+
w.unbind(".cbox"),q.fadeTo(a.get("fadeOut")||0,0),f.stop().fadeTo(a.get("fadeOut")||0,0,function(){f.hide();q.hide();C("cbox_purge");h.remove();setTimeout(function(){H=!1;C("cbox_closed");a.get("onClosed")},1)}))},l.remove=function(){f&&(f.stop(),c.colorbox.close(),f.stop(!1,!0).remove(),q.remove(),H=!1,f=null,c(".cboxElement").removeData("colorbox").removeClass("cboxElement"),c(p).unbind("click.cbox").unbind("keydown.cbox"))},l.element=function(){return c(a.el)},l.settings=S)})(jQuery,document,window);
|
plugin-fw/assets/js/metabox.js
CHANGED
@@ -28,147 +28,13 @@
|
|
28 |
|
29 |
var t = $(this).attr('href');
|
30 |
$(this).parent().addClass('tabs').siblings('li').removeClass('tabs');
|
31 |
-
$(this).closest('.metaboxes-tab').find('.tabs-panel').
|
32 |
-
$(t).
|
33 |
|
34 |
return false;
|
35 |
});
|
36 |
});
|
37 |
|
38 |
-
//upload
|
39 |
-
var _custom_media = true,
|
40 |
-
_orig_send_attachment = wp.media.editor.send.attachment;
|
41 |
-
|
42 |
-
$(document).on('click', '.metaboxes-tab .upload_button', function(e) {
|
43 |
-
var send_attachment_bkp = wp.media.editor.send.attachment;
|
44 |
-
var button = $(this);
|
45 |
-
if( typeof button.attr('id') != 'undefined' ) {
|
46 |
-
|
47 |
-
var id = button.attr('id').replace('-button', '');
|
48 |
-
_custom_media = true;
|
49 |
-
wp.media.editor.send.attachment = function(props, attachment){
|
50 |
-
if ( _custom_media ) {
|
51 |
-
if( $("#"+id).is('input[type=text]') ) {
|
52 |
-
$("#"+id).val(attachment.url);
|
53 |
-
} else {
|
54 |
-
$("#"+id + '_custom').val(attachment.url);
|
55 |
-
}
|
56 |
-
} else {
|
57 |
-
return _orig_send_attachment.apply( this, [props, attachment] );
|
58 |
-
};
|
59 |
-
}
|
60 |
-
|
61 |
-
wp.media.editor.open(button);
|
62 |
-
return false;
|
63 |
-
}
|
64 |
-
|
65 |
-
});
|
66 |
-
|
67 |
-
$('.metaboxes-tab .add_media').on('click', function(){
|
68 |
-
_custom_media = false;
|
69 |
-
});
|
70 |
-
|
71 |
-
//colorpicker
|
72 |
-
$('.metaboxes-tab .panel-colorpicker').wpColorPicker({
|
73 |
-
onInit: function(){ console.log('test');},
|
74 |
-
change: function(event, ui){
|
75 |
-
},
|
76 |
-
clear: function(){
|
77 |
-
var input = $(this);
|
78 |
-
input.val(input.data('default-color'));
|
79 |
-
input.change();
|
80 |
-
}
|
81 |
-
});
|
82 |
-
|
83 |
-
|
84 |
-
$('.metaboxes-tab .panel-colorpicker').each( function() {
|
85 |
-
var select_label = $(this).data('variations-label');
|
86 |
-
$(this).parent().parent().find('a.wp-color-result').attr('title', select_label);
|
87 |
-
});
|
88 |
-
|
89 |
-
//datepicker
|
90 |
-
$('.metaboxes-tab .panel-datepicker').each( function() {
|
91 |
-
$(this).datepicker();
|
92 |
-
});
|
93 |
-
|
94 |
-
|
95 |
-
// select
|
96 |
-
var select_value = function() {
|
97 |
-
var value = '';
|
98 |
-
|
99 |
-
if( $(this).attr('multiple')){
|
100 |
-
$(this).children("option:selected").each(function(i,v){
|
101 |
-
if( i != 0)
|
102 |
-
value += ', ';
|
103 |
-
|
104 |
-
value += $(v).text();
|
105 |
-
});
|
106 |
-
|
107 |
-
if( value == '' ){
|
108 |
-
$(this).children().children("option:selected").each(function(i,v){
|
109 |
-
if( i != 0)
|
110 |
-
value += ', ';
|
111 |
-
|
112 |
-
value += $(v).text();
|
113 |
-
});
|
114 |
-
}
|
115 |
-
}
|
116 |
-
else{
|
117 |
-
value = $(this).children("option:selected").text();
|
118 |
-
|
119 |
-
if( value == '' )
|
120 |
-
value = $(this).children().children("option:selected").text();
|
121 |
-
}
|
122 |
-
|
123 |
-
|
124 |
-
if ( $(this).parent().find('span').length <= 0 ) {
|
125 |
-
$(this).before('<span></span>');
|
126 |
-
}
|
127 |
-
|
128 |
-
$(this).parent().children('span').replaceWith('<span>'+value +'</span>');
|
129 |
-
};
|
130 |
-
$('.metaboxes-tab .select_wrapper select').not('.chosen').each(select_value).change(select_value);
|
131 |
-
|
132 |
-
//Open select multiple
|
133 |
-
$('.metaboxes-tab .select_wrapper').click( function(e){
|
134 |
-
e.stopPropagation();
|
135 |
-
$(this).find('select[multiple]').not('.chosen').toggle();
|
136 |
-
});
|
137 |
-
//Stops click propagation on select, to prevent select hide
|
138 |
-
$('.metaboxes-tab .select_wrapper select[multiple]').not('.chosen').click( function(e){
|
139 |
-
e.stopPropagation();
|
140 |
-
});
|
141 |
-
//Hides select on window click
|
142 |
-
$(window).click(function(){
|
143 |
-
$('.metaboxes-tab .select_wrapper select[multiple]').not('.chosen').hide();
|
144 |
-
})
|
145 |
-
|
146 |
-
//chosen
|
147 |
-
$('.metaboxes-tab .chosen .select_wrapper select').chosen();
|
148 |
-
|
149 |
-
|
150 |
-
$('.metaboxes-tab .slider_container .ui-slider-horizontal').each(function(){
|
151 |
-
var val = $(this).data('val');
|
152 |
-
var minValue = $(this).data('min');
|
153 |
-
var maxValue = $(this).data('max');
|
154 |
-
var step = $(this).data('step');
|
155 |
-
var labels = $(this).data('labels');
|
156 |
-
|
157 |
-
$(this).slider({
|
158 |
-
value: val,
|
159 |
-
min: minValue,
|
160 |
-
max: maxValue,
|
161 |
-
range: 'min',
|
162 |
-
step: step,
|
163 |
-
|
164 |
-
slide: function( event, ui ) {
|
165 |
-
$(this).find('input').val( ui.value );
|
166 |
-
$(this).siblings('.feedback').find('strong' ).text( ui.value + labels );
|
167 |
-
}
|
168 |
-
});
|
169 |
-
});
|
170 |
-
|
171 |
-
|
172 |
var act_page_option = $('#_active_page_options-container').parent().html();
|
173 |
$('#_active_page_options-container').parent().remove();
|
174 |
$(act_page_option).insertAfter('#yit-post-setting .handlediv');
|
@@ -185,23 +51,24 @@
|
|
185 |
|
186 |
|
187 |
//dependencies handler
|
188 |
-
$('.metaboxes-tab [data-
|
189 |
var t = $(this);
|
190 |
|
191 |
-
var field = '#' + t.data('
|
192 |
-
dep = '#' + t.data('dep'),
|
193 |
-
value = t.data('value')
|
|
|
194 |
|
195 |
|
196 |
-
dependencies_handler( field, dep, value.toString() );
|
197 |
|
198 |
$(dep).on('change', function(){
|
199 |
-
dependencies_handler( field, dep, value.toString() );
|
200 |
}).change();
|
201 |
});
|
202 |
|
203 |
//Handle dependencies.
|
204 |
-
function dependencies_handler ( id, deps, values ) {
|
205 |
var result = true;
|
206 |
|
207 |
|
@@ -222,7 +89,7 @@
|
|
222 |
}
|
223 |
}
|
224 |
|
225 |
-
|
226 |
|
227 |
for( var i = 0; i < values.length; i++ ) {
|
228 |
if( val != values[i] )
|
@@ -232,124 +99,40 @@
|
|
232 |
}
|
233 |
}
|
234 |
|
235 |
-
|
236 |
-
$( id + '-container' ).parent()
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
// Set the title of the modal.
|
254 |
-
title : $t.data('choose'),
|
255 |
-
button: {
|
256 |
-
text: $t.data('update')
|
257 |
-
},
|
258 |
-
states: [
|
259 |
-
new wp.media.controller.Library({
|
260 |
-
title : $t.data('choose'),
|
261 |
-
filterable: 'all',
|
262 |
-
multiple : true
|
263 |
-
})
|
264 |
-
]
|
265 |
-
});
|
266 |
-
|
267 |
-
// When an image is selected, run a callback.
|
268 |
-
image_gallery_frame.on('select', function () {
|
269 |
-
var selection = image_gallery_frame.state().get('selection');
|
270 |
-
selection.map(function (attachment) {
|
271 |
-
attachment = attachment.toJSON();
|
272 |
-
|
273 |
-
if (attachment.id) {
|
274 |
-
attachment_ids = attachment_ids ? attachment_ids + "," + attachment.id : attachment.id;
|
275 |
-
$gallery_images_wrapper.append('<li class="image" data-attachment_id="' + attachment.id + '"><img src="' + attachment.sizes.thumbnail.url + '"/><ul class="actions"><li><a href="#" class="delete" title="' + $t.data('delete') + '">x</a></li></ul></li>');
|
276 |
}
|
277 |
-
});
|
278 |
-
|
279 |
-
$image_gallery_ids.val(attachment_ids);
|
280 |
-
});
|
281 |
-
|
282 |
-
image_gallery_frame.open();
|
283 |
-
|
284 |
-
});
|
285 |
-
|
286 |
-
// Image ordering
|
287 |
-
$('.image-gallery ul.slides-wrapper').each(function(){
|
288 |
-
var $t = $(this);
|
289 |
-
$t.sortable({
|
290 |
-
items : 'li.image',
|
291 |
-
cursor : 'move',
|
292 |
-
scrollSensitivity : 40,
|
293 |
-
forcePlaceholderSize: true,
|
294 |
-
forceHelperSize : false,
|
295 |
-
helper : 'clone',
|
296 |
-
opacity : 0.65,
|
297 |
-
start : function (event, ui) {
|
298 |
-
ui.item.css('background-color', '#f6f6f6');
|
299 |
-
},
|
300 |
-
stop : function (event, ui) {
|
301 |
-
ui.item.removeAttr('style');
|
302 |
-
},
|
303 |
-
update : function (event, ui) {
|
304 |
-
var attachment_ids = '';
|
305 |
-
|
306 |
-
$t.find('li.image').css('cursor', 'default').each(function () {
|
307 |
-
var attachment_id = $(this).attr('data-attachment_id');
|
308 |
-
attachment_ids = attachment_ids + attachment_id + ',';
|
309 |
-
});
|
310 |
|
311 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
312 |
}
|
313 |
-
});
|
314 |
-
});
|
315 |
-
|
316 |
-
// Remove images
|
317 |
-
$('.image-gallery ul.slides-wrapper').on( 'click', 'a.delete', function() {
|
318 |
-
|
319 |
-
var $wrapper = $(this).closest('.image-gallery'),
|
320 |
-
$gallery = $(this).closest('.image-gallery ul.slides-wrapper'),
|
321 |
-
$image_gallery_ids = $wrapper.find('.image_gallery_ids'),
|
322 |
-
attachment_ids = '';
|
323 |
-
|
324 |
-
$(this).closest('li.image').remove();
|
325 |
-
|
326 |
-
$gallery.find('li.image').css('cursor','default').each(function() {
|
327 |
-
var attachment_id = $(this).attr( 'data-attachment_id' );
|
328 |
-
attachment_ids = attachment_ids + attachment_id + ',';
|
329 |
-
});
|
330 |
-
|
331 |
-
$image_gallery_ids.val( attachment_ids );
|
332 |
-
|
333 |
-
return false;
|
334 |
-
});
|
335 |
-
|
336 |
-
|
337 |
-
//on-off
|
338 |
-
$('.the-metabox .rm_onoff.onoff_container span').on('click', function(ev){
|
339 |
-
|
340 |
-
var input = $( this ).prev( 'input' );
|
341 |
-
var checked = input.prop( 'checked' );
|
342 |
-
|
343 |
-
if( checked ) {
|
344 |
-
input.prop( 'checked', false ).attr( 'value', 'no' ).removeClass('onoffchecked');
|
345 |
-
} else {
|
346 |
-
input.prop( 'checked', true ).attr( 'value', 'yes' ).addClass('onoffchecked');
|
347 |
}
|
348 |
-
|
349 |
-
|
350 |
-
});
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
})(jQuery);
|
28 |
|
29 |
var t = $(this).attr('href');
|
30 |
$(this).parent().addClass('tabs').siblings('li').removeClass('tabs');
|
31 |
+
$(this).closest('.metaboxes-tab').find('.tabs-panel').hide();
|
32 |
+
$(t).show();
|
33 |
|
34 |
return false;
|
35 |
});
|
36 |
});
|
37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
var act_page_option = $('#_active_page_options-container').parent().html();
|
39 |
$('#_active_page_options-container').parent().remove();
|
40 |
$(act_page_option).insertAfter('#yit-post-setting .handlediv');
|
51 |
|
52 |
|
53 |
//dependencies handler
|
54 |
+
$('.metaboxes-tab [data-dep-target]').each(function(){
|
55 |
var t = $(this);
|
56 |
|
57 |
+
var field = '#' + t.data('dep-target'),
|
58 |
+
dep = '#' + t.data('dep-id'),
|
59 |
+
value = t.data('dep-value'),
|
60 |
+
type = t.data('dep-type');
|
61 |
|
62 |
|
63 |
+
dependencies_handler( field, dep, value.toString(), type );
|
64 |
|
65 |
$(dep).on('change', function(){
|
66 |
+
dependencies_handler( field, dep, value.toString(), type );
|
67 |
}).change();
|
68 |
});
|
69 |
|
70 |
//Handle dependencies.
|
71 |
+
function dependencies_handler ( id, deps, values, type ) {
|
72 |
var result = true;
|
73 |
|
74 |
|
89 |
}
|
90 |
}
|
91 |
|
92 |
+
values = values.split( ',' );
|
93 |
|
94 |
for( var i = 0; i < values.length; i++ ) {
|
95 |
if( val != values[i] )
|
99 |
}
|
100 |
}
|
101 |
|
102 |
+
var $current_field = $( id ),
|
103 |
+
$current_container = $( id + '-container' ).parent();
|
104 |
+
|
105 |
+
var types = type.split( '-' ), j;
|
106 |
+
for ( j in types ) {
|
107 |
+
var current_type = types[ j ];
|
108 |
+
|
109 |
+
if ( !result ) {
|
110 |
+
switch ( current_type ) {
|
111 |
+
case 'disable':
|
112 |
+
$current_container.addClass( 'yith-disabled' );
|
113 |
+
$current_field.attr( 'disabled', true );
|
114 |
+
break;
|
115 |
+
case 'hideme':
|
116 |
+
$current_field.hide();
|
117 |
+
break;
|
118 |
+
default:
|
119 |
+
$current_container.hide();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
|
122 |
+
} else {
|
123 |
+
switch ( current_type ) {
|
124 |
+
case 'disable':
|
125 |
+
$current_container.removeClass( 'yith-disabled' );
|
126 |
+
$current_field.attr( 'disabled', false );
|
127 |
+
break;
|
128 |
+
case 'hideme':
|
129 |
+
$current_field.show();
|
130 |
+
break;
|
131 |
+
default:
|
132 |
+
$current_container.show();
|
133 |
+
}
|
134 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
}
|
136 |
+
}
|
137 |
+
|
|
|
|
|
|
|
|
|
|
|
138 |
})(jQuery);
|
plugin-fw/assets/js/metabox.min.js
CHANGED
@@ -1,11 +1,4 @@
|
|
1 |
-
(function(a){function
|
2 |
-
"#"+b;a(b).show();a(".metaboxes-tabs a",this).click(function(b){if(a(this).parent().hasClass("tabs"))b.preventDefault();else return b=a(this).attr("href"),a(this).parent().addClass("tabs").siblings("li").removeClass("tabs"),a(this).closest(".metaboxes-tab").find(".tabs-panel").
|
3 |
-
|
4 |
-
|
5 |
-
0>=a(this).parent().find("span").length&&a(this).before("<span></span>");a(this).parent().children("span").replaceWith("<span>"+b+"</span>")};a(".metaboxes-tab .select_wrapper select").not(".chosen").each(f).change(f);a(".metaboxes-tab .select_wrapper").click(function(b){b.stopPropagation();a(this).find("select[multiple]").not(".chosen").toggle()});a(".metaboxes-tab .select_wrapper select[multiple]").not(".chosen").click(function(a){a.stopPropagation()});a(window).click(function(){a(".metaboxes-tab .select_wrapper select[multiple]").not(".chosen").hide()});
|
6 |
-
a(".metaboxes-tab .chosen .select_wrapper select").chosen();a(".metaboxes-tab .slider_container .ui-slider-horizontal").each(function(){var b=a(this).data("val"),c=a(this).data("min"),d=a(this).data("max"),e=a(this).data("step"),g=a(this).data("labels");a(this).slider({value:b,min:c,max:d,range:"min",step:e,slide:function(b,c){a(this).find("input").val(c.value);a(this).siblings(".feedback").find("strong").text(c.value+g)}})});f=a("#_active_page_options-container").parent().html();a("#_active_page_options-container").parent().remove();
|
7 |
-
a(f).insertAfter("#yit-post-setting .handlediv");a(f).insertAfter("#yit-page-setting .handlediv");a("#_active_page_options-container").on("click",function(){a("#_active_page_options").is(":checked")?a("#yit-page-setting .inside .metaboxes-tab, #yit-post-setting .inside .metaboxes-tab").css({opacity:1,"pointer-events":"auto"}):a("#yit-page-setting .inside .metaboxes-tab, #yit-post-setting .inside .metaboxes-tab").css({opacity:.5,"pointer-events":"none"})}).click();a(".metaboxes-tab [data-field]").each(function(){var b=
|
8 |
-
a(this),c="#"+b.data("field"),d="#"+b.data("dep"),e=b.data("value");k(c,d,e.toString());a(d).on("change",function(){k(c,d,e.toString())}).change()});a(document).on("click",".image-gallery-button",function(b){var c=a(this);b=c.closest(".image-gallery");var d=b.find(".image_gallery_ids"),e=d.val(),g=b.find("ul.slides-wrapper"),f=wp.media.frames.image_gallery=wp.media({title:c.data("choose"),button:{text:c.data("update")},states:[new wp.media.controller.Library({title:c.data("choose"),filterable:"all",
|
9 |
-
multiple:!0})]});f.on("select",function(){f.state().get("selection").map(function(a){a=a.toJSON();a.id&&(e=e?e+","+a.id:a.id,g.append('<li class="image" data-attachment_id="'+a.id+'"><img src="'+a.sizes.thumbnail.url+'"/><ul class="actions"><li><a href="#" class="delete" title="'+c.data("delete")+'">x</a></li></ul></li>'))});d.val(e)});f.open()});a(".image-gallery ul.slides-wrapper").each(function(){var b=a(this);b.sortable({items:"li.image",cursor:"move",scrollSensitivity:40,forcePlaceholderSize:!0,
|
10 |
-
forceHelperSize:!1,helper:"clone",opacity:.65,start:function(a,b){b.item.css("background-color","#f6f6f6")},stop:function(a,b){b.item.removeAttr("style")},update:function(c,d){var e="";b.find("li.image").css("cursor","default").each(function(){var b=a(this).attr("data-attachment_id");e=e+b+","});b.closest(".image-gallery").find(".image_gallery_ids").val(e)}})});a(".image-gallery ul.slides-wrapper").on("click","a.delete",function(){var b=a(this).closest(".image-gallery"),c=a(this).closest(".image-gallery ul.slides-wrapper"),
|
11 |
-
b=b.find(".image_gallery_ids"),d="";a(this).closest("li.image").remove();c.find("li.image").css("cursor","default").each(function(){var b=a(this).attr("data-attachment_id");d=d+b+","});b.val(d);return!1});a(".the-metabox .rm_onoff.onoff_container span").on("click",function(b){b=a(this).prev("input");b.prop("checked")?b.prop("checked",!1).attr("value","no").removeClass("onoffchecked"):b.prop("checked",!0).attr("value","yes").addClass("onoffchecked");b.change()})})(jQuery);
|
1 |
+
(function(a){function h(b,c,d,e){var f=!0;if("string"==typeof c){":radio"==c.substr(0,6)&&(c+=":checked");var g=a(c).val();"checkbox"==a(c).attr("type")&&(g=a(c).is(":checked")?"yes":"no");d=d.split(",");for(c=0;c<d.length;c++)if(g!=d[c])f=!1;else{f=!0;break}}d=a(b);b=a(b+"-container").parent();e=e.split("-");for(var h in e)if(g=e[h],f)switch(g){case "disable":b.removeClass("yith-disabled");d.attr("disabled",!1);break;case "hideme":d.show();break;default:b.show()}else switch(g){case "disable":b.addClass("yith-disabled");
|
2 |
+
d.attr("disabled",!0);break;case "hideme":d.hide();break;default:b.hide()}}a(".metaboxes-tab").each(function(){a(".tabs-panel",this).hide();var b=wpCookies.get("active_metabox_tab"),b=null==b?a("ul.metaboxes-tabs li:first-child a",this).attr("href"):"#"+b;a(b).show();a(".metaboxes-tabs a",this).click(function(b){if(a(this).parent().hasClass("tabs"))b.preventDefault();else return b=a(this).attr("href"),a(this).parent().addClass("tabs").siblings("li").removeClass("tabs"),a(this).closest(".metaboxes-tab").find(".tabs-panel").hide(),
|
3 |
+
a(b).show(),!1})});var k=a("#_active_page_options-container").parent().html();a("#_active_page_options-container").parent().remove();a(k).insertAfter("#yit-post-setting .handlediv");a(k).insertAfter("#yit-page-setting .handlediv");a("#_active_page_options-container").on("click",function(){a("#_active_page_options").is(":checked")?a("#yit-page-setting .inside .metaboxes-tab, #yit-post-setting .inside .metaboxes-tab").css({opacity:1,"pointer-events":"auto"}):a("#yit-page-setting .inside .metaboxes-tab, #yit-post-setting .inside .metaboxes-tab").css({opacity:.5,
|
4 |
+
"pointer-events":"none"})}).click();a(".metaboxes-tab [data-dep-target]").each(function(){var b=a(this),c="#"+b.data("dep-target"),d="#"+b.data("dep-id"),e=b.data("dep-value"),f=b.data("dep-type");h(c,d,e.toString(),f);a(d).on("change",function(){h(c,d,e.toString(),f)}).change()})})(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/js/multisite-updater.js
CHANGED
@@ -213,4 +213,10 @@
|
|
213 |
}
|
214 |
}
|
215 |
|
|
|
|
|
|
|
|
|
|
|
|
|
216 |
})(jQuery);
|
213 |
}
|
214 |
}
|
215 |
|
216 |
+
// fix ThickBox issue (width-height) when opening a changelog
|
217 |
+
$( 'body' ).on( 'click', '.yit-changelog-button', function () {
|
218 |
+
$( '#TB_window' ).remove();
|
219 |
+
} );
|
220 |
+
|
221 |
+
|
222 |
})(jQuery);
|
plugin-fw/assets/js/multisite-updater.min.js
CHANGED
@@ -1 +1,4 @@
|
|
1 |
-
|
|
|
|
|
|
1 |
+
(function(e){function n(c,d,e){this.php_js=this.php_js||{};this.php_js.ENV=this.php_js.ENV||{};var a=0,f=0,b=0,g={dev:-6,alpha:-5,a:-5,beta:-4,b:-4,RC:-3,rc:-3,"#":-2,p:1,pl:1},a=function(a){a=(""+a).replace(/[_\-+]/g,".");a=a.replace(/([^.\d]+)/g,".$1.").replace(/\.{2,}/g,".");return a.length?a.split("."):[-8]};numVersion=function(a){return a?isNaN(a)?g[a]||-7:parseInt(a,10):0};c=a(c);d=a(d);f=Math.max(c.length,d.length);for(a=0;a<f;a++)if(c[a]!=d[a])if(c[a]=numVersion(c[a]),d[a]=numVersion(d[a]),
|
2 |
+
c[a]<d[a]){b=-1;break}else if(c[a]>d[a]){b=1;break}if(!e)return b;switch(e){case ">":case "gt":return 0<b;case ">=":case "ge":return 0<=b;case "<=":case "le":return 0>=b;case "==":case "=":case "eq":return 0===b;case "<>":case "!=":case "ne":return 0!==b;case "":case "<":case "lt":return 0>b;default:return null}}var l=e("#menu-plugins"),h=l.find(".update-plugins").find(".update-count").text(),p=plugins.registered,q=plugins.activated;if(0==h||""==h)h=0,l.find(".wp-menu-name").append('<span class="update-plugins"><span class="plugin-count"></span></span>');
|
3 |
+
(function(c,d,h,a){for(var f in c){var b=c[f],g;for(g in b)if("slug"!=g&&!n(b[g].Version,b[g].Latest,">=")){h=parseInt(h)+1;e(".plugin-count").empty().html(h);var m=""+b[g].Name,l='*[data-slug="'+m.replace(RegExp(" ","g"),"-").trim().toLowerCase()+'"]';e(l).addClass("update");var k='<tr class="plugin-update-tr"><td colspan="3" class="plugin-update colspanchange"><div class="update-message">'+a.strings.new_version.replace("%plugin_name%",m)+'<a class="thickbox" href="'+a.details_url[f]+'">'+a.strings.latest.replace("%latest%",
|
4 |
+
b[g].Latest)+"</a>",k="undefined"==typeof d[f]?k+" <em>"+a.strings.unavailable+"</em>"+a.strings.activate.replace("%activate_link%",a.licence_activation_url).replace("%plugin_name%",m):k+'. <a href="'+a.update_url[f]+'">'+a.strings.update_now+"</a>";"undefined"!=typeof a.changelogs[f]&&(k+=a.changelogs[f]);k+="</div></td></tr>";e(k).insertAfter(l)}}})(p,q,h,plugins);e("body").on("click",".yit-changelog-button",function(){e("#TB_window").remove()})})(jQuery);
|
plugin-fw/assets/js/panel.spinner.js
DELETED
@@ -1,139 +0,0 @@
|
|
1 |
-
/*
|
2 |
-
Spinner for jQuery (version 0.1)
|
3 |
-
Copyright (c) 2012 Simone D'Amico
|
4 |
-
http://simonedamico.com/
|
5 |
-
|
6 |
-
Licensed under the MIT license:
|
7 |
-
http://www.opensource.org/licenses/mit-license.php
|
8 |
-
|
9 |
-
Any and all use of this script must be accompanied by this copyright/license notice in its present form.
|
10 |
-
|
11 |
-
*/
|
12 |
-
(function($){
|
13 |
-
$.fn.spinner = function(params) {
|
14 |
-
|
15 |
-
//private methods
|
16 |
-
var _createButton = function( buttonClass, buttonLabel ) {
|
17 |
-
return $('<button/>', {
|
18 |
-
'class' : buttonClass + ' spinner-button',
|
19 |
-
text : buttonLabel
|
20 |
-
});
|
21 |
-
};
|
22 |
-
|
23 |
-
var _createBody = function(input) {
|
24 |
-
//create wrapper
|
25 |
-
var wrapper = input.wrap('<div class="spinner-wrapper"></div>').parent();
|
26 |
-
|
27 |
-
//create spinner buttons
|
28 |
-
var plus = _createButton('button-plus', '+').appendTo(wrapper).show(),
|
29 |
-
minus = _createButton('button-minus', '-').appendTo(wrapper).show();
|
30 |
-
|
31 |
-
return wrapper;
|
32 |
-
};
|
33 |
-
|
34 |
-
var _buttonClick = function( e ) {
|
35 |
-
var input = e.data.input,
|
36 |
-
params = e.data.params,
|
37 |
-
button = $(this),
|
38 |
-
value = parseFloat(input.val());
|
39 |
-
|
40 |
-
if( button.hasClass('button-plus') ) {
|
41 |
-
if( params.max != null ) {
|
42 |
-
if( ( value + params.interval ) <= params.max ) {
|
43 |
-
input.val( value + params.interval );
|
44 |
-
} else {
|
45 |
-
input.val( params.max );
|
46 |
-
}
|
47 |
-
} else {
|
48 |
-
input.val( value + params.interval );
|
49 |
-
}
|
50 |
-
} else if( button.hasClass('button-minus') ) {
|
51 |
-
if( params.min != null ) {
|
52 |
-
if( ( value - params.interval ) >= params.min ) {
|
53 |
-
input.val( value - params.interval );
|
54 |
-
} else {
|
55 |
-
input.val( params.min );
|
56 |
-
}
|
57 |
-
} else {
|
58 |
-
input.val( value - params.interval );
|
59 |
-
}
|
60 |
-
}
|
61 |
-
|
62 |
-
input.change(); e.preventDefault();
|
63 |
-
};
|
64 |
-
|
65 |
-
var _validateContent = function( e ) {
|
66 |
-
var value = parseFloat( $(this).val() );
|
67 |
-
|
68 |
-
if( params.max != null && value >= params.max ) {
|
69 |
-
$(this).val(params.max);
|
70 |
-
} else if( value <= params.min || isNaN( value ) ) {
|
71 |
-
$(this).val(params.min ? params.min : 0);
|
72 |
-
} else {
|
73 |
-
$(this).val(value);
|
74 |
-
}
|
75 |
-
};
|
76 |
-
|
77 |
-
|
78 |
-
//public methods
|
79 |
-
var methods = {
|
80 |
-
init : function( params ) {
|
81 |
-
|
82 |
-
var params = $.extend({
|
83 |
-
min: null,
|
84 |
-
max: null,
|
85 |
-
interval: 1,
|
86 |
-
defaultValue: 0,
|
87 |
-
mouseWheel: true,
|
88 |
-
largeInterval: 10
|
89 |
-
}, params);
|
90 |
-
|
91 |
-
var self = this,
|
92 |
-
t = $(this),
|
93 |
-
data = t.data('spinner');
|
94 |
-
|
95 |
-
return this.each(function(){
|
96 |
-
//check if the plugin hasn't already been initialized
|
97 |
-
//and it's an input[type=text] element
|
98 |
-
if( !data && t.is(':text') ) {
|
99 |
-
//initialize the value
|
100 |
-
if( params.defaultValue ) {
|
101 |
-
t.val( params.defaultValue );
|
102 |
-
}
|
103 |
-
|
104 |
-
//create the spinner body
|
105 |
-
var wrapper = _createBody(t);
|
106 |
-
|
107 |
-
//event handlers
|
108 |
-
//var mouseWheelEventName = $.browser.mozilla ? 'DOMMouseScroll' : 'mousewheel';
|
109 |
-
|
110 |
-
wrapper.find('.spinner-button')
|
111 |
-
.bind('click.spinner', { params: params, input: t }, _buttonClick);
|
112 |
-
|
113 |
-
t.bind('blur.spinner', _validateContent)
|
114 |
-
//.bind('keyup.spinner', _validateKey)
|
115 |
-
//.bind(mouseWheelEventName, _inputMousewheel);
|
116 |
-
|
117 |
-
//register field data
|
118 |
-
t.data('spinner', {
|
119 |
-
target: self
|
120 |
-
});
|
121 |
-
}
|
122 |
-
});
|
123 |
-
},
|
124 |
-
|
125 |
-
destroy : function( params) {
|
126 |
-
console.log('destroy', params);
|
127 |
-
}
|
128 |
-
};
|
129 |
-
|
130 |
-
//execute the plugin
|
131 |
-
if ( methods[params] ) {
|
132 |
-
return methods[params].apply( this, Array.prototype.slice.call( arguments, 1 ));
|
133 |
-
} else if ( typeof params === 'object' || ! params ) {
|
134 |
-
return methods.init.apply( this, arguments );
|
135 |
-
} else {
|
136 |
-
$.error( 'Method ' + params + ' does not exist' );
|
137 |
-
}
|
138 |
-
};
|
139 |
-
})(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/js/panel.spinner.min.js
DELETED
@@ -1,3 +0,0 @@
|
|
1 |
-
(function(d){d.fn.spinner=function(c){var h=function(b,e){return d("<button/>",{"class":b+" spinner-button",text:e})},k=function(b){var e=b.data.input,a=b.data.params,c=d(this),f=parseFloat(e.val());c.hasClass("button-plus")?null!=a.max?f+a.interval<=a.max?e.val(f+a.interval):e.val(a.max):e.val(f+a.interval):c.hasClass("button-minus")&&(null!=a.min?f-a.interval>=a.min?e.val(f-a.interval):e.val(a.min):e.val(f-a.interval));e.change();b.preventDefault()},l=function(b){b=parseFloat(d(this).val());null!=
|
2 |
-
c.max&&b>=c.max?d(this).val(c.max):b<=c.min||isNaN(b)?d(this).val(c.min?c.min:0):d(this).val(b)},g={init:function(b){b=d.extend({min:null,max:null,interval:1,defaultValue:0,mouseWheel:!0,largeInterval:10},b);var c=this,a=d(this),g=a.data("spinner");return this.each(function(){if(!g&&a.is(":text")){b.defaultValue&&a.val(b.defaultValue);var d=a.wrap('<div class="spinner-wrapper"></div>').parent();h("button-plus","+").appendTo(d).show();h("button-minus","-").appendTo(d).show();d.find(".spinner-button").bind("click.spinner",
|
3 |
-
{params:b,input:a},k);a.bind("blur.spinner",l);a.data("spinner",{target:c})}})},destroy:function(b){console.log("destroy",b)}};if(g[c])return g[c].apply(this,Array.prototype.slice.call(arguments,1));if("object"!==typeof c&&c)d.error("Method "+c+" does not exist");else return g.init.apply(this,arguments)}})(jQuery);
|
|
|
|
|
|
plugin-fw/assets/js/yit-cptu-sortable-posts.js
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* This file belongs to the YIT Framework.
|
3 |
-
*
|
4 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
5 |
-
* that is bundled with this package in the file LICENSE.txt.
|
6 |
-
* It is also available through the world-wide-web at this URL:
|
7 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
8 |
-
*/
|
9 |
-
|
10 |
-
(function($) {
|
11 |
-
"use strict";
|
12 |
-
// Author code here
|
13 |
-
|
14 |
-
$("#the-list").sortable({
|
15 |
-
items : 'tr',
|
16 |
-
axis : 'y',
|
17 |
-
helper : function(e, ui) {
|
18 |
-
ui.children().children().each(function() {
|
19 |
-
$(this).width( $(this).width() );
|
20 |
-
});
|
21 |
-
return ui;
|
22 |
-
},
|
23 |
-
update : function(e, ui) {
|
24 |
-
$.post( ajaxurl, {
|
25 |
-
action: 'cpt_sort_posts',
|
26 |
-
order: $("#the-list").sortable("serialize"),
|
27 |
-
post_type: typenow
|
28 |
-
});
|
29 |
-
}
|
30 |
-
});
|
31 |
-
|
32 |
-
})(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/js/yit-plugin-panel.js
CHANGED
@@ -8,230 +8,49 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
(function ($) {
|
12 |
-
|
13 |
-
// select
|
14 |
-
var select_value = function () {
|
15 |
-
|
16 |
-
var value = '';
|
17 |
-
|
18 |
-
if ($(this).attr('multiple')) {
|
19 |
-
$(this).children("option:selected").each(function (i, v) {
|
20 |
-
if (i != 0)
|
21 |
-
value += ', ';
|
22 |
-
|
23 |
-
value += $(v).text();
|
24 |
-
});
|
25 |
-
|
26 |
-
if (value == '') {
|
27 |
-
$(this).children().children("option:selected").each(function (i, v) {
|
28 |
-
if (i != 0)
|
29 |
-
value += ', ';
|
30 |
-
|
31 |
-
value += $(v).text();
|
32 |
-
});
|
33 |
-
}
|
34 |
-
}
|
35 |
-
else {
|
36 |
-
value = $(this).children("option:selected").text();
|
37 |
-
|
38 |
-
if (value == '')
|
39 |
-
value = $(this).children().children("option:selected").text();
|
40 |
-
}
|
41 |
-
|
42 |
-
|
43 |
-
if ($(this).parent().find('span').length <= 0) {
|
44 |
-
$(this).before('<span></span>');
|
45 |
-
}
|
46 |
-
|
47 |
-
$(this).parent().children('span').replaceWith('<span>' + value + '</span>');
|
48 |
-
};
|
49 |
-
$('.plugin-option .select_wrapper select').not('.chosen').each(select_value).change(select_value);
|
50 |
-
|
51 |
-
//Open select multiple
|
52 |
-
$('.plugin-option .select_wrapper').click(function (e) {
|
53 |
-
e.stopPropagation();
|
54 |
-
$(this).find('select[multiple]').not('.chosen').toggle();
|
55 |
-
});
|
56 |
-
//Stops click propagation on select, to prevent select hide
|
57 |
-
$('.plugin-option .select_wrapper select[multiple]').not('.chosen').click(function (e) {
|
58 |
-
e.stopPropagation();
|
59 |
-
});
|
60 |
-
//Hides select on window click
|
61 |
-
$(window).click(function () {
|
62 |
-
$('.plugin-option .select_wrapper select[multiple]').not('.chosen').hide();
|
63 |
-
})
|
64 |
-
//chosen
|
65 |
-
$('.plugin-option .chosen .select_wrapper select').chosen();
|
66 |
-
|
67 |
-
// on-off
|
68 |
-
$('.plugin-option .onoff_container span').on('click', function () {
|
69 |
-
var input = $(this).prev('input');
|
70 |
-
var checked = input.prop('checked');
|
71 |
-
|
72 |
-
if (checked) {
|
73 |
-
input.prop('checked', false).attr('value', 'no').removeClass('onoffchecked');
|
74 |
-
} else {
|
75 |
-
input.prop('checked', true).attr('value', 'yes').addClass('onoffchecked');
|
76 |
-
}
|
77 |
-
|
78 |
-
input.change();
|
79 |
-
});
|
80 |
-
|
81 |
-
//colorpicker
|
82 |
-
$('.plugin-option .panel-colorpicker').wpColorPicker({
|
83 |
-
onInit: function(){ },
|
84 |
-
change: function(event, ui){
|
85 |
-
},
|
86 |
-
clear: function(){
|
87 |
-
var input = $(this);
|
88 |
-
input.val(input.data('default-color'));
|
89 |
-
input.change();
|
90 |
-
}
|
91 |
-
});
|
92 |
-
|
93 |
-
//slider
|
94 |
-
$('.plugin-option .slider_container .ui-slider-horizontal').each(function () {
|
95 |
-
var val = $(this).data('val');
|
96 |
-
var minValue = $(this).data('min');
|
97 |
-
var maxValue = $(this).data('max');
|
98 |
-
var step = $(this).data('step');
|
99 |
-
var labels = $(this).data('labels');
|
100 |
-
|
101 |
-
$(this).slider({
|
102 |
-
value: val,
|
103 |
-
min : minValue,
|
104 |
-
max : maxValue,
|
105 |
-
range: 'min',
|
106 |
-
step : step,
|
107 |
-
|
108 |
-
slide: function (event, ui) {
|
109 |
-
$(this).find('input').val(ui.value);
|
110 |
-
$(this).siblings('.feedback').find('strong').text(ui.value + labels);
|
111 |
-
}
|
112 |
-
});
|
113 |
-
});
|
114 |
-
|
115 |
-
|
116 |
-
if (typeof wp !== 'undefined' && typeof wp.media !== 'undefined') {
|
117 |
-
|
118 |
-
//upload
|
119 |
-
var _custom_media = true,
|
120 |
-
_orig_send_attachment = wp.media.editor.send.attachment;
|
121 |
-
|
122 |
-
// preview
|
123 |
-
$('.plugin-option .upload_img_url').change(function () {
|
124 |
-
var url = $(this).val();
|
125 |
-
var re = new RegExp("(http|ftp|https)://[a-zA-Z0-9@?^=%&:/~+#-_.]*.(gif|jpg|jpeg|png|ico)");
|
126 |
-
|
127 |
-
var preview = $(this).parents().siblings('.upload_img_preview');
|
128 |
-
if (re.test(url)) {
|
129 |
-
preview.html('<img src="' + url + '" style="max-width:600px; max-height:300px;" />');
|
130 |
-
} else {
|
131 |
-
preview.html('');
|
132 |
-
}
|
133 |
-
}).trigger( 'change' );
|
134 |
-
|
135 |
-
$( document ).on( 'click', '.plugin-option .upload_button', function(e) {
|
136 |
-
e.preventDefault();
|
137 |
-
|
138 |
-
var t = $(this),
|
139 |
-
custom_uploader,
|
140 |
-
id = t.attr('id').replace(/-button$/, '');
|
141 |
-
|
142 |
-
//If the uploader object has already been created, reopen the dialog
|
143 |
-
if (custom_uploader) {
|
144 |
-
custom_uploader.open();
|
145 |
-
return;
|
146 |
-
}
|
147 |
-
|
148 |
-
var custom_uploader_states = [
|
149 |
-
// Main states.
|
150 |
-
new wp.media.controller.Library({
|
151 |
-
library: wp.media.query(),
|
152 |
-
multiple: false,
|
153 |
-
title: 'Choose Image',
|
154 |
-
priority: 20,
|
155 |
-
filterable: 'uploaded'
|
156 |
-
})
|
157 |
-
];
|
158 |
-
|
159 |
-
// Create the media frame.
|
160 |
-
custom_uploader = wp.media.frames.downloadable_file = wp.media({
|
161 |
-
// Set the title of the modal.
|
162 |
-
title: 'Choose Image',
|
163 |
-
library: {
|
164 |
-
type: ''
|
165 |
-
},
|
166 |
-
button: {
|
167 |
-
text: 'Choose Image'
|
168 |
-
},
|
169 |
-
multiple: false,
|
170 |
-
states: custom_uploader_states
|
171 |
-
});
|
172 |
-
|
173 |
-
|
174 |
-
//When a file is selected, grab the URL and set it as the text field's value
|
175 |
-
custom_uploader.on( 'select' , function() {
|
176 |
-
var attachment = custom_uploader.state().get( 'selection' ).first().toJSON();
|
177 |
-
|
178 |
-
$("#" + id).val( attachment.url );
|
179 |
-
// Save the id of the selected element to an element which name is the same with
|
180 |
-
// a suffix "-yith-attachment-id"
|
181 |
-
if ($("#" + id + "-yith-attachment-id")) {
|
182 |
-
$("#" + id + "-yith-attachment-id").val(attachment.id);
|
183 |
-
}
|
184 |
-
|
185 |
-
$('.plugin-option .upload_img_url').trigger('change');
|
186 |
-
});
|
187 |
-
|
188 |
-
//Open the uploader dialog
|
189 |
-
custom_uploader.open();
|
190 |
-
});
|
191 |
-
|
192 |
-
$( document).on( 'click', '.plugin-option .upload_button_reset', function(e){
|
193 |
-
var t = $(this),
|
194 |
-
id = t.attr('id'),
|
195 |
-
input_id = t.attr('id').replace(/-button_reset$/, ''),
|
196 |
-
default_value = $('#' + id).data('default');
|
197 |
-
|
198 |
-
$("#" + input_id).val( default_value );
|
199 |
-
$('.plugin-option .upload_img_url').trigger('change');
|
200 |
-
} );
|
201 |
-
}
|
202 |
-
|
203 |
-
$('.plugin-option .add_media').on('click', function () {
|
204 |
-
_custom_media = false;
|
205 |
-
});
|
206 |
-
|
207 |
//dependencies handler
|
208 |
-
$('[data-
|
209 |
-
var t = $(this);
|
|
|
|
|
|
|
|
|
|
|
210 |
|
211 |
-
|
212 |
-
dep = '#' + t.data('dep'),
|
213 |
-
value = t.data('value');
|
214 |
|
215 |
-
$(dep).on('change',function () {
|
216 |
-
dependencies_handler(field, dep, value.toString());
|
217 |
-
}).change();
|
218 |
-
});
|
219 |
|
220 |
//Handle dependencies.
|
221 |
-
function dependencies_handler(id, deps, values) {
|
222 |
var result = true;
|
223 |
|
224 |
//Single dependency
|
225 |
-
if (typeof( deps ) == 'string') {
|
226 |
-
if (deps.substr(0, 6) == ':radio') {
|
227 |
deps = deps + ':checked';
|
228 |
}
|
229 |
|
230 |
-
var
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
231 |
|
232 |
-
|
233 |
|
234 |
-
|
|
|
235 |
result = false;
|
236 |
}
|
237 |
else {
|
@@ -241,87 +60,108 @@
|
|
241 |
}
|
242 |
}
|
243 |
|
244 |
-
|
245 |
-
$(id + '-container').closest('tr')
|
246 |
-
|
247 |
-
|
|
|
|
|
248 |
}
|
249 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
250 |
|
251 |
//connected list
|
252 |
-
$('.rm_connectedlist').each(function () {
|
253 |
-
var ul
|
254 |
-
var input
|
255 |
-
var sortable = ul.sortable({
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
|
260 |
-
|
261 |
-
|
262 |
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
|
267 |
-
|
268 |
-
|
269 |
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
});
|
274 |
|
275 |
-
$(document).ready(function () {
|
276 |
|
277 |
-
$('.yith-video-link').click(function (event) {
|
278 |
event.preventDefault();
|
279 |
-
var target = $(this).data('video-id');
|
280 |
-
|
281 |
-
$('.' + target).dialog({
|
282 |
-
dialogClass : 'wp-dialog yit-dialog yit-video-dialog',
|
283 |
-
modal : true,
|
284 |
-
closeOnEscape: true,
|
285 |
-
width : 'auto',
|
286 |
-
resizable : false,
|
287 |
-
draggable : false,
|
288 |
-
create : function (event, ui) {
|
289 |
-
$(this).css("maxWidth", "853px");
|
290 |
-
},
|
291 |
-
open : function (event, ui) {
|
292 |
-
|
293 |
-
$('.ui-widget-overlay').bind('click', function () {
|
294 |
-
$(this).siblings('.ui-dialog').find('.ui-dialog-content').dialog('close');
|
295 |
-
});
|
296 |
|
297 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
298 |
|
299 |
-
|
|
|
|
|
300 |
|
301 |
-
|
302 |
|
303 |
-
|
304 |
-
});
|
305 |
|
306 |
-
|
307 |
-
$(document).ready(function () {
|
308 |
-
$('.codemirror').each(function (i, v) {
|
309 |
-
var editor = CodeMirror.fromTextArea(v, {
|
310 |
-
lineNumbers : 1,
|
311 |
-
mode : 'javascript',
|
312 |
-
showCursorWhenSelecting: true
|
313 |
-
})
|
314 |
|
315 |
-
|
316 |
-
|
317 |
-
})
|
318 |
|
319 |
//google analytics generation
|
320 |
-
$(document).ready(function () {
|
321 |
-
$('.google-analytic-generate').click(function () {
|
322 |
-
var editor
|
323 |
-
var gatc
|
324 |
-
var basename = $(this).data('basename');
|
325 |
|
326 |
var text = "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n";
|
327 |
text += "(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement( o ),\n";
|
@@ -331,10 +171,14 @@
|
|
331 |
text += "ga('send', 'pageview');\n";
|
332 |
editor.replaceRange(
|
333 |
text,
|
334 |
-
editor.getCursor('start'),
|
335 |
-
editor.getCursor('end')
|
336 |
)
|
337 |
-
})
|
338 |
-
})
|
339 |
-
|
340 |
-
|
|
|
|
|
|
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
(function ( $ ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
//dependencies handler
|
13 |
+
$( '[data-dep-target]' ).each( function () {
|
14 |
+
var t = $( this );
|
15 |
+
|
16 |
+
var field = '#' + t.data( 'dep-target' ),
|
17 |
+
dep = '#' + t.data( 'dep-id' ),
|
18 |
+
value = t.data( 'dep-value' ),
|
19 |
+
type = t.data( 'dep-type' );
|
20 |
|
21 |
+
dependencies_handler( field, dep, value.toString(), type );
|
|
|
|
|
22 |
|
23 |
+
$( dep ).on( 'change', function () {
|
24 |
+
dependencies_handler( field, dep, value.toString(), type );
|
25 |
+
} ).change();
|
26 |
+
} );
|
27 |
|
28 |
//Handle dependencies.
|
29 |
+
function dependencies_handler( id, deps, values, type ) {
|
30 |
var result = true;
|
31 |
|
32 |
//Single dependency
|
33 |
+
if ( typeof( deps ) == 'string' ) {
|
34 |
+
if ( deps.substr( 0, 6 ) == ':radio' ) {
|
35 |
deps = deps + ':checked';
|
36 |
}
|
37 |
|
38 |
+
var val = $( deps ).val();
|
39 |
+
|
40 |
+
if ( $( deps ).attr( 'type' ) == 'checkbox' ) {
|
41 |
+
var thisCheck = $( deps );
|
42 |
+
if ( thisCheck.is( ':checked' ) ) {
|
43 |
+
val = 'yes';
|
44 |
+
}
|
45 |
+
else {
|
46 |
+
val = 'no';
|
47 |
+
}
|
48 |
+
}
|
49 |
|
50 |
+
values = values.split( ',' );
|
51 |
|
52 |
+
for ( var i = 0; i < values.length; i++ ) {
|
53 |
+
if ( val != values[ i ] ) {
|
54 |
result = false;
|
55 |
}
|
56 |
else {
|
60 |
}
|
61 |
}
|
62 |
|
63 |
+
var $current_field = $( id ),
|
64 |
+
$current_container = $( id + '-container' ).closest( 'tr' ); // container for YIT Plugin Panel
|
65 |
+
|
66 |
+
if ( $current_container.length < 1 ) {
|
67 |
+
// container for YIT Plugin Panel WooCommerce
|
68 |
+
$current_container = $current_field.closest( '.yith-plugin-fw-panel-wc-row' );
|
69 |
}
|
70 |
+
|
71 |
+
var types = type.split( '-' ), j;
|
72 |
+
for ( j in types ) {
|
73 |
+
var current_type = types[ j ];
|
74 |
+
|
75 |
+
if ( !result ) {
|
76 |
+
switch ( current_type ) {
|
77 |
+
case 'disable':
|
78 |
+
$current_container.addClass( 'yith-disabled' );
|
79 |
+
$current_field.attr( 'disabled', true );
|
80 |
+
break;
|
81 |
+
case 'hideme':
|
82 |
+
$current_field.hide();
|
83 |
+
break;
|
84 |
+
default:
|
85 |
+
$current_container.hide();
|
86 |
+
}
|
87 |
+
|
88 |
+
} else {
|
89 |
+
switch ( current_type ) {
|
90 |
+
case 'disable':
|
91 |
+
$current_container.removeClass( 'yith-disabled' );
|
92 |
+
$current_field.attr( 'disabled', false );
|
93 |
+
break;
|
94 |
+
case 'hideme':
|
95 |
+
$current_field.show();
|
96 |
+
break;
|
97 |
+
default:
|
98 |
+
$current_container.show();
|
99 |
+
}
|
100 |
+
}
|
101 |
+
}
|
102 |
+
}
|
103 |
|
104 |
//connected list
|
105 |
+
$( '.rm_connectedlist' ).each( function () {
|
106 |
+
var ul = $( this ).find( 'ul' );
|
107 |
+
var input = $( this ).find( ':hidden' );
|
108 |
+
var sortable = ul.sortable( {
|
109 |
+
connectWith: ul,
|
110 |
+
update : function ( event, ui ) {
|
111 |
+
var value = {};
|
112 |
|
113 |
+
ul.each( function () {
|
114 |
+
var options = {};
|
115 |
|
116 |
+
$( this ).children().each( function () {
|
117 |
+
options[ $( this ).data( 'option' ) ] = $( this ).text();
|
118 |
+
} );
|
119 |
|
120 |
+
value[ $( this ).data( 'list' ) ] = options;
|
121 |
+
} );
|
122 |
|
123 |
+
input.val( (JSON.stringify( value )).replace( /[\\"']/g, '\\$&' ).replace( /\u0000/g, '\\0' ) );
|
124 |
+
}
|
125 |
+
} ).disableSelection();
|
126 |
+
} );
|
127 |
|
128 |
+
$( document ).ready( function () {
|
129 |
|
130 |
+
$( '.yith-video-link' ).click( function ( event ) {
|
131 |
event.preventDefault();
|
132 |
+
var target = $( this ).data( 'video-id' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
|
134 |
+
$( '.' + target ).dialog( {
|
135 |
+
dialogClass : 'wp-dialog yit-dialog yit-video-dialog',
|
136 |
+
modal : true,
|
137 |
+
closeOnEscape: true,
|
138 |
+
width : 'auto',
|
139 |
+
resizable : false,
|
140 |
+
draggable : false,
|
141 |
+
create : function ( event, ui ) {
|
142 |
+
$( this ).css( "maxWidth", "853px" );
|
143 |
+
},
|
144 |
+
open : function ( event, ui ) {
|
145 |
|
146 |
+
$( '.ui-widget-overlay' ).bind( 'click', function () {
|
147 |
+
$( this ).siblings( '.ui-dialog' ).find( '.ui-dialog-content' ).dialog( 'close' );
|
148 |
+
} );
|
149 |
|
150 |
+
}
|
151 |
|
152 |
+
} );
|
|
|
153 |
|
154 |
+
$( '.ui-dialog :button' ).blur();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
|
156 |
+
} );
|
157 |
+
} );
|
|
|
158 |
|
159 |
//google analytics generation
|
160 |
+
$( document ).ready( function () {
|
161 |
+
$( '.google-analytic-generate' ).click( function () {
|
162 |
+
var editor = $( '#' + $( this ).data( 'textarea' ) ).data( 'codemirrorInstance' );
|
163 |
+
var gatc = $( '#' + $( this ).data( 'input' ) ).val();
|
164 |
+
var basename = $( this ).data( 'basename' );
|
165 |
|
166 |
var text = "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n";
|
167 |
text += "(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement( o ),\n";
|
171 |
text += "ga('send', 'pageview');\n";
|
172 |
editor.replaceRange(
|
173 |
text,
|
174 |
+
editor.getCursor( 'start' ),
|
175 |
+
editor.getCursor( 'end' )
|
176 |
)
|
177 |
+
} )
|
178 |
+
} );
|
179 |
+
|
180 |
+
|
181 |
+
// prevents the WC message for changes when leaving the panel page
|
182 |
+
$( '.yith-plugin-fw-panel .woo-nav-tab-wrapper' ).removeClass( 'woo-nav-tab-wrapper' ).addClass( 'yith-nav-tab-wrapper' );
|
183 |
+
|
184 |
+
})( jQuery );
|
plugin-fw/assets/js/yit-plugin-panel.min.js
CHANGED
@@ -1 +1,5 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
1 |
+
(function(a){function h(b,d,c,f){var e=!0;if("string"==typeof d){":radio"==d.substr(0,6)&&(d+=":checked");var g=a(d).val();"checkbox"==a(d).attr("type")&&(g=a(d).is(":checked")?"yes":"no");c=c.split(",");for(d=0;d<c.length;d++)if(g!=c[d])e=!1;else{e=!0;break}}c=a(b);b=a(b+"-container").closest("tr");1>b.length&&(b=c.closest(".yith-plugin-fw-panel-wc-row"));f=f.split("-");for(var h in f)if(g=f[h],e)switch(g){case "disable":b.removeClass("yith-disabled");c.attr("disabled",!1);break;case "hideme":c.show();
|
2 |
+
break;default:b.show()}else switch(g){case "disable":b.addClass("yith-disabled");c.attr("disabled",!0);break;case "hideme":c.hide();break;default:b.hide()}}a("[data-dep-target]").each(function(){var b=a(this),d="#"+b.data("dep-target"),c="#"+b.data("dep-id"),f=b.data("dep-value"),e=b.data("dep-type");h(d,c,f.toString(),e);a(c).on("change",function(){h(d,c,f.toString(),e)}).change()});a(".rm_connectedlist").each(function(){var b=a(this).find("ul"),d=a(this).find(":hidden");b.sortable({connectWith:b,
|
3 |
+
update:function(c,f){var e={};b.each(function(){var b={};a(this).children().each(function(){b[a(this).data("option")]=a(this).text()});e[a(this).data("list")]=b});d.val(JSON.stringify(e).replace(/[\\"']/g,"\\$&").replace(/\u0000/g,"\\0"))}}).disableSelection()});a(document).ready(function(){a(".yith-video-link").click(function(b){b.preventDefault();b=a(this).data("video-id");a("."+b).dialog({dialogClass:"wp-dialog yit-dialog yit-video-dialog",modal:!0,closeOnEscape:!0,width:"auto",resizable:!1,draggable:!1,
|
4 |
+
create:function(b,c){a(this).css("maxWidth","853px")},open:function(b,c){a(".ui-widget-overlay").bind("click",function(){a(this).siblings(".ui-dialog").find(".ui-dialog-content").dialog("close")})}});a(".ui-dialog :button").blur()})});a(document).ready(function(){a(".google-analytic-generate").click(function(){var b=a("#"+a(this).data("textarea")).data("codemirrorInstance"),d=a("#"+a(this).data("input")).val(),c=a(this).data("basename");b.replaceRange("(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement( o ),\nm=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n})(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n\n"+
|
5 |
+
("ga('create', '"+d+"', '"+c+"');\n")+"ga('send', 'pageview');\n",b.getCursor("start"),b.getCursor("end"))})});a(".yith-plugin-fw-panel .woo-nav-tab-wrapper").removeClass("woo-nav-tab-wrapper").addClass("yith-nav-tab-wrapper")})(jQuery);
|
plugin-fw/assets/js/yit-wp-pointer.js
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
jQuery(document).ready( function($) {
|
2 |
-
|
3 |
var pointers = custom_pointer.pointers[0],
|
4 |
options = pointers.options,
|
5 |
target = $(pointers.target),
|
1 |
jQuery(document).ready( function($) {
|
|
|
2 |
var pointers = custom_pointer.pointers[0],
|
3 |
options = pointers.options,
|
4 |
target = $(pointers.target),
|
plugin-fw/assets/js/yit-wp-pointer.min.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
jQuery(document).ready(function(b){var c=custom_pointer.pointers[0],d=c.options,a=b(c.target),e=c.pointer_id;b(a).find(".wp-submenu li a").each(function(){var f=b(this),h=f.attr("href"),h=h.replace("admin.php?page=","");if(h==e){var k=f.add(a),g=a.find(c.target.replace("#","."));a.toggleClass("wp-no-current-submenu wp-menu-open wp-has-current-submenu");f.pointer({pointerClass:"yit-wp-pointer",content:d.content,position:d.position,open:function(){
|
2 |
-
|
3 |
-
|
1 |
+
jQuery(document).ready(function(b){var c=custom_pointer.pointers[0],d=c.options,a=b(c.target),e=c.pointer_id;b(a).find(".wp-submenu li a").each(function(){var f=b(this),h=f.attr("href"),h=h.replace("admin.php?page=","");if(h==e){var k=f.add(a),g=a.find(c.target.replace("#","."));a.toggleClass("wp-no-current-submenu wp-menu-open wp-has-current-submenu");f.pointer({pointerClass:"yit-wp-pointer",content:d.content,position:d.position,open:function(){k.toggleClass("yit-pointer-selected-row");g.addClass("yit-pointer")},
|
2 |
+
close:function(){a.toggleClass("wp-no-current-submenu wp-menu-open wp-has-current-submenu");k.toggleClass("yit-pointer-selected-row");g.removeClass("yit-pointer");b.ajax({type:"POST",url:ajaxurl,data:{action:"dismiss-wp-pointer",pointer:e},success:function(a){}})}}).pointer("open")}else if("yith_default_pointer"==e){var k=f.add(a),g=a.find(c.target.replace("#",".")),l=b(c.target);l.addClass("wp-has-current-submenu");g.pointer({pointerClass:"yit-wp-pointer",content:d.content,position:d.position,open:function(){l.addClass("yit-pointer-selected-row")},
|
3 |
+
close:function(){l.removeClass("yit-pointer-selected-row wp-has-current-submenu");b.ajax({type:"POST",url:ajaxurl,data:{action:"dismiss-wp-pointer",pointer:e},success:function(a){}})}}).pointer("open")}})});
|
plugin-fw/assets/js/yith-enhanced-select-wc-2.6.js
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
global yith_framework_enhanced_select_params
|
3 |
+
*/
|
4 |
+
jQuery( document ).ready( function ( $ ) {
|
5 |
+
"use strict";
|
6 |
+
|
7 |
+
$( document.body )
|
8 |
+
.on( 'yith-framework-enhanced-select-init', function () {
|
9 |
+
// Post Search
|
10 |
+
$( ':input.yith-post-search' ).filter( ':not(.enhanced)' ).each( function () {
|
11 |
+
var default_data = {
|
12 |
+
action : 'yith_plugin_fw_json_search_posts',
|
13 |
+
security : yith_framework_enhanced_select_params.search_posts_nonce,
|
14 |
+
post_type: 'post'
|
15 |
+
},
|
16 |
+
current_data = $.extend( default_data, $( this ).data() ),
|
17 |
+
select2_args = {
|
18 |
+
allowClear : $( this ).data( 'allow_clear' ) ? true : false,
|
19 |
+
placeholder : $( this ).data( 'placeholder' ),
|
20 |
+
minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3',
|
21 |
+
escapeMarkup : function ( m ) {
|
22 |
+
return m;
|
23 |
+
},
|
24 |
+
ajax : {
|
25 |
+
url : yith_framework_enhanced_select_params.ajax_url,
|
26 |
+
dataType : 'json',
|
27 |
+
quietMillis: 250,
|
28 |
+
data : function ( term ) {
|
29 |
+
current_data.term = term;
|
30 |
+
return current_data;
|
31 |
+
},
|
32 |
+
results : function ( data ) {
|
33 |
+
var terms = [];
|
34 |
+
if ( data ) {
|
35 |
+
$.each( data, function ( id, text ) {
|
36 |
+
terms.push( { id: id, text: text } );
|
37 |
+
} );
|
38 |
+
}
|
39 |
+
return {
|
40 |
+
results: terms
|
41 |
+
};
|
42 |
+
},
|
43 |
+
cache : true
|
44 |
+
}
|
45 |
+
};
|
46 |
+
|
47 |
+
if ( $( this ).data( 'multiple' ) === true ) {
|
48 |
+
select2_args.multiple = true;
|
49 |
+
select2_args.initSelection = function ( element, callback ) {
|
50 |
+
var data = $.parseJSON( element.attr( 'data-selected' ) );
|
51 |
+
var selected = [];
|
52 |
+
|
53 |
+
$( element.val().split( ',' ) ).each( function ( i, val ) {
|
54 |
+
selected.push( {
|
55 |
+
id : val,
|
56 |
+
text: data[ val ]
|
57 |
+
} );
|
58 |
+
} );
|
59 |
+
return callback( selected );
|
60 |
+
};
|
61 |
+
select2_args.formatSelection = function ( data ) {
|
62 |
+
return '<div class="selected-option" data-id="' + data.id + '">' + data.text + '</div>';
|
63 |
+
};
|
64 |
+
} else {
|
65 |
+
select2_args.multiple = false;
|
66 |
+
select2_args.initSelection = function ( element, callback ) {
|
67 |
+
var data = {
|
68 |
+
id : element.val(),
|
69 |
+
text: element.attr( 'data-selected' )
|
70 |
+
};
|
71 |
+
return callback( data );
|
72 |
+
};
|
73 |
+
}
|
74 |
+
|
75 |
+
$( this ).select2( select2_args ).addClass( 'enhanced' );
|
76 |
+
} );
|
77 |
+
|
78 |
+
// Term Search
|
79 |
+
$( ':input.yith-term-search' ).filter( ':not(.enhanced)' ).each( function () {
|
80 |
+
var default_data = {
|
81 |
+
action : 'yith_plugin_fw_json_search_terms',
|
82 |
+
security : yith_framework_enhanced_select_params.search_terms_nonce,
|
83 |
+
taxonomy: 'category'
|
84 |
+
},
|
85 |
+
current_data = $.extend( default_data, $( this ).data() ),
|
86 |
+
select2_args = {
|
87 |
+
allowClear : $( this ).data( 'allow_clear' ) ? true : false,
|
88 |
+
placeholder : $( this ).data( 'placeholder' ),
|
89 |
+
minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3',
|
90 |
+
escapeMarkup : function ( m ) {
|
91 |
+
return m;
|
92 |
+
},
|
93 |
+
ajax : {
|
94 |
+
url : yith_framework_enhanced_select_params.ajax_url,
|
95 |
+
dataType : 'json',
|
96 |
+
quietMillis: 250,
|
97 |
+
data : function ( term ) {
|
98 |
+
current_data.term = term;
|
99 |
+
return current_data;
|
100 |
+
},
|
101 |
+
results : function ( data ) {
|
102 |
+
var terms = [];
|
103 |
+
if ( data ) {
|
104 |
+
$.each( data, function ( id, text ) {
|
105 |
+
terms.push( { id: id, text: text } );
|
106 |
+
} );
|
107 |
+
}
|
108 |
+
return {
|
109 |
+
results: terms
|
110 |
+
};
|
111 |
+
},
|
112 |
+
cache : true
|
113 |
+
}
|
114 |
+
};
|
115 |
+
|
116 |
+
if ( $( this ).data( 'multiple' ) === true ) {
|
117 |
+
select2_args.multiple = true;
|
118 |
+
select2_args.initSelection = function ( element, callback ) {
|
119 |
+
var data = $.parseJSON( element.attr( 'data-selected' ) );
|
120 |
+
var selected = [];
|
121 |
+
|
122 |
+
$( element.val().split( ',' ) ).each( function ( i, val ) {
|
123 |
+
selected.push( {
|
124 |
+
id : val,
|
125 |
+
text: data[ val ]
|
126 |
+
} );
|
127 |
+
} );
|
128 |
+
return callback( selected );
|
129 |
+
};
|
130 |
+
select2_args.formatSelection = function ( data ) {
|
131 |
+
return '<div class="selected-option" data-id="' + data.id + '">' + data.text + '</div>';
|
132 |
+
};
|
133 |
+
} else {
|
134 |
+
select2_args.multiple = false;
|
135 |
+
select2_args.initSelection = function ( element, callback ) {
|
136 |
+
var data = {
|
137 |
+
id : element.val(),
|
138 |
+
text: element.attr( 'data-selected' )
|
139 |
+
};
|
140 |
+
return callback( data );
|
141 |
+
};
|
142 |
+
}
|
143 |
+
|
144 |
+
$( this ).select2( select2_args ).addClass( 'enhanced' );
|
145 |
+
} );
|
146 |
+
} ).trigger( 'yith-framework-enhanced-select-init' );
|
147 |
+
|
148 |
+
} );
|
plugin-fw/assets/js/yith-enhanced-select-wc-2.6.min.js
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(a){a(document.body).on("yith-framework-enhanced-select-init",function(){a(":input.yith-post-search").filter(":not(.enhanced)").each(function(){var d=a.extend({action:"yith_plugin_fw_json_search_posts",security:yith_framework_enhanced_select_params.search_posts_nonce,post_type:"post"},a(this).data()),c={allowClear:a(this).data("allow_clear")?!0:!1,placeholder:a(this).data("placeholder"),minimumInputLength:a(this).data("minimum_input_length")?a(this).data("minimum_input_length"):
|
2 |
+
"3",escapeMarkup:function(b){return b},ajax:{url:yith_framework_enhanced_select_params.ajax_url,dataType:"json",quietMillis:250,data:function(b){d.term=b;return d},results:function(b){var c=[];b&&a.each(b,function(b,a){c.push({id:b,text:a})});return{results:c}},cache:!0}};!0===a(this).data("multiple")?(c.multiple=!0,c.initSelection=function(b,c){var f=a.parseJSON(b.attr("data-selected")),e=[];a(b.val().split(",")).each(function(b,a){e.push({id:a,text:f[a]})});return c(e)},c.formatSelection=function(b){return'<div class="selected-option" data-id="'+
|
3 |
+
b.id+'">'+b.text+"</div>"}):(c.multiple=!1,c.initSelection=function(b,a){var c={id:b.val(),text:b.attr("data-selected")};return a(c)});a(this).select2(c).addClass("enhanced")});a(":input.yith-term-search").filter(":not(.enhanced)").each(function(){var d=a.extend({action:"yith_plugin_fw_json_search_terms",security:yith_framework_enhanced_select_params.search_terms_nonce,taxonomy:"category"},a(this).data()),c={allowClear:a(this).data("allow_clear")?!0:!1,placeholder:a(this).data("placeholder"),minimumInputLength:a(this).data("minimum_input_length")?
|
4 |
+
a(this).data("minimum_input_length"):"3",escapeMarkup:function(b){return b},ajax:{url:yith_framework_enhanced_select_params.ajax_url,dataType:"json",quietMillis:250,data:function(b){d.term=b;return d},results:function(b){var c=[];b&&a.each(b,function(b,a){c.push({id:b,text:a})});return{results:c}},cache:!0}};!0===a(this).data("multiple")?(c.multiple=!0,c.initSelection=function(b,c){var d=a.parseJSON(b.attr("data-selected")),e=[];a(b.val().split(",")).each(function(b,a){e.push({id:a,text:d[a]})});
|
5 |
+
return c(e)},c.formatSelection=function(a){return'<div class="selected-option" data-id="'+a.id+'">'+a.text+"</div>"}):(c.multiple=!1,c.initSelection=function(a,c){var d={id:a.val(),text:a.attr("data-selected")};return c(d)});a(this).select2(c).addClass("enhanced")})}).trigger("yith-framework-enhanced-select-init")});
|
plugin-fw/assets/js/yith-enhanced-select.js
ADDED
@@ -0,0 +1,136 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* global yith_framework_enhanced_select_params */
|
2 |
+
|
3 |
+
jQuery( document ).ready( function ( $ ) {
|
4 |
+
"use strict";
|
5 |
+
|
6 |
+
$( document.body )
|
7 |
+
.on( 'yith-framework-enhanced-select-init', function () {
|
8 |
+
// Post Search
|
9 |
+
$( '.yith-post-search' ).filter( ':not(.enhanced)' ).each( function () {
|
10 |
+
var default_data = {
|
11 |
+
action : 'yith_plugin_fw_json_search_posts',
|
12 |
+
security : yith_framework_enhanced_select_params.search_posts_nonce,
|
13 |
+
post_type: 'post'
|
14 |
+
},
|
15 |
+
current_data = $.extend( default_data, $( this ).data() ),
|
16 |
+
select2_args = {
|
17 |
+
allowClear : $( this ).data( 'allow_clear' ) ? true : false,
|
18 |
+
placeholder : $( this ).data( 'placeholder' ),
|
19 |
+
minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3',
|
20 |
+
escapeMarkup : function ( m ) {
|
21 |
+
return m;
|
22 |
+
},
|
23 |
+
ajax : {
|
24 |
+
url : ajaxurl,
|
25 |
+
dataType : 'json',
|
26 |
+
quietMillis : 250,
|
27 |
+
data : function ( params ) {
|
28 |
+
var default_data_to_return = {
|
29 |
+
term: params.term
|
30 |
+
};
|
31 |
+
|
32 |
+
return $.extend( default_data_to_return, current_data );
|
33 |
+
},
|
34 |
+
processResults: function ( data ) {
|
35 |
+
var terms = [];
|
36 |
+
if ( data ) {
|
37 |
+
$.each( data, function ( id, text ) {
|
38 |
+
terms.push( { id: id, text: text } );
|
39 |
+
} );
|
40 |
+
}
|
41 |
+
return {
|
42 |
+
results: terms
|
43 |
+
};
|
44 |
+
},
|
45 |
+
cache : true
|
46 |
+
}
|
47 |
+
};
|
48 |
+
|
49 |
+
$( this ).select2( select2_args ).addClass( 'enhanced' );
|
50 |
+
|
51 |
+
if ( $( this ).data( 'sortable' ) ) {
|
52 |
+
var $select = $( this );
|
53 |
+
var $list = $( this ).next( '.select2-container' ).find( 'ul.select2-selection__rendered' );
|
54 |
+
|
55 |
+
$list.sortable( {
|
56 |
+
placeholder : 'ui-state-highlight select2-selection__choice',
|
57 |
+
forcePlaceholderSize: true,
|
58 |
+
items : 'li:not(.select2-search__field)',
|
59 |
+
tolerance : 'pointer',
|
60 |
+
stop : function () {
|
61 |
+
$( $list.find( '.select2-selection__choice' ).get().reverse() ).each( function () {
|
62 |
+
var id = $( this ).data( 'data' ).id;
|
63 |
+
var option = $select.find( 'option[value="' + id + '"]' )[ 0 ];
|
64 |
+
$select.prepend( option );
|
65 |
+
} );
|
66 |
+
}
|
67 |
+
} );
|
68 |
+
}
|
69 |
+
} );
|
70 |
+
|
71 |
+
// TERM SEARCH
|
72 |
+
$( '.yith-term-search' ).filter( ':not(.enhanced)' ).each( function () {
|
73 |
+
var default_data = {
|
74 |
+
action : 'yith_plugin_fw_json_search_terms',
|
75 |
+
security: yith_framework_enhanced_select_params.search_terms_nonce,
|
76 |
+
taxonomy: 'category'
|
77 |
+
},
|
78 |
+
current_data = $.extend( default_data, $( this ).data() ),
|
79 |
+
select2_args = {
|
80 |
+
allowClear : $( this ).data( 'allow_clear' ) ? true : false,
|
81 |
+
placeholder : $( this ).data( 'placeholder' ),
|
82 |
+
minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3',
|
83 |
+
escapeMarkup : function ( m ) {
|
84 |
+
return m;
|
85 |
+
},
|
86 |
+
ajax : {
|
87 |
+
url : ajaxurl,
|
88 |
+
dataType : 'json',
|
89 |
+
quietMillis : 250,
|
90 |
+
data : function ( params ) {
|
91 |
+
var default_data_to_return = {
|
92 |
+
term: params.term
|
93 |
+
};
|
94 |
+
|
95 |
+
return $.extend( default_data_to_return, current_data );
|
96 |
+
},
|
97 |
+
processResults: function ( data ) {
|
98 |
+
var terms = [];
|
99 |
+
if ( data ) {
|
100 |
+
$.each( data, function ( id, text ) {
|
101 |
+
terms.push( { id: id, text: text } );
|
102 |
+
} );
|
103 |
+
}
|
104 |
+
return {
|
105 |
+
results: terms
|
106 |
+
};
|
107 |
+
},
|
108 |
+
cache : true
|
109 |
+
}
|
110 |
+
};
|
111 |
+
|
112 |
+
$( this ).select2( select2_args ).addClass( 'enhanced' );
|
113 |
+
|
114 |
+
if ( $( this ).data( 'sortable' ) ) {
|
115 |
+
var $select = $( this );
|
116 |
+
var $list = $( this ).next( '.select2-container' ).find( 'ul.select2-selection__rendered' );
|
117 |
+
|
118 |
+
$list.sortable( {
|
119 |
+
placeholder : 'ui-state-highlight select2-selection__choice',
|
120 |
+
forcePlaceholderSize: true,
|
121 |
+
items : 'li:not(.select2-search__field)',
|
122 |
+
tolerance : 'pointer',
|
123 |
+
stop : function () {
|
124 |
+
$( $list.find( '.select2-selection__choice' ).get().reverse() ).each( function () {
|
125 |
+
var id = $( this ).data( 'data' ).id;
|
126 |
+
var option = $select.find( 'option[value="' + id + '"]' )[ 0 ];
|
127 |
+
$select.prepend( option );
|
128 |
+
} );
|
129 |
+
}
|
130 |
+
} );
|
131 |
+
}
|
132 |
+
} );
|
133 |
+
|
134 |
+
} ).trigger( 'yith-framework-enhanced-select-init' );
|
135 |
+
|
136 |
+
} );
|
plugin-fw/assets/js/yith-enhanced-select.min.js
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(a){a(document.body).on("yith-framework-enhanced-select-init",function(){a(".yith-post-search").filter(":not(.enhanced)").each(function(){var e=a.extend({action:"yith_plugin_fw_json_search_posts",security:yith_framework_enhanced_select_params.search_posts_nonce,post_type:"post"},a(this).data()),f={allowClear:a(this).data("allow_clear")?!0:!1,placeholder:a(this).data("placeholder"),minimumInputLength:a(this).data("minimum_input_length")?a(this).data("minimum_input_length"):
|
2 |
+
"3",escapeMarkup:function(a){return a},ajax:{url:ajaxurl,dataType:"json",quietMillis:250,data:function(b){return a.extend({term:b.term},e)},processResults:function(b){var c=[];b&&a.each(b,function(a,b){c.push({id:a,text:b})});return{results:c}},cache:!0}};a(this).select2(f).addClass("enhanced");if(a(this).data("sortable")){var c=a(this),d=a(this).next(".select2-container").find("ul.select2-selection__rendered");d.sortable({placeholder:"ui-state-highlight select2-selection__choice",forcePlaceholderSize:!0,
|
3 |
+
items:"li:not(.select2-search__field)",tolerance:"pointer",stop:function(){a(d.find(".select2-selection__choice").get().reverse()).each(function(){var b=a(this).data("data").id,b=c.find('option[value="'+b+'"]')[0];c.prepend(b)})}})}});a(".yith-term-search").filter(":not(.enhanced)").each(function(){var e=a.extend({action:"yith_plugin_fw_json_search_terms",security:yith_framework_enhanced_select_params.search_terms_nonce,taxonomy:"category"},a(this).data()),f={allowClear:a(this).data("allow_clear")?
|
4 |
+
!0:!1,placeholder:a(this).data("placeholder"),minimumInputLength:a(this).data("minimum_input_length")?a(this).data("minimum_input_length"):"3",escapeMarkup:function(a){return a},ajax:{url:ajaxurl,dataType:"json",quietMillis:250,data:function(b){return a.extend({term:b.term},e)},processResults:function(b){var c=[];b&&a.each(b,function(a,b){c.push({id:a,text:b})});return{results:c}},cache:!0}};a(this).select2(f).addClass("enhanced");if(a(this).data("sortable")){var c=a(this),d=a(this).next(".select2-container").find("ul.select2-selection__rendered");
|
5 |
+
d.sortable({placeholder:"ui-state-highlight select2-selection__choice",forcePlaceholderSize:!0,items:"li:not(.select2-search__field)",tolerance:"pointer",stop:function(){a(d.find(".select2-selection__choice").get().reverse()).each(function(){var b=a(this).data("data").id,b=c.find('option[value="'+b+'"]')[0];c.prepend(b)})}})}})}).trigger("yith-framework-enhanced-select-init")});
|
plugin-fw/assets/js/yith-fields.js
ADDED
@@ -0,0 +1,350 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery( function ( $ ) {
|
2 |
+
|
3 |
+
var $datepicker = $( '.yith-plugin-fw-datepicker' ),
|
4 |
+
$colorpicker = $( '.yith-plugin-fw-colorpicker' ),
|
5 |
+
$upload = {
|
6 |
+
imgPreviewHandler : '.yith-plugin-fw-upload-img-preview',
|
7 |
+
uploadButtonHandler: '.yith-plugin-fw-upload-button',
|
8 |
+
imgUrlHandler : '.yith-plugin-fw-upload-img-url',
|
9 |
+
resetButtonHandler : '.yith-plugin-fw-upload-button-reset',
|
10 |
+
imgUrl : $( '.yith-plugin-fw-upload-img-url' )
|
11 |
+
},
|
12 |
+
$wpAddMedia = $( '.add_media' ),
|
13 |
+
$imageGallery = {
|
14 |
+
sliderWrapper: $( '.yith-plugin-fw .image-gallery ul.slides-wrapper' ),
|
15 |
+
buttonHandler: '.yith-plugin-fw .image-gallery-button'
|
16 |
+
},
|
17 |
+
$onoff = $( '.yith-plugin-fw-onoff-container span' ),
|
18 |
+
$sidebars = $( '.yith-plugin-fw-sidebar-layout' ),
|
19 |
+
$slider = $( '.yith-plugin-fw .yith-plugin-fw-slider-container .ui-slider-horizontal' ),
|
20 |
+
$codemirror = $( '.codemirror' ),
|
21 |
+
$icons = $( '.yit-icons-manager-wrapper' );
|
22 |
+
|
23 |
+
/* Datepicker */
|
24 |
+
$datepicker.each( function () {
|
25 |
+
var args = $( this ).data();
|
26 |
+
$( this ).datepicker( args );
|
27 |
+
} );
|
28 |
+
|
29 |
+
/* Colorpicker */
|
30 |
+
$colorpicker.wpColorPicker( {
|
31 |
+
clear: function () {
|
32 |
+
var input = $( this );
|
33 |
+
input.val( input.data( 'default-color' ) );
|
34 |
+
input.change();
|
35 |
+
}
|
36 |
+
} );
|
37 |
+
$colorpicker.each( function () {
|
38 |
+
var select_label = $( this ).data( 'variations-label' );
|
39 |
+
$( this ).parent().parent().find( 'a.wp-color-result' ).attr( 'title', select_label );
|
40 |
+
} );
|
41 |
+
|
42 |
+
/* Upload */
|
43 |
+
if ( typeof wp !== 'undefined' && typeof wp.media !== 'undefined' ) {
|
44 |
+
var _custom_media = true;
|
45 |
+
// preview
|
46 |
+
$upload.imgUrl.change( function () {
|
47 |
+
var url = $( this ).val(),
|
48 |
+
re = new RegExp( "(http|ftp|https)://[a-zA-Z0-9@?^=%&:/~+#-_.]*.(gif|jpg|jpeg|png|ico)" ),
|
49 |
+
preview = $( this ).parent().find( $upload.imgPreviewHandler ).first();
|
50 |
+
|
51 |
+
if ( preview.length < 1 )
|
52 |
+
preview = $( this ).parent().parent().find( $upload.imgPreviewHandler ).first();
|
53 |
+
|
54 |
+
if ( re.test( url ) ) {
|
55 |
+
preview.html( '<img src="' + url + '" style="max-width:100px; max-height:100px;" />' );
|
56 |
+
} else {
|
57 |
+
preview.html( '' );
|
58 |
+
}
|
59 |
+
} ).trigger( 'change' );
|
60 |
+
|
61 |
+
$( document ).on( 'click', $upload.uploadButtonHandler, function ( e ) {
|
62 |
+
e.preventDefault();
|
63 |
+
|
64 |
+
var t = $( this ),
|
65 |
+
custom_uploader,
|
66 |
+
id = t.attr( 'id' ).replace( /-button$/, '' );
|
67 |
+
|
68 |
+
//If the uploader object has already been created, reopen the dialog
|
69 |
+
if ( custom_uploader ) {
|
70 |
+
custom_uploader.open();
|
71 |
+
return;
|
72 |
+
}
|
73 |
+
|
74 |
+
var custom_uploader_states = [
|
75 |
+
// Main states.
|
76 |
+
new wp.media.controller.Library( {
|
77 |
+
library : wp.media.query(),
|
78 |
+
multiple : false,
|
79 |
+
title : 'Choose Image',
|
80 |
+
priority : 20,
|
81 |
+
filterable: 'uploaded'
|
82 |
+
} )
|
83 |
+
];
|
84 |
+
|
85 |
+
// Create the media frame.
|
86 |
+
custom_uploader = wp.media.frames.downloadable_file = wp.media( {
|
87 |
+
// Set the title of the modal.
|
88 |
+
title : 'Choose Image',
|
89 |
+
library : {
|
90 |
+
type: ''
|
91 |
+
},
|
92 |
+
button : {
|
93 |
+
text: 'Choose Image'
|
94 |
+
},
|
95 |
+
multiple: false,
|
96 |
+
states : custom_uploader_states
|
97 |
+
} );
|
98 |
+
|
99 |
+
//When a file is selected, grab the URL and set it as the text field's value
|
100 |
+
custom_uploader.on( 'select', function () {
|
101 |
+
var attachment = custom_uploader.state().get( 'selection' ).first().toJSON();
|
102 |
+
|
103 |
+
$( "#" + id ).val( attachment.url );
|
104 |
+
// Save the id of the selected element to an element which name is the same with a suffix "-yith-attachment-id"
|
105 |
+
if ( $( "#" + id + "-yith-attachment-id" ) ) {
|
106 |
+
$( "#" + id + "-yith-attachment-id" ).val( attachment.id );
|
107 |
+
}
|
108 |
+
$upload.imgUrl.trigger( 'change' );
|
109 |
+
} );
|
110 |
+
|
111 |
+
//Open the uploader dialog
|
112 |
+
custom_uploader.open();
|
113 |
+
} );
|
114 |
+
|
115 |
+
$( document ).on( 'click', $upload.resetButtonHandler, function ( e ) {
|
116 |
+
var t = $( this ),
|
117 |
+
id = t.attr( 'id' ),
|
118 |
+
input_id = t.attr( 'id' ).replace( /-button-reset$/, '' ),
|
119 |
+
default_value = $( '#' + id ).data( 'default' );
|
120 |
+
|
121 |
+
$( "#" + input_id ).val( default_value );
|
122 |
+
$upload.imgUrl.trigger( 'change' );
|
123 |
+
} );
|
124 |
+
}
|
125 |
+
|
126 |
+
$wpAddMedia.on( 'click', function () {
|
127 |
+
_custom_media = false;
|
128 |
+
} );
|
129 |
+
|
130 |
+
/* Image Gallery */
|
131 |
+
if ( typeof wp !== 'undefined' && typeof wp.media !== 'undefined' ) {
|
132 |
+
$( document ).on( 'click', $imageGallery.buttonHandler, function ( e ) {
|
133 |
+
var $t = $( this ),
|
134 |
+
$container = $t.closest( '.image-gallery' ),
|
135 |
+
$image_gallery_ids = $container.find( '.image_gallery_ids' ),
|
136 |
+
attachment_ids = $image_gallery_ids.val(),
|
137 |
+
$gallery_images_wrapper = $container.find( 'ul.slides-wrapper' );
|
138 |
+
|
139 |
+
// Create the media frame.
|
140 |
+
var image_gallery_frame = wp.media.frames.image_gallery = wp.media( {
|
141 |
+
// Set the title of the modal.
|
142 |
+
title : $t.data( 'choose' ),
|
143 |
+
button: {
|
144 |
+
text: $t.data( 'update' )
|
145 |
+
},
|
146 |
+
states: [
|
147 |
+
new wp.media.controller.Library( {
|
148 |
+
title : $t.data( 'choose' ),
|
149 |
+
filterable: 'all',
|
150 |
+
multiple : true
|
151 |
+
} )
|
152 |
+
]
|
153 |
+
} );
|
154 |
+
|
155 |
+
// When an image is selected, run a callback.
|
156 |
+
image_gallery_frame.on( 'select', function () {
|
157 |
+
var selection = image_gallery_frame.state().get( 'selection' );
|
158 |
+
selection.map( function ( attachment ) {
|
159 |
+
attachment = attachment.toJSON();
|
160 |
+
|
161 |
+
if ( attachment.id ) {
|
162 |
+
attachment_ids = attachment_ids ? attachment_ids + "," + attachment.id : attachment.id;
|
163 |
+
$gallery_images_wrapper.append( '<li class="image" data-attachment_id="' + attachment.id + '"><img src="' + attachment.sizes.thumbnail.url + '"/><ul class="actions"><li><a href="#" class="delete" title="' + $t.data( 'delete' ) + '">x</a></li></ul></li>' );
|
164 |
+
}
|
165 |
+
} );
|
166 |
+
|
167 |
+
$image_gallery_ids.val( attachment_ids );
|
168 |
+
} );
|
169 |
+
|
170 |
+
image_gallery_frame.open();
|
171 |
+
|
172 |
+
} );
|
173 |
+
|
174 |
+
// Image ordering
|
175 |
+
$imageGallery.sliderWrapper.each( function () {
|
176 |
+
var $t = $( this );
|
177 |
+
$t.sortable( {
|
178 |
+
items : 'li.image',
|
179 |
+
cursor : 'move',
|
180 |
+
scrollSensitivity : 40,
|
181 |
+
forcePlaceholderSize: true,
|
182 |
+
forceHelperSize : false,
|
183 |
+
helper : 'clone',
|
184 |
+
opacity : 0.65,
|
185 |
+
start : function ( event, ui ) {
|
186 |
+
ui.item.css( 'background-color', '#f6f6f6' );
|
187 |
+
},
|
188 |
+
stop : function ( event, ui ) {
|
189 |
+
ui.item.removeAttr( 'style' );
|
190 |
+
},
|
191 |
+
update : function ( event, ui ) {
|
192 |
+
var attachment_ids = '';
|
193 |
+
|
194 |
+
$t.find( 'li.image' ).css( 'cursor', 'default' ).each( function () {
|
195 |
+
var attachment_id = $( this ).attr( 'data-attachment_id' );
|
196 |
+
attachment_ids = attachment_ids + attachment_id + ',';
|
197 |
+
} );
|
198 |
+
|
199 |
+
$t.closest( '.image-gallery' ).find( '.image_gallery_ids' ).val( attachment_ids );
|
200 |
+
}
|
201 |
+
} );
|
202 |
+
} );
|
203 |
+
|
204 |
+
// Remove images
|
205 |
+
$imageGallery.sliderWrapper.on( 'click', 'a.delete', function () {
|
206 |
+
var $wrapper = $( this ).closest( '.image-gallery' ),
|
207 |
+
$gallery = $( this ).closest( '.image-gallery ul.slides-wrapper' ),
|
208 |
+
$image_gallery_ids = $wrapper.find( '.image_gallery_ids' ),
|
209 |
+
attachment_ids = '';
|
210 |
+
|
211 |
+
$( this ).closest( 'li.image' ).remove();
|
212 |
+
|
213 |
+
$gallery.find( 'li.image' ).css( 'cursor', 'default' ).each( function () {
|
214 |
+
var attachment_id = $( this ).attr( 'data-attachment_id' );
|
215 |
+
attachment_ids = attachment_ids + attachment_id + ',';
|
216 |
+
} );
|
217 |
+
|
218 |
+
$image_gallery_ids.val( attachment_ids );
|
219 |
+
} );
|
220 |
+
}
|
221 |
+
|
222 |
+
/* on-off */
|
223 |
+
$onoff.on( 'click', function () {
|
224 |
+
var input = $( this ).prev( 'input' ),
|
225 |
+
checked = input.prop( 'checked' );
|
226 |
+
|
227 |
+
if ( checked ) {
|
228 |
+
input.prop( 'checked', false ).attr( 'value', 'no' ).removeClass( 'onoffchecked' );
|
229 |
+
} else {
|
230 |
+
input.prop( 'checked', true ).attr( 'value', 'yes' ).addClass( 'onoffchecked' );
|
231 |
+
}
|
232 |
+
|
233 |
+
input.change();
|
234 |
+
} );
|
235 |
+
|
236 |
+
/* Sidebars */
|
237 |
+
$sidebars.each( function () {
|
238 |
+
var $images = $( this ).find( 'img' );
|
239 |
+
$images.on( 'click', function () {
|
240 |
+
var $container = $( this ).closest( '.yith-plugin-fw-sidebar-layout' ),
|
241 |
+
$left = $container.find( '.yith-plugin-fw-sidebar-layout-sidebar-left-container' ),
|
242 |
+
$right = $container.find( '.yith-plugin-fw-sidebar-layout-sidebar-right-container' ),
|
243 |
+
type = $( this ).data( 'type' );
|
244 |
+
|
245 |
+
$( this ).parent().children( ':radio' ).attr( 'checked', false );
|
246 |
+
$( this ).prev( ':radio' ).attr( 'checked', true );
|
247 |
+
|
248 |
+
if ( typeof type != 'undefined' ) {
|
249 |
+
switch ( type ) {
|
250 |
+
case 'left':
|
251 |
+
$left.show();
|
252 |
+
$right.hide();
|
253 |
+
break;
|
254 |
+
case 'right':
|
255 |
+
$right.show();
|
256 |
+
$left.hide();
|
257 |
+
break;
|
258 |
+
case 'double':
|
259 |
+
$left.show();
|
260 |
+
$right.show();
|
261 |
+
break;
|
262 |
+
default:
|
263 |
+
$left.hide();
|
264 |
+
$right.hide();
|
265 |
+
break;
|
266 |
+
}
|
267 |
+
}
|
268 |
+
} );
|
269 |
+
} );
|
270 |
+
|
271 |
+
/* Slider */
|
272 |
+
$slider.each( function () {
|
273 |
+
var val = $( this ).data( 'val' ),
|
274 |
+
minValue = $( this ).data( 'min' ),
|
275 |
+
maxValue = $( this ).data( 'max' ),
|
276 |
+
step = $( this ).data( 'step' ),
|
277 |
+
labels = $( this ).data( 'labels' );
|
278 |
+
|
279 |
+
$( this ).slider( {
|
280 |
+
value: val,
|
281 |
+
min : minValue,
|
282 |
+
max : maxValue,
|
283 |
+
range: 'min',
|
284 |
+
step : step,
|
285 |
+
|
286 |
+
create: function() {
|
287 |
+
$( this ).find( '.ui-slider-handle' ).text( $( this ).slider( "value" ) );
|
288 |
+
},
|
289 |
+
|
290 |
+
|
291 |
+
slide: function ( event, ui ) {
|
292 |
+
$( this ).find( 'input' ).val( ui.value );
|
293 |
+
$( this ).find( '.ui-slider-handle' ).text( ui.value );
|
294 |
+
$( this ).siblings( '.feedback' ).find( 'strong' ).text( ui.value + labels );
|
295 |
+
}
|
296 |
+
} );
|
297 |
+
} );
|
298 |
+
|
299 |
+
/* codemirror */
|
300 |
+
$codemirror.each( function ( i, v ) {
|
301 |
+
var editor = CodeMirror.fromTextArea( v, {
|
302 |
+
lineNumbers : 1,
|
303 |
+
mode : 'javascript',
|
304 |
+
showCursorWhenSelecting: true
|
305 |
+
} );
|
306 |
+
|
307 |
+
$( v ).data( 'codemirrorInstance', editor );
|
308 |
+
} );
|
309 |
+
|
310 |
+
/* Select All - Deselect All */
|
311 |
+
$( document ).on( 'click', '.yith-plugin-fw-select-all', function () {
|
312 |
+
var $targetSelect = $( '#' + $( this ).data( 'select-id' ) );
|
313 |
+
$targetSelect.find( 'option' ).prop( 'selected', true ).trigger( 'change' );
|
314 |
+
} );
|
315 |
+
|
316 |
+
$( document ).on( 'click', '.yith-plugin-fw-deselect-all', function () {
|
317 |
+
var $targetSelect = $( '#' + $( this ).data( 'select-id' ) );
|
318 |
+
$targetSelect.find( 'option' ).prop( 'selected', false ).trigger( 'change' );
|
319 |
+
} );
|
320 |
+
|
321 |
+
|
322 |
+
$icons.each( function () {
|
323 |
+
var $container = $( this ),
|
324 |
+
$preview = $container.find( '.yit-icons-manager-icon-preview' ).first(),
|
325 |
+
$text = $container.find( '.yit-icons-manager-icon-text' );
|
326 |
+
|
327 |
+
$container.on( 'click', '.yit-icons-manager-list li', function ( event ) {
|
328 |
+
var $target = $( event.target ).closest( 'li' ),
|
329 |
+
font = $target.data( 'font' ),
|
330 |
+
icon = $target.data( 'icon' ),
|
331 |
+
key = $target.data( 'key' ),
|
332 |
+
name = $target.data( 'name' );
|
333 |
+
|
334 |
+
$preview.attr( 'data-font', font );
|
335 |
+
$preview.attr( 'data-icon', icon );
|
336 |
+
$preview.attr( 'data-key', key );
|
337 |
+
$preview.attr( 'data-name', name );
|
338 |
+
|
339 |
+
$text.val( font + ':' + name );
|
340 |
+
|
341 |
+
$container.find( '.yit-icons-manager-list li' ).removeClass( 'active' );
|
342 |
+
$target.addClass( 'active' );
|
343 |
+
} );
|
344 |
+
|
345 |
+
$container.on( 'click', '.yit-icons-manager-action-set-default', function () {
|
346 |
+
$container.find( '.yit-icons-manager-list li.default' ).trigger( 'click' );
|
347 |
+
} );
|
348 |
+
} );
|
349 |
+
|
350 |
+
} );
|
plugin-fw/assets/js/yith-fields.min.js
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(a,g,e){a instanceof String&&(a=String(a));for(var d=a.length,h=0;h<d;h++){var l=a[h];if(g.call(e,l,h,a))return{i:h,v:l}}return{i:-1,v:void 0}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(a,g,e){a!=Array.prototype&&a!=Object.prototype&&(a[g]=e.value)};
|
2 |
+
$jscomp.getGlobal=function(a){return"undefined"!=typeof window&&window===a?a:"undefined"!=typeof global&&null!=global?global:a};$jscomp.global=$jscomp.getGlobal(this);$jscomp.polyfill=function(a,g,e,d){if(g){e=$jscomp.global;a=a.split(".");for(d=0;d<a.length-1;d++){var h=a[d];h in e||(e[h]={});e=e[h]}a=a[a.length-1];d=e[a];g=g(d);g!=d&&null!=g&&$jscomp.defineProperty(e,a,{configurable:!0,writable:!0,value:g})}};
|
3 |
+
$jscomp.polyfill("Array.prototype.find",function(a){return a?a:function(a,e){return $jscomp.findInternal(this,a,e).v}},"es6","es3");
|
4 |
+
jQuery(function(a){var g=a(".yith-plugin-fw-datepicker"),e=a(".yith-plugin-fw-colorpicker"),d=a(".yith-plugin-fw-upload-img-url"),h=a(".add_media"),l=a(".yith-plugin-fw .image-gallery ul.slides-wrapper"),m=a(".yith-plugin-fw-onoff-container span"),n=a(".yith-plugin-fw-sidebar-layout"),p=a(".yith-plugin-fw .yith-plugin-fw-slider-container .ui-slider-horizontal"),q=a(".codemirror"),r=a(".yit-icons-manager-wrapper");g.each(function(){var b=a(this).data();a(this).datepicker(b)});e.wpColorPicker({clear:function(){var b=
|
5 |
+
a(this);b.val(b.data("default-color"));b.change()}});e.each(function(){var b=a(this).data("variations-label");a(this).parent().parent().find("a.wp-color-result").attr("title",b)});"undefined"!==typeof wp&&"undefined"!==typeof wp.media&&(d.change(function(){var b=a(this).val(),c=a(this).parent().find(".yith-plugin-fw-upload-img-preview").first();1>c.length&&(c=a(this).parent().parent().find(".yith-plugin-fw-upload-img-preview").first());/(http|ftp|https):\/\/[a-zA-Z0-9@?^=%&:/~+#-_.]*.(gif|jpg|jpeg|png|ico)/.test(b)?
|
6 |
+
c.html('<img src="'+b+'" style="max-width:100px; max-height:100px;" />'):c.html("")}).trigger("change"),a(document).on("click",".yith-plugin-fw-upload-button",function(b){b.preventDefault();var c=a(this).attr("id").replace(/-button$/,"");if(!f){b=[new wp.media.controller.Library({library:wp.media.query(),multiple:!1,title:"Choose Image",priority:20,filterable:"uploaded"})];var f=wp.media.frames.downloadable_file=wp.media({title:"Choose Image",library:{type:""},button:{text:"Choose Image"},multiple:!1,
|
7 |
+
states:b});f.on("select",function(){var b=f.state().get("selection").first().toJSON();a("#"+c).val(b.url);a("#"+c+"-yith-attachment-id")&&a("#"+c+"-yith-attachment-id").val(b.id);d.trigger("change")})}f.open()}),a(document).on("click",".yith-plugin-fw-upload-button-reset",function(b){var c=a(this);b=c.attr("id");c=c.attr("id").replace(/-button-reset$/,"");b=a("#"+b).data("default");a("#"+c).val(b);d.trigger("change")}));h.on("click",function(){});"undefined"!==typeof wp&&"undefined"!==typeof wp.media&&
|
8 |
+
(a(document).on("click",".yith-plugin-fw .image-gallery-button",function(b){var c=a(this);b=c.closest(".image-gallery");var f=b.find(".image_gallery_ids"),k=f.val(),e=b.find("ul.slides-wrapper"),d=wp.media.frames.image_gallery=wp.media({title:c.data("choose"),button:{text:c.data("update")},states:[new wp.media.controller.Library({title:c.data("choose"),filterable:"all",multiple:!0})]});d.on("select",function(){d.state().get("selection").map(function(a){a=a.toJSON();a.id&&(k=k?k+","+a.id:a.id,e.append('<li class="image" data-attachment_id="'+
|
9 |
+
a.id+'"><img src="'+a.sizes.thumbnail.url+'"/><ul class="actions"><li><a href="#" class="delete" title="'+c.data("delete")+'">x</a></li></ul></li>'))});f.val(k)});d.open()}),l.each(function(){var b=a(this);b.sortable({items:"li.image",cursor:"move",scrollSensitivity:40,forcePlaceholderSize:!0,forceHelperSize:!1,helper:"clone",opacity:.65,start:function(a,b){b.item.css("background-color","#f6f6f6")},stop:function(a,b){b.item.removeAttr("style")},update:function(c,f){var k="";b.find("li.image").css("cursor",
|
10 |
+
"default").each(function(){var b=a(this).attr("data-attachment_id");k=k+b+","});b.closest(".image-gallery").find(".image_gallery_ids").val(k)}})}),l.on("click","a.delete",function(){var b=a(this).closest(".image-gallery"),c=a(this).closest(".image-gallery ul.slides-wrapper");b=b.find(".image_gallery_ids");var f="";a(this).closest("li.image").remove();c.find("li.image").css("cursor","default").each(function(){var b=a(this).attr("data-attachment_id");f=f+b+","});b.val(f)}));m.on("click",function(){var b=
|
11 |
+
a(this).prev("input");b.prop("checked")?b.prop("checked",!1).attr("value","no").removeClass("onoffchecked"):b.prop("checked",!0).attr("value","yes").addClass("onoffchecked");b.change()});n.each(function(){a(this).find("img").on("click",function(){var b=a(this).closest(".yith-plugin-fw-sidebar-layout"),c=b.find(".yith-plugin-fw-sidebar-layout-sidebar-left-container");b=b.find(".yith-plugin-fw-sidebar-layout-sidebar-right-container");var f=a(this).data("type");a(this).parent().children(":radio").attr("checked",
|
12 |
+
!1);a(this).prev(":radio").attr("checked",!0);if("undefined"!=typeof f)switch(f){case "left":c.show();b.hide();break;case "right":b.show();c.hide();break;case "double":c.show();b.show();break;default:c.hide(),b.hide()}})});p.each(function(){var b=a(this).data("val"),c=a(this).data("min"),f=a(this).data("max"),e=a(this).data("step"),d=a(this).data("labels");a(this).slider({value:b,min:c,max:f,range:"min",step:e,create:function(){a(this).find(".ui-slider-handle").text(a(this).slider("value"))},slide:function(b,
|
13 |
+
c){a(this).find("input").val(c.value);a(this).find(".ui-slider-handle").text(c.value);a(this).siblings(".feedback").find("strong").text(c.value+d)}})});q.each(function(b,c){b=CodeMirror.fromTextArea(c,{lineNumbers:1,mode:"javascript",showCursorWhenSelecting:!0});a(c).data("codemirrorInstance",b)});a(document).on("click",".yith-plugin-fw-select-all",function(){a("#"+a(this).data("select-id")).find("option").prop("selected",!0).trigger("change")});a(document).on("click",".yith-plugin-fw-deselect-all",
|
14 |
+
function(){a("#"+a(this).data("select-id")).find("option").prop("selected",!1).trigger("change")});r.each(function(){var b=a(this),c=b.find(".yit-icons-manager-icon-preview").first(),e=b.find(".yit-icons-manager-icon-text");b.on("click",".yit-icons-manager-list li",function(d){d=a(d.target).closest("li");var f=d.data("font"),g=d.data("icon"),h=d.data("key"),k=d.data("name");c.attr("data-font",f);c.attr("data-icon",g);c.attr("data-key",h);c.attr("data-name",k);e.val(f+":"+k);b.find(".yit-icons-manager-list li").removeClass("active");
|
15 |
+
d.addClass("active")});b.on("click",".yit-icons-manager-action-set-default",function(){b.find(".yit-icons-manager-list li.default").trigger("click")})})});
|
plugin-fw/init.php
CHANGED
@@ -1,14 +1,13 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
* Framework Name: YIT Plugin Framework
|
4 |
-
* Version:
|
5 |
* Author: Yithemes
|
6 |
* Text Domain: yith-plugin-fw
|
7 |
* Domain Path: /languages/
|
8 |
*
|
9 |
* @author Your Inspiration Themes
|
10 |
-
* @
|
11 |
-
* @version 2.0
|
12 |
*/
|
13 |
/**
|
14 |
* This file belongs to the YIT Plugin Framework.
|
@@ -25,7 +24,7 @@ if ( ! defined ( 'ABSPATH' ) ) {
|
|
25 |
|
26 |
if ( ! function_exists ( 'yit_maybe_plugin_fw_loader' ) ) {
|
27 |
/**
|
28 |
-
*
|
29 |
*
|
30 |
* @since 1.0.0
|
31 |
*/
|
1 |
<?php
|
2 |
/**
|
3 |
* Framework Name: YIT Plugin Framework
|
4 |
+
* Version: 3.0.11
|
5 |
* Author: Yithemes
|
6 |
* Text Domain: yith-plugin-fw
|
7 |
* Domain Path: /languages/
|
8 |
*
|
9 |
* @author Your Inspiration Themes
|
10 |
+
* @version 3.0.11
|
|
|
11 |
*/
|
12 |
/**
|
13 |
* This file belongs to the YIT Plugin Framework.
|
24 |
|
25 |
if ( ! function_exists ( 'yit_maybe_plugin_fw_loader' ) ) {
|
26 |
/**
|
27 |
+
* yit_maybe_plugin_fw_loader
|
28 |
*
|
29 |
* @since 1.0.0
|
30 |
*/
|
plugin-fw/lib/yit-ajax.php
CHANGED
@@ -32,6 +32,23 @@ if ( !class_exists( 'YIT_Ajax' ) ) {
|
|
32 |
* @since 1.0
|
33 |
*/
|
34 |
protected static $_instance = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
/**
|
37 |
* Constructor
|
@@ -40,24 +57,208 @@ if ( !class_exists( 'YIT_Ajax' ) ) {
|
|
40 |
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
41 |
*/
|
42 |
private function __construct() {
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
|
|
|
|
|
|
|
|
|
44 |
}
|
45 |
|
46 |
/**
|
47 |
-
*
|
48 |
*
|
49 |
-
* @
|
50 |
-
* @return YIT_Ajax
|
51 |
-
*
|
52 |
-
* @since 1.0
|
53 |
-
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
54 |
*/
|
55 |
-
public
|
56 |
-
|
57 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
}
|
59 |
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
}
|
62 |
}
|
63 |
}
|
32 |
* @since 1.0
|
33 |
*/
|
34 |
protected static $_instance = null;
|
35 |
+
|
36 |
+
/**
|
37 |
+
* get single instance
|
38 |
+
*
|
39 |
+
* @static
|
40 |
+
* @return YIT_Ajax
|
41 |
+
*
|
42 |
+
* @since 1.0
|
43 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
44 |
+
*/
|
45 |
+
public static function instance() {
|
46 |
+
if ( is_null( self::$_instance ) ) {
|
47 |
+
self::$_instance = new self();
|
48 |
+
}
|
49 |
+
|
50 |
+
return self::$_instance;
|
51 |
+
}
|
52 |
|
53 |
/**
|
54 |
* Constructor
|
57 |
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
58 |
*/
|
59 |
private function __construct() {
|
60 |
+
$ajax_actions = array(
|
61 |
+
'json_search_posts',
|
62 |
+
'json_search_products',
|
63 |
+
'json_search_orders',
|
64 |
+
'json_search_terms'
|
65 |
+
);
|
66 |
|
67 |
+
foreach ( $ajax_actions as $ajax_action ) {
|
68 |
+
add_action( 'wp_ajax_yith_plugin_fw_' . $ajax_action, array( $this, $ajax_action ) );
|
69 |
+
add_action( 'wp_ajax_nopriv_yith_plugin_fw_' . $ajax_action, array( $this, $ajax_action ) );
|
70 |
+
}
|
71 |
}
|
72 |
|
73 |
/**
|
74 |
+
* Post Search
|
75 |
*
|
76 |
+
* @param bool|array $request
|
|
|
|
|
|
|
|
|
77 |
*/
|
78 |
+
public function json_search_posts( $request = false ) {
|
79 |
+
ob_start();
|
80 |
+
|
81 |
+
if ( !$request )
|
82 |
+
check_ajax_referer( 'search-posts', 'security' );
|
83 |
+
|
84 |
+
$request = $request ? $request : $_REQUEST;
|
85 |
+
|
86 |
+
$term = (string) wc_clean( stripslashes( $request[ 'term' ] ) );
|
87 |
+
if ( empty( $term ) ) {
|
88 |
+
die();
|
89 |
}
|
90 |
|
91 |
+
$found_posts = array();
|
92 |
+
|
93 |
+
$args = array(
|
94 |
+
'post_type' => 'post',
|
95 |
+
'post_status' => 'publish',
|
96 |
+
'numberposts' => -1,
|
97 |
+
'orderby' => 'title',
|
98 |
+
'order' => 'asc',
|
99 |
+
'post_parent' => 0,
|
100 |
+
'suppress_filters' => 0,
|
101 |
+
'include' => '',
|
102 |
+
'exclude' => '',
|
103 |
+
);
|
104 |
+
|
105 |
+
foreach ( $args as $key => $default_value ) {
|
106 |
+
if ( !empty( $request[ $key ] ) ) {
|
107 |
+
$args[ $key ] = $request[ $key ];
|
108 |
+
}
|
109 |
+
}
|
110 |
+
|
111 |
+
$show_id = isset( $request[ 'show_id' ] ) && $request[ 'show_id' ];
|
112 |
+
|
113 |
+
$args[ 's' ] = $term;
|
114 |
+
$args[ 'fields' ] = 'ids';
|
115 |
+
|
116 |
+
$posts = get_posts( $args );
|
117 |
+
|
118 |
+
if ( !empty( $posts ) ) {
|
119 |
+
foreach ( $posts as $post_id ) {
|
120 |
+
if ( !current_user_can( 'read_product', $post_id ) ) {
|
121 |
+
continue;
|
122 |
+
}
|
123 |
+
$title = get_the_title( $post_id ) . ( $show_id ? " (#{$post_id})" : '' );
|
124 |
+
$found_posts[ $post_id ] = apply_filters( 'yith_plugin_fw_json_search_found_post_title', rawurldecode( $title ), $post_id, $request );
|
125 |
+
}
|
126 |
+
}
|
127 |
+
$found_posts = apply_filters( 'yith_plugin_fw_json_search_found_posts', $found_posts, $request );
|
128 |
+
|
129 |
+
wp_send_json( $found_posts );
|
130 |
+
}
|
131 |
+
|
132 |
+
/**
|
133 |
+
* Product Search
|
134 |
+
*/
|
135 |
+
public function json_search_products() {
|
136 |
+
check_ajax_referer( 'search-posts', 'security' );
|
137 |
+
|
138 |
+
$term = (string) wc_clean( stripslashes( $_REQUEST[ 'term' ] ) );
|
139 |
+
if ( empty( $term ) ) {
|
140 |
+
die();
|
141 |
+
}
|
142 |
+
|
143 |
+
$request = $_REQUEST;
|
144 |
+
$request[ 'post_type' ] = 'product';
|
145 |
+
|
146 |
+
$request_include = isset( $request[ 'include' ] ) && !is_array( $request[ 'include' ] ) ? explode( ',', $request[ 'include' ] ) : array();
|
147 |
+
|
148 |
+
if ( !empty( $request[ 'product_type' ] ) ) {
|
149 |
+
if ( $product_type_term = get_term_by( 'slug', $request[ 'product_type' ], 'product_type' ) ) {
|
150 |
+
$posts_in = array_unique( (array) get_objects_in_term( $product_type_term->term_id, 'product_type' ) );
|
151 |
+
if ( !!$request_include )
|
152 |
+
$posts_in = array_intersect( $posts_in, $request_include );
|
153 |
+
|
154 |
+
if ( !!$posts_in ) {
|
155 |
+
$request[ 'include' ] = implode( ',', $posts_in );
|
156 |
+
} else {
|
157 |
+
$request[ 'include' ] = '-1';
|
158 |
+
}
|
159 |
+
}
|
160 |
+
}
|
161 |
+
|
162 |
+
$request = apply_filters( 'yith_plugin_fw_json_search_products_request', $request );
|
163 |
+
|
164 |
+
$this->json_search_posts( $request );
|
165 |
+
}
|
166 |
+
|
167 |
+
/**
|
168 |
+
* Order Search
|
169 |
+
*/
|
170 |
+
public function json_search_orders() {
|
171 |
+
global $wpdb;
|
172 |
+
ob_start();
|
173 |
+
|
174 |
+
check_ajax_referer( 'search-posts', 'security' );
|
175 |
+
|
176 |
+
$term = wc_clean( stripslashes( $_REQUEST[ 'term' ] ) );
|
177 |
+
|
178 |
+
if ( empty( $term ) ) {
|
179 |
+
die();
|
180 |
+
}
|
181 |
+
|
182 |
+
$found_orders = array();
|
183 |
+
|
184 |
+
$term = apply_filters( 'yith_plugin_fw_json_search_order_number', $term );
|
185 |
+
|
186 |
+
$query_orders = $wpdb->get_results( $wpdb->prepare( "
|
187 |
+
SELECT ID, post_title FROM {$wpdb->posts} AS posts
|
188 |
+
WHERE posts.post_type = 'shop_order'
|
189 |
+
AND posts.ID LIKE %s
|
190 |
+
", '%' . $term . '%' ) );
|
191 |
+
|
192 |
+
if ( $query_orders ) {
|
193 |
+
foreach ( $query_orders as $item ) {
|
194 |
+
$order_number = apply_filters( 'yith_plugin_fw_order_number', '#' . $item->ID, $item->ID );
|
195 |
+
$found_orders[ $item->ID ] = $order_number . ' – ' . esc_html( $item->post_title );
|
196 |
+
}
|
197 |
+
}
|
198 |
+
|
199 |
+
wp_send_json( $found_orders );
|
200 |
+
}
|
201 |
+
|
202 |
+
/**
|
203 |
+
* Order Search
|
204 |
+
*/
|
205 |
+
public function json_search_terms() {
|
206 |
+
global $wpdb;
|
207 |
+
ob_start();
|
208 |
+
|
209 |
+
check_ajax_referer( 'search-terms', 'security' );
|
210 |
+
|
211 |
+
$term = (string) wc_clean( stripslashes( $_REQUEST[ 'term' ] ) );
|
212 |
+
|
213 |
+
if ( empty( $term ) ) {
|
214 |
+
die();
|
215 |
+
}
|
216 |
+
|
217 |
+
$request = $_REQUEST;
|
218 |
+
|
219 |
+
$args = array(
|
220 |
+
'taxonomy' => 'category',
|
221 |
+
'hide_empty' => false,
|
222 |
+
'order' => 'ASC',
|
223 |
+
'orderby' => 'name',
|
224 |
+
'include' => '',
|
225 |
+
'exclude' => '',
|
226 |
+
'exclude_tree' => '',
|
227 |
+
'number' => '',
|
228 |
+
'hierarchical' => true,
|
229 |
+
'child_of' => 0,
|
230 |
+
'parent' => '',
|
231 |
+
'term_field' => 'id'
|
232 |
+
);
|
233 |
+
|
234 |
+
$args = apply_filters( 'yith_plugin_fw_json_search_terms_default_args', $args, $request );
|
235 |
+
|
236 |
+
foreach ( $args as $key => $default_value ) {
|
237 |
+
if ( !empty( $request[ $key ] ) ) {
|
238 |
+
$args[ $key ] = $request[ $key ];
|
239 |
+
}
|
240 |
+
}
|
241 |
+
|
242 |
+
$args = apply_filters( 'yith_plugin_fw_json_search_terms_args', $args, $request );
|
243 |
+
|
244 |
+
$args[ 'name__like' ] = $term;
|
245 |
+
$args[ 'fields' ] = 'id=>name';
|
246 |
+
|
247 |
+
if ( !taxonomy_exists( $args[ 'taxonomy' ] ) )
|
248 |
+
die();
|
249 |
+
|
250 |
+
$terms = yith_get_terms( $args );
|
251 |
+
|
252 |
+
if ( $args[ 'term_field' ] !== 'id' ) {
|
253 |
+
$temp_terms = $terms;
|
254 |
+
$terms = array();
|
255 |
+
foreach ( $temp_terms as $term_id => $term_name ) {
|
256 |
+
$current_term_field = get_term_field( $args[ 'term_field' ], $term_id, $args[ 'taxonomy' ] );
|
257 |
+
$terms[ $current_term_field ] = $term_name;
|
258 |
+
}
|
259 |
+
}
|
260 |
+
|
261 |
+
wp_send_json( $terms );
|
262 |
}
|
263 |
}
|
264 |
}
|
plugin-fw/lib/yit-assets.php
ADDED
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
if ( !class_exists( 'YIT_Assets' ) ) {
|
14 |
+
/**
|
15 |
+
* YIT Assets
|
16 |
+
*
|
17 |
+
* @class YIT_Assets
|
18 |
+
* @package Yithemes
|
19 |
+
* @since 3.0.0
|
20 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
21 |
+
*/
|
22 |
+
class YIT_Assets {
|
23 |
+
/** @var string */
|
24 |
+
public $version = '1.0.0';
|
25 |
+
|
26 |
+
/** @var YIT_Assets */
|
27 |
+
private static $_instance;
|
28 |
+
|
29 |
+
/** @return YIT_Assets */
|
30 |
+
public static function instance() {
|
31 |
+
return !is_null( self::$_instance ) ? self::$_instance : self::$_instance = new self();
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Constructor
|
36 |
+
*
|
37 |
+
* @since 1.0
|
38 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
39 |
+
*/
|
40 |
+
private function __construct() {
|
41 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'register_styles_and_scripts' ) );
|
42 |
+
}
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Register styles and scripts
|
46 |
+
*/
|
47 |
+
public function register_styles_and_scripts() {
|
48 |
+
global $wp_scripts, $woocommerce;
|
49 |
+
|
50 |
+
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
51 |
+
|
52 |
+
//scripts
|
53 |
+
wp_register_script( 'yith-plugin-fw-fields', YIT_CORE_PLUGIN_URL . '/assets/js/yith-fields' . $suffix . '.js', array( 'jquery', 'jquery-ui-datepicker', 'wp-color-picker', 'codemirror', 'codemirror-javascript', 'jquery-ui-slider' ), $this->version, true );
|
54 |
+
wp_register_script( 'yit-metabox', YIT_CORE_PLUGIN_URL . '/assets/js/metabox' . $suffix . '.js', array( 'jquery', 'wp-color-picker' ), '1.0.0', true );
|
55 |
+
wp_register_script( 'yit-plugin-panel', YIT_CORE_PLUGIN_URL . '/assets/js/yit-plugin-panel' . $suffix . '.js', array( 'jquery', 'wp-color-picker', 'jquery-ui-sortable' ), $this->version, true );
|
56 |
+
wp_register_script( 'codemirror', YIT_CORE_PLUGIN_URL . '/assets/js/codemirror/codemirror.js', array( 'jquery' ), $this->version, true );
|
57 |
+
wp_register_script( 'codemirror-javascript', YIT_CORE_PLUGIN_URL . '/assets/js/codemirror/javascript.js', array( 'jquery', 'codemirror' ), $this->version, true );
|
58 |
+
wp_register_script( 'colorbox', YIT_CORE_PLUGIN_URL . '/assets/js/jquery.colorbox' . $suffix . '.js', array( 'jquery' ), '1.6.3', true );
|
59 |
+
wp_register_script( 'yith_how_to', YIT_CORE_PLUGIN_URL . '/assets/js/how-to' . $suffix . '.js', array( 'jquery' ), $this->version, true );
|
60 |
+
|
61 |
+
//styles
|
62 |
+
$jquery_version = isset( $wp_scripts->registered[ 'jquery-ui-core' ]->ver ) ? $wp_scripts->registered[ 'jquery-ui-core' ]->ver : '1.9.2';
|
63 |
+
wp_register_style( 'codemirror', YIT_CORE_PLUGIN_URL . '/assets/css/codemirror/codemirror.css' );
|
64 |
+
wp_register_style( 'yit-plugin-style', YIT_CORE_PLUGIN_URL . '/assets/css/yit-plugin-panel.css', array(), $this->version );
|
65 |
+
wp_register_style( 'raleway-font', '//fonts.googleapis.com/css?family=Raleway:400,500,600,700,800,100,200,300,900' );
|
66 |
+
wp_register_style( 'yit-jquery-ui-style', '//code.jquery.com/ui/' . $jquery_version . '/themes/smoothness/jquery-ui.css', array(), $jquery_version );
|
67 |
+
wp_register_style( 'colorbox', YIT_CORE_PLUGIN_URL . '/assets/css/colorbox.css', array(), $this->version );
|
68 |
+
wp_register_style( 'yit-upgrade-to-pro', YIT_CORE_PLUGIN_URL . '/assets/css/yit-upgrade-to-pro.css', array( 'colorbox' ), $this->version );
|
69 |
+
wp_register_style( 'yit-plugin-metaboxes', YIT_CORE_PLUGIN_URL . '/assets/css/metaboxes.css' );
|
70 |
+
wp_register_style( 'yith-plugin-fw-fields', YIT_CORE_PLUGIN_URL . '/assets/css/yith-fields.css', false, $this->version );
|
71 |
+
|
72 |
+
if ( function_exists( 'WC' ) || !empty( $woocommerce ) ) {
|
73 |
+
$woocommerce_version = function_exists( 'WC' ) ? WC()->version : $woocommerce->version;
|
74 |
+
$wc_version_suffix = version_compare( $woocommerce_version, '3.0.0', '>=' ) ? '' : '-wc-2.6';
|
75 |
+
|
76 |
+
wp_register_style( 'woocommerce_admin_styles', $woocommerce->plugin_url() . '/assets/css/admin.css', array(), $woocommerce_version );
|
77 |
+
|
78 |
+
wp_register_script( 'yith-enhanced-select', YIT_CORE_PLUGIN_URL . '/assets/js/yith-enhanced-select' . $wc_version_suffix . $suffix . '.js', array( 'jquery', 'select2', 'woocommerce_admin' ), '1.0.0', true );
|
79 |
+
wp_localize_script( 'yith-enhanced-select', 'yith_framework_enhanced_select_params', array(
|
80 |
+
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
81 |
+
'search_posts_nonce' => wp_create_nonce( 'search-posts' ),
|
82 |
+
'search_terms_nonce' => wp_create_nonce( 'search-terms' ),
|
83 |
+
) );
|
84 |
+
}
|
85 |
+
|
86 |
+
wp_enqueue_style( 'yith-plugin-fw-admin', YIT_CORE_PLUGIN_URL . '/assets/css/admin.css', array(), $this->version );
|
87 |
+
|
88 |
+
}
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
YIT_Assets::instance();
|
plugin-fw/lib/yit-debug.php
ADDED
@@ -0,0 +1,271 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
if ( !class_exists( 'YITH_Debug' ) ) {
|
14 |
+
/**
|
15 |
+
* YITH_Debug
|
16 |
+
*
|
17 |
+
* manages debug
|
18 |
+
*
|
19 |
+
* @class YITH_Debug
|
20 |
+
* @package Yithemes
|
21 |
+
* @since 1.0.0
|
22 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
23 |
+
*
|
24 |
+
*/
|
25 |
+
class YITH_Debug {
|
26 |
+
|
27 |
+
/** @var YITH_Debug */
|
28 |
+
private static $_instance;
|
29 |
+
|
30 |
+
public static function get_instance() {
|
31 |
+
return isset( self::$_instance ) ? self::$_instance : self::$_instance = new self();
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* @access private
|
36 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
37 |
+
*/
|
38 |
+
private function __construct() {
|
39 |
+
add_action( 'init', array( $this, 'init' ) );
|
40 |
+
}
|
41 |
+
|
42 |
+
/**
|
43 |
+
* fired on init
|
44 |
+
*/
|
45 |
+
public function init() {
|
46 |
+
if ( !is_admin() || defined( 'DOING_AJAX' ) )
|
47 |
+
return;
|
48 |
+
|
49 |
+
$is_debug = apply_filters( 'yith_plugin_fw_is_debug', isset( $_GET[ 'yith-debug' ] ) );
|
50 |
+
|
51 |
+
if ( $is_debug ) {
|
52 |
+
add_action( 'admin_bar_menu', array( $this, 'add_debug_in_admin_bar' ), 99 );
|
53 |
+
}
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* add debug node in admin bar
|
58 |
+
*
|
59 |
+
* @param $wp_admin_bar
|
60 |
+
*/
|
61 |
+
public function add_debug_in_admin_bar( $wp_admin_bar ) {
|
62 |
+
$args = array(
|
63 |
+
'id' => 'yith-debug-admin-bar',
|
64 |
+
'title' => 'YITH Debug',
|
65 |
+
'href' => '',
|
66 |
+
'meta' => array(
|
67 |
+
'class' => 'yith-debug-admin-bar'
|
68 |
+
)
|
69 |
+
);
|
70 |
+
$wp_admin_bar->add_node( $args );
|
71 |
+
|
72 |
+
$subnodes = array();
|
73 |
+
|
74 |
+
foreach ( $this->get_debug_information() as $key => $information ) {
|
75 |
+
$label = $information[ 'label' ];
|
76 |
+
$value = $information[ 'value' ];
|
77 |
+
$url = !empty( $information[ 'url' ] ) ? $information[ 'url' ] : '';
|
78 |
+
|
79 |
+
if ( !!$value ) {
|
80 |
+
$title = "<strong>$label:</strong> $value";
|
81 |
+
} else {
|
82 |
+
$title = "<strong>$label</strong>";
|
83 |
+
}
|
84 |
+
|
85 |
+
$subnodes[] = array(
|
86 |
+
'id' => 'yith-debug-admin-bar-' . $key,
|
87 |
+
'parent' => 'yith-debug-admin-bar',
|
88 |
+
'title' => $title,
|
89 |
+
'href' => $url,
|
90 |
+
'meta' => array(
|
91 |
+
'class' => 'yith-debug-admin-bar-' . $key
|
92 |
+
)
|
93 |
+
);
|
94 |
+
|
95 |
+
if ( isset( $information[ 'subsub' ] ) ) {
|
96 |
+
foreach ( $information[ 'subsub' ] as $sub_key => $sub_value ) {
|
97 |
+
$title = isset( $sub_value[ 'title' ] ) ? $sub_value[ 'title' ] : '';
|
98 |
+
$html = isset( $sub_value[ 'html' ] ) ? $sub_value[ 'html' ] : '';
|
99 |
+
$subnodes[] = array(
|
100 |
+
'id' => 'yith-debug-admin-bar-' . $key . '-' . $sub_key,
|
101 |
+
'parent' => 'yith-debug-admin-bar-' . $key,
|
102 |
+
'title' => $title,
|
103 |
+
'href' => '',
|
104 |
+
'meta' => array(
|
105 |
+
'class' => 'yith-debug-admin-bar-' . $key . '-' . $sub_key,
|
106 |
+
'html' => $html,
|
107 |
+
)
|
108 |
+
);
|
109 |
+
}
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
+
foreach ( $subnodes as $subnode ) {
|
114 |
+
$wp_admin_bar->add_node( $subnode );
|
115 |
+
}
|
116 |
+
}
|
117 |
+
|
118 |
+
|
119 |
+
/**
|
120 |
+
* return an array of debug information
|
121 |
+
*
|
122 |
+
* @return array
|
123 |
+
*/
|
124 |
+
public function get_debug_information() {
|
125 |
+
$debug = array(
|
126 |
+
'plugin-fw-info' => array(
|
127 |
+
'label' => 'Framework',
|
128 |
+
'value' => $this->get_plugin_framework_info()
|
129 |
+
),
|
130 |
+
'yith-premium-plugins' => array(
|
131 |
+
'label' => 'YITH Premium Plugins',
|
132 |
+
'value' => '',
|
133 |
+
'subsub' => $this->get_premium_plugins_info()
|
134 |
+
),
|
135 |
+
'wc-version' => array(
|
136 |
+
'label' => 'WooCommerce',
|
137 |
+
'value' => $this->get_woocommerce_version_info()
|
138 |
+
),
|
139 |
+
'theme' => array(
|
140 |
+
'label' => 'Theme',
|
141 |
+
'value' => $this->get_theme_info()
|
142 |
+
),
|
143 |
+
'screen-id' => array(
|
144 |
+
'label' => 'Screen ID',
|
145 |
+
'value' => $this->get_current_screen_info()
|
146 |
+
),
|
147 |
+
'post-meta' => array(
|
148 |
+
'label' => 'Post Meta',
|
149 |
+
'value' => '',
|
150 |
+
'url' => add_query_arg( array( 'yith-debug-post-meta' => 'all' ) )
|
151 |
+
),
|
152 |
+
'option' => array(
|
153 |
+
'label' => 'Option',
|
154 |
+
'value' => '',
|
155 |
+
'url' => add_query_arg( array( 'yith-debug-option' => '' ) )
|
156 |
+
),
|
157 |
+
);
|
158 |
+
|
159 |
+
// Post Meta debug -------------
|
160 |
+
global $post;
|
161 |
+
if ( !empty( $_GET[ 'yith-debug-post-meta' ] ) && $post ) {
|
162 |
+
$meta_key = $_GET[ 'yith-debug-post-meta' ];
|
163 |
+
$meta_value = 'all' !== $meta_key ? get_post_meta( $post->ID, $meta_key, true ) : get_post_meta( $post->ID );
|
164 |
+
|
165 |
+
ob_start();
|
166 |
+
echo '<pre>';
|
167 |
+
var_dump( $meta_value );
|
168 |
+
echo '</pre>';
|
169 |
+
$meta_value_html = ob_get_clean();
|
170 |
+
|
171 |
+
$debug[ 'post-meta' ][ 'value' ] = $meta_key;
|
172 |
+
$debug[ 'post-meta' ][ 'subsub' ] = array( array( 'html' => $meta_value_html ) );
|
173 |
+
}
|
174 |
+
|
175 |
+
// Option debug -------------
|
176 |
+
|
177 |
+
if ( !empty( $_GET[ 'yith-debug-option' ] ) ) {
|
178 |
+
$option_key = $_GET[ 'yith-debug-option' ];
|
179 |
+
$option_value = get_option( $option_key );
|
180 |
+
|
181 |
+
ob_start();
|
182 |
+
echo '<pre>';
|
183 |
+
var_dump( $option_value );
|
184 |
+
echo '</pre>';
|
185 |
+
$option_value_html = ob_get_clean();
|
186 |
+
|
187 |
+
$debug[ 'option' ][ 'value' ] = $option_key;
|
188 |
+
$debug[ 'option' ][ 'subsub' ] = array( array( 'html' => $option_value_html ) );
|
189 |
+
}
|
190 |
+
|
191 |
+
return $debug;
|
192 |
+
}
|
193 |
+
|
194 |
+
/** -----------------------------------------------------------
|
195 |
+
* GETTER INFO
|
196 |
+
* -----------------------------------------------------------
|
197 |
+
*/
|
198 |
+
|
199 |
+
|
200 |
+
/**
|
201 |
+
* return the current screen id
|
202 |
+
*
|
203 |
+
* @return string
|
204 |
+
*/
|
205 |
+
public function get_current_screen_info() {
|
206 |
+
$screen = function_exists( 'get_current_screen' ) ? get_current_screen() : false;
|
207 |
+
|
208 |
+
return !!$screen ? $screen->id : 'null';
|
209 |
+
}
|
210 |
+
|
211 |
+
/**
|
212 |
+
* return the current theme name and version
|
213 |
+
*
|
214 |
+
* @return string
|
215 |
+
*/
|
216 |
+
public function get_theme_info() {
|
217 |
+
$theme = function_exists( 'wp_get_theme' ) ? wp_get_theme() : false;
|
218 |
+
|
219 |
+
return !!$theme ? $theme->get( 'Name' ) . ' (' . $theme->get( 'Version' ) . ')' : 'null';
|
220 |
+
}
|
221 |
+
|
222 |
+
/**
|
223 |
+
* return the WooCommerce version if active
|
224 |
+
*
|
225 |
+
* @return string
|
226 |
+
*/
|
227 |
+
public function get_woocommerce_version_info() {
|
228 |
+
return function_exists( 'WC' ) ? WC()->version : 'not active';
|
229 |
+
}
|
230 |
+
|
231 |
+
/**
|
232 |
+
* return plugin framework information (version and loaded_by)
|
233 |
+
*
|
234 |
+
* @return string
|
235 |
+
*/
|
236 |
+
public function get_plugin_framework_info() {
|
237 |
+
$plugin_fw_data = get_file_data( trailingslashit( YIT_CORE_PLUGIN_PATH ) . 'init.php', array( 'Version' => 'Version' ) );
|
238 |
+
$plugin_fw_version = $plugin_fw_data[ 'Version' ];
|
239 |
+
$plugin_fw_loaded_by = basename( dirname( YIT_CORE_PLUGIN_PATH ) );
|
240 |
+
|
241 |
+
return "$plugin_fw_version (by $plugin_fw_loaded_by)";
|
242 |
+
}
|
243 |
+
|
244 |
+
/**
|
245 |
+
* return premium plugins list with versions
|
246 |
+
*
|
247 |
+
* @return array
|
248 |
+
*/
|
249 |
+
public function get_premium_plugins_info() {
|
250 |
+
$plugins = YIT_Plugin_Licence()->get_products();
|
251 |
+
$plugins_info = array();
|
252 |
+
|
253 |
+
if ( !!$plugins ) {
|
254 |
+
foreach ( $plugins as $plugin ) {
|
255 |
+
$plugins_info[ $plugin[ 'product_id' ] ] = array( 'title' => $plugin[ 'Name' ] . ' (' . $plugin[ 'Version' ] . ')' );
|
256 |
+
}
|
257 |
+
|
258 |
+
sort( $plugins_info );
|
259 |
+
}
|
260 |
+
|
261 |
+
return $plugins_info;
|
262 |
+
}
|
263 |
+
}
|
264 |
+
}
|
265 |
+
if ( !function_exists( 'YITH_Debug' ) ) {
|
266 |
+
function YITH_Debug() {
|
267 |
+
return YITH_Debug::get_instance();
|
268 |
+
}
|
269 |
+
|
270 |
+
YITH_Debug();
|
271 |
+
}
|
plugin-fw/lib/yit-icons.php
ADDED
@@ -0,0 +1,1143 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
|
12 |
+
if ( !defined( 'ABSPATH' ) ) {
|
13 |
+
exit;
|
14 |
+
} // Exit if accessed directly
|
15 |
+
|
16 |
+
if ( !class_exists( 'YIT_Icons' ) ) {
|
17 |
+
/**
|
18 |
+
* YIT Icons
|
19 |
+
*
|
20 |
+
* Class to manage icons
|
21 |
+
*
|
22 |
+
* @class YIT_Icons
|
23 |
+
* @package Yithemes
|
24 |
+
* @since 1.0.0
|
25 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
26 |
+
*
|
27 |
+
*/
|
28 |
+
class YIT_Icons {
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Single instance of the class
|
32 |
+
*
|
33 |
+
* @var YIT_Icons
|
34 |
+
*/
|
35 |
+
private static $_instance;
|
36 |
+
|
37 |
+
/**
|
38 |
+
* @var array
|
39 |
+
*/
|
40 |
+
private $_data
|
41 |
+
= array(
|
42 |
+
'font_awesome_version' => '4.6.3',
|
43 |
+
'icons' => array(
|
44 |
+
'FontAwesome' => array(
|
45 |
+
'\f000' => 'glass',
|
46 |
+
'\f001' => 'music',
|
47 |
+
'\f002' => 'search',
|
48 |
+
'\f003' => 'envelope-o',
|
49 |
+
'\f004' => 'heart',
|
50 |
+
'\f005' => 'star',
|
51 |
+
'\f006' => 'star-o',
|
52 |
+
'\f007' => 'user',
|
53 |
+
'\f008' => 'film',
|
54 |
+
'\f009' => 'th-large',
|
55 |
+
'\f00a' => 'th',
|
56 |
+
'\f00b' => 'th-list',
|
57 |
+
'\f00c' => 'check',
|
58 |
+
'\f00d' => 'times',
|
59 |
+
'\f00e' => 'search-plus',
|
60 |
+
'\f010' => 'search-minus',
|
61 |
+
'\f011' => 'power-off',
|
62 |
+
'\f012' => 'signal',
|
63 |
+
'\f013' => 'cog',
|
64 |
+
'\f014' => 'trash-o',
|
65 |
+
'\f015' => 'home',
|
66 |
+
'\f016' => 'file-o',
|
67 |
+
'\f017' => 'clock-o',
|
68 |
+
'\f018' => 'road',
|
69 |
+
'\f019' => 'download',
|
70 |
+
'\f01a' => 'arrow-circle-o-down',
|
71 |
+
'\f01b' => 'arrow-circle-o-up',
|
72 |
+
'\f01c' => 'inbox',
|
73 |
+
'\f01d' => 'play-circle-o',
|
74 |
+
'\f01e' => 'repeat',
|
75 |
+
'\f021' => 'refresh',
|
76 |
+
'\f022' => 'list-alt',
|
77 |
+
'\f023' => 'lock',
|
78 |
+
'\f024' => 'flag',
|
79 |
+
'\f025' => 'headphones',
|
80 |
+
'\f026' => 'volume-off',
|
81 |
+
'\f027' => 'volume-down',
|
82 |
+
'\f028' => 'volume-up',
|
83 |
+
'\f029' => 'qrcode',
|
84 |
+
'\f02a' => 'barcode',
|
85 |
+
'\f02b' => 'tag',
|
86 |
+
'\f02c' => 'tags',
|
87 |
+
'\f02d' => 'book',
|
88 |
+
'\f02e' => 'bookmark',
|
89 |
+
'\f02f' => 'print',
|
90 |
+
'\f030' => 'camera',
|
91 |
+
'\f031' => 'font',
|
92 |
+
'\f032' => 'bold',
|
93 |
+
'\f033' => 'italic',
|
94 |
+
'\f034' => 'text-height',
|
95 |
+
'\f035' => 'text-width',
|
96 |
+
'\f036' => 'align-left',
|
97 |
+
'\f037' => 'align-center',
|
98 |
+
'\f038' => 'align-right',
|
99 |
+
'\f039' => 'align-justify',
|
100 |
+
'\f03a' => 'list',
|
101 |
+
'\f03b' => 'outdent',
|
102 |
+
'\f03c' => 'indent',
|
103 |
+
'\f03d' => 'video-camera',
|
104 |
+
'\f03e' => 'picture-o',
|
105 |
+
'\f040' => 'pencil',
|
106 |
+
'\f041' => 'map-marker',
|
107 |
+
'\f042' => 'adjust',
|
108 |
+
'\f043' => 'tint',
|
109 |
+
'\f044' => 'pencil-square-o',
|
110 |
+
'\f045' => 'share-square-o',
|
111 |
+
'\f046' => 'check-square-o',
|
112 |
+
'\f047' => 'arrows',
|
113 |
+
'\f048' => 'step-backward',
|
114 |
+
'\f049' => 'fast-backward',
|
115 |
+
'\f04a' => 'backward',
|
116 |
+
'\f04b' => 'play',
|
117 |
+
'\f04c' => 'pause',
|
118 |
+
'\f04d' => 'stop',
|
119 |
+
'\f04e' => 'forward',
|
120 |
+
'\f050' => 'fast-forward',
|
121 |
+
'\f051' => 'step-forward',
|
122 |
+
'\f052' => 'eject',
|
123 |
+
'\f053' => 'chevron-left',
|
124 |
+
'\f054' => 'chevron-right',
|
125 |
+
'\f055' => 'plus-circle',
|
126 |
+
'\f056' => 'minus-circle',
|
127 |
+
'\f057' => 'times-circle',
|
128 |
+
'\f058' => 'check-circle',
|
129 |
+
'\f059' => 'question-circle',
|
130 |
+
'\f05a' => 'info-circle',
|
131 |
+
'\f05b' => 'crosshairs',
|
132 |
+
'\f05c' => 'times-circle-o',
|
133 |
+
'\f05d' => 'check-circle-o',
|
134 |
+
'\f05e' => 'ban',
|
135 |
+
'\f060' => 'arrow-left',
|
136 |
+
'\f061' => 'arrow-right',
|
137 |
+
'\f062' => 'arrow-up',
|
138 |
+
'\f063' => 'arrow-down',
|
139 |
+
'\f064' => 'share',
|
140 |
+
'\f065' => 'expand',
|
141 |
+
'\f066' => 'compress',
|
142 |
+
'\f067' => 'plus',
|
143 |
+
'\f068' => 'minus',
|
144 |
+
'\f069' => 'asterisk',
|
145 |
+
'\f06a' => 'exclamation-circle',
|
146 |
+
'\f06b' => 'gift',
|
147 |
+
'\f06c' => 'leaf',
|
148 |
+
'\f06d' => 'fire',
|
149 |
+
'\f06e' => 'eye',
|
150 |
+
'\f070' => 'eye-slash',
|
151 |
+
'\f071' => 'exclamation-triangle',
|
152 |
+
'\f072' => 'plane',
|
153 |
+
'\f073' => 'calendar',
|
154 |
+
'\f074' => 'random',
|
155 |
+
'\f075' => 'comment',
|
156 |
+
'\f076' => 'magnet',
|
157 |
+
'\f077' => 'chevron-up',
|
158 |
+
'\f078' => 'chevron-down',
|
159 |
+
'\f079' => 'retweet',
|
160 |
+
'\f07a' => 'shopping-cart',
|
161 |
+
'\f07b' => 'folder',
|
162 |
+
'\f07c' => 'folder-open',
|
163 |
+
'\f07d' => 'arrows-v',
|
164 |
+
'\f07e' => 'arrows-h',
|
165 |
+
'\f080' => 'bar-chart',
|
166 |
+
'\f081' => 'twitter-square',
|
167 |
+
'\f082' => 'facebook-square',
|
168 |
+
'\f083' => 'camera-retro',
|
169 |
+
'\f084' => 'key',
|
170 |
+
'\f085' => 'cogs',
|
171 |
+
'\f086' => 'comments',
|
172 |
+
'\f087' => 'thumbs-o-up',
|
173 |
+
'\f088' => 'thumbs-o-down',
|
174 |
+
'\f089' => 'star-half',
|
175 |
+
'\f08a' => 'heart-o',
|
176 |
+
'\f08b' => 'sign-out',
|
177 |
+
'\f08c' => 'linkedin-square',
|
178 |
+
'\f08d' => 'thumb-tack',
|
179 |
+
'\f08e' => 'external-link',
|
180 |
+
'\f090' => 'sign-in',
|
181 |
+
'\f091' => 'trophy',
|
182 |
+
'\f092' => 'github-square',
|
183 |
+
'\f093' => 'upload',
|
184 |
+
'\f094' => 'lemon-o',
|
185 |
+
'\f095' => 'phone',
|
186 |
+
'\f096' => 'square-o',
|
187 |
+
'\f097' => 'bookmark-o',
|
188 |
+
'\f098' => 'phone-square',
|
189 |
+
'\f099' => 'twitter',
|
190 |
+
'\f09a' => 'facebook',
|
191 |
+
'\f09b' => 'github',
|
192 |
+
'\f09c' => 'unlock',
|
193 |
+
'\f09d' => 'credit-card',
|
194 |
+
'\f09e' => 'rss',
|
195 |
+
'\f0a0' => 'hdd-o',
|
196 |
+
'\f0a1' => 'bullhorn',
|
197 |
+
'\f0a2' => 'bell-o',
|
198 |
+
'\f0a3' => 'certificate',
|
199 |
+
'\f0a4' => 'hand-o-right',
|
200 |
+
'\f0a5' => 'hand-o-left',
|
201 |
+
'\f0a6' => 'hand-o-up',
|
202 |
+
'\f0a7' => 'hand-o-down',
|
203 |
+
'\f0a8' => 'arrow-circle-left',
|
204 |
+
'\f0a9' => 'arrow-circle-right',
|
205 |
+
'\f0aa' => 'arrow-circle-up',
|
206 |
+
'\f0ab' => 'arrow-circle-down',
|
207 |
+
'\f0ac' => 'globe',
|
208 |
+
'\f0ad' => 'wrench',
|
209 |
+
'\f0ae' => 'tasks',
|
210 |
+
'\f0b0' => 'filter',
|
211 |
+
'\f0b1' => 'briefcase',
|
212 |
+
'\f0b2' => 'arrows-alt',
|
213 |
+
'\f0c0' => 'users',
|
214 |
+
'\f0c1' => 'link',
|
215 |
+
'\f0c2' => 'cloud',
|
216 |
+
'\f0c3' => 'flask',
|
217 |
+
'\f0c4' => 'scissors',
|
218 |
+
'\f0c5' => 'files-o',
|
219 |
+
'\f0c6' => 'paperclip',
|
220 |
+
'\f0c7' => 'floppy-o',
|
221 |
+
'\f0c8' => 'square',
|
222 |
+
'\f0c9' => 'bars',
|
223 |
+
'\f0ca' => 'list-ul',
|
224 |
+
'\f0cb' => 'list-ol',
|
225 |
+
'\f0cc' => 'strikethrough',
|
226 |
+
'\f0cd' => 'underline',
|
227 |
+
'\f0ce' => 'table',
|
228 |
+
'\f0d0' => 'magic',
|
229 |
+
'\f0d1' => 'truck',
|
230 |
+
'\f0d2' => 'pinterest',
|
231 |
+
'\f0d3' => 'pinterest-square',
|
232 |
+
'\f0d4' => 'google-plus-square',
|
233 |
+
'\f0d5' => 'google-plus',
|
234 |
+
'\f0d6' => 'money',
|
235 |
+
'\f0d7' => 'caret-down',
|
236 |
+
'\f0d8' => 'caret-up',
|
237 |
+
'\f0d9' => 'caret-left',
|
238 |
+
'\f0da' => 'caret-right',
|
239 |
+
'\f0db' => 'columns',
|
240 |
+
'\f0dc' => 'sort',
|
241 |
+
'\f0dd' => 'sort-desc',
|
242 |
+
'\f0de' => 'sort-asc',
|
243 |
+
'\f0e0' => 'envelope',
|
244 |
+
'\f0e1' => 'linkedin',
|
245 |
+
'\f0e2' => 'undo',
|
246 |
+
'\f0e3' => 'gavel',
|
247 |
+
'\f0e4' => 'tachometer',
|
248 |
+
'\f0e5' => 'comment-o',
|
249 |
+
'\f0e6' => 'comments-o',
|
250 |
+
'\f0e7' => 'bolt',
|
251 |
+
'\f0e8' => 'sitemap',
|
252 |
+
'\f0e9' => 'umbrella',
|
253 |
+
'\f0ea' => 'clipboard',
|
254 |
+
'\f0eb' => 'lightbulb-o',
|
255 |
+
'\f0ec' => 'exchange',
|
256 |
+
'\f0ed' => 'cloud-download',
|
257 |
+
'\f0ee' => 'cloud-upload',
|
258 |
+
'\f0f0' => 'user-md',
|
259 |
+
'\f0f1' => 'stethoscope',
|
260 |
+
'\f0f2' => 'suitcase',
|
261 |
+
'\f0f3' => 'bell',
|
262 |
+
'\f0f4' => 'coffee',
|
263 |
+
'\f0f5' => 'cutlery',
|
264 |
+
'\f0f6' => 'file-text-o',
|
265 |
+
'\f0f7' => 'building-o',
|
266 |
+
'\f0f8' => 'hospital-o',
|
267 |
+
'\f0f9' => 'ambulance',
|
268 |
+
'\f0fa' => 'medkit',
|
269 |
+
'\f0fb' => 'fighter-jet',
|
270 |
+
'\f0fc' => 'beer',
|
271 |
+
'\f0fd' => 'h-square',
|
272 |
+
'\f0fe' => 'plus-square',
|
273 |
+
'\f100' => 'angle-double-left',
|
274 |
+
'\f101' => 'angle-double-right',
|
275 |
+
'\f102' => 'angle-double-up',
|
276 |
+
'\f103' => 'angle-double-down',
|
277 |
+
'\f104' => 'angle-left',
|
278 |
+
'\f105' => 'angle-right',
|
279 |
+
'\f106' => 'angle-up',
|
280 |
+
'\f107' => 'angle-down',
|
281 |
+
'\f108' => 'desktop',
|
282 |
+
'\f109' => 'laptop',
|
283 |
+
'\f10a' => 'tablet',
|
284 |
+
'\f10b' => 'mobile',
|
285 |
+
'\f10c' => 'circle-o',
|
286 |
+
'\f10d' => 'quote-left',
|
287 |
+
'\f10e' => 'quote-right',
|
288 |
+
'\f110' => 'spinner',
|
289 |
+
'\f111' => 'circle',
|
290 |
+
'\f112' => 'reply',
|
291 |
+
'\f113' => 'github-alt',
|
292 |
+
'\f114' => 'folder-o',
|
293 |
+
'\f115' => 'folder-open-o',
|
294 |
+
'\f118' => 'smile-o',
|
295 |
+
'\f119' => 'frown-o',
|
296 |
+
'\f11a' => 'meh-o',
|
297 |
+
'\f11b' => 'gamepad',
|
298 |
+
'\f11c' => 'keyboard-o',
|
299 |
+
'\f11d' => 'flag-o',
|
300 |
+
'\f11e' => 'flag-checkered',
|
301 |
+
'\f120' => 'terminal',
|
302 |
+
'\f121' => 'code',
|
303 |
+
'\f122' => 'reply-all',
|
304 |
+
'\f123' => 'star-half-o',
|
305 |
+
'\f124' => 'location-arrow',
|
306 |
+
'\f125' => 'crop',
|
307 |
+
'\f126' => 'code-fork',
|
308 |
+
'\f127' => 'chain-broken',
|
309 |
+
'\f128' => 'question',
|
310 |
+
'\f129' => 'info',
|
311 |
+
'\f12a' => 'exclamation',
|
312 |
+
'\f12b' => 'superscript',
|
313 |
+
'\f12c' => 'subscript',
|
314 |
+
'\f12d' => 'eraser',
|
315 |
+
'\f12e' => 'puzzle-piece',
|
316 |
+
'\f130' => 'microphone',
|
317 |
+
'\f131' => 'microphone-slash',
|
318 |
+
'\f132' => 'shield',
|
319 |
+
'\f133' => 'calendar-o',
|
320 |
+
'\f134' => 'fire-extinguisher',
|
321 |
+
'\f135' => 'rocket',
|
322 |
+
'\f136' => 'maxcdn',
|
323 |
+
'\f137' => 'chevron-circle-left',
|
324 |
+
'\f138' => 'chevron-circle-right',
|
325 |
+
'\f139' => 'chevron-circle-up',
|
326 |
+
'\f13a' => 'chevron-circle-down',
|
327 |
+
'\f13b' => 'html5',
|
328 |
+
'\f13c' => 'css3',
|
329 |
+
'\f13d' => 'anchor',
|
330 |
+
'\f13e' => 'unlock-alt',
|
331 |
+
'\f140' => 'bullseye',
|
332 |
+
'\f141' => 'ellipsis-h',
|
333 |
+
'\f142' => 'ellipsis-v',
|
334 |
+
'\f143' => 'rss-square',
|
335 |
+
'\f144' => 'play-circle',
|
336 |
+
'\f145' => 'ticket',
|
337 |
+
'\f146' => 'minus-square',
|
338 |
+
'\f147' => 'minus-square-o',
|
339 |
+
'\f148' => 'level-up',
|
340 |
+
'\f149' => 'level-down',
|
341 |
+
'\f14a' => 'check-square',
|
342 |
+
'\f14b' => 'pencil-square',
|
343 |
+
'\f14c' => 'external-link-square',
|
344 |
+
'\f14d' => 'share-square',
|
345 |
+
'\f14e' => 'compass',
|
346 |
+
'\f150' => 'caret-square-o-down',
|
347 |
+
'\f151' => 'caret-square-o-up',
|
348 |
+
'\f152' => 'caret-square-o-right',
|
349 |
+
'\f153' => 'eur',
|
350 |
+
'\f154' => 'gbp',
|
351 |
+
'\f155' => 'usd',
|
352 |
+
'\f156' => 'inr',
|
353 |
+
'\f157' => 'jpy',
|
354 |
+
'\f158' => 'rub',
|
355 |
+
'\f159' => 'krw',
|
356 |
+
'\f15a' => 'btc',
|
357 |
+
'\f15b' => 'file',
|
358 |
+
'\f15c' => 'file-text',
|
359 |
+
'\f15d' => 'sort-alpha-asc',
|
360 |
+
'\f15e' => 'sort-alpha-desc',
|
361 |
+
'\f160' => 'sort-amount-asc',
|
362 |
+
'\f161' => 'sort-amount-desc',
|
363 |
+
'\f162' => 'sort-numeric-asc',
|
364 |
+
'\f163' => 'sort-numeric-desc',
|
365 |
+
'\f164' => 'thumbs-up',
|
366 |
+
'\f165' => 'thumbs-down',
|
367 |
+
'\f166' => 'youtube-square',
|
368 |
+
'\f167' => 'youtube',
|
369 |
+
'\f168' => 'xing',
|
370 |
+
'\f169' => 'xing-square',
|
371 |
+
'\f16a' => 'youtube-play',
|
372 |
+
'\f16b' => 'dropbox',
|
373 |
+
'\f16c' => 'stack-overflow',
|
374 |
+
'\f16d' => 'instagram',
|
375 |
+
'\f16e' => 'flickr',
|
376 |
+
'\f170' => 'adn',
|
377 |
+
'\f171' => 'bitbucket',
|
378 |
+
'\f172' => 'bitbucket-square',
|
379 |
+
'\f173' => 'tumblr',
|
380 |
+
'\f174' => 'tumblr-square',
|
381 |
+
'\f175' => 'long-arrow-down',
|
382 |
+
'\f176' => 'long-arrow-up',
|
383 |
+
'\f177' => 'long-arrow-left',
|
384 |
+
'\f178' => 'long-arrow-right',
|
385 |
+
'\f179' => 'apple',
|
386 |
+
'\f17a' => 'windows',
|
387 |
+
'\f17b' => 'android',
|
388 |
+
'\f17c' => 'linux',
|
389 |
+
'\f17d' => 'dribbble',
|
390 |
+
'\f17e' => 'skype',
|
391 |
+
'\f180' => 'foursquare',
|
392 |
+
'\f181' => 'trello',
|
393 |
+
'\f182' => 'female',
|
394 |
+
'\f183' => 'male',
|
395 |
+
'\f184' => 'gratipay',
|
396 |
+
'\f185' => 'sun-o',
|
397 |
+
'\f186' => 'moon-o',
|
398 |
+
'\f187' => 'archive',
|
399 |
+
'\f188' => 'bug',
|
400 |
+
'\f189' => 'vk',
|
401 |
+
'\f18a' => 'weibo',
|
402 |
+
'\f18b' => 'renren',
|
403 |
+
'\f18c' => 'pagelines',
|
404 |
+
'\f18d' => 'stack-exchange',
|
405 |
+
'\f18e' => 'arrow-circle-o-right',
|
406 |
+
'\f190' => 'arrow-circle-o-left',
|
407 |
+
'\f191' => 'caret-square-o-left',
|
408 |
+
'\f192' => 'dot-circle-o',
|
409 |
+
'\f193' => 'wheelchair',
|
410 |
+
'\f194' => 'vimeo-square',
|
411 |
+
'\f195' => 'try',
|
412 |
+
'\f196' => 'plus-square-o',
|
413 |
+
'\f197' => 'space-shuttle',
|
414 |
+
'\f198' => 'slack',
|
415 |
+
'\f199' => 'envelope-square',
|
416 |
+
'\f19a' => 'wordpress',
|
417 |
+
'\f19b' => 'openid',
|
418 |
+
'\f19c' => 'university',
|
419 |
+
'\f19d' => 'graduation-cap',
|
420 |
+
'\f19e' => 'yahoo',
|
421 |
+
'\f1a0' => 'google',
|
422 |
+
'\f1a1' => 'reddit',
|
423 |
+
'\f1a2' => 'reddit-square',
|
424 |
+
'\f1a3' => 'stumbleupon-circle',
|
425 |
+
'\f1a4' => 'stumbleupon',
|
426 |
+
'\f1a5' => 'delicious',
|
427 |
+
'\f1a6' => 'digg',
|
428 |
+
'\f1a7' => 'pied-piper-pp',
|
429 |
+
'\f1a8' => 'pied-piper-alt',
|
430 |
+
'\f1a9' => 'drupal',
|
431 |
+
'\f1aa' => 'joomla',
|
432 |
+
'\f1ab' => 'language',
|
433 |
+
'\f1ac' => 'fax',
|
434 |
+
'\f1ad' => 'building',
|
435 |
+
'\f1ae' => 'child',
|
436 |
+
'\f1b0' => 'paw',
|
437 |
+
'\f1b1' => 'spoon',
|
438 |
+
'\f1b2' => 'cube',
|
439 |
+
'\f1b3' => 'cubes',
|
440 |
+
'\f1b4' => 'behance',
|
441 |
+
'\f1b5' => 'behance-square',
|
442 |
+
'\f1b6' => 'steam',
|
443 |
+
'\f1b7' => 'steam-square',
|
444 |
+
'\f1b8' => 'recycle',
|
445 |
+
'\f1b9' => 'car',
|
446 |
+
'\f1ba' => 'taxi',
|
447 |
+
'\f1bb' => 'tree',
|
448 |
+
'\f1bc' => 'spotify',
|
449 |
+
'\f1bd' => 'deviantart',
|
450 |
+
'\f1be' => 'soundcloud',
|
451 |
+
'\f1c0' => 'database',
|
452 |
+
'\f1c1' => 'file-pdf-o',
|
453 |
+
'\f1c2' => 'file-word-o',
|
454 |
+
'\f1c3' => 'file-excel-o',
|
455 |
+
'\f1c4' => 'file-powerpoint-o',
|
456 |
+
'\f1c5' => 'file-image-o',
|
457 |
+
'\f1c6' => 'file-archive-o',
|
458 |
+
'\f1c7' => 'file-audio-o',
|
459 |
+
'\f1c8' => 'file-video-o',
|
460 |
+
'\f1c9' => 'file-code-o',
|
461 |
+
'\f1ca' => 'vine',
|
462 |
+
'\f1cb' => 'codepen',
|
463 |
+
'\f1cc' => 'jsfiddle',
|
464 |
+
'\f1cd' => 'life-ring',
|
465 |
+
'\f1ce' => 'circle-o-notch',
|
466 |
+
'\f1d0' => 'rebel',
|
467 |
+
'\f1d1' => 'empire',
|
468 |
+
'\f1d2' => 'git-square',
|
469 |
+
'\f1d3' => 'git',
|
470 |
+
'\f1d4' => 'hacker-news',
|
471 |
+
'\f1d5' => 'tencent-weibo',
|
472 |
+
'\f1d6' => 'qq',
|
473 |
+
'\f1d7' => 'weixin',
|
474 |
+
'\f1d8' => 'paper-plane',
|
475 |
+
'\f1d9' => 'paper-plane-o',
|
476 |
+
'\f1da' => 'history',
|
477 |
+
'\f1db' => 'circle-thin',
|
478 |
+
'\f1dc' => 'header',
|
479 |
+
'\f1dd' => 'paragraph',
|
480 |
+
'\f1de' => 'sliders',
|
481 |
+
'\f1e0' => 'share-alt',
|
482 |
+
'\f1e1' => 'share-alt-square',
|
483 |
+
'\f1e2' => 'bomb',
|
484 |
+
'\f1e3' => 'futbol-o',
|
485 |
+
'\f1e4' => 'tty',
|
486 |
+
'\f1e5' => 'binoculars',
|
487 |
+
'\f1e6' => 'plug',
|
488 |
+
'\f1e7' => 'slideshare',
|
489 |
+
'\f1e8' => 'twitch',
|
490 |
+
'\f1e9' => 'yelp',
|
491 |
+
'\f1ea' => 'newspaper-o',
|
492 |
+
'\f1eb' => 'wifi',
|
493 |
+
'\f1ec' => 'calculator',
|
494 |
+
'\f1ed' => 'paypal',
|
495 |
+
'\f1ee' => 'google-wallet',
|
496 |
+
'\f1f0' => 'cc-visa',
|
497 |
+
'\f1f1' => 'cc-mastercard',
|
498 |
+
'\f1f2' => 'cc-discover',
|
499 |
+
'\f1f3' => 'cc-amex',
|
500 |
+
'\f1f4' => 'cc-paypal',
|
501 |
+
'\f1f5' => 'cc-stripe',
|
502 |
+
'\f1f6' => 'bell-slash',
|
503 |
+
'\f1f7' => 'bell-slash-o',
|
504 |
+
'\f1f8' => 'trash',
|
505 |
+
'\f1f9' => 'copyright',
|
506 |
+
'\f1fa' => 'at',
|
507 |
+
'\f1fb' => 'eyedropper',
|
508 |
+
'\f1fc' => 'paint-brush',
|
509 |
+
'\f1fd' => 'birthday-cake',
|
510 |
+
'\f1fe' => 'area-chart',
|
511 |
+
'\f200' => 'pie-chart',
|
512 |
+
'\f201' => 'line-chart',
|
513 |
+
'\f202' => 'lastfm',
|
514 |
+
'\f203' => 'lastfm-square',
|
515 |
+
'\f204' => 'toggle-off',
|
516 |
+
'\f205' => 'toggle-on',
|
517 |
+
'\f206' => 'bicycle',
|
518 |
+
'\f207' => 'bus',
|
519 |
+
'\f208' => 'ioxhost',
|
520 |
+
'\f209' => 'angellist',
|
521 |
+
'\f20a' => 'cc',
|
522 |
+
'\f20b' => 'ils',
|
523 |
+
'\f20c' => 'meanpath',
|
524 |
+
'\f20d' => 'buysellads',
|
525 |
+
'\f20e' => 'connectdevelop',
|
526 |
+
'\f210' => 'dashcube',
|
527 |
+
'\f211' => 'forumbee',
|
528 |
+
'\f212' => 'leanpub',
|
529 |
+
'\f213' => 'sellsy',
|
530 |
+
'\f214' => 'shirtsinbulk',
|
531 |
+
'\f215' => 'simplybuilt',
|
532 |
+
'\f216' => 'skyatlas',
|
533 |
+
'\f217' => 'cart-plus',
|
534 |
+
'\f218' => 'cart-arrow-down',
|
535 |
+
'\f219' => 'diamond',
|
536 |
+
'\f21a' => 'ship',
|
537 |
+
'\f21b' => 'user-secret',
|
538 |
+
'\f21c' => 'motorcycle',
|
539 |
+
'\f21d' => 'street-view',
|
540 |
+
'\f21e' => 'heartbeat',
|
541 |
+
'\f221' => 'venus',
|
542 |
+
'\f222' => 'mars',
|
543 |
+
'\f223' => 'mercury',
|
544 |
+
'\f224' => 'transgender',
|
545 |
+
'\f225' => 'transgender-alt',
|
546 |
+
'\f226' => 'venus-double',
|
547 |
+
'\f227' => 'mars-double',
|
548 |
+
'\f228' => 'venus-mars',
|
549 |
+
'\f229' => 'mars-stroke',
|
550 |
+
'\f22a' => 'mars-stroke-v',
|
551 |
+
'\f22b' => 'mars-stroke-h',
|
552 |
+
'\f22c' => 'neuter',
|
553 |
+
'\f22d' => 'genderless',
|
554 |
+
'\f230' => 'facebook-official',
|
555 |
+
'\f231' => 'pinterest-p',
|
556 |
+
'\f232' => 'whatsapp',
|
557 |
+
'\f233' => 'server',
|
558 |
+
'\f234' => 'user-plus',
|
559 |
+
'\f235' => 'user-times',
|
560 |
+
'\f236' => 'bed',
|
561 |
+
'\f237' => 'viacoin',
|
562 |
+
'\f238' => 'train',
|
563 |
+
'\f239' => 'subway',
|
564 |
+
'\f23a' => 'medium',
|
565 |
+
'\f23b' => 'y-combinator',
|
566 |
+
'\f23c' => 'optin-monster',
|
567 |
+
'\f23d' => 'opencart',
|
568 |
+
'\f23e' => 'expeditedssl',
|
569 |
+
'\f240' => 'battery-full',
|
570 |
+
'\f241' => 'battery-three-quarters',
|
571 |
+
'\f242' => 'battery-half',
|
572 |
+
'\f243' => 'battery-quarter',
|
573 |
+
'\f244' => 'battery-empty',
|
574 |
+
'\f245' => 'mouse-pointer',
|
575 |
+
'\f246' => 'i-cursor',
|
576 |
+
'\f247' => 'object-group',
|
577 |
+
'\f248' => 'object-ungroup',
|
578 |
+
'\f249' => 'sticky-note',
|
579 |
+
'\f24a' => 'sticky-note-o',
|
580 |
+
'\f24b' => 'cc-jcb',
|
581 |
+
'\f24c' => 'cc-diners-club',
|
582 |
+
'\f24d' => 'clone',
|
583 |
+
'\f24e' => 'balance-scale',
|
584 |
+
'\f250' => 'hourglass-o',
|
585 |
+
'\f251' => 'hourglass-start',
|
586 |
+
'\f252' => 'hourglass-half',
|
587 |
+
'\f253' => 'hourglass-end',
|
588 |
+
'\f254' => 'hourglass',
|
589 |
+
'\f255' => 'hand-rock-o',
|
590 |
+
'\f256' => 'hand-paper-o',
|
591 |
+
'\f257' => 'hand-scissors-o',
|
592 |
+
'\f258' => 'hand-lizard-o',
|
593 |
+
'\f259' => 'hand-spock-o',
|
594 |
+
'\f25a' => 'hand-pointer-o',
|
595 |
+
'\f25b' => 'hand-peace-o',
|
596 |
+
'\f25c' => 'trademark',
|
597 |
+
'\f25d' => 'registered',
|
598 |
+
'\f25e' => 'creative-commons',
|
599 |
+
'\f260' => 'gg',
|
600 |
+
'\f261' => 'gg-circle',
|
601 |
+
'\f262' => 'tripadvisor',
|
602 |
+
'\f263' => 'odnoklassniki',
|
603 |
+
'\f264' => 'odnoklassniki-square',
|
604 |
+
'\f265' => 'get-pocket',
|
605 |
+
'\f266' => 'wikipedia-w',
|
606 |
+
'\f267' => 'safari',
|
607 |
+
'\f268' => 'chrome',
|
608 |
+
'\f269' => 'firefox',
|
609 |
+
'\f26a' => 'opera',
|
610 |
+
'\f26b' => 'internet-explorer',
|
611 |
+
'\f26c' => 'television',
|
612 |
+
'\f26d' => 'contao',
|
613 |
+
'\f26e' => '500px',
|
614 |
+
'\f270' => 'amazon',
|
615 |
+
'\f271' => 'calendar-plus-o',
|
616 |
+
'\f272' => 'calendar-minus-o',
|
617 |
+
'\f273' => 'calendar-times-o',
|
618 |
+
'\f274' => 'calendar-check-o',
|
619 |
+
'\f275' => 'industry',
|
620 |
+
'\f276' => 'map-pin',
|
621 |
+
'\f277' => 'map-signs',
|
622 |
+
'\f278' => 'map-o',
|
623 |
+
'\f279' => 'map',
|
624 |
+
'\f27a' => 'commenting',
|
625 |
+
'\f27b' => 'commenting-o',
|
626 |
+
'\f27c' => 'houzz',
|
627 |
+
'\f27d' => 'vimeo',
|
628 |
+
'\f27e' => 'black-tie',
|
629 |
+
'\f280' => 'fonticons',
|
630 |
+
'\f281' => 'reddit-alien',
|
631 |
+
'\f282' => 'edge',
|
632 |
+
'\f283' => 'credit-card-alt',
|
633 |
+
'\f284' => 'codiepie',
|
634 |
+
'\f285' => 'modx',
|
635 |
+
'\f286' => 'fort-awesome',
|
636 |
+
'\f287' => 'usb',
|
637 |
+
'\f288' => 'product-hunt',
|
638 |
+
'\f289' => 'mixcloud',
|
639 |
+
'\f28a' => 'scribd',
|
640 |
+
'\f28b' => 'pause-circle',
|
641 |
+
'\f28c' => 'pause-circle-o',
|
642 |
+
'\f28d' => 'stop-circle',
|
643 |
+
'\f28e' => 'stop-circle-o',
|
644 |
+
'\f290' => 'shopping-bag',
|
645 |
+
'\f291' => 'shopping-basket',
|
646 |
+
'\f292' => 'hashtag',
|
647 |
+
'\f293' => 'bluetooth',
|
648 |
+
'\f294' => 'bluetooth-b',
|
649 |
+
'\f295' => 'percent',
|
650 |
+
'\f296' => 'gitlab',
|
651 |
+
'\f297' => 'wpbeginner',
|
652 |
+
'\f298' => 'wpforms',
|
653 |
+
'\f299' => 'envira',
|
654 |
+
'\f29a' => 'universal-access',
|
655 |
+
'\f29b' => 'wheelchair-alt',
|
656 |
+
'\f29c' => 'question-circle-o',
|
657 |
+
'\f29d' => 'blind',
|
658 |
+
'\f29e' => 'audio-description',
|
659 |
+
'\f2a0' => 'volume-control-phone',
|
660 |
+
'\f2a1' => 'braille',
|
661 |
+
'\f2a2' => 'assistive-listening-systems',
|
662 |
+
'\f2a3' => 'american-sign-language-interpreting',
|
663 |
+
'\f2a4' => 'deaf',
|
664 |
+
'\f2a5' => 'glide',
|
665 |
+
'\f2a6' => 'glide-g',
|
666 |
+
'\f2a7' => 'sign-language',
|
667 |
+
'\f2a8' => 'low-vision',
|
668 |
+
'\f2a9' => 'viadeo',
|
669 |
+
'\f2aa' => 'viadeo-square',
|
670 |
+
'\f2ab' => 'snapchat',
|
671 |
+
'\f2ac' => 'snapchat-ghost',
|
672 |
+
'\f2ad' => 'snapchat-square',
|
673 |
+
'\f2ae' => 'pied-piper',
|
674 |
+
'\f2b0' => 'first-order',
|
675 |
+
'\f2b1' => 'yoast',
|
676 |
+
'\f2b2' => 'themeisle',
|
677 |
+
'\f2b3' => 'google-plus-official',
|
678 |
+
'\f2b4' => 'font-awesome',
|
679 |
+
),
|
680 |
+
'Dashicons' => array(
|
681 |
+
'\f100' => 'admin-appearance',
|
682 |
+
'\f101' => 'admin-comments',
|
683 |
+
'\f102' => 'admin-home',
|
684 |
+
'\f104' => 'admin-media',
|
685 |
+
'\f105' => 'admin-page',
|
686 |
+
'\f106' => 'admin-plugins',
|
687 |
+
'\f107' => 'admin-tools',
|
688 |
+
'\f108' => 'admin-settings',
|
689 |
+
'\f110' => 'admin-users',
|
690 |
+
'\f111' => 'admin-generic',
|
691 |
+
'\f112' => 'admin-network',
|
692 |
+
'\f115' => 'welcome-view-site',
|
693 |
+
'\f116' => 'welcome-widgets-menus',
|
694 |
+
'\f117' => 'welcome-comments',
|
695 |
+
'\f118' => 'welcome-learn-more',
|
696 |
+
'\f120' => 'wordpress',
|
697 |
+
'\f122' => 'format-quote',
|
698 |
+
'\f123' => 'format-aside',
|
699 |
+
'\f125' => 'format-chat',
|
700 |
+
'\f126' => 'format-video',
|
701 |
+
'\f127' => 'format-audio',
|
702 |
+
'\f128' => 'format-image',
|
703 |
+
'\f130' => 'format-status',
|
704 |
+
'\f132' => 'plus',
|
705 |
+
'\f133' => 'welcome-add-page',
|
706 |
+
'\f134' => 'align-center',
|
707 |
+
'\f135' => 'align-left',
|
708 |
+
'\f136' => 'align-right',
|
709 |
+
'\f138' => 'align-none',
|
710 |
+
'\f139' => 'arrow-right',
|
711 |
+
'\f140' => 'arrow-down',
|
712 |
+
'\f141' => 'arrow-left',
|
713 |
+
'\f142' => 'arrow-up',
|
714 |
+
'\f145' => 'calendar',
|
715 |
+
'\f147' => 'yes',
|
716 |
+
'\f148' => 'admin-collapse',
|
717 |
+
'\f153' => 'dismiss',
|
718 |
+
'\f154' => 'star-empty',
|
719 |
+
'\f155' => 'star-filled',
|
720 |
+
'\f156' => 'sort',
|
721 |
+
'\f157' => 'pressthis',
|
722 |
+
'\f158' => 'no',
|
723 |
+
'\f159' => 'marker',
|
724 |
+
'\f160' => 'lock',
|
725 |
+
'\f161' => 'format-gallery',
|
726 |
+
'\f163' => 'list-view',
|
727 |
+
'\f165' => 'image-crop',
|
728 |
+
'\f166' => 'image-rotate-left',
|
729 |
+
'\f167' => 'image-rotate-right',
|
730 |
+
'\f168' => 'image-flip-vertical',
|
731 |
+
'\f169' => 'image-flip-horizontal',
|
732 |
+
'\f171' => 'undo',
|
733 |
+
'\f172' => 'redo',
|
734 |
+
'\f173' => 'post-status',
|
735 |
+
'\f174' => 'cart',
|
736 |
+
'\f175' => 'feedback',
|
737 |
+
'\f176' => 'cloud',
|
738 |
+
'\f177' => 'visibility',
|
739 |
+
'\f178' => 'vault',
|
740 |
+
'\f179' => 'search',
|
741 |
+
'\f180' => 'screenoptions',
|
742 |
+
'\f181' => 'slides',
|
743 |
+
'\f183' => 'analytics',
|
744 |
+
'\f184' => 'chart-pie',
|
745 |
+
'\f185' => 'chart-bar',
|
746 |
+
'\f200' => 'editor-bold',
|
747 |
+
'\f201' => 'editor-italic',
|
748 |
+
'\f203' => 'editor-ul',
|
749 |
+
'\f204' => 'editor-ol',
|
750 |
+
'\f205' => 'editor-quote',
|
751 |
+
'\f206' => 'editor-alignleft',
|
752 |
+
'\f207' => 'editor-aligncenter',
|
753 |
+
'\f208' => 'editor-alignright',
|
754 |
+
'\f209' => 'editor-insertmore',
|
755 |
+
'\f210' => 'editor-spellcheck',
|
756 |
+
'\f212' => 'editor-kitchensink',
|
757 |
+
'\f213' => 'editor-underline',
|
758 |
+
'\f214' => 'editor-justify',
|
759 |
+
'\f215' => 'editor-textcolor',
|
760 |
+
'\f216' => 'editor-paste-word',
|
761 |
+
'\f217' => 'editor-paste-text',
|
762 |
+
'\f218' => 'editor-removeformatting',
|
763 |
+
'\f219' => 'editor-video',
|
764 |
+
'\f220' => 'editor-customchar',
|
765 |
+
'\f221' => 'editor-outdent',
|
766 |
+
'\f222' => 'editor-indent',
|
767 |
+
'\f223' => 'editor-help',
|
768 |
+
'\f224' => 'editor-strikethrough',
|
769 |
+
'\f225' => 'editor-unlink',
|
770 |
+
'\f226' => 'dashboard',
|
771 |
+
'\f227' => 'flag',
|
772 |
+
'\f229' => 'leftright',
|
773 |
+
'\f230' => 'location',
|
774 |
+
'\f231' => 'location-alt',
|
775 |
+
'\f232' => 'images-alt',
|
776 |
+
'\f233' => 'images-alt2',
|
777 |
+
'\f234' => 'video-alt',
|
778 |
+
'\f235' => 'video-alt2',
|
779 |
+
'\f236' => 'video-alt3',
|
780 |
+
'\f237' => 'share1',
|
781 |
+
'\f238' => 'chart-line',
|
782 |
+
'\f239' => 'chart-area',
|
783 |
+
'\f240' => 'share-alt',
|
784 |
+
'\f242' => 'share-alt2',
|
785 |
+
'\f301' => 'twitter',
|
786 |
+
'\f303' => 'rss',
|
787 |
+
'\f304' => 'facebook',
|
788 |
+
'\f305' => 'facebook-alt',
|
789 |
+
'\f306' => 'camera',
|
790 |
+
'\f307' => 'groups',
|
791 |
+
'\f308' => 'hammer',
|
792 |
+
'\f309' => 'art',
|
793 |
+
'\f310' => 'migrate',
|
794 |
+
'\f311' => 'performance',
|
795 |
+
'\f312' => 'products',
|
796 |
+
'\f313' => 'awards',
|
797 |
+
'\f314' => 'forms',
|
798 |
+
'\f316' => 'download',
|
799 |
+
'\f317' => 'upload',
|
800 |
+
'\f318' => 'category',
|
801 |
+
'\f319' => 'admin-site',
|
802 |
+
'\f320' => 'editor-rtl',
|
803 |
+
'\f321' => 'backup',
|
804 |
+
'\f322' => 'portfolio',
|
805 |
+
'\f323' => 'tag',
|
806 |
+
'\f324' => 'wordpress-alt',
|
807 |
+
'\f325' => 'networking',
|
808 |
+
'\f326' => 'translation',
|
809 |
+
'\f328' => 'smiley',
|
810 |
+
'\f330' => 'book',
|
811 |
+
'\f331' => 'book-alt',
|
812 |
+
'\f332' => 'shield',
|
813 |
+
'\f333' => 'menu',
|
814 |
+
'\f334' => 'shield-alt',
|
815 |
+
'\f335' => 'no-alt',
|
816 |
+
'\f336' => 'id',
|
817 |
+
'\f337' => 'id-alt',
|
818 |
+
'\f338' => 'businessman',
|
819 |
+
'\f339' => 'lightbulb',
|
820 |
+
'\f340' => 'arrow-left-alt',
|
821 |
+
'\f341' => 'arrow-left-alt2',
|
822 |
+
'\f342' => 'arrow-up-alt',
|
823 |
+
'\f343' => 'arrow-up-alt2',
|
824 |
+
'\f344' => 'arrow-right-alt',
|
825 |
+
'\f345' => 'arrow-right-alt2',
|
826 |
+
'\f346' => 'arrow-down-alt',
|
827 |
+
'\f347' => 'arrow-down-alt2',
|
828 |
+
'\f348' => 'info',
|
829 |
+
'\f459' => 'star-half',
|
830 |
+
'\f460' => 'minus',
|
831 |
+
'\f462' => 'googleplus',
|
832 |
+
'\f463' => 'update',
|
833 |
+
'\f464' => 'edit',
|
834 |
+
'\f465' => 'email',
|
835 |
+
'\f466' => 'email-alt',
|
836 |
+
'\f468' => 'sos',
|
837 |
+
'\f469' => 'clock',
|
838 |
+
'\f470' => 'smartphone',
|
839 |
+
'\f471' => 'tablet',
|
840 |
+
'\f472' => 'desktop',
|
841 |
+
'\f473' => 'testimonial',
|
842 |
+
'\f474' => 'editor-break',
|
843 |
+
'\f475' => 'editor-code',
|
844 |
+
'\f476' => 'editor-paragraph',
|
845 |
+
'\f478' => 'text',
|
846 |
+
'\f479' => 'tagcloud',
|
847 |
+
'\f480' => 'archive',
|
848 |
+
'\f481' => 'clipboard',
|
849 |
+
'\f482' => 'microphone',
|
850 |
+
'\f483' => 'universal-access',
|
851 |
+
'\f484' => 'nametag',
|
852 |
+
'\f486' => 'tickets',
|
853 |
+
'\f487' => 'heart',
|
854 |
+
'\f488' => 'megaphone',
|
855 |
+
'\f489' => 'schedule',
|
856 |
+
'\f490' => 'media-video',
|
857 |
+
'\f491' => 'media-text',
|
858 |
+
'\f492' => 'playlist-audio',
|
859 |
+
'\f493' => 'playlist-video',
|
860 |
+
'\f495' => 'media-spreadsheet',
|
861 |
+
'\f496' => 'media-interactive',
|
862 |
+
'\f497' => 'media-document',
|
863 |
+
'\f498' => 'media-default',
|
864 |
+
'\f499' => 'media-code',
|
865 |
+
'\f500' => 'media-audio',
|
866 |
+
'\f501' => 'media-archive',
|
867 |
+
'\f502' => 'plus-alt',
|
868 |
+
'\f503' => 'randomize',
|
869 |
+
'\f504' => 'external',
|
870 |
+
'\f506' => 'editor-contract',
|
871 |
+
'\f507' => 'universal-access-alt',
|
872 |
+
'\f508' => 'calendar-alt',
|
873 |
+
'\f509' => 'grid-view',
|
874 |
+
'\f510' => 'index-card',
|
875 |
+
'\f511' => 'carrot',
|
876 |
+
'\f512' => 'building',
|
877 |
+
'\f513' => 'store',
|
878 |
+
'\f514' => 'album',
|
879 |
+
'\f515' => 'controls-repeat',
|
880 |
+
'\f516' => 'controls-skipback',
|
881 |
+
'\f517' => 'controls-skipforward',
|
882 |
+
'\f518' => 'controls-back',
|
883 |
+
'\f519' => 'controls-forward',
|
884 |
+
'\f520' => 'controls-volumeoff',
|
885 |
+
'\f521' => 'controls-volumeon',
|
886 |
+
'\f522' => 'controls-play',
|
887 |
+
'\f523' => 'controls-pause',
|
888 |
+
'\f524' => 'tickets-alt',
|
889 |
+
'\f525' => 'phone',
|
890 |
+
'\f526' => 'money',
|
891 |
+
'\f527' => 'palmtree',
|
892 |
+
'\f528' => 'unlock',
|
893 |
+
'\f529' => 'thumbs-up',
|
894 |
+
'\f530' => 'hidden',
|
895 |
+
'\f531' => 'image-rotate',
|
896 |
+
'\f533' => 'image-filter',
|
897 |
+
'\f534' => 'warning',
|
898 |
+
'\f535' => 'editor-table',
|
899 |
+
'\f536' => 'filter',
|
900 |
+
'\f537' => 'sticky',
|
901 |
+
'\f538' => 'layout',
|
902 |
+
'\f540' => 'admin-customizer',
|
903 |
+
'\f541' => 'admin-multisite',
|
904 |
+
'\f542' => 'thumbs-down',
|
905 |
+
'\f543' => 'plus-alt2',
|
906 |
+
'\f545' => 'move',
|
907 |
+
'\f546' => 'paperclip',
|
908 |
+
'\f547' => 'laptop',
|
909 |
+
),
|
910 |
+
)
|
911 |
+
);
|
912 |
+
|
913 |
+
|
914 |
+
/**
|
915 |
+
* Returns single instance of the class
|
916 |
+
*
|
917 |
+
* @return YIT_Icons
|
918 |
+
* @since 1.0.0
|
919 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
920 |
+
*/
|
921 |
+
public static function get_instance() {
|
922 |
+
return isset( self::$_instance ) ? self::$_instance : self::$_instance = new self();
|
923 |
+
}
|
924 |
+
|
925 |
+
/**
|
926 |
+
* @since 1.0.0
|
927 |
+
* @access protected
|
928 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
929 |
+
*/
|
930 |
+
private function __construct() {
|
931 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 99 );
|
932 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 99 );
|
933 |
+
}
|
934 |
+
|
935 |
+
/**
|
936 |
+
* __get function.
|
937 |
+
*
|
938 |
+
* @param string $key
|
939 |
+
*
|
940 |
+
* @return mixed
|
941 |
+
*/
|
942 |
+
public function __get( $key ) {
|
943 |
+
$value = isset( $this->_data[ $key ] ) ? $this->_data[ $key ] : false;
|
944 |
+
|
945 |
+
return $value;
|
946 |
+
}
|
947 |
+
|
948 |
+
/**
|
949 |
+
* __isset function.
|
950 |
+
*
|
951 |
+
* @param string $key
|
952 |
+
*
|
953 |
+
* @return bool
|
954 |
+
*/
|
955 |
+
public function __isset( $key ) {
|
956 |
+
return isset( $this->_data[ $key ] );
|
957 |
+
}
|
958 |
+
|
959 |
+
public function get_icons( $filter_icons = '' ) {
|
960 |
+
$icons = $this->icons;
|
961 |
+
if ( !empty( $filter_icons ) ) {
|
962 |
+
$icons = apply_filters( 'yith_plugin_fw_icons_field_icons_' . sanitize_key( $filter_icons ), $icons );
|
963 |
+
}
|
964 |
+
|
965 |
+
return $icons;
|
966 |
+
}
|
967 |
+
|
968 |
+
/**
|
969 |
+
* @param $icon_string
|
970 |
+
*
|
971 |
+
* @param string $filter_icons
|
972 |
+
*
|
973 |
+
* @return string
|
974 |
+
*/
|
975 |
+
public function get_icon_data( $icon_string, $filter_icons = '' ) {
|
976 |
+
$icon_data = '';
|
977 |
+
if ( $icon_string ) {
|
978 |
+
$icon_array = explode( ':', $icon_string );
|
979 |
+
|
980 |
+
if ( count( $icon_array ) < 2 ) {
|
981 |
+
return $icon_data;
|
982 |
+
}
|
983 |
+
|
984 |
+
$font_name = $icon_array[ 0 ];
|
985 |
+
$icon_name = $icon_array[ 1 ];
|
986 |
+
|
987 |
+
$icons = $this->get_icons( $filter_icons );
|
988 |
+
if ( array_key_exists( $font_name, $icons ) ) {
|
989 |
+
$icon_key = array_search( $icon_name, $icons[ $font_name ] );
|
990 |
+
$icon_code = '&#x' . str_replace( '\\', '', $icon_key );
|
991 |
+
|
992 |
+
$icon_data = 'data-font="' . esc_attr( $font_name ) . '" data-name="' . esc_attr( $icon_name ) . '" data-key="' . esc_attr( $icon_key ) . '" data-icon="' . $icon_code . '"';
|
993 |
+
}
|
994 |
+
}
|
995 |
+
|
996 |
+
return $icon_data;
|
997 |
+
}
|
998 |
+
|
999 |
+
/**
|
1000 |
+
* Retrieves the font awesome array
|
1001 |
+
* the first time retrieves the array by the Font Awesome CSS
|
1002 |
+
* [utility method]
|
1003 |
+
*
|
1004 |
+
* @return array
|
1005 |
+
*/
|
1006 |
+
private function _get_font_awesome_array() {
|
1007 |
+
$font_awesome_list = get_option( 'yit_font_awesome_list', array() );
|
1008 |
+
$font_awesome_version = $this->font_awesome_version;
|
1009 |
+
|
1010 |
+
$font_awesome_array = array();
|
1011 |
+
|
1012 |
+
if ( !empty( $font_awesome_list[ $font_awesome_version ] ) ) {
|
1013 |
+
$font_awesome_array = $font_awesome_list[ $font_awesome_version ];
|
1014 |
+
} else {
|
1015 |
+
// Create the array by css
|
1016 |
+
$font_awesome_file = "https://maxcdn.bootstrapcdn.com/font-awesome/{$font_awesome_version}/css/font-awesome.min.css";
|
1017 |
+
|
1018 |
+
$pattern = '/\.(fa-(?:\w+(?:-)?)+):before{content:"\\\\(....)"}/';
|
1019 |
+
$subject = file_get_contents( $font_awesome_file );
|
1020 |
+
preg_match_all( $pattern, $subject, $matches, PREG_SET_ORDER );
|
1021 |
+
foreach ( $matches as $match ) {
|
1022 |
+
$font_awesome_array[ $match[ 2 ] ] = $match[ 1 ];
|
1023 |
+
}
|
1024 |
+
ksort( $font_awesome_array );
|
1025 |
+
|
1026 |
+
$font_awesome_list[ $font_awesome_version ] = $font_awesome_array;
|
1027 |
+
update_option( 'yit_font_awesome_list', $font_awesome_list );
|
1028 |
+
}
|
1029 |
+
|
1030 |
+
return $font_awesome_array;
|
1031 |
+
}
|
1032 |
+
|
1033 |
+
/**
|
1034 |
+
* Retrieves the dashicons array
|
1035 |
+
* the first time retrieves the array by the Dashicons CSS
|
1036 |
+
* [utility method]
|
1037 |
+
*
|
1038 |
+
* @return array
|
1039 |
+
*/
|
1040 |
+
private function _get_dashicons_array() {
|
1041 |
+
$dashicons_list = get_option( 'yit_dashicons_list', array() );
|
1042 |
+
|
1043 |
+
$dashicons_array = array();
|
1044 |
+
if ( false && !empty( $dashicons_list ) ) {
|
1045 |
+
$dashicons_array = $dashicons_list;
|
1046 |
+
} else {
|
1047 |
+
// Create the array by css
|
1048 |
+
$file = "https://s.w.org/wp-includes/css/dashicons.min.css";
|
1049 |
+
|
1050 |
+
$pattern = '/\.dashicons-((?:\w+(?:-)?)+):before{content:"\\\\(....)"/';
|
1051 |
+
$pattern = '/\.dashicons-((?:\w+(?:-)?)+):before.............../';
|
1052 |
+
$subject = file_get_contents( $file );
|
1053 |
+
preg_match_all( $pattern, $subject, $matches, PREG_SET_ORDER );
|
1054 |
+
|
1055 |
+
foreach ( $matches as $match ) {
|
1056 |
+
$code = str_replace( '.dashicons-' . $match[ 1 ] . ':before{content:"\\', '', $match[ 0 ] );
|
1057 |
+
if ( strlen( $code ) == 4 )
|
1058 |
+
$dashicons_array[ $code ] = $match[ 1 ];
|
1059 |
+
}
|
1060 |
+
ksort( $dashicons_array );
|
1061 |
+
}
|
1062 |
+
|
1063 |
+
return $dashicons_array;
|
1064 |
+
}
|
1065 |
+
|
1066 |
+
/**
|
1067 |
+
* Enqueue Scripts
|
1068 |
+
*
|
1069 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
1070 |
+
*/
|
1071 |
+
public function enqueue_scripts() {
|
1072 |
+
wp_register_style( 'font-awesome', "https://maxcdn.bootstrapcdn.com/font-awesome/{$this->font_awesome_version}/css/font-awesome.min.css", array(), $this->font_awesome_version );
|
1073 |
+
|
1074 |
+
$font_awesome_inline = $this->get_inline_scripts( 'font-awesome' );
|
1075 |
+
wp_add_inline_style( 'font-awesome', $font_awesome_inline );
|
1076 |
+
|
1077 |
+
$dashicons_inline = $this->get_inline_scripts( 'dashicons' );
|
1078 |
+
wp_add_inline_style( 'dashicons', $dashicons_inline );
|
1079 |
+
}
|
1080 |
+
|
1081 |
+
/**
|
1082 |
+
* Return the icon HTML from icon_string passed
|
1083 |
+
*
|
1084 |
+
* @param string|array $icon
|
1085 |
+
* @param array $args
|
1086 |
+
*
|
1087 |
+
* @return string
|
1088 |
+
*/
|
1089 |
+
public function get_icon( $icon = '', $args = array() ) {
|
1090 |
+
$icon = is_array( $icon ) && isset( $icon[ 'icon' ] ) ? $icon[ 'icon' ] : $icon;
|
1091 |
+
$icon_html = "";
|
1092 |
+
if ( $icon ) {
|
1093 |
+
$default_args = array(
|
1094 |
+
'html_tag' => 'span',
|
1095 |
+
'class' => '',
|
1096 |
+
'style' => '',
|
1097 |
+
'filter_icons' => ''
|
1098 |
+
);
|
1099 |
+
$args = wp_parse_args( $args, $default_args );
|
1100 |
+
/**
|
1101 |
+
* @var string $html_tag
|
1102 |
+
* @var string $class
|
1103 |
+
* @var string $style
|
1104 |
+
* @var string $filter_icons
|
1105 |
+
*/
|
1106 |
+
extract( $args );
|
1107 |
+
|
1108 |
+
if ( $icon_data = $this->get_icon_data( $icon, $filter_icons ) ) {
|
1109 |
+
$icon_html = "<$html_tag class=\"$class\" style=\"$style\" $icon_data></$html_tag>";
|
1110 |
+
}
|
1111 |
+
|
1112 |
+
}
|
1113 |
+
|
1114 |
+
return $icon_html;
|
1115 |
+
}
|
1116 |
+
|
1117 |
+
/**
|
1118 |
+
* Get inline scripts
|
1119 |
+
*
|
1120 |
+
* @param $slug
|
1121 |
+
*
|
1122 |
+
* @return string
|
1123 |
+
*/
|
1124 |
+
public function get_inline_scripts( $slug ) {
|
1125 |
+
$css = '';
|
1126 |
+
switch ( $slug ) {
|
1127 |
+
case 'font-awesome':
|
1128 |
+
$css = '[data-font="FontAwesome"]:before {font-family: \'FontAwesome\' !important;content: attr(data-icon) !important;speak: none !important;font-weight: normal !important;font-variant: normal !important;text-transform: none !important;line-height: 1 !important;font-style: normal !important;-webkit-font-smoothing: antialiased !important;-moz-osx-font-smoothing: grayscale !important;}';
|
1129 |
+
break;
|
1130 |
+
case 'dashicons':
|
1131 |
+
$css = '[data-font="Dashicons"]:before {font-family: \'Dashicons\' !important;content: attr(data-icon) !important;speak: none !important;font-weight: normal !important;font-variant: normal !important;text-transform: none !important;line-height: 1 !important;font-style: normal !important;-webkit-font-smoothing: antialiased !important;-moz-osx-font-smoothing: grayscale !important;}';
|
1132 |
+
}
|
1133 |
+
|
1134 |
+
return $css;
|
1135 |
+
}
|
1136 |
+
|
1137 |
+
}
|
1138 |
+
}
|
1139 |
+
function YIT_Icons() {
|
1140 |
+
return YIT_Icons::get_instance();
|
1141 |
+
}
|
1142 |
+
|
1143 |
+
YIT_Icons();
|
plugin-fw/lib/yit-metabox.php
CHANGED
@@ -9,11 +9,11 @@
|
|
9 |
*/
|
10 |
|
11 |
|
12 |
-
if (!defined('ABSPATH')) {
|
13 |
exit;
|
14 |
} // Exit if accessed directly
|
15 |
|
16 |
-
if (!class_exists('YIT_Metabox')) {
|
17 |
/**
|
18 |
* YIT Metabox
|
19 |
*
|
@@ -48,8 +48,7 @@ if (!class_exists('YIT_Metabox')) {
|
|
48 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
49 |
*
|
50 |
*/
|
51 |
-
class YIT_Metabox
|
52 |
-
{
|
53 |
|
54 |
/**
|
55 |
* @var string the id of metabox
|
@@ -91,12 +90,12 @@ if (!class_exists('YIT_Metabox')) {
|
|
91 |
* @since 1.0
|
92 |
* @author Antonino Scarfi' <antonino.scarfi@yithemes.com>
|
93 |
*/
|
94 |
-
public static function instance($id)
|
95 |
-
|
96 |
-
|
97 |
-
self::$_instance[$id] = new self($id);
|
98 |
}
|
99 |
-
|
|
|
100 |
}
|
101 |
|
102 |
/**
|
@@ -108,8 +107,7 @@ if (!class_exists('YIT_Metabox')) {
|
|
108 |
* @since 1.0
|
109 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
110 |
*/
|
111 |
-
function __construct($id = '')
|
112 |
-
{
|
113 |
$this->id = $id;
|
114 |
|
115 |
}
|
@@ -126,17 +124,27 @@ if (!class_exists('YIT_Metabox')) {
|
|
126 |
* @since 1.0
|
127 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
128 |
*/
|
129 |
-
public function init($options = array())
|
130 |
-
{
|
131 |
|
132 |
-
$this->set_options($options);
|
133 |
$this->set_tabs();
|
134 |
|
|
|
|
|
|
|
135 |
|
136 |
-
|
137 |
-
|
138 |
-
add_action('admin_enqueue_scripts', array($this, 'enqueue'), 15);
|
139 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
}
|
141 |
|
142 |
/**
|
@@ -147,20 +155,27 @@ if (!class_exists('YIT_Metabox')) {
|
|
147 |
* @return void
|
148 |
* @since 1.0
|
149 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
|
|
150 |
*/
|
151 |
-
public function enqueue()
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
}
|
165 |
|
166 |
/**
|
@@ -174,8 +189,7 @@ if (!class_exists('YIT_Metabox')) {
|
|
174 |
* @since 1.0
|
175 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
176 |
*/
|
177 |
-
public function set_options($options = array())
|
178 |
-
{
|
179 |
$this->options = $options;
|
180 |
|
181 |
}
|
@@ -191,14 +205,13 @@ if (!class_exists('YIT_Metabox')) {
|
|
191 |
* @since 1.0
|
192 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
193 |
*/
|
194 |
-
public function set_tabs()
|
195 |
-
|
196 |
-
if (!isset($this->options['tabs'])) {
|
197 |
return;
|
198 |
}
|
199 |
-
$this->tabs = $this->options['tabs'];
|
200 |
-
if (isset($this->tabs['settings']['fields'])) {
|
201 |
-
$this->tabs['settings']['fields'] = array_filter($this->tabs['settings']['fields']);
|
202 |
}
|
203 |
}
|
204 |
|
@@ -210,31 +223,30 @@ if (!class_exists('YIT_Metabox')) {
|
|
210 |
*
|
211 |
* @internal param array $tabs
|
212 |
*
|
213 |
-
* @param array
|
214 |
* @param string $where tell where insert the tab if after or before a $refer
|
215 |
-
* @param null
|
216 |
*
|
217 |
* @return void
|
218 |
* @since 1.0
|
219 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
220 |
*/
|
221 |
-
public function add_tab($tab, $where = 'after', $refer = null)
|
222 |
-
|
223 |
-
|
224 |
-
$ref_pos
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
array_slice($this->tabs, $ref_pos + 1, count($this->tabs) - 1, true);
|
230 |
} else {
|
231 |
-
$this->tabs = array_slice($this->tabs, 0, $ref_pos, true) +
|
232 |
-
|
233 |
-
|
234 |
}
|
235 |
}
|
236 |
} else {
|
237 |
-
$this->tabs = array_merge($tab, $this->tabs);
|
238 |
}
|
239 |
|
240 |
}
|
@@ -252,10 +264,9 @@ if (!class_exists('YIT_Metabox')) {
|
|
252 |
* @since 1.0
|
253 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
254 |
*/
|
255 |
-
public function remove_tab($id_tab)
|
256 |
-
|
257 |
-
|
258 |
-
unset ($this->tabs[$id_tab]);
|
259 |
}
|
260 |
}
|
261 |
|
@@ -268,40 +279,39 @@ if (!class_exists('YIT_Metabox')) {
|
|
268 |
* @internal param array $tabs
|
269 |
*
|
270 |
* @param string $tab_id the id of the tabs where add the field
|
271 |
-
* @param array
|
272 |
* @param string $where tell where insert the field if after or before a $refer
|
273 |
-
* @param null
|
274 |
*
|
275 |
* @return void
|
276 |
* @since 1.0
|
277 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
278 |
*/
|
279 |
-
public function add_field($tab_id, $args, $where = 'after', $refer = null)
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
$
|
284 |
-
|
285 |
-
$ref_pos
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
array_slice($cf, $ref_pos, count($cf), true);
|
296 |
|
297 |
}
|
298 |
}
|
299 |
} else {
|
300 |
-
if ($where == 'first') {
|
301 |
-
$this->tabs[$tab_id]['fields'] = $args + $cf;
|
302 |
|
303 |
} else {
|
304 |
-
$this->tabs[$tab_id]['fields'] = array_merge($this->tabs[$tab_id]['fields'], $args);
|
305 |
}
|
306 |
}
|
307 |
|
@@ -321,11 +331,10 @@ if (!class_exists('YIT_Metabox')) {
|
|
321 |
* @since 1.0
|
322 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
323 |
*/
|
324 |
-
public function remove_field($id_field)
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
unset ($this->tabs[$tab_name]['fields'][$id_field]);
|
329 |
}
|
330 |
}
|
331 |
}
|
@@ -341,13 +350,14 @@ if (!class_exists('YIT_Metabox')) {
|
|
341 |
* @since 1.0
|
342 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
343 |
*/
|
344 |
-
public function reorder_tabs()
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
$this->tabs[$tab_name]['fields'][$id_field][
|
349 |
-
|
350 |
-
|
|
|
351 |
}
|
352 |
}
|
353 |
|
@@ -360,15 +370,14 @@ if (!class_exists('YIT_Metabox')) {
|
|
360 |
* return the id of the field
|
361 |
*
|
362 |
* @param string $id_field
|
363 |
-
* @param bool
|
364 |
*
|
365 |
* @return string
|
366 |
* @since 1.0
|
367 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
368 |
*/
|
369 |
-
public function get_option_metabox_id($id_field, $private = true)
|
370 |
-
|
371 |
-
if ($private) {
|
372 |
return '_' . $id_field;
|
373 |
} else {
|
374 |
return $id_field;
|
@@ -381,23 +390,22 @@ if (!class_exists('YIT_Metabox')) {
|
|
381 |
* return the name of the field, this name will be used as attribute name of the input field
|
382 |
*
|
383 |
* @param string $id_field
|
384 |
-
* @param bool
|
385 |
*
|
386 |
* @return string
|
387 |
* @since 1.0
|
388 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
389 |
*/
|
390 |
-
public function get_option_metabox_name($id_field, $private = true)
|
391 |
-
|
392 |
-
$db_name
|
393 |
-
$return = $db_name . '[';
|
394 |
|
395 |
-
if (!strpos($id_field, '[')) {
|
396 |
return $return . $id_field . ']';
|
397 |
}
|
398 |
-
$return .= substr($id_field, 0, strpos($id_field, '['));
|
399 |
$return .= ']';
|
400 |
-
$return .= substr($id_field, strpos($id_field, '['));
|
401 |
|
402 |
return $return;
|
403 |
}
|
@@ -412,11 +420,10 @@ if (!class_exists('YIT_Metabox')) {
|
|
412 |
* @since 1.0
|
413 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
414 |
*/
|
415 |
-
public function register_metabox($post_type)
|
416 |
-
{
|
417 |
|
418 |
-
if (in_array($post_type, (array)$this->options['pages'])) {
|
419 |
-
add_meta_box($this->id, $this->options['label'], array($this, 'show'), $post_type, $this->options['context'], $this->options['priority']);
|
420 |
}
|
421 |
}
|
422 |
|
@@ -430,11 +437,10 @@ if (!class_exists('YIT_Metabox')) {
|
|
430 |
* @since 1.0
|
431 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
432 |
*/
|
433 |
-
public function show()
|
434 |
-
{
|
435 |
$this->reorder_tabs();
|
436 |
|
437 |
-
yit_plugin_get_template(YIT_CORE_PLUGIN_PATH, 'metaboxes/tab.php', array('tabs' => $this->tabs));
|
438 |
}
|
439 |
|
440 |
/**
|
@@ -448,31 +454,30 @@ if (!class_exists('YIT_Metabox')) {
|
|
448 |
* @since 1.0
|
449 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
450 |
*/
|
451 |
-
public function save_postdata($post_id)
|
452 |
-
{
|
453 |
|
454 |
|
455 |
-
if (!isset($_POST['yit_metaboxes_nonce']) || !wp_verify_nonce($_POST['yit_metaboxes_nonce'], 'metaboxes-fields-nonce')) {
|
456 |
return $post_id;
|
457 |
}
|
458 |
|
459 |
|
460 |
-
if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || (defined('DOING_AJAX') && DOING_AJAX)) {
|
461 |
return $post_id;
|
462 |
}
|
463 |
|
464 |
-
if (isset($_POST['post_type'])) {
|
465 |
-
$post_type = $_POST['post_type'];
|
466 |
} else {
|
467 |
return $post_id;
|
468 |
}
|
469 |
|
470 |
-
if ('page' == $post_type) {
|
471 |
-
if (!current_user_can('edit_page', $post_id)) {
|
472 |
return $post_id;
|
473 |
}
|
474 |
} else {
|
475 |
-
if (!current_user_can('edit_post', $post_id)) {
|
476 |
return $post_id;
|
477 |
}
|
478 |
}
|
@@ -483,16 +488,15 @@ if (!class_exists('YIT_Metabox')) {
|
|
483 |
|
484 |
$this->reorder_tabs();
|
485 |
|
486 |
-
if(isset($_POST['yit_metaboxes'])) {
|
487 |
-
$yit_metabox_data = $_POST['yit_metaboxes'];
|
488 |
|
489 |
-
if(is_array($yit_metabox_data)) {
|
490 |
|
491 |
-
foreach ($yit_metabox_data as $field_name => $field_value) {
|
492 |
|
493 |
-
if(!
|
494 |
-
|
495 |
-
update_post_meta($post_id, $field_name, $field_value);
|
496 |
}
|
497 |
|
498 |
|
@@ -503,25 +507,29 @@ if (!class_exists('YIT_Metabox')) {
|
|
503 |
|
504 |
}
|
505 |
|
506 |
-
foreach ($this->tabs as $tab) {
|
507 |
|
508 |
-
foreach ($tab['fields'] as $field) {
|
509 |
|
510 |
-
if (in_array($field['type'], array('title'))) {
|
511 |
continue;
|
512 |
}
|
513 |
|
514 |
-
if (isset($_POST['yit_metaboxes'][$field['id']])) {
|
515 |
|
516 |
-
|
517 |
-
|
518 |
-
|
|
|
|
|
|
|
|
|
519 |
} else {
|
520 |
-
delete_post_meta($post_id, $field['id']);
|
521 |
}
|
522 |
}
|
523 |
}
|
524 |
-
|
525 |
}
|
526 |
|
527 |
/**
|
@@ -535,16 +543,15 @@ if (!class_exists('YIT_Metabox')) {
|
|
535 |
* @since 2.0.0
|
536 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
537 |
*/
|
538 |
-
public function remove_fields($id_fields)
|
539 |
-
|
540 |
-
|
541 |
-
$this->remove_field($field);
|
542 |
}
|
543 |
}
|
544 |
}
|
545 |
}
|
546 |
|
547 |
-
if (!function_exists('YIT_Metabox')) {
|
548 |
|
549 |
/**
|
550 |
* Main instance of plugin
|
@@ -557,9 +564,8 @@ if (!function_exists('YIT_Metabox')) {
|
|
557 |
*/
|
558 |
|
559 |
|
560 |
-
function YIT_Metabox($id)
|
561 |
-
|
562 |
-
return YIT_Metabox::instance($id);
|
563 |
}
|
564 |
}
|
565 |
|
9 |
*/
|
10 |
|
11 |
|
12 |
+
if ( !defined( 'ABSPATH' ) ) {
|
13 |
exit;
|
14 |
} // Exit if accessed directly
|
15 |
|
16 |
+
if ( !class_exists( 'YIT_Metabox' ) ) {
|
17 |
/**
|
18 |
* YIT Metabox
|
19 |
*
|
48 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
49 |
*
|
50 |
*/
|
51 |
+
class YIT_Metabox {
|
|
|
52 |
|
53 |
/**
|
54 |
* @var string the id of metabox
|
90 |
* @since 1.0
|
91 |
* @author Antonino Scarfi' <antonino.scarfi@yithemes.com>
|
92 |
*/
|
93 |
+
public static function instance( $id ) {
|
94 |
+
if ( !isset( self::$_instance[ $id ] ) ) {
|
95 |
+
self::$_instance[ $id ] = new self( $id );
|
|
|
96 |
}
|
97 |
+
|
98 |
+
return self::$_instance[ $id ];
|
99 |
}
|
100 |
|
101 |
/**
|
107 |
* @since 1.0
|
108 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
109 |
*/
|
110 |
+
function __construct( $id = '' ) {
|
|
|
111 |
$this->id = $id;
|
112 |
|
113 |
}
|
124 |
* @since 1.0
|
125 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
126 |
*/
|
127 |
+
public function init( $options = array() ) {
|
|
|
128 |
|
129 |
+
$this->set_options( $options );
|
130 |
$this->set_tabs();
|
131 |
|
132 |
+
add_action( 'add_meta_boxes', array( $this, 'register_metabox' ), 99 );
|
133 |
+
add_action( 'save_post', array( $this, 'save_postdata' ) );
|
134 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue' ), 15 );
|
135 |
|
136 |
+
add_filter( 'yit_icons_screen_ids', array( $this, 'add_screen_ids_for_icons' ) );
|
137 |
+
}
|
|
|
138 |
|
139 |
+
/**
|
140 |
+
* Add Screen ids to include icons
|
141 |
+
*
|
142 |
+
* @param $screen_ids
|
143 |
+
*
|
144 |
+
* @return array
|
145 |
+
*/
|
146 |
+
public function add_screen_ids_for_icons( $screen_ids ) {
|
147 |
+
return array_unique( array_merge( $screen_ids, (array) $this->options[ 'pages' ] ) );
|
148 |
}
|
149 |
|
150 |
/**
|
155 |
* @return void
|
156 |
* @since 1.0
|
157 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
158 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
159 |
*/
|
160 |
+
public function enqueue() {
|
161 |
+
$enqueue = function_exists( 'get_current_screen' ) && get_current_screen() && in_array( get_current_screen()->id, (array) $this->options[ 'pages' ] );
|
162 |
+
$enqueue = apply_filters( 'yith_plugin_fw_metabox_enqueue_styles_and_scripts', $enqueue, $this );
|
163 |
+
|
164 |
+
// load scripts and styles only where the metabox is displayed
|
165 |
+
if ( $enqueue ) {
|
166 |
+
wp_enqueue_media();
|
167 |
+
|
168 |
+
wp_enqueue_style( 'woocommerce_admin_styles' );
|
169 |
+
|
170 |
+
wp_enqueue_style( 'yith-plugin-fw-fields' );
|
171 |
+
wp_enqueue_style( 'wp-color-picker' );
|
172 |
+
wp_enqueue_style( 'yit-plugin-metaboxes' );
|
173 |
+
wp_enqueue_style( 'yit-jquery-ui-style' );
|
174 |
+
|
175 |
+
wp_enqueue_script( 'yit-metabox' );
|
176 |
+
|
177 |
+
wp_enqueue_script( 'yith-plugin-fw-fields' );
|
178 |
+
}
|
179 |
}
|
180 |
|
181 |
/**
|
189 |
* @since 1.0
|
190 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
191 |
*/
|
192 |
+
public function set_options( $options = array() ) {
|
|
|
193 |
$this->options = $options;
|
194 |
|
195 |
}
|
205 |
* @since 1.0
|
206 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
207 |
*/
|
208 |
+
public function set_tabs() {
|
209 |
+
if ( !isset( $this->options[ 'tabs' ] ) ) {
|
|
|
210 |
return;
|
211 |
}
|
212 |
+
$this->tabs = $this->options[ 'tabs' ];
|
213 |
+
if ( isset( $this->tabs[ 'settings' ][ 'fields' ] ) ) {
|
214 |
+
$this->tabs[ 'settings' ][ 'fields' ] = array_filter( $this->tabs[ 'settings' ][ 'fields' ] );
|
215 |
}
|
216 |
}
|
217 |
|
223 |
*
|
224 |
* @internal param array $tabs
|
225 |
*
|
226 |
+
* @param array $tab the new tab to add to the metabox
|
227 |
* @param string $where tell where insert the tab if after or before a $refer
|
228 |
+
* @param null $refer an existent tab inside metabox
|
229 |
*
|
230 |
* @return void
|
231 |
* @since 1.0
|
232 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
233 |
*/
|
234 |
+
public function add_tab( $tab, $where = 'after', $refer = null ) {
|
235 |
+
if ( !is_null( $refer ) ) {
|
236 |
+
$ref_pos = array_search( $refer, array_keys( $this->tabs ) );
|
237 |
+
if ( $ref_pos !== false ) {
|
238 |
+
if ( $where == 'after' ) {
|
239 |
+
$this->tabs = array_slice( $this->tabs, 0, $ref_pos + 1, true ) +
|
240 |
+
$tab +
|
241 |
+
array_slice( $this->tabs, $ref_pos + 1, count( $this->tabs ) - 1, true );
|
|
|
242 |
} else {
|
243 |
+
$this->tabs = array_slice( $this->tabs, 0, $ref_pos, true ) +
|
244 |
+
$tab +
|
245 |
+
array_slice( $this->tabs, $ref_pos, count( $this->tabs ), true );
|
246 |
}
|
247 |
}
|
248 |
} else {
|
249 |
+
$this->tabs = array_merge( $tab, $this->tabs );
|
250 |
}
|
251 |
|
252 |
}
|
264 |
* @since 1.0
|
265 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
266 |
*/
|
267 |
+
public function remove_tab( $id_tab ) {
|
268 |
+
if ( isset( $this->tabs[ $id_tab ] ) ) {
|
269 |
+
unset ( $this->tabs[ $id_tab ] );
|
|
|
270 |
}
|
271 |
}
|
272 |
|
279 |
* @internal param array $tabs
|
280 |
*
|
281 |
* @param string $tab_id the id of the tabs where add the field
|
282 |
+
* @param array $args the field to add
|
283 |
* @param string $where tell where insert the field if after or before a $refer
|
284 |
+
* @param null $refer an existent field inside tab
|
285 |
*
|
286 |
* @return void
|
287 |
* @since 1.0
|
288 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
289 |
*/
|
290 |
+
public function add_field( $tab_id, $args, $where = 'after', $refer = null ) {
|
291 |
+
if ( isset( $this->tabs[ $tab_id ] ) ) {
|
292 |
+
|
293 |
+
$cf = $this->tabs[ $tab_id ][ 'fields' ];
|
294 |
+
if ( !is_null( $refer ) ) {
|
295 |
+
$ref_pos = array_search( $refer, array_keys( $cf ) );
|
296 |
+
if ( $ref_pos !== false ) {
|
297 |
+
if ( $where == 'after' ) {
|
298 |
+
$this->tabs[ $tab_id ][ 'fields' ] = array_slice( $cf, 0, $ref_pos + 1, true ) +
|
299 |
+
$args +
|
300 |
+
array_slice( $cf, $ref_pos, count( $cf ) - 1, true );
|
301 |
+
|
302 |
+
} elseif ( $where == 'before' ) {
|
303 |
+
$this->tabs[ $tab_id ][ 'fields' ] = array_slice( $cf, 0, $ref_pos, true ) +
|
304 |
+
$args +
|
305 |
+
array_slice( $cf, $ref_pos, count( $cf ), true );
|
|
|
306 |
|
307 |
}
|
308 |
}
|
309 |
} else {
|
310 |
+
if ( $where == 'first' ) {
|
311 |
+
$this->tabs[ $tab_id ][ 'fields' ] = $args + $cf;
|
312 |
|
313 |
} else {
|
314 |
+
$this->tabs[ $tab_id ][ 'fields' ] = array_merge( $this->tabs[ $tab_id ][ 'fields' ], $args );
|
315 |
}
|
316 |
}
|
317 |
|
331 |
* @since 1.0
|
332 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
333 |
*/
|
334 |
+
public function remove_field( $id_field ) {
|
335 |
+
foreach ( $this->tabs as $tab_name => $tab ) {
|
336 |
+
if ( isset( $tab[ 'fields' ][ $id_field ] ) ) {
|
337 |
+
unset ( $this->tabs[ $tab_name ][ 'fields' ][ $id_field ] );
|
|
|
338 |
}
|
339 |
}
|
340 |
}
|
350 |
* @since 1.0
|
351 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
352 |
*/
|
353 |
+
public function reorder_tabs() {
|
354 |
+
foreach ( $this->tabs as $tab_name => $tab ) {
|
355 |
+
foreach ( $tab[ 'fields' ] as $id_field => $field ) {
|
356 |
+
$this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'private' ] = ( isset( $field[ 'private' ] ) ) ? $field[ 'private' ] : true;
|
357 |
+
if ( empty( $this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'id' ] ) )
|
358 |
+
$this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'id' ] = $this->get_option_metabox_id( $id_field, $this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'private' ] );
|
359 |
+
if ( empty( $this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'name' ] ) )
|
360 |
+
$this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'name' ] = $this->get_option_metabox_name( $this->tabs[ $tab_name ][ 'fields' ][ $id_field ][ 'id' ] );
|
361 |
}
|
362 |
}
|
363 |
|
370 |
* return the id of the field
|
371 |
*
|
372 |
* @param string $id_field
|
373 |
+
* @param bool $private if private add an _befor the id
|
374 |
*
|
375 |
* @return string
|
376 |
* @since 1.0
|
377 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
378 |
*/
|
379 |
+
public function get_option_metabox_id( $id_field, $private = true ) {
|
380 |
+
if ( $private ) {
|
|
|
381 |
return '_' . $id_field;
|
382 |
} else {
|
383 |
return $id_field;
|
390 |
* return the name of the field, this name will be used as attribute name of the input field
|
391 |
*
|
392 |
* @param string $id_field
|
393 |
+
* @param bool $private if private add an _befor the id
|
394 |
*
|
395 |
* @return string
|
396 |
* @since 1.0
|
397 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
398 |
*/
|
399 |
+
public function get_option_metabox_name( $id_field, $private = true ) {
|
400 |
+
$db_name = apply_filters( 'yit_metaboxes_option_main_name', 'yit_metaboxes' );
|
401 |
+
$return = $db_name . '[';
|
|
|
402 |
|
403 |
+
if ( !strpos( $id_field, '[' ) ) {
|
404 |
return $return . $id_field . ']';
|
405 |
}
|
406 |
+
$return .= substr( $id_field, 0, strpos( $id_field, '[' ) );
|
407 |
$return .= ']';
|
408 |
+
$return .= substr( $id_field, strpos( $id_field, '[' ) );
|
409 |
|
410 |
return $return;
|
411 |
}
|
420 |
* @since 1.0
|
421 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
422 |
*/
|
423 |
+
public function register_metabox( $post_type ) {
|
|
|
424 |
|
425 |
+
if ( in_array( $post_type, (array) $this->options[ 'pages' ] ) ) {
|
426 |
+
add_meta_box( $this->id, $this->options[ 'label' ], array( $this, 'show' ), $post_type, $this->options[ 'context' ], $this->options[ 'priority' ] );
|
427 |
}
|
428 |
}
|
429 |
|
437 |
* @since 1.0
|
438 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
439 |
*/
|
440 |
+
public function show() {
|
|
|
441 |
$this->reorder_tabs();
|
442 |
|
443 |
+
yit_plugin_get_template( YIT_CORE_PLUGIN_PATH, 'metaboxes/tab.php', array( 'tabs' => $this->tabs ) );
|
444 |
}
|
445 |
|
446 |
/**
|
454 |
* @since 1.0
|
455 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
456 |
*/
|
457 |
+
public function save_postdata( $post_id ) {
|
|
|
458 |
|
459 |
|
460 |
+
if ( !isset( $_POST[ 'yit_metaboxes_nonce' ] ) || !wp_verify_nonce( $_POST[ 'yit_metaboxes_nonce' ], 'metaboxes-fields-nonce' ) ) {
|
461 |
return $post_id;
|
462 |
}
|
463 |
|
464 |
|
465 |
+
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
|
466 |
return $post_id;
|
467 |
}
|
468 |
|
469 |
+
if ( isset( $_POST[ 'post_type' ] ) ) {
|
470 |
+
$post_type = $_POST[ 'post_type' ];
|
471 |
} else {
|
472 |
return $post_id;
|
473 |
}
|
474 |
|
475 |
+
if ( 'page' == $post_type ) {
|
476 |
+
if ( !current_user_can( 'edit_page', $post_id ) ) {
|
477 |
return $post_id;
|
478 |
}
|
479 |
} else {
|
480 |
+
if ( !current_user_can( 'edit_post', $post_id ) ) {
|
481 |
return $post_id;
|
482 |
}
|
483 |
}
|
488 |
|
489 |
$this->reorder_tabs();
|
490 |
|
491 |
+
if ( isset( $_POST[ 'yit_metaboxes' ] ) ) {
|
492 |
+
$yit_metabox_data = $_POST[ 'yit_metaboxes' ];
|
493 |
|
494 |
+
if ( is_array( $yit_metabox_data ) ) {
|
495 |
|
496 |
+
foreach ( $yit_metabox_data as $field_name => $field_value ) {
|
497 |
|
498 |
+
if ( !add_post_meta( $post_id, $field_name, $field_value, true ) ) {
|
499 |
+
update_post_meta( $post_id, $field_name, $field_value );
|
|
|
500 |
}
|
501 |
|
502 |
|
507 |
|
508 |
}
|
509 |
|
510 |
+
foreach ( $this->tabs as $tab ) {
|
511 |
|
512 |
+
foreach ( $tab[ 'fields' ] as $field ) {
|
513 |
|
514 |
+
if ( in_array( $field[ 'type' ], array( 'title' ) ) ) {
|
515 |
continue;
|
516 |
}
|
517 |
|
518 |
+
if ( isset( $_POST[ 'yit_metaboxes' ][ $field[ 'id' ] ] ) ) {
|
519 |
|
520 |
+
if ( in_array( $field[ 'type' ], array( 'onoff', 'checkbox' ) ) ) {
|
521 |
+
update_post_meta( $post_id, $field[ 'id' ], '1' );
|
522 |
+
} else {
|
523 |
+
add_post_meta( $post_id, $field[ 'id' ], $_POST[ 'yit_metaboxes' ][ $field[ 'id' ] ], true ) || update_post_meta( $post_id, $field[ 'id' ], $_POST[ 'yit_metaboxes' ][ $field[ 'id' ] ] );
|
524 |
+
}
|
525 |
+
} elseif ( in_array( $field[ 'type' ], array( 'onoff', 'checkbox' ) ) ) {
|
526 |
+
update_post_meta( $post_id, $field[ 'id' ], '0' );
|
527 |
} else {
|
528 |
+
delete_post_meta( $post_id, $field[ 'id' ] );
|
529 |
}
|
530 |
}
|
531 |
}
|
532 |
+
|
533 |
}
|
534 |
|
535 |
/**
|
543 |
* @since 2.0.0
|
544 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
545 |
*/
|
546 |
+
public function remove_fields( $id_fields ) {
|
547 |
+
foreach ( $id_fields as $k => $field ) {
|
548 |
+
$this->remove_field( $field );
|
|
|
549 |
}
|
550 |
}
|
551 |
}
|
552 |
}
|
553 |
|
554 |
+
if ( !function_exists( 'YIT_Metabox' ) ) {
|
555 |
|
556 |
/**
|
557 |
* Main instance of plugin
|
564 |
*/
|
565 |
|
566 |
|
567 |
+
function YIT_Metabox( $id ) {
|
568 |
+
return YIT_Metabox::instance( $id );
|
|
|
569 |
}
|
570 |
}
|
571 |
|
plugin-fw/lib/yit-plugin-common.php
CHANGED
@@ -1129,7 +1129,7 @@ class YIT_Plugin_Common {
|
|
1129 |
'easeInBounce' => 'easeInBounce',
|
1130 |
'easeOutBounce' => 'easeOutBounce',
|
1131 |
'easeInOutBounce' => 'easeInOutBounce'
|
1132 |
-
)
|
1133 |
);
|
1134 |
|
1135 |
/**
|
1129 |
'easeInBounce' => 'easeInBounce',
|
1130 |
'easeOutBounce' => 'easeOutBounce',
|
1131 |
'easeInOutBounce' => 'easeInOutBounce'
|
1132 |
+
),
|
1133 |
);
|
1134 |
|
1135 |
/**
|
plugin-fw/lib/yit-plugin-panel-wc.php
CHANGED
@@ -8,11 +8,11 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
-
if ( !
|
16 |
/**
|
17 |
* YIT Plugin Panel for WooCommerce
|
18 |
*
|
@@ -24,7 +24,6 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
24 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
25 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
26 |
*/
|
27 |
-
|
28 |
class YIT_Plugin_Panel_WooCommerce extends YIT_Plugin_Panel {
|
29 |
|
30 |
/**
|
@@ -40,13 +39,18 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
40 |
/**
|
41 |
* @var array a setting list of parameters
|
42 |
*/
|
43 |
-
public $wc_type = array();
|
44 |
|
45 |
/**
|
46 |
* @var array
|
47 |
*/
|
48 |
protected $_tabs_path_files;
|
49 |
|
|
|
|
|
|
|
|
|
|
|
50 |
/**
|
51 |
* Constructor
|
52 |
*
|
@@ -56,21 +60,12 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
56 |
*/
|
57 |
public function __construct( $args = array() ) {
|
58 |
|
59 |
-
$this->wc_type = array(
|
60 |
-
'checkbox',
|
61 |
-
'textarea',
|
62 |
-
'multiselect',
|
63 |
-
'multi_select_countries',
|
64 |
-
'image_width'
|
65 |
-
);
|
66 |
-
|
67 |
$args = apply_filters( 'yit_plugin_fw_wc_panel_option_args', $args );
|
68 |
-
|
69 |
-
if ( ! empty( $args ) ) {
|
70 |
$this->settings = $args;
|
71 |
$this->_tabs_path_files = $this->get_tabs_path_files();
|
72 |
|
73 |
-
if( isset( $this->settings['create_menu_page'] ) && $this->settings[ 'create_menu_page'] ){
|
74 |
$this->add_menu_page();
|
75 |
}
|
76 |
|
@@ -78,21 +73,43 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
78 |
$this->links = $this->settings[ 'links' ];
|
79 |
}
|
80 |
|
81 |
-
add_action( 'admin_init', array( $this, 'set_default_options') );
|
82 |
add_action( 'admin_menu', array( $this, 'add_setting_page' ) );
|
83 |
add_action( 'admin_menu', array( $this, 'add_premium_version_upgrade_to_menu' ), 100 );
|
84 |
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), 100 );
|
85 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
86 |
add_action( 'admin_init', array( $this, 'woocommerce_update_options' ) );
|
87 |
-
|
|
|
88 |
add_filter( 'woocommerce_admin_settings_sanitize_option', array( $this, 'maybe_unserialize_panel_data' ), 10, 3 );
|
89 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
/* Add VideoBox and InfoBox */
|
91 |
-
add_action( 'woocommerce_admin_field_boxinfo', array(
|
92 |
-
add_action( 'woocommerce_admin_field_videobox', array(
|
|
|
|
|
|
|
93 |
|
94 |
/* WooCommerce 2.4 Support */
|
95 |
-
add_filter( 'admin_body_class', array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
}
|
97 |
}
|
98 |
|
@@ -110,13 +127,13 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
110 |
public function yit_panel() {
|
111 |
$additional_info = array(
|
112 |
'current_tab' => $this->get_current_tab(),
|
113 |
-
'available_tabs' => $this->settings['admin-tabs'],
|
114 |
'default_tab' => $this->get_available_tabs( true ), //get default tabs
|
115 |
-
'page' => $this->settings['page']
|
116 |
);
|
117 |
|
118 |
-
$additional_info
|
119 |
-
$additional_info['additional_info'] = $additional_info;
|
120 |
|
121 |
extract( $additional_info );
|
122 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-panel.php' );
|
@@ -126,7 +143,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
126 |
* Show a input fields to upload images
|
127 |
*
|
128 |
*
|
129 |
-
* @return
|
130 |
* @since 1.0
|
131 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
132 |
*/
|
@@ -139,40 +156,41 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
139 |
* Show a input fields to upload images
|
140 |
*
|
141 |
*
|
142 |
-
* @
|
|
|
143 |
* @since 1.0
|
144 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
145 |
*/
|
146 |
|
147 |
public function yit_upload( $args = array() ) {
|
148 |
-
if ( !
|
149 |
-
$args['value'] = ( get_option($args['id'])) ? get_option($args['id']) : $args['default'];
|
150 |
extract( $args );
|
151 |
|
152 |
include( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-upload.php' );
|
153 |
}
|
154 |
}
|
155 |
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
|
172 |
-
|
173 |
|
174 |
-
|
175 |
-
|
176 |
|
177 |
/**
|
178 |
* Returns current active tab slug
|
@@ -186,11 +204,10 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
186 |
global $pagenow;
|
187 |
$tabs = $this->get_available_tabs();
|
188 |
|
189 |
-
if ( $pagenow == 'admin.php' && isset( $_REQUEST['tab'] ) && in_array( $_REQUEST['tab'], $tabs ) ) {
|
190 |
-
return $_REQUEST['tab'];
|
191 |
-
}
|
192 |
-
|
193 |
-
return $tabs[0];
|
194 |
}
|
195 |
}
|
196 |
|
@@ -207,8 +224,9 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
207 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
208 |
*/
|
209 |
public function get_available_tabs( $default = false ) {
|
210 |
-
$tabs = array_keys( $this->settings['admin-tabs'] );
|
211 |
-
|
|
|
212 |
}
|
213 |
|
214 |
|
@@ -226,11 +244,11 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
226 |
$yit_options = $this->get_main_array_options();
|
227 |
$current_tab = $this->get_current_tab();
|
228 |
|
229 |
-
if (
|
230 |
return;
|
231 |
}
|
232 |
|
233 |
-
woocommerce_admin_fields( $yit_options[$current_tab] );
|
234 |
}
|
235 |
|
236 |
/**
|
@@ -250,10 +268,10 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
250 |
$custom_tab_action = $this->is_custom_tab( $yit_options, $current_tab );
|
251 |
|
252 |
if ( $custom_tab_action ) {
|
253 |
-
$this->print_custom_tab( $custom_tab_action);
|
|
|
254 |
return;
|
255 |
-
}
|
256 |
-
else {
|
257 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-form.php' );
|
258 |
}
|
259 |
}
|
@@ -270,33 +288,33 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
270 |
*/
|
271 |
public function woocommerce_update_options() {
|
272 |
|
273 |
-
if ( isset( $_POST['yit_panel_wc_options_nonce'] ) && wp_verify_nonce( $_POST['yit_panel_wc_options_nonce'], 'yit_panel_wc_options_'
|
274 |
|
275 |
do_action( 'yit_panel_wc_before_update' );
|
276 |
|
277 |
$yit_options = $this->get_main_array_options();
|
278 |
$current_tab = $this->get_current_tab();
|
279 |
|
280 |
-
if( version_compare( WC()->version, '2.4.0', '>=' ) ) {
|
281 |
-
if ( !
|
282 |
foreach ( $yit_options[ $current_tab ] as $option ) {
|
283 |
-
if ( isset( $option['id'] ) && isset( $_POST[ $option['id'] ] ) && isset( $option['type' ] ) && !
|
284 |
-
$_POST[ $option['id'] ] = maybe_serialize( $_POST[ $option['id'] ] );
|
285 |
}
|
286 |
}
|
287 |
}
|
288 |
}
|
289 |
|
290 |
-
foreach($_POST as $name => $value) {
|
291 |
|
292 |
// Check if current POST var name ends with a specific needle and make some stuff here
|
293 |
$attachment_id_needle = "-yith-attachment-id";
|
294 |
-
$is_hidden_input
|
295 |
-
if ($is_hidden_input){
|
296 |
// Is an input element of type "hidden" coupled with an input element for selecting an element from the media gallery
|
297 |
-
$yit_options[ $current_tab ][$name] = array(
|
298 |
"type" => "text",
|
299 |
-
"id"
|
300 |
);
|
301 |
}
|
302 |
}
|
@@ -305,17 +323,18 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
305 |
|
306 |
do_action( 'yit_panel_wc_after_update' );
|
307 |
|
308 |
-
} elseif( isset( $_REQUEST['yit-action'] ) && $_REQUEST['yit-action'] == 'wc-options-reset'
|
309 |
-
|
|
|
310 |
|
311 |
do_action( 'yit_panel_wc_before_reset' );
|
312 |
-
|
313 |
$yit_options = $this->get_main_array_options();
|
314 |
$current_tab = $this->get_current_tab();
|
315 |
|
316 |
-
foreach( $yit_options[ $current_tab ] as $id => $option ){
|
317 |
-
if( isset( $option['default'] ) ){
|
318 |
-
update_option( $option['id'], $option['default'] );
|
319 |
}
|
320 |
}
|
321 |
|
@@ -330,54 +349,50 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
330 |
* @since 1.0
|
331 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
332 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
|
|
333 |
*/
|
334 |
public function admin_enqueue_scripts() {
|
335 |
global $woocommerce, $pagenow;
|
336 |
-
|
337 |
-
$woocommerce_version = function_exists( 'WC' ) ? WC()->version : $woocommerce->version;
|
338 |
|
339 |
-
|
|
|
|
|
340 |
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
346 |
|
347 |
-
|
348 |
-
wp_enqueue_style ( 'wp-jquery-ui-dialog' );
|
349 |
-
}
|
350 |
|
351 |
-
|
352 |
-
|
|
|
353 |
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
else {
|
362 |
-
// WooCommerce < 2.6
|
363 |
-
$woocommerce_settings_deps[] = 'jquery-ui-dialog';
|
364 |
-
$woocommerce_settings_deps[] = 'chosen';
|
365 |
}
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
wp_register_script( 'colorbox', YIT_CORE_PLUGIN_URL . '/assets/js/jquery.colorbox.js', array( 'jquery' ), '1.6.3', true );
|
370 |
-
wp_register_script( 'yit-plugin-panel', YIT_CORE_PLUGIN_URL . '/assets/js/yit-plugin-panel.min.js', array( 'jquery', 'jquery-chosen','wp-color-picker', 'jquery-ui-dialog' ), $this->version, true );
|
371 |
-
wp_localize_script( 'woocommerce_settings', 'woocommerce_settings_params', array(
|
372 |
-
'i18n_nav_warning' => __( 'The changes you have made will be lost if you leave this page.', 'yith-plugin-fw' )
|
373 |
-
) );
|
374 |
-
|
375 |
-
if( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ){
|
376 |
wp_enqueue_style( 'yit-plugin-style' );
|
377 |
wp_enqueue_script( 'yit-plugin-panel' );
|
378 |
}
|
379 |
|
380 |
-
if( 'admin.php'
|
381 |
wp_enqueue_style( 'yit-upgrade-to-pro' );
|
382 |
wp_enqueue_script( 'colorbox' );
|
383 |
}
|
@@ -393,25 +408,43 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
393 |
* @since 1.0.0
|
394 |
*/
|
395 |
public function set_default_options() {
|
|
|
|
|
|
|
|
|
|
|
396 |
|
397 |
$default_options = $this->get_main_array_options();
|
398 |
|
399 |
-
foreach ($default_options as $section) {
|
400 |
foreach ( $section as $value ) {
|
401 |
-
if ( ( isset( $value['std'] ) || isset( $value['default'] ) ) && isset( $value['id'] ) ) {
|
402 |
-
$default_value = ( isset( $value['default'] ) ) ? $value['default'] : $value['std'];
|
403 |
|
404 |
-
if ( $value['type'] == 'image_width' ) {
|
405 |
-
add_option($value['id'].'_width', $default_value);
|
406 |
-
add_option($value['id'].'_height', $default_value);
|
407 |
} else {
|
408 |
-
add_option($value['id'], $default_value);
|
409 |
}
|
410 |
}
|
411 |
|
412 |
}
|
413 |
}
|
414 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
415 |
}
|
416 |
|
417 |
/**
|
@@ -419,12 +452,17 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
419 |
*
|
420 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
421 |
* @since 2.0
|
|
|
422 |
* @param $classes The body classes
|
423 |
*
|
424 |
* @return array Filtered body classes
|
425 |
*/
|
426 |
-
public function admin_body_class( $admin_body_classes ){
|
427 |
global $pagenow;
|
|
|
|
|
|
|
|
|
428 |
return 'admin.php' == $pagenow && substr_count( $admin_body_classes, 'woocommerce' ) == 0 ? $admin_body_classes .= ' woocommerce ' : $admin_body_classes;
|
429 |
}
|
430 |
|
@@ -442,16 +480,16 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
442 |
public function maybe_unserialize_panel_data( $value, $option, $raw_value ) {
|
443 |
|
444 |
|
445 |
-
if( !
|
446 |
return $value;
|
447 |
}
|
448 |
|
449 |
$yit_options = $this->get_main_array_options();
|
450 |
$current_tab = $this->get_current_tab();
|
451 |
|
452 |
-
if( !
|
453 |
-
foreach( $yit_options[ $current_tab ] as $option_array ){
|
454 |
-
if( isset( $option_array['id'] ) && isset( $option['id'] ) && $option_array['id'] == $option['id'] ){
|
455 |
return maybe_unserialize( $value );
|
456 |
}
|
457 |
}
|
@@ -460,5 +498,58 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
|
460 |
return $value;
|
461 |
}
|
462 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
463 |
}
|
464 |
-
}
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
+
if ( !class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
16 |
/**
|
17 |
* YIT Plugin Panel for WooCommerce
|
18 |
*
|
24 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
25 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
26 |
*/
|
|
|
27 |
class YIT_Plugin_Panel_WooCommerce extends YIT_Plugin_Panel {
|
28 |
|
29 |
/**
|
39 |
/**
|
40 |
* @var array a setting list of parameters
|
41 |
*/
|
42 |
+
public static $wc_type = array( 'checkbox', 'textarea', 'multiselect', 'multi_select_countries', 'image_width' );
|
43 |
|
44 |
/**
|
45 |
* @var array
|
46 |
*/
|
47 |
protected $_tabs_path_files;
|
48 |
|
49 |
+
/**
|
50 |
+
* @var bool
|
51 |
+
*/
|
52 |
+
protected static $_actions_initialized = false;
|
53 |
+
|
54 |
/**
|
55 |
* Constructor
|
56 |
*
|
60 |
*/
|
61 |
public function __construct( $args = array() ) {
|
62 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
$args = apply_filters( 'yit_plugin_fw_wc_panel_option_args', $args );
|
64 |
+
if ( !empty( $args ) ) {
|
|
|
65 |
$this->settings = $args;
|
66 |
$this->_tabs_path_files = $this->get_tabs_path_files();
|
67 |
|
68 |
+
if ( isset( $this->settings[ 'create_menu_page' ] ) && $this->settings[ 'create_menu_page' ] ) {
|
69 |
$this->add_menu_page();
|
70 |
}
|
71 |
|
73 |
$this->links = $this->settings[ 'links' ];
|
74 |
}
|
75 |
|
76 |
+
add_action( 'admin_init', array( $this, 'set_default_options' ) );
|
77 |
add_action( 'admin_menu', array( $this, 'add_setting_page' ) );
|
78 |
add_action( 'admin_menu', array( $this, 'add_premium_version_upgrade_to_menu' ), 100 );
|
79 |
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), 100 );
|
80 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
81 |
add_action( 'admin_init', array( $this, 'woocommerce_update_options' ) );
|
82 |
+
add_filter( 'woocommerce_screen_ids', array( $this, 'add_allowed_screen_id' ) );
|
83 |
+
|
84 |
add_filter( 'woocommerce_admin_settings_sanitize_option', array( $this, 'maybe_unserialize_panel_data' ), 10, 3 );
|
85 |
|
86 |
+
|
87 |
+
// init actions once to prevent multiple actions
|
88 |
+
static::_init_actions();
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
protected static function _init_actions() {
|
93 |
+
if ( !static::$_actions_initialized ) {
|
94 |
/* Add VideoBox and InfoBox */
|
95 |
+
add_action( 'woocommerce_admin_field_boxinfo', array( __CLASS__, 'add_infobox' ), 10, 1 );
|
96 |
+
add_action( 'woocommerce_admin_field_videobox', array( __CLASS__, 'add_videobox' ), 10, 1 );
|
97 |
+
|
98 |
+
/* Add YITH Fields */
|
99 |
+
add_action( 'woocommerce_admin_field_yith-field', array( __CLASS__, 'add_yith_field' ), 10, 1 );
|
100 |
|
101 |
/* WooCommerce 2.4 Support */
|
102 |
+
add_filter( 'admin_body_class', array( __CLASS__, 'admin_body_class' ) );
|
103 |
+
|
104 |
+
add_filter( 'woocommerce_admin_settings_sanitize_option', array( __CLASS__, 'sanitize_option' ), 10, 3 );
|
105 |
+
|
106 |
+
// sort plugins by name in YITH Plugins menu
|
107 |
+
add_action( 'admin_menu', array( __CLASS__, 'sort_plugins' ), 90 );
|
108 |
+
|
109 |
+
add_filter( 'add_menu_classes', array( __CLASS__, 'add_menu_class_in_yith_plugin' ) );
|
110 |
+
|
111 |
+
|
112 |
+
static::$_actions_initialized = true;
|
113 |
}
|
114 |
}
|
115 |
|
127 |
public function yit_panel() {
|
128 |
$additional_info = array(
|
129 |
'current_tab' => $this->get_current_tab(),
|
130 |
+
'available_tabs' => $this->settings[ 'admin-tabs' ],
|
131 |
'default_tab' => $this->get_available_tabs( true ), //get default tabs
|
132 |
+
'page' => $this->settings[ 'page' ]
|
133 |
);
|
134 |
|
135 |
+
$additional_info = apply_filters( 'yith_admin_tab_params', $additional_info );
|
136 |
+
$additional_info[ 'additional_info' ] = $additional_info;
|
137 |
|
138 |
extract( $additional_info );
|
139 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-panel.php' );
|
143 |
* Show a input fields to upload images
|
144 |
*
|
145 |
*
|
146 |
+
* @return string
|
147 |
* @since 1.0
|
148 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
149 |
*/
|
156 |
* Show a input fields to upload images
|
157 |
*
|
158 |
*
|
159 |
+
* @param array $args
|
160 |
+
*
|
161 |
* @since 1.0
|
162 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
163 |
*/
|
164 |
|
165 |
public function yit_upload( $args = array() ) {
|
166 |
+
if ( !empty( $args ) ) {
|
167 |
+
$args[ 'value' ] = ( get_option( $args[ 'id' ] ) ) ? get_option( $args[ 'id' ] ) : $args[ 'default' ];
|
168 |
extract( $args );
|
169 |
|
170 |
include( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-upload.php' );
|
171 |
}
|
172 |
}
|
173 |
|
174 |
+
/**
|
175 |
+
* Add the plugin woocommerce page settings in the screen ids of woocommerce
|
176 |
+
*
|
177 |
+
* @param $screen_ids
|
178 |
+
*
|
179 |
+
* @return mixed
|
180 |
+
* @since 1.0.0
|
181 |
+
* @author Antonino Scarfì <antonino.scarfi@yithemes.com>
|
182 |
+
*/
|
183 |
+
public function add_allowed_screen_id( $screen_ids ) {
|
184 |
+
global $admin_page_hooks;
|
185 |
|
186 |
+
if ( !isset( $admin_page_hooks[ $this->settings[ 'parent_page' ] ] ) ) {
|
187 |
+
return $screen_ids;
|
188 |
+
}
|
189 |
|
190 |
+
$screen_ids[] = $admin_page_hooks[ $this->settings[ 'parent_page' ] ] . '_page_' . $this->settings[ 'page' ];
|
191 |
|
192 |
+
return $screen_ids;
|
193 |
+
}
|
194 |
|
195 |
/**
|
196 |
* Returns current active tab slug
|
204 |
global $pagenow;
|
205 |
$tabs = $this->get_available_tabs();
|
206 |
|
207 |
+
if ( $pagenow == 'admin.php' && isset( $_REQUEST[ 'tab' ] ) && in_array( $_REQUEST[ 'tab' ], $tabs ) ) {
|
208 |
+
return $_REQUEST[ 'tab' ];
|
209 |
+
} else {
|
210 |
+
return $tabs[ 0 ];
|
|
|
211 |
}
|
212 |
}
|
213 |
|
224 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
225 |
*/
|
226 |
public function get_available_tabs( $default = false ) {
|
227 |
+
$tabs = array_keys( $this->settings[ 'admin-tabs' ] );
|
228 |
+
|
229 |
+
return $default ? $tabs[ 0 ] : $tabs;
|
230 |
}
|
231 |
|
232 |
|
244 |
$yit_options = $this->get_main_array_options();
|
245 |
$current_tab = $this->get_current_tab();
|
246 |
|
247 |
+
if ( !$current_tab ) {
|
248 |
return;
|
249 |
}
|
250 |
|
251 |
+
woocommerce_admin_fields( $yit_options[ $current_tab ] );
|
252 |
}
|
253 |
|
254 |
/**
|
268 |
$custom_tab_action = $this->is_custom_tab( $yit_options, $current_tab );
|
269 |
|
270 |
if ( $custom_tab_action ) {
|
271 |
+
$this->print_custom_tab( $custom_tab_action );
|
272 |
+
|
273 |
return;
|
274 |
+
} else {
|
|
|
275 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-form.php' );
|
276 |
}
|
277 |
}
|
288 |
*/
|
289 |
public function woocommerce_update_options() {
|
290 |
|
291 |
+
if ( isset( $_POST[ 'yit_panel_wc_options_nonce' ] ) && wp_verify_nonce( $_POST[ 'yit_panel_wc_options_nonce' ], 'yit_panel_wc_options_' . $this->settings[ 'page' ] ) ) {
|
292 |
|
293 |
do_action( 'yit_panel_wc_before_update' );
|
294 |
|
295 |
$yit_options = $this->get_main_array_options();
|
296 |
$current_tab = $this->get_current_tab();
|
297 |
|
298 |
+
if ( version_compare( WC()->version, '2.4.0', '>=' ) ) {
|
299 |
+
if ( !empty( $yit_options[ $current_tab ] ) ) {
|
300 |
foreach ( $yit_options[ $current_tab ] as $option ) {
|
301 |
+
if ( isset( $option[ 'id' ] ) && isset( $_POST[ $option[ 'id' ] ] ) && isset( $option[ 'type' ] ) && !in_array( $option[ 'type' ], self::$wc_type ) ) {
|
302 |
+
$_POST[ $option[ 'id' ] ] = maybe_serialize( $_POST[ $option[ 'id' ] ] );
|
303 |
}
|
304 |
}
|
305 |
}
|
306 |
}
|
307 |
|
308 |
+
foreach ( $_POST as $name => $value ) {
|
309 |
|
310 |
// Check if current POST var name ends with a specific needle and make some stuff here
|
311 |
$attachment_id_needle = "-yith-attachment-id";
|
312 |
+
$is_hidden_input = ( ( $temp = strlen( $name ) - strlen( $attachment_id_needle ) ) >= 0 && strpos( $name, $attachment_id_needle, $temp ) !== false );
|
313 |
+
if ( $is_hidden_input ) {
|
314 |
// Is an input element of type "hidden" coupled with an input element for selecting an element from the media gallery
|
315 |
+
$yit_options[ $current_tab ][ $name ] = array(
|
316 |
"type" => "text",
|
317 |
+
"id" => $name
|
318 |
);
|
319 |
}
|
320 |
}
|
323 |
|
324 |
do_action( 'yit_panel_wc_after_update' );
|
325 |
|
326 |
+
} elseif ( isset( $_REQUEST[ 'yit-action' ] ) && $_REQUEST[ 'yit-action' ] == 'wc-options-reset'
|
327 |
+
&& isset( $_POST[ 'yith_wc_reset_options_nonce' ] ) && wp_verify_nonce( $_POST[ 'yith_wc_reset_options_nonce' ], 'yith_wc_reset_options_' . $this->settings[ 'page' ] )
|
328 |
+
) {
|
329 |
|
330 |
do_action( 'yit_panel_wc_before_reset' );
|
331 |
+
|
332 |
$yit_options = $this->get_main_array_options();
|
333 |
$current_tab = $this->get_current_tab();
|
334 |
|
335 |
+
foreach ( $yit_options[ $current_tab ] as $id => $option ) {
|
336 |
+
if ( isset( $option[ 'default' ] ) ) {
|
337 |
+
update_option( $option[ 'id' ], $option[ 'default' ] );
|
338 |
}
|
339 |
}
|
340 |
|
349 |
* @since 1.0
|
350 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
351 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
352 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
353 |
*/
|
354 |
public function admin_enqueue_scripts() {
|
355 |
global $woocommerce, $pagenow;
|
|
|
|
|
356 |
|
357 |
+
if ( 'customize.php' != $pagenow ) {
|
358 |
+
wp_enqueue_style( 'wp-jquery-ui-dialog' );
|
359 |
+
}
|
360 |
|
361 |
+
// enqueue styles only in the current panel page
|
362 |
+
if ( 'admin.php' === $pagenow && strpos( get_current_screen()->id, $this->settings[ 'page' ] ) !== false ) {
|
363 |
+
$woocommerce_version = function_exists( 'WC' ) ? WC()->version : $woocommerce->version;
|
364 |
+
$woocommerce_settings_deps = array( 'jquery', 'jquery-ui-datepicker', 'jquery-ui-sortable', 'iris' );
|
365 |
+
|
366 |
+
if ( version_compare( '2.5', $woocommerce_version, '<=' ) ) {
|
367 |
+
// WooCommerce > 2.6
|
368 |
+
$woocommerce_settings_deps[] = 'select2';
|
369 |
+
} else {
|
370 |
+
// WooCommerce < 2.6
|
371 |
+
$woocommerce_settings_deps[] = 'jquery-ui-dialog';
|
372 |
+
$woocommerce_settings_deps[] = 'chosen';
|
373 |
+
}
|
374 |
|
375 |
+
wp_enqueue_media();
|
|
|
|
|
376 |
|
377 |
+
wp_enqueue_style( 'yith-plugin-fw-fields' );
|
378 |
+
wp_enqueue_style( 'woocommerce_admin_styles' );
|
379 |
+
wp_enqueue_style( 'raleway-font' );
|
380 |
|
381 |
+
wp_enqueue_script( 'woocommerce_settings', $woocommerce->plugin_url() . '/assets/js/admin/settings.min.js', $woocommerce_settings_deps, $woocommerce_version, true );
|
382 |
+
wp_localize_script( 'woocommerce_settings', 'woocommerce_settings_params', array(
|
383 |
+
'i18n_nav_warning' => __( 'The changes you have made will be lost if you leave this page.', 'yith-plugin-fw' )
|
384 |
+
) );
|
385 |
+
|
386 |
+
wp_enqueue_script( 'yith-plugin-fw-fields' );
|
|
|
|
|
|
|
|
|
|
|
387 |
}
|
388 |
+
|
389 |
+
if ( 'admin.php' === $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ) {
|
390 |
+
wp_enqueue_media();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
391 |
wp_enqueue_style( 'yit-plugin-style' );
|
392 |
wp_enqueue_script( 'yit-plugin-panel' );
|
393 |
}
|
394 |
|
395 |
+
if ( 'admin.php' === $pagenow && strpos( get_current_screen()->id, 'yith_upgrade_premium_version' ) !== false ) {
|
396 |
wp_enqueue_style( 'yit-upgrade-to-pro' );
|
397 |
wp_enqueue_script( 'colorbox' );
|
398 |
}
|
408 |
* @since 1.0.0
|
409 |
*/
|
410 |
public function set_default_options() {
|
411 |
+
// check if the default options for this panel are already set
|
412 |
+
$page = $this->settings[ 'page' ];
|
413 |
+
$default_options_set = get_option( 'yit_plugin_fw_panel_wc_default_options_set', array() );
|
414 |
+
if ( isset( $default_options_set[ $page ] ) && $default_options_set[ $page ] )
|
415 |
+
return;
|
416 |
|
417 |
$default_options = $this->get_main_array_options();
|
418 |
|
419 |
+
foreach ( $default_options as $section ) {
|
420 |
foreach ( $section as $value ) {
|
421 |
+
if ( ( isset( $value[ 'std' ] ) || isset( $value[ 'default' ] ) ) && isset( $value[ 'id' ] ) ) {
|
422 |
+
$default_value = ( isset( $value[ 'default' ] ) ) ? $value[ 'default' ] : $value[ 'std' ];
|
423 |
|
424 |
+
if ( $value[ 'type' ] == 'image_width' ) {
|
425 |
+
add_option( $value[ 'id' ] . '_width', $default_value );
|
426 |
+
add_option( $value[ 'id' ] . '_height', $default_value );
|
427 |
} else {
|
428 |
+
add_option( $value[ 'id' ], $default_value );
|
429 |
}
|
430 |
}
|
431 |
|
432 |
}
|
433 |
}
|
434 |
|
435 |
+
// set the flag for the default options of this panel
|
436 |
+
$default_options_set[ $page ] = true;
|
437 |
+
update_option( 'yit_plugin_fw_panel_wc_default_options_set', $default_options_set );
|
438 |
+
}
|
439 |
+
|
440 |
+
/**
|
441 |
+
* Delete the "default options added" option
|
442 |
+
*
|
443 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
444 |
+
*
|
445 |
+
*/
|
446 |
+
public static function delete_default_options_set_option() {
|
447 |
+
delete_option( 'yit_plugin_fw_panel_wc_default_options_set' );
|
448 |
}
|
449 |
|
450 |
/**
|
452 |
*
|
453 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
454 |
* @since 2.0
|
455 |
+
*
|
456 |
* @param $classes The body classes
|
457 |
*
|
458 |
* @return array Filtered body classes
|
459 |
*/
|
460 |
+
public static function admin_body_class( $admin_body_classes ) {
|
461 |
global $pagenow;
|
462 |
+
|
463 |
+
if ( ( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ) )
|
464 |
+
$admin_body_classes = substr_count( $admin_body_classes, ' yith-plugin-fw-panel ' ) == 0 ? $admin_body_classes . ' yith-plugin-fw-panel ' : $admin_body_classes;
|
465 |
+
|
466 |
return 'admin.php' == $pagenow && substr_count( $admin_body_classes, 'woocommerce' ) == 0 ? $admin_body_classes .= ' woocommerce ' : $admin_body_classes;
|
467 |
}
|
468 |
|
480 |
public function maybe_unserialize_panel_data( $value, $option, $raw_value ) {
|
481 |
|
482 |
|
483 |
+
if ( !version_compare( WC()->version, '2.4.0', '>=' ) || !isset( $option[ 'type' ] ) || in_array( $option[ 'type' ], self::$wc_type ) ) {
|
484 |
return $value;
|
485 |
}
|
486 |
|
487 |
$yit_options = $this->get_main_array_options();
|
488 |
$current_tab = $this->get_current_tab();
|
489 |
|
490 |
+
if ( !empty( $yit_options[ $current_tab ] ) ) {
|
491 |
+
foreach ( $yit_options[ $current_tab ] as $option_array ) {
|
492 |
+
if ( isset( $option_array[ 'id' ] ) && isset( $option[ 'id' ] ) && $option_array[ 'id' ] == $option[ 'id' ] ) {
|
493 |
return maybe_unserialize( $value );
|
494 |
}
|
495 |
}
|
498 |
return $value;
|
499 |
}
|
500 |
|
501 |
+
/**
|
502 |
+
* Sanitize Option
|
503 |
+
*
|
504 |
+
* @param $value mixed Option value
|
505 |
+
* @param $option mixed Option settings array
|
506 |
+
* @param $raw_value string Raw option value
|
507 |
+
*
|
508 |
+
* @return mixed Filtered return value
|
509 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
510 |
+
* @since 3.0.0
|
511 |
+
*/
|
512 |
+
public static function sanitize_option( $value, $option, $raw_value ) {
|
513 |
+
if ( isset( $option[ 'type' ] ) && 'yith-field' === $option[ 'type' ] ) {
|
514 |
+
// set empty array if is multiple
|
515 |
+
if ( !empty( $option[ 'multiple' ] ) && is_null( $value ) ) {
|
516 |
+
$value = array();
|
517 |
+
}
|
518 |
+
|
519 |
+
// sanitize the option for the checkbox field: 'yes' or 'no'
|
520 |
+
if ( isset( $option[ 'yith-type' ] ) && in_array( $option[ 'yith-type' ], array( 'checkbox', 'onoff' ) ) ) {
|
521 |
+
$value = yith_plugin_fw_is_true( $raw_value ) ? 'yes' : 'no';
|
522 |
+
}
|
523 |
+
|
524 |
+
if ( isset( $option[ 'yith-type' ] ) && in_array( $option[ 'yith-type' ], array( 'textarea-editor', 'textarea-codemirror' ) ) ) {
|
525 |
+
$value = $raw_value;
|
526 |
+
}
|
527 |
+
}
|
528 |
+
|
529 |
+
return $value;
|
530 |
+
}
|
531 |
+
|
532 |
+
/**
|
533 |
+
* Add YITH Fields
|
534 |
+
*
|
535 |
+
* @param array $field
|
536 |
+
*
|
537 |
+
* @return void
|
538 |
+
* @since 3.0.0
|
539 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
540 |
+
*/
|
541 |
+
public static function add_yith_field( $field = array() ) {
|
542 |
+
if ( !empty( $field ) && isset( $field[ 'yith-type' ] ) ) {
|
543 |
+
$field[ 'type' ] = $field[ 'yith-type' ];
|
544 |
+
unset( $field[ 'yith-type' ] );
|
545 |
+
|
546 |
+
$field[ 'id' ] = isset( $field[ 'id' ] ) ? $field[ 'id' ] : '';
|
547 |
+
$field[ 'name' ] = $field[ 'id' ];
|
548 |
+
$field[ 'default' ] = isset( $field[ 'default' ] ) ? $field[ 'default' ] : '';
|
549 |
+
$field[ 'value' ] = WC_Admin_Settings::get_option( $field[ 'id' ], $field[ 'default' ] );
|
550 |
+
|
551 |
+
require( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/woocommerce/woocommerce-option-row.php' );
|
552 |
+
}
|
553 |
+
}
|
554 |
}
|
555 |
+
}
|
plugin-fw/lib/yit-plugin-panel.php
CHANGED
@@ -8,11 +8,11 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
-
if ( !
|
16 |
/**
|
17 |
* YIT Plugin Panel
|
18 |
*
|
@@ -23,7 +23,6 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
23 |
* @since 1.0
|
24 |
* @author Your Inspiration Themes
|
25 |
*/
|
26 |
-
|
27 |
class YIT_Plugin_Panel {
|
28 |
|
29 |
/**
|
@@ -51,25 +50,30 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
51 |
*/
|
52 |
public $links;
|
53 |
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
62 |
public function __construct( $args = array() ) {
|
63 |
|
64 |
-
if ( !
|
65 |
|
66 |
$default_args = array(
|
67 |
'parent_slug' => 'edit.php?',
|
68 |
'page_title' => __( 'Plugin Settings', 'yith-plugin-fw' ),
|
69 |
'menu_title' => __( 'Settings', 'yith-plugin-fw' ),
|
70 |
'capability' => 'manage_options',
|
71 |
-
|
72 |
-
|
73 |
);
|
74 |
|
75 |
$args = apply_filters( 'yit_plugin_fw_panel_option_args', wp_parse_args( $args, $default_args ) );
|
@@ -77,7 +81,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
77 |
$this->settings = $args;
|
78 |
$this->_tabs_path_files = $this->get_tabs_path_files();
|
79 |
|
80 |
-
if ( isset( $this->settings['create_menu_page'] ) && $this->settings['create_menu_page'] ) {
|
81 |
$this->add_menu_page();
|
82 |
}
|
83 |
|
@@ -90,11 +94,51 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
90 |
add_action( 'admin_menu', array( $this, 'add_premium_version_upgrade_to_menu' ), 100 );
|
91 |
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), 100 );
|
92 |
add_action( 'admin_init', array( $this, 'add_fields' ) );
|
|
|
|
|
|
|
93 |
}
|
94 |
|
95 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
96 |
}
|
97 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
98 |
/**
|
99 |
* Add Menu page link
|
100 |
*
|
@@ -103,12 +147,15 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
103 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
104 |
*/
|
105 |
public function add_menu_page() {
|
106 |
-
|
|
|
|
|
|
|
|
|
|
|
107 |
|
108 |
-
if( ! isset( $admin_page_hooks['yit_plugin_panel'] ) ){
|
109 |
-
$position = apply_filters( 'yit_plugins_menu_item_position', '62.32' );
|
110 |
// YITH Plugins text must not be translated
|
111 |
-
|
112 |
}
|
113 |
}
|
114 |
|
@@ -134,41 +181,33 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
134 |
* @return void
|
135 |
* @since 1.0
|
136 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
|
|
137 |
*/
|
138 |
public function admin_enqueue_scripts() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
wp_enqueue_script( 'jquery-ui-dialog' );
|
148 |
-
wp_enqueue_script( 'jquery-chosen', YIT_CORE_PLUGIN_URL . '/assets/js/chosen/chosen.jquery.js', array( 'jquery' ), '1.1.0', true );
|
149 |
-
wp_register_script( 'yit-plugin-panel', YIT_CORE_PLUGIN_URL . '/assets/js/yit-plugin-panel.js', array( 'jquery', 'jquery-chosen','wp-color-picker'), $this->version, true );
|
150 |
-
wp_register_script( 'codemirror', YIT_CORE_PLUGIN_URL . '/assets/js/codemirror/codemirror.js', array( 'jquery' ), $this->version, true );
|
151 |
-
wp_register_script( 'codemirror-javascript', YIT_CORE_PLUGIN_URL . '/assets/js/codemirror/javascript.js', array( 'jquery', 'codemirror' ), $this->version, true );
|
152 |
-
wp_register_script( 'colorbox', YIT_CORE_PLUGIN_URL . '/assets/js/jquery.colorbox.js', array( 'jquery' ), '1.6.3', true );
|
153 |
-
wp_enqueue_script( 'yith_how_to', YIT_CORE_PLUGIN_URL . '/assets/js/how-to.js', array('jquery'), $this->version, true );
|
154 |
-
|
155 |
-
//styles
|
156 |
-
$jquery_version = isset( $wp_scripts->registered['jquery-ui-core']->ver ) ? $wp_scripts->registered['jquery-ui-core']->ver : '1.9.2';
|
157 |
-
wp_register_style( 'codemirror', YIT_CORE_PLUGIN_URL . '/assets/css/codemirror/codemirror.css' );
|
158 |
-
wp_enqueue_style( 'jquery-ui-overcast', YIT_CORE_PLUGIN_URL . '/assets/css/overcast/jquery-ui-custom/jquery-ui-1.8.9.custom.css', false, '1.8.9', 'all' );
|
159 |
-
wp_register_style( 'yit-plugin-style', YIT_CORE_PLUGIN_URL . '/assets/css/yit-plugin-panel.css', array(), $this->version );
|
160 |
-
wp_enqueue_style( 'raleway-font', '//fonts.googleapis.com/css?family=Raleway:400,500,600,700,800,100,200,300,900' );
|
161 |
-
wp_enqueue_style( 'jquery-chosen', YIT_CORE_PLUGIN_URL . '/assets/css/chosen/chosen.css' );
|
162 |
-
wp_enqueue_style( 'yit-jquery-ui-style', '//code.jquery.com/ui/' . $jquery_version . '/themes/smoothness/jquery-ui.css', array(), $jquery_version );
|
163 |
-
wp_register_style( 'colorbox', YIT_CORE_PLUGIN_URL . '/assets/css/colorbox.css', array(), $this->version );
|
164 |
-
wp_register_style( 'yit-upgrade-to-pro', YIT_CORE_PLUGIN_URL . '/assets/css/yit-upgrade-to-pro.css', array( 'colorbox' ), $this->version );
|
165 |
-
|
166 |
-
if( ( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ) || apply_filters( 'yit_plugin_panel_asset_loading', false ) ){
|
167 |
-
wp_enqueue_style( 'yit-plugin-style' );
|
168 |
-
wp_enqueue_script( 'yit-plugin-panel' );
|
169 |
-
}
|
170 |
-
|
171 |
-
if( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith_upgrade_premium_version' ) !== false ){
|
172 |
wp_enqueue_style( 'yit-upgrade-to-pro' );
|
173 |
wp_enqueue_script( 'colorbox' );
|
174 |
}
|
@@ -185,7 +224,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
185 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
186 |
*/
|
187 |
public function register_settings() {
|
188 |
-
register_setting( 'yit_' . $this->settings['parent'] . '_options', 'yit_' . $this->settings['parent'] . '_options', array( $this, 'options_validate' ) );
|
189 |
}
|
190 |
|
191 |
/**
|
@@ -201,46 +240,41 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
201 |
*/
|
202 |
public function options_validate( $input ) {
|
203 |
|
204 |
-
$current_tab = !
|
205 |
|
206 |
$yit_options = $this->get_main_array_options();
|
207 |
|
208 |
// default
|
209 |
$valid_input = $this->get_options();
|
210 |
|
211 |
-
$submit = ( !
|
212 |
-
$reset = ( !
|
213 |
|
214 |
-
foreach ( $yit_options[$current_tab] as $section => $data ) {
|
215 |
foreach ( $data as $option ) {
|
216 |
-
if ( isset( $option['sanitize_call'] ) && isset( $option['id'] ) ) { //yiw_debug($option, false);
|
217 |
-
if ( is_array( $option['sanitize_call'] ) ) :
|
218 |
-
foreach ( $option['sanitize_call'] as $callback ) {
|
219 |
-
if ( is_array( $input[$option['id']] ) ) {
|
220 |
-
$valid_input[$option['id']] = array_map( $callback, $input[$option['id']] );
|
221 |
-
}
|
222 |
-
|
223 |
-
$valid_input[$option['id']] = call_user_func( $callback, $input[$option['id']] );
|
224 |
}
|
225 |
}
|
226 |
else :
|
227 |
-
if ( is_array( $input[$option['id']] ) ) {
|
228 |
-
$valid_input[$option['id']] = array_map( $option['sanitize_call'], $input[$option['id']] );
|
229 |
-
}
|
230 |
-
|
231 |
-
$valid_input[$option['id']] = call_user_func( $option['sanitize_call'], $input[$option['id']] );
|
232 |
}
|
233 |
endif;
|
234 |
-
}
|
235 |
-
|
236 |
-
|
237 |
-
if ( isset( $
|
238 |
-
$
|
239 |
-
}
|
240 |
-
else {
|
241 |
-
$valid_input[$option['id']] = 'no';
|
242 |
}
|
243 |
-
|
244 |
}
|
245 |
}
|
246 |
|
@@ -260,15 +294,15 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
260 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
261 |
*/
|
262 |
public function add_setting_page() {
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
/* === Duplicate Items Hack === */
|
273 |
$this->remove_duplicate_submenu_page();
|
274 |
do_action( 'yit_after_add_settings_page' );
|
@@ -283,11 +317,11 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
283 |
* @since 2.9.13
|
284 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
285 |
*/
|
286 |
-
public function add_premium_version_upgrade_to_menu(){
|
287 |
global $submenu;
|
288 |
|
289 |
-
if( apply_filters( 'yit_show_upgrade_to_premium_version', !
|
290 |
-
$submenu['yit_plugin_panel']['how_to'] = array(
|
291 |
sprintf( '%s%s%s', '<span id="yith-how-to-premium">', __( 'How to install premium version', 'yith-plugin-fw' ), '</span>' ),
|
292 |
'install_plugins',
|
293 |
'//support.yithemes.com/hc/en-us/articles/217840988',
|
@@ -312,59 +346,61 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
312 |
$yit_options = $this->get_main_array_options();
|
313 |
|
314 |
// tabs
|
315 |
-
foreach ( $this->settings['admin-tabs'] as $tab => $tab_value ) {
|
316 |
$active_class = ( $current_tab == $tab ) ? ' nav-tab-active' : '';
|
317 |
-
$tabs
|
318 |
}
|
319 |
?>
|
320 |
-
<div id="icon-themes" class="icon32"><br
|
321 |
-
<h2 class="
|
322 |
<?php echo $tabs ?>
|
323 |
</h2>
|
324 |
<?php
|
325 |
$custom_tab_action = $this->is_custom_tab( $yit_options, $current_tab );
|
326 |
if ( $custom_tab_action ) {
|
327 |
$this->print_custom_tab( $custom_tab_action );
|
|
|
328 |
return;
|
329 |
}
|
330 |
?>
|
331 |
-
|
332 |
<?php
|
333 |
$panel_content_class = apply_filters( 'yit_admin_panel_content_class', 'yit-admin-panel-content-wrap' );
|
334 |
?>
|
335 |
-
<div id="wrap" class="plugin-option yit-admin-panel-container">
|
336 |
<?php $this->message(); ?>
|
337 |
<div class="<?php echo $panel_content_class; ?>">
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
342 |
<p> </p>
|
343 |
-
|
344 |
-
<input type="hidden" name="<?php echo $this->get_name_field( 'current_tab' ) ?>" value="<?php echo esc_attr( $current_tab ) ?>" />
|
345 |
-
<input type="submit" class="button-primary" value="<?php _e( 'Save Changes', 'yith-plugin-fw' ) ?>" style="float:left;margin-right:10px;" />
|
346 |
-
</form>
|
347 |
-
<form method="post">
|
348 |
-
<?php $warning = __( 'If you continue with this action, you will reset all options in this page.', 'yith-plugin-fw' ) ?>
|
349 |
-
<input type="hidden" name="yit-action" value="reset" />
|
350 |
-
<input type="submit" name="yit-reset" class="button-secondary" value="<?php _e( 'Reset to default', 'yith-plugin-fw' ) ?>" onclick="return confirm('<?php echo $warning . '\n' . __( 'Are you sure?', 'yith-plugin-fw' ) ?>');" />
|
351 |
-
</form>
|
352 |
-
<p> </p>
|
353 |
-
<?php endif ?>
|
354 |
</div>
|
355 |
</div>
|
356 |
-
|
357 |
}
|
358 |
|
359 |
public function is_custom_tab( $options, $current_tab ) {
|
360 |
-
foreach ( $options[$current_tab] as $section => $option ) {
|
361 |
-
if ( isset( $option['type'] ) && isset( $option['action'] ) && 'custom_tab' == $option['type'] && !
|
362 |
-
return $option['action'];
|
363 |
-
}
|
364 |
-
else {
|
365 |
return false;
|
366 |
}
|
367 |
}
|
|
|
368 |
return false;
|
369 |
}
|
370 |
|
@@ -379,7 +415,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
379 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
380 |
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
381 |
*/
|
382 |
-
public function print_custom_tab( $action) {
|
383 |
do_action( $action );
|
384 |
}
|
385 |
|
@@ -396,14 +432,14 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
396 |
$yit_options = $this->get_main_array_options();
|
397 |
$current_tab = $this->get_current_tab();
|
398 |
|
399 |
-
if (
|
400 |
return;
|
401 |
}
|
402 |
-
foreach ( $yit_options[$current_tab] as $section => $data ) {
|
403 |
add_settings_section( "yit_settings_{$current_tab}_{$section}", $this->get_section_title( $section ), $this->get_section_description( $section ), 'yit' );
|
404 |
foreach ( $data as $option ) {
|
405 |
-
if ( isset( $option['id'] ) && isset( $option['type'] ) && isset( $option['name'] ) ) {
|
406 |
-
add_settings_field( "yit_setting_" . $option['id'], $option['name'], array( $this, 'render_field' ), 'yit', "yit_settings_{$current_tab}_{$section}", array( 'option' => $option, 'label_for' => $this->get_id_field( $option['id'] ) ) );
|
407 |
}
|
408 |
}
|
409 |
}
|
@@ -423,19 +459,19 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
423 |
|
424 |
global $wp_admin_bar;
|
425 |
|
426 |
-
if ( !
|
427 |
return;
|
428 |
}
|
429 |
|
430 |
-
if ( !
|
431 |
-
foreach ( $this->settings['admin-tabs'] as $item => $title ) {
|
432 |
|
433 |
$wp_admin_bar->add_menu( array(
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
}
|
440 |
}
|
441 |
}
|
@@ -451,21 +487,18 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
451 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
452 |
*/
|
453 |
function get_current_tab() {
|
454 |
-
$admin_tabs = array_keys( $this->settings['admin-tabs'] );
|
455 |
|
456 |
-
if ( !
|
457 |
return false;
|
458 |
}
|
459 |
-
if ( isset( $_REQUEST['yit_tab_options'] ) ) {
|
460 |
-
return $_REQUEST['yit_tab_options'];
|
461 |
-
}
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
return $admin_tabs[0];
|
467 |
-
}
|
468 |
-
else {
|
469 |
return 'general';
|
470 |
}
|
471 |
}
|
@@ -498,8 +531,8 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
498 |
);
|
499 |
|
500 |
foreach ( $message as $key => $value ) {
|
501 |
-
if ( isset( $_GET[$key] ) ) {
|
502 |
-
echo $message[$key];
|
503 |
}
|
504 |
}
|
505 |
|
@@ -523,6 +556,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
523 |
if ( $echo ) {
|
524 |
echo $message;
|
525 |
}
|
|
|
526 |
return $message;
|
527 |
}
|
528 |
|
@@ -538,20 +572,20 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
538 |
*/
|
539 |
function get_tabs_path_files() {
|
540 |
|
541 |
-
$option_files_path = $this->settings['options-path'] . '/';
|
542 |
|
543 |
$tabs = array();
|
544 |
|
545 |
foreach ( ( array ) glob( $option_files_path . '*.php' ) as $filename ) {
|
546 |
preg_match( '/(.*)-options\.(.*)/', basename( $filename ), $filename_parts );
|
547 |
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
|
552 |
-
$tab = $filename_parts[1];
|
553 |
|
554 |
-
$tabs[$tab] = $filename;
|
555 |
}
|
556 |
|
557 |
return $tabs;
|
@@ -567,12 +601,12 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
567 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
568 |
*/
|
569 |
function get_main_array_options() {
|
570 |
-
if ( !
|
571 |
return $this->_main_array_options;
|
572 |
}
|
573 |
|
574 |
-
foreach ( $this->settings['admin-tabs'] as $item => $v ) {
|
575 |
-
$path = $this->settings['options-path'] . '/' . $item . '-options.php';
|
576 |
if ( file_exists( $path ) ) {
|
577 |
$this->_main_array_options = array_merge( $this->_main_array_options, include $path );
|
578 |
}
|
@@ -598,14 +632,15 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
598 |
foreach ( $yit_options as $tab => $sections ) {
|
599 |
foreach ( $sections as $section ) {
|
600 |
foreach ( $section as $id => $value ) {
|
601 |
-
if ( isset( $value['std'] ) && isset( $value['id'] ) ) {
|
602 |
-
$default_options[$value['id']] = $value['std'];
|
603 |
}
|
604 |
}
|
605 |
}
|
606 |
}
|
607 |
|
608 |
unset( $yit_options );
|
|
|
609 |
return $default_options;
|
610 |
}
|
611 |
|
@@ -623,10 +658,10 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
623 |
$yit_options = $this->get_main_array_options();
|
624 |
$current_tab = $this->get_current_tab();
|
625 |
|
626 |
-
foreach ( $yit_options[$current_tab] as $sections => $data ) {
|
627 |
foreach ( $data as $option ) {
|
628 |
-
if ( isset( $option['type'] ) && $option['type'] == 'title' ) {
|
629 |
-
return $option['name'];
|
630 |
}
|
631 |
}
|
632 |
}
|
@@ -647,9 +682,9 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
647 |
$yit_options = $this->get_main_array_options();
|
648 |
$current_tab = $this->get_current_tab();
|
649 |
|
650 |
-
foreach ( $yit_options[$current_tab][$section] as $option ) {
|
651 |
-
if ( isset( $option['type'] ) && $option['type'] == 'section' ) {
|
652 |
-
return $option['name'];
|
653 |
}
|
654 |
}
|
655 |
}
|
@@ -669,9 +704,9 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
669 |
$yit_options = $this->get_main_array_options();
|
670 |
$current_tab = $this->get_current_tab();
|
671 |
|
672 |
-
foreach ( $yit_options[$current_tab][$section] as $option ) {
|
673 |
-
if ( isset( $option['type'] ) && $option['type'] == 'section' && isset( $option['desc'] ) ) {
|
674 |
-
return '<p>' . $option['desc'] . '</p>';
|
675 |
}
|
676 |
}
|
677 |
}
|
@@ -690,15 +725,14 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
690 |
$yit_options = $this->get_main_array_options();
|
691 |
$current_tab = $this->get_current_tab();
|
692 |
|
693 |
-
foreach ( $yit_options[$current_tab] as $sections => $data ) {
|
694 |
foreach ( $data as $option ) {
|
695 |
-
if ( !
|
696 |
continue;
|
697 |
}
|
698 |
-
if ( isset( $option['showform'] ) ) {
|
699 |
-
return $option['showform'];
|
700 |
-
}
|
701 |
-
else {
|
702 |
return true;
|
703 |
}
|
704 |
}
|
@@ -717,7 +751,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
717 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
718 |
*/
|
719 |
function get_name_field( $name = '' ) {
|
720 |
-
return 'yit_' . $this->settings['parent'] . '_options[' . $name . ']';
|
721 |
}
|
722 |
|
723 |
/**
|
@@ -732,7 +766,7 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
732 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
733 |
*/
|
734 |
function get_id_field( $id ) {
|
735 |
-
return 'yit_' . $this->settings['parent'] . '_options_' . $id;
|
736 |
}
|
737 |
|
738 |
|
@@ -750,30 +784,32 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
750 |
*/
|
751 |
function render_field( $param ) {
|
752 |
|
753 |
-
if ( !
|
754 |
-
$option = $param ['option'];
|
755 |
$db_options = $this->get_options();
|
756 |
|
757 |
$custom_attributes = array();
|
758 |
|
759 |
-
if ( !
|
760 |
-
foreach ( $option['custom_attributes'] as $attribute => $attribute_value ) {
|
761 |
$custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
762 |
}
|
763 |
}
|
764 |
|
765 |
$custom_attributes = implode( ' ', $custom_attributes );
|
766 |
-
$std
|
767 |
-
$db_value
|
768 |
|
769 |
-
if ( isset( $option['deps'] ) )
|
770 |
-
$deps = $option['deps'];
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
|
|
|
|
777 |
do_action( "yit_panel_{$option['type']}", $option, $db_value, $custom_attributes );
|
778 |
}
|
779 |
}
|
@@ -790,10 +826,11 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
790 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
791 |
*/
|
792 |
public function get_options() {
|
793 |
-
$options = get_option( 'yit_' . $this->settings['parent'] . '_options' );
|
794 |
-
if ( $options === false || ( isset( $_REQUEST['yit-action'] ) && $_REQUEST['yit-action'] == 'reset' ) ) {
|
795 |
$options = $this->get_default_options();
|
796 |
}
|
|
|
797 |
return $options;
|
798 |
}
|
799 |
|
@@ -807,8 +844,8 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
807 |
* @since 1.0
|
808 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
809 |
*/
|
810 |
-
public function add_infobox( $args = array() ) {
|
811 |
-
if ( !
|
812 |
extract( $args );
|
813 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/boxinfo.php' );
|
814 |
}
|
@@ -823,30 +860,79 @@ if ( ! class_exists( 'YIT_Plugin_Panel' ) ) {
|
|
823 |
* @since 1.0
|
824 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
825 |
*/
|
826 |
-
public function add_videobox( $args = array() ) {
|
827 |
-
if ( !
|
828 |
extract( $args );
|
829 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/videobox.php' );
|
830 |
}
|
831 |
}
|
832 |
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
842 |
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
|
847 |
-
|
|
|
|
|
848 |
|
849 |
-
|
850 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
851 |
}
|
852 |
-
}
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
+
if ( !class_exists( 'YIT_Plugin_Panel' ) ) {
|
16 |
/**
|
17 |
* YIT Plugin Panel
|
18 |
*
|
23 |
* @since 1.0
|
24 |
* @author Your Inspiration Themes
|
25 |
*/
|
|
|
26 |
class YIT_Plugin_Panel {
|
27 |
|
28 |
/**
|
50 |
*/
|
51 |
public $links;
|
52 |
|
53 |
+
/**
|
54 |
+
* @var bool
|
55 |
+
*/
|
56 |
+
protected static $_actions_initialized = false;
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Constructor
|
60 |
+
*
|
61 |
+
* @since 1.0
|
62 |
+
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
63 |
+
*
|
64 |
+
* @param array $args
|
65 |
+
*/
|
66 |
public function __construct( $args = array() ) {
|
67 |
|
68 |
+
if ( !empty( $args ) ) {
|
69 |
|
70 |
$default_args = array(
|
71 |
'parent_slug' => 'edit.php?',
|
72 |
'page_title' => __( 'Plugin Settings', 'yith-plugin-fw' ),
|
73 |
'menu_title' => __( 'Settings', 'yith-plugin-fw' ),
|
74 |
'capability' => 'manage_options',
|
75 |
+
'icon_url' => '',
|
76 |
+
'position' => null
|
77 |
);
|
78 |
|
79 |
$args = apply_filters( 'yit_plugin_fw_panel_option_args', wp_parse_args( $args, $default_args ) );
|
81 |
$this->settings = $args;
|
82 |
$this->_tabs_path_files = $this->get_tabs_path_files();
|
83 |
|
84 |
+
if ( isset( $this->settings[ 'create_menu_page' ] ) && $this->settings[ 'create_menu_page' ] ) {
|
85 |
$this->add_menu_page();
|
86 |
}
|
87 |
|
94 |
add_action( 'admin_menu', array( $this, 'add_premium_version_upgrade_to_menu' ), 100 );
|
95 |
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), 100 );
|
96 |
add_action( 'admin_init', array( $this, 'add_fields' ) );
|
97 |
+
|
98 |
+
// init actions once to prevent multiple actions
|
99 |
+
static::_init_actions();
|
100 |
}
|
101 |
|
102 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
103 |
}
|
104 |
|
105 |
+
/**
|
106 |
+
* Init actions once to prevent multiple actions
|
107 |
+
*
|
108 |
+
* @since 3.0.0
|
109 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
110 |
+
*/
|
111 |
+
protected static function _init_actions() {
|
112 |
+
if ( !static::$_actions_initialized ) {
|
113 |
+
add_filter( 'admin_body_class', array( __CLASS__, 'add_body_class' ) );
|
114 |
+
|
115 |
+
// sort plugins by name in YITH Plugins menu
|
116 |
+
add_action( 'admin_menu', array( __CLASS__, 'sort_plugins' ), 90 );
|
117 |
+
add_filter( 'add_menu_classes', array( __CLASS__, 'add_menu_class_in_yith_plugin' ) );
|
118 |
+
|
119 |
+
|
120 |
+
static::$_actions_initialized = true;
|
121 |
+
}
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* Add yith-plugin-fw-panel in body classes in Panel pages
|
126 |
+
*
|
127 |
+
* @param $admin_body_classes
|
128 |
+
*
|
129 |
+
* @since 3.0.0
|
130 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
131 |
+
*
|
132 |
+
* @return string
|
133 |
+
*/
|
134 |
+
public static function add_body_class( $admin_body_classes ) {
|
135 |
+
global $pagenow;
|
136 |
+
if ( ( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ) )
|
137 |
+
$admin_body_classes = substr_count( $admin_body_classes, ' yith-plugin-fw-panel ' ) == 0 ? $admin_body_classes . ' yith-plugin-fw-panel ' : $admin_body_classes;
|
138 |
+
|
139 |
+
return $admin_body_classes;
|
140 |
+
}
|
141 |
+
|
142 |
/**
|
143 |
* Add Menu page link
|
144 |
*
|
147 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
148 |
*/
|
149 |
public function add_menu_page() {
|
150 |
+
global $admin_page_hooks;
|
151 |
+
|
152 |
+
if ( !isset( $admin_page_hooks[ 'yit_plugin_panel' ] ) ) {
|
153 |
+
$position = apply_filters( 'yit_plugins_menu_item_position', '62.32' );
|
154 |
+
$capability = apply_filters( 'yit_plugin_panel_menu_page_capability', 'manage_options' );
|
155 |
+
$show = apply_filters( 'yit_plugin_panel_menu_page_show', true );
|
156 |
|
|
|
|
|
157 |
// YITH Plugins text must not be translated
|
158 |
+
!!$show && add_menu_page( 'yit_plugin_panel', 'YITH Plugins', $capability, 'yit_plugin_panel', null, YIT_CORE_PLUGIN_URL . '/assets/images/yithemes-icon.png', $position );
|
159 |
}
|
160 |
}
|
161 |
|
181 |
* @return void
|
182 |
* @since 1.0
|
183 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
184 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
185 |
*/
|
186 |
public function admin_enqueue_scripts() {
|
187 |
+
global $pagenow;
|
188 |
+
|
189 |
+
// enqueue styles only in the current panel page
|
190 |
+
if ( 'admin.php' === $pagenow && strpos( get_current_screen()->id, $this->settings[ 'page' ] ) !== false || apply_filters( 'yit_plugin_panel_asset_loading', false ) ) {
|
191 |
+
wp_enqueue_media();
|
192 |
+
|
193 |
+
wp_enqueue_style( 'yith-plugin-fw-fields' );
|
194 |
+
wp_enqueue_style( 'yit-jquery-ui-style' );
|
195 |
+
wp_enqueue_style( 'raleway-font' );
|
196 |
+
|
197 |
+
wp_enqueue_script( 'jquery-ui' );
|
198 |
+
wp_enqueue_script( 'jquery-ui-core' );
|
199 |
+
wp_enqueue_script( 'jquery-ui-dialog' );
|
200 |
+
wp_enqueue_script( 'yith_how_to' );
|
201 |
+
wp_enqueue_script( 'yith-plugin-fw-fields' );
|
202 |
+
}
|
203 |
|
204 |
+
if ( ( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith-plugins_page' ) !== false ) || apply_filters( 'yit_plugin_panel_asset_loading', false ) ) {
|
205 |
+
wp_enqueue_media();
|
206 |
+
wp_enqueue_style( 'yit-plugin-style' );
|
207 |
+
wp_enqueue_script( 'yit-plugin-panel' );
|
208 |
+
}
|
209 |
+
|
210 |
+
if ( 'admin.php' == $pagenow && strpos( get_current_screen()->id, 'yith_upgrade_premium_version' ) !== false ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
wp_enqueue_style( 'yit-upgrade-to-pro' );
|
212 |
wp_enqueue_script( 'colorbox' );
|
213 |
}
|
224 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
225 |
*/
|
226 |
public function register_settings() {
|
227 |
+
register_setting( 'yit_' . $this->settings[ 'parent' ] . '_options', 'yit_' . $this->settings[ 'parent' ] . '_options', array( $this, 'options_validate' ) );
|
228 |
}
|
229 |
|
230 |
/**
|
240 |
*/
|
241 |
public function options_validate( $input ) {
|
242 |
|
243 |
+
$current_tab = !empty( $input[ 'current_tab' ] ) ? $input[ 'current_tab' ] : 'general';
|
244 |
|
245 |
$yit_options = $this->get_main_array_options();
|
246 |
|
247 |
// default
|
248 |
$valid_input = $this->get_options();
|
249 |
|
250 |
+
$submit = ( !empty( $input[ 'submit-general' ] ) ? true : false );
|
251 |
+
$reset = ( !empty( $input[ 'reset-general' ] ) ? true : false );
|
252 |
|
253 |
+
foreach ( $yit_options[ $current_tab ] as $section => $data ) {
|
254 |
foreach ( $data as $option ) {
|
255 |
+
if ( isset( $option[ 'sanitize_call' ] ) && isset( $option[ 'id' ] ) ) { //yiw_debug($option, false);
|
256 |
+
if ( is_array( $option[ 'sanitize_call' ] ) ) :
|
257 |
+
foreach ( $option[ 'sanitize_call' ] as $callback ) {
|
258 |
+
if ( is_array( $input[ $option[ 'id' ] ] ) ) {
|
259 |
+
$valid_input[ $option[ 'id' ] ] = array_map( $callback, $input[ $option[ 'id' ] ] );
|
260 |
+
} else {
|
261 |
+
$valid_input[ $option[ 'id' ] ] = call_user_func( $callback, $input[ $option[ 'id' ] ] );
|
|
|
262 |
}
|
263 |
}
|
264 |
else :
|
265 |
+
if ( is_array( $input[ $option[ 'id' ] ] ) ) {
|
266 |
+
$valid_input[ $option[ 'id' ] ] = array_map( $option[ 'sanitize_call' ], $input[ $option[ 'id' ] ] );
|
267 |
+
} else {
|
268 |
+
$valid_input[ $option[ 'id' ] ] = call_user_func( $option[ 'sanitize_call' ], $input[ $option[ 'id' ] ] );
|
|
|
269 |
}
|
270 |
endif;
|
271 |
+
} else {
|
272 |
+
if ( isset( $option[ 'id' ] ) ) {
|
273 |
+
$value = isset( $input[ $option[ 'id' ] ] ) ? $input[ $option[ 'id' ] ] : false;
|
274 |
+
if ( isset( $option[ 'type' ] ) && in_array( $option[ 'type' ], array( 'checkbox', 'onoff' ) ) ) {
|
275 |
+
$value = yith_plugin_fw_is_true( $value ) ? 'yes' : 'no';
|
|
|
|
|
|
|
276 |
}
|
277 |
+
$valid_input[ $option[ 'id' ] ] = $value;
|
278 |
}
|
279 |
}
|
280 |
|
294 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
295 |
*/
|
296 |
public function add_setting_page() {
|
297 |
+
$this->settings[ 'icon_url' ] = isset( $this->settings[ 'icon_url' ] ) ? $this->settings[ 'icon_url' ] : '';
|
298 |
+
$this->settings[ 'position' ] = isset( $this->settings[ 'position' ] ) ? $this->settings[ 'position' ] : null;
|
299 |
+
$parent = $this->settings[ 'parent_slug' ] . $this->settings[ 'parent_page' ];
|
300 |
+
|
301 |
+
if ( !empty( $parent ) ) {
|
302 |
+
add_submenu_page( $parent, $this->settings[ 'page_title' ], $this->settings[ 'menu_title' ], $this->settings[ 'capability' ], $this->settings[ 'page' ], array( $this, 'yit_panel' ) );
|
303 |
+
} else {
|
304 |
+
add_menu_page( $this->settings[ 'page_title' ], $this->settings[ 'menu_title' ], $this->settings[ 'capability' ], $this->settings[ 'page' ], array( $this, 'yit_panel' ), $this->settings[ 'icon_url' ], $this->settings[ 'position' ] );
|
305 |
+
}
|
306 |
/* === Duplicate Items Hack === */
|
307 |
$this->remove_duplicate_submenu_page();
|
308 |
do_action( 'yit_after_add_settings_page' );
|
317 |
* @since 2.9.13
|
318 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
319 |
*/
|
320 |
+
public function add_premium_version_upgrade_to_menu() {
|
321 |
global $submenu;
|
322 |
|
323 |
+
if ( apply_filters( 'yit_show_upgrade_to_premium_version', isset( $submenu[ 'yit_plugin_panel' ] ) && !isset( $submenu[ 'yit_plugin_panel' ][ 'how_to' ] ) ) ) {
|
324 |
+
$submenu[ 'yit_plugin_panel' ][ 'how_to' ] = array(
|
325 |
sprintf( '%s%s%s', '<span id="yith-how-to-premium">', __( 'How to install premium version', 'yith-plugin-fw' ), '</span>' ),
|
326 |
'install_plugins',
|
327 |
'//support.yithemes.com/hc/en-us/articles/217840988',
|
346 |
$yit_options = $this->get_main_array_options();
|
347 |
|
348 |
// tabs
|
349 |
+
foreach ( $this->settings[ 'admin-tabs' ] as $tab => $tab_value ) {
|
350 |
$active_class = ( $current_tab == $tab ) ? ' nav-tab-active' : '';
|
351 |
+
$tabs .= '<a class="nav-tab' . $active_class . '" href="?' . $this->settings[ 'parent_page' ] . '&page=' . $this->settings[ 'page' ] . '&tab=' . $tab . '">' . $tab_value . '</a>';
|
352 |
}
|
353 |
?>
|
354 |
+
<div id="icon-themes" class="icon32"><br/></div>
|
355 |
+
<h2 class="nav-tab-wrapper">
|
356 |
<?php echo $tabs ?>
|
357 |
</h2>
|
358 |
<?php
|
359 |
$custom_tab_action = $this->is_custom_tab( $yit_options, $current_tab );
|
360 |
if ( $custom_tab_action ) {
|
361 |
$this->print_custom_tab( $custom_tab_action );
|
362 |
+
|
363 |
return;
|
364 |
}
|
365 |
?>
|
366 |
+
<?php $this->print_video_box(); ?>
|
367 |
<?php
|
368 |
$panel_content_class = apply_filters( 'yit_admin_panel_content_class', 'yit-admin-panel-content-wrap' );
|
369 |
?>
|
370 |
+
<div id="wrap" class="yith-plugin-fw plugin-option yit-admin-panel-container">
|
371 |
<?php $this->message(); ?>
|
372 |
<div class="<?php echo $panel_content_class; ?>">
|
373 |
+
<h2><?php echo $this->get_tab_title() ?></h2>
|
374 |
+
<?php if ( $this->is_show_form() ) : ?>
|
375 |
+
<form id="yith-plugin-fw-panel" method="post" action="options.php">
|
376 |
+
<?php do_settings_sections( 'yit' ); ?>
|
377 |
+
<p> </p>
|
378 |
+
<?php settings_fields( 'yit_' . $this->settings[ 'parent' ] . '_options' ); ?>
|
379 |
+
<input type="hidden" name="<?php echo $this->get_name_field( 'current_tab' ) ?>" value="<?php echo esc_attr( $current_tab ) ?>"/>
|
380 |
+
<input type="submit" class="button-primary" value="<?php _e( 'Save Changes', 'yith-plugin-fw' ) ?>" style="float:left;margin-right:10px;"/>
|
381 |
+
</form>
|
382 |
+
<form method="post">
|
383 |
+
<?php $warning = __( 'If you continue with this action, you will reset all options in this page.', 'yith-plugin-fw' ) ?>
|
384 |
+
<input type="hidden" name="yit-action" value="reset"/>
|
385 |
+
<input type="submit" name="yit-reset" class="button-secondary" value="<?php _e( 'Reset to default', 'yith-plugin-fw' ) ?>"
|
386 |
+
onclick="return confirm('<?php echo $warning . '\n' . __( 'Are you sure?', 'yith-plugin-fw' ) ?>');"/>
|
387 |
+
</form>
|
388 |
<p> </p>
|
389 |
+
<?php endif ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
390 |
</div>
|
391 |
</div>
|
392 |
+
<?php
|
393 |
}
|
394 |
|
395 |
public function is_custom_tab( $options, $current_tab ) {
|
396 |
+
foreach ( $options[ $current_tab ] as $section => $option ) {
|
397 |
+
if ( isset( $option[ 'type' ] ) && isset( $option[ 'action' ] ) && 'custom_tab' == $option[ 'type' ] && !empty( $option[ 'action' ] ) ) {
|
398 |
+
return $option[ 'action' ];
|
399 |
+
} else {
|
|
|
400 |
return false;
|
401 |
}
|
402 |
}
|
403 |
+
|
404 |
return false;
|
405 |
}
|
406 |
|
415 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
416 |
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
417 |
*/
|
418 |
+
public function print_custom_tab( $action ) {
|
419 |
do_action( $action );
|
420 |
}
|
421 |
|
432 |
$yit_options = $this->get_main_array_options();
|
433 |
$current_tab = $this->get_current_tab();
|
434 |
|
435 |
+
if ( !$current_tab ) {
|
436 |
return;
|
437 |
}
|
438 |
+
foreach ( $yit_options[ $current_tab ] as $section => $data ) {
|
439 |
add_settings_section( "yit_settings_{$current_tab}_{$section}", $this->get_section_title( $section ), $this->get_section_description( $section ), 'yit' );
|
440 |
foreach ( $data as $option ) {
|
441 |
+
if ( isset( $option[ 'id' ] ) && isset( $option[ 'type' ] ) && isset( $option[ 'name' ] ) ) {
|
442 |
+
add_settings_field( "yit_setting_" . $option[ 'id' ], $option[ 'name' ], array( $this, 'render_field' ), 'yit', "yit_settings_{$current_tab}_{$section}", array( 'option' => $option, 'label_for' => $this->get_id_field( $option[ 'id' ] ) ) );
|
443 |
}
|
444 |
}
|
445 |
}
|
459 |
|
460 |
global $wp_admin_bar;
|
461 |
|
462 |
+
if ( !current_user_can( 'manage_options' ) ) {
|
463 |
return;
|
464 |
}
|
465 |
|
466 |
+
if ( !empty( $this->settings[ 'admin_tabs' ] ) ) {
|
467 |
+
foreach ( $this->settings[ 'admin-tabs' ] as $item => $title ) {
|
468 |
|
469 |
$wp_admin_bar->add_menu( array(
|
470 |
+
'parent' => $this->settings[ 'parent' ],
|
471 |
+
'title' => $title,
|
472 |
+
'id' => $this->settings[ 'parent' ] . '-' . $item,
|
473 |
+
'href' => admin_url( 'themes.php' ) . '?page=' . $this->settings[ 'parent_page' ] . '&tab=' . $item
|
474 |
+
) );
|
475 |
}
|
476 |
}
|
477 |
}
|
487 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
488 |
*/
|
489 |
function get_current_tab() {
|
490 |
+
$admin_tabs = array_keys( $this->settings[ 'admin-tabs' ] );
|
491 |
|
492 |
+
if ( !isset( $_GET[ 'page' ] ) || $_GET[ 'page' ] != $this->settings[ 'page' ] ) {
|
493 |
return false;
|
494 |
}
|
495 |
+
if ( isset( $_REQUEST[ 'yit_tab_options' ] ) ) {
|
496 |
+
return $_REQUEST[ 'yit_tab_options' ];
|
497 |
+
} elseif ( isset( $_GET[ 'tab' ] ) && isset( $this->_tabs_path_files[ $_GET[ 'tab' ] ] ) ) {
|
498 |
+
return $_GET[ 'tab' ];
|
499 |
+
} elseif ( isset( $admin_tabs[ 0 ] ) ) {
|
500 |
+
return $admin_tabs[ 0 ];
|
501 |
+
} else {
|
|
|
|
|
|
|
502 |
return 'general';
|
503 |
}
|
504 |
}
|
531 |
);
|
532 |
|
533 |
foreach ( $message as $key => $value ) {
|
534 |
+
if ( isset( $_GET[ $key ] ) ) {
|
535 |
+
echo $message[ $key ];
|
536 |
}
|
537 |
}
|
538 |
|
556 |
if ( $echo ) {
|
557 |
echo $message;
|
558 |
}
|
559 |
+
|
560 |
return $message;
|
561 |
}
|
562 |
|
572 |
*/
|
573 |
function get_tabs_path_files() {
|
574 |
|
575 |
+
$option_files_path = $this->settings[ 'options-path' ] . '/';
|
576 |
|
577 |
$tabs = array();
|
578 |
|
579 |
foreach ( ( array ) glob( $option_files_path . '*.php' ) as $filename ) {
|
580 |
preg_match( '/(.*)-options\.(.*)/', basename( $filename ), $filename_parts );
|
581 |
|
582 |
+
if ( !isset( $filename_parts[ 1 ] ) ) {
|
583 |
+
continue;
|
584 |
+
}
|
585 |
|
586 |
+
$tab = $filename_parts[ 1 ];
|
587 |
|
588 |
+
$tabs[ $tab ] = $filename;
|
589 |
}
|
590 |
|
591 |
return $tabs;
|
601 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
602 |
*/
|
603 |
function get_main_array_options() {
|
604 |
+
if ( !empty( $this->_main_array_options ) ) {
|
605 |
return $this->_main_array_options;
|
606 |
}
|
607 |
|
608 |
+
foreach ( $this->settings[ 'admin-tabs' ] as $item => $v ) {
|
609 |
+
$path = $this->settings[ 'options-path' ] . '/' . $item . '-options.php';
|
610 |
if ( file_exists( $path ) ) {
|
611 |
$this->_main_array_options = array_merge( $this->_main_array_options, include $path );
|
612 |
}
|
632 |
foreach ( $yit_options as $tab => $sections ) {
|
633 |
foreach ( $sections as $section ) {
|
634 |
foreach ( $section as $id => $value ) {
|
635 |
+
if ( isset( $value[ 'std' ] ) && isset( $value[ 'id' ] ) ) {
|
636 |
+
$default_options[ $value[ 'id' ] ] = $value[ 'std' ];
|
637 |
}
|
638 |
}
|
639 |
}
|
640 |
}
|
641 |
|
642 |
unset( $yit_options );
|
643 |
+
|
644 |
return $default_options;
|
645 |
}
|
646 |
|
658 |
$yit_options = $this->get_main_array_options();
|
659 |
$current_tab = $this->get_current_tab();
|
660 |
|
661 |
+
foreach ( $yit_options[ $current_tab ] as $sections => $data ) {
|
662 |
foreach ( $data as $option ) {
|
663 |
+
if ( isset( $option[ 'type' ] ) && $option[ 'type' ] == 'title' ) {
|
664 |
+
return $option[ 'name' ];
|
665 |
}
|
666 |
}
|
667 |
}
|
682 |
$yit_options = $this->get_main_array_options();
|
683 |
$current_tab = $this->get_current_tab();
|
684 |
|
685 |
+
foreach ( $yit_options[ $current_tab ][ $section ] as $option ) {
|
686 |
+
if ( isset( $option[ 'type' ] ) && $option[ 'type' ] == 'section' ) {
|
687 |
+
return $option[ 'name' ];
|
688 |
}
|
689 |
}
|
690 |
}
|
704 |
$yit_options = $this->get_main_array_options();
|
705 |
$current_tab = $this->get_current_tab();
|
706 |
|
707 |
+
foreach ( $yit_options[ $current_tab ][ $section ] as $option ) {
|
708 |
+
if ( isset( $option[ 'type' ] ) && $option[ 'type' ] == 'section' && isset( $option[ 'desc' ] ) ) {
|
709 |
+
return '<p>' . $option[ 'desc' ] . '</p>';
|
710 |
}
|
711 |
}
|
712 |
}
|
725 |
$yit_options = $this->get_main_array_options();
|
726 |
$current_tab = $this->get_current_tab();
|
727 |
|
728 |
+
foreach ( $yit_options[ $current_tab ] as $sections => $data ) {
|
729 |
foreach ( $data as $option ) {
|
730 |
+
if ( !isset( $option[ 'type' ] ) || $option[ 'type' ] != 'title' ) {
|
731 |
continue;
|
732 |
}
|
733 |
+
if ( isset( $option[ 'showform' ] ) ) {
|
734 |
+
return $option[ 'showform' ];
|
735 |
+
} else {
|
|
|
736 |
return true;
|
737 |
}
|
738 |
}
|
751 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
752 |
*/
|
753 |
function get_name_field( $name = '' ) {
|
754 |
+
return 'yit_' . $this->settings[ 'parent' ] . '_options[' . $name . ']';
|
755 |
}
|
756 |
|
757 |
/**
|
766 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
767 |
*/
|
768 |
function get_id_field( $id ) {
|
769 |
+
return 'yit_' . $this->settings[ 'parent' ] . '_options_' . $id;
|
770 |
}
|
771 |
|
772 |
|
784 |
*/
|
785 |
function render_field( $param ) {
|
786 |
|
787 |
+
if ( !empty( $param ) && isset( $param [ 'option' ] ) ) {
|
788 |
+
$option = $param [ 'option' ];
|
789 |
$db_options = $this->get_options();
|
790 |
|
791 |
$custom_attributes = array();
|
792 |
|
793 |
+
if ( !empty( $option[ 'custom_attributes' ] ) && is_array( $option[ 'custom_attributes' ] ) ) {
|
794 |
+
foreach ( $option[ 'custom_attributes' ] as $attribute => $attribute_value ) {
|
795 |
$custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
796 |
}
|
797 |
}
|
798 |
|
799 |
$custom_attributes = implode( ' ', $custom_attributes );
|
800 |
+
$std = isset( $option[ 'std' ] ) ? $option[ 'std' ] : '';
|
801 |
+
$db_value = ( isset( $db_options[ $option[ 'id' ] ] ) ) ? $db_options[ $option[ 'id' ] ] : $std;
|
802 |
|
803 |
+
if ( isset( $option[ 'deps' ] ) )
|
804 |
+
$deps = $option[ 'deps' ];
|
805 |
+
|
806 |
+
if ( 'on-off' === $option[ 'type' ] )
|
807 |
+
$option[ 'type' ] = 'onoff';
|
808 |
+
|
809 |
+
if ( $field_template_path = yith_plugin_fw_get_field_template_path( $option ) ) {
|
810 |
+
$field_container_path = apply_filters( 'yith_plugin_fw_panel_field_container_template_path', YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/panel-field-container.php', $option );
|
811 |
+
file_exists( $field_container_path ) && include( $field_container_path );
|
812 |
+
} else {
|
813 |
do_action( "yit_panel_{$option['type']}", $option, $db_value, $custom_attributes );
|
814 |
}
|
815 |
}
|
826 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
827 |
*/
|
828 |
public function get_options() {
|
829 |
+
$options = get_option( 'yit_' . $this->settings[ 'parent' ] . '_options' );
|
830 |
+
if ( $options === false || ( isset( $_REQUEST[ 'yit-action' ] ) && $_REQUEST[ 'yit-action' ] == 'reset' ) ) {
|
831 |
$options = $this->get_default_options();
|
832 |
}
|
833 |
+
|
834 |
return $options;
|
835 |
}
|
836 |
|
844 |
* @since 1.0
|
845 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
846 |
*/
|
847 |
+
public static function add_infobox( $args = array() ) {
|
848 |
+
if ( !empty( $args ) ) {
|
849 |
extract( $args );
|
850 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/boxinfo.php' );
|
851 |
}
|
860 |
* @since 1.0
|
861 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
862 |
*/
|
863 |
+
public static function add_videobox( $args = array() ) {
|
864 |
+
if ( !empty( $args ) ) {
|
865 |
extract( $args );
|
866 |
require_once( YIT_CORE_PLUGIN_TEMPLATE_PATH . '/panel/videobox.php' );
|
867 |
}
|
868 |
}
|
869 |
|
870 |
+
/**
|
871 |
+
* Fire the action to print the custom tab
|
872 |
+
*
|
873 |
+
* @return void
|
874 |
+
* @since 1.0
|
875 |
+
* @author Antonino Scarfì <antonino.scarfi@yithemes.com>
|
876 |
+
*/
|
877 |
+
public function print_video_box() {
|
878 |
+
$file = $this->settings[ 'options-path' ] . '/video-box.php';
|
879 |
+
|
880 |
+
if ( !file_exists( $file ) ) {
|
881 |
+
return;
|
882 |
+
}
|
883 |
+
|
884 |
+
$args = include_once( $file );
|
885 |
+
|
886 |
+
$this->add_videobox( $args );
|
887 |
+
}
|
888 |
+
|
889 |
+
/**
|
890 |
+
* sort plugins by name in YITH Plugins menu
|
891 |
+
*
|
892 |
+
* @since 3.0.0
|
893 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
894 |
+
*/
|
895 |
+
public static function sort_plugins() {
|
896 |
+
global $submenu;
|
897 |
+
if ( !empty( $submenu[ 'yit_plugin_panel' ] ) ) {
|
898 |
+
$sorted_plugins = $submenu[ 'yit_plugin_panel' ];
|
899 |
|
900 |
+
usort( $sorted_plugins, function ( $a, $b ) {
|
901 |
+
return strcmp( current( $a ), current( $b ) );
|
902 |
+
} );
|
903 |
|
904 |
+
$submenu[ 'yit_plugin_panel' ] = $sorted_plugins;
|
905 |
+
}
|
906 |
+
}
|
907 |
|
908 |
+
/**
|
909 |
+
* add menu class in YITH Plugins menu
|
910 |
+
*
|
911 |
+
* @since 3.0.0
|
912 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
913 |
+
*/
|
914 |
+
public static function add_menu_class_in_yith_plugin( $menu ) {
|
915 |
+
global $submenu;
|
916 |
+
|
917 |
+
if ( !empty( $submenu[ 'yit_plugin_panel' ] ) ) {
|
918 |
+
$item_count = count( $submenu[ 'yit_plugin_panel' ] );
|
919 |
+
$columns = absint( $item_count / 20 ) + 1;
|
920 |
+
$columns = max( 1, min( $columns, 3 ) );
|
921 |
+
$columns = apply_filters( 'yith_plugin_fw_yith_plugins_menu_columns', $columns, $item_count );
|
922 |
+
|
923 |
+
if ( $columns > 1 ) {
|
924 |
+
$class = "yith-plugin-fw-menu-$columns-columns";
|
925 |
+
foreach ( $menu as $order => $top ) {
|
926 |
+
if ( 'yit_plugin_panel' === $top[ 2 ] ) {
|
927 |
+
$c = $menu[ $order ][ 4 ];
|
928 |
+
$menu[ $order ][ 4 ] = add_cssclass( $class, $c );
|
929 |
+
break;
|
930 |
+
}
|
931 |
+
}
|
932 |
+
}
|
933 |
+
}
|
934 |
+
|
935 |
+
return $menu;
|
936 |
+
}
|
937 |
}
|
938 |
+
}
|
plugin-fw/lib/yit-plugin-subpanel.php
CHANGED
@@ -8,11 +8,11 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
-
if ( !
|
16 |
/**
|
17 |
* YIT Plugin Panel
|
18 |
*
|
@@ -23,7 +23,6 @@ if ( ! class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
|
23 |
* @since 1.0
|
24 |
* @author Your Inspiration Themes
|
25 |
*/
|
26 |
-
|
27 |
class YIT_Plugin_SubPanel extends YIT_Plugin_Panel {
|
28 |
|
29 |
/**
|
@@ -50,10 +49,10 @@ if ( ! class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
|
50 |
*/
|
51 |
|
52 |
public function __construct( $args = array() ) {
|
53 |
-
if ( !
|
54 |
-
$this->settings
|
55 |
-
$this->settings['parent'] = $this->settings['page'];
|
56 |
-
$this->_tabs_path_files
|
57 |
|
58 |
add_action( 'admin_init', array( $this, 'register_settings' ) );
|
59 |
add_action( 'admin_menu', array( &$this, 'add_setting_page' ) );
|
@@ -74,11 +73,10 @@ if ( ! class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
|
74 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
75 |
*/
|
76 |
public function register_settings() {
|
77 |
-
register_setting( 'yit_' . $this->settings['page'] . '_options', 'yit_' . $this->settings['page'] . '_options', array( &$this, 'options_validate' ) );
|
78 |
}
|
79 |
|
80 |
|
81 |
-
|
82 |
/**
|
83 |
* Add Setting SubPage
|
84 |
*
|
@@ -98,12 +96,12 @@ if ( ! class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
|
98 |
$logo = $admin_logo;
|
99 |
}
|
100 |
|
101 |
-
if( !
|
102 |
$position = apply_filters( 'yit_plugins_menu_item_position', '62.32' );
|
103 |
-
add_menu_page( 'yit_plugin_panel', 'YITH Plugins', 'nosuchcapability', 'yit_plugin_panel',
|
104 |
}
|
105 |
|
106 |
-
add_submenu_page( 'yit_plugin_panel', $this->settings['label'], $this->settings['label'], 'manage_options', $this->settings['page'], array( $this, 'yit_panel' ) );
|
107 |
remove_submenu_page( 'yit_plugin_panel', 'yit_plugin_panel' );
|
108 |
|
109 |
}
|
@@ -118,46 +116,59 @@ if ( ! class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
|
118 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
119 |
*/
|
120 |
public function yit_panel() {
|
121 |
-
|
122 |
$tabs = '';
|
123 |
$current_tab = $this->get_current_tab();
|
|
|
|
|
124 |
|
125 |
// tabs
|
126 |
-
foreach ( $this->settings['admin-tabs'] as $tab => $tab_value ) {
|
127 |
$active_class = ( $current_tab == $tab ) ? ' nav-tab-active' : '';
|
128 |
-
$tabs
|
129 |
}
|
130 |
?>
|
131 |
-
<div id="icon-themes" class="icon32"><br
|
132 |
<h2 class="nav-tab-wrapper">
|
133 |
<?php echo $tabs ?>
|
134 |
</h2>
|
|
|
|
|
|
|
|
|
135 |
|
136 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
<?php $this->message(); ?>
|
138 |
-
<
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
143 |
<p> </p>
|
144 |
-
|
145 |
-
|
146 |
-
<input type="submit" class="button-primary" value="<?php _e( 'Save Changes', 'yith-plugin-fw' ) ?>" style="float:left;margin-right:10px;" />
|
147 |
-
</form>
|
148 |
-
<form method="post">
|
149 |
-
<?php $warning = __( 'If you continue with this action, you will reset all the options in this page.', 'yith-plugin-fw' ) ?>
|
150 |
-
<input type="hidden" name="yit-action" value="reset" />
|
151 |
-
<input type="submit" name="yit-reset" class="button-secondary" value="<?php _e( 'Reset to default', 'yith-plugin-fw' ) ?>" onclick="return confirm('<?php echo $warning . '\n' . __( 'Are you sure?', 'yith-plugin-fw' ) ?>');" />
|
152 |
-
</form>
|
153 |
-
<p> </p>
|
154 |
-
<?php endif ?>
|
155 |
</div>
|
156 |
-
|
157 |
}
|
158 |
|
159 |
|
160 |
-
|
161 |
}
|
162 |
|
163 |
}
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
+
if ( !class_exists( 'YIT_Plugin_SubPanel' ) ) {
|
16 |
/**
|
17 |
* YIT Plugin Panel
|
18 |
*
|
23 |
* @since 1.0
|
24 |
* @author Your Inspiration Themes
|
25 |
*/
|
|
|
26 |
class YIT_Plugin_SubPanel extends YIT_Plugin_Panel {
|
27 |
|
28 |
/**
|
49 |
*/
|
50 |
|
51 |
public function __construct( $args = array() ) {
|
52 |
+
if ( !empty( $args ) ) {
|
53 |
+
$this->settings = $args;
|
54 |
+
$this->settings[ 'parent' ] = $this->settings[ 'page' ];
|
55 |
+
$this->_tabs_path_files = $this->get_tabs_path_files();
|
56 |
|
57 |
add_action( 'admin_init', array( $this, 'register_settings' ) );
|
58 |
add_action( 'admin_menu', array( &$this, 'add_setting_page' ) );
|
73 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
74 |
*/
|
75 |
public function register_settings() {
|
76 |
+
register_setting( 'yit_' . $this->settings[ 'page' ] . '_options', 'yit_' . $this->settings[ 'page' ] . '_options', array( &$this, 'options_validate' ) );
|
77 |
}
|
78 |
|
79 |
|
|
|
80 |
/**
|
81 |
* Add Setting SubPage
|
82 |
*
|
96 |
$logo = $admin_logo;
|
97 |
}
|
98 |
|
99 |
+
if ( !isset( $admin_page_hooks[ 'yit_plugin_panel' ] ) ) {
|
100 |
$position = apply_filters( 'yit_plugins_menu_item_position', '62.32' );
|
101 |
+
add_menu_page( 'yit_plugin_panel', 'YITH Plugins', 'nosuchcapability', 'yit_plugin_panel', null, $logo, $position );
|
102 |
}
|
103 |
|
104 |
+
add_submenu_page( 'yit_plugin_panel', $this->settings[ 'label' ], $this->settings[ 'label' ], 'manage_options', $this->settings[ 'page' ], array( $this, 'yit_panel' ) );
|
105 |
remove_submenu_page( 'yit_plugin_panel', 'yit_plugin_panel' );
|
106 |
|
107 |
}
|
116 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
117 |
*/
|
118 |
public function yit_panel() {
|
|
|
119 |
$tabs = '';
|
120 |
$current_tab = $this->get_current_tab();
|
121 |
+
$yit_options = $this->get_main_array_options();
|
122 |
+
|
123 |
|
124 |
// tabs
|
125 |
+
foreach ( $this->settings[ 'admin-tabs' ] as $tab => $tab_value ) {
|
126 |
$active_class = ( $current_tab == $tab ) ? ' nav-tab-active' : '';
|
127 |
+
$tabs .= '<a class="nav-tab' . $active_class . '" href="?page=' . $this->settings[ 'page' ] . '&tab=' . $tab . '">' . $tab_value . '</a>';
|
128 |
}
|
129 |
?>
|
130 |
+
<div id="icon-themes" class="icon32"><br/></div>
|
131 |
<h2 class="nav-tab-wrapper">
|
132 |
<?php echo $tabs ?>
|
133 |
</h2>
|
134 |
+
<?php
|
135 |
+
$custom_tab_action = $this->is_custom_tab( $yit_options, $current_tab );
|
136 |
+
if ( $custom_tab_action ) {
|
137 |
+
$this->print_custom_tab( $custom_tab_action );
|
138 |
|
139 |
+
return;
|
140 |
+
}
|
141 |
+
?>
|
142 |
+
<?php $this->print_video_box(); ?>
|
143 |
+
<?php
|
144 |
+
$panel_content_class = apply_filters( 'yit_admin_panel_content_class', 'yit-admin-panel-content-wrap' );
|
145 |
+
?>
|
146 |
+
<div id="wrap" class="yith-plugin-fw plugin-option yit-admin-panel-container">
|
147 |
<?php $this->message(); ?>
|
148 |
+
<div class="<?php echo $panel_content_class; ?>">
|
149 |
+
<h2><?php echo $this->get_tab_title() ?></h2>
|
150 |
+
<?php if ( $this->is_show_form() ) : ?>
|
151 |
+
<form id="yith-plugin-fw-panel" method="post" action="options.php">
|
152 |
+
<?php do_settings_sections( 'yit' ); ?>
|
153 |
+
<p> </p>
|
154 |
+
<?php settings_fields( 'yit_' . $this->settings[ 'parent' ] . '_options' ); ?>
|
155 |
+
<input type="hidden" name="<?php echo $this->get_name_field( 'current_tab' ) ?>" value="<?php echo esc_attr( $current_tab ) ?>"/>
|
156 |
+
<input type="submit" class="button-primary" value="<?php _e( 'Save Changes', 'yith-plugin-fw' ) ?>" style="float:left;margin-right:10px;"/>
|
157 |
+
</form>
|
158 |
+
<form method="post">
|
159 |
+
<?php $warning = __( 'If you continue with this action, you will reset all options in this page.', 'yith-plugin-fw' ) ?>
|
160 |
+
<input type="hidden" name="yit-action" value="reset"/>
|
161 |
+
<input type="submit" name="yit-reset" class="button-secondary" value="<?php _e( 'Reset to default', 'yith-plugin-fw' ) ?>"
|
162 |
+
onclick="return confirm('<?php echo $warning . '\n' . __( 'Are you sure?', 'yith-plugin-fw' ) ?>');"/>
|
163 |
+
</form>
|
164 |
<p> </p>
|
165 |
+
<?php endif ?>
|
166 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
</div>
|
168 |
+
<?php
|
169 |
}
|
170 |
|
171 |
|
|
|
172 |
}
|
173 |
|
174 |
}
|
plugin-fw/lib/yit-upgrade.php
CHANGED
@@ -7,562 +7,570 @@
|
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
-
if ( !
|
11 |
-
|
12 |
} // Exit if accessed directly
|
13 |
|
14 |
-
if ( !
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
496 |
<div class='yit-plugin-changelog'>
|
497 |
<h2 class='yit-plugin-changelog-title'>{$plugin['info']['Name']} - Changelog</h2>
|
498 |
<p>{$changelog}</p>
|
499 |
</div>
|
500 |
</div>";
|
501 |
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
}
|
554 |
|
555 |
-
if ( !
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
}
|
567 |
|
568 |
/**
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
+
if ( !defined( 'ABSPATH' ) ) {
|
11 |
+
exit;
|
12 |
} // Exit if accessed directly
|
13 |
|
14 |
+
if ( !class_exists( 'YIT_Upgrade' ) ) {
|
15 |
+
/**
|
16 |
+
* YIT Upgrade
|
17 |
+
*
|
18 |
+
* Notify and Update plugin
|
19 |
+
*
|
20 |
+
* @class YIT_Upgrade
|
21 |
+
* @package Yithemes
|
22 |
+
* @since 1.0
|
23 |
+
* @author Your Inspiration Themes
|
24 |
+
* @see WP_Updater Class
|
25 |
+
*/
|
26 |
+
class YIT_Upgrade {
|
27 |
+
|
28 |
+
/**
|
29 |
+
* @var string XML notifier update
|
30 |
+
*/
|
31 |
+
protected $_xml = 'http://update.yithemes.com/plugins/%plugin_slug%.xml';
|
32 |
+
|
33 |
+
/**
|
34 |
+
* @var string api server url
|
35 |
+
*/
|
36 |
+
protected $_package_url = 'https://yithemes.com';
|
37 |
+
|
38 |
+
/**
|
39 |
+
* @var array The registered plugins
|
40 |
+
*/
|
41 |
+
protected $_plugins = array();
|
42 |
+
|
43 |
+
/**
|
44 |
+
* @var YIT_Upgrade The main instance
|
45 |
+
*/
|
46 |
+
protected static $_instance;
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Construct
|
50 |
+
*
|
51 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
52 |
+
* @since 1.0
|
53 |
+
*/
|
54 |
+
public function __construct() {
|
55 |
+
add_filter( 'upgrader_pre_download', array( $this, 'upgrader_pre_download' ), 10, 3 );
|
56 |
+
add_action( 'update-custom_upgrade-plugin-multisite', array( $this, 'upgrade_plugin_multisite' ) );
|
57 |
+
|
58 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
59 |
+
|
60 |
+
$is_debug_enabled = defined( 'YIT_LICENCE_DEBUG' ) && YIT_LICENCE_DEBUG;
|
61 |
+
if ( $is_debug_enabled ) {
|
62 |
+
$this->_package_url = defined( 'YIT_LICENCE_DEBUG_LOCALHOST' ) ? YIT_LICENCE_DEBUG_LOCALHOST : 'http://dev.yithemes.com';
|
63 |
+
add_filter( 'block_local_requests', '__return_false' );
|
64 |
+
}
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Main plugin Instance
|
69 |
+
*
|
70 |
+
* @param $plugin_slug | string The plugin slug
|
71 |
+
* @param $plugin_init | string The plugin init file
|
72 |
+
*
|
73 |
+
* @return void
|
74 |
+
*
|
75 |
+
* @since 1.0
|
76 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
77 |
+
*/
|
78 |
+
public function register( $plugin_slug, $plugin_init ) {
|
79 |
+
|
80 |
+
if ( !function_exists( 'get_plugins' ) ) {
|
81 |
+
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
82 |
+
}
|
83 |
+
|
84 |
+
$plugins = get_plugins();
|
85 |
+
$plugin_info = $plugins[ $plugin_init ];
|
86 |
+
|
87 |
+
$this->_plugins[ $plugin_init ] = array(
|
88 |
+
'info' => $plugin_info,
|
89 |
+
'slug' => $plugin_slug,
|
90 |
+
);
|
91 |
+
|
92 |
+
/* === HOOKS === */
|
93 |
+
if ( !is_multisite() || is_plugin_active_for_network( $plugin_init ) ) {
|
94 |
+
add_action( 'load-plugins.php', array( $this, 'remove_wp_plugin_update_row' ), 25 );
|
95 |
+
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'check_update' ) );
|
96 |
+
} else if ( is_multisite() && current_user_can( 'update_plugins' ) ) {
|
97 |
+
$transient = 'yith_register_' . md5( $plugin_slug );
|
98 |
+
if ( apply_filters( 'yith_register_delete_transient', false ) ) {
|
99 |
+
delete_transient( $transient );
|
100 |
+
}
|
101 |
+
$info = get_transient( $transient );
|
102 |
+
if ( false === $info || apply_filters( 'yith_register_delete_transient', false ) ) {
|
103 |
+
$xml = str_replace( '%plugin_slug%', $plugin_slug, $this->_xml );
|
104 |
+
$remote_xml = wp_remote_get( $xml );
|
105 |
+
|
106 |
+
if ( !is_wp_error( $remote_xml ) && isset( $remote_xml[ 'response' ][ 'code' ] ) && '200' == $remote_xml[ 'response' ][ 'code' ] ) {
|
107 |
+
$plugin_remote_info = @simplexml_load_string( $remote_xml[ 'body' ] );
|
108 |
+
if ( $plugin_remote_info ) {
|
109 |
+
$info[ 'Latest' ] = (string) $plugin_remote_info->latest;
|
110 |
+
$info[ 'changelog' ] = (string) $plugin_remote_info->changelog;
|
111 |
+
YIT_Plugin_Licence()->check( $plugin_slug, false );
|
112 |
+
set_transient( $transient, $info, DAY_IN_SECONDS );
|
113 |
+
} else {
|
114 |
+
error_log( sprintf( 'SimpleXML error in %s:%s [plugin slug: %s]',
|
115 |
+
__FILE__, __FUNCTION__, $plugin_slug ) );
|
116 |
+
}
|
117 |
+
}
|
118 |
+
}
|
119 |
+
|
120 |
+
$this->_plugins[ $plugin_init ][ 'info' ][ 'Latest' ] = $info[ 'Latest' ];
|
121 |
+
$this->_plugins[ $plugin_init ][ 'info' ][ 'changelog' ] = $info[ 'changelog' ];
|
122 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'multisite_updater_script' ) );
|
123 |
+
}
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Add the multisite updater scripts
|
128 |
+
*
|
129 |
+
* @return void
|
130 |
+
*
|
131 |
+
* @since 1.0
|
132 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
133 |
+
*/
|
134 |
+
public function multisite_updater_script() {
|
135 |
+
|
136 |
+
$update_url = $changelogs = $details_url = array();
|
137 |
+
$strings = array(
|
138 |
+
'new_version' => __( 'There is a new version of %plugin_name% available.', 'yith-plugin-fw' ),
|
139 |
+
'latest' => __( 'View version %latest% details.', 'yith-plugin-fw' ),
|
140 |
+
'unavailable' => __( 'Automatic update is unavailable for this plugin,', 'yith-plugin-fw' ),
|
141 |
+
'activate' => __( 'please <a href="%activate_link%">activate</a> your copy of %plugin_name%.', 'yith-plugin-fw' ),
|
142 |
+
'update_now' => __( 'Update now.', 'yith-plugin-fw' )
|
143 |
+
|
144 |
+
);
|
145 |
+
|
146 |
+
foreach ( $this->_plugins as $init => $info ) {
|
147 |
+
$update_url[ $init ] = wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin-multisite&plugin=' ) . $init, 'upgrade-plugin-multisite_' . $init );
|
148 |
+
$changelog_id = str_replace( array( '/', '.php', '.' ), array( '-', '', '-' ), $init );
|
149 |
+
$details_url[ $init ] = '#TB_inline' . esc_url( add_query_arg( array( 'width' => 722, 'height' => 914, 'inlineId' => $changelog_id ), '' ) );
|
150 |
+
$plugin_changelog = isset( $this->_plugins[ $init ][ 'info' ][ 'changelog' ] ) ? $this->_plugins[ $init ][ 'info' ][ 'changelog' ] : '';
|
151 |
+
$changelogs[ $init ] = $this->in_theme_update_message( $this->_plugins[ $init ], $plugin_changelog, $changelog_id, false );
|
152 |
+
}
|
153 |
+
|
154 |
+
$localize_script_args = array(
|
155 |
+
'registered' => $this->_plugins,
|
156 |
+
'activated' => YIT_Plugin_Licence()->get_activated_products(),
|
157 |
+
'licence_activation_url' => YIT_Plugin_Licence()->get_licence_activation_page_url(),
|
158 |
+
'update_url' => $update_url,
|
159 |
+
'details_url' => $details_url,
|
160 |
+
'strings' => $strings,
|
161 |
+
'changelogs' => $changelogs
|
162 |
+
);
|
163 |
+
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
164 |
+
yit_enqueue_script( 'yit-multisite-updater', YIT_CORE_PLUGIN_URL . '/assets/js/multisite-updater' . $suffix . '.js', array( 'jquery' ), false, true );
|
165 |
+
|
166 |
+
wp_localize_script( 'yit-multisite-updater', 'plugins', $localize_script_args );
|
167 |
+
}
|
168 |
+
|
169 |
+
public function admin_enqueue_scripts() {
|
170 |
+
global $pagenow;
|
171 |
+
if ( 'plugins.php' === $pagenow )
|
172 |
+
wp_enqueue_style( 'yit-upgrader', YIT_CORE_PLUGIN_URL . '/assets/css/yit-upgrader.css' );
|
173 |
+
}
|
174 |
+
|
175 |
+
/**
|
176 |
+
* Retrive the zip package file
|
177 |
+
*
|
178 |
+
* @param bool $reply Whether to bail without returning the package. Default false.
|
179 |
+
* @param string $package The package file name.
|
180 |
+
* @param \WP_Upgrader $upgrader WP_Upgrader instance.
|
181 |
+
*
|
182 |
+
* @return string | The download file
|
183 |
+
*
|
184 |
+
* @since 1.0
|
185 |
+
* @see wp-admin/includes/class-wp-upgrader.php
|
186 |
+
* @access public
|
187 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
188 |
+
*/
|
189 |
+
public function upgrader_pre_download( $reply, $package, $upgrader ) {
|
190 |
+
$plugin = false;
|
191 |
+
$is_bulk = $upgrader->skin instanceof Bulk_Plugin_Upgrader_Skin;
|
192 |
+
|
193 |
+
if ( !$is_bulk ) {
|
194 |
+
$plugin = isset( $upgrader->skin->plugin ) ? $upgrader->skin->plugin : false;
|
195 |
+
} else {
|
196 |
+
//Bulk action upgrade
|
197 |
+
$action_url = parse_url( $upgrader->skin->options[ 'url' ] );
|
198 |
+
parse_str( rawurldecode( htmlspecialchars_decode( $action_url[ 'query' ] ) ), $output );
|
199 |
+
$plugins = isset( $output[ 'plugins' ] ) ? $output[ 'plugins' ] : '';
|
200 |
+
$plugins = explode( ',', $plugins );
|
201 |
+
foreach ( $plugins as $plugin_init ) {
|
202 |
+
$to_upgrade = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin_init );
|
203 |
+
if ( $to_upgrade[ 'Name' ] == $upgrader->skin->plugin_info[ 'Name' ] ) {
|
204 |
+
$plugin = $plugin_init;
|
205 |
+
}
|
206 |
+
}
|
207 |
+
}
|
208 |
+
|
209 |
+
/**
|
210 |
+
* It isn't YITH Premium plugins, please wordpress update it for me!
|
211 |
+
*/
|
212 |
+
if ( !$plugin ) {
|
213 |
+
return $reply;
|
214 |
+
}
|
215 |
+
|
216 |
+
$plugin_info = YIT_Plugin_Licence()->get_product( $plugin );
|
217 |
+
|
218 |
+
/**
|
219 |
+
* False ? It isn't YITH Premium plugins, please wordpress update it for me!
|
220 |
+
*/
|
221 |
+
if ( false === $plugin_info ) {
|
222 |
+
return $reply;
|
223 |
+
}
|
224 |
+
|
225 |
+
$licence = YIT_Plugin_Licence()->get_licence();
|
226 |
+
$product_id = $plugin_info[ 'product_id' ];
|
227 |
+
$args = array(
|
228 |
+
'email' => $licence[ $product_id ][ 'email' ],
|
229 |
+
'licence_key' => $licence[ $product_id ][ 'licence_key' ],
|
230 |
+
'product_id' => $plugin_info[ 'product_id' ],
|
231 |
+
'secret_key' => $plugin_info[ 'secret_key' ],
|
232 |
+
'instance' => YIT_Plugin_Licence()->get_home_url(),
|
233 |
+
'wc-api' => 'download-api',
|
234 |
+
'request' => 'download'
|
235 |
+
);
|
236 |
+
|
237 |
+
if ( !preg_match( '!^(http|https|ftp)://!i', $package ) && file_exists( $package ) ) {
|
238 |
+
//Local file or remote?
|
239 |
+
return $package;
|
240 |
+
}
|
241 |
+
|
242 |
+
if ( empty( $package ) ) {
|
243 |
+
return new WP_Error( 'no_package', $upgrader->strings[ 'no_package' ] );
|
244 |
+
}
|
245 |
+
|
246 |
+
$upgrader->skin->feedback( 'downloading_package', __( 'YIThemes Repository', 'yith-plugin-fw' ) );
|
247 |
+
|
248 |
+
$download_file = $this->_download_url( $package, $args );
|
249 |
+
|
250 |
+
/**
|
251 |
+
* Regenerate update_plugins transient
|
252 |
+
*/
|
253 |
+
$this->force_regenerate_update_transient();
|
254 |
+
|
255 |
+
if ( is_wp_error( $download_file ) ) {
|
256 |
+
return new WP_Error( 'download_failed', $upgrader->strings[ 'download_failed' ], $download_file->get_error_message() );
|
257 |
+
}
|
258 |
+
|
259 |
+
return $download_file;
|
260 |
+
}
|
261 |
+
|
262 |
+
/**
|
263 |
+
* Retrive the temp filename
|
264 |
+
*
|
265 |
+
* @param string $url The package url
|
266 |
+
* @param string $body The post data fields
|
267 |
+
* @param int $timeout Execution timeout (default: 300)
|
268 |
+
*
|
269 |
+
* @return string | The temp filename
|
270 |
+
*
|
271 |
+
* @since 1.0
|
272 |
+
* @see wp-admin/includes/class-wp-upgrader.php
|
273 |
+
* @access protected
|
274 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
275 |
+
*/
|
276 |
+
protected function _download_url( $url, $body, $timeout = 300 ) {
|
277 |
+
|
278 |
+
//WARNING: The file is not automatically deleted, The script must unlink() the file.
|
279 |
+
if ( !$url ) {
|
280 |
+
return new WP_Error( 'http_no_url', __( 'Invalid URL Provided.', 'yit' ) );
|
281 |
+
}
|
282 |
+
|
283 |
+
$tmpfname = wp_tempnam( $url );
|
284 |
+
|
285 |
+
$args = array(
|
286 |
+
'timeout' => $timeout,
|
287 |
+
'stream' => true,
|
288 |
+
'filename' => $tmpfname,
|
289 |
+
'body' => $body
|
290 |
+
);
|
291 |
+
|
292 |
+
if ( !$tmpfname ) {
|
293 |
+
return new WP_Error( 'http_no_file', __( 'Could not create Temporary file.', 'yit' ) );
|
294 |
+
}
|
295 |
+
|
296 |
+
$response = wp_safe_remote_post( $url, $args );
|
297 |
+
|
298 |
+
if ( is_wp_error( $response ) ) {
|
299 |
+
unlink( $tmpfname );
|
300 |
+
|
301 |
+
return $response;
|
302 |
+
}
|
303 |
+
|
304 |
+
if ( 200 != wp_remote_retrieve_response_code( $response ) ) {
|
305 |
+
unlink( $tmpfname );
|
306 |
+
|
307 |
+
return new WP_Error( 'http_404', trim( wp_remote_retrieve_response_message( $response ) ) );
|
308 |
+
}
|
309 |
+
|
310 |
+
$content_md5 = wp_remote_retrieve_header( $response, 'content-md5' );
|
311 |
+
|
312 |
+
if ( $content_md5 ) {
|
313 |
+
$md5_check = verify_file_md5( $tmpfname, $content_md5 );
|
314 |
+
if ( is_wp_error( $md5_check ) ) {
|
315 |
+
unlink( $tmpfname );
|
316 |
+
|
317 |
+
return $md5_check;
|
318 |
+
}
|
319 |
+
}
|
320 |
+
|
321 |
+
return $tmpfname;
|
322 |
+
}
|
323 |
+
|
324 |
+
/**
|
325 |
+
* Main plugin Instance
|
326 |
+
*
|
327 |
+
* @static
|
328 |
+
* @return object Main instance
|
329 |
+
*
|
330 |
+
* @since 1.0
|
331 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
332 |
+
*/
|
333 |
+
public static function instance() {
|
334 |
+
if ( is_null( self::$_instance ) ) {
|
335 |
+
self::$_instance = new self();
|
336 |
+
}
|
337 |
+
|
338 |
+
return self::$_instance;
|
339 |
+
}
|
340 |
+
|
341 |
+
/**
|
342 |
+
* Delete the update plugins transient
|
343 |
+
*
|
344 |
+
* @return void
|
345 |
+
*
|
346 |
+
* @since 1.0
|
347 |
+
* @see update_plugins transient and pre_set_site_transient_update_plugins hooks
|
348 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
349 |
+
*/
|
350 |
+
public function force_regenerate_update_transient() {
|
351 |
+
delete_site_transient( 'update_plugins' );
|
352 |
+
}
|
353 |
+
|
354 |
+
/**
|
355 |
+
* Check for plugins update
|
356 |
+
*
|
357 |
+
* If a new plugin version is available set it in the pre_set_site_transient_update_plugins hooks
|
358 |
+
*
|
359 |
+
* @param mixed $transient | update_plugins transient value
|
360 |
+
* @param bool $save | Default: false. Set true to regenerate the update_transient plugins
|
361 |
+
*
|
362 |
+
* @return mixed $transient | The new update_plugins transient value
|
363 |
+
*
|
364 |
+
* @since 1.0
|
365 |
+
* @see update_plugins transient and pre_set_site_transient_update_plugins hooks
|
366 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
367 |
+
*/
|
368 |
+
public function check_update( $transient, $save = false ) {
|
369 |
+
|
370 |
+
foreach ( $this->_plugins as $init => $plugin ) {
|
371 |
+
$plugin_slug = $this->_plugins[ $init ][ 'slug' ];
|
372 |
+
$xml = str_replace( '%plugin_slug%', $plugin_slug, $this->_xml );
|
373 |
+
$remote_xml = wp_remote_get( $xml );
|
374 |
+
|
375 |
+
if ( !is_wp_error( $remote_xml ) && isset( $remote_xml[ 'response' ][ 'code' ] ) && '200' == $remote_xml[ 'response' ][ 'code' ] ) {
|
376 |
+
|
377 |
+
$plugin_remote_info = @simplexml_load_string( $remote_xml[ 'body' ] );
|
378 |
+
|
379 |
+
if ( $plugin_remote_info ) {
|
380 |
+
|
381 |
+
if ( version_compare( $plugin_remote_info->latest, $plugin[ 'info' ][ 'Version' ], '>' ) && !isset( $transient->response[ $init ] ) ) {
|
382 |
+
|
383 |
+
$package = YIT_Plugin_Licence()->check( $init ) ? $this->_package_url : null;
|
384 |
+
|
385 |
+
$obj = new stdClass();
|
386 |
+
$obj->slug = (string) $init;
|
387 |
+
$obj->new_version = (string) $plugin_remote_info->latest;
|
388 |
+
$obj->changelog = (string) $plugin_remote_info->changelog;
|
389 |
+
$obj->package = $package;
|
390 |
+
$obj->plugin = $init;
|
391 |
+
$transient->response[ $init ] = $obj;
|
392 |
+
}
|
393 |
+
|
394 |
+
} else {
|
395 |
+
error_log( sprintf( 'SimpleXML error in %s:%s [plugin slug: %s]',
|
396 |
+
__FILE__, __FUNCTION__, $plugin_slug ) );
|
397 |
+
|
398 |
+
return $transient;
|
399 |
+
}
|
400 |
+
}
|
401 |
+
}
|
402 |
+
|
403 |
+
if ( $save ) {
|
404 |
+
set_site_transient( 'update_plugins', $transient );
|
405 |
+
}
|
406 |
+
|
407 |
+
return $transient;
|
408 |
+
}
|
409 |
+
|
410 |
+
/**
|
411 |
+
* Add the plugin update row in plugin page
|
412 |
+
*
|
413 |
+
* @return void
|
414 |
+
* @fire "in_theme_update_message-{$init}" action
|
415 |
+
*
|
416 |
+
* @since 1.0
|
417 |
+
* @see after_plugin_row_{$init} action
|
418 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
419 |
+
*/
|
420 |
+
public function plugin_update_row() {
|
421 |
+
|
422 |
+
$current = get_site_transient( 'update_plugins' );
|
423 |
+
$init = str_replace( 'after_plugin_row_', '', current_filter() );
|
424 |
+
|
425 |
+
if ( !isset( $current->response[ $init ] ) ) {
|
426 |
+
return false;
|
427 |
+
}
|
428 |
+
|
429 |
+
/**
|
430 |
+
* stdClass Object
|
431 |
+
*/
|
432 |
+
$r = $current->response[ $init ];
|
433 |
+
|
434 |
+
$changelog_id = str_replace( array( '/', '.php', '.' ), array( '-', '', '-' ), $init );
|
435 |
+
$details_url = '#TB_inline' . esc_url( add_query_arg( array( 'width' => 722, 'height' => 914, 'inlineId' => $changelog_id ), '' ) );
|
436 |
+
|
437 |
+
/**
|
438 |
+
* @see wp_plugin_update_rows() in wp-single\wp-admin\includes\update.php
|
439 |
+
*/
|
440 |
+
$wp_list_table = _get_list_table( 'WP_MS_Themes_List_Table' );
|
441 |
+
|
442 |
+
if ( is_network_admin() || !is_multisite() || true ) {
|
443 |
+
global $wp_version;
|
444 |
+
$is_wp_4_6 = version_compare( $wp_version, '4.6', '>=' );
|
445 |
+
|
446 |
+
echo '<tr class="plugin-update-tr' . ( is_plugin_active( $init ) ? ' active' : '' ) . '"><td colspan="' . $wp_list_table->get_column_count() . '" class="plugin-update colspanchange">';
|
447 |
+
|
448 |
+
echo '<div class="update-message' . ( $is_wp_4_6 ? ' notice inline notice-warning notice-alt' : '' ) . '">';
|
449 |
+
|
450 |
+
echo( $is_wp_4_6 ? '<p>' : '' );
|
451 |
+
|
452 |
+
if ( !current_user_can( 'update_plugins' ) ) {
|
453 |
+
printf( __( 'There is a new version of %1$s available. <a href="%2$s" class="thickbox yit-changelog-button open-plugin-details-modal" title="%3$s">View version %4$s details</a>.', 'yith-plugin-fw' ), $this->_plugins[ $init ][ 'info' ][ 'Name' ], esc_url( $details_url ), esc_attr( $this->_plugins[ $init ][ 'info' ][ 'Name' ] ), $r->new_version );
|
454 |
+
} elseif ( is_plugin_active_for_network( $init ) ) {
|
455 |
+
printf( __( 'There is a new version of %1$s available. <a href="%2$s" class="thickbox yit-changelog-button open-plugin-details-modal" title="%3$s">View version %4$s details</a>. <em>You have to activate the plugin on a single site of the network to benefit from automatic updates.</em>', 'yith-plugin-fw' ), $this->_plugins[ $init ][ 'info' ][ 'Name' ], esc_url( $details_url ), esc_attr( $this->_plugins[ $init ][ 'info' ][ 'Name' ] ), $r->new_version );
|
456 |
+
} elseif ( empty( $r->package ) ) {
|
457 |
+
printf( __( 'There is a new version of %1$s available. <a href="%2$s" class="thickbox yit-changelog-button open-plugin-details-modal" title="%3$s">View version %4$s details</a>. <em>Automatic update is unavailable for this plugin, please <a href="%5$s" title="License activation">activate</a> your copy of %6s.</em>', 'yith-plugin-fw' ), $this->_plugins[ $init ][ 'info' ][ 'Name' ], esc_url( $details_url ), esc_attr( $this->_plugins[ $init ][ 'info' ][ 'Name' ] ), $r->new_version, YIT_Plugin_Licence()->get_licence_activation_page_url(), $this->_plugins[ $init ][ 'info' ][ 'Name' ] );
|
458 |
+
} else {
|
459 |
+
printf( __( 'There is a new version of %1$s available. <a href="%2$s" class="thickbox yit-changelog-button open-plugin-details-modal" title="%3$s">View version %4$s details</a> or <a href="%5$s">update now</a>.', 'yith-plugin-fw' ), $this->_plugins[ $init ][ 'info' ][ 'Name' ], esc_url( $details_url ), esc_attr( $this->_plugins[ $init ][ 'info' ][ 'Name' ] ), $r->new_version, wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' ) . $init, 'upgrade-plugin_' . $init ) );
|
460 |
+
}
|
461 |
+
|
462 |
+
echo( $is_wp_4_6 ? '</p>' : '' );
|
463 |
+
|
464 |
+
/**
|
465 |
+
* Fires at the end of the update message container in each
|
466 |
+
* row of the themes list table.
|
467 |
+
*
|
468 |
+
* The dynamic portion of the hook name, `$theme_key`, refers to
|
469 |
+
* the theme slug as found in the WordPress.org themes repository.
|
470 |
+
*
|
471 |
+
* @since Wordpress 3.1.0
|
472 |
+
* }
|
473 |
+
*/
|
474 |
+
do_action( "in_theme_update_message-{$init}", $this->_plugins[ $init ], $r->changelog, $changelog_id );
|
475 |
+
|
476 |
+
echo '</div></td></tr>';
|
477 |
+
}
|
478 |
+
}
|
479 |
+
|
480 |
+
/**
|
481 |
+
* Remove the standard plugin_update_row
|
482 |
+
*
|
483 |
+
* Remove the standard plugin_update_row and Add a custom plugin update row in plugin page.
|
484 |
+
*
|
485 |
+
* @return void
|
486 |
+
* @fire "in_theme_update_message-{$init}" action
|
487 |
+
*
|
488 |
+
* @since 1.0
|
489 |
+
* @see after_plugin_row_{$init} action
|
490 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
491 |
+
*/
|
492 |
+
public function remove_wp_plugin_update_row() {
|
493 |
+
foreach ( $this->_plugins as $init => $plugin ) {
|
494 |
+
remove_action( "after_plugin_row_{$init}", 'wp_plugin_update_row', 10 );
|
495 |
+
add_action( "after_plugin_row_{$init}", array( $this, 'plugin_update_row' ) );
|
496 |
+
add_action( "in_theme_update_message-{$init}", array( $this, 'in_theme_update_message' ), 10, 3 );
|
497 |
+
}
|
498 |
+
}
|
499 |
+
|
500 |
+
public function in_theme_update_message( $plugin, $changelog, $changelog_id, $echo = true ) {
|
501 |
+
|
502 |
+
$res
|
503 |
+
= "<div id='{$changelog_id}' class='yit-plugin-changelog-wrapper'>
|
504 |
<div class='yit-plugin-changelog'>
|
505 |
<h2 class='yit-plugin-changelog-title'>{$plugin['info']['Name']} - Changelog</h2>
|
506 |
<p>{$changelog}</p>
|
507 |
</div>
|
508 |
</div>";
|
509 |
|
510 |
+
if ( $echo ) {
|
511 |
+
echo $res;
|
512 |
+
} else {
|
513 |
+
return $res;
|
514 |
+
}
|
515 |
+
}
|
516 |
+
|
517 |
+
/**
|
518 |
+
* Auto-Update Plugin in multisite
|
519 |
+
*
|
520 |
+
* Manage the non standard upgrade-plugin-multisite action
|
521 |
+
*
|
522 |
+
* @return void
|
523 |
+
*
|
524 |
+
* @since 1.0
|
525 |
+
* @see upgrade-plugin action
|
526 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
527 |
+
*/
|
528 |
+
public function upgrade_plugin_multisite() {
|
529 |
+
|
530 |
+
$plugin = isset( $_REQUEST[ 'plugin' ] ) ? trim( $_REQUEST[ 'plugin' ] ) : '';
|
531 |
+
$action = isset( $_REQUEST[ 'action' ] ) ? $_REQUEST[ 'action' ] : '';
|
532 |
+
|
533 |
+
if ( 'upgrade-plugin-multisite' != $action ) {
|
534 |
+
wp_die( __( 'You can\'t update the plugins for this site.', 'yith-plugin-fw' ) );
|
535 |
+
}
|
536 |
+
|
537 |
+
if ( !current_user_can( 'update_plugins' ) ) {
|
538 |
+
wp_die( __( 'You do not have sufficient permissions to update the plugins for this site.', 'yith-plugin-fw' ) );
|
539 |
+
}
|
540 |
+
|
541 |
+
$this->check_update( get_site_transient( 'update_plugins' ), true );
|
542 |
+
|
543 |
+
check_admin_referer( 'upgrade-plugin-multisite_' . $plugin );
|
544 |
+
|
545 |
+
$title = __( 'Update Plugin', 'yith-plugin-fw' );
|
546 |
+
$parent_file = 'plugins.php';
|
547 |
+
$submenu_file = 'plugins.php';
|
548 |
+
|
549 |
+
wp_enqueue_script( 'updates' );
|
550 |
+
require_once( ABSPATH . 'wp-admin/admin-header.php' );
|
551 |
+
|
552 |
+
$nonce = 'upgrade-plugin-multisite_' . $plugin;
|
553 |
+
$url = 'update.php?action=upgrade-plugin-multisite&plugin=' . urlencode( $plugin );
|
554 |
+
|
555 |
+
$upgrader = new Plugin_Upgrader( new Plugin_Upgrader_Skin( compact( 'title', 'nonce', 'url', 'plugin' ) ) );
|
556 |
+
$upgrader->upgrade( $plugin );
|
557 |
+
|
558 |
+
include( ABSPATH . 'wp-admin/admin-footer.php' );
|
559 |
+
}
|
560 |
+
}
|
561 |
}
|
562 |
|
563 |
+
if ( !function_exists( 'YIT_Upgrade' ) ) {
|
564 |
+
/**
|
565 |
+
* Main instance of plugin
|
566 |
+
*
|
567 |
+
* @return YIT_Upgrade
|
568 |
+
* @since 1.0
|
569 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
570 |
+
*/
|
571 |
+
function YIT_Upgrade() {
|
572 |
+
return YIT_Upgrade::instance();
|
573 |
+
}
|
574 |
}
|
575 |
|
576 |
/**
|
plugin-fw/licence/assets/css/yit-licence.css
CHANGED
@@ -9,10 +9,12 @@
|
|
9 |
}
|
10 |
|
11 |
.yit-plugin-changelog {
|
|
|
|
|
|
|
|
|
|
|
12 |
background: #fcfcfc;
|
13 |
-
height: 97%;
|
14 |
-
z-index: 999;
|
15 |
-
overflow: auto;
|
16 |
}
|
17 |
|
18 |
/* === Plugins Licence Activation === */
|
9 |
}
|
10 |
|
11 |
.yit-plugin-changelog {
|
12 |
+
height : calc(100% - 15px);
|
13 |
+
width : calc(100% - 15px);
|
14 |
+
overflow-x : hidden;
|
15 |
+
overflow-y : auto;
|
16 |
+
z-index : 999;
|
17 |
background: #fcfcfc;
|
|
|
|
|
|
|
18 |
}
|
19 |
|
20 |
/* === Plugins Licence Activation === */
|
plugin-fw/licence/lib/yit-licence.php
CHANGED
@@ -8,11 +8,11 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
-
if ( !
|
16 |
/**
|
17 |
* YIT Licence Panel
|
18 |
*
|
@@ -23,7 +23,6 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
23 |
* @since 1.0
|
24 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
25 |
*/
|
26 |
-
|
27 |
abstract class YIT_Licence {
|
28 |
|
29 |
/**
|
@@ -44,7 +43,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
44 |
*/
|
45 |
protected $_licence_option = 'yit_products_licence_activation';
|
46 |
|
47 |
-
|
48 |
* @var string The yithemes api uri
|
49 |
* @since 1.0
|
50 |
*/
|
@@ -63,7 +62,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
63 |
*/
|
64 |
public $show_extra_info = false;
|
65 |
|
66 |
-
|
67 |
* @var string check for show extra info
|
68 |
* @since 1.0
|
69 |
*/
|
@@ -84,14 +83,12 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
84 |
|
85 |
/* Style adn Script */
|
86 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
87 |
-
if( $is_debug_enabled ) {
|
88 |
//show extra info and renew button in debug mode
|
89 |
$this->show_extra_info = $this->show_renew_button = true;
|
90 |
-
}
|
91 |
-
|
92 |
-
|
93 |
-
$this->show_extra_info = defined( 'YIT_SHOW_EXTRA_LICENCE_INFO' ) && YIT_SHOW_EXTRA_LICENCE_INFO;
|
94 |
-
$this->show_renew_button = ! ( defined( 'YIT_HIDE_LICENCE_RENEW_BUTTON' ) && YIT_HIDE_LICENCE_RENEW_BUTTON );
|
95 |
}
|
96 |
|
97 |
/* Update Licence Information */
|
@@ -130,20 +127,27 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
130 |
/**
|
131 |
* Get The home url without protocol
|
132 |
*
|
133 |
-
* @return string
|
134 |
*
|
135 |
* @since 1.0
|
136 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
137 |
*/
|
138 |
public function get_home_url() {
|
139 |
-
$home_url
|
140 |
-
$schemes
|
141 |
|
142 |
-
foreach( $schemes as $scheme ){
|
143 |
$home_url = str_replace( $scheme, '', $home_url );
|
144 |
}
|
145 |
|
146 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
147 |
}
|
148 |
|
149 |
/**
|
@@ -158,7 +162,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
158 |
return defined( 'DOING_AJAX' ) && DOING_AJAX ? true : false;
|
159 |
}
|
160 |
|
161 |
-
|
162 |
* Admin Enqueue Scripts
|
163 |
*
|
164 |
* @return void
|
@@ -166,33 +170,39 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
166 |
* @since 1.0
|
167 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
168 |
*/
|
169 |
-
public function admin_enqueue_scripts(){
|
170 |
|
171 |
/**
|
172 |
* Support to YIT Framework < 2.0
|
173 |
*/
|
174 |
-
$filename
|
175 |
-
$script_path
|
176 |
-
$style_path
|
177 |
|
178 |
-
|
179 |
-
|
180 |
|
181 |
/* Localize Scripts */
|
182 |
wp_localize_script( 'yit-licence', 'licence_message', array(
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
);
|
191 |
|
192 |
wp_localize_script( 'yit-licence', 'script_info', array(
|
193 |
-
|
194 |
-
|
195 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
}
|
197 |
|
198 |
/**
|
@@ -207,44 +217,44 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
207 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
208 |
*/
|
209 |
public function activate() {
|
210 |
-
$product_init = $_REQUEST['product_init'];
|
211 |
$product = $this->get_product( $product_init );
|
212 |
|
213 |
$args = array(
|
214 |
-
'email' => urlencode( sanitize_email( $_REQUEST['email'] ) ),
|
215 |
-
'licence_key' => sanitize_text_field( $_REQUEST['licence_key'] ),
|
216 |
-
'product_id' => sanitize_text_field( $product['product_id'] ),
|
217 |
-
'secret_key' => sanitize_text_field( $product['secret_key'] ),
|
218 |
'instance' => $this->get_home_url()
|
219 |
);
|
220 |
|
221 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'activation' ) ) );
|
222 |
-
$
|
|
|
223 |
|
224 |
if ( is_wp_error( $response ) ) {
|
225 |
$body = false;
|
226 |
-
}
|
227 |
-
|
228 |
-
$body = json_decode( $response['body'] );
|
229 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
230 |
}
|
231 |
|
232 |
-
if ( $body && is_array( $body ) && isset( $body['activated'] ) && $body['activated'] ) {
|
233 |
-
|
234 |
-
$option[$product['product_id']] = array(
|
235 |
-
'email'
|
236 |
-
'licence_key'
|
237 |
-
'licence_expires'
|
238 |
-
'message'
|
239 |
-
'activated'
|
240 |
-
'activation_limit'
|
241 |
-
'activation_remaining'
|
242 |
-
'is_membership'
|
243 |
);
|
244 |
|
245 |
/* === Check for other plugins activation === */
|
246 |
-
$options
|
247 |
-
$options[$product['product_id']] = $option[$product['product_id']];
|
248 |
|
249 |
update_option( $this->_licence_option, $options );
|
250 |
|
@@ -252,7 +262,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
252 |
YIT_Upgrade()->force_regenerate_update_transient();
|
253 |
|
254 |
/* === Licence Activation Template === */
|
255 |
-
$body['template'] = $this->show_activation_panel( $this->get_response_code_message( 200 ) );
|
256 |
}
|
257 |
|
258 |
wp_send_json( $body );
|
@@ -270,44 +280,44 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
270 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
271 |
*/
|
272 |
public function deactivate() {
|
273 |
-
$product_init = $_REQUEST['product_init'];
|
274 |
$product = $this->get_product( $product_init );
|
275 |
|
276 |
$args = array(
|
277 |
-
'email' => urlencode( sanitize_email( $_REQUEST['email'] ) ),
|
278 |
-
'licence_key' => sanitize_text_field( $_REQUEST['licence_key'] ),
|
279 |
-
'product_id' => sanitize_text_field( $product['product_id'] ),
|
280 |
-
'secret_key' => sanitize_text_field( $product['secret_key'] ),
|
281 |
'instance' => $this->get_home_url()
|
282 |
);
|
283 |
|
284 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'deactivation' ) ) );
|
285 |
-
$
|
|
|
286 |
|
287 |
if ( is_wp_error( $response ) ) {
|
288 |
$body = false;
|
289 |
-
}
|
290 |
-
|
291 |
-
$body = json_decode( $response['body'] );
|
292 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
293 |
}
|
294 |
|
295 |
-
if ( $body && is_array( $body ) && isset( $body['activated'] ) &&
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
);
|
307 |
|
308 |
/* === Check for other plugins activation === */
|
309 |
-
$options
|
310 |
-
$options[$product['product_id']] = $option[$product['product_id']];
|
311 |
|
312 |
update_option( $this->_licence_option, $options );
|
313 |
|
@@ -315,11 +325,9 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
315 |
YIT_Upgrade()->force_regenerate_update_transient();
|
316 |
|
317 |
/* === Licence Activation Template === */
|
318 |
-
$body['template'] = $this->show_activation_panel( $this->get_response_code_message( 'deactivated', array( 'instance' => $body['instance'] ) ) );
|
319 |
-
}
|
320 |
-
|
321 |
-
else {
|
322 |
-
$body['error'] = $this->get_response_code_message( $body['code'] );
|
323 |
}
|
324 |
|
325 |
wp_send_json( $body );
|
@@ -343,45 +351,45 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
343 |
$body = false;
|
344 |
$product = $this->get_product( $product_init );
|
345 |
$licence = $this->get_licence();
|
346 |
-
$product_id = $product['product_id'];
|
347 |
|
348 |
-
if( !
|
349 |
return false;
|
350 |
}
|
351 |
|
352 |
$args = array(
|
353 |
-
'email' => urlencode( $licence[$product_id]['email'] ),
|
354 |
-
'licence_key' => $licence[$product_id]['licence_key'],
|
355 |
'product_id' => $product_id,
|
356 |
-
'secret_key' => $product['secret_key'],
|
357 |
'instance' => $this->get_home_url()
|
358 |
);
|
359 |
|
360 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'check' ) ) );
|
361 |
-
$
|
|
|
362 |
|
363 |
-
if ( !
|
364 |
-
$body = json_decode( $response['body'] );
|
365 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
366 |
}
|
367 |
|
368 |
-
if ( $body && is_array( $body ) && isset( $body['success'] ) ) {
|
369 |
-
if ( $body['success'] ) {
|
370 |
|
371 |
/**
|
372 |
* Code 200 -> Licence key is valid
|
373 |
*/
|
374 |
-
$licence[ $product_id ]['status_code'] = '200';
|
375 |
-
$licence[ $product_id ]['activated'] = $body['activated'];
|
376 |
-
$licence[ $product_id ]['licence_expires'] = $body['licence_expires'];
|
377 |
-
$licence[ $product_id ]['activation_remaining'] = $body['activation_remaining'];
|
378 |
-
$licence[ $product_id ]['activation_limit'] = $body['activation_limit'];
|
379 |
-
$licence[ $product_id ]['is_membership'] = isset( $body['is_membership'] ) ? $body['is_membership'] : false;
|
380 |
-
$status
|
381 |
-
}
|
382 |
-
elseif ( isset( $body['code'] ) ) {
|
383 |
|
384 |
-
switch ( $body['code'] ) {
|
385 |
|
386 |
/**
|
387 |
* Error Code List:
|
@@ -406,17 +414,17 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
406 |
break;
|
407 |
|
408 |
case '106':
|
409 |
-
$licence[ $product_id ]['activated']
|
410 |
-
$licence[ $product_id ]['message']
|
411 |
-
$licence[ $product_id ]['status_code']
|
412 |
-
$licence[ $product_id ]['licence_expires']
|
413 |
//$licence[ $product_id ]['is_membership'] = isset( $body['is_membership'] ) ? $body['is_membership'] : false;
|
414 |
break;
|
415 |
|
416 |
case '107':
|
417 |
-
$licence[ $product_id ]['activated']
|
418 |
-
$licence[ $product_id ]['message']
|
419 |
-
$licence[ $product_id ]['status_code']
|
420 |
//$licence[ $product_id ]['is_membership'] = isset( $body['is_membership'] ) ? $body['is_membership'] : false;
|
421 |
break;
|
422 |
}
|
@@ -426,10 +434,11 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
426 |
update_option( $this->_licence_option, $licence );
|
427 |
|
428 |
/* === Update Plugin Licence Information === */
|
429 |
-
if( $regenerate_transient ) {
|
430 |
YIT_Upgrade()->force_regenerate_update_transient();
|
431 |
}
|
432 |
}
|
|
|
433 |
return $status;
|
434 |
}
|
435 |
|
@@ -442,13 +451,13 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
442 |
* @use YIT_Theme_Licence->check()
|
443 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
444 |
*/
|
445 |
-
public function check_all(){
|
446 |
foreach ( $this->_products as $init => $info ) {
|
447 |
$this->check( $init );
|
448 |
}
|
449 |
}
|
450 |
|
451 |
-
|
452 |
* Update Plugins Information
|
453 |
*
|
454 |
* Send a request to API server to check activate plugins and update the informations
|
@@ -468,8 +477,8 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
468 |
|
469 |
do_action( 'yit_licence_after_check' );
|
470 |
|
471 |
-
|
472 |
-
$response['template'] = $this->show_activation_panel();
|
473 |
wp_send_json( $response );
|
474 |
}
|
475 |
}
|
@@ -489,9 +498,9 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
489 |
if ( $this->is_ajax() ) {
|
490 |
ob_start();
|
491 |
require_once( $path . '/licence/templates/panel/activation/activation-panel.php' );
|
|
|
492 |
return ob_get_clean();
|
493 |
-
}
|
494 |
-
else {
|
495 |
require_once( $path . '/licence/templates/panel/activation/activation-panel.php' );
|
496 |
}
|
497 |
}
|
@@ -506,14 +515,14 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
506 |
*/
|
507 |
public function get_activated_products() {
|
508 |
$activated_products = array();
|
509 |
-
$licence
|
510 |
|
511 |
if ( is_array( $licence ) ) {
|
512 |
foreach ( $this->_products as $init => $info ) {
|
513 |
-
if ( in_array( $info['product_id'], array_keys( $licence ) ) && isset( $licence[$info['product_id']]['activated'] ) && $licence[$info['product_id']]['activated'] ) {
|
514 |
-
$product[$init]
|
515 |
-
$product[$init]['licence'] = $licence[$info['product_id']];
|
516 |
-
$activated_products[$init]
|
517 |
}
|
518 |
}
|
519 |
}
|
@@ -543,30 +552,31 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
543 |
*/
|
544 |
public function get_no_active_licence_key() {
|
545 |
$unactive_products = $this->get_to_active_products();
|
546 |
-
$licence
|
547 |
-
$licence_key
|
548 |
|
549 |
/**
|
550 |
* Remove banned licence key
|
551 |
*/
|
552 |
foreach ( $unactive_products as $init => $info ) {
|
553 |
-
$product_id = $unactive_products[$init]['product_id'];
|
554 |
-
if ( isset( $licence[$product_id]['activated'] ) &&
|
555 |
-
$status_code = $licence[$product_id]['status_code'];
|
556 |
|
557 |
switch ( $status_code ) {
|
558 |
case '106':
|
559 |
-
$licence_key[$status_code][$init]
|
560 |
-
$licence_key[$status_code][$init]['licence'] = $licence[$product_id];
|
561 |
break;
|
562 |
|
563 |
case '107':
|
564 |
-
$licence_key[$status_code][$init]
|
565 |
-
$licence_key[$status_code][$init]['licence'] = $licence[$product_id];
|
566 |
break;
|
567 |
}
|
568 |
}
|
569 |
}
|
|
|
570 |
return $licence_key;
|
571 |
}
|
572 |
|
@@ -581,10 +591,10 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
581 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
582 |
*/
|
583 |
public function get_product( $init ) {
|
584 |
-
return isset( $this->_products[$init] ) ? $this->_products[$init] : false;
|
585 |
}
|
586 |
|
587 |
-
|
588 |
* Get product product id information
|
589 |
*
|
590 |
* @param $product_init | product init file
|
@@ -595,7 +605,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
595 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
596 |
*/
|
597 |
public function get_product_id( $init ) {
|
598 |
-
return isset( $this->_products[$init]['product_id'] ) ? $this->_products[$init]['product_id'] : false;
|
599 |
}
|
600 |
|
601 |
/**
|
@@ -609,7 +619,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
609 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
610 |
*/
|
611 |
public function get_renewing_uri( $licence_key ) {
|
612 |
-
return !
|
613 |
}
|
614 |
|
615 |
/**
|
@@ -635,7 +645,7 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
635 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
636 |
*/
|
637 |
public function get_licence_activation_page_url() {
|
638 |
-
return esc_url( add_query_arg( array( 'page' => $this->_settings['page'] ), admin_url( 'admin.php' ) ) );
|
639 |
}
|
640 |
|
641 |
|
@@ -665,20 +675,20 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
665 |
extract( $args );
|
666 |
|
667 |
$messages = array(
|
668 |
-
'100'
|
669 |
-
'101'
|
670 |
-
'102'
|
671 |
-
'103'
|
672 |
-
'104'
|
673 |
-
'105'
|
674 |
-
'106'
|
675 |
-
'107'
|
676 |
-
'108'
|
677 |
-
'200'
|
678 |
-
'deactivated'
|
679 |
);
|
680 |
|
681 |
-
return isset( $messages[$code] ) ? $messages[$code] : false;
|
682 |
}
|
683 |
|
684 |
/**
|
@@ -691,20 +701,21 @@ if ( ! class_exists( 'YIT_Licence' ) ) {
|
|
691 |
* @since 2.2
|
692 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
693 |
*/
|
694 |
-
public function display_product_name( $product_name ){
|
695 |
return str_replace( array( 'for WooCommerce', 'YITH', 'WooCommerce', 'Premium', 'Theme', 'WordPress' ), '', $product_name );
|
696 |
}
|
697 |
|
698 |
-
public function get_number_of_membership_products(){
|
699 |
-
$activated_products
|
700 |
$num_members_products_activate = 0;
|
701 |
-
foreach( $activated_products as $activated_product ){
|
702 |
-
if( isset( $activated_product['licence']['is_membership'] ) && $activated_product['licence']['is_membership'] ){
|
703 |
$num_members_products_activate++;
|
704 |
}
|
705 |
}
|
|
|
706 |
return $num_members_products_activate;
|
707 |
}
|
708 |
|
709 |
}
|
710 |
-
}
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
+
if ( !class_exists( 'YIT_Licence' ) ) {
|
16 |
/**
|
17 |
* YIT Licence Panel
|
18 |
*
|
23 |
* @since 1.0
|
24 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
25 |
*/
|
|
|
26 |
abstract class YIT_Licence {
|
27 |
|
28 |
/**
|
43 |
*/
|
44 |
protected $_licence_option = 'yit_products_licence_activation';
|
45 |
|
46 |
+
/**
|
47 |
* @var string The yithemes api uri
|
48 |
* @since 1.0
|
49 |
*/
|
62 |
*/
|
63 |
public $show_extra_info = false;
|
64 |
|
65 |
+
/**
|
66 |
* @var string check for show extra info
|
67 |
* @since 1.0
|
68 |
*/
|
83 |
|
84 |
/* Style adn Script */
|
85 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
86 |
+
if ( $is_debug_enabled ) {
|
87 |
//show extra info and renew button in debug mode
|
88 |
$this->show_extra_info = $this->show_renew_button = true;
|
89 |
+
} else {
|
90 |
+
$this->show_extra_info = defined( 'YIT_SHOW_EXTRA_LICENCE_INFO' ) && YIT_SHOW_EXTRA_LICENCE_INFO;
|
91 |
+
$this->show_renew_button = !( defined( 'YIT_HIDE_LICENCE_RENEW_BUTTON' ) && YIT_HIDE_LICENCE_RENEW_BUTTON );
|
|
|
|
|
92 |
}
|
93 |
|
94 |
/* Update Licence Information */
|
127 |
/**
|
128 |
* Get The home url without protocol
|
129 |
*
|
130 |
+
* @return string the home url
|
131 |
*
|
132 |
* @since 1.0
|
133 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
134 |
*/
|
135 |
public function get_home_url() {
|
136 |
+
$home_url = home_url();
|
137 |
+
$schemes = array( 'https://', 'http://', 'www.' );
|
138 |
|
139 |
+
foreach ( $schemes as $scheme ) {
|
140 |
$home_url = str_replace( $scheme, '', $home_url );
|
141 |
}
|
142 |
|
143 |
+
if ( strpos( $home_url, '?' ) !== false ) {
|
144 |
+
list( $base, $query ) = explode( '?', $home_url, 2 );
|
145 |
+
$home_url = $base;
|
146 |
+
}
|
147 |
+
|
148 |
+
$home_url = untrailingslashit( $home_url );
|
149 |
+
|
150 |
+
return $home_url;
|
151 |
}
|
152 |
|
153 |
/**
|
162 |
return defined( 'DOING_AJAX' ) && DOING_AJAX ? true : false;
|
163 |
}
|
164 |
|
165 |
+
/**
|
166 |
* Admin Enqueue Scripts
|
167 |
*
|
168 |
* @return void
|
170 |
* @since 1.0
|
171 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
172 |
*/
|
173 |
+
public function admin_enqueue_scripts() {
|
174 |
|
175 |
/**
|
176 |
* Support to YIT Framework < 2.0
|
177 |
*/
|
178 |
+
$filename = function_exists( 'yit_load_js_file' ) ? yit_load_js_file( 'yit-licence.js' ) : 'yit-licence.js';
|
179 |
+
$script_path = defined( 'YIT_CORE_PLUGIN_URL' ) ? YIT_CORE_PLUGIN_URL : get_template_directory_uri() . '/core/plugin-fw';
|
180 |
+
$style_path = defined( 'YIT_CORE_PLUGIN_URL' ) ? YIT_CORE_PLUGIN_URL : get_template_directory_uri() . '/core/plugin-fw';
|
181 |
|
182 |
+
wp_register_script( 'yit-licence', $script_path . '/licence/assets/js/' . $filename, array( 'jquery' ), '1.0.0', true );
|
183 |
+
wp_register_style( 'yit-theme-licence', $style_path . '/licence/assets/css/yit-licence.css' );
|
184 |
|
185 |
/* Localize Scripts */
|
186 |
wp_localize_script( 'yit-licence', 'licence_message', array(
|
187 |
+
'error' => sprintf( _x( '%s field cannot be empty', '%s = field name', 'yith-plugin-fw' ), '%field%' ), // sprintf must be used to avoid errors with '%field%' string in translation in .po file
|
188 |
+
'errors' => sprintf( __( '%s and %s fields cannot be empty', 'yith-plugin-fw' ), '%field_1%', '%field_2%' ),
|
189 |
+
'server' => __( 'Unable to contact the remote server, please try again later. Thanks!', 'yith-plugin-fw' ),
|
190 |
+
'email' => __( 'Email', 'yith-plugin-fw' ),
|
191 |
+
'license_key' => __( 'License Key', 'yith-plugin-fw' ),
|
192 |
+
'are_you_sure' => __( 'Are you sure you want to deactivate the license for current site?', 'yith-plugin-fw' )
|
193 |
+
)
|
194 |
);
|
195 |
|
196 |
wp_localize_script( 'yit-licence', 'script_info', array(
|
197 |
+
'is_debug' => defined( 'YIT_LICENCE_DEBUG' ) && YIT_LICENCE_DEBUG
|
198 |
+
)
|
199 |
);
|
200 |
+
|
201 |
+
/* Enqueue Scripts only in Licence Activation page */
|
202 |
+
if ( strpos( get_current_screen()->id, 'yith_plugins_activation' ) !== false ) {
|
203 |
+
wp_enqueue_script( 'yit-licence' );
|
204 |
+
wp_enqueue_style( 'yit-theme-licence' );
|
205 |
+
}
|
206 |
}
|
207 |
|
208 |
/**
|
217 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
218 |
*/
|
219 |
public function activate() {
|
220 |
+
$product_init = $_REQUEST[ 'product_init' ];
|
221 |
$product = $this->get_product( $product_init );
|
222 |
|
223 |
$args = array(
|
224 |
+
'email' => urlencode( sanitize_email( $_REQUEST[ 'email' ] ) ),
|
225 |
+
'licence_key' => sanitize_text_field( $_REQUEST[ 'licence_key' ] ),
|
226 |
+
'product_id' => sanitize_text_field( $product[ 'product_id' ] ),
|
227 |
+
'secret_key' => sanitize_text_field( $product[ 'secret_key' ] ),
|
228 |
'instance' => $this->get_home_url()
|
229 |
);
|
230 |
|
231 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'activation' ) ) );
|
232 |
+
$timeout = apply_filters( 'yith_plugin_fw_licence_timeout', 30, __FUNCTION__ );
|
233 |
+
$response = wp_remote_get( $api_uri, array( 'timeout' => $timeout ) );
|
234 |
|
235 |
if ( is_wp_error( $response ) ) {
|
236 |
$body = false;
|
237 |
+
} else {
|
238 |
+
$body = json_decode( $response[ 'body' ] );
|
|
|
239 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
240 |
}
|
241 |
|
242 |
+
if ( $body && is_array( $body ) && isset( $body[ 'activated' ] ) && $body[ 'activated' ] ) {
|
243 |
+
|
244 |
+
$option[ $product[ 'product_id' ] ] = array(
|
245 |
+
'email' => urldecode( $args[ 'email' ] ),
|
246 |
+
'licence_key' => $args[ 'licence_key' ],
|
247 |
+
'licence_expires' => $body[ 'licence_expires' ],
|
248 |
+
'message' => $body[ 'message' ],
|
249 |
+
'activated' => true,
|
250 |
+
'activation_limit' => $body[ 'activation_limit' ],
|
251 |
+
'activation_remaining' => $body[ 'activation_remaining' ],
|
252 |
+
'is_membership' => isset( $body[ 'is_membership' ] ) ? $body[ 'is_membership' ] : false,
|
253 |
);
|
254 |
|
255 |
/* === Check for other plugins activation === */
|
256 |
+
$options = $this->get_licence();
|
257 |
+
$options[ $product[ 'product_id' ] ] = $option[ $product[ 'product_id' ] ];
|
258 |
|
259 |
update_option( $this->_licence_option, $options );
|
260 |
|
262 |
YIT_Upgrade()->force_regenerate_update_transient();
|
263 |
|
264 |
/* === Licence Activation Template === */
|
265 |
+
$body[ 'template' ] = $this->show_activation_panel( $this->get_response_code_message( 200 ) );
|
266 |
}
|
267 |
|
268 |
wp_send_json( $body );
|
280 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
281 |
*/
|
282 |
public function deactivate() {
|
283 |
+
$product_init = $_REQUEST[ 'product_init' ];
|
284 |
$product = $this->get_product( $product_init );
|
285 |
|
286 |
$args = array(
|
287 |
+
'email' => urlencode( sanitize_email( $_REQUEST[ 'email' ] ) ),
|
288 |
+
'licence_key' => sanitize_text_field( $_REQUEST[ 'licence_key' ] ),
|
289 |
+
'product_id' => sanitize_text_field( $product[ 'product_id' ] ),
|
290 |
+
'secret_key' => sanitize_text_field( $product[ 'secret_key' ] ),
|
291 |
'instance' => $this->get_home_url()
|
292 |
);
|
293 |
|
294 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'deactivation' ) ) );
|
295 |
+
$timeout = apply_filters( 'yith_plugin_fw_licence_timeout', 30, __FUNCTION__ );
|
296 |
+
$response = wp_remote_get( $api_uri, array( 'timeout' => $timeout ) );
|
297 |
|
298 |
if ( is_wp_error( $response ) ) {
|
299 |
$body = false;
|
300 |
+
} else {
|
301 |
+
$body = json_decode( $response[ 'body' ] );
|
|
|
302 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
303 |
}
|
304 |
|
305 |
+
if ( $body && is_array( $body ) && isset( $body[ 'activated' ] ) && !$body[ 'activated' ] && !isset( $body[ 'error' ] ) ) {
|
306 |
+
|
307 |
+
$option[ $product[ 'product_id' ] ] = array(
|
308 |
+
'activated' => false,
|
309 |
+
'email' => urldecode( $args[ 'email' ] ),
|
310 |
+
'licence_key' => $args[ 'licence_key' ],
|
311 |
+
'licence_expires' => $body[ 'licence_expires' ],
|
312 |
+
'message' => $body[ 'message' ],
|
313 |
+
'activation_limit' => $body[ 'activation_limit' ],
|
314 |
+
'activation_remaining' => $body[ 'activation_remaining' ],
|
315 |
+
'is_membership' => isset( $body[ 'is_membership' ] ) ? $body[ 'is_membership' ] : false,
|
316 |
);
|
317 |
|
318 |
/* === Check for other plugins activation === */
|
319 |
+
$options = $this->get_licence();
|
320 |
+
$options[ $product[ 'product_id' ] ] = $option[ $product[ 'product_id' ] ];
|
321 |
|
322 |
update_option( $this->_licence_option, $options );
|
323 |
|
325 |
YIT_Upgrade()->force_regenerate_update_transient();
|
326 |
|
327 |
/* === Licence Activation Template === */
|
328 |
+
$body[ 'template' ] = $this->show_activation_panel( $this->get_response_code_message( 'deactivated', array( 'instance' => $body[ 'instance' ] ) ) );
|
329 |
+
} else {
|
330 |
+
$body[ 'error' ] = $this->get_response_code_message( $body[ 'code' ] );
|
|
|
|
|
331 |
}
|
332 |
|
333 |
wp_send_json( $body );
|
351 |
$body = false;
|
352 |
$product = $this->get_product( $product_init );
|
353 |
$licence = $this->get_licence();
|
354 |
+
$product_id = $product[ 'product_id' ];
|
355 |
|
356 |
+
if ( !isset( $licence[ $product_id ] ) ) {
|
357 |
return false;
|
358 |
}
|
359 |
|
360 |
$args = array(
|
361 |
+
'email' => urlencode( $licence[ $product_id ][ 'email' ] ),
|
362 |
+
'licence_key' => $licence[ $product_id ][ 'licence_key' ],
|
363 |
'product_id' => $product_id,
|
364 |
+
'secret_key' => $product[ 'secret_key' ],
|
365 |
'instance' => $this->get_home_url()
|
366 |
);
|
367 |
|
368 |
$api_uri = esc_url_raw( add_query_arg( $args, $this->get_api_uri( 'check' ) ) );
|
369 |
+
$timeout = apply_filters( 'yith_plugin_fw_licence_timeout', 30, __FUNCTION__ );
|
370 |
+
$response = wp_remote_get( $api_uri, array( 'timeout' => $timeout ) );
|
371 |
|
372 |
+
if ( !is_wp_error( $response ) ) {
|
373 |
+
$body = json_decode( $response[ 'body' ] );
|
374 |
$body = is_object( $body ) ? get_object_vars( $body ) : false;
|
375 |
}
|
376 |
|
377 |
+
if ( $body && is_array( $body ) && isset( $body[ 'success' ] ) ) {
|
378 |
+
if ( $body[ 'success' ] ) {
|
379 |
|
380 |
/**
|
381 |
* Code 200 -> Licence key is valid
|
382 |
*/
|
383 |
+
$licence[ $product_id ][ 'status_code' ] = '200';
|
384 |
+
$licence[ $product_id ][ 'activated' ] = $body[ 'activated' ];
|
385 |
+
$licence[ $product_id ][ 'licence_expires' ] = $body[ 'licence_expires' ];
|
386 |
+
$licence[ $product_id ][ 'activation_remaining' ] = $body[ 'activation_remaining' ];
|
387 |
+
$licence[ $product_id ][ 'activation_limit' ] = $body[ 'activation_limit' ];
|
388 |
+
$licence[ $product_id ][ 'is_membership' ] = isset( $body[ 'is_membership' ] ) ? $body[ 'is_membership' ] : false;
|
389 |
+
$status = (bool) $body[ 'activated' ];
|
390 |
+
} elseif ( isset( $body[ 'code' ] ) ) {
|
|
|
391 |
|
392 |
+
switch ( $body[ 'code' ] ) {
|
393 |
|
394 |
/**
|
395 |
* Error Code List:
|
414 |
break;
|
415 |
|
416 |
case '106':
|
417 |
+
$licence[ $product_id ][ 'activated' ] = false;
|
418 |
+
$licence[ $product_id ][ 'message' ] = $body[ 'error' ];
|
419 |
+
$licence[ $product_id ][ 'status_code' ] = $body[ 'code' ];
|
420 |
+
$licence[ $product_id ][ 'licence_expires' ] = $body[ 'licence_expires' ];
|
421 |
//$licence[ $product_id ]['is_membership'] = isset( $body['is_membership'] ) ? $body['is_membership'] : false;
|
422 |
break;
|
423 |
|
424 |
case '107':
|
425 |
+
$licence[ $product_id ][ 'activated' ] = false;
|
426 |
+
$licence[ $product_id ][ 'message' ] = $body[ 'error' ];
|
427 |
+
$licence[ $product_id ][ 'status_code' ] = $body[ 'code' ];
|
428 |
//$licence[ $product_id ]['is_membership'] = isset( $body['is_membership'] ) ? $body['is_membership'] : false;
|
429 |
break;
|
430 |
}
|
434 |
update_option( $this->_licence_option, $licence );
|
435 |
|
436 |
/* === Update Plugin Licence Information === */
|
437 |
+
if ( $regenerate_transient ) {
|
438 |
YIT_Upgrade()->force_regenerate_update_transient();
|
439 |
}
|
440 |
}
|
441 |
+
|
442 |
return $status;
|
443 |
}
|
444 |
|
451 |
* @use YIT_Theme_Licence->check()
|
452 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
453 |
*/
|
454 |
+
public function check_all() {
|
455 |
foreach ( $this->_products as $init => $info ) {
|
456 |
$this->check( $init );
|
457 |
}
|
458 |
}
|
459 |
|
460 |
+
/**
|
461 |
* Update Plugins Information
|
462 |
*
|
463 |
* Send a request to API server to check activate plugins and update the informations
|
477 |
|
478 |
do_action( 'yit_licence_after_check' );
|
479 |
|
480 |
+
if ( $this->is_ajax() ) {
|
481 |
+
$response[ 'template' ] = $this->show_activation_panel();
|
482 |
wp_send_json( $response );
|
483 |
}
|
484 |
}
|
498 |
if ( $this->is_ajax() ) {
|
499 |
ob_start();
|
500 |
require_once( $path . '/licence/templates/panel/activation/activation-panel.php' );
|
501 |
+
|
502 |
return ob_get_clean();
|
503 |
+
} else {
|
|
|
504 |
require_once( $path . '/licence/templates/panel/activation/activation-panel.php' );
|
505 |
}
|
506 |
}
|
515 |
*/
|
516 |
public function get_activated_products() {
|
517 |
$activated_products = array();
|
518 |
+
$licence = $this->get_licence();
|
519 |
|
520 |
if ( is_array( $licence ) ) {
|
521 |
foreach ( $this->_products as $init => $info ) {
|
522 |
+
if ( in_array( $info[ 'product_id' ], array_keys( $licence ) ) && isset( $licence[ $info[ 'product_id' ] ][ 'activated' ] ) && $licence[ $info[ 'product_id' ] ][ 'activated' ] ) {
|
523 |
+
$product[ $init ] = $this->_products[ $init ];
|
524 |
+
$product[ $init ][ 'licence' ] = $licence[ $info[ 'product_id' ] ];
|
525 |
+
$activated_products[ $init ] = $product[ $init ];
|
526 |
}
|
527 |
}
|
528 |
}
|
552 |
*/
|
553 |
public function get_no_active_licence_key() {
|
554 |
$unactive_products = $this->get_to_active_products();
|
555 |
+
$licence = $this->get_licence();
|
556 |
+
$licence_key = array();
|
557 |
|
558 |
/**
|
559 |
* Remove banned licence key
|
560 |
*/
|
561 |
foreach ( $unactive_products as $init => $info ) {
|
562 |
+
$product_id = $unactive_products[ $init ][ 'product_id' ];
|
563 |
+
if ( isset( $licence[ $product_id ][ 'activated' ] ) && !$licence[ $product_id ][ 'activated' ] && isset( $licence[ $product_id ][ 'status_code' ] ) ) {
|
564 |
+
$status_code = $licence[ $product_id ][ 'status_code' ];
|
565 |
|
566 |
switch ( $status_code ) {
|
567 |
case '106':
|
568 |
+
$licence_key[ $status_code ][ $init ] = $unactive_products[ $init ];
|
569 |
+
$licence_key[ $status_code ][ $init ][ 'licence' ] = $licence[ $product_id ];
|
570 |
break;
|
571 |
|
572 |
case '107':
|
573 |
+
$licence_key[ $status_code ][ $init ] = $unactive_products[ $init ];
|
574 |
+
$licence_key[ $status_code ][ $init ][ 'licence' ] = $licence[ $product_id ];
|
575 |
break;
|
576 |
}
|
577 |
}
|
578 |
}
|
579 |
+
|
580 |
return $licence_key;
|
581 |
}
|
582 |
|
591 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
592 |
*/
|
593 |
public function get_product( $init ) {
|
594 |
+
return isset( $this->_products[ $init ] ) ? $this->_products[ $init ] : false;
|
595 |
}
|
596 |
|
597 |
+
/**
|
598 |
* Get product product id information
|
599 |
*
|
600 |
* @param $product_init | product init file
|
605 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
606 |
*/
|
607 |
public function get_product_id( $init ) {
|
608 |
+
return isset( $this->_products[ $init ][ 'product_id' ] ) ? $this->_products[ $init ][ 'product_id' ] : false;
|
609 |
}
|
610 |
|
611 |
/**
|
619 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
620 |
*/
|
621 |
public function get_renewing_uri( $licence_key ) {
|
622 |
+
return !empty( $licence_key ) ? str_replace( 'www.', '', $this->_api_uri ) . '?renewing_key=' . $licence_key : false;
|
623 |
}
|
624 |
|
625 |
/**
|
645 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
646 |
*/
|
647 |
public function get_licence_activation_page_url() {
|
648 |
+
return esc_url( add_query_arg( array( 'page' => $this->_settings[ 'page' ] ), admin_url( 'admin.php' ) ) );
|
649 |
}
|
650 |
|
651 |
|
675 |
extract( $args );
|
676 |
|
677 |
$messages = array(
|
678 |
+
'100' => __( 'Invalid Request', 'yith-plugin-fw' ),
|
679 |
+
'101' => __( 'Invalid license key', 'yith-plugin-fw' ),
|
680 |
+
'102' => __( 'Software has been deactivated', 'yith-plugin-fw' ),
|
681 |
+
'103' => __( 'Maximum number of activations exceeded', 'yith-plugin-fw' ),
|
682 |
+
'104' => __( 'Invalid instance ID', 'yith-plugin-fw' ),
|
683 |
+
'105' => __( 'Invalid security key', 'yith-plugin-fw' ),
|
684 |
+
'106' => __( 'License key has expired', 'yith-plugin-fw' ),
|
685 |
+
'107' => __( 'License key has been banned', 'yith-plugin-fw' ),
|
686 |
+
'108' => __( 'Current product is not included in your YITH Club Subscription key', 'yith-plugin-fw' ),
|
687 |
+
'200' => sprintf( '<strong>%s</strong>! %s', __( 'Great', 'yith-plugin-fw' ), __( 'License successfully activated', 'yith-plugin-fw' ) ),
|
688 |
+
'deactivated' => sprintf( '%s <strong>%s</strong>', __( 'License key deactivated for website', 'woocommerce-software-add-on' ), isset( $instance ) ? $instance : '' )
|
689 |
);
|
690 |
|
691 |
+
return isset( $messages[ $code ] ) ? $messages[ $code ] : false;
|
692 |
}
|
693 |
|
694 |
/**
|
701 |
* @since 2.2
|
702 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
703 |
*/
|
704 |
+
public function display_product_name( $product_name ) {
|
705 |
return str_replace( array( 'for WooCommerce', 'YITH', 'WooCommerce', 'Premium', 'Theme', 'WordPress' ), '', $product_name );
|
706 |
}
|
707 |
|
708 |
+
public function get_number_of_membership_products() {
|
709 |
+
$activated_products = $this->get_activated_products();
|
710 |
$num_members_products_activate = 0;
|
711 |
+
foreach ( $activated_products as $activated_product ) {
|
712 |
+
if ( isset( $activated_product[ 'licence' ][ 'is_membership' ] ) && $activated_product[ 'licence' ][ 'is_membership' ] ) {
|
713 |
$num_members_products_activate++;
|
714 |
}
|
715 |
}
|
716 |
+
|
717 |
return $num_members_products_activate;
|
718 |
}
|
719 |
|
720 |
}
|
721 |
+
}
|
plugin-fw/licence/lib/yit-plugin-licence.php
CHANGED
@@ -75,6 +75,42 @@ if ( !class_exists( 'YIT_Plugin_Licence' ) ) {
|
|
75 |
add_action( "wp_ajax_yith_deactivate-{$this->_product_type}", array( $this, 'deactivate' ) );
|
76 |
add_action( "wp_ajax_yith_update_licence_information-{$this->_product_type}", array( $this, 'update_licence_information' ) );
|
77 |
add_action( 'yit_licence_after_check', array( $this, 'licence_after_check' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
}
|
79 |
|
80 |
|
@@ -109,11 +145,11 @@ if ( !class_exists( 'YIT_Plugin_Licence' ) ) {
|
|
109 |
*/
|
110 |
public function add_submenu_page() {
|
111 |
add_submenu_page(
|
112 |
-
$this->_settings['parent_page'],
|
113 |
-
$this->_settings['page_title'],
|
114 |
-
$this->_settings['menu_title'],
|
115 |
-
$this->_settings['capability'],
|
116 |
-
$this->_settings['page'],
|
117 |
array( $this, 'show_activation_panel' )
|
118 |
);
|
119 |
}
|
@@ -122,8 +158,8 @@ if ( !class_exists( 'YIT_Plugin_Licence' ) ) {
|
|
122 |
* Premium plugin registration
|
123 |
*
|
124 |
* @param $plugin_init | string | The plugin init file
|
125 |
-
* @param $secret_key
|
126 |
-
* @param $product_id
|
127 |
*
|
128 |
* @return void
|
129 |
*
|
@@ -135,10 +171,10 @@ if ( !class_exists( 'YIT_Plugin_Licence' ) ) {
|
|
135 |
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
136 |
}
|
137 |
|
138 |
-
$plugins
|
139 |
-
$plugins[$plugin_init]['secret_key'] = $secret_key;
|
140 |
-
$plugins[$plugin_init]['product_id'] = $product_id;
|
141 |
-
$this->_products[$plugin_init]
|
142 |
}
|
143 |
|
144 |
public function get_product_type() {
|
75 |
add_action( "wp_ajax_yith_deactivate-{$this->_product_type}", array( $this, 'deactivate' ) );
|
76 |
add_action( "wp_ajax_yith_update_licence_information-{$this->_product_type}", array( $this, 'update_licence_information' ) );
|
77 |
add_action( 'yit_licence_after_check', array( $this, 'licence_after_check' ) );
|
78 |
+
|
79 |
+
/** @since 3.0.0 */
|
80 |
+
add_action( 'admin_notices', array( $this, 'activate_license_notice' ), 15 );
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* print notice with products to activate
|
85 |
+
*
|
86 |
+
* @since 3.0.0
|
87 |
+
*/
|
88 |
+
public function activate_license_notice() {
|
89 |
+
$show_license_notice = current_user_can( 'update_plugins' ) && ( !isset( $_GET[ 'page' ] ) || 'yith_plugins_activation' !== $_GET[ 'page' ] );
|
90 |
+
if ( apply_filters( 'yith_plugin_fw_show_activate_license_notice', $show_license_notice ) ) {
|
91 |
+
$products_to_activate = $this->get_to_active_products();
|
92 |
+
if ( !!$products_to_activate ) {
|
93 |
+
$product_names = array();
|
94 |
+
foreach ( $products_to_activate as $init => $product ) {
|
95 |
+
if ( !empty( $product[ 'Name' ] ) )
|
96 |
+
$product_names[] = $product[ 'Name' ];
|
97 |
+
}
|
98 |
+
|
99 |
+
if ( !!$product_names ) {
|
100 |
+
$start = '<span style="display:inline-block; padding:3px 10px; margin: 0 10px 10px 0; background: #f1f1f1; border-radius: 4px;">';
|
101 |
+
$end = '</span>';
|
102 |
+
$product_list = '<div>' . $start . implode( $end . $start, $product_names ) . $end . '</div>';
|
103 |
+
$activation_url = add_query_arg( array( 'page' => 'yith_plugins_activation' ), admin_url( 'admin.php' ) );
|
104 |
+
?>
|
105 |
+
<div class="notice notice-error">
|
106 |
+
<p><strong>Warning!</strong> You didn't set license key for the following products:
|
107 |
+
<?php echo $product_list ?>
|
108 |
+
which means you're missing out on updates and support. <a href='<?php echo $activation_url ?>'>Enter your license key</a></p>
|
109 |
+
</div>
|
110 |
+
<?php
|
111 |
+
}
|
112 |
+
}
|
113 |
+
}
|
114 |
}
|
115 |
|
116 |
|
145 |
*/
|
146 |
public function add_submenu_page() {
|
147 |
add_submenu_page(
|
148 |
+
$this->_settings[ 'parent_page' ],
|
149 |
+
$this->_settings[ 'page_title' ],
|
150 |
+
$this->_settings[ 'menu_title' ],
|
151 |
+
$this->_settings[ 'capability' ],
|
152 |
+
$this->_settings[ 'page' ],
|
153 |
array( $this, 'show_activation_panel' )
|
154 |
);
|
155 |
}
|
158 |
* Premium plugin registration
|
159 |
*
|
160 |
* @param $plugin_init | string | The plugin init file
|
161 |
+
* @param $secret_key | string | The product secret key
|
162 |
+
* @param $product_id | string | The plugin slug (product_id)
|
163 |
*
|
164 |
* @return void
|
165 |
*
|
171 |
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
172 |
}
|
173 |
|
174 |
+
$plugins = get_plugins();
|
175 |
+
$plugins[ $plugin_init ][ 'secret_key' ] = $secret_key;
|
176 |
+
$plugins[ $plugin_init ][ 'product_id' ] = $product_id;
|
177 |
+
$this->_products[ $plugin_init ] = $plugins[ $plugin_init ];
|
178 |
}
|
179 |
|
180 |
public function get_product_type() {
|
plugin-fw/templates/fields/ajax-posts.php
ADDED
@@ -0,0 +1,111 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*
|
12 |
+
* [Important Note] the stored value is:
|
13 |
+
* - array if WooCommerce version >= 3.0.0
|
14 |
+
* - string (comma-separated) otherwise
|
15 |
+
*/
|
16 |
+
|
17 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
18 |
+
|
19 |
+
wp_enqueue_script( 'yith-enhanced-select' );
|
20 |
+
wp_enqueue_style( 'woocommerce_admin_styles' );
|
21 |
+
|
22 |
+
$default_field = array(
|
23 |
+
'id' => '',
|
24 |
+
'name' => '',
|
25 |
+
'class' => 'yith-post-search',
|
26 |
+
'no_value' => false,
|
27 |
+
'multiple' => false,
|
28 |
+
'data' => array(),
|
29 |
+
'style' => 'width:400px',
|
30 |
+
'value' => ''
|
31 |
+
);
|
32 |
+
|
33 |
+
foreach ( $default_field as $field_key => $field_value ) {
|
34 |
+
if ( empty( $field[ $field_key ] ) ) {
|
35 |
+
$field[ $field_key ] = $field_value;
|
36 |
+
}
|
37 |
+
}
|
38 |
+
unset( $field_key );
|
39 |
+
unset( $field_value );
|
40 |
+
extract( $field );
|
41 |
+
/**
|
42 |
+
* @var string $id
|
43 |
+
* @var string $class
|
44 |
+
* @var bool $no_value
|
45 |
+
* @var bool $multiple
|
46 |
+
* @var array $data
|
47 |
+
* @var string $name
|
48 |
+
* @var string $style
|
49 |
+
* @var string|array $value
|
50 |
+
*/
|
51 |
+
|
52 |
+
|
53 |
+
if ( $no_value )
|
54 |
+
$value = array();
|
55 |
+
|
56 |
+
$default_data = array(
|
57 |
+
'action' => 'yith_plugin_fw_json_search_posts',
|
58 |
+
'placeholder' => __( 'Search Posts', 'yith-plugin-fw' ),
|
59 |
+
'allow_clear' => false,
|
60 |
+
);
|
61 |
+
$data = wp_parse_args( $data, $default_data );
|
62 |
+
$show_id = isset( $data[ 'show_id' ] ) && $data[ 'show_id' ];
|
63 |
+
|
64 |
+
// separate select2 needed data and other data
|
65 |
+
$select2_custom_attributes = array();
|
66 |
+
$select2_data = array();
|
67 |
+
$select2_data_keys = array( 'placeholder', 'allow_clear', 'action' );
|
68 |
+
foreach ( $data as $d_key => $d_value ) {
|
69 |
+
if ( in_array( $d_key, $select2_data_keys ) ) {
|
70 |
+
$select2_data[ $d_key ] = $d_value;
|
71 |
+
} else {
|
72 |
+
$select2_custom_attributes[ 'data-' . $d_key ] = $d_value;
|
73 |
+
}
|
74 |
+
}
|
75 |
+
|
76 |
+
// populate data-selected by value
|
77 |
+
$data_selected = array();
|
78 |
+
if ( !empty( $value ) ) {
|
79 |
+
if ( $multiple ) {
|
80 |
+
$value = is_array( $value ) ? $value : explode( ',', $value );
|
81 |
+
foreach ( $value as $post_id ) {
|
82 |
+
$data_selected[ $post_id ] = get_the_title( $post_id ) . ( $show_id ? " (#{$post_id})" : '' );
|
83 |
+
}
|
84 |
+
} else {
|
85 |
+
$post_id = absint( $value );
|
86 |
+
$data_selected[ $post_id ] = get_the_title( $post_id ) . ( $show_id ? " (#{$post_id})" : '' );
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
// parse $value to string to prevent issue with wc2.6
|
91 |
+
$value = is_array( $value ) ? implode( ',', $value ) : $value;
|
92 |
+
?>
|
93 |
+
<div class="yith-plugin-fw-select2-wrapper">
|
94 |
+
<?php
|
95 |
+
if ( function_exists( 'yit_add_select2_fields' ) ) {
|
96 |
+
yit_add_select2_fields( array(
|
97 |
+
'id' => $id,
|
98 |
+
'name' => $name,
|
99 |
+
'class' => $class,
|
100 |
+
'data-multiple' => $multiple,
|
101 |
+
'data-placeholder' => $select2_data[ 'placeholder' ],
|
102 |
+
'data-allow_clear' => $select2_data[ 'allow_clear' ],
|
103 |
+
'data-action' => $select2_data[ 'action' ],
|
104 |
+
'custom-attributes' => $select2_custom_attributes,
|
105 |
+
'style' => $style,
|
106 |
+
'value' => $value,
|
107 |
+
'data-selected' => $data_selected,
|
108 |
+
) );
|
109 |
+
}
|
110 |
+
?>
|
111 |
+
</div>
|
plugin-fw/templates/fields/ajax-products.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
$field[ 'type' ] = 'ajax-posts';
|
14 |
+
$field_data = array(
|
15 |
+
'post_type' => 'product',
|
16 |
+
'placeholder' => __( 'Search Product', 'yith-plugin-fw' ),
|
17 |
+
'action' => 'yith_plugin_fw_json_search_products',
|
18 |
+
);
|
19 |
+
if ( isset( $field[ 'data' ] ) )
|
20 |
+
$field_data = wp_parse_args( $field[ 'data' ], $field_data );
|
21 |
+
|
22 |
+
$field[ 'data' ] = $field_data;
|
23 |
+
|
24 |
+
yith_plugin_fw_get_field( $field, true );
|
plugin-fw/templates/fields/ajax-terms.php
ADDED
@@ -0,0 +1,133 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*
|
12 |
+
* [Important Note] the stored value is:
|
13 |
+
* - array if WooCommerce version >= 3.0.0
|
14 |
+
* - string (comma-separated) otherwise
|
15 |
+
*/
|
16 |
+
|
17 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
18 |
+
|
19 |
+
wp_enqueue_script( 'yith-enhanced-select' );
|
20 |
+
wp_enqueue_style( 'woocommerce_admin_styles' );
|
21 |
+
|
22 |
+
$default_field = array(
|
23 |
+
'id' => '',
|
24 |
+
'name' => '',
|
25 |
+
'class' => 'yith-term-search',
|
26 |
+
'no_value' => false,
|
27 |
+
'multiple' => false,
|
28 |
+
'data' => array(),
|
29 |
+
'style' => 'width:400px',
|
30 |
+
'value' => ''
|
31 |
+
);
|
32 |
+
|
33 |
+
foreach ( $default_field as $field_key => $field_value ) {
|
34 |
+
if ( empty( $field[ $field_key ] ) ) {
|
35 |
+
$field[ $field_key ] = $field_value;
|
36 |
+
}
|
37 |
+
}
|
38 |
+
unset( $field_key );
|
39 |
+
unset( $field_value );
|
40 |
+
extract( $field );
|
41 |
+
/**
|
42 |
+
* @var string $id
|
43 |
+
* @var string $class
|
44 |
+
* @var bool $no_value
|
45 |
+
* @var bool $multiple
|
46 |
+
* @var array $data
|
47 |
+
* @var string $name
|
48 |
+
* @var string $style
|
49 |
+
* @var string|array $value
|
50 |
+
*/
|
51 |
+
|
52 |
+
if ( $no_value )
|
53 |
+
$value = array();
|
54 |
+
|
55 |
+
$default_data = array(
|
56 |
+
'action' => 'yith_plugin_fw_json_search_terms',
|
57 |
+
'placeholder' => __( 'Search Categories', 'yith-plugin-fw' ),
|
58 |
+
'allow_clear' => false,
|
59 |
+
'taxonomy' => 'category',
|
60 |
+
'term_field' => 'id'
|
61 |
+
);
|
62 |
+
$data = wp_parse_args( $data, $default_data );
|
63 |
+
$show_id = isset( $data[ 'show_id' ] ) && $data[ 'show_id' ];
|
64 |
+
|
65 |
+
// separate select2 needed data and other data
|
66 |
+
$select2_custom_attributes = array();
|
67 |
+
$select2_data = array();
|
68 |
+
$select2_data_keys = array( 'placeholder', 'allow_clear', 'action' );
|
69 |
+
foreach ( $data as $d_key => $d_value ) {
|
70 |
+
if ( in_array( $d_key, $select2_data_keys ) ) {
|
71 |
+
$select2_data[ $d_key ] = $d_value;
|
72 |
+
} else {
|
73 |
+
$select2_custom_attributes[ 'data-' . $d_key ] = $d_value;
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
$term_field = $data[ 'term_field' ];
|
78 |
+
|
79 |
+
// populate data-selected by value
|
80 |
+
$data_selected = array();
|
81 |
+
if ( !empty( $value ) ) {
|
82 |
+
if ( $multiple ) {
|
83 |
+
if ( 'id' === $term_field ) {
|
84 |
+
$value = is_array( $value ) ? array_map( 'absint', $value ) : explode( ',', $value );
|
85 |
+
} else {
|
86 |
+
$value = is_array( $value ) ? $value : explode( ',', $value );
|
87 |
+
}
|
88 |
+
foreach ( $value as $term_value ) {
|
89 |
+
$term = get_term_by( $term_field, $term_value, $data[ 'taxonomy' ] );
|
90 |
+
if ( is_object( $term ) ) {
|
91 |
+
$title = wp_kses_post( html_entity_decode( $term->name, ENT_QUOTES, get_bloginfo( 'charset' ) ) );
|
92 |
+
$title .= ( $show_id ? " (#{$term->term_id})" : '' );
|
93 |
+
$data_selected[ $term_value ] = $title;
|
94 |
+
} else {
|
95 |
+
$data_selected[ $term_value ] = '#' . $term_value;
|
96 |
+
}
|
97 |
+
}
|
98 |
+
} else {
|
99 |
+
$term_value = 'id' === $term_field ? absint( $value ) : $value;
|
100 |
+
$term = get_term_by( $term_field, $term_value, $data[ 'taxonomy' ] );
|
101 |
+
if ( is_object( $term ) ) {
|
102 |
+
$title = wp_kses_post( html_entity_decode( $term->name, ENT_QUOTES, get_bloginfo( 'charset' ) ) );
|
103 |
+
$title .= ( $show_id ? " (#{$term->term_id})" : '' );
|
104 |
+
$data_selected[ $term_value ] = $title;
|
105 |
+
} else {
|
106 |
+
$data_selected[ $term_value ] = '#' . $term_value;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
}
|
110 |
+
|
111 |
+
// parse $value to string to prevent issue with wc2.6
|
112 |
+
$value = is_array( $value ) ? implode( ',', $value ) : $value;
|
113 |
+
?>
|
114 |
+
<div class="yith-plugin-fw-select2-wrapper">
|
115 |
+
<?php
|
116 |
+
if ( function_exists( 'yit_add_select2_fields' ) ) {
|
117 |
+
yit_add_select2_fields( array(
|
118 |
+
'id' => $id,
|
119 |
+
'name' => $name,
|
120 |
+
'class' => $class,
|
121 |
+
'data-multiple' => $multiple,
|
122 |
+
'data-placeholder' => $select2_data[ 'placeholder' ],
|
123 |
+
'data-allow_clear' => $select2_data[ 'allow_clear' ],
|
124 |
+
'data-action' => $select2_data[ 'action' ],
|
125 |
+
'custom-attributes' => $select2_custom_attributes,
|
126 |
+
'style' => $style,
|
127 |
+
'value' => $value,
|
128 |
+
'data-selected' => $data_selected,
|
129 |
+
'data-term-field' => $term_field
|
130 |
+
) );
|
131 |
+
}
|
132 |
+
?>
|
133 |
+
</div>
|
plugin-fw/templates/fields/buttons.php
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
extract( $field );
|
14 |
+
|
15 |
+
if ( !empty( $buttons ) && is_array( $buttons ) ):
|
16 |
+
foreach ( $buttons as $button ) :
|
17 |
+
$button_default_args = array(
|
18 |
+
'name' => '',
|
19 |
+
'class' => '',
|
20 |
+
'data' => array(),
|
21 |
+
);
|
22 |
+
$button = wp_parse_args( $button, $button_default_args );
|
23 |
+
?>
|
24 |
+
<input type="button" class="<?php echo $button[ 'class' ]; ?> button button-secondary"
|
25 |
+
value="<?php echo esc_attr( $button[ 'name' ] ) ?>" <?php echo yith_plugin_fw_html_data_to_string( $button[ 'data' ] ) ?>/>
|
26 |
+
<?php endforeach;
|
27 |
+
endif; ?>
|
plugin-fw/templates/fields/checkbox.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
?>
|
17 |
+
<input type="checkbox" id="<?php echo $id ?>"
|
18 |
+
name="<?php echo $name ?>" value="1"
|
19 |
+
<?php echo !empty( $class ) ? "class='$class'" : ''; ?>
|
20 |
+
<?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>" <?php endif; ?>
|
21 |
+
<?php checked( true, yith_plugin_fw_is_true( $value ) ) ?>
|
22 |
+
<?php echo $custom_attributes ?>
|
23 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
24 |
+
<?php
|
25 |
+
if ( isset( $field[ 'desc-inline' ] ) )
|
26 |
+
echo "<span class='description inline'>" . $field[ 'desc-inline' ] . "</span>";
|
27 |
+
|
28 |
+
?>
|
plugin-fw/templates/fields/colorpicker.php
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
wp_enqueue_style( 'wp-color-picker' );
|
16 |
+
|
17 |
+
extract( $field );
|
18 |
+
|
19 |
+
$class = !empty( $class ) ? $class : 'yith-plugin-fw-colorpicker';
|
20 |
+
?>
|
21 |
+
|
22 |
+
<input type="text" name="<?php echo $name ?>"
|
23 |
+
id="<?php echo $id ?>" value="<?php echo esc_attr( $value ) ?>"
|
24 |
+
<?php if ( isset( $std ) ) : ?>data-default-color="<?php echo $std ?>"<?php endif ?>
|
25 |
+
class="<?php echo $class ?>"
|
26 |
+
<?php echo $custom_attributes ?>
|
27 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
plugin-fw/templates/fields/customtabs.php
ADDED
@@ -0,0 +1,151 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
|
14 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
15 |
+
|
16 |
+
extract( $field );
|
17 |
+
|
18 |
+
$field[ 'labels' ] = array(
|
19 |
+
'plural_name' => 'Tabs',
|
20 |
+
'singular_name' => 'Tab',
|
21 |
+
'item_name_sing' => 'Tab',
|
22 |
+
'item_name_plur' => 'Tabs',
|
23 |
+
);
|
24 |
+
$value = is_array( $value ) ? $value : array();
|
25 |
+
?>
|
26 |
+
<div id="yit_custom_tabs" class="panel wc-metaboxes-wrapper" style="display: block;">
|
27 |
+
<p class="toolbar">
|
28 |
+
<a href="#" class="close_all"><?php _e( 'Close all', 'yith-plugin-fw' ) ?></a><a href="#" class="expand_all"><?php _e( 'Expand all', 'yith-plugin-fw' ) ?></a>
|
29 |
+
</p>
|
30 |
+
|
31 |
+
<div class="yit_custom_tabs wc-metaboxes ui-sortable" style="">
|
32 |
+
|
33 |
+
<?php if ( !empty( $value ) ): ?>
|
34 |
+
<?php foreach ( $value as $i => $tab ): ?>
|
35 |
+
<div class="yit_custom_tab wc-metabox closed" rel="0">
|
36 |
+
<h3>
|
37 |
+
<button type="button" class="remove_row button"><?php _e( 'Remove', 'yith-plugin-fw' ) ?></button>
|
38 |
+
<div class="handlediv" title="Click to toggle"></div>
|
39 |
+
<strong class="attribute_name"><?php echo $tab[ 'name' ] ?></strong>
|
40 |
+
</h3>
|
41 |
+
|
42 |
+
<table cellpadding="0" cellspacing="0" class="woocommerce_attribute_data wc-metabox-content" style="display: table;">
|
43 |
+
<tbody>
|
44 |
+
<tr>
|
45 |
+
<td class="attribute_name">
|
46 |
+
<label><?php _e( 'Name', 'yith-plugin-fw' ) ?>:</label>
|
47 |
+
<input type="text" class="attribute_name" name="<?php echo $name ?>[<?php echo $i ?>][name]" value="<?php echo esc_attr( $tab[ 'name' ] ) ?>">
|
48 |
+
<input type="hidden" name="<?php echo $name ?>[<?php echo $i ?>][position]" class="attribute_position" value="<?php echo $i ?>">
|
49 |
+
</td>
|
50 |
+
|
51 |
+
<td rowspan="3">
|
52 |
+
<label><?php _e( 'Value', 'yith-plugin-fw' ) ?>:</label>
|
53 |
+
<textarea name="<?php echo $name ?>[<?php echo $i ?>][value]" cols="5" rows="5" placeholder="<?php _e( 'Content of the tab. (HTML is supported)', 'yith-plugin-fw' ) ?>"><?php echo $tab[ 'value' ] ?></textarea>
|
54 |
+
</td>
|
55 |
+
</tr>
|
56 |
+
</tbody>
|
57 |
+
</table>
|
58 |
+
|
59 |
+
</div>
|
60 |
+
<?php endforeach ?>
|
61 |
+
<?php endif ?>
|
62 |
+
</div>
|
63 |
+
|
64 |
+
<p class="toolbar">
|
65 |
+
<button type="button" class="button button-primary add_custom_tab"><?php _e( 'Add custom product tab', 'yith-plugin-fw' ) ?></button>
|
66 |
+
</p>
|
67 |
+
|
68 |
+
<div class="clear"></div>
|
69 |
+
</div>
|
70 |
+
|
71 |
+
<script>
|
72 |
+
jQuery( document ).ready( function ( $ ) {
|
73 |
+
// Add rows
|
74 |
+
$( 'button.add_custom_tab' ).on( 'click', function () {
|
75 |
+
|
76 |
+
var size = $( '.yit_custom_tabs .yit_custom_tab' ).size() + 1;
|
77 |
+
|
78 |
+
// Add custom attribute row
|
79 |
+
$( '.yit_custom_tabs' ).append( '<div class="yit_custom_tab wc-metabox">\
|
80 |
+
<h3>\
|
81 |
+
<button type="button" class="remove_row button"><?php _e( 'Remove', 'yith-plugin-fw' ) ?></button>\
|
82 |
+
<div class="handlediv" title="Click to toggle"></div>\
|
83 |
+
<strong class="attribute_name"></strong>\
|
84 |
+
</h3>\
|
85 |
+
<table cellpadding="0" cellspacing="0" class="woocommerce_attribute_data">\
|
86 |
+
<tbody>\
|
87 |
+
<tr>\
|
88 |
+
<td class="attribute_name">\
|
89 |
+
<label><?php _e( 'Name', 'yith-plugin-fw' ) ?>:</label>\
|
90 |
+
<input type="text" class="attribute_name" name="<?php echo $name ?>[' + size + '][name]" />\
|
91 |
+
<input type="hidden" name="<?php echo $name ?>[' + size + '][position]" class="attribute_position" value="' + size + '" />\
|
92 |
+
</td>\
|
93 |
+
<td rowspan="3">\
|
94 |
+
<label><?php _e( 'Value', 'yith-plugin-fw' ) ?>:</label>\
|
95 |
+
<textarea name="<?php echo $name ?>[' + size + '][value]" cols="5" rows="5" placeholder="<?php echo addslashes( __( 'Content of the tab. (HTML is supported)', 'yith-plugin-fw' ) ) ?>"></textarea>\
|
96 |
+
</td>\
|
97 |
+
</tr>\
|
98 |
+
</tbody>\
|
99 |
+
</table>\
|
100 |
+
</div>' );
|
101 |
+
|
102 |
+
} );
|
103 |
+
|
104 |
+
|
105 |
+
$( '.yit_custom_tabs' ).on( 'click', 'button.remove_row', function () {
|
106 |
+
var answer = confirm( "<?php _e( 'Do you want to remove the custom tab?', 'yith-plugin-fw' ) ?>" );
|
107 |
+
if ( answer ) {
|
108 |
+
var $parent = $( this ).parent().parent();
|
109 |
+
|
110 |
+
$parent.remove();
|
111 |
+
attribute_row_indexes();
|
112 |
+
}
|
113 |
+
return false;
|
114 |
+
} );
|
115 |
+
|
116 |
+
// Attribute ordering
|
117 |
+
$( '.yit_custom_tabs' ).sortable( {
|
118 |
+
items : '.yit_custom_tab',
|
119 |
+
cursor : 'move',
|
120 |
+
axis : 'y',
|
121 |
+
handle : 'h3',
|
122 |
+
scrollSensitivity : 40,
|
123 |
+
forcePlaceholderSize: true,
|
124 |
+
helper : 'clone',
|
125 |
+
opacity : 0.65,
|
126 |
+
placeholder : 'wc-metabox-sortable-placeholder',
|
127 |
+
start : function ( event, ui ) {
|
128 |
+
ui.item.css( 'background-color', '#f6f6f6' );
|
129 |
+
},
|
130 |
+
stop : function ( event, ui ) {
|
131 |
+
ui.item.removeAttr( 'style' );
|
132 |
+
attribute_row_indexes();
|
133 |
+
}
|
134 |
+
} );
|
135 |
+
|
136 |
+
function attribute_row_indexes() {
|
137 |
+
$( '.yit_custom_tabs .yit_custom_tab' ).each( function ( index, el ) {
|
138 |
+
var newVal = '[' + $( el ).index( '.yit_custom_tabs .yit_custom_tab' ) + ']';
|
139 |
+
var oldVal = '[' + $( '.attribute_position', el ).val() + ']';
|
140 |
+
|
141 |
+
$( ':input:not(button)', el ).each( function () {
|
142 |
+
var name = $( this ).attr( 'name' );
|
143 |
+
$( this ).attr( 'name', name.replace( oldVal, newVal ) );
|
144 |
+
} );
|
145 |
+
|
146 |
+
$( '.attribute_position', el ).val( $( el ).index( '.yit_custom_tabs .yit_custom_tab' ) );
|
147 |
+
} );
|
148 |
+
}
|
149 |
+
|
150 |
+
} );
|
151 |
+
</script>
|
plugin-fw/templates/fields/datepicker.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
$class = !empty( $class ) ? $class : 'yith-plugin-fw-datepicker';
|
17 |
+
?>
|
18 |
+
<input type="text"
|
19 |
+
name="<?php echo $name ?>"
|
20 |
+
id="<?php echo $id ?>"
|
21 |
+
value="<?php echo esc_attr( $value ) ?>"
|
22 |
+
class="<?php echo $class ?>"
|
23 |
+
<?php echo $custom_attributes ?>
|
24 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
plugin-fw/templates/fields/hidden.php
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
// backward compatibility
|
18 |
+
if ( !isset( $value ) ) {
|
19 |
+
if ( isset( $val ) )
|
20 |
+
$value = $val;
|
21 |
+
else
|
22 |
+
$value = '';
|
23 |
+
}
|
24 |
+
?>
|
25 |
+
<input type="hidden" id="<?php echo $id ?>"
|
26 |
+
name="<?php echo $name ?>" value="<?php echo esc_attr( $value ) ?>"
|
27 |
+
<?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
28 |
+
<?php echo $custom_attributes ?>
|
29 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
plugin-fw/templates/{metaboxes/types/simple-text.php → fields/html.php}
RENAMED
@@ -6,15 +6,12 @@
|
|
6 |
* that is bundled with this package in the file LICENSE.txt.
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
|
|
|
|
9 |
*/
|
10 |
|
11 |
-
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
|
16 |
-
extract( $
|
17 |
|
18 |
-
|
19 |
-
?>
|
20 |
-
<p<?php echo $id ?>><?php echo $desc ?></p>
|
6 |
* that is bundled with this package in the file LICENSE.txt.
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
*/
|
12 |
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
|
|
|
|
|
|
14 |
|
15 |
+
extract( $field );
|
16 |
|
17 |
+
echo !empty( $html ) ? $html : '';
|
|
|
|
plugin-fw/templates/fields/icons.php
ADDED
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* This file belongs to the YIT Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
extract( $field );
|
14 |
+
|
15 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
16 |
+
|
17 |
+
wp_enqueue_style( 'font-awesome' );
|
18 |
+
extract( $field );
|
19 |
+
|
20 |
+
$filter_icons = !empty( $field[ 'filter_icons' ] ) ? $field[ 'filter_icons' ] : '';
|
21 |
+
$default_icon_text = isset( $std ) ? $std : false;
|
22 |
+
$default_icon_data = YIT_Icons()->get_icon_data( $default_icon_text, $filter_icons );
|
23 |
+
|
24 |
+
$current_icon_data = YIT_Icons()->get_icon_data( $value, $filter_icons );
|
25 |
+
$current_icon_text = $value;
|
26 |
+
|
27 |
+
$yit_icons = YIT_Icons()->get_icons( $filter_icons );
|
28 |
+
?>
|
29 |
+
|
30 |
+
<div id="yit-icons-manager-wrapper-<?php echo $id ?>" class="yit-icons-manager-wrapper">
|
31 |
+
|
32 |
+
<div class="yit-icons-manager-text">
|
33 |
+
<div class="yit-icons-manager-icon-preview" <?php echo $current_icon_data ?>></div>
|
34 |
+
<input class="yit-icons-manager-icon-text" type="text" id="<?php echo $id ?>" name="<?php echo $name ?>" value="<?php echo $current_icon_text; ?>"/>
|
35 |
+
<div class="clear"></div>
|
36 |
+
</div>
|
37 |
+
|
38 |
+
|
39 |
+
<div class="yit-icons-manager-list-wrapper">
|
40 |
+
<ul class="yit-icons-manager-list">
|
41 |
+
<?php foreach ( $yit_icons as $font => $icons ):
|
42 |
+
foreach ( $icons as $key => $icon_name ):
|
43 |
+
$icon_text = $font . ':' . $icon_name;
|
44 |
+
$icon_class = $icon_text == $current_icon_text ? 'active' : '';
|
45 |
+
$icon_class .= $icon_text == $default_icon_text ? ' default' : '';
|
46 |
+
$data_icon = str_replace( '\\', '&#x', $key );
|
47 |
+
?>
|
48 |
+
<li class="<?php echo $icon_class ?>" data-font="<?php echo $font ?>" data-icon="<?php echo $data_icon; ?>" data-key="<?php echo $key ?>"
|
49 |
+
data-name="<?php echo $icon_name ?>"></li>
|
50 |
+
<?php
|
51 |
+
endforeach;
|
52 |
+
endforeach; ?>
|
53 |
+
</ul>
|
54 |
+
</div>
|
55 |
+
|
56 |
+
<div class="yit-icons-manager-actions">
|
57 |
+
<?php if ( $default_icon_text ): ?>
|
58 |
+
<div class="yit-icons-manager-action-set-default button"><?php _e( 'Set Default', 'yith-plugin-fw' ) ?><i
|
59 |
+
class="yit-icons-manager-default-icon-preview" <?php echo $default_icon_data ?>></i></div>
|
60 |
+
<?php endif ?>
|
61 |
+
</div>
|
62 |
+
|
63 |
+
</div>
|
plugin-fw/templates/fields/image-gallery.php
ADDED
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
$array_id = array();
|
17 |
+
if ( !empty( $value ) ) {
|
18 |
+
$array_id = array_filter( explode( ',', $value ) );
|
19 |
+
}
|
20 |
+
?>
|
21 |
+
<ul id="<?php echo $id ?>-extra-images" class="slides-wrapper extra-images ui-sortable clearfix">
|
22 |
+
<?php if ( !empty( $array_id ) ) : ?>
|
23 |
+
<?php foreach ( $array_id as $image_id ) : ?>
|
24 |
+
<li class="image" data-attachment_id= <?php echo esc_attr( $image_id ) ?>>
|
25 |
+
<a href="#">
|
26 |
+
<?php
|
27 |
+
if ( function_exists( 'yit_image' ) ) :
|
28 |
+
yit_image( "id=$image_id&size=admin-post-type-thumbnails" );
|
29 |
+
else:
|
30 |
+
echo wp_get_attachment_image( $image_id, array( 80, 80 ) );
|
31 |
+
endif; ?>
|
32 |
+
</a>
|
33 |
+
<ul class="actions">
|
34 |
+
<li><a href="#" class="delete" title="<?php _e( 'Delete image', 'yith-plugin-fw' ); ?>">x</a></li>
|
35 |
+
</ul>
|
36 |
+
</li>
|
37 |
+
<?php endforeach; endif; ?>
|
38 |
+
</ul>
|
39 |
+
<input type="button" data-choose="<?php _e( 'Add Images to Gallery', 'yith-plugin-fw' ); ?>" data-update="<?php _e( 'Add to gallery', 'yith-plugin-fw' ); ?>" value="<?php _e( 'Add images', 'yith-plugin-fw' ) ?>" data-delete="<?php _e( 'Delete image', 'yith-plugin-fw' ); ?>" data-text="<?php _e( 'Delete', 'yith-plugin-fw' ); ?>" id="<?php echo $id ?>-button" class="image-gallery-button button"/>
|
40 |
+
<input type="hidden" class="image_gallery_ids" id="image_gallery_ids" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ); ?>"/>
|
plugin-fw/templates/fields/number.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$min_max_attr = $step_attr = '';
|
18 |
+
|
19 |
+
if ( isset( $min ) ) {
|
20 |
+
$min_max_attr .= " min='{$min}'";
|
21 |
+
}
|
22 |
+
|
23 |
+
if ( isset( $max ) ) {
|
24 |
+
$min_max_attr .= " max='{$max}'";
|
25 |
+
}
|
26 |
+
|
27 |
+
if ( isset( $step ) ) {
|
28 |
+
$step_attr .= "step='{$step}'";
|
29 |
+
}
|
30 |
+
?>
|
31 |
+
<input type="number" id="<?php echo $id ?>"
|
32 |
+
<?php echo !empty( $class ) ? "class='$class'" : ''; ?>
|
33 |
+
name="<?php echo $name ?>" <?php echo $step_attr ?> <?php echo $min_max_attr ?>
|
34 |
+
value="<?php echo esc_attr( $value ) ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
35 |
+
<?php echo $custom_attributes ?>
|
36 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
plugin-fw/templates/fields/onoff.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
?>
|
17 |
+
|
18 |
+
<div class="yith-plugin-fw-onoff-container">
|
19 |
+
<input type="checkbox" id="<?php echo $id ?>" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ) ?>" <?php checked( yith_plugin_fw_is_true( $value ) ) ?> class="on_off" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?> />
|
20 |
+
<span class="yith-plugin-fw-onoff"> </span>
|
21 |
+
</div>
|
plugin-fw/templates/fields/preview.php
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
extract( $field );
|
13 |
+
$class = !empty( $class ) ? $class : 'yith-plugin-fw-preview-field';
|
14 |
+
|
15 |
+
?>
|
16 |
+
<img src="<?php echo $value ?>" class="<?php echo $class ?>"
|
17 |
+
<?php echo $custom_attributes ?>
|
18 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>>
|
plugin-fw/templates/fields/select-buttons.php
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
wp_enqueue_script( 'wc-enhanced-select' );
|
16 |
+
|
17 |
+
$field[ 'type' ] = 'select';
|
18 |
+
|
19 |
+
if ( empty( $field[ 'class' ] ) ) unset( $field[ 'class' ] );
|
20 |
+
|
21 |
+
$default_args = array(
|
22 |
+
'multiple' => true,
|
23 |
+
'class' => 'wc-enhanced-select',
|
24 |
+
'buttons' => array(
|
25 |
+
array(
|
26 |
+
'name' => __( 'Select All', 'yith-plugin-fw' ),
|
27 |
+
'class' => 'yith-plugin-fw-select-all',
|
28 |
+
'data' => array(
|
29 |
+
'select-id' => $field[ 'id' ]
|
30 |
+
),
|
31 |
+
),
|
32 |
+
array(
|
33 |
+
'name' => __( 'Deselect All', 'yith-plugin-fw' ),
|
34 |
+
'class' => 'yith-plugin-fw-deselect-all',
|
35 |
+
'data' => array(
|
36 |
+
'select-id' => $field[ 'id' ]
|
37 |
+
),
|
38 |
+
)
|
39 |
+
)
|
40 |
+
);
|
41 |
+
|
42 |
+
$field = wp_parse_args( $field, $default_args );
|
43 |
+
|
44 |
+
yith_plugin_fw_get_field( $field, true );
|
plugin-fw/templates/fields/select-mailchimp.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
$multiple_html = ( isset( $multiple ) && $multiple ) ? ' multiple' : '';
|
17 |
+
?>
|
18 |
+
|
19 |
+
<select<?php echo $multiple_html ?>
|
20 |
+
id="<?php echo $id ?>"
|
21 |
+
name="<?php echo $name ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
22 |
+
class="yith-plugin-fw-select"
|
23 |
+
<?php echo $custom_attributes ?>
|
24 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>>
|
25 |
+
<?php foreach ( $options as $key => $item ) : ?>
|
26 |
+
<option value="<?php echo $key ?>"<?php selected( $key, $value ) ?>><?php echo $item ?></option>
|
27 |
+
<?php endforeach; ?>
|
28 |
+
</select>
|
29 |
+
<input type="button" class="button-secondary <?php echo isset( $class ) ? $class : ''; ?>" value="<?php echo $button_name ?>"/>
|
30 |
+
<span class="spinner"></span>
|
plugin-fw/templates/fields/select.php
ADDED
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
$multiple = isset( $multiple ) && $multiple;
|
17 |
+
$multiple_html = ( $multiple ) ? ' multiple' : '';
|
18 |
+
|
19 |
+
if ( $multiple && !is_array( $value ) )
|
20 |
+
$value = array();
|
21 |
+
|
22 |
+
$class = isset( $class ) ? $class : 'yith-plugin-fw-select';
|
23 |
+
?>
|
24 |
+
<select<?php echo $multiple_html ?>
|
25 |
+
id="<?php echo $id ?>"
|
26 |
+
name="<?php echo $name ?><?php if ( $multiple ) echo "[]" ?>" <?php if ( isset( $std ) ) : ?>
|
27 |
+
data-std="<?php echo ( $multiple ) ? implode( ' ,', $std ) : $std ?>"<?php endif ?>
|
28 |
+
class="<?php echo $class ?>"
|
29 |
+
<?php echo $custom_attributes ?>
|
30 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>>
|
31 |
+
<?php foreach ( $options as $key => $item ) : ?>
|
32 |
+
<option value="<?php echo esc_attr( $key ) ?>" <?php if ( $multiple ): selected( true, in_array( $key, $value ) );
|
33 |
+
else: selected( $key, $value ); endif; ?> ><?php echo $item ?></option>
|
34 |
+
<?php endforeach; ?>
|
35 |
+
</select>
|
36 |
+
|
37 |
+
<?php
|
38 |
+
/* --------- BUTTONS ----------- */
|
39 |
+
if ( isset( $buttons ) ) {
|
40 |
+
$button_field = array(
|
41 |
+
'type' => 'buttons',
|
42 |
+
'buttons' => $buttons
|
43 |
+
);
|
44 |
+
yith_plugin_fw_get_field( $button_field, true );
|
45 |
+
}
|
46 |
+
?>
|
plugin-fw/templates/{metaboxes/types → fields}/sep.php
RENAMED
@@ -8,11 +8,7 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
|
16 |
// doesn't do nothing, allow to stamp the container of this option with sep class:
|
17 |
-
|
18 |
-
?>
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
|
|
|
|
|
|
12 |
|
13 |
// doesn't do nothing, allow to stamp the container of this option with sep class:
|
14 |
+
//<div class="the-metabox sep clearfix"></div>
|
|
plugin-fw/templates/fields/sidebarlist.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$class = isset( $class ) ? $class : 'yith-plugin-fw-select';
|
18 |
+
$options = yit_registered_sidebars();
|
19 |
+
?>
|
20 |
+
<select id="<?php echo $id ?>"
|
21 |
+
name="<?php echo $name ?>"
|
22 |
+
class="<?php echo $class ?>"
|
23 |
+
<?php echo $custom_attributes ?>
|
24 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>>
|
25 |
+
<?php foreach ( $options as $key => $item ) : ?>
|
26 |
+
<option value="<?php echo esc_attr( $key ) ?>"<?php selected( $key, $value ) ?>><?php echo $item ?></option>
|
27 |
+
<?php endforeach; ?>
|
28 |
+
</select>
|
plugin-fw/templates/fields/sidebars.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
extract( $field );
|
14 |
+
|
15 |
+
$layout = !isset( $value[ 'layout' ] ) ? 'sidebar-no' : $value[ 'layout' ];
|
16 |
+
$sidebar_left = !isset( $value[ 'sidebar-left' ] ) ? '-1' : $value[ 'sidebar-left' ];
|
17 |
+
$sidebar_right = !isset( $value[ 'sidebar-right' ] ) ? '-1' : $value[ 'sidebar-right' ];
|
18 |
+
?>
|
19 |
+
<div class="yith-plugin-fw-sidebar-layout">
|
20 |
+
<div class="option">
|
21 |
+
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-left' ?>" value="sidebar-left" <?php checked( $layout, 'sidebar-left' ) ?> />
|
22 |
+
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/sidebar-left.png" title="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-left' ?>" data-type="left"/>
|
23 |
+
|
24 |
+
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-right' ?>" value="sidebar-right" <?php checked( $layout, 'sidebar-right' ) ?> />
|
25 |
+
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/sidebar-right.png" title="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-right' ?>" data-type="right"/>
|
26 |
+
|
27 |
+
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-double' ?>" value="sidebar-double" <?php checked( $layout, 'sidebar-double' ) ?> />
|
28 |
+
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/double-sidebar.png" title="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-double' ?>" data-type="double"/>
|
29 |
+
|
30 |
+
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-no' ?>" value="sidebar-no" <?php checked( $layout, 'sidebar-no' ) ?> />
|
31 |
+
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/no-sidebar.png" title="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-no' ?>" data-type="none"/>
|
32 |
+
</div>
|
33 |
+
<div class="clearfix"></div>
|
34 |
+
<div class="option" id="choose-sidebars">
|
35 |
+
<div class="side">
|
36 |
+
<div <?php if ( $layout != 'sidebar-double' && $layout != 'sidebar-left' ) {
|
37 |
+
echo 'style="display:none"';
|
38 |
+
} ?> class="yith-plugin-fw-sidebar-layout-sidebar-left-container select-mask">
|
39 |
+
<label for="<?php echo $id ?>-sidebar-left"><?php _e( 'Left Sidebar', 'yith-plugin-fw' ) ?></label>
|
40 |
+
<select class="yith-plugin-fw-select" name="<?php echo $name ?>[sidebar-left]" id="<?php echo $id ?>-sidebar-left">
|
41 |
+
<option value="-1"><?php _e( 'Choose a sidebar', 'yith-plugin-fw' ) ?></option>
|
42 |
+
<?php foreach ( yit_registered_sidebars() as $val => $option ) { ?>
|
43 |
+
<option value="<?php echo esc_attr( $val ) ?>" <?php selected( $sidebar_left, $val ) ?>><?php echo $option; ?></option>
|
44 |
+
<?php } ?>
|
45 |
+
</select>
|
46 |
+
</div>
|
47 |
+
</div>
|
48 |
+
<div class="side" style="clear: both">
|
49 |
+
<div <?php if ( $layout != 'sidebar-double' && $layout != 'sidebar-right' ) {
|
50 |
+
echo 'style="display:none"';
|
51 |
+
} ?> class="yith-plugin-fw-sidebar-layout-sidebar-right-container select-mask">
|
52 |
+
<label for="<?php echo $id ?>-sidebar-right"><?php _e( 'Right Sidebar', 'yith-plugin-fw' ) ?></label>
|
53 |
+
<select class="yith-plugin-fw-select" name="<?php echo $name ?>[sidebar-right]" id="<?php echo $id ?>-sidebar-right">
|
54 |
+
<option value="-1"><?php _e( 'Choose a sidebar', 'yith-plugin-fw' ) ?></option>
|
55 |
+
<?php foreach ( yit_registered_sidebars() as $val => $option ) { ?>
|
56 |
+
<option value="<?php echo esc_attr( $val ) ?>" <?php selected( $sidebar_right, $val ) ?>><?php echo $option; ?></option>
|
57 |
+
<?php } ?>
|
58 |
+
</select>
|
59 |
+
</div>
|
60 |
+
</div>
|
61 |
+
</div>
|
62 |
+
</div>
|
plugin-fw/templates/fields/simple-text.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
?>
|
17 |
+
<p <?php if ( !empty( $id ) ) echo "id='$id'" ?>
|
18 |
+
<?php echo $custom_attributes ?>
|
19 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>><?php echo $desc ?></p>
|
plugin-fw/templates/fields/slider.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$min = isset( $option[ 'min' ] ) ? $option[ 'min' ] : 0;
|
18 |
+
$max = isset( $option[ 'max' ] ) ? $option[ 'max' ] : 100;
|
19 |
+
?>
|
20 |
+
<div class="yith-plugin-fw-slider-container">
|
21 |
+
<div class="ui-slider">
|
22 |
+
<span class="minCaption"><?php echo $min ?></span>
|
23 |
+
<div id="<?php echo $id ?>-div" data-step="<?php echo isset( $step ) ? $step : 1 ?>" data-min="<?php echo $min ?>" data-max="<?php echo $max ?>" data-val="<?php echo $value; ?>" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all">
|
24 |
+
<input id="<?php echo $id ?>" type="hidden" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ); ?>"/>
|
25 |
+
</div>
|
26 |
+
<span class="maxCaption"><?php echo $max ?></span>
|
27 |
+
</div>
|
28 |
+
</div>
|
plugin-fw/templates/fields/text-array.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$size = isset( $size ) ? " style=\"width:{$size}px;\"" : '';
|
18 |
+
?>
|
19 |
+
<table class="yith-plugin-fw-text-array-table">
|
20 |
+
<?php foreach ( $fields as $field_name => $field_label ) : ?>
|
21 |
+
<tr>
|
22 |
+
<td><?php echo $field_label ?></td>
|
23 |
+
<td>
|
24 |
+
<input type="text" name="<?php echo $name ?>[<?php echo $field_name ?>]" id="<?php echo $id ?>_<?php echo $field_name ?>" value="<?php echo isset( $value[ $field_name ] ) ? esc_attr( $value[ $field_name ] ) : '' ?>"<?php echo $size ?> />
|
25 |
+
</td>
|
26 |
+
</tr>
|
27 |
+
<?php endforeach ?>
|
28 |
+
</table>
|
plugin-fw/templates/fields/text-button.php
ADDED
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
extract( $field );
|
14 |
+
|
15 |
+
$backward_compatibility = false;
|
16 |
+
if ( !isset( $field[ 'buttons' ] ) ) {
|
17 |
+
// backward compatibility
|
18 |
+
$backward_compatibility = true;
|
19 |
+
$button_data = array();
|
20 |
+
|
21 |
+
if ( isset( $field[ 'button-class' ] ) )
|
22 |
+
$button_data[ 'class' ] = $field[ 'button-class' ];
|
23 |
+
if ( isset( $field[ 'button-name' ] ) )
|
24 |
+
$button_data[ 'name' ] = $field[ 'button-name' ];
|
25 |
+
if ( isset( $field[ 'data' ] ) )
|
26 |
+
$button_data[ 'data' ] = $field[ 'data' ];
|
27 |
+
|
28 |
+
$buttons = array( $button_data );
|
29 |
+
}
|
30 |
+
$class = isset( $class ) ? $class : 'yith-plugin-fw-text-input';
|
31 |
+
?>
|
32 |
+
<input type="text" name="<?php echo $name ?>"
|
33 |
+
id="<?php echo $id ?>"
|
34 |
+
value="<?php echo esc_attr( $value ) ?>"
|
35 |
+
class="<?php echo $class ?>"
|
36 |
+
<?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
37 |
+
<?php echo $custom_attributes ?>
|
38 |
+
<?php if ( !$backward_compatibility && isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
39 |
+
|
40 |
+
<?php
|
41 |
+
/* --------- BUTTONS ----------- */
|
42 |
+
if ( isset( $buttons ) ) {
|
43 |
+
$button_field = array(
|
44 |
+
'type' => 'buttons',
|
45 |
+
'buttons' => $buttons
|
46 |
+
);
|
47 |
+
yith_plugin_fw_get_field( $button_field, true );
|
48 |
+
}
|
49 |
+
?>
|
plugin-fw/templates/fields/text.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$class = isset( $class ) ? $class : 'yith-plugin-fw-text-input';
|
18 |
+
?>
|
19 |
+
<input type="text" name="<?php echo $name ?>"
|
20 |
+
id="<?php echo $id ?>"
|
21 |
+
value="<?php echo esc_attr( $value ) ?>"
|
22 |
+
class="<?php echo $class ?>"
|
23 |
+
<?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
24 |
+
<?php echo $custom_attributes ?>
|
25 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>/>
|
26 |
+
|
plugin-fw/templates/fields/textarea-codemirror.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
|
12 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
13 |
+
|
14 |
+
wp_enqueue_script( 'codemirror' );
|
15 |
+
wp_enqueue_script( 'codemirror-javascript' );
|
16 |
+
wp_enqueue_style( 'codemirror' );
|
17 |
+
|
18 |
+
extract( $field );
|
19 |
+
|
20 |
+
$class = isset( $class ) ? $class : 'codemirror';
|
21 |
+
?>
|
22 |
+
<textarea id="<?php echo $id ?>"
|
23 |
+
name="<?php echo $name ?>"
|
24 |
+
class="<?php echo $class ?>"
|
25 |
+
rows="8" cols="50" <?php echo $custom_attributes ?>
|
26 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>><?php echo $value ?></textarea>
|
plugin-fw/templates/fields/textarea-editor.php
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
// wp_editor is includes since 3.3 of wordpress
|
16 |
+
if ( !function_exists( 'wp_editor' ) ) :
|
17 |
+
include 'textarea.php';
|
18 |
+
else:
|
19 |
+
extract( $field );
|
20 |
+
|
21 |
+
$editor_args = array(
|
22 |
+
'wpautop' => true, // use wpautop?
|
23 |
+
'media_buttons' => true, // show insert/upload button(s)
|
24 |
+
'textarea_name' => $name, // set the textarea name to something different, square brackets [] can be used here
|
25 |
+
'textarea_rows' => 20, // rows="..."
|
26 |
+
'tabindex' => '',
|
27 |
+
'editor_css' => '', // intended for extra styles for both visual and HTML editors buttons, needs to include the <style> tags, can use "scoped".
|
28 |
+
'editor_class' => '', // add extra class(es) to the editor textarea
|
29 |
+
'teeny' => false, // output the minimal editor config used in Press This
|
30 |
+
'dfw' => false, // replace the default fullscreen with DFW (needs specific DOM elements and css)
|
31 |
+
'tinymce' => true, // load TinyMCE, can be used to pass settings directly to TinyMCE using an array()
|
32 |
+
'quicktags' => true // load Quicktags, can be used to pass settings directly to Quicktags using an array()
|
33 |
+
);
|
34 |
+
?>
|
35 |
+
<div class="editor" <?php echo $custom_attributes ?>
|
36 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>><?php wp_editor( $value, $id, $editor_args ); ?></div>
|
37 |
+
|
38 |
+
<?php endif; ?>
|
plugin-fw/templates/fields/textarea.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
|
17 |
+
$class = isset( $class ) ? $class : 'yith-plugin-fw-textarea';
|
18 |
+
?>
|
19 |
+
<textarea id="<?php echo $id ?>"
|
20 |
+
name="<?php echo $name ?>"
|
21 |
+
class="<?php echo $class ?>"
|
22 |
+
rows="5" cols="50" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>
|
23 |
+
<?php echo $custom_attributes ?>
|
24 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>><?php echo $value ?></textarea>
|
plugin-fw/templates/{metaboxes/types/hidden.php → fields/title.php}
RENAMED
@@ -6,13 +6,12 @@
|
|
6 |
* that is bundled with this package in the file LICENSE.txt.
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
|
|
|
|
9 |
*/
|
|
|
10 |
|
11 |
-
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
|
16 |
-
extract( $args );
|
17 |
?>
|
18 |
-
<
|
|
6 |
* that is bundled with this package in the file LICENSE.txt.
|
7 |
* It is also available through the world-wide-web at this URL:
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
*/
|
12 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
13 |
|
14 |
+
extract( $field );
|
|
|
|
|
|
|
|
|
|
|
15 |
?>
|
16 |
+
<h3 class="title" <?php echo $custom_attributes ?>
|
17 |
+
<?php if ( isset( $data ) ) echo yith_plugin_fw_html_data_to_string( $data ); ?>><?php echo $desc ?></h3>
|
plugin-fw/templates/fields/upload.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*/
|
12 |
+
|
13 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
extract( $field );
|
16 |
+
?>
|
17 |
+
<input type="text" id="<?php echo $id ?>" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ) ?>" <?php if ( isset( $default ) ) : ?>data-std="<?php echo $default ?>"<?php endif ?> class="yith-plugin-fw-upload-img-url"/>
|
18 |
+
<input type="button" class="button-secondary yith-plugin-fw-upload-button" id="<?php echo $id ?>-button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>"/>
|
19 |
+
<input type="button" value="<?php _e( 'Reset', 'yith-plugin-fw' ) ?>" id="<?php echo $id ?>-button-reset" class="yith-plugin-fw-upload-button-reset button"
|
20 |
+
data-default="<?php echo isset( $default ) ? $default : '' ?>"/>
|
21 |
+
<div class="yith-plugin-fw-upload-img-preview" style="margin-top:10px;">
|
22 |
+
<?php
|
23 |
+
$file = $value;
|
24 |
+
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
25 |
+
echo "<img src='$file' style='max-width:600px; max-height:300px;' />";
|
26 |
+
}
|
27 |
+
?>
|
28 |
+
</div>
|
plugin-fw/templates/metaboxes/field-row.php
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @var array $field
|
11 |
+
*
|
12 |
+
* [Important Note] the stored value is:
|
13 |
+
* - array if WooCommerce version >= 3.0.0
|
14 |
+
* - string (comma-separated) otherwise
|
15 |
+
*/
|
16 |
+
|
17 |
+
|
18 |
+
if ( !defined( 'ABSPATH' ) ) {
|
19 |
+
exit;
|
20 |
+
} // Exit if accessed directly
|
21 |
+
|
22 |
+
// metabox backward compatibility
|
23 |
+
if ( isset( $field[ 'label' ] ) )
|
24 |
+
$field[ 'title' ] = $field[ 'label' ];
|
25 |
+
|
26 |
+
$default_field = array(
|
27 |
+
'id' => '',
|
28 |
+
'title' => isset( $field[ 'name' ] ) ? $field[ 'name' ] : '',
|
29 |
+
'desc' => '',
|
30 |
+
);
|
31 |
+
$field = wp_parse_args( $field, $default_field );
|
32 |
+
|
33 |
+
$display_field_only = isset( $field[ 'display-field-only' ] ) ? $field[ 'display-field-only' ] : false;
|
34 |
+
?>
|
35 |
+
<div id="<?php echo $field[ 'id' ] ?>-container" <?php echo yith_field_deps_data( $field ); ?> class="yith-plugin-fw-metabox-field-row">
|
36 |
+
<?php if ( $display_field_only ) :
|
37 |
+
yith_plugin_fw_get_field( $field, true );
|
38 |
+
else: ?>
|
39 |
+
<label for="<?php echo $field[ 'id' ] ?>"><?php echo $field[ 'title' ] ?></label>
|
40 |
+
<?php yith_plugin_fw_get_field( $field, true ); ?>
|
41 |
+
<div class="clear"></div>
|
42 |
+
<span class="description"><?php echo $field[ 'desc' ] ?></span>
|
43 |
+
<?php endif; ?>
|
44 |
+
</div>
|
plugin-fw/templates/metaboxes/tab.php
CHANGED
@@ -8,32 +8,44 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
global $post;
|
16 |
|
17 |
do_action( 'yit_before_metaboxes_tab' ) ?>
|
18 |
-
<div class="metaboxes-tab">
|
19 |
<?php do_action( 'yit_before_metaboxes_labels' ) ?>
|
20 |
<ul class="metaboxes-tabs clearfix"<?php if ( count( $tabs ) <= 1 ) : ?> style="display:none;"<?php endif; ?>>
|
21 |
<?php
|
22 |
$i = 0;
|
23 |
foreach ( $tabs as $tab ) :
|
24 |
-
if ( !
|
25 |
continue;
|
26 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
?>
|
28 |
-
|
29 |
-
<a href="#<?php echo urldecode( sanitize_title( $tab['label'] ) ) ?>"><?php echo $tab['label'] ?></a></li><?php
|
30 |
-
$i
|
31 |
endforeach;
|
32 |
?>
|
33 |
</ul>
|
34 |
<?php do_action( 'yit_after_metaboxes_labels' ) ?>
|
35 |
-
<?php if( isset(
|
36 |
-
<?php do_action( 'yit_before_metabox_option_' . urldecode( sanitize_title( $tab['label'] ) ) ); ?>
|
37 |
<?php endif ?>
|
38 |
|
39 |
<?php
|
@@ -43,29 +55,53 @@ do_action( 'yit_before_metaboxes_tab' ) ?>
|
|
43 |
<?php foreach ( $tabs as $tab ) :
|
44 |
|
45 |
?>
|
46 |
-
<div class="tabs-panel" id="<?php echo urldecode( sanitize_title( $tab['label'] ) ) ?>">
|
47 |
<?php
|
48 |
-
if ( !
|
49 |
continue;
|
50 |
}
|
51 |
|
52 |
-
$tab['fields'] = apply_filters( 'yit_metabox_' . sanitize_title( $tab['label'] ) . '_tab_fields', $tab['fields'] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
53 |
|
54 |
-
foreach ( $tab['fields'] as $id_tab=>$field ) :
|
55 |
-
$value = yit_get_post_meta( $post->ID, $field['id'] );
|
56 |
-
$field['value'] = $value != '' ? $value : ( isset( $field['std'] ) ? $field['std'] : '' );
|
57 |
?>
|
58 |
-
<div class="
|
59 |
-
<?php
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
?>
|
68 |
-
<?php yit_plugin_get_template( $basename, $path . $type . '.php' , $args ) ?>
|
69 |
</div>
|
70 |
<?php endforeach ?>
|
71 |
</div>
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
global $post;
|
16 |
|
17 |
do_action( 'yit_before_metaboxes_tab' ) ?>
|
18 |
+
<div class="yith-plugin-fw metaboxes-tab">
|
19 |
<?php do_action( 'yit_before_metaboxes_labels' ) ?>
|
20 |
<ul class="metaboxes-tabs clearfix"<?php if ( count( $tabs ) <= 1 ) : ?> style="display:none;"<?php endif; ?>>
|
21 |
<?php
|
22 |
$i = 0;
|
23 |
foreach ( $tabs as $tab ) :
|
24 |
+
if ( !isset( $tab[ 'fields' ] ) || empty( $tab[ 'fields' ] ) ) {
|
25 |
continue;
|
26 |
}
|
27 |
+
$anchor_id = 'yith-plugin-fw-metabox-tab-' . urldecode( sanitize_title( $tab[ 'label' ] ) ) . '-anchor';
|
28 |
+
|
29 |
+
// parse deps for the tab visibility
|
30 |
+
if ( isset( $tab[ 'deps' ] ) ) {
|
31 |
+
$tab[ 'deps' ][ 'target-id' ] = isset( $tab[ 'deps' ][ 'target-id' ] ) ? $tab[ 'deps' ][ 'target-id' ] : $anchor_id;
|
32 |
+
if ( isset( $tab[ 'deps' ][ 'id' ] ) && strpos( $tab[ 'deps' ][ 'id' ], '_' ) !== 0 )
|
33 |
+
$tab[ 'deps' ][ 'id' ] = '_' . $tab[ 'deps' ][ 'id' ];
|
34 |
+
if ( isset( $tab[ 'deps' ][ 'ids' ] ) && strpos( $tab[ 'deps' ][ 'ids' ], '_' ) !== 0 )
|
35 |
+
$tab[ 'deps' ][ 'ids' ] = '_' . $tab[ 'deps' ][ 'ids' ];
|
36 |
+
|
37 |
+
$tab[ 'deps' ][ 'type' ] = 'hideme';
|
38 |
+
}
|
39 |
?>
|
40 |
+
<li id="<?php echo $anchor_id ?>" <?php if ( !$i ) : ?>class="tabs"<?php endif ?> <?php echo yith_field_deps_data( $tab ); ?>>
|
41 |
+
<a href="#<?php echo urldecode( sanitize_title( $tab[ 'label' ] ) ) ?>"><?php echo $tab[ 'label' ] ?></a></li><?php
|
42 |
+
$i++;
|
43 |
endforeach;
|
44 |
?>
|
45 |
</ul>
|
46 |
<?php do_action( 'yit_after_metaboxes_labels' ) ?>
|
47 |
+
<?php if ( isset( $tab[ 'label' ] ) ) : ?>
|
48 |
+
<?php do_action( 'yit_before_metabox_option_' . urldecode( sanitize_title( $tab[ 'label' ] ) ) ); ?>
|
49 |
<?php endif ?>
|
50 |
|
51 |
<?php
|
55 |
<?php foreach ( $tabs as $tab ) :
|
56 |
|
57 |
?>
|
58 |
+
<div class="tabs-panel" id="<?php echo urldecode( sanitize_title( $tab[ 'label' ] ) ) ?>">
|
59 |
<?php
|
60 |
+
if ( !isset( $tab[ 'fields' ] ) ) {
|
61 |
continue;
|
62 |
}
|
63 |
|
64 |
+
$tab[ 'fields' ] = apply_filters( 'yit_metabox_' . sanitize_title( $tab[ 'label' ] ) . '_tab_fields', $tab[ 'fields' ] );
|
65 |
+
|
66 |
+
foreach ( $tab[ 'fields' ] as $id_tab => $field ) :
|
67 |
+
$field_name = $field[ 'name' ];
|
68 |
+
$field_name = str_replace( 'yit_metaboxes[', '', $field_name );
|
69 |
+
if ( $pos = strpos( $field_name, ']' ) ) {
|
70 |
+
$field_name = substr_replace( $field_name, '', $pos, 1 );
|
71 |
+
}
|
72 |
+
$value = yit_get_post_meta( $post->ID, $field_name );
|
73 |
+
$field[ 'value' ] = $value != '' ? $value : ( isset( $field[ 'std' ] ) ? $field[ 'std' ] : '' );
|
74 |
+
|
75 |
+
$container_classes = "the-metabox " . $field[ 'type' ] . " clearfix ";
|
76 |
+
$container_classes .= empty( $field[ 'label' ] ) ? 'no-label' : '';
|
77 |
|
|
|
|
|
|
|
78 |
?>
|
79 |
+
<div class="<?php echo $container_classes ?>">
|
80 |
+
<?php
|
81 |
+
if ( $field_template_path = yith_plugin_fw_get_field_template_path( $field ) ) {
|
82 |
+
$display_row = 'hidden' !== $field[ 'type' ];
|
83 |
+
$display_row = isset( $field[ 'yith-display-row' ] ) ? !!$field[ 'yith-display-row' ] : $display_row;
|
84 |
+
$field[ 'display-field-only' ] = in_array( $field[ 'type' ], array( 'hidden', 'html', 'sep', 'simple-text', 'title' ) );
|
85 |
+
|
86 |
+
if ( $display_row ) {
|
87 |
+
$field_row_path = apply_filters( 'yith_plugin_fw_metabox_field_row_template_path', YIT_CORE_PLUGIN_TEMPLATE_PATH . '/metaboxes/field-row.php', $field );
|
88 |
+
file_exists( $field_row_path ) && include( $field_row_path );
|
89 |
+
} else {
|
90 |
+
yith_plugin_fw_get_field( $field, true );
|
91 |
+
}
|
92 |
+
} else {
|
93 |
+
// backward compatibility
|
94 |
+
$args = apply_filters( 'yit_fw_metaboxes_type_args', array(
|
95 |
+
'basename' => YIT_CORE_PLUGIN_PATH,
|
96 |
+
'path' => '/metaboxes/types/',
|
97 |
+
'type' => $field[ 'type' ],
|
98 |
+
'args' => array( 'args' => $field )
|
99 |
+
)
|
100 |
+
);
|
101 |
+
extract( $args );
|
102 |
+
yit_plugin_get_template( $basename, $path . $type . '.php', $args );
|
103 |
+
}
|
104 |
?>
|
|
|
105 |
</div>
|
106 |
<?php endforeach ?>
|
107 |
</div>
|
plugin-fw/templates/metaboxes/types/ajax-products.php
DELETED
@@ -1,63 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
wp_enqueue_script( 'woocommerce_admin' );
|
15 |
-
extract( $args );
|
16 |
-
$is_multiple = isset( $multiple ) && $multiple;
|
17 |
-
$multiple = ( $is_multiple ) ? ' multiple' : '';
|
18 |
-
?>
|
19 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
20 |
-
|
21 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
22 |
-
|
23 |
-
<select id="<?php echo $id ?>" name="<?php echo $name ?><?php if( $is_multiple ) echo "[]" ?>" class="ajax_chosen_select_products" multiple="multiple" data-placeholder="<?php _e('Search for a product','yith-plugin-fw') ?>">
|
24 |
-
<?php
|
25 |
-
if ( $value ) {
|
26 |
-
foreach ( $value as $product_id ) {
|
27 |
-
$product = wc_get_product( $product_id );
|
28 |
-
if ( $product ) {
|
29 |
-
echo '<option value="' . esc_attr( $product_id ) . '" selected="selected">' . esc_html( $product->get_formatted_name() ) . '</option>';
|
30 |
-
}
|
31 |
-
}
|
32 |
-
}
|
33 |
-
?>
|
34 |
-
</select>
|
35 |
-
|
36 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
37 |
-
</div>
|
38 |
-
<script>
|
39 |
-
|
40 |
-
(function ($) {
|
41 |
-
$(document).ready(function(){
|
42 |
-
$("select.ajax_chosen_select_products").ajaxChosen({
|
43 |
-
method: 'GET',
|
44 |
-
url: '<?php echo admin_url('admin-ajax.php') ?>',
|
45 |
-
dataType: 'json',
|
46 |
-
afterTypeDelay: 100,
|
47 |
-
data: {
|
48 |
-
action: 'woocommerce_json_search_products',
|
49 |
-
security: '<?php echo wp_create_nonce("search-products") ?>'
|
50 |
-
}
|
51 |
-
}, function (data) {
|
52 |
-
var terms = {};
|
53 |
-
|
54 |
-
$.each(data, function (i, val) {
|
55 |
-
terms[i] = val;
|
56 |
-
});
|
57 |
-
|
58 |
-
return terms;
|
59 |
-
});
|
60 |
-
})
|
61 |
-
|
62 |
-
})(jQuery);
|
63 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/categories.php
DELETED
@@ -1,88 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
global $post;
|
16 |
-
|
17 |
-
extract( $args );
|
18 |
-
|
19 |
-
if ( empty( $value ) || ! is_array( $value ) )
|
20 |
-
$value = array();
|
21 |
-
|
22 |
-
$categories = yit_get_model('cpt_unlimited')->get_setting( 'categories', $post->ID );
|
23 |
-
?>
|
24 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
25 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
26 |
-
<div class="categories-panel">
|
27 |
-
<div class="box">
|
28 |
-
<ul id="<?php echo $id ?>-category-list" class="category-list">
|
29 |
-
<?php if ( ! empty( $categories ) ) : ?>
|
30 |
-
<?php foreach ( $categories as $cat_slug => $cat_name ) : ?>
|
31 |
-
<li>
|
32 |
-
<label class="selectit"><input type="checkbox" name="<?php echo $name ?>[]" value="<?php echo esc_attr( $cat_slug ) ?>"<?php checked( in_array( $cat_slug, $value ) ) ?> /> <?php echo $cat_name ?> <a class="remove_cat" href="#">X</a></label>
|
33 |
-
</li>
|
34 |
-
<?php endforeach; ?>
|
35 |
-
<?php else : ?>
|
36 |
-
<li class="remove-after-add"><i><?php _e( 'No categories.', 'yith-plugin-fw' ); ?></i></li>
|
37 |
-
<?php endif; ?>
|
38 |
-
</ul>
|
39 |
-
</div>
|
40 |
-
<div class="wp-hidden-children">
|
41 |
-
<h4>
|
42 |
-
<a tabindex="3" class="hide-if-no-js" href="#category-add" id="<?php echo $id ?>-category-add"><?php _e( '+ Add New Category', 'yith-plugin-fw' ); ?></a>
|
43 |
-
</h4>
|
44 |
-
<p class="category-add-field" id="<?php echo $id ?>-category-field">
|
45 |
-
<input type="text" class="newcategory" name="newcategory" style="width:100%;" id="<?php echo $id ?>-new-category" />
|
46 |
-
<input type="button" value="<?php esc_attr_e( 'Add', 'yit' ); ?>" class="add:categorychecklist:category-add button category-add-submit" id="<?php echo $id ?>-category-add-submit" />
|
47 |
-
</p>
|
48 |
-
</div>
|
49 |
-
</div>
|
50 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
51 |
-
</div>
|
52 |
-
<script type="text/javascript">
|
53 |
-
jQuery(document).ready(function($){
|
54 |
-
$('#<?php echo $id ?>-category-field').hide();
|
55 |
-
$(document).on('click', '#<?php echo $id ?>-category-add', function(){
|
56 |
-
$('#<?php echo $id ?>-category-field').toggle();
|
57 |
-
return false;
|
58 |
-
});
|
59 |
-
|
60 |
-
$(document).on('click', '#<?php echo $id ?>-category-add-submit', function(){
|
61 |
-
var t = $(this);
|
62 |
-
var new_category = $('#<?php echo $id ?>-new-category').val();
|
63 |
-
|
64 |
-
var data = {
|
65 |
-
action: 'add_category_post_type',
|
66 |
-
post_id: <?php echo $post->ID; ?>,
|
67 |
-
new_category: new_category
|
68 |
-
};
|
69 |
-
|
70 |
-
$.post(ajaxurl, data, function(response) {
|
71 |
-
t.prev().val('');
|
72 |
-
var new_cat = response;
|
73 |
-
|
74 |
-
$('.remove-after-add').hide();
|
75 |
-
$('.category-list').each(function(){
|
76 |
-
var this_post_id = $(this).attr('id');
|
77 |
-
var name = '<?php echo $name ?>';
|
78 |
-
this_post_id = this_post_id.match( /([0-9]+)/gi );
|
79 |
-
name = name.replace( /[0-9]+/g, this_post_id[0] );
|
80 |
-
$(this).prepend('<li><label class="selectit"><input type="checkbox" name="'+name+'[]" value="'+new_cat.slug+'" /> '+new_cat.name+' <a class="remove_cat" href="#">X</a></label></li>');
|
81 |
-
$('#<?php echo $id ?>-category-list li:first-child .selectit input').attr('checked', true);
|
82 |
-
});
|
83 |
-
}, 'json');
|
84 |
-
|
85 |
-
});
|
86 |
-
|
87 |
-
});
|
88 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/checkbox.php
DELETED
@@ -1,23 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
19 |
-
<p>
|
20 |
-
<input type="checkbox" id="<?php echo $id ?>" name="<?php echo $name ?>" value="1" <?php if( isset( $std ) ) : ?>data-std="<?php echo $std ?>" <?php endif; checked( $value, 1 ) ?> />
|
21 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
22 |
-
</p>
|
23 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/chosen.php
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
$is_multiple = isset( $multiple ) && $multiple;
|
17 |
-
$multiple = ( $is_multiple ) ? ' multiple' : '';
|
18 |
-
?>
|
19 |
-
<div id="<?php echo $id ?>-container" class="chosen" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
20 |
-
|
21 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
22 |
-
|
23 |
-
<div class="select_wrapper">
|
24 |
-
<select<?php echo $multiple ?> id="<?php echo $id ?>" class="chosen" name="<?php echo $name ?><?php if( $is_multiple ) echo "[]" ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo ( $is_multiple )? implode(' ,', $std) : $std ?>"<?php endif ?>>
|
25 |
-
<?php foreach ( $options as $key => $item ) : ?>
|
26 |
-
<option value="<?php echo esc_attr( $key ) ?>" <?php if( $is_multiple ): selected( true, in_array( $key, $value ) ); else: selected( $key, $value ); endif; ?> ><?php echo $item ?></option>
|
27 |
-
<?php endforeach; ?>
|
28 |
-
</select>
|
29 |
-
</div>
|
30 |
-
|
31 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
32 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/colorpicker.php
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
19 |
-
|
20 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $value ) ?>" <?php if( isset( $std ) ) : ?>data-default-color="<?php echo $std ?>"<?php endif ?> class="panel-colorpicker"/>
|
21 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
22 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/contactform.php
DELETED
@@ -1,557 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
extract( $args );
|
5 |
-
|
6 |
-
$types = array(
|
7 |
-
'text' => __( 'Text Input', 'yith-plugin-fw' ),
|
8 |
-
'checkbox' => __( 'Checkbox', 'yith-plugin-fw' ),
|
9 |
-
'select' => __( 'Select', 'yith-plugin-fw' ),
|
10 |
-
'textarea' => __( 'Textarea', 'yith-plugin-fw' ),
|
11 |
-
'radio' => __( 'Radio Input', 'yith-plugin-fw' ),
|
12 |
-
'password' => __( 'Password Field', 'yith-plugin-fw' ),
|
13 |
-
'file' => __( 'File Upload', 'yith-plugin-fw' ),
|
14 |
-
);
|
15 |
-
|
16 |
-
$defaults = array(
|
17 |
-
'order' => 0,
|
18 |
-
'title' => '',
|
19 |
-
'data_name' => '',
|
20 |
-
'type' => 'text',
|
21 |
-
'already_checked' => '',
|
22 |
-
'options' => array(),
|
23 |
-
'option_selected' => '',
|
24 |
-
'error' => '',
|
25 |
-
'required' => '',
|
26 |
-
'is_email' => '',
|
27 |
-
'reply_to' => '',
|
28 |
-
'class' => '',
|
29 |
-
'select-icon' => 'none',
|
30 |
-
'icon' => '',
|
31 |
-
'custom-icon' => ''
|
32 |
-
);
|
33 |
-
|
34 |
-
if ( ! is_array( $value ) ) {
|
35 |
-
$value = array();
|
36 |
-
}
|
37 |
-
foreach ( $value as $i => $v ) {
|
38 |
-
$value[$i] = wp_parse_args( $value[$i], $defaults );
|
39 |
-
}
|
40 |
-
|
41 |
-
$index = 1;
|
42 |
-
|
43 |
-
|
44 |
-
/* Select Font Awesome */
|
45 |
-
|
46 |
-
$options["select"]=array(
|
47 |
-
'icon' => __( 'Theme Icon', 'yith-plugin-fw' ),
|
48 |
-
'custom' => __( 'Custom Icon', 'yith-plugin-fw' ),
|
49 |
-
'none' => __( 'None', 'yith-plugin-fw' )
|
50 |
-
);
|
51 |
-
|
52 |
-
$options["icon"] = YIT_Plugin_Common::get_awesome_icons();
|
53 |
-
|
54 |
-
/* End select Font Awesome */
|
55 |
-
?>
|
56 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
57 |
-
<?php if( isset( $label ) ):?><label for="<?php echo $id ?>"><?php echo $label ?></label><?php endif;?>
|
58 |
-
|
59 |
-
<p class="field-row">
|
60 |
-
<a href="" class="button-secondary add-items"><?php _e( 'Add field', 'yith-plugin-fw' ) ?></a>
|
61 |
-
<img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-loading" id="add-items-ajax-loading" alt="" />
|
62 |
-
</p>
|
63 |
-
|
64 |
-
|
65 |
-
<div class="contactform_items panel" id="panel_form">
|
66 |
-
<?php while ( $index <= count( $value ) ): ?>
|
67 |
-
<div class="contactform_item closed">
|
68 |
-
<h3>
|
69 |
-
<button type="button" class="remove_item button" rel=""><?php _e( 'Remove', 'yith-plugin-fw' ) ?></button>
|
70 |
-
<div class="handlediv" title="<?php _e( 'Click to toggle', 'yith-plugin-fw' ) ?>"></div>
|
71 |
-
<strong><?php echo $value[$index]['title'] ?> <?php yit_string( '(', $types[$value[$index]['type']], ')' ) ?></strong>
|
72 |
-
<input type="hidden" class="contactform_menu_order" name="<?php echo $name ?>[<?php echo $index ?>][order]" value="<?php echo esc_attr( $index ) ?>" />
|
73 |
-
</h3>
|
74 |
-
<div class="inside">
|
75 |
-
|
76 |
-
<div class="the-metabox text clearfix">
|
77 |
-
<label for="<?php echo $id ?>_title_<?php echo $index ?>"><?php _e( 'Field Title', 'yith-plugin-fw' ) ?></label>
|
78 |
-
|
79 |
-
<p>
|
80 |
-
<input type="text" value="<?php echo esc_attr( $value[$index]['title'] ) ?>" id="<?php echo $id ?>_title_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][title]" />
|
81 |
-
<span class="desc inline"><?php _e( 'Insert the title for the field.', 'yith-plugin-fw' ) ?></span>
|
82 |
-
</p>
|
83 |
-
</div>
|
84 |
-
|
85 |
-
<div class="the-metabox text clearfix">
|
86 |
-
<label for="<?php echo $id ?>_data_name_<?php echo $index ?>"><?php _e( 'Data Name', 'yith-plugin-fw' ) ?></label>
|
87 |
-
|
88 |
-
<p>
|
89 |
-
<input type="text" value="<?php echo esc_attr( $value[$index]['data_name'] ) ?>" id="<?php echo $id ?>_data_name_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][data_name]" />
|
90 |
-
<span class="desc inline"><?php _e( 'REQUIRED: Field identification name to be entered into email body. <strong>Note:</strong>Use only lowercase characters and underscores.', 'yith-plugin-fw' ) ?></span>
|
91 |
-
</p>
|
92 |
-
</div>
|
93 |
-
|
94 |
-
<div class="the-metabox select clearfix text-field-type">
|
95 |
-
<label for="<?php echo $id ?>_type_<?php echo $index ?>"><?php _e( 'Field Type', 'yith-plugin-fw' ) ?></label>
|
96 |
-
|
97 |
-
<p>
|
98 |
-
<select id="<?php echo $id ?>_type_<?php echo $index ?>" name="<?php echo $name . '[' . $index . ']' ?>[type]">
|
99 |
-
<?php foreach ( $types as $type => $name_type ) : ?>
|
100 |
-
<option value="<?php echo esc_attr( $type ) ?>"<?php selected( $type, $value[$index]['type'] ) ?>><?php echo $name_type ?></option>
|
101 |
-
<?php endforeach; ?>
|
102 |
-
</select>
|
103 |
-
<span class="desc inline"><?php _e( 'Select the type for this field.', 'yith-plugin-fw' ) ?></span>
|
104 |
-
</p>
|
105 |
-
</div>
|
106 |
-
|
107 |
-
<div class="the-metabox checkbox clearfix deps_checkbox deps">
|
108 |
-
<label for="<?php echo $id ?>_already_checked_<?php echo $index ?>"><?php _e( 'Checked', 'yith-plugin-fw' ) ?></label>
|
109 |
-
|
110 |
-
<p>
|
111 |
-
<input type="checkbox" id="<?php echo $id ?>_already_checked_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][already_checked]" value="1"<?php checked( $value[$index]['already_checked'] ) ?> />
|
112 |
-
<span class="desc inline"><?php _e( 'Select this option if you want this field appears as already checked.', 'yith-plugin-fw' ) ?></span>
|
113 |
-
</p>
|
114 |
-
</div>
|
115 |
-
|
116 |
-
<div id="<?php echo $id ?>_addoptions" class="the-metabox addoptions clearfix deps_radio deps_select deps">
|
117 |
-
<label for=""><?php _e( 'Add options ', 'yith-plugin-fw' ) ?></label>
|
118 |
-
<a href="#" class="add-field-option button-secondary" data-index="<?php echo $index ?>"><?php _e( 'Add option', 'yith-plugin-fw' ) ?></a><br /><br />
|
119 |
-
<?php foreach ( $value[$index]['options'] as $key => $option ) : ?>
|
120 |
-
<p class="option">
|
121 |
-
<label><input type="radio" name="<?php echo $name ?>[<?php echo $index ?>][option_selected]" value="<?php echo esc_attr( $key ) ?>"<?php checked( $value[$index]['option_selected'], $key ) ?> /> <?php _e( 'Selected', 'yith-plugin-fw' ) ?>
|
122 |
-
</label>
|
123 |
-
<input type="text" name="<?php echo $name ?>[<?php echo $index ?>][options][]" value="<?php echo $option ?>" style="width:200px" />
|
124 |
-
<a href="#" class="del-field-option button-secondary"><?php _e( 'Delete option', 'yith-plugin-fw' ) ?></a>
|
125 |
-
</p>
|
126 |
-
<?php endforeach; ?>
|
127 |
-
</div>
|
128 |
-
|
129 |
-
<div class="the-metabox text clearfix">
|
130 |
-
<label for="<?php echo $id ?>_error_<?php echo $index ?>"><?php _e( 'Error Message', 'yith-plugin-fw' ) ?></label>
|
131 |
-
|
132 |
-
<p>
|
133 |
-
<input type="text" value="<?php echo esc_attr( $value[$index]['error'] ) ?>" id="<?php echo $id ?>_error_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][error]" />
|
134 |
-
<span class="desc inline"><?php _e( 'Insert the error message for validation.', 'yith-plugin-fw' ) ?></span>
|
135 |
-
</p>
|
136 |
-
</div>
|
137 |
-
|
138 |
-
<div class="the-metabox checkbox clearfix">
|
139 |
-
<label for="<?php echo $id ?>_required_<?php echo $index ?>"><?php _e( 'Required', 'yith-plugin-fw' ) ?></label>
|
140 |
-
|
141 |
-
<p>
|
142 |
-
<input type="checkbox" id="<?php echo $id ?>_required_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][required]" value="1"<?php checked( $value[$index]['required'] ) ?> />
|
143 |
-
<span class="desc inline"><?php _e( 'Select this option if it must be required.', 'yith-plugin-fw' ) ?></span>
|
144 |
-
</p>
|
145 |
-
</div>
|
146 |
-
|
147 |
-
<div class="the-metabox checkbox clearfix">
|
148 |
-
<label for="<?php echo $id ?>_is_email_<?php echo $index ?>"><?php _e( 'Email', 'yith-plugin-fw' ) ?></label>
|
149 |
-
|
150 |
-
<p>
|
151 |
-
<input type="checkbox" id="<?php echo $id ?>_is_email_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][is_email]" value="1"<?php checked( $value[$index]['is_email'] ) ?> />
|
152 |
-
<span class="desc inline"><?php _e( 'Select this option if the email must be valid.', 'yith-plugin-fw' ) ?></span>
|
153 |
-
</p>
|
154 |
-
</div>
|
155 |
-
|
156 |
-
<div class="the-metabox checkbox clearfix">
|
157 |
-
<label for="<?php echo $id ?>_reply_to_<?php echo $index ?>"><?php _e( 'Reply To', 'yith-plugin-fw' ) ?></label>
|
158 |
-
|
159 |
-
<p>
|
160 |
-
<input type="checkbox" id="<?php echo $id ?>_reply_to_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][reply_to]" value="1"<?php checked( $value[$index]['reply_to'] ) ?> />
|
161 |
-
<span class="desc inline"><?php _e( 'Select this if it is the email you can reply to.', 'yith-plugin-fw' ) ?></span>
|
162 |
-
</p>
|
163 |
-
</div>
|
164 |
-
|
165 |
-
<div class="the-metabox text clearfix">
|
166 |
-
<label for="<?php echo $id ?>_class_<?php echo $index ?>"><?php _e( 'Class', 'yith-plugin-fw' ) ?></label>
|
167 |
-
|
168 |
-
<p>
|
169 |
-
<input type="text" value="<?php echo esc_attr( $value[$index]['class'] ) ?>" id="<?php echo $id ?>_class_<?php echo $index ?>" name="<?php echo $name ?>[<?php echo $index ?>][class]" />
|
170 |
-
<span class="desc inline"><?php _e( 'Insert additional class(es) (separated by commas) for more personalization.', 'yith-plugin-fw' ) ?></span>
|
171 |
-
</p>
|
172 |
-
</div>
|
173 |
-
|
174 |
-
<div class="the-metabox text clearfix">
|
175 |
-
<label for="<?php echo $id ?>_icon_<?php echo $index ?>"><?php _e( 'Icon', 'yith-plugin-fw' ) ?></label>
|
176 |
-
|
177 |
-
<p>
|
178 |
-
|
179 |
-
<div class="option">
|
180 |
-
|
181 |
-
<div class="icon_type">
|
182 |
-
<select name="<?php echo $name ?>[<?php echo $index ?>][select-icon]" id="<?php echo $id ?>_icon_<?php echo $index ?>">
|
183 |
-
<?php foreach ( $options['select'] as $val => $option ) { ?>
|
184 |
-
<option value="<?php echo esc_attr( $val ) ?>"<?php selected( $value[$index]['select-icon'], $val ) ?>><?php echo $option; ?></option>
|
185 |
-
<?php } ?>
|
186 |
-
</select>
|
187 |
-
</div>
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
<div class="awesome_icon" style="font-family: 'FontAwesome'">
|
192 |
-
<select style="font-family: 'FontAwesome'" name="<?php echo $name ?>[<?php echo $index ?>][icon]" id="<?php echo $id ?>_icon_<?php echo $index ?>[icon]">
|
193 |
-
<?php foreach ( $options['icon'] as $option => $val ) { ?>
|
194 |
-
<option value="<?php echo esc_attr( $val ) ?>"<?php selected( $value[$index]['icon'], $val ); ?>>
|
195 |
-
<?php echo '&#x' . $option . '; ' . $val; ?>
|
196 |
-
</option>
|
197 |
-
<?php } ?>
|
198 |
-
</select>
|
199 |
-
</div>
|
200 |
-
|
201 |
-
<div class="input_wrapper custom_icon">
|
202 |
-
<input type="text" name="<?php echo $name ?>[<?php echo $index ?>][custom]" id="<?php echo $id ?>_icon_<?php echo $index ?>[custom-icon]" value="<?php echo esc_attr( $value[$index]['custom'] ); ?>" class="upload_img_url upload_custom_icon" />
|
203 |
-
<input type="button" name="<?php echo $name ?>[<?php echo $index ?>][custom]-button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" id="<?php echo $id ?>_icon_<?php echo $index ?>[custom-icon]-button" class="upload_button button" />
|
204 |
-
|
205 |
-
<div class="upload_img_preview" style="margin-top:10px;">
|
206 |
-
<?php
|
207 |
-
$file = $current_options['custom'];
|
208 |
-
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
209 |
-
echo __('Image preview', 'yith-plugin-fw') . ': ' . "<img src=\"" . YIT_CORE_ASSETS_URL . "/images/sleep.png\" data-src=\"$file\" />";
|
210 |
-
}
|
211 |
-
?>
|
212 |
-
</div>
|
213 |
-
|
214 |
-
</div>
|
215 |
-
</div>
|
216 |
-
|
217 |
-
<span class="desc inline"><?php _e( 'Insert an icon for more personalization.', 'yith-plugin-fw' ) ?></span>
|
218 |
-
</p>
|
219 |
-
</div>
|
220 |
-
|
221 |
-
<div class="the-metabox text clearfix">
|
222 |
-
<label for="<?php echo $id ?>_width_<?php echo $index ?>"><?php _e( 'Width', 'yith-plugin-fw' ) ?></label>
|
223 |
-
|
224 |
-
<p>
|
225 |
-
<select id="<?php echo $id ?>_width_<?php echo $index ?>" name="<?php echo $name . '[' . $index . ']' ?>[width]">
|
226 |
-
<?php
|
227 |
-
for ( $i = 1; $i < 13; $i ++ ) {
|
228 |
-
?>
|
229 |
-
<option value="col-sm-<?php echo $i ?>"
|
230 |
-
<?php
|
231 |
-
if ( isset( $value[$index]['width'] ) ) {
|
232 |
-
selected( 'col-sm-' . $i, $value[$index]['width'] );
|
233 |
-
}
|
234 |
-
else {
|
235 |
-
if ( $value['type'] == 'textarea' ) {
|
236 |
-
selected( 'col-sm-' . $i, 'col-sm-9' );
|
237 |
-
}
|
238 |
-
else {
|
239 |
-
selected( 'col-sm-' . $i, 'col-sm-3' );
|
240 |
-
}
|
241 |
-
}
|
242 |
-
?>><?php echo $i ?></option>
|
243 |
-
<?php
|
244 |
-
}
|
245 |
-
?>
|
246 |
-
</select>
|
247 |
-
<span class="desc inline"><?php _e( 'Set field length.', 'yith-plugin-fw' ) ?></span>
|
248 |
-
</p>
|
249 |
-
</div>
|
250 |
-
</div>
|
251 |
-
</div>
|
252 |
-
<?php
|
253 |
-
$index ++;
|
254 |
-
endwhile;
|
255 |
-
?>
|
256 |
-
|
257 |
-
</div>
|
258 |
-
|
259 |
-
<div class="contactform_item closed" id="stamp_form" style="display:none;">
|
260 |
-
<h3>
|
261 |
-
<button type="button" class="remove_item button" rel=""><?php _e( 'Remove', 'yith-plugin-fw' ) ?></button>
|
262 |
-
<div class="handlediv" title="<?php _e( 'Click to toggle', 'yith-plugin-fw' ) ?>"></div>
|
263 |
-
<strong></strong>
|
264 |
-
<input disabled type="hidden" class="contactform_menu_order" name="<?php echo $name ?>[][order]" value=""/>
|
265 |
-
</h3>
|
266 |
-
<div class="inside">
|
267 |
-
|
268 |
-
<div class="the-metabox text clearfix">
|
269 |
-
<label for="<?php echo $id ?>_title"><?php _e( 'Field Title', 'yith-plugin-fw' ) ?></label>
|
270 |
-
|
271 |
-
<p>
|
272 |
-
<input disabled type="text" value="" id="<?php echo $id ?>_title" name="<?php echo $name ?>[][title]" />
|
273 |
-
<span class="desc inline"><?php _e( 'Insert the title for the field.', 'yith-plugin-fw' ) ?></span>
|
274 |
-
</p>
|
275 |
-
</div>
|
276 |
-
|
277 |
-
<div class="the-metabox text clearfix">
|
278 |
-
<label for="<?php echo $id ?>_data_name"><?php _e( 'Data Name', 'yith-plugin-fw' ) ?></label>
|
279 |
-
|
280 |
-
<p>
|
281 |
-
<input disabled type="text" value="" id="<?php echo $id ?>_data_name" name="<?php echo $name ?>[][data_name]" />
|
282 |
-
<span class="desc inline"><?php _e( 'REQUIRED: Field identification name to be entered into email body. <strong>Note:</strong>Use only lowercase characters and underscores.', 'yith-plugin-fw' ) ?></span>
|
283 |
-
</p>
|
284 |
-
</div>
|
285 |
-
|
286 |
-
<div class="the-metabox select clearfix text-field-type">
|
287 |
-
<label for="<?php echo $id ?>_type"><?php _e( 'Field Type', 'yith-plugin-fw' ) ?></label>
|
288 |
-
|
289 |
-
<p>
|
290 |
-
<select disabled id="<?php echo $id ?>_type" name="<?php echo $name ?>[][type]">
|
291 |
-
<?php foreach ( $types as $type => $name_type ) : ?>
|
292 |
-
<option value="<?php echo esc_attr( $type ) ?>"><?php echo $name_type ?></option>
|
293 |
-
<?php endforeach; ?>
|
294 |
-
</select>
|
295 |
-
<span class="desc inline"><?php _e( 'Select the type for this field.', 'yith-plugin-fw' ) ?></span>
|
296 |
-
</p>
|
297 |
-
</div>
|
298 |
-
|
299 |
-
<div class="the-metabox checkbox clearfix deps_checkbox deps">
|
300 |
-
<label for="<?php echo $id ?>_already_checked"><?php _e( 'Checked', 'yith-plugin-fw' ) ?></label>
|
301 |
-
|
302 |
-
<p>
|
303 |
-
<input disabled type="checkbox" id="<?php echo $id ?>_already_checked" name="<?php echo $name ?>[][already_checked]" value="1" />
|
304 |
-
<span class="desc inline"><?php _e( 'Select this option if you want this field appears as already checked.', 'yith-plugin-fw' ) ?></span>
|
305 |
-
</p>
|
306 |
-
</div>
|
307 |
-
|
308 |
-
<div id="<?php echo $id ?>_addoptions" class="the-metabox addoptions clearfix deps_radio deps_select deps">
|
309 |
-
<label for=""><?php _e( 'Add options ', 'yith-plugin-fw' ) ?></label>
|
310 |
-
<a href="#" class="add-field-option button-secondary"><?php _e( 'Add option', 'yith-plugin-fw' ) ?></a><br /><br />
|
311 |
-
|
312 |
-
<p class="option">
|
313 |
-
<label><input disabled type="radio" name="<?php echo $name ?>[][option_selected]" value="" /> <?php _e( 'Selected', 'yith-plugin-fw' ) ?>
|
314 |
-
</label>
|
315 |
-
<input disabled type="text" name="<?php echo $name ?>[][options][]" value="" style="width:200px" />
|
316 |
-
<a href="#" class="del-field-option button-secondary"><?php _e( 'Delete option', 'yith-plugin-fw' ) ?></a>
|
317 |
-
</p>
|
318 |
-
|
319 |
-
</div>
|
320 |
-
|
321 |
-
<div class="the-metabox text clearfix">
|
322 |
-
<label for="<?php echo $id ?>_error"><?php _e( 'Error Message', 'yith-plugin-fw' ) ?></label>
|
323 |
-
|
324 |
-
<p>
|
325 |
-
<input disabled type="text" value="" id="<?php echo $id ?>_error" name="<?php echo $name ?>[][error]" />
|
326 |
-
<span class="desc inline"><?php _e( 'Insert the error message for validation.', 'yith-plugin-fw' ) ?></span>
|
327 |
-
</p>
|
328 |
-
</div>
|
329 |
-
|
330 |
-
<div class="the-metabox checkbox clearfix">
|
331 |
-
<label for="<?php echo $id ?>_required"><?php _e( 'Required', 'yith-plugin-fw' ) ?></label>
|
332 |
-
|
333 |
-
<p>
|
334 |
-
<input disabled type="checkbox" id="<?php echo $id ?>_required" name="<?php echo $name ?>[][required]" value="1" />
|
335 |
-
<span class="desc inline"><?php _e( 'Select this option if it must be required.', 'yith-plugin-fw' ) ?></span>
|
336 |
-
</p>
|
337 |
-
</div>
|
338 |
-
|
339 |
-
<div class="the-metabox checkbox clearfix">
|
340 |
-
<label for="<?php echo $id ?>_is_email"><?php _e( 'Email', 'yith-plugin-fw' ) ?></label>
|
341 |
-
|
342 |
-
<p>
|
343 |
-
<input disabled type="checkbox" id="<?php echo $id ?>_is_email" name="<?php echo $name ?>[][is_email]" value="1" />
|
344 |
-
<span class="desc inline"><?php _e( 'Select this option if the email must be valid.', 'yith-plugin-fw' ) ?></span>
|
345 |
-
</p>
|
346 |
-
</div>
|
347 |
-
|
348 |
-
<div class="the-metabox checkbox clearfix">
|
349 |
-
<label for="<?php echo $id ?>_reply_to"><?php _e( 'Reply To', 'yith-plugin-fw' ) ?></label>
|
350 |
-
|
351 |
-
<p>
|
352 |
-
<input disabled type="checkbox" id="<?php echo $id ?>_reply_to" name="<?php echo $name ?>[][reply_to]" value="1" />
|
353 |
-
<span class="desc inline"><?php _e( 'Select this if it is the email you can reply to.', 'yith-plugin-fw' ) ?></span>
|
354 |
-
</p>
|
355 |
-
</div>
|
356 |
-
|
357 |
-
<div class="the-metabox text clearfix">
|
358 |
-
<label for="<?php echo $id ?>_class"><?php _e( 'Class', 'yith-plugin-fw' ) ?></label>
|
359 |
-
|
360 |
-
<p>
|
361 |
-
<input disabled type="text" value="" id="<?php echo $id ?>_class" name="<?php echo $name ?>[][class]" />
|
362 |
-
<span class="desc inline"><?php _e( 'Insert additional class(es) (separated by commas) for more personalization.', 'yith-plugin-fw' ) ?></span>
|
363 |
-
</p>
|
364 |
-
</div>
|
365 |
-
|
366 |
-
<div class="the-metabox text clearfix">
|
367 |
-
<label for="<?php echo $id ?>_icon"><?php _e( 'Icon', 'yith-plugin-fw' ) ?></label>
|
368 |
-
|
369 |
-
<div class="option">
|
370 |
-
|
371 |
-
<div class="icon_type">
|
372 |
-
<select disabled name="<?php echo $name ?>[][select-icon]" id="<?php echo $id ?>_icon">
|
373 |
-
<?php foreach ( $options['select'] as $val => $option ) { ?>
|
374 |
-
<option value="<?php echo esc_attr( $val ) ?>"><?php echo $option; ?></option>
|
375 |
-
<?php } ?>
|
376 |
-
</select>
|
377 |
-
</div>
|
378 |
-
|
379 |
-
<div class="awesome_icon" style="font-family: 'FontAwesome'">
|
380 |
-
<select disabled style="font-family: 'FontAwesome'" name="<?php echo $name ?>[][icon]" id="<?php echo $id ?>_icon[icon]">
|
381 |
-
<?php foreach ( $options['icon'] as $option => $val ) { ?>
|
382 |
-
<option value="<?php echo esc_attr( $val ) ?>">
|
383 |
-
<?php echo '&#x' . $option . '; ' . $val; ?>
|
384 |
-
</option>
|
385 |
-
<?php } ?>
|
386 |
-
</select>
|
387 |
-
</div>
|
388 |
-
|
389 |
-
<div class="input_wrapper custom_icon">
|
390 |
-
<input disabled type="text" name="<?php echo $name ?>[][custom]" id="<?php echo $id ?>_icon[custom-icon]" value="" class="upload_img_url upload_custom_icon" />
|
391 |
-
<input disabled type="button" name="<?php echo $name ?>[][custom]-button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" id="<?php echo $id ?>_icon[custom-icon]-button" class="upload_button button" />
|
392 |
-
|
393 |
-
<div class="upload_img_preview" style="margin-top:10px;">
|
394 |
-
<?php
|
395 |
-
$file = '';
|
396 |
-
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
397 |
-
echo __('Image preview', 'yith-plugin-fw') . ': ' . "<img src=\"" . YIT_CORE_ASSETS_URL . "/images/sleep.png\" data-src=\"$file\" />";
|
398 |
-
}
|
399 |
-
?>
|
400 |
-
</div>
|
401 |
-
|
402 |
-
</div>
|
403 |
-
</div>
|
404 |
-
|
405 |
-
<span class="desc inline"><?php _e( 'Insert an icon for more personalization.', 'yith-plugin-fw' ) ?></span>
|
406 |
-
</div>
|
407 |
-
|
408 |
-
<div class="the-metabox text clearfix">
|
409 |
-
<label for="<?php echo $id ?>_width"><?php _e( 'Width', 'yith-plugin-fw' ) ?></label>
|
410 |
-
|
411 |
-
<p>
|
412 |
-
<select disabled id="<?php echo $id ?>_width" name="<?php echo $name?>[][width]">
|
413 |
-
<?php
|
414 |
-
for ( $i = 1; $i < 13; $i ++ ) {
|
415 |
-
?>
|
416 |
-
<option value="col-sm-<?php echo $i ?>"> <?php echo $i ?> </option>
|
417 |
-
<?php
|
418 |
-
}
|
419 |
-
?>
|
420 |
-
</select>
|
421 |
-
<span class="desc inline"><?php _e( 'Set field length.', 'yith-plugin-fw' ) ?></span>
|
422 |
-
</p>
|
423 |
-
</div>
|
424 |
-
</div>
|
425 |
-
</div>
|
426 |
-
</div>
|
427 |
-
|
428 |
-
<script>
|
429 |
-
|
430 |
-
var index = <?php echo $index ?>;
|
431 |
-
|
432 |
-
jQuery(document).ready(function ($) {
|
433 |
-
|
434 |
-
$(document).on('click', '#<?php echo $id ?>_addoptions .add-field-option', function(){
|
435 |
-
var select_index = $(this).data('index');
|
436 |
-
var option = "<p class='option'><label><input type='radio' name='<?php echo $name ?>[option_selected]' value='' /> <?php _e( 'Selected', 'yith-plugin-fw' ) ?></label><input type='text' name='<?php echo $name ?>[" + select_index + "][options][]' style='width:200px' /> <a href='#' class='del-field-option button-secondary'><?php _e( 'Delete option', 'yith-plugin-fw' ) ?></a></p>";
|
437 |
-
|
438 |
-
$(option).appendTo( $(this).parents('#<?php echo $id ?>_addoptions') );
|
439 |
-
return false;
|
440 |
-
});
|
441 |
-
|
442 |
-
//toggle items
|
443 |
-
$(document).on('click', '.contactform_item h3, .contactform_item .handlediv', function () {
|
444 |
-
var p = $(this).parent('.contactform_item'), id = p.attr('id');
|
445 |
-
p.toggleClass('closed');
|
446 |
-
|
447 |
-
if (!p.hasClass('closed')) {
|
448 |
-
p.find('.inside').show();
|
449 |
-
} else {
|
450 |
-
p.find('.inside').hide();
|
451 |
-
}
|
452 |
-
|
453 |
-
});
|
454 |
-
|
455 |
-
//add item
|
456 |
-
$(".add-items").click(function () {
|
457 |
-
|
458 |
-
|
459 |
-
var a = $("#stamp_form").clone();
|
460 |
-
a.appendTo("#panel_form").attr("id", "").show();
|
461 |
-
|
462 |
-
a.find("input, select").each(function(){
|
463 |
-
$(this).prop('disabled', false);
|
464 |
-
var str = $(this).attr("name");
|
465 |
-
|
466 |
-
var nam = str.replace("[]","["+ index +"]");
|
467 |
-
$(this).attr("name", nam );
|
468 |
-
});
|
469 |
-
|
470 |
-
index++;
|
471 |
-
|
472 |
-
$('body').trigger('yit_contact_form_added_item');
|
473 |
-
|
474 |
-
return false;
|
475 |
-
});
|
476 |
-
|
477 |
-
//remove item
|
478 |
-
$(document).on('click', '.remove_item', function () {
|
479 |
-
if ($('.remove_item').length > 1) {
|
480 |
-
var str = $(this).parents('.contactform_item').find("input:first-child").attr("name").match( /(.*)\[(.*)\](.*)\[(.*)\]/ );
|
481 |
-
|
482 |
-
var i = parseInt(str[2]);
|
483 |
-
|
484 |
-
$('.contactform_item:gt('+ --i +')').find("input, select").each(function(){
|
485 |
-
var str = $(this).attr("name").match( /(.*)\[(.*)\](.*)\[(.*)\]/ );
|
486 |
-
var indice = parseInt(str[2]);
|
487 |
-
var nam = $(this).attr('name').replace("[" + indice + "]", "[" + --indice + "]");
|
488 |
-
$(this).attr("name", nam );
|
489 |
-
});
|
490 |
-
|
491 |
-
$(this).parents('.contactform_item').remove();
|
492 |
-
|
493 |
-
index--;
|
494 |
-
|
495 |
-
$('body').trigger('yit_contact_form_removed_item');
|
496 |
-
}
|
497 |
-
|
498 |
-
return false;
|
499 |
-
});
|
500 |
-
|
501 |
-
//sortable
|
502 |
-
$('.contactform_items').sortable({
|
503 |
-
items:'.contactform_item',
|
504 |
-
cursor:'move',
|
505 |
-
axis:'y',
|
506 |
-
handle: 'h3',
|
507 |
-
scrollSensitivity:60,
|
508 |
-
forcePlaceholderSize: true,
|
509 |
-
helper: 'clone',
|
510 |
-
opacity: 0.65,
|
511 |
-
placeholder: 'metabox-sortable-placeholder',
|
512 |
-
start:function(event,ui){
|
513 |
-
ui.item.css('background-color','#f6f6f6');
|
514 |
-
},
|
515 |
-
stop:function(event,ui){
|
516 |
-
ui.item.removeAttr('style');
|
517 |
-
|
518 |
-
|
519 |
-
variation_row_indexes();
|
520 |
-
}
|
521 |
-
});
|
522 |
-
|
523 |
-
|
524 |
-
function variation_row_indexes() {
|
525 |
-
$('.contactform_items .contactform_item').each(function(index){
|
526 |
-
index++;
|
527 |
-
$(this).find("input,select").each(function(){
|
528 |
-
var str = $(this).attr('name').match( /(.*)\[(.*)\](.*)\[(.*)\]/ );
|
529 |
-
var nam = $(this).attr('name').replace("[" +parseInt(str[2])+ "]", "[" +index+ "]");
|
530 |
-
$(this).attr('name', nam);
|
531 |
-
});
|
532 |
-
});
|
533 |
-
}
|
534 |
-
|
535 |
-
//
|
536 |
-
var field_type_handler = function(){
|
537 |
-
var this_item = $(this);
|
538 |
-
$(this_item).on('change', '.text-field-type select', function(){
|
539 |
-
var val = $(this).val();
|
540 |
-
$('.deps', this_item).hide().filter(function(i){ return $(this).hasClass( 'deps_' + val ); }).show();
|
541 |
-
});
|
542 |
-
$('.text-field-type select').change();
|
543 |
-
};
|
544 |
-
$('.contactform_item').each(field_type_handler);
|
545 |
-
|
546 |
-
|
547 |
-
//
|
548 |
-
$(document).on('click', '.del-field-option', function(){
|
549 |
-
if( $('.option').length > 1 ) {
|
550 |
-
$(this).parents('.option').remove();
|
551 |
-
}
|
552 |
-
|
553 |
-
return false;
|
554 |
-
});
|
555 |
-
|
556 |
-
});
|
557 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/customtabs.php
DELETED
@@ -1,152 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract($args);
|
16 |
-
|
17 |
-
$args['labels'] = array(
|
18 |
-
'plural_name' => 'Tabs',
|
19 |
-
'singular_name' => 'Tab',
|
20 |
-
'item_name_sing' => 'Tab',
|
21 |
-
'item_name_plur' => 'Tabs',
|
22 |
-
);
|
23 |
-
|
24 |
-
?>
|
25 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
26 |
-
<div id="yit_custom_tabs" class="panel wc-metaboxes-wrapper" style="display: block;">
|
27 |
-
<p class="toolbar">
|
28 |
-
<a href="#" class="close_all"><?php _e('Close all', 'yith-plugin-fw') ?></a><a href="#" class="expand_all"><?php _e('Expand all', 'yith-plugin-fw') ?></a>
|
29 |
-
</p>
|
30 |
-
|
31 |
-
<div class="yit_custom_tabs wc-metaboxes ui-sortable" style="">
|
32 |
-
|
33 |
-
<?php if( !empty($value) ): ?>
|
34 |
-
<?php foreach( $value as $i=>$tab ): ?>
|
35 |
-
<div class="yit_custom_tab wc-metabox closed" rel="0">
|
36 |
-
<h3>
|
37 |
-
<button type="button" class="remove_row button"><?php _e('Remove', 'yith-plugin-fw') ?></button>
|
38 |
-
<div class="handlediv" title="Click to toggle"></div>
|
39 |
-
<strong class="attribute_name"><?php echo $tab['name'] ?></strong>
|
40 |
-
</h3>
|
41 |
-
|
42 |
-
<table cellpadding="0" cellspacing="0" class="woocommerce_attribute_data wc-metabox-content" style="display: table;">
|
43 |
-
<tbody>
|
44 |
-
<tr>
|
45 |
-
<td class="attribute_name">
|
46 |
-
<label><?php _e('Name', 'yith-plugin-fw') ?>:</label>
|
47 |
-
<input type="text" class="attribute_name" name="<?php echo $name ?>[<?php echo $i ?>][name]" value="<?php echo esc_attr( $tab['name'] ) ?>">
|
48 |
-
<input type="hidden" name="<?php echo $name ?>[<?php echo $i ?>][position]" class="attribute_position" value="<?php echo $i ?>">
|
49 |
-
</td>
|
50 |
-
|
51 |
-
<td rowspan="3">
|
52 |
-
<label><?php _e('Value', 'yith-plugin-fw') ?>:</label>
|
53 |
-
<textarea name="<?php echo $name ?>[<?php echo $i ?>][value]" cols="5" rows="5" placeholder="<?php _e('Content of the tab. (HTML is supported)','yith-plugin-fw') ?>"><?php echo $tab['value'] ?></textarea>
|
54 |
-
</td>
|
55 |
-
</tr>
|
56 |
-
</tbody>
|
57 |
-
</table>
|
58 |
-
|
59 |
-
</div>
|
60 |
-
<?php endforeach ?>
|
61 |
-
<?php endif ?>
|
62 |
-
</div>
|
63 |
-
|
64 |
-
<p class="toolbar">
|
65 |
-
<button type="button" class="button button-primary add_custom_tab"><?php _e( 'Add custom product tab', 'yith-plugin-fw' ) ?></button>
|
66 |
-
</p>
|
67 |
-
|
68 |
-
<div class="clear"></div>
|
69 |
-
</div>
|
70 |
-
</div>
|
71 |
-
|
72 |
-
<script>
|
73 |
-
jQuery(document).ready(function($){
|
74 |
-
// Add rows
|
75 |
-
$('button.add_custom_tab').on('click', function(){
|
76 |
-
|
77 |
-
var size = $('.yit_custom_tabs .yit_custom_tab').size() + 1;
|
78 |
-
|
79 |
-
// Add custom attribute row
|
80 |
-
$('.yit_custom_tabs').append('<div class="yit_custom_tab wc-metabox">\
|
81 |
-
<h3>\
|
82 |
-
<button type="button" class="remove_row button"><?php _e('Remove', 'yith-plugin-fw') ?></button>\
|
83 |
-
<div class="handlediv" title="Click to toggle"></div>\
|
84 |
-
<strong class="attribute_name"></strong>\
|
85 |
-
</h3>\
|
86 |
-
<table cellpadding="0" cellspacing="0" class="woocommerce_attribute_data">\
|
87 |
-
<tbody>\
|
88 |
-
<tr>\
|
89 |
-
<td class="attribute_name">\
|
90 |
-
<label><?php _e('Name', 'yith-plugin-fw') ?>:</label>\
|
91 |
-
<input type="text" class="attribute_name" name="<?php echo $name ?>[' + size + '][name]" />\
|
92 |
-
<input type="hidden" name="<?php echo $name ?>[' + size + '][position]" class="attribute_position" value="' + size + '" />\
|
93 |
-
</td>\
|
94 |
-
<td rowspan="3">\
|
95 |
-
<label><?php _e('Value', 'yith-plugin-fw') ?>:</label>\
|
96 |
-
<textarea name="<?php echo $name ?>[' + size + '][value]" cols="5" rows="5" placeholder="<?php echo addslashes( __('Content of the tab. (HTML is supported)','yith-plugin-fw') ) ?>"></textarea>\
|
97 |
-
</td>\
|
98 |
-
</tr>\
|
99 |
-
</tbody>\
|
100 |
-
</table>\
|
101 |
-
</div>');
|
102 |
-
|
103 |
-
});
|
104 |
-
|
105 |
-
|
106 |
-
$('.yit_custom_tabs').on('click', 'button.remove_row', function() {
|
107 |
-
var answer = confirm("<?php _e('Do you want to remove the custom tab?', 'yith-plugin-fw') ?>");
|
108 |
-
if (answer){
|
109 |
-
var $parent = $(this).parent().parent();
|
110 |
-
|
111 |
-
$parent.remove();
|
112 |
-
attribute_row_indexes();
|
113 |
-
}
|
114 |
-
return false;
|
115 |
-
});
|
116 |
-
|
117 |
-
// Attribute ordering
|
118 |
-
$('.yit_custom_tabs').sortable({
|
119 |
-
items:'.yit_custom_tab',
|
120 |
-
cursor:'move',
|
121 |
-
axis:'y',
|
122 |
-
handle: 'h3',
|
123 |
-
scrollSensitivity:40,
|
124 |
-
forcePlaceholderSize: true,
|
125 |
-
helper: 'clone',
|
126 |
-
opacity: 0.65,
|
127 |
-
placeholder: 'wc-metabox-sortable-placeholder',
|
128 |
-
start:function(event,ui){
|
129 |
-
ui.item.css('background-color','#f6f6f6');
|
130 |
-
},
|
131 |
-
stop:function(event,ui){
|
132 |
-
ui.item.removeAttr('style');
|
133 |
-
attribute_row_indexes();
|
134 |
-
}
|
135 |
-
});
|
136 |
-
|
137 |
-
function attribute_row_indexes() {
|
138 |
-
$('.yit_custom_tabs .yit_custom_tab').each(function(index, el){
|
139 |
-
var newVal = '[' + $(el).index('.yit_custom_tabs .yit_custom_tab') + ']';
|
140 |
-
var oldVal = '[' + $('.attribute_position', el).val() + ']';
|
141 |
-
|
142 |
-
$(':input:not(button)', el).each(function(){
|
143 |
-
var name = $(this).attr('name');
|
144 |
-
$(this).attr('name', name.replace(oldVal, newVal));
|
145 |
-
});
|
146 |
-
|
147 |
-
$('.attribute_position', el).val( $(el).index('.yit_custom_tabs .yit_custom_tab') );
|
148 |
-
});
|
149 |
-
};
|
150 |
-
|
151 |
-
});
|
152 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/datepicker.php
DELETED
@@ -1,21 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
19 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $value ) ?>" class="panel-datepicker"/>
|
20 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
21 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/icon-list.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
/**
|
12 |
* Awesome Icon Admin View
|
13 |
*
|
14 |
-
* @package
|
15 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
16 |
* @since 1.0.0
|
17 |
*/
|
@@ -19,117 +19,119 @@
|
|
19 |
extract( $args );
|
20 |
|
21 |
|
22 |
-
if ( !
|
23 |
|
24 |
-
$current_options = wp_parse_args( $args['value'], $args['std'] );
|
25 |
-
$current_icon
|
26 |
-
$std_icon
|
27 |
|
28 |
-
$options['icon'] =
|
29 |
|
30 |
?>
|
31 |
|
32 |
|
|
|
|
|
33 |
|
34 |
-
<
|
35 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
36 |
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
|
46 |
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
|
53 |
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
|
|
63 |
</div>
|
64 |
-
</div>
|
65 |
|
66 |
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
|
|
78 |
</div>
|
79 |
-
</div>
|
80 |
|
81 |
-
|
82 |
|
83 |
-
|
84 |
|
85 |
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
|
95 |
-
|
96 |
|
|
|
97 |
</div>
|
98 |
|
99 |
<script>
|
100 |
|
101 |
-
jQuery(document).ready( function($){
|
102 |
|
103 |
-
$('.select_wrapper.icon_list_type').on('change', function(){
|
104 |
|
105 |
-
var t = $(this);
|
106 |
-
var parents = $('#' + t.parents('div.select_icon').attr('id'));
|
107 |
-
var option = $('option:selected', this).val();
|
108 |
-
var to_show = option == 'none' ? '' : option == 'icon'
|
109 |
|
110 |
-
parents.find('.option > div:not(.icon_list_type)').removeClass('show').addClass('hidden');
|
111 |
parents.find( to_show ).removeClass( 'hidden' ).addClass( 'show' );
|
112 |
-
});
|
113 |
|
114 |
-
$('.select_wrapper.icon_list_type').trigger('change');
|
115 |
|
116 |
-
var $icon_list
|
117 |
-
$preview
|
118 |
-
$element_list = $icon_list.find('li'),
|
119 |
-
$icon_text
|
120 |
|
121 |
-
$element_list.on("click", function () {
|
122 |
-
var $t = $(this);
|
123 |
-
$element_list.removeClass('active');
|
124 |
-
$t.addClass('active');
|
125 |
-
$preview.attr('data-font', $t.data('font'));
|
126 |
-
$preview.attr('data-icon', $t.data('icon'));
|
127 |
-
$preview.attr('data-name', $t.data('name'));
|
128 |
-
$preview.attr('data-key', $t.data('key'));
|
129 |
|
130 |
-
$icon_text.val($t.data('font') + ':' + $t.data('name'));
|
131 |
|
132 |
-
});
|
133 |
-
});
|
134 |
|
135 |
</script>
|
11 |
/**
|
12 |
* Awesome Icon Admin View
|
13 |
*
|
14 |
+
* @package Yithemes
|
15 |
* @author Emanuela Castorina <emanuela.castorina@yithemes.com>
|
16 |
* @since 1.0.0
|
17 |
*/
|
19 |
extract( $args );
|
20 |
|
21 |
|
22 |
+
if ( !defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
23 |
|
24 |
+
$current_options = wp_parse_args( $args[ 'value' ], $args[ 'std' ] );
|
25 |
+
$current_icon = YIT_Icon()->get_icon_data( $current_options[ 'icon' ] );
|
26 |
+
$std_icon = YIT_Icon()->get_icon_data( $std[ 'icon' ] );
|
27 |
|
28 |
+
$options[ 'icon' ] = YIT_Plugin_Common::get_icon_list();
|
29 |
|
30 |
?>
|
31 |
|
32 |
|
33 |
+
<div id="<?php echo $id ?>-container" class="select_icon rm_option rm_input rm_text" <?php echo yith_field_deps_data( $args ); ?>>
|
34 |
+
<div id="<?php echo $id ?>-container" <?php echo yith_field_deps_data( $args ); ?>>
|
35 |
|
36 |
+
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
|
|
37 |
|
38 |
+
<div class="option">
|
39 |
+
<div class="select_wrapper icon_list_type clearfix">
|
40 |
+
<select name="<?php echo $name ?>[select]" id="<?php echo $id ?>[select]" <?php if ( isset( $std[ 'select' ] ) ) : ?>data-std="<?php echo $std[ 'select' ]; ?>"<?php endif; ?>>
|
41 |
+
<?php foreach ( $options[ 'select' ] as $val => $option ) : ?>
|
42 |
+
<option value="<?php echo $val ?>" <?php selected( $current_options[ 'select' ], $val ); ?> ><?php echo $option ?></option>
|
43 |
+
<?php endforeach; ?>
|
44 |
+
</select>
|
45 |
+
</div>
|
46 |
|
47 |
|
48 |
+
<div class="icon-manager-wrapper">
|
49 |
+
<div class="icon-manager-text">
|
50 |
+
<div class="icon-preview" <?php echo $current_icon ?>></div>
|
51 |
+
<input type="text" id="<?php echo $id ?>[icon]" class="icon-text" name="<?php echo $name ?>[icon]" value="<?php echo $current_options[ 'icon' ]; ?>"/>
|
52 |
+
</div>
|
53 |
|
54 |
|
55 |
+
<div class="icon-manager">
|
56 |
+
<ul class="icon-list-wrapper">
|
57 |
+
<?php foreach ( $options[ 'icon' ] as $font => $icons ):
|
58 |
+
foreach ( $icons as $key => $icon ): ?>
|
59 |
+
<li data-font="<?php echo $font ?>" data-icon="<?php echo ( strpos( $key, '\\' ) === 0 ) ? '&#x' . substr( $key, 1 ) : $key ?>" data-key="<?php echo $key ?>" data-name="<?php echo $icon ?>"></li>
|
60 |
+
<?php
|
61 |
+
endforeach;
|
62 |
+
endforeach; ?>
|
63 |
+
</ul>
|
64 |
+
</div>
|
65 |
</div>
|
|
|
66 |
|
67 |
|
68 |
+
<div class="input_wrapper custom_icon_wrapper upload" style="clear:both;">
|
69 |
+
<input type="text" name="<?php echo $name ?>[custom]" id="<?php echo $id ?>[custom]" value="<?php echo $current_options[ 'custom' ] ?>" class="yith-plugin-fw-upload-img-url upload_custom_icon"/>
|
70 |
+
<input type="button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" id="<?php echo $id; ?>-custom-button" class="yith-plugin-fw-upload-button button"/>
|
71 |
|
72 |
+
<div class="yith-plugin-fw-upload-img-preview" style="margin-top:10px;">
|
73 |
+
<?php
|
74 |
+
$file = $current_options[ 'custom' ];
|
75 |
+
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
76 |
+
echo __( 'Image preview', 'yith-plugin-fw' ) . ': ' . "<img src=\"" . YIT_CORE_ASSETS_URL . "/images/sleep.png\" data-src=\"$file\" />";
|
77 |
+
}
|
78 |
+
?>
|
79 |
+
</div>
|
80 |
</div>
|
|
|
81 |
|
82 |
+
</div>
|
83 |
|
84 |
+
<div class="clear"></div>
|
85 |
|
86 |
|
87 |
+
<div class="description">
|
88 |
+
<?php echo $desc ?>
|
89 |
+
<?php if ( $std[ 'select' ] == 'custom' ) : ?>
|
90 |
+
<?php printf( __( '(Default: %s <img src="%s"/>)', 'yith-plugin-fw' ), $options[ 'select' ][ 'custom' ], $std[ 'custom' ] ) ?>
|
91 |
+
<?php else: ?>
|
92 |
+
<?php printf( __( '(Default: <i %s></i> )', 'yith-plugin-fw' ), $std_icon ) ?>
|
93 |
+
<?php endif; ?>
|
94 |
+
</div>
|
95 |
|
96 |
+
<div class="clear"></div>
|
97 |
|
98 |
+
</div>
|
99 |
</div>
|
100 |
|
101 |
<script>
|
102 |
|
103 |
+
jQuery( document ).ready( function ( $ ) {
|
104 |
|
105 |
+
$( '.select_wrapper.icon_list_type' ).on( 'change', function () {
|
106 |
|
107 |
+
var t = $( this );
|
108 |
+
var parents = $( '#' + t.parents( 'div.select_icon' ).attr( 'id' ) );
|
109 |
+
var option = $( 'option:selected', this ).val();
|
110 |
+
var to_show = option == 'none' ? '' : option == 'icon' ? '.icon-manager-wrapper' : '.custom_icon_wrapper';
|
111 |
|
112 |
+
parents.find( '.option > div:not(.icon_list_type)' ).removeClass( 'show' ).addClass( 'hidden' );
|
113 |
parents.find( to_show ).removeClass( 'hidden' ).addClass( 'show' );
|
114 |
+
} );
|
115 |
|
116 |
+
$( '.select_wrapper.icon_list_type' ).trigger( 'change' );
|
117 |
|
118 |
+
var $icon_list = $( '.select_icon' ).find( 'ul.icon-list-wrapper' ),
|
119 |
+
$preview = $( '.icon-preview' ),
|
120 |
+
$element_list = $icon_list.find( 'li' ),
|
121 |
+
$icon_text = $( '.icon-text' );
|
122 |
|
123 |
+
$element_list.on( "click", function () {
|
124 |
+
var $t = $( this );
|
125 |
+
$element_list.removeClass( 'active' );
|
126 |
+
$t.addClass( 'active' );
|
127 |
+
$preview.attr( 'data-font', $t.data( 'font' ) );
|
128 |
+
$preview.attr( 'data-icon', $t.data( 'icon' ) );
|
129 |
+
$preview.attr( 'data-name', $t.data( 'name' ) );
|
130 |
+
$preview.attr( 'data-key', $t.data( 'key' ) );
|
131 |
|
132 |
+
$icon_text.val( $t.data( 'font' ) + ':' + $t.data( 'name' ) );
|
133 |
|
134 |
+
} );
|
135 |
+
} );
|
136 |
|
137 |
</script>
|
plugin-fw/templates/metaboxes/types/image-gallery.php
DELETED
@@ -1,48 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( !defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
$array_id = array();
|
17 |
-
if ( !empty( $value ) ) {
|
18 |
-
$array_id = array_filter( explode( ',', $value ) );
|
19 |
-
}
|
20 |
-
|
21 |
-
?>
|
22 |
-
<div id="<?php echo $id ?>-container" class="image-gallery" <?php if (isset( $deps )): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
23 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
24 |
-
|
25 |
-
<p>
|
26 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
27 |
-
<ul id="<?php echo $id ?>-extra-images" class="slides-wrapper extra-images ui-sortable clearfix">
|
28 |
-
<?php if ( !empty( $array_id ) ) : ?>
|
29 |
-
<?php foreach ( $array_id as $image_id ) : ?>
|
30 |
-
<li class="image" data-attachment_id = <?php echo esc_attr($image_id) ?>>
|
31 |
-
<a href="#">
|
32 |
-
<?php
|
33 |
-
if( function_exists( 'yit_image' ) ) :
|
34 |
-
yit_image( "id=$image_id&size=admin-post-type-thumbnails" );
|
35 |
-
else:
|
36 |
-
echo wp_get_attachment_image( $image_id, array( 80, 80 ) );
|
37 |
-
endif; ?>
|
38 |
-
</a>
|
39 |
-
<ul class="actions">
|
40 |
-
<li><a href="#" class="delete" title="<?php _e( 'Delete image', 'yith-plugin-fw' ); ?>">x</a></li>
|
41 |
-
</ul>
|
42 |
-
</li>
|
43 |
-
<?php endforeach; endif; ?>
|
44 |
-
</ul>
|
45 |
-
<input type="button" data-choose="<?php _e( 'Add Images to Gallery', 'yith-plugin-fw' ); ?>" data-update="<?php _e( 'Add to gallery', 'yith-plugin-fw' ); ?>" value="<?php _e( 'Add images', 'yith-plugin-fw' ) ?>" data-delete="<?php _e( 'Delete image', 'yith-plugin-fw' ); ?>" data-text="<?php _e( 'Delete', 'yith-plugin-fw' ); ?>" id="<?php echo $id ?>-button" class="image-gallery-button button" />
|
46 |
-
<input type="hidden" class="image_gallery_ids" id="image_gallery_ids" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ); ?>" />
|
47 |
-
</p>
|
48 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/images.php
DELETED
@@ -1,90 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
global $post;
|
15 |
-
|
16 |
-
extract( $args );
|
17 |
-
|
18 |
-
if ( empty( $value ) || ! is_array( $value ) )
|
19 |
-
$value = array();
|
20 |
-
|
21 |
-
//$categories = yit_get_model('cpt_unlimited')->get_setting( 'categories', $post->ID );
|
22 |
-
?>
|
23 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
24 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
25 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
26 |
-
<ul id="<?php echo $id ?>-extra-images" class="slides-wrapper extra-images ui-sortable clearfix" style="">
|
27 |
-
<?php if ( ! empty( $value ) ) : foreach ( $value as $image_id ) : ?>
|
28 |
-
<li>
|
29 |
-
<a href="#">
|
30 |
-
<?php
|
31 |
-
if( function_exists( 'yit_image' ) ) :
|
32 |
-
yit_image( "id=$image_id&size=admin-post-type-thumbnails" );
|
33 |
-
else:
|
34 |
-
echo wp_get_attachment_image( $image_id, array( 80, 80 ) );
|
35 |
-
endif; ?>
|
36 |
-
<input type="hidden" name="<?php echo $name ?>[]" value="<?php echo esc_attr( $image_id ) ?>" />
|
37 |
-
</a>
|
38 |
-
<a href="#" title="<?php _e( 'Delete image', 'yith-plugin-fw' ) ?>" class="delete">X</a>
|
39 |
-
</li>
|
40 |
-
<?php endforeach; endif; ?>
|
41 |
-
</ul>
|
42 |
-
<a href="#" class="button-secondary upload-extra-images" id="<?php echo $id ?>-upload-extra-images"><?php _e( 'Upload new images', 'yith-plugin-fw' ) ?></a>
|
43 |
-
</div>
|
44 |
-
<script type="text/javascript">
|
45 |
-
jQuery(document).ready(function($){
|
46 |
-
$('#<?php echo $id ?>-upload-extra-images').on( 'click', function(){
|
47 |
-
tb_show('', 'media-upload.php?post_id=0&TB_iframe=1&width=700');
|
48 |
-
|
49 |
-
window.send_to_editor = function(html) {
|
50 |
-
|
51 |
-
var imgurl = $('a', '<div>' + html + '</div>').attr('href');
|
52 |
-
var image_id = $('img', html).attr('class').replace(/(.*?)wp-image-/, '');
|
53 |
-
|
54 |
-
var data = {
|
55 |
-
action: 'generate_preview_image_post_type',
|
56 |
-
item_id: image_id
|
57 |
-
};
|
58 |
-
|
59 |
-
$.post(ajaxurl, data, function(response) {
|
60 |
-
var thumburl = imgurl.split('.').reverse();
|
61 |
-
var baseurl = imgurl.replace( '.' + thumburl[0], '' );
|
62 |
-
thumburl = baseurl + '-140x100.' + thumburl[0];
|
63 |
-
|
64 |
-
$('#<?php echo $id ?>-extra-images.slides-wrapper').append('<li><a href="#"><img src="'+thumburl+'" width="140" height="100" /> <input type="hidden" name="<?php echo $name ?>[]" value="'+image_id+'" /></a><a href="#" title="<?php echo addslashes( __( 'Delete image', 'yith-plugin-fw' ) ) ?>" class="delete">X</a></li>');
|
65 |
-
});
|
66 |
-
|
67 |
-
tb_remove();
|
68 |
-
|
69 |
-
}
|
70 |
-
|
71 |
-
return false;
|
72 |
-
});
|
73 |
-
|
74 |
-
$('#<?php echo $id ?>-extra-images a.delete').on( 'click', function(){
|
75 |
-
if ( confirm( "<?php _e( 'Are you sure you want to remove this image?', 'yith-plugin-fw' ) ?>" ) ) {
|
76 |
-
$(this).parent().remove();
|
77 |
-
}
|
78 |
-
|
79 |
-
return false;
|
80 |
-
});
|
81 |
-
|
82 |
-
// SORTABLE
|
83 |
-
$('#<?php echo $id ?>-extra-images').sortable({
|
84 |
-
axis: 'x',
|
85 |
-
stop: function(e, ui) {}
|
86 |
-
});
|
87 |
-
|
88 |
-
$('.extra-images a:not(.delete)').click(function(){ return false; });
|
89 |
-
});
|
90 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/number.php
DELETED
@@ -1,50 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
$min_max_attr = $step_attr = '';
|
18 |
-
|
19 |
-
if( isset( $min ) ){
|
20 |
-
$min_max_attr .= " min='{$min}'";
|
21 |
-
}
|
22 |
-
|
23 |
-
if( isset( $max ) ){
|
24 |
-
$min_max_attr .= " max='{$max}'";
|
25 |
-
}
|
26 |
-
|
27 |
-
if( isset( $step ) ){
|
28 |
-
$step_attr .= "step='{$step}'";
|
29 |
-
}
|
30 |
-
?>
|
31 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
32 |
-
<div class="rm_number">
|
33 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
34 |
-
<span class="field">
|
35 |
-
<input class="number" type="text" id="<?php echo $id ?>" name="<?php echo $name ?>" <?php echo $step_attr ?> <?php echo $min_max_attr ?> value="<?php echo esc_attr( $value ) ?>" <?php if( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>" />
|
36 |
-
<?php yit_string( '<span class="description">', $desc, '</span>' ); ?>
|
37 |
-
</span>
|
38 |
-
</div>
|
39 |
-
</div>
|
40 |
-
<script type="text/javascript" charset="utf-8">
|
41 |
-
jQuery(document).ready( function( $ ) {
|
42 |
-
$('#<?php echo $id ?>').spinner({
|
43 |
-
<?php if( isset( $min )): ?>min: <?php echo $min ?>, <?php endif ?>
|
44 |
-
<?php if( isset( $max )): ?>max: <?php echo $max ?>, <?php endif ?>
|
45 |
-
showOn: 'always',
|
46 |
-
upIconClass: "ui-icon-plus",
|
47 |
-
downIconClass: "ui-icon-minus"
|
48 |
-
});
|
49 |
-
});
|
50 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/onoff.php
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
if ( !isset( $desc ) ) {
|
18 |
-
$desc='';
|
19 |
-
}
|
20 |
-
?>
|
21 |
-
|
22 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?> class="rm_onoff onoff_container">
|
23 |
-
|
24 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
25 |
-
<p>
|
26 |
-
<input type="checkbox" id="<?php echo $id ?>" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ) ?>" <?php checked( $value, 'yes' ) ?> class="on_off" <?php if( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?> />
|
27 |
-
<span class="onoff"> </span>
|
28 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
29 |
-
</p>
|
30 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/preview.php
DELETED
@@ -1,19 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
extract( $args );
|
15 |
-
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?> data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<img src="<?php echo $value ?>" class="yit-preview">
|
19 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/responsivesliders.php
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
extract( $args );
|
15 |
-
|
16 |
-
$options = yit_get_responsive_sliders();
|
17 |
-
?>
|
18 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
19 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
20 |
-
|
21 |
-
<div class="select_wrapper">
|
22 |
-
<select id="<?php echo $id ?>" name="<?php echo $name ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>>
|
23 |
-
<option></option>
|
24 |
-
<option value="none"><?php _e( 'None', 'yith-plugin-fw' ) ?></option>
|
25 |
-
<?php foreach ( $options as $key => $item ) : ?>
|
26 |
-
<option value="<?php echo esc_attr( $key ) ?>"<?php selected( $key, $value ) ?>><?php echo $item ?></option>
|
27 |
-
<?php endforeach; ?>
|
28 |
-
</select>
|
29 |
-
</div>
|
30 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
31 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/select-icon.php
DELETED
@@ -1,72 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
extract( $args );
|
5 |
-
|
6 |
-
$current_options = wp_parse_args( $args['value'], $args['std'] );
|
7 |
-
|
8 |
-
?>
|
9 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?> class="select_icon">
|
10 |
-
|
11 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
12 |
-
|
13 |
-
<div class="option">
|
14 |
-
|
15 |
-
<div class="select_wrapper icon_type">
|
16 |
-
<select id="<?php echo $id ?>[select]" name="<?php echo $name ?>[select]" <?php if ( isset( $std['select'] ) ) : ?>data-std="<?php echo $std['select']; ?>"<?php endif; ?>>
|
17 |
-
<?php foreach ( $options['select'] as $val => $option ) : ?>
|
18 |
-
<option value="<?php echo $val ?>" <?php selected( $current_options['select'], $val ); ?> ><?php echo $option ?></option>
|
19 |
-
<?php endforeach; ?>
|
20 |
-
</select>
|
21 |
-
</div>
|
22 |
-
|
23 |
-
<div class="select_wrapper awesome_icon" style="font-family: 'FontAwesome'">
|
24 |
-
<select style="font-family: 'FontAwesome'" id="<?php echo $id ?>[icon]" name="<?php echo $name ?>[icon]">
|
25 |
-
<?php foreach ( $options['icon'] as $val => $option ) : $esc_icon = ! empty( $val ) ? '&#x' . $val . '; ' : ''; ?>
|
26 |
-
<option value="<?php echo $option ?>" <?php selected( $current_options['icon'], $option ); ?> ><?php echo $esc_icon . $option; ?></option>
|
27 |
-
<?php endforeach; ?>
|
28 |
-
</select>
|
29 |
-
</div>
|
30 |
-
|
31 |
-
<div class="input_wrapper custom_icon">
|
32 |
-
<input type="text" name="<?php echo $name ?>[custom]" id="<?php echo $id ?>[custom]" value="<?php echo $current_options['custom'] ?>" class="upload_img_url upload_custom_icon" />
|
33 |
-
<input type="button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" id="<?php echo $id; ?>-custom-button" class="upload_button button" />
|
34 |
-
|
35 |
-
<div class="upload_img_preview" style="margin-top:10px;">
|
36 |
-
<?php
|
37 |
-
$file = $current_options['custom'];
|
38 |
-
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
39 |
-
echo __( 'Image preview', 'yith-plugin-fw' ) . ': ' . "<img src=\"" . YIT_CORE_ASSETS_URL . "/images/sleep.png\" data-src=\"$file\" />";
|
40 |
-
}
|
41 |
-
?>
|
42 |
-
</div>
|
43 |
-
|
44 |
-
</div>
|
45 |
-
</div>
|
46 |
-
|
47 |
-
<div class="clear"></div>
|
48 |
-
|
49 |
-
<div class="description">
|
50 |
-
<?php echo $desc ?>
|
51 |
-
</div>
|
52 |
-
|
53 |
-
</div>
|
54 |
-
|
55 |
-
<script>
|
56 |
-
|
57 |
-
jQuery(document).ready( function($){
|
58 |
-
|
59 |
-
$('.select_wrapper.icon_type').on('change', function(){
|
60 |
-
var t = $(this);
|
61 |
-
var parents = $('#' + t.parents('div.select_icon').attr('id'));
|
62 |
-
var option = $('option:selected', this).val();
|
63 |
-
var to_show = option == 'none' ? '' : option == 'icon' ? '.awesome_icon' : '.custom_icon';
|
64 |
-
|
65 |
-
parents.find('.option > div:not(.icon_type)').addClass('hidden').removeClass( 'show' );
|
66 |
-
parents.find( to_show ).removeClass( 'hidden' ).addClass( 'show' );
|
67 |
-
});
|
68 |
-
|
69 |
-
$('.select_wrapper.icon_type').trigger('change');
|
70 |
-
});
|
71 |
-
|
72 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/select-mailchimp.php
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
$multiple = ( isset( $multiple ) && $multiple ) ? ' multiple' : '';
|
17 |
-
?>
|
18 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
19 |
-
|
20 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
21 |
-
|
22 |
-
<div class="select_wrapper">
|
23 |
-
<select<?php echo $multiple ?> id="<?php echo $id ?>" name="<?php echo $name ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>>
|
24 |
-
<?php foreach ( $options as $key => $item ) : ?>
|
25 |
-
<option value="<?php echo $key ?>"<?php selected( $key, $value ) ?>><?php echo $item ?></option>
|
26 |
-
<?php endforeach; ?>
|
27 |
-
</select>
|
28 |
-
</div>
|
29 |
-
<input type="button" class="button-secondary <?php echo $class?>" value="<?php echo $button_name?>"/>
|
30 |
-
<span class="spinner"></span>
|
31 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
32 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/select.php
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
$is_multiple = isset( $multiple ) && $multiple;
|
17 |
-
$multiple = ( $is_multiple ) ? ' multiple' : '';
|
18 |
-
?>
|
19 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
20 |
-
|
21 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
22 |
-
|
23 |
-
<div class="select_wrapper">
|
24 |
-
<select<?php echo $multiple ?> id="<?php echo $id ?>" name="<?php echo $name ?><?php if( $is_multiple ) echo "[]" ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo ( $is_multiple )? implode(' ,', $std) : $std ?>"<?php endif ?>>
|
25 |
-
<?php foreach ( $options as $key => $item ) : ?>
|
26 |
-
<option value="<?php echo esc_attr( $key ) ?>" <?php if( $is_multiple ): selected( true, in_array( $key, $value ) ); else: selected( $key, $value ); endif; ?> ><?php echo $item ?></option>
|
27 |
-
<?php endforeach; ?>
|
28 |
-
</select>
|
29 |
-
</div>
|
30 |
-
|
31 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
32 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/sidebar-layout.php
DELETED
@@ -1,61 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
$layout = ! isset( $value['layout'] ) ? 'sidebar-right' : $value['layout'];
|
18 |
-
$sidebar = ! isset( $value['sidebar'] ) ? '' : $value['sidebar'];
|
19 |
-
?>
|
20 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
21 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
22 |
-
|
23 |
-
<p class="yit-sidebar-layout">
|
24 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-left' ?>" value="sidebar-left" <?php checked( $layout, 'sidebar-left' ) ?> />
|
25 |
-
<img src="<?php echo YIT_CORE_ASSETS_URL ?>/images/sideleft.png" title="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" />
|
26 |
-
|
27 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-no' ?>" value="sidebar-no" <?php checked( $layout, 'sidebar-no' ) ?> />
|
28 |
-
<img src="<?php echo YIT_CORE_ASSETS_URL ?>/images/noside.png" title="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" />
|
29 |
-
|
30 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-right' ?>" value="sidebar-right" <?php checked( $layout, 'sidebar-right' ) ?> />
|
31 |
-
<img src="<?php echo YIT_CORE_ASSETS_URL ?>/images/sideright.png" title="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" />
|
32 |
-
|
33 |
-
<select name="<?php echo $name ?>[sidebar]" id="<?php echo $id ?>-sidebar">
|
34 |
-
<option value="-1"><?php _e( 'Choose a sidebar', 'yith-plugin-fw' ) ?></option>
|
35 |
-
<?php foreach ( yit_registered_sidebars() as $val => $option ) { ?>
|
36 |
-
<option value="<?php echo esc_attr( $val ) ?>" <?php selected( $sidebar, $val ) ?>><?php echo $option; ?></option>
|
37 |
-
<?php } ?>
|
38 |
-
</select>
|
39 |
-
<script type="text/javascript">
|
40 |
-
jQuery(document).ready(function ($) {
|
41 |
-
$('.yit-sidebar-layout img').click(function () {
|
42 |
-
$(this).parent().children(':radio').attr('checked', false);
|
43 |
-
$(this).prev(':radio').attr('checked', true);
|
44 |
-
});
|
45 |
-
|
46 |
-
if ($('#<?php echo $id . '-no' ?>').attr('checked')) {
|
47 |
-
$('#<?php echo $id ?>-sidebar').hide();
|
48 |
-
}
|
49 |
-
|
50 |
-
$('.yit-sidebar-layout :radio').next('img').click(function () {
|
51 |
-
|
52 |
-
if ($(this).prev(':radio').val() == 'sidebar-no') {
|
53 |
-
$('#<?php echo $id ?>-sidebar').fadeOut();
|
54 |
-
} else {
|
55 |
-
$('#<?php echo $id ?>-sidebar').fadeIn();
|
56 |
-
}
|
57 |
-
});
|
58 |
-
});
|
59 |
-
</script>
|
60 |
-
</p>
|
61 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/sidebarlist.php
DELETED
@@ -1,29 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
$options = yit_registered_sidebars();
|
18 |
-
?>
|
19 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
20 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
21 |
-
<div class="select_wrapper">
|
22 |
-
<select id="<?php echo $id ?>" name="<?php echo $name ?>">
|
23 |
-
<?php foreach ( $options as $key => $item ) : ?>
|
24 |
-
<option value="<?php echo esc_attr( $key ) ?>"<?php selected( $key, $value ) ?>><?php echo $item ?></option>
|
25 |
-
<?php endforeach; ?>
|
26 |
-
</select>
|
27 |
-
</div>
|
28 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
29 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/sidebars.php
DELETED
@@ -1,124 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Select Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
extract( $args );
|
20 |
-
//
|
21 |
-
//$layout = ! isset( $value['layout'] ) ? 'sidebar-right' : $value['layout'];
|
22 |
-
//$sidebar1 = ! isset( $value['sidebar1'] ) ? '-1' : $value['sidebar1'];
|
23 |
-
//$sidebar2 = ! isset( $value['sidebar2'] ) ? '-1' : $value['sidebar2'];
|
24 |
-
|
25 |
-
|
26 |
-
$layout = ! isset( $value['layout'] ) ? 'sidebar-no' : $value['layout'];
|
27 |
-
$sidebar_left = ! isset( $value['sidebar-left'] ) ? '-1' : $value['sidebar-left'];
|
28 |
-
$sidebar_right = ! isset( $value['sidebar-right'] ) ? '-1' : $value['sidebar-right'];
|
29 |
-
|
30 |
-
?>
|
31 |
-
<div class="yit-sidebar-layout">
|
32 |
-
<div class="option">
|
33 |
-
<label for="_slider_name"><?php echo $label ?></label>
|
34 |
-
|
35 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-left' ?>" value="sidebar-left" <?php checked( $layout, 'sidebar-left' ) ?> />
|
36 |
-
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/sidebar-left.png" title="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Left sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-left' ?>" />
|
37 |
-
|
38 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-right' ?>" value="sidebar-right" <?php checked( $layout, 'sidebar-right' ) ?> />
|
39 |
-
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/sidebar-right.png" title="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'Right sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-right' ?>" />
|
40 |
-
|
41 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-double' ?>" value="sidebar-double" <?php checked( $layout, 'sidebar-double' ) ?> />
|
42 |
-
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/double-sidebar.png" title="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-double' ?>" />
|
43 |
-
|
44 |
-
<input type="radio" name="<?php echo $name ?>[layout]" id="<?php echo $id . '-no' ?>" value="sidebar-no" <?php checked( $layout, 'sidebar-no' ) ?> />
|
45 |
-
<img src="<?php echo YIT_CORE_PLUGIN_URL ?>/assets/images/no-sidebar.png" title="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" alt="<?php _e( 'No sidebar', 'yith-plugin-fw' ) ?>" class="<?php echo $id . '-no' ?>" />
|
46 |
-
</div>
|
47 |
-
<div class="clearfix"></div>
|
48 |
-
<div class="option" id="choose-sidebars">
|
49 |
-
<div class="side">
|
50 |
-
<div class="select-mask" <?php if ( $layout != 'sidebar-double' && $layout != 'sidebar-left' ) { echo 'style="display:none"'; } ?> id="<?php echo $id ?>-sidebar-left-container">
|
51 |
-
<label for ="<?php echo $id ?>-sidebar-left"><?php _e('Left Sidebar','yith-plugin-fw') ?></label>
|
52 |
-
<select name="<?php echo $name ?>[sidebar-left]" id="<?php echo $id ?>-sidebar-left">
|
53 |
-
<option value="-1"><?php _e( 'Choose a sidebar', 'yith-plugin-fw' ) ?></option>
|
54 |
-
<?php foreach ( yit_registered_sidebars() as $val => $option ) { ?>
|
55 |
-
<option value="<?php echo esc_attr( $val ) ?>" <?php selected( $sidebar_left, $val ) ?>><?php echo $option; ?></option>
|
56 |
-
<?php } ?>
|
57 |
-
</select>
|
58 |
-
</div>
|
59 |
-
</div>
|
60 |
-
<div class="side" style="clear: both">
|
61 |
-
<div class="select-mask" <?php if ( $layout != 'sidebar-double' && $layout != 'sidebar-right' ) { echo 'style="display:none"'; } ?> id="<?php echo $id ?>-sidebar-right-container">
|
62 |
-
<label for ="<?php echo $id ?>-sidebar-right"><?php _e('Right Sidebar','yith-plugin-fw') ?></label>
|
63 |
-
<select name="<?php echo $name ?>[sidebar-right]" id="<?php echo $id ?>-sidebar-right">
|
64 |
-
<option value="-1"><?php _e( 'Choose a sidebar', 'yith-plugin-fw' ) ?></option>
|
65 |
-
<?php foreach ( yit_registered_sidebars() as $val => $option ) { ?>
|
66 |
-
<option value="<?php echo esc_attr( $val ) ?>" <?php selected( $sidebar_right, $val ) ?>><?php echo $option; ?></option>
|
67 |
-
<?php } ?>
|
68 |
-
</select>
|
69 |
-
</div>
|
70 |
-
</div>
|
71 |
-
</div>
|
72 |
-
|
73 |
-
</div>
|
74 |
-
|
75 |
-
<script type="text/javascript">
|
76 |
-
(function ($){
|
77 |
-
|
78 |
-
$(document).on('click', '.yit-sidebar-layout img' , function(e) {
|
79 |
-
|
80 |
-
$( this ).parent().children( ':radio' ).attr( 'checked', false );
|
81 |
-
$( this ).prev( ':radio' ).attr( 'checked', true );
|
82 |
-
});
|
83 |
-
|
84 |
-
$(document).on('click', 'img._sidebars-no' , function(e) {
|
85 |
-
$( '#_sidebars-sidebar-left-container, #_sidebars-sidebar-right-container' ).hide();
|
86 |
-
});
|
87 |
-
|
88 |
-
$(document).on('click', 'img._sidebars-left' , function(e) {
|
89 |
-
$('#_sidebars-sidebar-right-container' ).hide();
|
90 |
-
$('#_sidebars-sidebar-left-container' ).show();
|
91 |
-
});
|
92 |
-
|
93 |
-
$(document).on('click', 'img._sidebars-right' , function(e) {
|
94 |
-
$('#_sidebars-sidebar-right-container' ).show();
|
95 |
-
$('#_sidebars-sidebar-left-container' ).hide();
|
96 |
-
});
|
97 |
-
|
98 |
-
$(document).on('click', 'img._sidebars-double' , function(e) {
|
99 |
-
$( '#_sidebars-sidebar-right-container, #_sidebars-sidebar-left-container' ).show();
|
100 |
-
});
|
101 |
-
|
102 |
-
//
|
103 |
-
// $(document).on('click', '.yit-sidebar-layout img' , function() {
|
104 |
-
//
|
105 |
-
// $( this ).parent().children( ':radio' ).attr( 'checked', false );
|
106 |
-
// $( this ).prev( ':radio' ).attr( 'checked', true );
|
107 |
-
// });
|
108 |
-
//
|
109 |
-
// $('img._sidebar-no').click( function() {
|
110 |
-
// $( '#_sidebar-sidebar1-container, #_sidebar-sidebar2-container' ).hide();
|
111 |
-
// });
|
112 |
-
//
|
113 |
-
// $( 'img._sidebar-left, img._sidebar-right').click( function() {
|
114 |
-
// $('#_sidebar-sidebar2-container' ).hide();
|
115 |
-
// $('#_sidebar-sidebar1-container' ).show();
|
116 |
-
// });
|
117 |
-
//
|
118 |
-
// $('img._sidebar-double').click( function() {
|
119 |
-
// $( '#_sidebar-sidebar1-container, #_sidebar-sidebar2-container' ).show();
|
120 |
-
// });
|
121 |
-
|
122 |
-
|
123 |
-
})(jQuery);
|
124 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/slider.php
DELETED
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
|
16 |
-
extract( $args );
|
17 |
-
|
18 |
-
if ( ! isset( $labels ) ) {
|
19 |
-
$labels = '';
|
20 |
-
}
|
21 |
-
|
22 |
-
?>
|
23 |
-
<div id="<?php echo $id ?>-container" class="slider_container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
24 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
25 |
-
<div class="ui-slider">
|
26 |
-
<span class="minCaption"><?php echo $min ?></span>
|
27 |
-
<span class="maxCaption"><?php echo $max ?></span>
|
28 |
-
<span id="<?php echo $id ?>-feedback" class="feedback"><strong><?php echo $value ?></strong></span>
|
29 |
-
|
30 |
-
<div id="<?php echo $id ?>-div" data-step="<?php echo isset( $step ) ? $step : 1 ?>" data-labels="<?php echo '' ?>" data-min="<?php echo $min ?>" data-max="<?php echo $max ?>" data-val="<?php echo $value; ?>" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all">
|
31 |
-
<input id="<?php echo $id ?>" type="hidden" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ); ?>" />
|
32 |
-
</div>
|
33 |
-
</div>
|
34 |
-
<span class="description"><?php echo $desc ?></span>
|
35 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/text-array.php
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
$size = isset( $size ) ? " style=\"width:{$size}px;\"" : '';
|
18 |
-
?>
|
19 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
20 |
-
<label for="<?php echo $id ?>"><?php echo $label ?>
|
21 |
-
<small><?php echo $desc ?></small>
|
22 |
-
</label>
|
23 |
-
|
24 |
-
<p>
|
25 |
-
<?php foreach ( $fields as $field_name => $field_label ) : ?>
|
26 |
-
<?php echo $field_label ?>:
|
27 |
-
<input type="text" name="<?php echo $name ?>[<?php echo $field_name ?>]" id="<?php echo $id ?>_<?php echo $field_name ?>" value="<?php echo isset( $value[$field_name] ) ? esc_attr( $value[$field_name] ) : '' ?>"<?php echo $size ?> />
|
28 |
-
<?php endforeach ?>
|
29 |
-
</p>
|
30 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/text.php
DELETED
@@ -1,24 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
extract( $args );
|
15 |
-
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?> data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
19 |
-
|
20 |
-
<p>
|
21 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $value ) ?>" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?> />
|
22 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
23 |
-
</p>
|
24 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/textarea-editor.php
DELETED
@@ -1,42 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
|
16 |
-
// wp_editor is includes since 3.3 of wordpress
|
17 |
-
if ( ! function_exists( 'wp_editor' ) ) {
|
18 |
-
include 'textarea.php';
|
19 |
-
return;
|
20 |
-
}
|
21 |
-
|
22 |
-
extract( $args );
|
23 |
-
|
24 |
-
$editor_args = array(
|
25 |
-
'wpautop' => true, // use wpautop?
|
26 |
-
'media_buttons' => true, // show insert/upload button(s)
|
27 |
-
'textarea_name' => $name, // set the textarea name to something different, square brackets [] can be used here
|
28 |
-
'textarea_rows' => 20, // rows="..."
|
29 |
-
'tabindex' => '',
|
30 |
-
'editor_css' => '', // intended for extra styles for both visual and HTML editors buttons, needs to include the <style> tags, can use "scoped".
|
31 |
-
'editor_class' => '', // add extra class(es) to the editor textarea
|
32 |
-
'teeny' => false, // output the minimal editor config used in Press This
|
33 |
-
'dfw' => false, // replace the default fullscreen with DFW (needs specific DOM elements and css)
|
34 |
-
'tinymce' => true, // load TinyMCE, can be used to pass settings directly to TinyMCE using an array()
|
35 |
-
'quicktags' => true // load Quicktags, can be used to pass settings directly to Quicktags using an array()
|
36 |
-
);
|
37 |
-
?>
|
38 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?> >
|
39 |
-
<?php if ( ! empty( $title ) ) : ?><label for="<?php echo $id ?>"><?php echo $title ?></label><?php endif; ?>
|
40 |
-
<div class="editor"><?php wp_editor( $value, $id, $editor_args ); ?></div>
|
41 |
-
<p><span class="desc"><?php echo $desc ?></span></p>
|
42 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/textarea.php
DELETED
@@ -1,25 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
|
16 |
-
extract( $args );
|
17 |
-
?>
|
18 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
19 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
20 |
-
|
21 |
-
<p>
|
22 |
-
<textarea id="<?php echo $id ?>" name="<?php echo $name ?>" rows="5" cols="50" <?php if ( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?>><?php echo $value ?></textarea>
|
23 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
24 |
-
</p>
|
25 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/title.php
DELETED
@@ -1,18 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
extract( $args );
|
15 |
-
?>
|
16 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
17 |
-
<h3 style="margin: 0 -10px;"><?php echo $desc ?></h3>
|
18 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/typography.php
DELETED
@@ -1,255 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
|
17 |
-
$defaults = array(
|
18 |
-
'size' => 12,
|
19 |
-
'unit' => 'px',
|
20 |
-
'family' => '',
|
21 |
-
'style' => 'regular',
|
22 |
-
'color' => '#000000'
|
23 |
-
);
|
24 |
-
$value = wp_parse_args( $value, $defaults );
|
25 |
-
?>
|
26 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $deps ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?> >
|
27 |
-
<div id="<?php echo $id ?>" class="rm_typography rm_option">
|
28 |
-
<div class="option">
|
29 |
-
<label for="<?php echo $id ?>"><?php echo $label ?>
|
30 |
-
<small><?php echo $desc ?></small>
|
31 |
-
</label>
|
32 |
-
|
33 |
-
<?php if ( strpos( $style['properties'], 'font-size' ) !== false ) : ?>
|
34 |
-
<!-- Size -->
|
35 |
-
<div class="spinner_container">
|
36 |
-
<input class="number" type="text" name="<?php echo $name ?>[size]" id="<?php echo $id ?>-size" value="<?php echo esc_attr( $value['size'] ) ?>" />
|
37 |
-
</div>
|
38 |
-
|
39 |
-
<!-- Unit -->
|
40 |
-
<div class="select_wrapper font-unit">
|
41 |
-
<select name="<?php echo $name ?>[unit]" id="<?php echo $id ?>-unit">
|
42 |
-
<option value="px" <?php selected( $value['unit'], 'px' ) ?>><?php _e( 'px', 'yith-plugin-fw' ) ?></option>
|
43 |
-
<option value="em" <?php selected( $value['unit'], 'em' ) ?>><?php _e( 'em', 'yith-plugin-fw' ) ?></option>
|
44 |
-
<option value="pt" <?php selected( $value['unit'], 'pt' ) ?>><?php _e( 'pt', 'yith-plugin-fw' ) ?></option>
|
45 |
-
<option value="rem" <?php selected( $value['unit'], 'rem' ) ?>><?php _e( 'rem', 'yith-plugin-fw' ) ?></option>
|
46 |
-
</select>
|
47 |
-
</div>
|
48 |
-
<?php endif; ?>
|
49 |
-
|
50 |
-
<?php if ( strpos( $style['properties'], 'font-family' ) !== false ) : ?>
|
51 |
-
<!-- Family -->
|
52 |
-
<div class="select_wrapper font-family">
|
53 |
-
<select name="<?php echo $name ?>[family]" id="<?php echo $id ?>-family">
|
54 |
-
<?php
|
55 |
-
$web_fonts = yit_get_web_fonts();
|
56 |
-
$google_fonts = yit_get_google_fonts();
|
57 |
-
|
58 |
-
if ( ! empty( $web_fonts ) ) {
|
59 |
-
echo '<optgroup label="' . __( 'Web fonts', 'yith-plugin-fw' ) . '">';
|
60 |
-
|
61 |
-
foreach ( $web_fonts as $font_name => $rule ) {
|
62 |
-
?>
|
63 |
-
<option value='<?php echo esc_attr( $rule ) ?>' <?php selected( stripslashes( $value['family'] ), $rule ) ?>><?php echo $font_name ?></option>
|
64 |
-
<?php
|
65 |
-
}
|
66 |
-
|
67 |
-
echo '</optgroup>';
|
68 |
-
}
|
69 |
-
|
70 |
-
if ( ! empty( $google_fonts ) ) {
|
71 |
-
echo '<optgroup label="' . __( 'Google fonts', 'yith-plugin-fw' ) . '">';
|
72 |
-
|
73 |
-
foreach ( $google_fonts->items as $font ) {
|
74 |
-
// $font_human = trim( stripslashes( end( array_slice( explode( ',', $font ), 0, 1 ) ) ), "'" );
|
75 |
-
// $std_human = trim( stripslashes( end( array_slice( explode( ',', $value['family'] ), 0, 1 ) ) ), "'" );
|
76 |
-
|
77 |
-
//if( isset($font->family) ):
|
78 |
-
//Only me and god know what happen on this line...
|
79 |
-
?>
|
80 |
-
<option value="<?php echo stripslashes( $font ) ?>" <?php selected( $value['family'], $font ) ?>><?php echo $font ?></option>
|
81 |
-
<?php
|
82 |
-
//endif;
|
83 |
-
}
|
84 |
-
|
85 |
-
echo '</optgroup>';
|
86 |
-
}
|
87 |
-
?>
|
88 |
-
</select>
|
89 |
-
</div>
|
90 |
-
<?php endif; ?>
|
91 |
-
|
92 |
-
<?php if ( strpos( $style['properties'], 'font-style' ) !== false ) : ?>
|
93 |
-
<!-- Style -->
|
94 |
-
<div class="select_wrapper font-style">
|
95 |
-
<select name="<?php echo $name ?>[style]" id="<?php echo $id ?>-style">
|
96 |
-
<option value="regular" <?php selected( $value['style'], 'regular' ) ?>><?php _e( 'Regular', 'yith-plugin-fw' ) ?></option>
|
97 |
-
<option value="bold" <?php selected( $value['style'], 'bold' ) ?>><?php _e( 'Bold', 'yith-plugin-fw' ) ?></option>
|
98 |
-
<option value="extra-bold" <?php selected( $std['style'], 'extra-bold' ) ?>><?php _e( 'Extra bold', 'yith-plugin-fw' ) ?></option>
|
99 |
-
<option value="italic" <?php selected( $value['style'], 'italic' ) ?>><?php _e( 'Italic', 'yith-plugin-fw' ) ?></option>
|
100 |
-
<option value="bold-italic" <?php selected( $value['style'], 'bold-italic' ) ?>><?php _e( 'Italic bold', 'yith-plugin-fw' ) ?></option>
|
101 |
-
</select>
|
102 |
-
</div>
|
103 |
-
<?php endif; ?>
|
104 |
-
|
105 |
-
<?php if ( strpos( $style['properties'], 'color' ) !== false ) : ?>
|
106 |
-
<!-- Color -->
|
107 |
-
<div id="<?php echo $id ?>_container" class="colorpicker_container">
|
108 |
-
<div style="background-color: <?php echo $value['color'] ?>"></div>
|
109 |
-
</div>
|
110 |
-
<input type="text" name="<?php echo $name ?>[color]" id="<?php echo $id ?>-color" style="width:150px" value="<?php echo esc_attr( $value['color'] ) ?>" />
|
111 |
-
<?php endif; ?>
|
112 |
-
</div>
|
113 |
-
<div class="clear"></div>
|
114 |
-
<div class="font-preview">
|
115 |
-
<p>The quick brown fox jumps over the lazy dog</p>
|
116 |
-
</div>
|
117 |
-
</div>
|
118 |
-
</div>
|
119 |
-
<script type="text/javascript" charset="utf-8">
|
120 |
-
jQuery(document).ready(function ($) {
|
121 |
-
var container = $('#<?php echo $id ?>');
|
122 |
-
var preview = container.children('.font-preview').children('p');
|
123 |
-
|
124 |
-
//Set current value, before trigger change event
|
125 |
-
|
126 |
-
//Color
|
127 |
-
preview.css('color', '<?php echo $value['color'] ?>');
|
128 |
-
//Font size
|
129 |
-
var size = $('#<?php echo $id ?>-size').val();
|
130 |
-
var unit = $('#<?php echo $id ?>-unit').val();
|
131 |
-
|
132 |
-
preview.css('font-size', size + unit);
|
133 |
-
preview.css('line-height', ( unit == 'em' || unit == 'rem' ? Number(size) + 0.4 : Number(size) + 4 ) + unit);
|
134 |
-
//Font style
|
135 |
-
var style = $('#<?php echo $id ?>-style').val();
|
136 |
-
|
137 |
-
if (style == 'italic') {
|
138 |
-
preview.css({ 'font-weight': 'normal', 'font-style': 'italic' });
|
139 |
-
} else if (style == 'bold') {
|
140 |
-
preview.css({ 'font-weight': 'bold', 'font-style': 'normal' });
|
141 |
-
} else if (style == 'extra-bold') {
|
142 |
-
preview.css({ 'font-weight': '800', 'font-style': 'normal' });
|
143 |
-
} else if (style == 'bold-italic') {
|
144 |
-
preview.css({ 'font-weight': 'bold', 'font-style': 'italic' });
|
145 |
-
} else {
|
146 |
-
preview.css({ 'font-weight': 'normal', 'font-style': 'normal' });
|
147 |
-
}
|
148 |
-
|
149 |
-
//Font Family
|
150 |
-
var group = $('#<?php echo $id ?>-family').find('option:selected').parent().attr('label');
|
151 |
-
|
152 |
-
if ($('#<?php echo $id ?>-family').length > 0) {
|
153 |
-
if (group == '<?php _e( 'Web fonts', 'yith-plugin-fw' ) ?>') {
|
154 |
-
//Web font
|
155 |
-
preview.css('font-family', $('#<?php echo $id ?>-family').val());
|
156 |
-
} else {
|
157 |
-
//Google font
|
158 |
-
WebFontConfig = {
|
159 |
-
google: { families: [ $('#<?php echo $id ?>-family :selected').text() ] }
|
160 |
-
};
|
161 |
-
(function () {
|
162 |
-
var wf = document.createElement('script');
|
163 |
-
wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
|
164 |
-
'://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
|
165 |
-
wf.type = 'text/javascript';
|
166 |
-
wf.async = 'true';
|
167 |
-
|
168 |
-
var s = document.getElementsByTagName('script')[0];
|
169 |
-
s.parentNode.insertBefore(wf, s);
|
170 |
-
})();
|
171 |
-
|
172 |
-
var preview_font = $('#<?php echo $id ?>-family').val()
|
173 |
-
preview.css('font-family', preview_font.replace(/:(.*)?/g, ''));
|
174 |
-
}
|
175 |
-
}
|
176 |
-
|
177 |
-
$('#<?php echo $id ?>-size').spinner({
|
178 |
-
<?php if( isset( $min )): ?>min: <?php echo $min ?>, <?php endif ?>
|
179 |
-
<?php if( isset( $max )): ?>max: <?php echo $max ?>, <?php endif ?>
|
180 |
-
showOn : 'always',
|
181 |
-
upIconClass : "ui-icon-plus",
|
182 |
-
downIconClass : "ui-icon-minus",
|
183 |
-
});
|
184 |
-
|
185 |
-
$('#<?php echo $id ?>_container').ColorPicker({
|
186 |
-
color : '<?php echo $value['color'] ?>',
|
187 |
-
onShow : function (colpkr) {
|
188 |
-
$(colpkr).fadeIn(500);
|
189 |
-
return false;
|
190 |
-
},
|
191 |
-
onHide : function (colpkr) {
|
192 |
-
$(colpkr).fadeOut(500);
|
193 |
-
return false;
|
194 |
-
},
|
195 |
-
onChange: function (hsb, hex, rgb) {
|
196 |
-
$('#<?php echo $id ?>_container div').css('backgroundColor', '#' + hex);
|
197 |
-
$('#<?php echo $id ?>_container').next('input').attr('value', '#' + hex);
|
198 |
-
|
199 |
-
//Preview color change
|
200 |
-
preview.css('color', '#' + hex);
|
201 |
-
}
|
202 |
-
});
|
203 |
-
|
204 |
-
//Font Size Change
|
205 |
-
$('#<?php echo $id ?>-size, #<?php echo $id ?>-unit').change(function () {
|
206 |
-
var size = $('#<?php echo $id ?>-size').val();
|
207 |
-
var unit = $('#<?php echo $id ?>-unit').val();
|
208 |
-
|
209 |
-
preview.css('font-size', size + unit);
|
210 |
-
preview.css('line-height', ( unit == 'em' || unit == 'rem' ? Number(size) + 0.4 : Number(size) + 4 ) + unit);
|
211 |
-
});
|
212 |
-
|
213 |
-
//Font Family Change
|
214 |
-
$('#<?php echo $id ?>-family').change(function () {
|
215 |
-
var group = $(this).find('option:selected').parent().attr('label');
|
216 |
-
|
217 |
-
if (group == '<?php _e( 'Web fonts', 'yith-plugin-fw' ) ?>') {
|
218 |
-
//Web font
|
219 |
-
preview.css('font-family', $(this).val());
|
220 |
-
} else {
|
221 |
-
//Google font
|
222 |
-
WebFontConfig = {
|
223 |
-
google: { families: [ $(':selected', this).text() ] }
|
224 |
-
};
|
225 |
-
(function () {
|
226 |
-
var wf = document.createElement('script');
|
227 |
-
wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
|
228 |
-
'://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
|
229 |
-
wf.type = 'text/javascript';
|
230 |
-
wf.async = 'true';
|
231 |
-
var s = document.getElementsByTagName('script')[0];
|
232 |
-
s.parentNode.insertBefore(wf, s);
|
233 |
-
})();
|
234 |
-
|
235 |
-
var preview_font = $(this).val();
|
236 |
-
preview.css('font-family', preview_font.replace(/:(.*)?/g, ''));
|
237 |
-
}
|
238 |
-
});
|
239 |
-
|
240 |
-
//Font Style Change
|
241 |
-
$('#<?php echo $id ?>-style').change(function () {
|
242 |
-
var style = $(this).val();
|
243 |
-
|
244 |
-
if (style == 'italic') {
|
245 |
-
preview.css({ 'font-weight': 'normal', 'font-style': 'italic' });
|
246 |
-
} else if (style == 'bold') {
|
247 |
-
preview.css({ 'font-weight': 'bold', 'font-style': 'normal' });
|
248 |
-
} else if (style == 'bold-italic') {
|
249 |
-
preview.css({ 'font-weight': 'bold', 'font-style': 'italic' });
|
250 |
-
} else {
|
251 |
-
preview.css({ 'font-weight': 'normal', 'font-style': 'normal' });
|
252 |
-
}
|
253 |
-
});
|
254 |
-
});
|
255 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/metaboxes/types/upload.php
DELETED
@@ -1,24 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
extract( $args );
|
16 |
-
?>
|
17 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset($deps) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $deps['ids'] ?>" data-value="<?php echo $deps['values'] ?>" <?php endif ?>>
|
18 |
-
<label for="<?php echo $id ?>"><?php echo $label ?></label>
|
19 |
-
<p>
|
20 |
-
<input type="text" id="<?php echo $id ?>" name="<?php echo $name ?>" value="<?php echo esc_attr( $value ) ?>" <?php if( isset( $std ) ) : ?>data-std="<?php echo $std ?>"<?php endif ?> class="upload_img_url"/>
|
21 |
-
<input type="button" class="button-secondary upload_button" id="<?php echo $id ?>-button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" />
|
22 |
-
<span class="desc inline"><?php echo $desc ?></span>
|
23 |
-
</p>
|
24 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/panel-field-container.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*/
|
10 |
+
|
11 |
+
/**
|
12 |
+
* Field Container for YIT Panel
|
13 |
+
*
|
14 |
+
* @package Yithemes
|
15 |
+
* @author Leanza Francesco <leanzafrancesco@gmail.com>
|
16 |
+
* @since 3.0.0
|
17 |
+
*/
|
18 |
+
|
19 |
+
!defined( 'ABSPATH' ) && exit; // Exit if accessed directly
|
20 |
+
|
21 |
+
$id = $this->get_id_field( $option[ 'id' ] );
|
22 |
+
$name = $this->get_name_field( $option[ 'id' ] );
|
23 |
+
$type = $option[ 'type' ];
|
24 |
+
|
25 |
+
$field = $option;
|
26 |
+
$field[ 'id' ] = $id;
|
27 |
+
$field[ 'name' ] = $name;
|
28 |
+
$field[ 'value' ] = $db_value;
|
29 |
+
if ( !empty( $custom_attributes ) )
|
30 |
+
$field[ 'custom_attributes' ] = $custom_attributes;
|
31 |
+
|
32 |
+
?>
|
33 |
+
<div id="<?php echo $id ?>-container" class="yit_options yith-plugin-fw-field-wrapper yith-plugin-fw-<?php echo $type ?>-field-wrapper" <?php echo yith_panel_field_deps_data( $option, $this ) ?>>
|
34 |
+
<div class="option">
|
35 |
+
<?php yith_plugin_fw_get_field( $field, true, false ); ?>
|
36 |
+
</div>
|
37 |
+
<span class="description"><?php echo $option[ 'desc' ] ?></span>
|
38 |
+
|
39 |
+
<div class="clear"></div>
|
40 |
+
</div>
|
41 |
+
|
plugin-fw/templates/panel/types/chosen.php
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
-
exit;
|
13 |
-
} // Exit if accessed directly
|
14 |
-
|
15 |
-
$id = $this->get_id_field( $option['id'] );
|
16 |
-
$name = $this->get_name_field( $option['id'] );
|
17 |
-
|
18 |
-
$is_multiple = isset( $option['multiple'] ) && $option['multiple'];
|
19 |
-
$multiple = ( $is_multiple ) ? ' multiple' : '';
|
20 |
-
|
21 |
-
$db_value = ( $is_multiple && ! is_array( $db_value ) ) ? array() : $db_value;
|
22 |
-
?>
|
23 |
-
<div id="<?php echo $id ?>-container" class="chosen yit_options rm_option rm_input rm_text" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
24 |
-
<div class="option">
|
25 |
-
<div class="select_wrapper">
|
26 |
-
<select name="<?php echo $name ?><?php if( $is_multiple ) echo "[]" ?>" class="chosen" id="<?php echo $id ?>" <?php echo $multiple ?> <?php echo $custom_attributes ?> >
|
27 |
-
<?php foreach ( $option['options'] as $key => $value ) : ?>
|
28 |
-
<option value="<?php echo esc_attr( $key ) ?>"<?php ($is_multiple) ? selected( true, in_array( $key, $db_value) ) : selected( $key, $db_value ) ?>><?php echo $value ?></option>
|
29 |
-
<?php endforeach; ?>
|
30 |
-
</select>
|
31 |
-
</div>
|
32 |
-
</div>
|
33 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
34 |
-
|
35 |
-
<div class="clear"></div>
|
36 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/colorpicker.php
DELETED
@@ -1,38 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Text Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
wp_enqueue_style('wp-color-picker');
|
24 |
-
|
25 |
-
$id = $this->get_id_field( $option['id'] );
|
26 |
-
$name = $this->get_name_field( $option['id'] );
|
27 |
-
|
28 |
-
?>
|
29 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?> class="yit_options rm_option rm_input rm_colorpicker">
|
30 |
-
<div class="option">
|
31 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $db_value ) ?>" <?php if( isset( $std ) ) : ?>data-default-color="<?php echo $std ?>"<?php endif ?> class="panel-colorpicker"/>
|
32 |
-
|
33 |
-
</div>
|
34 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
35 |
-
|
36 |
-
<div class="clear"></div>
|
37 |
-
</div>
|
38 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/connected-list.php
DELETED
@@ -1,27 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$id = $this->get_id_field( $option['id'] );
|
3 |
-
$name = $this->get_name_field( $option['id'] );
|
4 |
-
?>
|
5 |
-
|
6 |
-
<div id="<?php echo $id ?>-container" class="yit_options rm_option rm_input rm_text rm_connectedlist" <?php if( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
7 |
-
<div class="option">
|
8 |
-
<?php $yit_option = json_decode( stripslashes( $db_value ), true ); ?>
|
9 |
-
<?php $lists = is_array($yit_option) ? $yit_option : $option['lists']; ?>
|
10 |
-
|
11 |
-
<?php foreach( $lists as $list => $options ): ?>
|
12 |
-
<div class="list_container">
|
13 |
-
<h4><?php echo $option['heads'][ $list ] ?></h4>
|
14 |
-
<ul id="list_<?php echo $list ?>" class="connectedSortable" data-list="<?php echo $list ?>" <?php echo $custom_attributes ?>>
|
15 |
-
<?php foreach( $options as $value => $label ): ?>
|
16 |
-
<li data-option="<?php echo $value ?>" class="ui-state-default"><?php echo $label ?></li>
|
17 |
-
<?php endforeach ?>
|
18 |
-
</ul>
|
19 |
-
</div>
|
20 |
-
<?php endforeach ?>
|
21 |
-
<input type="hidden" name="<?php echo $name ?>" id="<?php echo $id ?>" value='<?php echo esc_attr( $db_value ) ?>' />
|
22 |
-
</div>
|
23 |
-
<div class="description">
|
24 |
-
<?php echo $option['desc'] ?>
|
25 |
-
</div>
|
26 |
-
<div class="clear"></div>
|
27 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/layout-panel.php
DELETED
File without changes
|
plugin-fw/templates/panel/types/number.php
DELETED
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Number Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?> class="yit_options rm_option rm_input rm_text">
|
28 |
-
<div class="option">
|
29 |
-
<input type="number" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $db_value ) ?>" <?php echo $custom_attributes ?> />
|
30 |
-
</div>
|
31 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
32 |
-
|
33 |
-
<div class="clear"></div>
|
34 |
-
</div>
|
35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/on-off.php
DELETED
@@ -1,34 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* ON-OFF Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?> class="onoff_container yit_options rm_option rm_input rm_onoff">
|
28 |
-
<div class="option">
|
29 |
-
<input type="checkbox" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $db_value ) ?>" <?php checked( $db_value, 'yes' ); ?> class="on_off<?php if ( $db_value == 'yes' ): ?> onoffchecked<?php endif ?>" <?php echo $custom_attributes ?>/>
|
30 |
-
<span> </span>
|
31 |
-
</div>
|
32 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
33 |
-
</div>
|
34 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/select-mailchimp.php
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Select Mailchimp Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Antonio La Rocca <antonio.larocca@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
20 |
-
?>
|
21 |
-
|
22 |
-
<div id="<?php echo $this->get_id_field( $option['id'] ) ?>-container" class="yit_options rm_option rm_input rm_text" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
23 |
-
<div class="option">
|
24 |
-
<div class="select_wrapper">
|
25 |
-
<select name="<?php echo $this->get_name_field( $option['id'] ) ?>" id="<?php echo $this->get_id_field( $option['id'] ) ?>" <?php echo $custom_attributes ?>>
|
26 |
-
<?php foreach( $option['options'] as $key => $value ) : ?>
|
27 |
-
<option value="<?php echo esc_attr( $key ) ?>"<?php selected( $key, $db_value ) ?>><?php echo $value ?></option>
|
28 |
-
<?php endforeach; ?>
|
29 |
-
</select>
|
30 |
-
</div>
|
31 |
-
<input type="button" class="button-secondary <?php echo $option['class']?>" value="<?php echo esc_attr( $option['button_name'] ) ?>"/>
|
32 |
-
<span class="spinner"></span>
|
33 |
-
</div>
|
34 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
35 |
-
<div class="clear"></div>
|
36 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/select.php
DELETED
@@ -1,41 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Select Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
$id = $this->get_id_field( $option['id'] );
|
23 |
-
$name = $this->get_name_field( $option['id'] );
|
24 |
-
|
25 |
-
$is_multiple = isset( $option['multiple'] ) && $option['multiple'];
|
26 |
-
$multiple = ( $is_multiple ) ? ' multiple' : '';
|
27 |
-
?>
|
28 |
-
<div id="<?php echo $id ?>-container" class="yit_options rm_option rm_input rm_text" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
29 |
-
<div class="option">
|
30 |
-
<div class="select_wrapper">
|
31 |
-
<select name="<?php echo $name ?><?php if( $is_multiple ) echo "[]" ?>" id="<?php echo $id ?>" <?php echo $multiple ?> <?php echo $custom_attributes ?> >
|
32 |
-
<?php foreach ( $option['options'] as $key => $value ) : ?>
|
33 |
-
<option value="<?php echo esc_attr( $key ) ?>"<?php ($is_multiple) ? selected( true, in_array( $key, $db_value) ) : selected( $key, $db_value ) ?>><?php echo $value ?></option>
|
34 |
-
<?php endforeach; ?>
|
35 |
-
</select>
|
36 |
-
</div>
|
37 |
-
</div>
|
38 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
39 |
-
|
40 |
-
<div class="clear"></div>
|
41 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/slider.php
DELETED
@@ -1,40 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Slider Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
?>
|
26 |
-
<div id="<?php echo $id ?>-container" class="slider_container yit_options rm_option rm_input slider_control slider" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
27 |
-
<div class="option">
|
28 |
-
<div class="ui-slider">
|
29 |
-
<span class="minCaption"><?php echo $option['min'] ?></span>
|
30 |
-
<span class="maxCaption"><?php echo $option['max'] ?></span>
|
31 |
-
<span id="<?php echo $id ?>-feedback" class="feedback"><strong><?php echo $db_value ?></strong></span>
|
32 |
-
|
33 |
-
<div id="<?php echo $id ?>-div" data-step="<?php echo isset( $option['step'] ) ? $option['step'] : 1 ?>" data-labels="<?php echo '' ?>" data-min="<?php echo $option['min'] ?>" data-max="<?php echo $option['max'] ?>" data-val="<?php echo $db_value; ?>" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all">
|
34 |
-
<input id="<?php echo $id ?>" type="hidden" name="<?php echo $name ?>" value="<?php echo esc_attr( $db_value ); ?>" />
|
35 |
-
</div>
|
36 |
-
</div>
|
37 |
-
</div>
|
38 |
-
|
39 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
40 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/text-button.php
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Text Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Antonio La Rocca <antonio.larocca@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?> class="yit_options rm_option rm_input rm_text">
|
28 |
-
<div class="option">
|
29 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $db_value ) ?>" />
|
30 |
-
<input type="button" class="<?php echo $option['button-class']?> button button-secondary" value="<?php echo esc_attr( $option['button-name'] ) ?>" <?php if ( isset( $option['data'] ) && ! empty( $option['data'] ) ): foreach( $option['data'] as $id => $data ): ?> data-<?php echo $id?>="<?php echo $data?>" <?php endforeach; endif;?> />
|
31 |
-
</div>
|
32 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
33 |
-
|
34 |
-
<div class="clear"></div>
|
35 |
-
</div>
|
36 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/text.php
DELETED
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Text Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?> class="yit_options rm_option rm_input rm_text">
|
28 |
-
<div class="option">
|
29 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo esc_attr( $db_value ) ?>" <?php echo $custom_attributes ?> />
|
30 |
-
</div>
|
31 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
32 |
-
|
33 |
-
<div class="clear"></div>
|
34 |
-
</div>
|
35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/textarea-codemirror.php
DELETED
@@ -1,40 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Textarea Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Antonio La Rocca <antonio.larocca@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" class="yit_options rm_option rm_input rm_text" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
28 |
-
<div class="option">
|
29 |
-
<textarea name="<?php echo $name ?>" class="codemirror" id="<?php echo $id ?>" rows="8" cols="50" <?php echo $custom_attributes ?>><?php echo $db_value ?></textarea>
|
30 |
-
</div>
|
31 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
32 |
-
|
33 |
-
<div class="clear"></div>
|
34 |
-
</div>
|
35 |
-
|
36 |
-
<?php
|
37 |
-
wp_enqueue_script('codemirror');
|
38 |
-
wp_enqueue_script('codemirror-javascript');
|
39 |
-
wp_enqueue_style('codemirror');
|
40 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/textarea.php
DELETED
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Textarea Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" class="yit_options rm_option rm_input rm_text" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
28 |
-
<div class="option">
|
29 |
-
<textarea name="<?php echo $name ?>" id="<?php echo $id ?>" rows="8" cols="50" <?php echo $custom_attributes ?>><?php echo $db_value ?></textarea>
|
30 |
-
</div>
|
31 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
32 |
-
|
33 |
-
<div class="clear"></div>
|
34 |
-
</div>
|
35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/types/upload.php
DELETED
@@ -1,46 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*/
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Upload Plugin Admin View
|
13 |
-
*
|
14 |
-
* @package Yithemes
|
15 |
-
* @author Emanuela Castorina <emanuela.castorina@yithemes.it>
|
16 |
-
* @since 1.0.0
|
17 |
-
*/
|
18 |
-
|
19 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
-
exit;
|
21 |
-
} // Exit if accessed directly
|
22 |
-
|
23 |
-
$id = $this->get_id_field( $option['id'] );
|
24 |
-
$name = $this->get_name_field( $option['id'] );
|
25 |
-
|
26 |
-
?>
|
27 |
-
<div id="<?php echo $id ?>-container" >
|
28 |
-
<div id="<?php echo $id ?>-container" class="yit_options rm_option rm_input rm_text rm_upload" <?php if ( isset( $option['deps'] ) ): ?>data-field="<?php echo $id ?>" data-dep="<?php echo $this->get_id_field( $option['deps']['ids'] ) ?>" data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
29 |
-
<div class="option yit-upload">
|
30 |
-
<input type="text" name="<?php echo $name ?>" id="<?php echo $id ?>" value="<?php echo $db_value == '1' ? '' : esc_attr( $db_value ) ?>" class="upload_img_url" />
|
31 |
-
<input type="button" value="<?php _e( 'Upload', 'yith-plugin-fw' ) ?>" id="<?php echo $id ?>-button" class="upload_button button" />
|
32 |
-
<input type="button" value="<?php _e( 'Reset', 'yith-plugin-fw' ) ?>" id="<?php echo $id ?>-button_reset" class="upload_button_reset button" data-default="<?php echo $option['std'] ?>"/>
|
33 |
-
</div>
|
34 |
-
<div class="clear"></div>
|
35 |
-
<span class="description"><?php echo $option['desc'] ?></span>
|
36 |
-
</div>
|
37 |
-
<div class="upload_img_preview" style="margin-top:10px;">
|
38 |
-
<?php
|
39 |
-
$file = $db_value;
|
40 |
-
if ( preg_match( '/(jpg|jpeg|png|gif|ico)$/', $file ) ) {
|
41 |
-
echo isset( $this->settings['plugin-url'] ) ? "<img src=\"" . $this->settings['plugin-url'] . "/plugin-fw/assets/images/sleep.png\" data-src=\"$file\" />" : '';
|
42 |
-
}
|
43 |
-
?>
|
44 |
-
</div>
|
45 |
-
</div>
|
46 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/templates/panel/woocommerce/woocommerce-form.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
$panel_content_class = apply_filters( 'yit_admin_panel_content_class', 'yit-admin-panel-content-wrap' );
|
3 |
?>
|
4 |
|
5 |
-
<div id="<?php echo $this->settings[ 'page' ] ?>_<?php echo $this->get_current_tab() ?>" class="yit-admin-panel-container">
|
6 |
<?php do_action( 'yit_framework_before_print_wc_panel_content', $current_tab ); ?>
|
7 |
<div class="<?php echo $panel_content_class; ?>">
|
8 |
<form id="plugin-fw-wc" method="post">
|
2 |
$panel_content_class = apply_filters( 'yit_admin_panel_content_class', 'yit-admin-panel-content-wrap' );
|
3 |
?>
|
4 |
|
5 |
+
<div id="<?php echo $this->settings[ 'page' ] ?>_<?php echo $this->get_current_tab() ?>" class="yith-plugin-fw yit-admin-panel-container">
|
6 |
<?php do_action( 'yit_framework_before_print_wc_panel_content', $current_tab ); ?>
|
7 |
<div class="<?php echo $panel_content_class; ?>">
|
8 |
<form id="plugin-fw-wc" method="post">
|
plugin-fw/templates/panel/woocommerce/woocommerce-option-row.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @var array $field
|
4 |
+
* @var string $description
|
5 |
+
*/
|
6 |
+
$default_field = array(
|
7 |
+
'id' => '',
|
8 |
+
'title' => isset( $field[ 'name' ] ) ? $field[ 'name' ] : '',
|
9 |
+
'desc' => '',
|
10 |
+
);
|
11 |
+
$field = wp_parse_args( $field, $default_field );
|
12 |
+
|
13 |
+
$display_row = !in_array( $field[ 'type' ], array( 'hidden', 'html', 'sep', 'simple-text', 'title' ) );
|
14 |
+
$display_row = isset( $field[ 'yith-display-row' ] ) ? !!$field[ 'yith-display-row' ] : $display_row;
|
15 |
+
|
16 |
+
?>
|
17 |
+
<tr valign="top" class="yith-plugin-fw-panel-wc-row <?php echo $field[ 'type' ] ?>" <?php echo yith_field_deps_data( $field ) ?>>
|
18 |
+
<?php if ( $display_row ) : ?>
|
19 |
+
<th scope="row" class="titledesc">
|
20 |
+
<label for="<?php echo esc_attr( $field[ 'id' ] ); ?>"><?php echo esc_html( $field[ 'title' ] ); ?></label>
|
21 |
+
</th>
|
22 |
+
<td class="forminp forminp-<?php echo sanitize_title( $field[ 'type' ] ) ?>">
|
23 |
+
<?php yith_plugin_fw_get_field( $field, true ); ?>
|
24 |
+
<?php echo '<span class="description">' . wp_kses_post( $field[ 'desc' ] ) . '</span>'; ?>
|
25 |
+
</td>
|
26 |
+
<?php else: ?>
|
27 |
+
<td colspan="2">
|
28 |
+
<?php yith_plugin_fw_get_field( $field, true ); ?>
|
29 |
+
</td>
|
30 |
+
<?php endif; ?>
|
31 |
+
</tr>
|
plugin-fw/templates/panel/woocommerce/woocommerce-upload.php
CHANGED
@@ -35,15 +35,15 @@ $hidden_val = get_option($id . "-yith-attachment-id", 0);
|
|
35 |
data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
36 |
<div class="option">
|
37 |
<input type="text" name="<?php echo $id ?>" id="<?php echo $id ?>"
|
38 |
-
value="<?php echo $value == '1' ? '' : esc_attr($value) ?>" class="
|
39 |
<input type="hidden" name="<?php echo $id ?>-yith-attachment-id" id="<?php echo $id ?>-yith-attachment-id" value="<?php echo $hidden_val; ?>" />
|
40 |
<input type="button" value="<?php _e('Upload', 'yith-plugin-fw') ?>" id="<?php echo $id ?>-button"
|
41 |
-
class="
|
42 |
</div>
|
43 |
<div class="clear"></div>
|
44 |
<span class="description"><?php echo $desc ?></span>
|
45 |
|
46 |
-
<div class="
|
47 |
<?php
|
48 |
$file = $value;
|
49 |
if (preg_match('/(jpg|jpeg|png|gif|ico)$/', $file)) {
|
35 |
data-value="<?php echo $option['deps']['values'] ?>" <?php endif ?>>
|
36 |
<div class="option">
|
37 |
<input type="text" name="<?php echo $id ?>" id="<?php echo $id ?>"
|
38 |
+
value="<?php echo $value == '1' ? '' : esc_attr($value) ?>" class="yith-plugin-fw-upload-img-url"/>
|
39 |
<input type="hidden" name="<?php echo $id ?>-yith-attachment-id" id="<?php echo $id ?>-yith-attachment-id" value="<?php echo $hidden_val; ?>" />
|
40 |
<input type="button" value="<?php _e('Upload', 'yith-plugin-fw') ?>" id="<?php echo $id ?>-button"
|
41 |
+
class="yith-plugin-fw-upload-button button"/>
|
42 |
</div>
|
43 |
<div class="clear"></div>
|
44 |
<span class="description"><?php echo $desc ?></span>
|
45 |
|
46 |
+
<div class="yith-plugin-fw-upload-img-preview" style="margin-top:10px;">
|
47 |
<?php
|
48 |
$file = $value;
|
49 |
if (preg_match('/(jpg|jpeg|png|gif|ico)$/', $file)) {
|
plugin-fw/yit-functions.php
CHANGED
@@ -8,11 +8,11 @@
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
-
if ( !
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
-
if ( !
|
16 |
/**
|
17 |
* Locate the templates and return the path of the file found
|
18 |
*
|
@@ -23,15 +23,15 @@ if ( ! function_exists ( 'yit_plugin_locate_template' ) ) {
|
|
23 |
* @return string
|
24 |
* @since 2.0.0
|
25 |
*/
|
26 |
-
function yit_plugin_locate_template
|
27 |
|
28 |
$template_path = '/theme/templates/' . $path;
|
29 |
|
30 |
-
$located = locate_template
|
31 |
-
|
32 |
-
|
33 |
|
34 |
-
if (
|
35 |
$located = $plugin_basename . '/templates/' . $path;
|
36 |
}
|
37 |
|
@@ -40,7 +40,7 @@ if ( ! function_exists ( 'yit_plugin_locate_template' ) ) {
|
|
40 |
|
41 |
}
|
42 |
|
43 |
-
if ( !
|
44 |
/**
|
45 |
* Retrieve a template file.
|
46 |
*
|
@@ -52,30 +52,30 @@ if ( ! function_exists ( 'yit_plugin_get_template' ) ) {
|
|
52 |
* @return string
|
53 |
* @since 2.0.0
|
54 |
*/
|
55 |
-
function yit_plugin_get_template
|
56 |
|
57 |
-
$located = yit_plugin_locate_template
|
58 |
|
59 |
-
if ( $var && is_array
|
60 |
-
extract
|
61 |
}
|
62 |
|
63 |
if ( $return ) {
|
64 |
-
ob_start
|
65 |
}
|
66 |
|
67 |
// include file located
|
68 |
-
if ( file_exists
|
69 |
-
include
|
70 |
}
|
71 |
|
72 |
if ( $return ) {
|
73 |
-
return ob_get_clean
|
74 |
}
|
75 |
}
|
76 |
}
|
77 |
|
78 |
-
if ( !
|
79 |
/**
|
80 |
* Return post content with read more link (if needed)
|
81 |
*
|
@@ -88,12 +88,12 @@ if ( ! function_exists ( 'yit_plugin_content' ) ) {
|
|
88 |
* @return string
|
89 |
* @since 2.0.0
|
90 |
*/
|
91 |
-
function yit_plugin_content
|
92 |
if ( $what == 'content' ) {
|
93 |
-
$content = get_the_content
|
94 |
} else {
|
95 |
if ( $what == 'excerpt' ) {
|
96 |
-
$content = get_the_excerpt
|
97 |
} else {
|
98 |
$content = $what;
|
99 |
}
|
@@ -101,70 +101,70 @@ if ( ! function_exists ( 'yit_plugin_content' ) ) {
|
|
101 |
|
102 |
if ( $limit == 0 ) {
|
103 |
if ( $what == 'excerpt' ) {
|
104 |
-
$content = apply_filters
|
105 |
} else {
|
106 |
-
$content = preg_replace
|
107 |
-
$content = apply_filters
|
108 |
-
$content = str_replace
|
109 |
}
|
110 |
|
111 |
return $content;
|
112 |
}
|
113 |
|
114 |
// remove the tag more from the content
|
115 |
-
if ( preg_match
|
116 |
|
117 |
-
if ( strpos
|
118 |
-
$more_link = str_replace
|
119 |
} else {
|
120 |
$more_link = $matches[ 0 ];
|
121 |
}
|
122 |
|
123 |
-
$content = str_replace
|
124 |
$split = '';
|
125 |
}
|
126 |
|
127 |
if ( empty( $content ) ) {
|
128 |
return;
|
129 |
}
|
130 |
-
$content = explode
|
131 |
|
132 |
-
if ( !
|
133 |
//array_pop( $content );
|
134 |
-
$more_link = strpos
|
135 |
$split = '';
|
136 |
-
} elseif ( !
|
137 |
$more_link = '';
|
138 |
}
|
139 |
|
140 |
// split
|
141 |
-
if ( count
|
142 |
$split_content = '';
|
143 |
-
for ( $i = 0; $i < $limit; $i
|
144 |
$split_content .= $content[ $i ] . ' ';
|
145 |
}
|
146 |
|
147 |
$content = $split_content . $split;
|
148 |
} else {
|
149 |
-
$content = implode
|
150 |
}
|
151 |
|
152 |
// TAGS UNCLOSED
|
153 |
-
$tags = array
|
154 |
// get all tags opened
|
155 |
-
preg_match_all
|
156 |
foreach ( $tags_opened as $tag ) {
|
157 |
$tags[] = $tag[ 2 ];
|
158 |
}
|
159 |
|
160 |
// get all tags closed and remove it from the tags opened.. the rest will be closed at the end of the content
|
161 |
-
preg_match_all
|
162 |
foreach ( $tags_closed as $tag ) {
|
163 |
-
unset( $tags[ array_search
|
164 |
}
|
165 |
|
166 |
// close the tags
|
167 |
-
if ( !
|
168 |
foreach ( $tags as $tag ) {
|
169 |
$content .= "</$tag>";
|
170 |
}
|
@@ -172,31 +172,31 @@ if ( ! function_exists ( 'yit_plugin_content' ) ) {
|
|
172 |
|
173 |
//$content = preg_replace( '/\[.+\]/', '', $content );
|
174 |
if ( $in_paragraph == true ): $content .= $more_link; endif;
|
175 |
-
$content = preg_replace
|
176 |
-
$content = apply_filters
|
177 |
-
$content = str_replace
|
178 |
if ( $in_paragraph == false ): $content .= $more_link; endif;
|
179 |
|
180 |
return $content;
|
181 |
}
|
182 |
}
|
183 |
|
184 |
-
if ( !
|
185 |
/**
|
186 |
* Simple echo a string, with a before and after string, only if the main string is not empty.
|
187 |
*
|
188 |
* @param string $before What there is before the main string
|
189 |
* @param string $string The main string. If it is empty or null, the functions return null.
|
190 |
-
* @param string $after
|
191 |
-
* @param bool $echo
|
192 |
*
|
193 |
* @return string The complete string, if the main string is not empty or null
|
194 |
* @since 2.0.0
|
195 |
*/
|
196 |
-
function yit_plugin_string
|
197 |
$html = '';
|
198 |
|
199 |
-
if ( $string != '' AND !
|
200 |
$html = $before . $string . $after;
|
201 |
}
|
202 |
|
@@ -208,7 +208,7 @@ if ( ! function_exists ( 'yit_plugin_string' ) ) {
|
|
208 |
}
|
209 |
}
|
210 |
|
211 |
-
if ( !
|
212 |
/**
|
213 |
* Change some special characters to put easily html into a string
|
214 |
*
|
@@ -222,14 +222,14 @@ if ( ! function_exists ( 'yit_plugin_decode_title' ) ) {
|
|
222 |
*
|
223 |
* @since 1.0
|
224 |
*/
|
225 |
-
function yit_plugin_decode_title
|
226 |
-
$replaces = apply_filters
|
227 |
|
228 |
-
return preg_replace
|
229 |
}
|
230 |
}
|
231 |
|
232 |
-
if ( !
|
233 |
|
234 |
/**
|
235 |
* Return the ID of an attachment.
|
@@ -241,22 +241,22 @@ if ( ! function_exists ( 'yit_plugin_get_attachment_id' ) ) {
|
|
241 |
* @since 2.0.0
|
242 |
*/
|
243 |
|
244 |
-
function yit_plugin_get_attachment_id
|
245 |
|
246 |
-
$upload_dir = wp_upload_dir
|
247 |
-
$dir = trailingslashit
|
248 |
|
249 |
-
if ( false === strpos
|
250 |
return false;
|
251 |
}
|
252 |
|
253 |
-
$file = basename
|
254 |
|
255 |
-
$query = array
|
256 |
'post_type' => 'attachment',
|
257 |
'fields' => 'ids',
|
258 |
-
'meta_query' => array
|
259 |
-
array
|
260 |
'value' => $file,
|
261 |
'compare' => 'LIKE',
|
262 |
),
|
@@ -264,26 +264,26 @@ if ( ! function_exists ( 'yit_plugin_get_attachment_id' ) ) {
|
|
264 |
);
|
265 |
|
266 |
$query[ 'meta_query' ][ 0 ][ 'key' ] = '_wp_attached_file';
|
267 |
-
$ids = get_posts
|
268 |
|
269 |
foreach ( $ids as $id ) {
|
270 |
-
$attachment_image = wp_get_attachment_image_src
|
271 |
-
if ( $url == array_shift
|
272 |
return $id;
|
273 |
}
|
274 |
}
|
275 |
$query[ 'meta_query' ][ 0 ][ 'key' ] = '_wp_attachment_metadata';
|
276 |
-
$ids = get_posts
|
277 |
|
278 |
foreach ( $ids as $id ) {
|
279 |
|
280 |
-
$meta = wp_get_attachment_metadata
|
281 |
-
if ( !
|
282 |
continue;
|
283 |
}
|
284 |
|
285 |
-
foreach ( (array)$meta[ 'sizes' ] as $size => $values ) {
|
286 |
-
if ( $values[ 'file' ] == $file && $url == str_replace
|
287 |
|
288 |
return $id;
|
289 |
}
|
@@ -294,7 +294,7 @@ if ( ! function_exists ( 'yit_plugin_get_attachment_id' ) ) {
|
|
294 |
}
|
295 |
}
|
296 |
|
297 |
-
if ( !
|
298 |
/**
|
299 |
* Enqueues script.
|
300 |
*
|
@@ -304,18 +304,18 @@ if ( ! function_exists ( 'yit_enqueue_script' ) ) {
|
|
304 |
* @author Simone D'Amico <simone.damico@yithemes.com>
|
305 |
* @see yit_register_script() For parameter information.
|
306 |
*/
|
307 |
-
function yit_enqueue_script
|
308 |
|
309 |
-
if ( function_exists
|
310 |
$enqueue = true;
|
311 |
-
YIT_Asset
|
312 |
} else {
|
313 |
-
wp_enqueue_script
|
314 |
}
|
315 |
}
|
316 |
}
|
317 |
|
318 |
-
if ( !
|
319 |
/**
|
320 |
* Enqueues style.
|
321 |
*
|
@@ -325,68 +325,71 @@ if ( ! function_exists ( 'yit_enqueue_style' ) ) {
|
|
325 |
* @author Simone D'Amico <simone.damico@yithemes.com>
|
326 |
* @see yit_register_style() For parameter information.
|
327 |
*/
|
328 |
-
function yit_enqueue_style
|
329 |
|
330 |
-
if ( function_exists
|
331 |
$enqueue = true;
|
332 |
-
$who = YIT_Asset
|
333 |
$where = 'before';
|
334 |
|
335 |
if ( false == $who ) {
|
336 |
$who = '';
|
337 |
}
|
338 |
|
339 |
-
YIT_Asset
|
340 |
} else {
|
341 |
-
wp_enqueue_style
|
342 |
}
|
343 |
}
|
344 |
}
|
345 |
|
346 |
-
if ( !
|
347 |
/**
|
348 |
* Retrieve the value of a metabox.
|
349 |
*
|
350 |
* This function retrieve the value of a metabox attached to a post. It return either a single value or an array.
|
351 |
*
|
352 |
-
* @param int $id
|
353 |
* @param string $meta The meta key to retrieve.
|
354 |
*
|
355 |
* @return mixed Single value or array
|
356 |
* @since 2.0.0
|
357 |
*/
|
358 |
-
function yit_get_post_meta
|
359 |
-
if ( !
|
360 |
-
return get_post_meta
|
361 |
}
|
362 |
|
363 |
-
$sub_meta = explode
|
364 |
|
365 |
-
$meta = get_post_meta
|
366 |
-
for ( $i =
|
367 |
-
$
|
|
|
|
|
|
|
368 |
}
|
369 |
|
370 |
return $meta;
|
371 |
}
|
372 |
}
|
373 |
|
374 |
-
if ( !
|
375 |
/**
|
376 |
* Simple echo a string, with a before and after string, only if the main string is not empty.
|
377 |
*
|
378 |
* @param string $before What there is before the main string
|
379 |
* @param string $string The main string. If it is empty or null, the functions return null.
|
380 |
-
* @param string $after
|
381 |
-
* @param bool $echo
|
382 |
*
|
383 |
* @return string The complete string, if the main string is not empty or null
|
384 |
* @since 2.0.0
|
385 |
*/
|
386 |
-
function yit_string
|
387 |
$html = '';
|
388 |
|
389 |
-
if ( $string != '' AND !
|
390 |
$html = $before . $string . $after;
|
391 |
}
|
392 |
|
@@ -399,7 +402,7 @@ if ( ! function_exists ( 'yit_string' ) ) {
|
|
399 |
}
|
400 |
|
401 |
|
402 |
-
if ( !
|
403 |
/**
|
404 |
* Print pagination
|
405 |
*
|
@@ -409,12 +412,12 @@ if ( ! function_exists ( 'yit_pagination' ) ) {
|
|
409 |
* @return string
|
410 |
* @since 2.0.0
|
411 |
*/
|
412 |
-
function yit_pagination
|
413 |
$showitems = ( $range * 2 ) + 1;
|
414 |
|
415 |
-
$paged = ( get_query_var
|
416 |
if ( $paged === false ) {
|
417 |
-
$paged = ( get_query_var
|
418 |
}
|
419 |
if ( $paged === false ) {
|
420 |
$paged = 1;
|
@@ -430,7 +433,7 @@ if ( ! function_exists ( 'yit_pagination' ) ) {
|
|
430 |
$pages = $wp_query->max_num_pages;
|
431 |
}
|
432 |
|
433 |
-
if (
|
434 |
$pages = 1;
|
435 |
}
|
436 |
}
|
@@ -438,60 +441,60 @@ if ( ! function_exists ( 'yit_pagination' ) ) {
|
|
438 |
if ( 1 != $pages ) {
|
439 |
$html .= "<div class='general-pagination clearfix'>";
|
440 |
if ( $paged > 2 ) {
|
441 |
-
$html .= sprintf
|
442 |
}
|
443 |
if ( $paged > 1 ) {
|
444 |
-
$html .= sprintf
|
445 |
}
|
446 |
|
447 |
-
for ( $i = 1; $i <= $pages; $i
|
448 |
-
if ( 1 != $pages && ( !
|
449 |
$class = ( $paged == $i ) ? " class='selected'" : '';
|
450 |
-
$html .= "<a href='" . get_pagenum_link
|
451 |
}
|
452 |
}
|
453 |
|
454 |
if ( $paged < $pages ) {
|
455 |
-
$html .= sprintf
|
456 |
}
|
457 |
if ( $paged < $pages - 1 ) {
|
458 |
-
$html .= sprintf
|
459 |
}
|
460 |
|
461 |
$html .= "</div>\n";
|
462 |
}
|
463 |
|
464 |
-
echo apply_filters
|
465 |
}
|
466 |
}
|
467 |
|
468 |
-
if ( !
|
469 |
/**
|
470 |
* Retrieve all registered sidebars
|
471 |
*
|
472 |
* @return array
|
473 |
* @since 2.0.0
|
474 |
*/
|
475 |
-
function yit_registered_sidebars
|
476 |
global $wp_registered_sidebars;
|
477 |
|
478 |
-
$return = array
|
479 |
|
480 |
if ( empty( $wp_registered_sidebars ) ) {
|
481 |
-
$return = array
|
482 |
}
|
483 |
|
484 |
-
foreach ( ( array )$wp_registered_sidebars as $the_ ) {
|
485 |
$return[ $the_[ 'name' ] ] = $the_[ 'name' ];
|
486 |
}
|
487 |
|
488 |
-
ksort
|
489 |
|
490 |
return $return;
|
491 |
}
|
492 |
}
|
493 |
|
494 |
-
if ( !
|
495 |
/**
|
496 |
* Retrieve a layout option
|
497 |
*
|
@@ -503,18 +506,18 @@ if ( ! function_exists ( 'yit_layout_option' ) ) {
|
|
503 |
* @return array
|
504 |
* @since 2.0.0
|
505 |
*/
|
506 |
-
function yit_layout_option
|
507 |
|
508 |
$option = '';
|
509 |
|
510 |
-
if ( defined
|
511 |
-
$option = YIT_Layout_Panel
|
512 |
} else {
|
513 |
-
if (
|
514 |
global $post;
|
515 |
$id = $post->ID;
|
516 |
} elseif ( $id != 'all' ) {
|
517 |
-
$option = get_post_meta
|
518 |
}
|
519 |
}
|
520 |
|
@@ -522,13 +525,13 @@ if ( ! function_exists ( 'yit_layout_option' ) ) {
|
|
522 |
}
|
523 |
}
|
524 |
|
525 |
-
if ( !
|
526 |
/**
|
527 |
* Retrieve the current complete url
|
528 |
*
|
529 |
* @since 1.0
|
530 |
*/
|
531 |
-
function yit_curPageURL
|
532 |
$pageURL = 'http';
|
533 |
if ( isset( $_SERVER[ "HTTPS" ] ) AND $_SERVER[ "HTTPS" ] == "on" ) {
|
534 |
$pageURL .= "s";
|
@@ -546,7 +549,7 @@ if ( ! function_exists ( 'yit_curPageURL' ) ) {
|
|
546 |
}
|
547 |
}
|
548 |
|
549 |
-
if ( !
|
550 |
/**
|
551 |
*
|
552 |
* Retrieve the escluded categories, set on Theme Options
|
@@ -558,46 +561,46 @@ if ( ! function_exists ( 'yit_get_excluded_categories' ) ) {
|
|
558 |
* @since 2.0.0
|
559 |
*/
|
560 |
|
561 |
-
function yit_get_excluded_categories
|
562 |
|
563 |
global $post;
|
564 |
|
565 |
-
if ( !
|
566 |
return;
|
567 |
}
|
568 |
|
569 |
-
$cf_cats = get_post_meta
|
570 |
|
571 |
-
if ( !
|
572 |
return $cf_cats;
|
573 |
}
|
574 |
|
575 |
-
$cats = function_exists
|
576 |
|
577 |
|
578 |
-
if ( !
|
579 |
return;
|
580 |
}
|
581 |
|
582 |
-
$cats = array_map
|
583 |
|
584 |
$i = 0;
|
585 |
$query = '';
|
586 |
foreach ( $cats as $cat ) {
|
587 |
$query .= ",-$cat";
|
588 |
|
589 |
-
$i
|
590 |
}
|
591 |
|
592 |
-
ltrim
|
593 |
|
594 |
return $query;
|
595 |
}
|
596 |
}
|
597 |
|
598 |
|
599 |
-
if ( !
|
600 |
-
add_filter
|
601 |
|
602 |
/**
|
603 |
* Check the framework core version
|
@@ -608,14 +611,14 @@ if ( ! function_exists ( 'yit_add_extra_theme_headers' ) ) {
|
|
608 |
* @since 2.0.0
|
609 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
610 |
*/
|
611 |
-
function yit_add_extra_theme_headers
|
612 |
$headers[] = 'Core Framework Version';
|
613 |
|
614 |
return $headers;
|
615 |
}
|
616 |
}
|
617 |
|
618 |
-
if ( !
|
619 |
/**
|
620 |
* Check the framework core version
|
621 |
*
|
@@ -623,16 +626,16 @@ if ( ! function_exists ( 'yit_check_plugin_support' ) ) {
|
|
623 |
* @since 2.0.0
|
624 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
625 |
*/
|
626 |
-
function yit_check_plugin_support
|
627 |
|
628 |
-
$headers[ 'core' ] = wp_get_theme
|
629 |
-
$headers[ 'author' ] = wp_get_theme
|
630 |
|
631 |
-
if (
|
632 |
$headers[ 'core' ] = YIT_CORE_VERSION;
|
633 |
}
|
634 |
|
635 |
-
if ( ( !
|
636 |
return true;
|
637 |
} else {
|
638 |
return false;
|
@@ -640,7 +643,7 @@ if ( ! function_exists ( 'yit_check_plugin_support' ) ) {
|
|
640 |
}
|
641 |
}
|
642 |
|
643 |
-
if ( !
|
644 |
/**
|
645 |
* Retrieve IE version.
|
646 |
*
|
@@ -650,28 +653,26 @@ if ( ! function_exists ( 'yit_ie_version' ) ) {
|
|
650 |
*/
|
651 |
function yit_ie_version() {
|
652 |
|
653 |
-
if ( !
|
654 |
-
return -
|
655 |
}
|
656 |
-
preg_match( '/MSIE ([0-9]+\.[0-9])/', $_SERVER['HTTP_USER_AGENT'], $reg );
|
657 |
|
658 |
-
if ( !
|
659 |
{
|
660 |
-
preg_match( '/rv:([0-9]+\.[0-9])/', $_SERVER['HTTP_USER_AGENT'], $reg );
|
661 |
-
if ( !
|
662 |
-
return -
|
663 |
-
}
|
664 |
-
|
665 |
-
return floatval( $reg[1] );
|
666 |
}
|
667 |
-
}
|
668 |
-
|
669 |
-
return floatval( $reg[1] );
|
670 |
}
|
671 |
}
|
672 |
}
|
673 |
|
674 |
-
if ( !
|
675 |
/**
|
676 |
* Check if something exists. If yes, add a -N to the value where N is a number.
|
677 |
*
|
@@ -683,29 +684,29 @@ if ( ! function_exists ( 'yit_avoid_duplicate' ) ) {
|
|
683 |
* @since 2.0.0
|
684 |
* @author Antonino Scarf� <antonino.scarfi@yithemes.com>
|
685 |
*/
|
686 |
-
function yit_avoid_duplicate
|
687 |
-
$match = array
|
688 |
|
689 |
-
if ( !
|
690 |
return $value;
|
691 |
}
|
692 |
|
693 |
-
if ( ( $check == 'value' && !
|
694 |
return $value;
|
695 |
} else {
|
696 |
-
if ( !
|
697 |
$i = 2;
|
698 |
} else {
|
699 |
-
$i = intval
|
700 |
$value = $match[ 1 ];
|
701 |
}
|
702 |
|
703 |
-
return yit_avoid_duplicate
|
704 |
}
|
705 |
}
|
706 |
}
|
707 |
|
708 |
-
if ( !
|
709 |
/**
|
710 |
* The chars used in yit_decode_title() and yit_encode_title()
|
711 |
*
|
@@ -719,17 +720,17 @@ if ( ! function_exists ( 'yit_title_special_characters' ) ) {
|
|
719 |
*
|
720 |
* @since 1.0
|
721 |
*/
|
722 |
-
function yit_title_special_characters
|
723 |
-
return array_merge
|
724 |
'/[=\[](.*?)[=\]]/' => '<span class="title-highlight">$1</span>',
|
725 |
'/\|/' => '<br />',
|
726 |
) );
|
727 |
}
|
728 |
|
729 |
-
add_filter
|
730 |
}
|
731 |
|
732 |
-
if ( !
|
733 |
/**
|
734 |
* Change some special characters to put easily html into a string
|
735 |
*
|
@@ -743,14 +744,14 @@ if ( ! function_exists ( 'yit_decode_title' ) ) {
|
|
743 |
*
|
744 |
* @since 1.0
|
745 |
*/
|
746 |
-
function yit_decode_title
|
747 |
-
$replaces = apply_filters
|
748 |
|
749 |
-
return preg_replace
|
750 |
}
|
751 |
}
|
752 |
|
753 |
-
if ( !
|
754 |
/**
|
755 |
* Change some special characters to put easily html into a string
|
756 |
*
|
@@ -764,14 +765,14 @@ if ( ! function_exists ( 'yit_encode_title' ) ) {
|
|
764 |
*
|
765 |
* @since 1.0
|
766 |
*/
|
767 |
-
function yit_encode_title
|
768 |
-
$replaces = apply_filters
|
769 |
|
770 |
-
return preg_replace
|
771 |
}
|
772 |
}
|
773 |
|
774 |
-
if ( !
|
775 |
/**
|
776 |
* Change some special characters to put easily html into a string
|
777 |
*
|
@@ -785,14 +786,14 @@ if ( ! function_exists ( 'yit_remove_chars_title' ) ) {
|
|
785 |
*
|
786 |
* @since 1.0
|
787 |
*/
|
788 |
-
function yit_remove_chars_title
|
789 |
-
$replaces = apply_filters
|
790 |
|
791 |
-
return preg_replace
|
792 |
}
|
793 |
}
|
794 |
|
795 |
-
if ( !
|
796 |
/**
|
797 |
* Detect if there is a shop plugin installed
|
798 |
*
|
@@ -800,9 +801,9 @@ if ( ! function_exists ( 'is_shop_installed' ) ) {
|
|
800 |
* @since 2.0.0
|
801 |
* @author Francesco Grasso <francesco.grasso@yithemes.com
|
802 |
*/
|
803 |
-
function is_shop_installed
|
804 |
global $woocommerce;
|
805 |
-
if ( isset( $woocommerce ) || defined
|
806 |
return true;
|
807 |
} else {
|
808 |
return false;
|
@@ -810,27 +811,27 @@ if ( ! function_exists ( 'is_shop_installed' ) ) {
|
|
810 |
}
|
811 |
}
|
812 |
|
813 |
-
if ( !
|
814 |
/**
|
815 |
* Load .min.js file if WP_Debug is not defined
|
816 |
*
|
817 |
-
* @param $filename The file name
|
818 |
*
|
819 |
* @return string The file path
|
820 |
* @since 2.0.0
|
821 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
822 |
*/
|
823 |
-
function yit_load_js_file
|
824 |
|
825 |
-
if ( !
|
826 |
-
$filename = str_replace
|
827 |
}
|
828 |
|
829 |
return $filename;
|
830 |
}
|
831 |
}
|
832 |
|
833 |
-
if ( !
|
834 |
/**
|
835 |
* Register a string in wpml trnslation
|
836 |
*
|
@@ -841,13 +842,13 @@ if ( ! function_exists ( 'yit_wpml_register_string' ) ) {
|
|
841 |
* @since 2.0.0
|
842 |
* @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
|
843 |
*/
|
844 |
-
function yit_wpml_register_string
|
845 |
// wpml string translation
|
846 |
-
do_action
|
847 |
}
|
848 |
}
|
849 |
|
850 |
-
if ( !
|
851 |
/**
|
852 |
* Get a string translation
|
853 |
*
|
@@ -859,13 +860,13 @@ if ( ! function_exists ( 'yit_wpml_string_translate' ) ) {
|
|
859 |
* @since 2.0.0
|
860 |
* @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
|
861 |
*/
|
862 |
-
function yit_wpml_string_translate
|
863 |
-
return apply_filters
|
864 |
}
|
865 |
|
866 |
}
|
867 |
|
868 |
-
if ( !
|
869 |
/**
|
870 |
* Get id of post translation in current language
|
871 |
*
|
@@ -878,11 +879,11 @@ if ( ! function_exists ( 'yit_wpml_object_id' ) ) {
|
|
878 |
* @since 2.0.0
|
879 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
880 |
*/
|
881 |
-
function yit_wpml_object_id
|
882 |
-
if ( function_exists
|
883 |
return wpml_object_id_filter( $element_id, $element_type, $return_original_if_missing, $ulanguage_code );
|
884 |
-
} elseif ( function_exists
|
885 |
-
return icl_object_id
|
886 |
} else {
|
887 |
return $element_id;
|
888 |
}
|
@@ -891,7 +892,7 @@ if ( ! function_exists ( 'yit_wpml_object_id' ) ) {
|
|
891 |
}
|
892 |
|
893 |
|
894 |
-
if ( !
|
895 |
/**
|
896 |
* Format the price with a currency symbol.
|
897 |
*
|
@@ -900,27 +901,175 @@ if ( ! function_exists ( 'yith_get_formatted_price' ) ) {
|
|
900 |
*
|
901 |
* @return string
|
902 |
*/
|
903 |
-
function yith_get_formatted_price
|
904 |
-
extract
|
905 |
'ex_tax_label' => false,
|
906 |
'currency' => '',
|
907 |
-
'decimal_separator' => wc_get_price_decimal_separator
|
908 |
-
'thousand_separator' => wc_get_price_thousand_separator
|
909 |
-
'decimals' => wc_get_price_decimals
|
910 |
-
'price_format' => get_woocommerce_price_format
|
911 |
) ) ) );
|
912 |
|
913 |
$negative = $price < 0;
|
914 |
-
$price = apply_filters
|
915 |
-
$price = apply_filters
|
916 |
|
917 |
-
if ( apply_filters
|
918 |
-
$price = wc_trim_zeros
|
919 |
}
|
920 |
|
921 |
-
$formatted_price = ( $negative ? '-' : '' ) . sprintf
|
922 |
$return = $formatted_price;
|
923 |
|
924 |
-
return apply_filters
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
925 |
}
|
926 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
*/
|
10 |
|
11 |
+
if ( !defined( 'ABSPATH' ) ) {
|
12 |
exit;
|
13 |
} // Exit if accessed directly
|
14 |
|
15 |
+
if ( !function_exists( 'yit_plugin_locate_template' ) ) {
|
16 |
/**
|
17 |
* Locate the templates and return the path of the file found
|
18 |
*
|
23 |
* @return string
|
24 |
* @since 2.0.0
|
25 |
*/
|
26 |
+
function yit_plugin_locate_template( $plugin_basename, $path, $var = null ) {
|
27 |
|
28 |
$template_path = '/theme/templates/' . $path;
|
29 |
|
30 |
+
$located = locate_template( array(
|
31 |
+
$template_path,
|
32 |
+
) );
|
33 |
|
34 |
+
if ( !$located ) {
|
35 |
$located = $plugin_basename . '/templates/' . $path;
|
36 |
}
|
37 |
|
40 |
|
41 |
}
|
42 |
|
43 |
+
if ( !function_exists( 'yit_plugin_get_template' ) ) {
|
44 |
/**
|
45 |
* Retrieve a template file.
|
46 |
*
|
52 |
* @return string
|
53 |
* @since 2.0.0
|
54 |
*/
|
55 |
+
function yit_plugin_get_template( $plugin_basename, $path, $var = null, $return = false ) {
|
56 |
|
57 |
+
$located = yit_plugin_locate_template( $plugin_basename, $path, $var );
|
58 |
|
59 |
+
if ( $var && is_array( $var ) ) {
|
60 |
+
extract( $var );
|
61 |
}
|
62 |
|
63 |
if ( $return ) {
|
64 |
+
ob_start();
|
65 |
}
|
66 |
|
67 |
// include file located
|
68 |
+
if ( file_exists( $located ) ) {
|
69 |
+
include( $located );
|
70 |
}
|
71 |
|
72 |
if ( $return ) {
|
73 |
+
return ob_get_clean();
|
74 |
}
|
75 |
}
|
76 |
}
|
77 |
|
78 |
+
if ( !function_exists( 'yit_plugin_content' ) ) {
|
79 |
/**
|
80 |
* Return post content with read more link (if needed)
|
81 |
*
|
88 |
* @return string
|
89 |
* @since 2.0.0
|
90 |
*/
|
91 |
+
function yit_plugin_content( $what = 'content', $limit = 25, $more_text = '', $split = '[...]', $in_paragraph = 'true' ) {
|
92 |
if ( $what == 'content' ) {
|
93 |
+
$content = get_the_content( $more_text );
|
94 |
} else {
|
95 |
if ( $what == 'excerpt' ) {
|
96 |
+
$content = get_the_excerpt();
|
97 |
} else {
|
98 |
$content = $what;
|
99 |
}
|
101 |
|
102 |
if ( $limit == 0 ) {
|
103 |
if ( $what == 'excerpt' ) {
|
104 |
+
$content = apply_filters( 'the_excerpt', $content );
|
105 |
} else {
|
106 |
+
$content = preg_replace( '/<img[^>]+./', '', $content ); //remove images
|
107 |
+
$content = apply_filters( 'the_content', $content );
|
108 |
+
$content = str_replace( ']]>', ']]>', $content );
|
109 |
}
|
110 |
|
111 |
return $content;
|
112 |
}
|
113 |
|
114 |
// remove the tag more from the content
|
115 |
+
if ( preg_match( "/<(a)[^>]*class\s*=\s*(['\"])more-link\\2[^>]*>(.*?)<\/\\1>/", $content, $matches ) ) {
|
116 |
|
117 |
+
if ( strpos( $matches[ 0 ], '[button' ) ) {
|
118 |
+
$more_link = str_replace( 'href="#"', 'href="' . get_permalink() . '"', do_shortcode( $matches[ 3 ] ) );
|
119 |
} else {
|
120 |
$more_link = $matches[ 0 ];
|
121 |
}
|
122 |
|
123 |
+
$content = str_replace( $more_link, '', $content );
|
124 |
$split = '';
|
125 |
}
|
126 |
|
127 |
if ( empty( $content ) ) {
|
128 |
return;
|
129 |
}
|
130 |
+
$content = explode( ' ', $content );
|
131 |
|
132 |
+
if ( !empty( $more_text ) && !isset( $more_link ) ) {
|
133 |
//array_pop( $content );
|
134 |
+
$more_link = strpos( $more_text, '<a class="btn"' ) ? $more_text : '<a class="read-more' . apply_filters( 'yit_simple_read_more_classes', ' ' ) . '" href="' . get_permalink() . '">' . $more_text . '</a>';
|
135 |
$split = '';
|
136 |
+
} elseif ( !isset( $more_link ) ) {
|
137 |
$more_link = '';
|
138 |
}
|
139 |
|
140 |
// split
|
141 |
+
if ( count( $content ) >= $limit ) {
|
142 |
$split_content = '';
|
143 |
+
for ( $i = 0; $i < $limit; $i++ ) {
|
144 |
$split_content .= $content[ $i ] . ' ';
|
145 |
}
|
146 |
|
147 |
$content = $split_content . $split;
|
148 |
} else {
|
149 |
+
$content = implode( " ", $content );
|
150 |
}
|
151 |
|
152 |
// TAGS UNCLOSED
|
153 |
+
$tags = array();
|
154 |
// get all tags opened
|
155 |
+
preg_match_all( "/(<([\w]+)[^>]*>)/", $content, $tags_opened, PREG_SET_ORDER );
|
156 |
foreach ( $tags_opened as $tag ) {
|
157 |
$tags[] = $tag[ 2 ];
|
158 |
}
|
159 |
|
160 |
// get all tags closed and remove it from the tags opened.. the rest will be closed at the end of the content
|
161 |
+
preg_match_all( "/(<\/([\w]+)[^>]*>)/", $content, $tags_closed, PREG_SET_ORDER );
|
162 |
foreach ( $tags_closed as $tag ) {
|
163 |
+
unset( $tags[ array_search( $tag[ 2 ], $tags ) ] );
|
164 |
}
|
165 |
|
166 |
// close the tags
|
167 |
+
if ( !empty( $tags ) ) {
|
168 |
foreach ( $tags as $tag ) {
|
169 |
$content .= "</$tag>";
|
170 |
}
|
172 |
|
173 |
//$content = preg_replace( '/\[.+\]/', '', $content );
|
174 |
if ( $in_paragraph == true ): $content .= $more_link; endif;
|
175 |
+
$content = preg_replace( '/<img[^>]+./', '', $content ); //remove images
|
176 |
+
$content = apply_filters( 'the_content', $content );
|
177 |
+
$content = str_replace( ']]>', ']]>', $content ); // echo str_replace( array( '<', '>' ), array( '<', '>' ), $content );
|
178 |
if ( $in_paragraph == false ): $content .= $more_link; endif;
|
179 |
|
180 |
return $content;
|
181 |
}
|
182 |
}
|
183 |
|
184 |
+
if ( !function_exists( 'yit_plugin_string' ) ) {
|
185 |
/**
|
186 |
* Simple echo a string, with a before and after string, only if the main string is not empty.
|
187 |
*
|
188 |
* @param string $before What there is before the main string
|
189 |
* @param string $string The main string. If it is empty or null, the functions return null.
|
190 |
+
* @param string $after What there is after the main string
|
191 |
+
* @param bool $echo If echo or only return it
|
192 |
*
|
193 |
* @return string The complete string, if the main string is not empty or null
|
194 |
* @since 2.0.0
|
195 |
*/
|
196 |
+
function yit_plugin_string( $before = '', $string = '', $after = '', $echo = true ) {
|
197 |
$html = '';
|
198 |
|
199 |
+
if ( $string != '' AND !is_null( $string ) ) {
|
200 |
$html = $before . $string . $after;
|
201 |
}
|
202 |
|
208 |
}
|
209 |
}
|
210 |
|
211 |
+
if ( !function_exists( 'yit_plugin_decode_title' ) ) {
|
212 |
/**
|
213 |
* Change some special characters to put easily html into a string
|
214 |
*
|
222 |
*
|
223 |
* @since 1.0
|
224 |
*/
|
225 |
+
function yit_plugin_decode_title( $title ) {
|
226 |
+
$replaces = apply_filters( 'yit_title_special_characters', array() );
|
227 |
|
228 |
+
return preg_replace( array_keys( $replaces ), array_values( $replaces ), $title );
|
229 |
}
|
230 |
}
|
231 |
|
232 |
+
if ( !function_exists( 'yit_plugin_get_attachment_id' ) ) {
|
233 |
|
234 |
/**
|
235 |
* Return the ID of an attachment.
|
241 |
* @since 2.0.0
|
242 |
*/
|
243 |
|
244 |
+
function yit_plugin_get_attachment_id( $url ) {
|
245 |
|
246 |
+
$upload_dir = wp_upload_dir();
|
247 |
+
$dir = trailingslashit( $upload_dir[ 'baseurl' ] );
|
248 |
|
249 |
+
if ( false === strpos( $url, $dir ) ) {
|
250 |
return false;
|
251 |
}
|
252 |
|
253 |
+
$file = basename( $url );
|
254 |
|
255 |
+
$query = array(
|
256 |
'post_type' => 'attachment',
|
257 |
'fields' => 'ids',
|
258 |
+
'meta_query' => array(
|
259 |
+
array(
|
260 |
'value' => $file,
|
261 |
'compare' => 'LIKE',
|
262 |
),
|
264 |
);
|
265 |
|
266 |
$query[ 'meta_query' ][ 0 ][ 'key' ] = '_wp_attached_file';
|
267 |
+
$ids = get_posts( $query );
|
268 |
|
269 |
foreach ( $ids as $id ) {
|
270 |
+
$attachment_image = wp_get_attachment_image_src( $id, 'full' );
|
271 |
+
if ( $url == array_shift( $attachment_image ) || $url == str_replace( 'https://', 'http://', array_shift( $attachment_image ) ) ) {
|
272 |
return $id;
|
273 |
}
|
274 |
}
|
275 |
$query[ 'meta_query' ][ 0 ][ 'key' ] = '_wp_attachment_metadata';
|
276 |
+
$ids = get_posts( $query );
|
277 |
|
278 |
foreach ( $ids as $id ) {
|
279 |
|
280 |
+
$meta = wp_get_attachment_metadata( $id );
|
281 |
+
if ( !isset( $meta[ 'sizes' ] ) ) {
|
282 |
continue;
|
283 |
}
|
284 |
|
285 |
+
foreach ( (array) $meta[ 'sizes' ] as $size => $values ) {
|
286 |
+
if ( $values[ 'file' ] == $file && $url == str_replace( 'https://', 'http://', array_shift( wp_get_attachment_image_src( $id, $size ) ) ) ) {
|
287 |
|
288 |
return $id;
|
289 |
}
|
294 |
}
|
295 |
}
|
296 |
|
297 |
+
if ( !function_exists( 'yit_enqueue_script' ) ) {
|
298 |
/**
|
299 |
* Enqueues script.
|
300 |
*
|
304 |
* @author Simone D'Amico <simone.damico@yithemes.com>
|
305 |
* @see yit_register_script() For parameter information.
|
306 |
*/
|
307 |
+
function yit_enqueue_script( $handle, $src, $deps = array(), $ver = false, $in_footer = true ) {
|
308 |
|
309 |
+
if ( function_exists( 'YIT_Asset' ) && !is_admin() ) {
|
310 |
$enqueue = true;
|
311 |
+
YIT_Asset()->set( 'script', $handle, compact( 'src', 'deps', 'ver', 'in_footer', 'enqueue' ) );
|
312 |
} else {
|
313 |
+
wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer );
|
314 |
}
|
315 |
}
|
316 |
}
|
317 |
|
318 |
+
if ( !function_exists( 'yit_enqueue_style' ) ) {
|
319 |
/**
|
320 |
* Enqueues style.
|
321 |
*
|
325 |
* @author Simone D'Amico <simone.damico@yithemes.com>
|
326 |
* @see yit_register_style() For parameter information.
|
327 |
*/
|
328 |
+
function yit_enqueue_style( $handle, $src, $deps = array(), $ver = false, $media = 'all' ) {
|
329 |
|
330 |
+
if ( function_exists( 'YIT_Asset' ) ) {
|
331 |
$enqueue = true;
|
332 |
+
$who = YIT_Asset()->get_stylesheet_handle( get_stylesheet_uri(), 'style' );
|
333 |
$where = 'before';
|
334 |
|
335 |
if ( false == $who ) {
|
336 |
$who = '';
|
337 |
}
|
338 |
|
339 |
+
YIT_Asset()->set( 'style', $handle, compact( 'src', 'deps', 'ver', 'media', 'enqueue' ), $where, $who );
|
340 |
} else {
|
341 |
+
wp_enqueue_style( $handle, $src, $deps, $ver, $media );
|
342 |
}
|
343 |
}
|
344 |
}
|
345 |
|
346 |
+
if ( !function_exists( 'yit_get_post_meta' ) ) {
|
347 |
/**
|
348 |
* Retrieve the value of a metabox.
|
349 |
*
|
350 |
* This function retrieve the value of a metabox attached to a post. It return either a single value or an array.
|
351 |
*
|
352 |
+
* @param int $id Post ID.
|
353 |
* @param string $meta The meta key to retrieve.
|
354 |
*
|
355 |
* @return mixed Single value or array
|
356 |
* @since 2.0.0
|
357 |
*/
|
358 |
+
function yit_get_post_meta( $id, $meta ) {
|
359 |
+
if ( !strpos( $meta, '[' ) ) {
|
360 |
+
return get_post_meta( $id, $meta, true );
|
361 |
}
|
362 |
|
363 |
+
$sub_meta = explode( '[', $meta );
|
364 |
|
365 |
+
$meta = get_post_meta( $id, current( $sub_meta ), true );
|
366 |
+
for ( $i = 1; $i < count( $sub_meta ); $i++ ) {
|
367 |
+
$current_submeta = rtrim( $sub_meta[ $i ], ']' );
|
368 |
+
if ( !isset( $meta[ $current_submeta ] ) )
|
369 |
+
return false;
|
370 |
+
$meta = $meta[ $current_submeta ];
|
371 |
}
|
372 |
|
373 |
return $meta;
|
374 |
}
|
375 |
}
|
376 |
|
377 |
+
if ( !function_exists( 'yit_string' ) ) {
|
378 |
/**
|
379 |
* Simple echo a string, with a before and after string, only if the main string is not empty.
|
380 |
*
|
381 |
* @param string $before What there is before the main string
|
382 |
* @param string $string The main string. If it is empty or null, the functions return null.
|
383 |
+
* @param string $after What there is after the main string
|
384 |
+
* @param bool $echo If echo or only return it
|
385 |
*
|
386 |
* @return string The complete string, if the main string is not empty or null
|
387 |
* @since 2.0.0
|
388 |
*/
|
389 |
+
function yit_string( $before = '', $string = '', $after = '', $echo = true ) {
|
390 |
$html = '';
|
391 |
|
392 |
+
if ( $string != '' AND !is_null( $string ) ) {
|
393 |
$html = $before . $string . $after;
|
394 |
}
|
395 |
|
402 |
}
|
403 |
|
404 |
|
405 |
+
if ( !function_exists( 'yit_pagination' ) ) {
|
406 |
/**
|
407 |
* Print pagination
|
408 |
*
|
412 |
* @return string
|
413 |
* @since 2.0.0
|
414 |
*/
|
415 |
+
function yit_pagination( $pages = '', $range = 10 ) {
|
416 |
$showitems = ( $range * 2 ) + 1;
|
417 |
|
418 |
+
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : false;
|
419 |
if ( $paged === false ) {
|
420 |
+
$paged = ( get_query_var( 'page' ) ) ? get_query_var( 'page' ) : false;
|
421 |
}
|
422 |
if ( $paged === false ) {
|
423 |
$paged = 1;
|
433 |
$pages = $wp_query->max_num_pages;
|
434 |
}
|
435 |
|
436 |
+
if ( !$pages ) {
|
437 |
$pages = 1;
|
438 |
}
|
439 |
}
|
441 |
if ( 1 != $pages ) {
|
442 |
$html .= "<div class='general-pagination clearfix'>";
|
443 |
if ( $paged > 2 ) {
|
444 |
+
$html .= sprintf( '<a class="%s" href="%s">«</a>', 'yit_pagination_first', get_pagenum_link( 1 ) );
|
445 |
}
|
446 |
if ( $paged > 1 ) {
|
447 |
+
$html .= sprintf( '<a class="%s" href="%s">‹</a>', 'yit_pagination_previous', get_pagenum_link( $paged - 1 ) );
|
448 |
}
|
449 |
|
450 |
+
for ( $i = 1; $i <= $pages; $i++ ) {
|
451 |
+
if ( 1 != $pages && ( !( $i >= $paged + $range + 1 || $i <= $paged - $range - 1 ) || $pages <= $showitems ) ) {
|
452 |
$class = ( $paged == $i ) ? " class='selected'" : '';
|
453 |
+
$html .= "<a href='" . get_pagenum_link( $i ) . "'$class >$i</a>";
|
454 |
}
|
455 |
}
|
456 |
|
457 |
if ( $paged < $pages ) {
|
458 |
+
$html .= sprintf( '<a class="%s" href="%s">›</a>', 'yit_pagination_next', get_pagenum_link( $paged + 1 ) );
|
459 |
}
|
460 |
if ( $paged < $pages - 1 ) {
|
461 |
+
$html .= sprintf( '<a class="%s" href="%s">»</a>', 'yit_pagination_last', get_pagenum_link( $pages ) );
|
462 |
}
|
463 |
|
464 |
$html .= "</div>\n";
|
465 |
}
|
466 |
|
467 |
+
echo apply_filters( 'yit_pagination_html', $html );
|
468 |
}
|
469 |
}
|
470 |
|
471 |
+
if ( !function_exists( 'yit_registered_sidebars' ) ) {
|
472 |
/**
|
473 |
* Retrieve all registered sidebars
|
474 |
*
|
475 |
* @return array
|
476 |
* @since 2.0.0
|
477 |
*/
|
478 |
+
function yit_registered_sidebars() {
|
479 |
global $wp_registered_sidebars;
|
480 |
|
481 |
+
$return = array();
|
482 |
|
483 |
if ( empty( $wp_registered_sidebars ) ) {
|
484 |
+
$return = array( '' => '' );
|
485 |
}
|
486 |
|
487 |
+
foreach ( ( array ) $wp_registered_sidebars as $the_ ) {
|
488 |
$return[ $the_[ 'name' ] ] = $the_[ 'name' ];
|
489 |
}
|
490 |
|
491 |
+
ksort( $return );
|
492 |
|
493 |
return $return;
|
494 |
}
|
495 |
}
|
496 |
|
497 |
+
if ( !function_exists( 'yit_layout_option' ) ) {
|
498 |
/**
|
499 |
* Retrieve a layout option
|
500 |
*
|
506 |
* @return array
|
507 |
* @since 2.0.0
|
508 |
*/
|
509 |
+
function yit_layout_option( $key, $id = false, $type = "post", $model = "post_type" ) {
|
510 |
|
511 |
$option = '';
|
512 |
|
513 |
+
if ( defined( 'YIT' ) ) {
|
514 |
+
$option = YIT_Layout_Panel()->get_option( $key, $id, $type, $model );
|
515 |
} else {
|
516 |
+
if ( !$id && ( is_single() || is_page() ) ) {
|
517 |
global $post;
|
518 |
$id = $post->ID;
|
519 |
} elseif ( $id != 'all' ) {
|
520 |
+
$option = get_post_meta( $id, $key );
|
521 |
}
|
522 |
}
|
523 |
|
525 |
}
|
526 |
}
|
527 |
|
528 |
+
if ( !function_exists( 'yit_curPageURL' ) ) {
|
529 |
/**
|
530 |
* Retrieve the current complete url
|
531 |
*
|
532 |
* @since 1.0
|
533 |
*/
|
534 |
+
function yit_curPageURL() {
|
535 |
$pageURL = 'http';
|
536 |
if ( isset( $_SERVER[ "HTTPS" ] ) AND $_SERVER[ "HTTPS" ] == "on" ) {
|
537 |
$pageURL .= "s";
|
549 |
}
|
550 |
}
|
551 |
|
552 |
+
if ( !function_exists( 'yit_get_excluded_categories' ) ) {
|
553 |
/**
|
554 |
*
|
555 |
* Retrieve the escluded categories, set on Theme Options
|
561 |
* @since 2.0.0
|
562 |
*/
|
563 |
|
564 |
+
function yit_get_excluded_categories( $k = 1 ) {
|
565 |
|
566 |
global $post;
|
567 |
|
568 |
+
if ( !isset( $post->ID ) ) {
|
569 |
return;
|
570 |
}
|
571 |
|
572 |
+
$cf_cats = get_post_meta( $post->ID, 'blog-cats', true );
|
573 |
|
574 |
+
if ( !empty( $cf_cats ) ) {
|
575 |
return $cf_cats;
|
576 |
}
|
577 |
|
578 |
+
$cats = function_exists( 'yit_get_option' ) ? yit_get_option( 'blog-excluded-cats' ) : '';
|
579 |
|
580 |
|
581 |
+
if ( !is_array( $cats ) || empty( $cats ) || !isset( $cats[ $k ] ) ) {
|
582 |
return;
|
583 |
}
|
584 |
|
585 |
+
$cats = array_map( 'trim', $cats[ $k ] );
|
586 |
|
587 |
$i = 0;
|
588 |
$query = '';
|
589 |
foreach ( $cats as $cat ) {
|
590 |
$query .= ",-$cat";
|
591 |
|
592 |
+
$i++;
|
593 |
}
|
594 |
|
595 |
+
ltrim( ',', $query );
|
596 |
|
597 |
return $query;
|
598 |
}
|
599 |
}
|
600 |
|
601 |
|
602 |
+
if ( !function_exists( 'yit_add_extra_theme_headers' ) ) {
|
603 |
+
add_filter( 'extra_theme_headers', 'yit_add_extra_theme_headers' );
|
604 |
|
605 |
/**
|
606 |
* Check the framework core version
|
611 |
* @since 2.0.0
|
612 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
613 |
*/
|
614 |
+
function yit_add_extra_theme_headers( $headers ) {
|
615 |
$headers[] = 'Core Framework Version';
|
616 |
|
617 |
return $headers;
|
618 |
}
|
619 |
}
|
620 |
|
621 |
+
if ( !function_exists( 'yit_check_plugin_support' ) ) {
|
622 |
/**
|
623 |
* Check the framework core version
|
624 |
*
|
626 |
* @since 2.0.0
|
627 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
628 |
*/
|
629 |
+
function yit_check_plugin_support() {
|
630 |
|
631 |
+
$headers[ 'core' ] = wp_get_theme()->get( 'Core Framework Version' );
|
632 |
+
$headers[ 'author' ] = wp_get_theme()->get( 'Author' );
|
633 |
|
634 |
+
if ( !$headers[ 'core' ] && defined( 'YIT_CORE_VERSION' ) ) {
|
635 |
$headers[ 'core' ] = YIT_CORE_VERSION;
|
636 |
}
|
637 |
|
638 |
+
if ( ( !empty( $headers[ 'core' ] ) && version_compare( $headers[ 'core' ], '2.0.0', '<=' ) ) || $headers[ 'author' ] != 'Your Inspiration Themes' ) {
|
639 |
return true;
|
640 |
} else {
|
641 |
return false;
|
643 |
}
|
644 |
}
|
645 |
|
646 |
+
if ( !function_exists( 'yit_ie_version' ) ) {
|
647 |
/**
|
648 |
* Retrieve IE version.
|
649 |
*
|
653 |
*/
|
654 |
function yit_ie_version() {
|
655 |
|
656 |
+
if ( !isset( $_SERVER[ 'HTTP_USER_AGENT' ] ) ) {
|
657 |
+
return -1;
|
658 |
}
|
659 |
+
preg_match( '/MSIE ([0-9]+\.[0-9])/', $_SERVER[ 'HTTP_USER_AGENT' ], $reg );
|
660 |
|
661 |
+
if ( !isset( $reg[ 1 ] ) ) // IE 11 FIX
|
662 |
{
|
663 |
+
preg_match( '/rv:([0-9]+\.[0-9])/', $_SERVER[ 'HTTP_USER_AGENT' ], $reg );
|
664 |
+
if ( !isset( $reg[ 1 ] ) ) {
|
665 |
+
return -1;
|
666 |
+
} else {
|
667 |
+
return floatval( $reg[ 1 ] );
|
|
|
668 |
}
|
669 |
+
} else {
|
670 |
+
return floatval( $reg[ 1 ] );
|
|
|
671 |
}
|
672 |
}
|
673 |
}
|
674 |
|
675 |
+
if ( !function_exists( 'yit_avoid_duplicate' ) ) {
|
676 |
/**
|
677 |
* Check if something exists. If yes, add a -N to the value where N is a number.
|
678 |
*
|
684 |
* @since 2.0.0
|
685 |
* @author Antonino Scarf� <antonino.scarfi@yithemes.com>
|
686 |
*/
|
687 |
+
function yit_avoid_duplicate( $value, $array, $check = 'value' ) {
|
688 |
+
$match = array();
|
689 |
|
690 |
+
if ( !is_array( $array ) ) {
|
691 |
return $value;
|
692 |
}
|
693 |
|
694 |
+
if ( ( $check == 'value' && !in_array( $value, $array ) ) || ( $check == 'key' && !isset( $array[ $value ] ) ) ) {
|
695 |
return $value;
|
696 |
} else {
|
697 |
+
if ( !preg_match( '/([a-z]+)-([0-9]+)/', $value, $match ) ) {
|
698 |
$i = 2;
|
699 |
} else {
|
700 |
+
$i = intval( $match[ 2 ] ) + 1;
|
701 |
$value = $match[ 1 ];
|
702 |
}
|
703 |
|
704 |
+
return yit_avoid_duplicate( $value . '-' . $i, $array, $check );
|
705 |
}
|
706 |
}
|
707 |
}
|
708 |
|
709 |
+
if ( !function_exists( 'yit_title_special_characters' ) ) {
|
710 |
/**
|
711 |
* The chars used in yit_decode_title() and yit_encode_title()
|
712 |
*
|
720 |
*
|
721 |
* @since 1.0
|
722 |
*/
|
723 |
+
function yit_title_special_characters( $chars ) {
|
724 |
+
return array_merge( $chars, array(
|
725 |
'/[=\[](.*?)[=\]]/' => '<span class="title-highlight">$1</span>',
|
726 |
'/\|/' => '<br />',
|
727 |
) );
|
728 |
}
|
729 |
|
730 |
+
add_filter( 'yit_title_special_characters', 'yit_title_special_characters' );
|
731 |
}
|
732 |
|
733 |
+
if ( !function_exists( 'yit_decode_title' ) ) {
|
734 |
/**
|
735 |
* Change some special characters to put easily html into a string
|
736 |
*
|
744 |
*
|
745 |
* @since 1.0
|
746 |
*/
|
747 |
+
function yit_decode_title( $title ) {
|
748 |
+
$replaces = apply_filters( 'yit_title_special_characters', array() );
|
749 |
|
750 |
+
return preg_replace( array_keys( $replaces ), array_values( $replaces ), $title );
|
751 |
}
|
752 |
}
|
753 |
|
754 |
+
if ( !function_exists( 'yit_encode_title' ) ) {
|
755 |
/**
|
756 |
* Change some special characters to put easily html into a string
|
757 |
*
|
765 |
*
|
766 |
* @since 1.0
|
767 |
*/
|
768 |
+
function yit_encode_title( $title ) {
|
769 |
+
$replaces = apply_filters( 'yit_title_special_characters', array() );
|
770 |
|
771 |
+
return preg_replace( array_values( $replaces ), array_keys( $replaces ), $title );
|
772 |
}
|
773 |
}
|
774 |
|
775 |
+
if ( !function_exists( 'yit_remove_chars_title' ) ) {
|
776 |
/**
|
777 |
* Change some special characters to put easily html into a string
|
778 |
*
|
786 |
*
|
787 |
* @since 1.0
|
788 |
*/
|
789 |
+
function yit_remove_chars_title( $title ) {
|
790 |
+
$replaces = apply_filters( 'yit_title_special_characters', array() );
|
791 |
|
792 |
+
return preg_replace( array_keys( $replaces ), '$1', $title );
|
793 |
}
|
794 |
}
|
795 |
|
796 |
+
if ( !function_exists( 'is_shop_installed' ) ) {
|
797 |
/**
|
798 |
* Detect if there is a shop plugin installed
|
799 |
*
|
801 |
* @since 2.0.0
|
802 |
* @author Francesco Grasso <francesco.grasso@yithemes.com
|
803 |
*/
|
804 |
+
function is_shop_installed() {
|
805 |
global $woocommerce;
|
806 |
+
if ( isset( $woocommerce ) || defined( 'JIGOSHOP_VERSION' ) ) {
|
807 |
return true;
|
808 |
} else {
|
809 |
return false;
|
811 |
}
|
812 |
}
|
813 |
|
814 |
+
if ( !function_exists( 'yit_load_js_file' ) ) {
|
815 |
/**
|
816 |
* Load .min.js file if WP_Debug is not defined
|
817 |
*
|
818 |
+
* @param string $filename The file name
|
819 |
*
|
820 |
* @return string The file path
|
821 |
* @since 2.0.0
|
822 |
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
823 |
*/
|
824 |
+
function yit_load_js_file( $filename ) {
|
825 |
|
826 |
+
if ( !( ( defined( 'WP_DEBUG' ) && WP_DEBUG ) || ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) || isset( $_GET[ 'yith_script_debug' ] ) ) ) {
|
827 |
+
$filename = str_replace( '.js', '.min.js', $filename );
|
828 |
}
|
829 |
|
830 |
return $filename;
|
831 |
}
|
832 |
}
|
833 |
|
834 |
+
if ( !function_exists( 'yit_wpml_register_string' ) ) {
|
835 |
/**
|
836 |
* Register a string in wpml trnslation
|
837 |
*
|
842 |
* @since 2.0.0
|
843 |
* @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
|
844 |
*/
|
845 |
+
function yit_wpml_register_string( $contenxt, $name, $value ) {
|
846 |
// wpml string translation
|
847 |
+
do_action( 'wpml_register_single_string', $contenxt, $name, $value );
|
848 |
}
|
849 |
}
|
850 |
|
851 |
+
if ( !function_exists( 'yit_wpml_string_translate' ) ) {
|
852 |
/**
|
853 |
* Get a string translation
|
854 |
*
|
860 |
* @since 2.0.0
|
861 |
* @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
|
862 |
*/
|
863 |
+
function yit_wpml_string_translate( $contenxt, $name, $default_value ) {
|
864 |
+
return apply_filters( 'wpml_translate_single_string', $default_value, $contenxt, $name );
|
865 |
}
|
866 |
|
867 |
}
|
868 |
|
869 |
+
if ( !function_exists( 'yit_wpml_object_id' ) ) {
|
870 |
/**
|
871 |
* Get id of post translation in current language
|
872 |
*
|
879 |
* @since 2.0.0
|
880 |
* @author Antonio La Rocca <antonio.larocca@yithemes.com>
|
881 |
*/
|
882 |
+
function yit_wpml_object_id( $element_id, $element_type = 'post', $return_original_if_missing = false, $ulanguage_code = null ) {
|
883 |
+
if ( function_exists( 'wpml_object_id_filter' ) ) {
|
884 |
return wpml_object_id_filter( $element_id, $element_type, $return_original_if_missing, $ulanguage_code );
|
885 |
+
} elseif ( function_exists( 'icl_object_id' ) ) {
|
886 |
+
return icl_object_id( $element_id, $element_type, $return_original_if_missing, $ulanguage_code );
|
887 |
} else {
|
888 |
return $element_id;
|
889 |
}
|
892 |
}
|
893 |
|
894 |
|
895 |
+
if ( !function_exists( 'yith_get_formatted_price' ) ) {
|
896 |
/**
|
897 |
* Format the price with a currency symbol.
|
898 |
*
|
901 |
*
|
902 |
* @return string
|
903 |
*/
|
904 |
+
function yith_get_formatted_price( $price, $args = array() ) {
|
905 |
+
extract( apply_filters( 'wc_price_args', wp_parse_args( $args, array(
|
906 |
'ex_tax_label' => false,
|
907 |
'currency' => '',
|
908 |
+
'decimal_separator' => wc_get_price_decimal_separator(),
|
909 |
+
'thousand_separator' => wc_get_price_thousand_separator(),
|
910 |
+
'decimals' => wc_get_price_decimals(),
|
911 |
+
'price_format' => get_woocommerce_price_format(),
|
912 |
) ) ) );
|
913 |
|
914 |
$negative = $price < 0;
|
915 |
+
$price = apply_filters( 'raw_woocommerce_price', floatval( $negative ? $price * -1 : $price ) );
|
916 |
+
$price = apply_filters( 'formatted_woocommerce_price', number_format( $price, $decimals, $decimal_separator, $thousand_separator ), $price, $decimals, $decimal_separator, $thousand_separator );
|
917 |
|
918 |
+
if ( apply_filters( 'woocommerce_price_trim_zeros', false ) && $decimals > 0 ) {
|
919 |
+
$price = wc_trim_zeros( $price );
|
920 |
}
|
921 |
|
922 |
+
$formatted_price = ( $negative ? '-' : '' ) . sprintf( $price_format, get_woocommerce_currency_symbol( $currency ), $price );
|
923 |
$return = $formatted_price;
|
924 |
|
925 |
+
return apply_filters( 'wc_price', $return, $price, $args );
|
926 |
+
}
|
927 |
+
}
|
928 |
+
|
929 |
+
if ( !function_exists( 'yith_get_terms' ) ) {
|
930 |
+
/**
|
931 |
+
* Get terms
|
932 |
+
*
|
933 |
+
* @param $args
|
934 |
+
*
|
935 |
+
* @return array|int|WP_Error
|
936 |
+
*/
|
937 |
+
function yith_get_terms( $args ) {
|
938 |
+
global $wp_version;
|
939 |
+
if ( version_compare( $wp_version, '4.5', '>=' ) ) {
|
940 |
+
$terms = get_terms( $args );
|
941 |
+
} else {
|
942 |
+
$terms = get_terms( $args[ 'taxonomy' ], $args );
|
943 |
+
}
|
944 |
+
|
945 |
+
return $terms;
|
946 |
+
}
|
947 |
+
}
|
948 |
+
|
949 |
+
if ( !function_exists( 'yith_field_deps_data' ) ) {
|
950 |
+
function yith_field_deps_data( $args ) {
|
951 |
+
$deps_data = '';
|
952 |
+
if ( isset( $args[ 'deps' ] ) && ( isset( $args[ 'deps' ][ 'ids' ] ) || isset( $args[ 'deps' ][ 'id' ] ) ) && ( isset( $args[ 'deps' ][ 'values' ] ) || isset( $args[ 'deps' ][ 'value' ] ) ) ) {
|
953 |
+
$deps = $args[ 'deps' ];
|
954 |
+
$id = isset( $deps[ 'target-id' ] ) ? $deps[ 'target-id' ] : $args[ 'id' ];
|
955 |
+
$dep_id = isset( $deps[ 'id' ] ) ? $deps[ 'id' ] : $deps[ 'ids' ];
|
956 |
+
$dep_values = isset( $deps[ 'value' ] ) ? $deps[ 'value' ] : $deps[ 'values' ];
|
957 |
+
$dep_type = isset( $deps[ 'type' ] ) ? $deps[ 'type' ] : 'hide'; // possible values: hide|disable
|
958 |
+
|
959 |
+
$deps_data = "data-dep-target='$id' data-dep-id='$dep_id' data-dep-value='$dep_values' data-dep-type='$dep_type'";
|
960 |
+
}
|
961 |
+
|
962 |
+
return $deps_data;
|
963 |
}
|
964 |
+
}
|
965 |
+
|
966 |
+
if ( !function_exists( 'yith_panel_field_deps_data' ) ) {
|
967 |
+
/**
|
968 |
+
* @param $option
|
969 |
+
* @param YIT_Plugin_Panel|YIT_Plugin_Panel_WooCommerce $panel
|
970 |
+
*
|
971 |
+
* @return string
|
972 |
+
*/
|
973 |
+
function yith_panel_field_deps_data( $option, $panel ) {
|
974 |
+
$deps_data = '';
|
975 |
+
if ( isset( $option[ 'deps' ] ) && ( isset( $option[ 'deps' ][ 'ids' ] ) || isset( $option[ 'deps' ][ 'id' ] ) ) && isset( $option[ 'deps' ][ 'values' ] ) ) {
|
976 |
+
$dep_id = isset( $option[ 'deps' ][ 'id' ] ) ? $option[ 'deps' ][ 'id' ] : $option[ 'deps' ][ 'ids' ];
|
977 |
+
$option[ 'deps' ][ 'ids' ] = $option[ 'deps' ][ 'id' ] = $panel->get_id_field( $dep_id );
|
978 |
+
$option[ 'id' ] = $panel->get_id_field( $option[ 'id' ] );
|
979 |
+
|
980 |
+
$deps_data = yith_field_deps_data( $option );
|
981 |
+
}
|
982 |
+
|
983 |
+
return $deps_data;
|
984 |
+
}
|
985 |
+
}
|
986 |
+
|
987 |
+
if ( !function_exists( 'yith_plugin_fw_get_field' ) ) {
|
988 |
+
/**
|
989 |
+
* @param array $field
|
990 |
+
* @param bool $echo
|
991 |
+
* @param bool $show_container
|
992 |
+
*
|
993 |
+
* @return string|void
|
994 |
+
*/
|
995 |
+
function yith_plugin_fw_get_field( $field, $echo = false, $show_container = true ) {
|
996 |
+
if ( empty( $field[ 'type' ] ) )
|
997 |
+
return '';
|
998 |
+
|
999 |
+
if ( !isset( $field[ 'value' ] ) )
|
1000 |
+
$field[ 'value' ] = '';
|
1001 |
+
|
1002 |
+
if ( !isset( $field[ 'name' ] ) )
|
1003 |
+
$field[ 'name' ] = '';
|
1004 |
+
|
1005 |
+
if ( !isset( $field[ 'custom_attributes' ] ) )
|
1006 |
+
$field[ 'custom_attributes' ] = '';
|
1007 |
+
|
1008 |
+
if ( !isset( $field[ 'default' ] ) && isset( $field[ 'std' ] ) )
|
1009 |
+
$field[ 'default' ] = $field[ 'std' ];
|
1010 |
+
|
1011 |
+
|
1012 |
+
$field_template = yith_plugin_fw_get_field_template_path( $field );
|
1013 |
+
if ( $field_template ) {
|
1014 |
+
if ( !$echo )
|
1015 |
+
ob_start();
|
1016 |
+
|
1017 |
+
if ( $show_container ) echo '<div class="yith-plugin-fw-field-wrapper yith-plugin-fw-' . $field[ 'type' ] . '-field-wrapper">';
|
1018 |
+
|
1019 |
+
do_action( 'yith_plugin_fw_get_field_before', $field );
|
1020 |
+
do_action( 'yith_plugin_fw_get_field_' . $field[ 'type' ] . '_before', $field );
|
1021 |
+
|
1022 |
+
include( $field_template );
|
1023 |
+
|
1024 |
+
do_action( 'yith_plugin_fw_get_field_after', $field );
|
1025 |
+
do_action( 'yith_plugin_fw_get_field_' . $field[ 'type' ] . '_after', $field );
|
1026 |
+
|
1027 |
+
if ( $show_container ) echo '</div>';
|
1028 |
+
|
1029 |
+
if ( !$echo )
|
1030 |
+
return ob_get_clean();
|
1031 |
+
}
|
1032 |
+
}
|
1033 |
+
}
|
1034 |
+
|
1035 |
+
if ( !function_exists( 'yith_plugin_fw_get_field_template_path' ) ) {
|
1036 |
+
function yith_plugin_fw_get_field_template_path( $field ) {
|
1037 |
+
if ( empty( $field[ 'type' ] ) )
|
1038 |
+
return false;
|
1039 |
+
|
1040 |
+
$field_template = YIT_CORE_PLUGIN_TEMPLATE_PATH . '/fields/' . sanitize_title( $field[ 'type' ] ) . '.php';
|
1041 |
+
$field_template = apply_filters( 'yith_plugin_fw_get_field_template_path', $field_template, $field );
|
1042 |
+
|
1043 |
+
return file_exists( $field_template ) ? $field_template : false;
|
1044 |
+
}
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
if ( !function_exists( 'yith_plugin_fw_html_data_to_string' ) ) {
|
1048 |
+
function yith_plugin_fw_html_data_to_string( $data = array(), $echo = false ) {
|
1049 |
+
$html_data = '';
|
1050 |
+
|
1051 |
+
if ( is_array( $data ) ) {
|
1052 |
+
foreach ( $data as $key => $value ) {
|
1053 |
+
$current_value = !is_array( $value ) ? $value : implode( ',', $value );
|
1054 |
+
$html_data .= " data-$key='$current_value'";
|
1055 |
+
}
|
1056 |
+
$html_data .= ' ';
|
1057 |
+
}
|
1058 |
+
|
1059 |
+
if ( $echo )
|
1060 |
+
echo $html_data;
|
1061 |
+
else
|
1062 |
+
return $html_data;
|
1063 |
+
}
|
1064 |
+
}
|
1065 |
+
if ( !function_exists( 'yith_plugin_fw_get_icon' ) ) {
|
1066 |
+
function yith_plugin_fw_get_icon( $icon = '', $args = array() ) {
|
1067 |
+
return YIT_Icons()->get_icon( $icon, $args );
|
1068 |
+
}
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
if ( !function_exists( 'yith_plugin_fw_is_true' ) ) {
|
1072 |
+
function yith_plugin_fw_is_true( $value ) {
|
1073 |
+
return true === $value || 1 === $value || '1' === $value || 'yes' === $value;
|
1074 |
+
}
|
1075 |
+
}
|
plugin-fw/yit-plugin.php
CHANGED
@@ -34,6 +34,9 @@ include_once( 'licence/lib/yit-theme-licence.php');
|
|
34 |
include_once( 'lib/yit-video.php');
|
35 |
include_once( 'lib/yit-upgrade.php');
|
36 |
include_once( 'lib/yit-pointers.php');
|
|
|
|
|
|
|
37 |
|
38 |
// load from theme folder...
|
39 |
load_textdomain( 'yith-plugin-fw', get_template_directory() . '/core/plugin-fw/yith-plugin-fw-' . apply_filters( 'plugin_locale', get_locale(), 'yith-plugin-fw' ) . '.mo' )
|
34 |
include_once( 'lib/yit-video.php');
|
35 |
include_once( 'lib/yit-upgrade.php');
|
36 |
include_once( 'lib/yit-pointers.php');
|
37 |
+
include_once( 'lib/yit-icons.php');
|
38 |
+
include_once( 'lib/yit-assets.php');
|
39 |
+
include_once( 'lib/yit-debug.php');
|
40 |
|
41 |
// load from theme folder...
|
42 |
load_textdomain( 'yith-plugin-fw', get_template_directory() . '/core/plugin-fw/yith-plugin-fw-' . apply_filters( 'plugin_locale', get_locale(), 'yith-plugin-fw' ) . '.mo' )
|